@yuneta/gobj-js 7.7.3 → 7.8.7

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.
@@ -19,72 +19,72 @@ var gobjJs = function(e) {
19
19
  };
20
20
  function n(e) {
21
21
  return function(e, r) {
22
- var i, o, l, s, _, a, u, c, f, g = 1, d = e.length, b = "";
23
- for (o = 0; o < d; o++) if ("string" == typeof e[o]) b += e[o];
24
- else if ("object" == typeof e[o]) {
25
- if ((s = e[o]).keys) for (i = r[g], l = 0; l < s.keys.length; l++) {
26
- if (null == i) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[l], s.keys[l - 1]));
27
- i = i[s.keys[l]];
22
+ var o, i, l, s, _, a, u, c, f, g = 1, d = e.length, b = "";
23
+ for (i = 0; i < d; i++) if ("string" == typeof e[i]) b += e[i];
24
+ else if ("object" == typeof e[i]) {
25
+ if ((s = e[i]).keys) for (o = r[g], l = 0; l < s.keys.length; l++) {
26
+ if (null == o) throw new Error(n("[sprintf] Cannot access property \"%s\" of undefined value \"%s\"", s.keys[l], s.keys[l - 1]));
27
+ o = o[s.keys[l]];
28
28
  }
29
- else i = s.param_no ? r[s.param_no] : r[g++];
30
- if (t.not_type.test(s.type) && t.not_primitive.test(s.type) && i instanceof Function && (i = i()), t.numeric_arg.test(s.type) && "number" != typeof i && isNaN(i)) throw new TypeError(n("[sprintf] expecting number but found %T", i));
31
- switch (t.number.test(s.type) && (c = i >= 0), s.type) {
29
+ else o = s.param_no ? r[s.param_no] : r[g++];
30
+ if (t.not_type.test(s.type) && t.not_primitive.test(s.type) && o instanceof Function && (o = o()), t.numeric_arg.test(s.type) && "number" != typeof o && isNaN(o)) throw new TypeError(n("[sprintf] expecting number but found %T", o));
31
+ switch (t.number.test(s.type) && (c = o >= 0), s.type) {
32
32
  case "b":
33
- i = parseInt(i, 10).toString(2);
33
+ o = parseInt(o, 10).toString(2);
34
34
  break;
35
35
  case "c":
36
- i = String.fromCharCode(parseInt(i, 10));
36
+ o = String.fromCharCode(parseInt(o, 10));
37
37
  break;
38
38
  case "d":
39
39
  case "i":
40
- i = parseInt(i, 10);
40
+ o = parseInt(o, 10);
41
41
  break;
42
42
  case "j":
43
- i = JSON.stringify(i, null, s.width ? parseInt(s.width) : 0);
43
+ o = JSON.stringify(o, null, s.width ? parseInt(s.width) : 0);
44
44
  break;
45
45
  case "e":
46
- i = s.precision ? parseFloat(i).toExponential(s.precision) : parseFloat(i).toExponential();
46
+ o = s.precision ? parseFloat(o).toExponential(s.precision) : parseFloat(o).toExponential();
47
47
  break;
48
48
  case "f":
49
- i = s.precision ? parseFloat(i).toFixed(s.precision) : parseFloat(i);
49
+ o = s.precision ? parseFloat(o).toFixed(s.precision) : parseFloat(o);
50
50
  break;
51
51
  case "g":
52
- i = s.precision ? String(Number(i.toPrecision(s.precision))) : parseFloat(i);
52
+ o = s.precision ? String(Number(o.toPrecision(s.precision))) : parseFloat(o);
53
53
  break;
54
54
  case "o":
55
- i = (parseInt(i, 10) >>> 0).toString(8);
55
+ o = (parseInt(o, 10) >>> 0).toString(8);
56
56
  break;
57
57
  case "s":
58
- i = String(i), i = s.precision ? i.substring(0, s.precision) : i;
58
+ o = String(o), o = s.precision ? o.substring(0, s.precision) : o;
59
59
  break;
60
60
  case "t":
61
- i = String(!!i), i = s.precision ? i.substring(0, s.precision) : i;
61
+ o = String(!!o), o = s.precision ? o.substring(0, s.precision) : o;
62
62
  break;
63
63
  case "T":
64
- i = Object.prototype.toString.call(i).slice(8, -1).toLowerCase(), i = s.precision ? i.substring(0, s.precision) : i;
64
+ o = Object.prototype.toString.call(o).slice(8, -1).toLowerCase(), o = s.precision ? o.substring(0, s.precision) : o;
65
65
  break;
66
66
  case "u":
67
- i = parseInt(i, 10) >>> 0;
67
+ o = parseInt(o, 10) >>> 0;
68
68
  break;
69
69
  case "v":
70
- i = i.valueOf(), i = s.precision ? i.substring(0, s.precision) : i;
70
+ o = o.valueOf(), o = s.precision ? o.substring(0, s.precision) : o;
71
71
  break;
72
72
  case "x":
73
- i = (parseInt(i, 10) >>> 0).toString(16);
73
+ o = (parseInt(o, 10) >>> 0).toString(16);
74
74
  break;
75
- case "X": i = (parseInt(i, 10) >>> 0).toString(16).toUpperCase();
75
+ case "X": o = (parseInt(o, 10) >>> 0).toString(16).toUpperCase();
76
76
  }
77
- t.json.test(s.type) ? b += i : (!t.number.test(s.type) || c && !s.sign ? f = "" : (f = c ? "+" : "-", i = i.toString().replace(t.sign, "")), a = s.pad_char ? "0" === s.pad_char ? "0" : s.pad_char.charAt(1) : " ", u = s.width - (f + i).length, _ = s.width && u > 0 ? a.repeat(u) : "", b += s.align ? f + i + _ : "0" === a ? f + _ + i : _ + f + i);
77
+ t.json.test(s.type) ? b += o : (!t.number.test(s.type) || c && !s.sign ? f = "" : (f = c ? "+" : "-", o = o.toString().replace(t.sign, "")), a = s.pad_char ? "0" === s.pad_char ? "0" : s.pad_char.charAt(1) : " ", u = s.width - (f + o).length, _ = s.width && u > 0 ? a.repeat(u) : "", b += s.align ? f + o + _ : "0" === a ? f + _ + o : _ + f + o);
78
78
  }
79
79
  return b;
80
80
  }(function(e) {
81
81
  if (r[e]) return r[e];
82
- let n, i = e, o = [], l = 0;
83
- for (; i;) {
84
- if (null !== (n = t.text.exec(i))) o.push(n[0]);
85
- else if (null !== (n = t.modulo.exec(i))) o.push("%");
82
+ let n, o = e, i = [], l = 0;
83
+ for (; o;) {
84
+ if (null !== (n = t.text.exec(o))) i.push(n[0]);
85
+ else if (null !== (n = t.modulo.exec(o))) i.push("%");
86
86
  else {
87
- if (null === (n = t.placeholder.exec(i))) throw new SyntaxError("[sprintf] unexpected placeholder");
87
+ if (null === (n = t.placeholder.exec(o))) throw new SyntaxError("[sprintf] unexpected placeholder");
88
88
  if (n[2]) {
89
89
  l |= 1;
90
90
  var s = [], _ = n[2], a = [];
@@ -97,7 +97,7 @@ var gobjJs = function(e) {
97
97
  n[2] = s;
98
98
  } else l |= 2;
99
99
  if (3 === l) throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");
100
- o.push({
100
+ i.push({
101
101
  placeholder: n[0],
102
102
  param_no: n[1],
103
103
  keys: n[2],
@@ -109,29 +109,29 @@ var gobjJs = function(e) {
109
109
  type: n[8]
110
110
  });
111
111
  }
112
- i = i.substring(n[0].length);
112
+ o = o.substring(n[0].length);
113
113
  }
114
- return r[e] = o;
114
+ return r[e] = i;
115
115
  }(e), arguments);
116
116
  }
117
117
  var r = Object.create(null);
118
- function i(e, t, n, r, i) {
118
+ function o(e, t, n, r, o) {
119
119
  return {
120
120
  result: t,
121
121
  comment: n || {},
122
122
  schema: r || {},
123
- data: i || []
123
+ data: o || []
124
124
  };
125
125
  }
126
- function o(e, t, n, r, i) {
126
+ function i(e, t, n, r, o) {
127
127
  return {
128
128
  result: t,
129
129
  comment: n || {},
130
130
  schema: r || {},
131
- data: i || []
131
+ data: o || []
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, E = Object.freeze({
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
- E.DTP_POINTER;
145
- var y = Object.freeze({
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
- y.SDF_RD, y.SDF_WR, y.SDF_STATS, y.SDF_PERSIST, y.SDF_VOLATIL, y.SDF_RSTATS, y.SDF_PSTATS, y.SDF_WR, y.SDF_PERSIST;
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
- constructor(e, t, n = 0, r = null, i = "", o = null, l = null, s = 0, _ = null, a = null, u = null) {
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;
170
+ constructor(e, t, n = 0, r = null, o = "", i = null, l = null, s = 0, _ = null, a = null, u = null) {
171
+ this.type = e, this.name = t, this.alias = i, this.flag = n, this.default_value = r, this.header = l, this.fillspace = s, this.description = o, this.json_fn = _, this.schema = a, this.authpth = u;
172
172
  }
173
- }, v = () => new T(0, null), j = (e, t, n, r, i) => new T(e, t, n, r, i), S = class {
174
- constructor(e, t, n, r, i, o, l, s, _) {
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;
173
+ }, v = () => new T(0, null), S = (e, t, n, r, o) => new T(e, t, n, r, o), j = class {
174
+ constructor(e, t, n, r, o, i, l, s, _) {
175
+ this.gclass_name = e, this.dl_states = [], this.dl_events = [], this.gmt = t, this.lmt = n, this.attrs_table = r, this.priv = o, this.authz_table = i, this.command_table = l, this.s_user_trace_level = s, this.gclass_flag = Number(_) || 0, this.instances = 0, this.trace_level = 0, this.no_trace_level = 0, this.jn_trace_filter = null, this.fsm_checked = !1;
176
176
  }
177
177
  }, O = class {
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 = Lt(t.priv), this.running = !1, this.playing = !1, this.disabled = !1, this.bottom_gobj = null, this.trace_level = 0, this.no_trace_level = 0;
178
+ constructor(e, t, n, r, o) {
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(o) || 0, this.gobj_name = e, this.jn_attrs = null, this.jn_stats = {}, this.jn_user_data = {}, this.full_name = null, this.short_name = null, this.priv = 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,152 +222,152 @@ var gobjJs = function(e) {
222
222
  };
223
223
  var L = 0;
224
224
  function P(e) {
225
- Qt(e) && (e = JSON.stringify(e)), $t(" ".repeat(Math.max(0, 2 * h - 1)) + String(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 (!qt(t)) return Rt("sdata_desc MUST be an array"), It(t), n;
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
- const i = t[r];
232
- i.name && C(e, n, i);
231
+ const o = t[r];
232
+ o.name && C(e, n, o);
233
233
  }
234
234
  return n;
235
235
  }
236
236
  function C(e, t, n) {
237
- let r, i = n.default_value;
237
+ let r, o = n.default_value;
238
238
  switch (n.type) {
239
- case E.DTP_STRING:
240
- r = String(i);
239
+ case y.DTP_STRING:
240
+ r = String(o);
241
241
  break;
242
- case E.DTP_BOOLEAN:
243
- r = on(i);
242
+ case y.DTP_BOOLEAN:
243
+ r = ln(o);
244
244
  break;
245
- case E.DTP_INTEGER:
246
- r = parseInt(i), isNaN(r) && Rt(`${we(e)}: attr NaN: ${n.name}`);
245
+ case y.DTP_INTEGER:
246
+ r = parseInt(o), isNaN(r) && kt(`${we(e)}: attr NaN: ${n.name}`);
247
247
  break;
248
- case E.DTP_REAL:
249
- r = Number(i), isNaN(r) && Rt(`${we(e)}: attr NaN: ${n.name}`);
248
+ case y.DTP_REAL:
249
+ r = Number(o), isNaN(r) && kt(`${we(e)}: attr NaN: ${n.name}`);
250
250
  break;
251
- case E.DTP_LIST:
252
- if (Ht(i)) try {
253
- r = JSON.parse(i);
251
+ case y.DTP_LIST:
252
+ if (Xt(o)) try {
253
+ r = JSON.parse(o);
254
254
  } catch (e) {
255
- Rt(`JSON parse error: ${e.message}`);
255
+ kt(`JSON parse error: ${e.message}`);
256
256
  }
257
- else r = i;
258
- qt(r) || (r = []);
257
+ else r = o;
258
+ Ht(r) || (r = []);
259
259
  break;
260
- case E.DTP_DICT:
261
- if (Ht(i)) try {
262
- r = JSON.parse(i);
260
+ case y.DTP_DICT:
261
+ if (Xt(o)) try {
262
+ r = JSON.parse(o);
263
263
  } catch (e) {
264
- Rt(`JSON parse error: ${e.message}`);
264
+ kt(`JSON parse error: ${e.message}`);
265
265
  }
266
- else r = i;
266
+ else r = o;
267
267
  Qt(r) || (r = {});
268
268
  break;
269
- case E.DTP_JSON:
270
- if (Ht(i)) try {
271
- r = JSON.parse(i);
269
+ case y.DTP_JSON:
270
+ if (Xt(o)) try {
271
+ r = JSON.parse(o);
272
272
  } catch (e) {
273
- Rt(`JSON parse error: ${e.message}`);
273
+ kt(`JSON parse error: ${e.message}`);
274
274
  }
275
- else r = i;
275
+ else r = o;
276
276
  break;
277
- case E.DTP_POINTER: r = i;
277
+ case y.DTP_POINTER: r = o;
278
278
  }
279
- return void 0 === r && (Rt(`default_value WRONG, it: ${n.name}, value: ${n.default_value}`), r = null), t[n.name] = r, 0;
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
- let i;
282
+ let o;
283
283
  switch (n.type) {
284
- case E.DTP_STRING:
285
- if (null == r) i = "";
286
- else if (Ht(r)) i = String(r);
284
+ case y.DTP_STRING:
285
+ if (null == r) o = "";
286
+ else if (Xt(r)) o = String(r);
287
287
  else {
288
288
  let e = JSON.stringify(r);
289
- e && (i = String(e));
289
+ e && (o = String(e));
290
290
  }
291
291
  break;
292
- case E.DTP_BOOLEAN:
293
- i = on(r);
292
+ case y.DTP_BOOLEAN:
293
+ o = ln(r);
294
294
  break;
295
- case E.DTP_INTEGER:
296
- i = parseInt(r), isNaN(i) && Rt(`${we(e)}: attr NaN: ${n.name}`);
295
+ case y.DTP_INTEGER:
296
+ o = parseInt(r), isNaN(o) && kt(`${we(e)}: attr NaN: ${n.name}`);
297
297
  break;
298
- case E.DTP_REAL:
299
- i = Number(r), isNaN(i) && Rt(`${we(e)}: attr NaN: ${n.name}`);
298
+ case y.DTP_REAL:
299
+ o = Number(r), isNaN(o) && kt(`${we(e)}: attr NaN: ${n.name}`);
300
300
  break;
301
- case E.DTP_LIST:
302
- if (Ht(r)) try {
303
- i = JSON.parse(r);
301
+ case y.DTP_LIST:
302
+ if (Xt(r)) try {
303
+ o = JSON.parse(r);
304
304
  } catch (e) {
305
- Rt(`JSON parse error: ${e.message}`);
305
+ kt(`JSON parse error: ${e.message}`);
306
306
  }
307
- else i = r;
308
- if (!qt(i)) return Rt(`attr must be an array: ${n.name}`), -1;
307
+ else o = r;
308
+ if (!Ht(o)) return kt(`attr must be an array: ${n.name}`), -1;
309
309
  break;
310
- case E.DTP_DICT:
311
- if (Ht(r)) try {
312
- i = JSON.parse(r);
310
+ case y.DTP_DICT:
311
+ if (Xt(r)) try {
312
+ o = JSON.parse(r);
313
313
  } catch (e) {
314
- Rt(`JSON parse error: ${e.message}`);
314
+ kt(`JSON parse error: ${e.message}`);
315
315
  }
316
- else i = r;
317
- if (!Qt(i)) return Rt(`attr must be an object: ${n.name}`), -1;
316
+ else o = r;
317
+ if (!Qt(o)) return kt(`attr must be an object: ${n.name}`), -1;
318
318
  break;
319
- case E.DTP_JSON:
320
- if (Ht(r)) try {
321
- i = JSON.parse(r);
319
+ case y.DTP_JSON:
320
+ if (Xt(r)) try {
321
+ o = JSON.parse(r);
322
322
  } catch (e) {
323
- Rt(`JSON parse error: ${e.message}`);
323
+ kt(`JSON parse error: ${e.message}`);
324
324
  }
325
- else i = r;
326
- if (!qt(i) && !Qt(i)) return Rt(`attr must be a json dict/list: ${n.name}`), -1;
325
+ else o = r;
326
+ if (!Ht(o) && !Qt(o)) return kt(`attr must be a json dict/list: ${n.name}`), -1;
327
327
  break;
328
- case E.DTP_POINTER: i = r;
328
+ case y.DTP_POINTER: o = r;
329
329
  }
330
- return void 0 === i && Rt(`${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;
330
+ return void 0 === o && kt(`${we(e)}: attr undefined: ${n.name}`), t[n.name] = o, Qt(e.priv) && e.priv.hasOwnProperty(n.name) && (e.priv[n.name] = o), 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 Ye(e, t) ? G(e) : e && e.bottom_gobj ? V(e.bottom_gobj, t, n) : (n && Rt(`GClass Attribute NOT FOUND: ${we(e)}, attr ${t}`), null);
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 S)) return n && Rt("gclass NULL"), null;
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 && Rt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
345
+ return n && kt(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
346
346
  }
347
- function M(e, t, n, r, i, o, l, s, _, a, u) {
348
- if (rn(e)) return Rt("gclass_name EMPTY"), null;
349
- if (e.includes("`") || e.includes("^") || e.includes(".")) return Rt(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
350
- if (X(e)) return Rt(`GClass ALREADY exists: ${e}`), null;
351
- let c = new S(e, r, i, o, l, s, _, a, u);
347
+ function M(e, t, n, r, o, i, l, s, _, a, u) {
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, o, i, l, s, _, a, u);
352
352
  (function(e, t) {
353
- e && e instanceof S ? t ? d[t] ? Rt(`gclass ALREADY REGISTERED: ${t}`) : d[t] = e : Rt("gclass_name undefined") : Rt("gclass undefined");
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 (rn(t)) continue;
358
+ if (on(t)) continue;
359
359
  if (B(c, t) < 0) return K(c), null;
360
- const i = r.length;
361
- for (let e = 0; e < i; e++) {
362
- let n = r[e][0], i = r[e][1], o = r[e][2];
363
- rn(n) || J(c, t, n, i, o);
360
+ const o = r.length;
361
+ for (let e = 0; e < o; e++) {
362
+ let n = r[e][0], o = r[e][1], i = r[e][2];
363
+ on(n) || J(c, t, n, o, i);
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 (!rn(n)) {
369
- if (q(c, n)) return Rt(`SMachine: event repeated in input_events: ${n}`), K(c), null;
370
- Q(c, n, r);
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 (Ht(e)) t = e;
381
+ if (Xt(e)) t = e;
382
382
  else {
383
- if (!(e instanceof S)) return Rt("Cannot unregister gclass, type unknown"), -1;
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 ? (Rt(`Cannot unregister gclass, instances in use: ${t}`), -1) : (delete d[t], 0) : (Rt(`Cannot unregister gclass, not found: ${t}`), -1);
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 Y(e, t) {
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 x(e, t) {
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 S ? Y(e, t) ? (Rt(`state already exists: ${t}`), -1) : (e.dl_states.push(new A(t)), 0) : (Rt("Cannot add state, typeof not GClass"), -1);
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
- function J(e, t, n, r, i) {
409
- if (!(e instanceof S)) return Rt("Cannot add state, typeof not GClass"), -1;
410
- if (rn(t)) return Rt("state_name EMPTY"), -1;
411
- let o = Y(e, t);
412
- return o ? x(o, n) ? (Rt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (o.dl_actions.push(new $(n, r, i)), 0) : (Rt(`state not found: ${t}`), -1);
408
+ function J(e, t, n, r, 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 i = x(e, t);
412
+ return i ? Y(i, n) ? (kt(`event already exists: gclass ${e.gclass_name}, state ${t}, event ${n}`), -1) : (i.dl_actions.push(new $(n, r, o)), 0) : (kt(`state not found: ${t}`), -1);
413
413
  }
414
- function z(e, t, n) {
415
- rn(t) || e.push(new I(t, n));
414
+ function q(e, t, n) {
415
+ on(t) || e.push(new I(t, n));
416
416
  }
417
- function Q(e, t, n) {
418
- return e instanceof S ? z(e.dl_events, t, n) : (Rt("Cannot add state, typeof not GClass"), -1);
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 q(e, t) {
421
- if (!(e instanceof S)) return Rt("Cannot add state, typeof not GClass"), 0;
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 S)) return Rt("Cannot add state, typeof not GClass"), -1;
430
+ if (!(e instanceof j)) return kt("Cannot add state, typeof not GClass"), -1;
431
431
  let t = 0;
432
- Jt(e.dl_states) || (Rt(`GClass without states: ${e.gclass_name}`), t += -1);
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 (!rn(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
436
- let i = r.dl_actions[n];
437
- rn(i.event_name) || (q(e, i.event_name) || (Rt(`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 && (Y(e, i.next_state) || (Rt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${i.next_state}`), t += -1)));
435
+ if (!on(r.state_name)) for (let n = 0; n < r.dl_actions.length; n++) {
436
+ let o = r.dl_actions[n];
437
+ on(o.event_name) || (Q(e, o.event_name) || (kt(`SMachine: state's event NOT in input_events: gclass ${e.gclass_name}, state ${r.state_name}, event ${o.event_name}`), t += -1), o.next_state && (x(e, o.next_state) || (kt(`SMachine: next state NOT in state names: gclass ${e.gclass_name}, state ${r.state_name}, next_state ${o.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 (!rn(r.event_name) && (Xt(r.event_flag) || (Rt(`SMachine: event flag is NOT number: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1), !(r.event_flag & R.EVF_OUTPUT_EVENT))) {
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
- let i = e.dl_states[t];
446
- rn(i.state_name) || x(i, r.event_name) && (n = !0);
445
+ let o = e.dl_states[t];
446
+ on(o.state_name) || Y(o, r.event_name) && (n = !0);
447
447
  }
448
- n || (Rt(`SMachine: input_list's event NOT in state: gclass ${e.gclass_name}, event ${r.event_name}`), t += -1);
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 && Rt(`gclass not found: ${e}`), n;
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,75 +463,75 @@ 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 ? (Rt(`gobj service not found: ${e}`), null) : n;
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] && Rt(`service ALREADY REGISTERED: ${t}. Will be UPDATED`), b[t] = e, 0;
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 && Rt(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
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 && (xt(e.dl_children, n), t.parent = null);
477
+ n >= 0 && (Bt(e.dl_children, n), t.parent = null);
478
478
  }
479
- function ie(e, t) {
480
- "__json_config_variables__" !== t && Rt(`GClass Attribute NOT FOUND: ${we(e)}, attr ${t}`);
479
+ function oe(e, t) {
480
+ "__json_config_variables__" !== t && kt(`GClass Attribute NOT FOUND: ${we(e)}, attr ${t}`);
481
481
  }
482
- function oe(e, t, n) {
482
+ function ie(e, t, n) {
483
483
  let r = t;
484
- (function(e, t, n, r, i) {
485
- if (!e || !t) return Rt("hsdata or kw NULL"), -1;
486
- let o = 0;
484
+ (function(e, t, n, r, o) {
485
+ if (!e || !t) return kt("hsdata or kw NULL"), -1;
486
+ let i = 0;
487
487
  for (const [l, s] of Object.entries(t)) {
488
- const t = W(i.gclass, l, !1);
489
- t ? (-1 === n || t.flag & n) && (t.flag & y.SDF_DEPRECATED && kt(`${we(i)}: Deprecated attribute used in gobj creation: ${l}`), o += F(i, e, t, s)) : r && (r(i, l), o--);
488
+ const t = W(o.gclass, l, !1);
489
+ t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && $t(`${we(o)}: Deprecated attribute used in gobj creation: ${l}`), i += F(o, e, t, s)) : r && (r(o, l), i--);
490
490
  }
491
- return o;
492
- })(G(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : ie, e) < 0 && (Rt(`${we(e)} json2data() FAILED`), It(r));
491
+ return i;
492
+ })(G(e), r, -1, e.gclass.gclass_flag & N.gcflag_ignore_unknown_attrs ? 0 : oe, e) < 0 && (kt(`${we(e)} json2data() FAILED`), Lt(r));
493
493
  }
494
- function le(e, t, r, i, o) {
495
- if (o & w.gobj_flag_yuno) {
496
- if (p) return Rt("__yuno__ already created"), null;
497
- o |= w.gobj_flag_service;
494
+ function le(e, t, r, o, i) {
495
+ if (i & w.gobj_flag_yuno) {
496
+ if (p) return kt("__yuno__ already created"), null;
497
+ i |= w.gobj_flag_service;
498
498
  } else {
499
- if (!i) return Rt("gobj NEEDS a parent!"), null;
500
- if (!("string" == typeof i || i instanceof O)) return Rt(`BAD TYPE of parent: ${i}`), null;
501
- if (Ht(i) && !(i = ee(i))) return kt(`parent service not found: ${i}`), null;
499
+ if (!o) return kt("gobj NEEDS a parent!"), null;
500
+ if (!("string" == typeof o || o instanceof O)) return kt(`BAD TYPE of parent: ${o}`), null;
501
+ if (Xt(o) && !(o = ee(o))) return $t(`parent service not found: ${o}`), null;
502
502
  }
503
- if (o & w.gobj_flag_service && ee(e, !1)) return Rt(`service ALREADY registered: ${t}^${e}`), null;
504
- if (o & w.gobj_flag_default_service) {
505
- if (m) return Rt(`default service ALREADY registered: ${t}^${e}`), null;
506
- o |= w.gobj_flag_service;
503
+ if (i & w.gobj_flag_service && ee(e, !1)) return kt(`service ALREADY registered: ${t}^${e}`), null;
504
+ if (i & w.gobj_flag_default_service) {
505
+ if (m) return kt(`default service ALREADY registered: ${t}^${e}`), null;
506
+ i |= w.gobj_flag_service;
507
507
  }
508
- if (rn(t)) return Rt("gclass_name must be a string"), null;
508
+ if (on(t)) return kt("gclass_name must be a string"), null;
509
509
  let l = X(t, !1);
510
- if (!l) return Rt(`GClass not registered: ${t}^${e}`), null;
511
- if (!Ht(e)) return Rt(`gobj_name must be a string: ${t}`), null;
512
- if (!rn(e)) {
513
- if (e.includes("`")) return Rt(`gobj_name cannot contain char ': ${t}^${e}`), null;
514
- if (e.includes("^")) return Rt(`gobj_name cannot contain char ^: ${t}^${e}`), null;
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
- let _ = new O(e, l, r, i, o);
516
+ let _ = new O(e, l, r, o, i);
517
517
  _.jn_attrs = U(_, l.attrs_table);
518
518
  for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
519
519
  let a = p && Je(p, "trace_creation");
520
- return a && P(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && te(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || ne(i, _), _.obflag |= D.obflag_created, _.gclass.instances++, oe(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), i && i.gclass.gmt.mt_child_added && (a && P(n("👦👦🔵 child_added(%s): %s", De(i), we(_))), i.gclass.gmt.mt_child_added(i, _)), a && P(n("💙💙⏪ created: %s", De(_))), _;
520
+ return a && P(n("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & w.gobj_flag_service && te(_), _.gobj_flag & w.gobj_flag_yuno && (p = _), _.gobj_flag & w.gobj_flag_default_service && (m = _), _.gobj_flag & w.gobj_flag_yuno || ne(o, _), _.obflag |= D.obflag_created, _.gclass.instances++, ie(_, r), _.gobj_flag & w.gobj_flag_service && s && s(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && P(n("👦👦🔵 child_added(%s): %s", De(o), we(_))), o.gclass.gmt.mt_child_added(o, _)), a && P(n("💙💙⏪ created: %s", De(_))), _;
521
521
  }
522
522
  function se(e, t, n, r) {
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 Rt("gobj NULL or DESTROYED");
527
- e.__refs__ > 0 && Rt(`${we(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.obflag |= D.obflag_destroying;
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] : Rt(`"service NOT found in register": ${t}`);
534
- }(e), e.playing && (Rt(`Destroying a PLAYING gobj: ${De(e)}`), pe(e)), e.running && (Rt(`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) {
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 Rt("gobj NULL or DESTROYED"), -1;
544
- if (e.running) return Rt(`${we(e)}: GObj ALREADY RUNNING`), -1;
545
- if (e.disabled) return Rt(`${we(e)}: GObj DISABLED`), -1;
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 Rt("gobj NULL or DESTROYED"), -1;
558
- if (!e.running) return Rt(`${we(e)}: GObj NOT RUNNING`), -1;
559
- e.playing && (kt(`${we(e)}: GObj stopping without previous pause`), pe(e)), p && Je(p, "trace_start_stop") && P(n("⏹ ⏹ stop: %s", De(e))), e.running = !1;
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) ? (Rt("gobj NULL or DESTROYED"), -1) : Ue(e, k.WALK_FIRST2LAST, ge, 0, 0);
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 Rt(`gobj NULL or DESTROYED: ${we(e)}`), -1;
571
- if (e.playing) return Rt(`${we(e)}: GObj ALREADY PLAYING`), -1;
572
- if (e.disabled) return Rt(`${we(e)}: GObj DISABLED`), -1;
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 Rt(`${we(e)}: Cannot play, start not done`), -1;
575
- kt(`${we(e)}: GObj playing without previous start`), ae(e);
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) ? (Rt("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) : (Rt(`${we(e)}: GObj NOT PLAYING`), -1);
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 Ee(e) {
590
+ function ye(e) {
591
591
  return !!(e && e.gobj_flag & w.gobj_flag_service);
592
592
  }
593
- function ye(e) {
593
+ function Ee(e) {
594
594
  return !Ae(e) && e.playing;
595
595
  }
596
596
  function Te() {
@@ -600,110 +600,110 @@ var gobjJs = function(e) {
600
600
  let e = Te();
601
601
  return e ? Oe(e) : "";
602
602
  }
603
- function je() {
603
+ function Se() {
604
604
  let e = Te();
605
- return e ? Qe(e, "yuno_role") : "";
605
+ return e ? ze(e, "yuno_role") : "";
606
606
  }
607
- function Se() {
607
+ function je() {
608
608
  let e = Te();
609
- return e ? Qe(e, "yuno_id") : "";
609
+ return e ? ze(e, "yuno_id") : "";
610
610
  }
611
611
  function Oe(e) {
612
- return nn(e) ? e.gobj_name : (Rt("gobj bad type"), null);
612
+ return rn(e) ? e.gobj_name : (kt("gobj bad type"), null);
613
613
  }
614
614
  function Ne(e) {
615
- return nn(e) ? e.gclass.gclass_name : (Rt("gobj NULL of bad type"), null);
615
+ return rn(e) ? e.gclass.gclass_name : (kt("gobj NULL of bad type"), null);
616
616
  }
617
617
  function we(e) {
618
- return nn(e) ? e.gclass.gclass_name + "^" + Oe(e) : (Rt("gobj bad type"), null);
618
+ return rn(e) ? e.gclass.gclass_name + "^" + Oe(e) : (kt("gobj bad type"), null);
619
619
  }
620
620
  function De(e) {
621
- if (!nn(e)) return Rt("gobj NULL of bad type"), null;
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 nn(e) ? e.parent : (Rt("gobj NULL of bad type"), null);
627
+ return rn(e) ? e.parent : (kt("gobj NULL of bad type"), null);
628
628
  }
629
629
  function ke(e) {
630
- return nn(e) ? !!(e.gobj_flag & w.gobj_flag_volatil) : (Rt("gobj NULL of bad type"), null);
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 nn(e) ? !!(e.gobj_flag & w.gobj_flag_pure_child) : (Rt("gobj NULL of bad type"), null);
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 !nn(e) || !!(e.obflag & (D.obflag_destroyed | D.obflag_destroying));
636
+ return !rn(e) || !!(e.obflag & (D.obflag_destroyed | D.obflag_destroying));
637
637
  }
638
638
  function Ie(e) {
639
- return nn(e) ? e.bottom_gobj : (Rt("gobj NULL of bad type"), null);
639
+ return rn(e) ? e.bottom_gobj : (kt("gobj NULL of bad type"), null);
640
640
  }
641
641
  function Le(e, t) {
642
- if (!nn(e)) return Rt("gobj NULL of bad type"), null;
643
- e.bottom_gobj && kt(`${we(e)}: bottom_gobj already set`), e.bottom_gobj = t;
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 nn(e) ? t ? W(e.gclass, t, n) : e.gclass.attrs_table : (Rt("gobj NULL of bad type"), null);
646
+ return rn(e) ? t ? W(e.gclass, t, n) : e.gclass.attrs_table : (kt("gobj NULL of bad type"), null);
647
647
  }
648
- function Ue(e, t, n, r, i) {
649
- return Ae(e) ? (Rt("gobj NULL, destroying, or bad type"), 0) : Fe(e.dl_children, t, n, r, i);
648
+ function Ue(e, t, n, r, o) {
649
+ return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Fe(e.dl_children, t, n, r, o);
650
650
  }
651
- function Ce(e, t, n, r, i) {
652
- return Ae(e) ? (Rt("gobj NULL, destroying, or bad type"), 0) : Ve(e.dl_children, t, n, r, i);
651
+ function Ce(e, t, n, r, o) {
652
+ return Ae(e) ? (kt("gobj NULL, destroying, or bad type"), 0) : Ve(e.dl_children, t, n, r, o);
653
653
  }
654
- function Fe(e, t, n, r, i) {
655
- let o, l = [...e];
654
+ function Fe(e, t, n, r, o) {
655
+ let i, l = [...e];
656
656
  if (t & k.WALK_LAST2FIRST) for (let e = l.length; e > 0; e--) {
657
- o = l[e - 1];
658
- let t = n(o, r, i);
657
+ i = l[e - 1];
658
+ let t = n(i, r, o);
659
659
  if (t < 0) return t;
660
660
  }
661
661
  else for (let e = 0; e < l.length; e++) {
662
- o = l[e];
663
- let t = n(o, r, i);
662
+ i = l[e];
663
+ let t = n(i, r, o);
664
664
  if (t < 0) return t;
665
665
  }
666
666
  return 0;
667
667
  }
668
- function Ge(e, t, n, r, i) {
669
- let o, l = Fe(e, t, n, r, i);
668
+ function Ge(e, t, n, r, o) {
669
+ let i, l = Fe(e, t, n, r, o);
670
670
  if (l < 0) return l;
671
671
  if (t & k.WALK_LAST2FIRST) {
672
- for (let s = e.length; s > 0; s--) if (o = e[s - 1], l = Ge([...o.dl_children], t, n, r, i), l < 0) return l;
673
- } else for (let s = 0; s < e.length; s++) if (o = e[s], l = Ge([...o.dl_children], t, n, r, i), l < 0) return l;
672
+ for (let s = e.length; s > 0; s--) if (i = e[s - 1], l = Ge([...i.dl_children], t, n, r, o), l < 0) return l;
673
+ } else for (let s = 0; s < e.length; s++) if (i = e[s], l = Ge([...i.dl_children], t, n, r, o), l < 0) return l;
674
674
  return l;
675
675
  }
676
- function Ve(e, t, n, r, i) {
677
- if (t & k.WALK_BYLEVEL) return Ge(e, t, n, r, i);
678
- let o, l;
676
+ function Ve(e, t, n, r, o) {
677
+ if (t & k.WALK_BYLEVEL) return Ge(e, t, n, r, o);
678
+ let i, l;
679
679
  if (t & k.WALK_BOTTOM2TOP) for (let s = e.length; s > 0; s--) {
680
- if (l = e[s - 1], o = Ve([...l.dl_children], t, n, r, i), o < 0) return o;
681
- if (o = n(l, r, i), o < 0) return o;
680
+ if (l = e[s - 1], i = Ve([...l.dl_children], t, n, r, o), i < 0) return i;
681
+ if (i = n(l, r, o), i < 0) return i;
682
682
  }
683
683
  else for (let s = 0; s < e.length; s++) {
684
- if (l = e[s], o = n(l, r, i), o < 0) return o;
685
- if (0 === o && (o = Ve([...l.dl_children], t, n, r, i), o < 0)) return o;
684
+ if (l = e[s], i = n(l, r, o), i < 0) return i;
685
+ if (0 === i && (i = Ve([...l.dl_children], t, n, r, o), i < 0)) return i;
686
686
  }
687
687
  return 0;
688
688
  }
689
689
  function We(e, t) {
690
- if (!nn(e)) return Rt("gobj NULL of bad type"), !1;
691
- let n = t.__gclass_name__, r = t.__gobj_name__, i = t.__prefix_gobj_name__;
690
+ if (!rn(e)) return kt("gobj NULL of bad type"), !1;
691
+ let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
692
692
  t.__disabled__;
693
- let o = t.__state__;
693
+ let i = t.__state__;
694
694
  if (n && n !== Ne(e)) return !1;
695
695
  if (r && r !== Oe(e)) return !1;
696
- if (i) {
697
- let t = i.length;
698
- if (i !== Oe(e).substring(0, t)) return !1;
696
+ if (o) {
697
+ let t = o.length;
698
+ if (o !== Oe(e).substring(0, t)) return !1;
699
699
  }
700
- if (o && o !== nt(e)) return !1;
700
+ if (i && i !== 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 && Ye(e, n) && l[n] !== t[n]) return !1;
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 Rt("gobj NULL or DESTROYED"), null;
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];
@@ -715,9 +715,9 @@ var gobjJs = function(e) {
715
715
  if (!t) return null;
716
716
  let n = t.split("`");
717
717
  if (!function(e, t) {
718
- let n = t.split("^"), r = null, i = null;
718
+ let n = t.split("^"), r = null, o = null;
719
719
  if (2 === n.length) {
720
- if (i = n[0], r = n[1], i !== Ne(e)) return !1;
720
+ if (o = n[0], r = n[1], o !== Ne(e)) return !1;
721
721
  } else {
722
722
  if (1 !== n.length) return !1;
723
723
  r = n[0];
@@ -725,89 +725,89 @@ var gobjJs = function(e) {
725
725
  return r === Oe(e);
726
726
  }(e, n[0])) return null;
727
727
  if (1 === n.length) return e;
728
- let r = n[1].split("^"), i = {};
729
- 1 === r.length ? i.__gobj_name__ = r : (i.__gclass_name__ = r[0], i.__gobj_name__ = r[1]);
730
- let o = Me(e, i);
731
- return o ? (n.splice(0, 1), n = n.join("`"), Ke(o, n)) : null;
728
+ let r = n[1].split("^"), o = {};
729
+ 1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
730
+ let i = Me(e, o);
731
+ return i ? (n.splice(0, 1), n = n.join("`"), Ke(i, n)) : null;
732
732
  }
733
- function Ye(e, t) {
734
- return !rn(t) && !!W(e.gclass, t, !1);
733
+ function xe(e, t) {
734
+ return !on(t) && !!W(e.gclass, t, !1);
735
735
  }
736
- function xe(e, t, n) {
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 Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
742
+ return kt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), null;
743
743
  }
744
744
  function Be(e, t, n) {
745
- let r = {}, i = e.gclass.attrs_table;
746
- for (let n = 0; n < i.length; n++) {
747
- const o = i[n];
748
- if (o.name && (-1 === t || o.flag & t)) {
745
+ let r = {}, o = e.gclass.attrs_table;
746
+ for (let n = 0; n < o.length; n++) {
747
+ const i = o[n];
748
+ if (i.name && (-1 === t || i.flag & t)) {
749
749
  let t;
750
- !e.gclass.gmt.mt_reading || e.obflag & D.obflag_destroyed ? t = Gt(e.jn_attrs, o.name) : (t = e.gclass.gmt.mt_reading(e, o.name), void 0 === t && (t = Gt(e.jn_attrs, o.name))), Wt(r, o.name, t);
750
+ !e.gclass.gmt.mt_reading || e.obflag & D.obflag_destroyed ? t = Vt(e.jn_attrs, i.name) : (t = e.gclass.gmt.mt_reading(e, i.name), void 0 === t && (t = Vt(e.jn_attrs, i.name))), Mt(r, i.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 === sn(t, "__disabled__")) return he(e);
758
- if (0 === sn(t, "__running__")) return me(e);
759
- if (0 === sn(t, "__playing__")) return ye(e);
760
- if (0 === sn(t, "__service__")) return Ee(e);
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 ? Gt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
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 ze(e, t) {
766
- t && sn(t, "__trace_level__");
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 ? Gt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
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 Qe(e, t) {
771
- if (t && 0 === sn(t, "__state__")) return nt(e);
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 ? Gt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
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 qe(e, t) {
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 ? Gt(n, t) : e.gclass.gmt.mt_reading(e, t) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
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
- let i = G(e), o = 0;
780
+ let o = G(e), i = 0;
781
781
  for (const [r, l] of Object.entries(t)) {
782
782
  let t = Pe(e, r, !0);
783
- t && (-1 === n || t.flag & n) && (o += F(e, i, t, l));
783
+ t && (-1 === n || t.flag & n) && (i += F(e, o, t, l));
784
784
  }
785
- return o;
785
+ return i;
786
786
  }
787
787
  function Xe(e, t, n) {
788
788
  let r = V(e, t, !1);
789
- return r ? (r[t] = on(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) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
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) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${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) : (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) : (Rt(`${we(e)}: GClass Attribute NOT FOUND, attr ${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) : (kt(`${we(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
798
798
  }
799
799
  function tt(e, t) {
800
- if (Ae(e)) return Rt("gobj NULL or DESTROYED"), null;
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 = Y(e.gclass, t);
803
- return n ? (e.last_state = e.current_state, e.current_state = n, !0) : (Rt(`${we(e)}: state unknown, state ${t}`), !1);
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 nn(e) ? e.current_state.state_name : (Rt("hgobj NULL"), "");
806
+ return rn(e) ? e.current_state.state_name : (kt("hgobj NULL"), "");
807
807
  }
808
808
  function rt(e, t, n) {
809
- if (!nn(e)) return Rt("gobj NULL of bad type"), null;
810
- let r = q(e.gclass, t);
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;
@@ -818,97 +818,97 @@ var gobjJs = function(e) {
818
818
  }
819
819
  return null;
820
820
  }
821
- function it(e, t, n) {
821
+ function ot(e, t, n) {
822
822
  let r = rt(e, t, !1);
823
823
  return !!r && !(n && !(r.event_flag & n));
824
824
  }
825
- function ot(e, t, n) {
825
+ function it(e, t, n) {
826
826
  let r = rt(e, t, !1);
827
827
  return !!r && !(n && !(r.event_flag & n)) && !!(r.event_flag & R.EVF_OUTPUT_EVENT);
828
828
  }
829
- function lt(e, t, r, i) {
830
- if (!(e && e instanceof O)) return Rt("gobj dst NULL"), -1;
831
- if (e.obflag & (D.obflag_destroyed | D.obflag_destroying)) return Rt("gobj dst DESTROYED"), -1;
832
- let o = e.current_state;
833
- if (!o) return Rt(`${we(e)}: current_state NULL`), -1;
829
+ function lt(e, t, r, o) {
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
+ let i = e.current_state;
833
+ if (!i) return kt(`${we(e)}: current_state NULL`), -1;
834
834
  let l = 0;
835
- l = p && ze(p, "tracing"), "C_TIMER" === Ne(i) && (l = p && ze(p, "trace_timer")), h++;
836
- let s = x(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 && Bt(r) && It(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))), Rt(`📛📛 Event NOT DEFINED in state 📛📛: ${we(e)}, ${o.state_name}, ${t}`), h--, -1);
835
+ l = p && qe(p, "tracing"), "C_TIMER" === Ne(o) && (l = p && qe(p, "trace_timer")), h++;
836
+ let s = Y(i, 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), i.state_name, t || "", o && !o.running ? "!!" : "", we(o))), r && l > 1 && Jt(r) && Lt(r)), e.gclass.gmt.mt_inject_event(e, t, r, o)) : (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), i.state_name, t || "", o && !o.running ? "!!" : "", Ne(o), Oe(o))), kt(`📛📛 Event NOT DEFINED in state 📛📛: ${we(e)}, ${i.state_name}, ${t}`), h--, -1);
838
838
  if (l) {
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)));
839
+ if (1 === L) P(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", we(e), i.state_name, o && !o.running ? "!!" : "", we(o)));
840
840
  else {
841
841
  let r = "";
842
- s.action && (r = Bn(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)));
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), i.state_name, "", t || "", "", r, o && !o.running ? "!!" : "", Ne(o), Oe(o)));
843
843
  }
844
- r && l > 1 && Bt(r) && It(r);
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
- s.action && (_ = s.action(e, t, r, i));
849
+ s.action && (_ = s.action(e, t, r, o));
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 || "", Xt(_) ? _ : 0)), h--, _;
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
- j(E.DTP_POINTER, "publisher", 0, null, "publisher gobj"),
858
- j(E.DTP_POINTER, "subscriber", 0, null, "subscriber gobj"),
859
- j(E.DTP_STRING, "event", 0, "", "event name subscribed"),
860
- j(E.DTP_STRING, "renamed_event", 0, "", "rename event name"),
861
- j(E.DTP_INTEGER, "subs_flag", 0, 0, "subscription flag"),
862
- j(E.DTP_JSON, "__config__", 0, null, "subscription config"),
863
- j(E.DTP_JSON, "__global__", 0, null, "global kw, merge in publishing"),
864
- j(E.DTP_JSON, "__local__", 0, null, "local kw, remove in publishing"),
865
- j(E.DTP_JSON, "__filter__", 0, null, "filter kw, filter in publishing"),
866
- j(E.DTP_STRING, "__service__", 0, "", "subscription service"),
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
- function at(e, t, n, r, i) {
870
- let o = mn(t, r, "__config__", null), l = mn(t, r, "__global__", null), s = mn(t, r, "__local__", null), _ = hn(t, r, "__filter__", null), a = !0;
871
- if (t && t !== pn(null, e, "publisher", null) && (a = !1), i && i !== pn(null, e, "subscriber", null) && (a = !1), n && n !== bn(null, e, "event", "") && (a = !1), zt(o) > 0) {
872
- let t = mn(null, e, "__config__", null);
873
- zt(t) > 0 && Pt(t, o) || (a = !1);
869
+ function at(e, t, n, r, o) {
870
+ let i = 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), o && o !== mn(null, e, "subscriber", null) && (a = !1), n && n !== pn(null, e, "event", "") && (a = !1), zt(i) > 0) {
872
+ let t = hn(null, e, "__config__", null);
873
+ zt(t) > 0 && Ut(t, i) || (a = !1);
874
874
  }
875
875
  if (zt(l) > 0) {
876
- let t = mn(null, e, "__global__", null);
877
- zt(t) > 0 && Pt(t, l) || (a = !1);
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 = mn(null, e, "__local__", null);
881
- zt(t) > 0 && Pt(t, s) || (a = !1);
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 = hn(null, e, "__filter__", null);
885
- zt(t) > 0 && Pt(t, _) || (a = !1);
884
+ let t = yn(null, e, "__filter__", null);
885
+ zt(t) > 0 && Ut(t, _) || (a = !1);
886
886
  }
887
887
  return a;
888
888
  }
889
- function ut(e, t, n, r, i) {
890
- let o = [];
889
+ function ut(e, t, n, r, o) {
890
+ let i = [];
891
891
  for (let l = 0; l < e.length; l++) {
892
892
  let s = e[l];
893
- at(s, t, n, r, i) && Kt(o, s);
893
+ at(s, t, n, r, o) && xt(i, s);
894
894
  }
895
- return o;
895
+ return i;
896
896
  }
897
- function ct(e, t, n, r, i) {
898
- for (let o = 0; o < e.length; o++) if (at(e[o], t, n, r, i)) return o;
897
+ function ct(e, t, n, r, o) {
898
+ for (let i = 0; i < e.length; i++) if (at(e[i], t, n, r, o)) return i;
899
899
  return -1;
900
900
  }
901
- function ft(e, t, r, i) {
902
- let o = pn(e, t, "publisher", null, ht.KW_REQUIRED), l = pn(e, t, "subscriber", null, ht.KW_REQUIRED), s = bn(e, t, "event", "", ht.KW_REQUIRED);
903
- if (!!(dn(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))), It(t)), o.obflag & D.obflag_destroyed || i || o.gclass.gmt.mt_subscription_deleted && o.gclass.gmt.mt_subscription_deleted(o, t);
905
- let _ = ct(o.dl_subscriptions, o, s, t, l);
906
- return _ >= 0 ? xt(o.dl_subscriptions, _) : (Rt(`${we(e)}: subscription in publisher not found`), It(t)), _ = ct(l.dl_subscribings, o, s, t, l), _ >= 0 ? xt(l.dl_subscribings, _) : (Rt(`${we(e)}: subscription in subscriber not found`), It(t)), 0;
901
+ function ft(e, t, r, o) {
902
+ let i = 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(i), we(l))), Lt(t)), i.obflag & D.obflag_destroyed || o || i.gclass.gmt.mt_subscription_deleted && i.gclass.gmt.mt_subscription_deleted(i, t);
905
+ let _ = ct(i.dl_subscriptions, i, s, t, l);
906
+ return _ >= 0 ? Bt(i.dl_subscriptions, _) : (kt(`${we(e)}: subscription in publisher not found`), Lt(t)), _ = ct(l.dl_subscribings, i, s, t, l), _ >= 0 ? Bt(l.dl_subscribings, _) : (kt(`${we(e)}: subscription in subscriber not found`), Lt(t)), 0;
907
907
  }
908
- function gt(e, t, r, i) {
909
- if (null == r && (r = {}), !e) return Rt(`publisher NULL: ev ${t}`), 0;
910
- if (!i) return Rt(`subscriber NULL: ev ${t}`), 0;
911
- const o = new Set([
908
+ function gt(e, t, r, o) {
909
+ if (null == r && (r = {}), !e) return kt(`publisher NULL: ev ${t}`), 0;
910
+ if (!o) return kt(`subscriber NULL: ev ${t}`), 0;
911
+ const i = new Set([
912
912
  "__config__",
913
913
  "__global__",
914
914
  "__local__",
@@ -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) || Rt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
920
- }), rn(t)) t = "";
921
- else if (!(ot(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Rt(`event NOT in output event list: ${we(e)}, ${t}`), 0;
922
- let l = ut(e.dl_subscriptions, e, t, r, i);
923
- Jt(l) > 0 && (Rt(`${we(e)}: ${Jt(l)} subscription(s) REPEATED, will be deleted and override`), It(l, "subscription REPEATED"), dt(e, l, !1));
919
+ i.has(n) || kt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
920
+ }), on(t)) t = "";
921
+ else if (!(it(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
+ let l = ut(e.dl_subscriptions, e, t, r, o);
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
- let i = U(e, _t);
926
- Mt(i, "event", t), Mt(i, "subscriber", r), Mt(i, "publisher", e);
927
- let o = 0;
925
+ let o = U(e, _t);
926
+ Kt(o, "event", t), Kt(o, "subscriber", r), Kt(o, "publisher", e);
927
+ let i = 0;
928
928
  if (n) {
929
- let t = mn(e, n, "__config__", null), r = mn(e, n, "__global__", null), l = mn(e, n, "__local__", null), s = hn(e, n, "__filter__", null), _ = bn(e, n, "__service__", "");
930
- if (zt(r) > 0 && Mt(i, "__global__", Lt(r)), zt(t) > 0) {
931
- let n = Lt(t);
932
- if (Mt(i, "__config__", n), un(n, "__hard_subscription__")) {
933
- let t = gn(e, n, "__hard_subscription__", !1);
934
- Vt(n, "__hard_subscription__"), t && (o |= st.__hard_subscription__);
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(o, "__global__", Pt(r)), zt(t) > 0) {
931
+ let n = Pt(t);
932
+ if (Kt(o, "__config__", n), cn(n, "__hard_subscription__")) {
933
+ let t = dn(e, n, "__hard_subscription__", !1);
934
+ Wt(n, "__hard_subscription__"), t && (i |= st.__hard_subscription__);
935
935
  }
936
- if (un(n, "__own_event__")) {
937
- let t = gn(e, n, "__own_event__", !1);
938
- Vt(n, "__own_event__"), t && (o |= st.__own_event__);
936
+ if (cn(n, "__own_event__")) {
937
+ let t = dn(e, n, "__own_event__", !1);
938
+ Wt(n, "__own_event__"), t && (i |= st.__own_event__);
939
939
  }
940
940
  }
941
- zt(l) > 0 && Mt(i, "__local__", Lt(l)), zt(s) > 0 && Mt(i, "__filter__", Lt(s)), rn(_) || Mt(i, "__service__", _);
941
+ zt(l) > 0 && Kt(o, "__local__", Pt(l)), zt(s) > 0 && Kt(o, "__filter__", Pt(s)), on(_) || Kt(o, "__service__", _);
942
942
  }
943
- return Mt(i, "subs_flag", o), i;
944
- }(e, t, r, i);
945
- return s ? (Kt(e.dl_subscriptions, s), Kt(i.dl_subscribings, s), p && Je(p, "trace_subscriptions") && (P(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", we(e), we(i))), r && It(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, s) < 0 && (ft(e, s, !0, !0), s = 0), s) : (Rt(`${we(e)}: _create_subscription() FAILED`), 0);
943
+ return Kt(o, "subs_flag", i), o;
944
+ }(e, t, r, o);
945
+ return s ? (xt(e.dl_subscriptions, s), xt(o.dl_subscribings, s), p && Je(p, "trace_subscriptions") && (P(n("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", t || "", we(e), we(o))), 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,34 +956,34 @@ 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 Rt("gobj NULL or DESTROYED"), -1;
960
- if (rn(t)) return Rt(`${we(e)}: event EMPTY`), -1;
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 Rt(`event NOT in output event list: ${we(e)}, ev ${t}`), -1;
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 || "", "")), It(r)), e.gclass.gmt.mt_publish_event) {
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
+ let o = rt(e, t, !0);
962
+ if (!(o && o.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
+ let i = p && Je(p, "trace_subscriptions");
964
+ if (i && (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
  }
968
968
  let l = [...e.dl_subscriptions], s = 0, _ = 0;
969
- for (let i = 0; i < l.length; i++) {
970
- let a = l[i];
969
+ for (let o = 0; o < l.length; o++) {
970
+ let a = l[o];
971
971
  if (e.gclass.gmt.mt_publication_pre_filter) {
972
972
  let n = e.gclass.gmt.mt_publication_pre_filter(e, a, t, r);
973
973
  if (n < 0) break;
974
974
  if (0 === n) continue;
975
975
  }
976
- let u = pn(e, a, "subscriber", null, ht.KW_REQUIRED);
976
+ let u = mn(e, a, "subscriber", null, ht.KW_REQUIRED);
977
977
  if (!u || Ae(u)) continue;
978
- let c = dn(e, a, "subs_flag", 0, ht.KW_REQUIRED), f = bn(e, a, "event", "", ht.KW_REQUIRED);
979
- if (rn(f) || 0 === sn(f, t)) {
980
- mn(e, a, "__config__", null, 0);
981
- let i = mn(e, a, "__global__", null, 0), l = mn(e, a, "__local__", null, 0), f = hn(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 = vn(g, f), o && (P(n("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", d ? "👍" : "👎", t || "", we(u), we(e))), It(f))), d < 0) break;
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 o = 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), i && (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
- if (b && b.event_flag & R.EVF_SYSTEM_EVENT && !it(u, b.event_name, 0)) continue;
986
- l && an(g, l), i && Ut(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))), It(g));
985
+ if (b && b.event_flag & R.EVF_SYSTEM_EVENT && !ot(u, b.event_name, 0)) continue;
986
+ l && un(g, l), o && Ct(g, o), i && (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 || kt(`${we(e)}: Publish event WITHOUT subscribers, ev ${t}`), _;
995
+ return s || o && o.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
- }), Et = (Object.freeze({
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), yt = Et.error, Tt = Et.warn, vt = Et.info, jt = Et.debug, St = null;
1016
- var Ot = !1;
1017
- function Nt(e, t, n) {
1018
- if (St && !Ot) {
1019
- Ot = !0;
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
- St(e, t, n);
1022
+ jt(e, t, n);
1022
1023
  } catch (e) {} finally {
1023
- Ot = !1;
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) {
@@ -1044,348 +1045,349 @@ var gobjJs = function(e) {
1044
1045
  default: return e;
1045
1046
  }
1046
1047
  });
1047
- const i = t.slice(r).map((e) => "object" == typeof e ? JSON.stringify(e) : String(e));
1048
- i.length > 0 && (n += " " + i.join(" "));
1048
+ const o = t.slice(r).map((e) => "object" == typeof e ? JSON.stringify(e) : String(e));
1049
+ o.length > 0 && (n += " " + o.join(" "));
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 = Dt(e), n = Kn();
1058
- Tt && (Tt === window.console.warn ? Tt("%c" + n + " WARNING: " + String(t), "color:yellow") : (window.console.warn("%c" + n + " WARNING: " + String(t), "color:yellow"), Tt(`${n} WARNING: ${String(t)}`))), Nt("warning", t, n);
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 = Dt(e), n = Kn();
1062
- jt && jt("%c" + n + " DEBUG: " + String(t), "color:silver"), Nt("debug", t, n);
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 = Dt(e), n = Kn();
1066
- jt && jt("%c" + n + " MSG: " + String(t), "color:cyan"), Nt("msg", t, n);
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 It(e, t) {
1069
- t && window.console.warn("=====> " + t), window.console.dir(e), Nt("json", e, Kn());
1069
+ function Lt(e, t) {
1070
+ Ot && (t && window.console.warn("=====> " + t), window.console.dir(e)), wt("json", e, xn());
1070
1071
  }
1071
- function Lt(e) {
1072
+ function Pt(e) {
1072
1073
  return structuredClone(e);
1073
1074
  }
1074
- function Pt(e, t) {
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 (!Pt(e[n], t[n])) return !1;
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) {
1085
1086
  let n = Object.keys(e).sort(), r = Object.keys(t).sort();
1086
1087
  if (n.length !== r.length) return !1;
1087
- for (let i = 0; i < n.length; i++) {
1088
- if (n[i] !== r[i]) return !1;
1089
- if (!Pt(e[n[i]], t[r[i]])) return !1;
1088
+ for (let o = 0; o < n.length; o++) {
1089
+ if (n[o] !== r[o]) return !1;
1090
+ if (!Ut(e[n[o]], t[r[o]])) return !1;
1090
1091
  }
1091
1092
  return !0;
1092
1093
  }
1093
1094
  return e === t;
1094
1095
  }
1095
- function Ut(e, t) {
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 Ct(e, t) {
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 Ft(e, t) {
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 Gt(e, t) {
1111
+ function Vt(e, t) {
1111
1112
  if (e && e.hasOwnProperty(t)) return e[t];
1112
1113
  }
1113
- function Vt(e, t) {
1114
+ function Wt(e, t) {
1114
1115
  e && e.hasOwnProperty(t) && delete e[t];
1115
1116
  }
1116
- function Wt(e, t, n) {
1117
+ function Mt(e, t, n) {
1117
1118
  e[t] = n;
1118
1119
  }
1119
- function Mt(e, t, n) {
1120
+ function Kt(e, t, n) {
1120
1121
  e[t] = n;
1121
1122
  }
1122
- function Kt(e, t) {
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 xt(e, t) {
1129
+ function Bt(e, t) {
1129
1130
  e.splice(t, 1);
1130
1131
  }
1131
- function Bt(e) {
1132
+ function Jt(e) {
1132
1133
  return Qt(e) ? Object.keys(e).length : 0;
1133
1134
  }
1134
- function Jt(e) {
1135
- return qt(e) ? e.length : 0;
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 : qt(e) ? e.length : Ht(e) && e.length > 0 ? 1 : 0;
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 "string" == typeof e;
1145
+ return Array.isArray(e);
1148
1146
  }
1149
1147
  function Xt(e) {
1150
- return "number" == typeof e && Number.isFinite(e);
1148
+ return "string" == typeof e;
1151
1149
  }
1152
1150
  function Zt(e) {
1153
- return "boolean" == typeof e;
1151
+ return "number" == typeof e && Number.isFinite(e);
1154
1152
  }
1155
1153
  function en(e) {
1156
- return null == e;
1154
+ return "boolean" == typeof e;
1157
1155
  }
1158
1156
  function tn(e) {
1159
- return "function" == typeof e;
1157
+ return null == e;
1160
1158
  }
1161
1159
  function nn(e) {
1162
- return e instanceof O;
1160
+ return "function" == typeof e;
1163
1161
  }
1164
1162
  function rn(e) {
1165
- return !Ht(e) || 0 === e.length;
1163
+ return e instanceof O;
1166
1164
  }
1167
1165
  function on(e) {
1168
- return Xt(e) ? Boolean(e) : /^\s*(true|1|on)\s*$/i.test(e);
1166
+ return !Xt(e) || 0 === e.length;
1169
1167
  }
1170
- function ln(e, t) {
1171
- return e === t ? 0 : e > t ? 1 : -1;
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 _n(e, t) {
1178
- if (Qt(e) || Qt(t) || qt(e) || qt(t)) return 0;
1179
- if (Xt(e) || Xt(t)) {
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 (Zt(e) || Zt(t)) {
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 ln(String(e), String(t));
1188
+ return sn(String(e), String(t));
1188
1189
  }
1189
- function an(e, t) {
1190
- if ("object" != typeof t || Array.isArray(t)) if (Array.isArray(t)) for (const n of t) an(e, n);
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 un(e, t) {
1195
+ function cn(e, t) {
1195
1196
  return !(!(t in e) || !e.hasOwnProperty(t));
1196
1197
  }
1197
- function cn(e, t, n, r) {
1198
- if (e && !nn(e) && Rt("GObj bad instanceof"), !Qt(t) && !qt(t)) return Rt(`${we(e)}: kw must be list or dict`), 0;
1199
- if (!Ht(n)) return Rt(`${we(e)}: path must be a string: ${String(n)}`), 0;
1200
- let i = n.split("`");
1201
- if (i.length <= 1) return t[n];
1202
- let o = i.length;
1203
- for (let l = 0; l < o; l++) if (void 0 === (t = t[i[l]])) return void (r && Rt(`${we(e)}: path not found: ${String(n)}`));
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;
1201
+ let o = n.split("`");
1202
+ if (o.length <= 1) return t[n];
1203
+ let i = o.length;
1204
+ for (let l = 0; l < i; l++) if (void 0 === (t = t[o[l]])) return void (r && kt(`${we(e)}: path not found: ${String(n)}`));
1204
1205
  return t;
1205
1206
  }
1206
- function fn(e, t, n) {
1207
- e && !nn(e) && Rt("GObj bad instanceof");
1208
- let [r, i] = function(e, t) {
1207
+ function gn(e, t, n) {
1208
+ e && !rn(e) && kt("GObj bad instanceof");
1209
+ let [r, o] = 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 rn(i) ? Vt(t, n) : Vt(cn(e, t, r, !0), i), 0;
1213
+ return on(o) ? Wt(t, n) : Wt(fn(e, t, r, !0), o), 0;
1213
1214
  }
1214
- function gn(e, t, n, r, i) {
1215
- e && !nn(e) && Rt("GObj bad instanceof");
1216
- let o = cn(e, t, n, !1);
1217
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1218
- if (void 0 === o) {
1215
+ function dn(e, t, n, r, o) {
1216
+ e && !rn(e) && kt("GObj bad instanceof");
1217
+ let i = fn(e, t, n, !1);
1218
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1219
+ if (void 0 === i) {
1219
1220
  if (s) {
1220
- let i = Boolean(r);
1221
- return En(e, t, n, i), i;
1221
+ let o = Boolean(r);
1222
+ return En(e, t, n, o), o;
1222
1223
  }
1223
- return l && (Rt(`path not found: '${n}'`), It(t)), Boolean(r);
1224
+ return l && (kt(`path not found: '${n}'`), Lt(t)), Boolean(r);
1224
1225
  }
1225
- return _ && fn(e, t, n), Boolean(o);
1226
+ return _ && gn(e, t, n), Boolean(i);
1226
1227
  }
1227
- function dn(e, t, n, r, i) {
1228
- e && !nn(e) && Rt("GObj bad instanceof");
1229
- let o = cn(e, t, n, !1);
1230
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1231
- if (void 0 === o) {
1228
+ function bn(e, t, n, r, o) {
1229
+ e && !rn(e) && kt("GObj bad instanceof");
1230
+ let i = fn(e, t, n, !1);
1231
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1232
+ if (void 0 === i) {
1232
1233
  if (s) {
1233
- let i = parseInt(r);
1234
- return En(e, t, n, i), i;
1234
+ let o = parseInt(r);
1235
+ return En(e, t, n, o), o;
1235
1236
  }
1236
- return l && (Rt(`path not found: '${n}'`), It(t)), parseInt(r);
1237
+ return l && (kt(`path not found: '${n}'`), Lt(t)), parseInt(r);
1237
1238
  }
1238
- return _ && fn(e, t, n), Xt(o) ? parseInt(o) : (l && (Rt(`path value MUST BE a number: ${n}`), At(t)), parseInt(r));
1239
+ return _ && gn(e, t, n), Zt(i) ? parseInt(i) : (l && (kt(`path value MUST BE a number: ${n}`), It(t)), parseInt(r));
1239
1240
  }
1240
- function bn(e, t, n, r, i) {
1241
- e && !nn(e) && Rt("GObj bad instanceof");
1242
- let o = cn(e, t, n, !1);
1243
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1244
- if (void 0 === o) {
1241
+ function pn(e, t, n, r, o) {
1242
+ e && !rn(e) && kt("GObj bad instanceof");
1243
+ let i = fn(e, t, n, !1);
1244
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1245
+ if (void 0 === i) {
1245
1246
  if (s) {
1246
- let i = String(r);
1247
- return En(e, t, n, i), i;
1247
+ let o = String(r);
1248
+ return En(e, t, n, o), o;
1248
1249
  }
1249
- return l && (Rt(`path not found: '${n}'`), It(t)), String(r);
1250
+ return l && (kt(`path not found: '${n}'`), Lt(t)), String(r);
1250
1251
  }
1251
- return _ && fn(e, t, n), Ht(o) ? String(o) : (l && (Rt(`${we(e)}: path value MUST BE a string: ${n}`), At(t)), String(r));
1252
+ return _ && gn(e, t, n), Xt(i) ? String(i) : (l && (kt(`${we(e)}: path value MUST BE a string: ${n}`), It(t)), String(r));
1252
1253
  }
1253
- function pn(e, t, n, r, i) {
1254
- e && !nn(e) && Rt("GObj bad instanceof");
1255
- let o = cn(e, t, n, !1);
1256
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1257
- if (void 0 === o) {
1254
+ function mn(e, t, n, r, o) {
1255
+ e && !rn(e) && kt("GObj bad instanceof");
1256
+ let i = fn(e, t, n, !1);
1257
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1258
+ if (void 0 === i) {
1258
1259
  if (s) {
1259
- let i = r;
1260
- return En(e, t, n, i), i;
1260
+ let o = r;
1261
+ return En(e, t, n, o), o;
1261
1262
  }
1262
- return l && (Rt(`path not found: '${n}'`), It(t)), r;
1263
+ return l && (kt(`path not found: '${n}'`), Lt(t)), r;
1263
1264
  }
1264
- return _ && fn(e, t, n), o;
1265
+ return _ && gn(e, t, n), i;
1265
1266
  }
1266
- function mn(e, t, n, r, i) {
1267
- e && !nn(e) && Rt("GObj bad instanceof");
1268
- let o = cn(e, t, n, !1);
1269
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1270
- if (void 0 === o) {
1267
+ function hn(e, t, n, r, o) {
1268
+ e && !rn(e) && kt("GObj bad instanceof");
1269
+ let i = fn(e, t, n, !1);
1270
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1271
+ if (void 0 === i) {
1271
1272
  if (s) {
1272
- let i = Object(r);
1273
- return En(e, t, n, i), i;
1273
+ let o = Object(r);
1274
+ return En(e, t, n, o), o;
1274
1275
  }
1275
- return l && (Rt(`path not found: '${n}'`), It(t)), Object(r);
1276
+ return l && (kt(`path not found: '${n}'`), Lt(t)), Object(r);
1276
1277
  }
1277
- return _ && fn(e, t, n), Qt(o) ? Object(o) : (l && (Rt(`path value MUST BE a dict: ${n}`), At(t)), Object(r));
1278
+ return _ && gn(e, t, n), Qt(i) ? Object(i) : (l && (kt(`path value MUST BE a dict: ${n}`), It(t)), Object(r));
1278
1279
  }
1279
- function hn(e, t, n, r, i) {
1280
- e && !nn(e) && Rt("GObj bad instanceof");
1281
- let o = cn(e, t, n, !1);
1282
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
1283
- if (void 0 === o) {
1280
+ function yn(e, t, n, r, o) {
1281
+ e && !rn(e) && kt("GObj bad instanceof");
1282
+ let i = fn(e, t, n, !1);
1283
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
1284
+ if (void 0 === i) {
1284
1285
  if (s) {
1285
- let i = r;
1286
- return En(e, t, n, i), i;
1286
+ let o = r;
1287
+ return En(e, t, n, o), o;
1287
1288
  }
1288
- return l && (Rt(`path not found: '${n}'`), It(t)), r;
1289
+ return l && (kt(`path not found: '${n}'`), Lt(t)), r;
1289
1290
  }
1290
- return _ && fn(e, t, n), o;
1291
+ return _ && gn(e, t, n), i;
1291
1292
  }
1292
1293
  function En(e, t, n, r) {
1293
- if (e && !nn(e) && Rt("GObj bad instanceof"), !Qt(t)) return Rt("kw is not an object"), -1;
1294
- let i = n.split("`");
1295
- if (i.length <= 1) return t[n] = r, 0;
1296
- let o = i.length;
1297
- for (let e = 0; e < o; e++) {
1298
- let n = i[e];
1299
- e === o - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
1294
+ if (e && !rn(e) && kt("GObj bad instanceof"), !Qt(t)) return kt("kw is not an object"), -1;
1295
+ let o = n.split("`");
1296
+ if (o.length <= 1) return t[n] = r, 0;
1297
+ let i = o.length;
1298
+ for (let e = 0; e < i; e++) {
1299
+ let n = o[e];
1300
+ e === i - 1 ? t[n] = r : (void 0 === t[n] && (t[n] = {}), t = t[n]);
1300
1301
  }
1301
1302
  return 0;
1302
1303
  }
1303
- function yn(e, t, n, r, i) {
1304
- if (e && !nn(e) && Rt("GObj bad instanceof"), !Qt(t)) return Rt("kw is not an object"), -1;
1305
- let o = mn(e, t, n, {}, !0);
1306
- return Qt(o) ? (o[r] = i, 0) : (Rt("subdict is not an object"), -1);
1304
+ function Tn(e, t, n, r, o) {
1305
+ if (e && !rn(e) && kt("GObj bad instanceof"), !Qt(t)) return kt("kw is not an object"), -1;
1306
+ let i = hn(e, t, n, {}, !0);
1307
+ return Qt(i) ? (i[r] = o, 0) : (kt("subdict is not an object"), -1);
1307
1308
  }
1308
- function Tn(e, t, r) {
1309
- let i = "", o = !1;
1310
- if (qt(t)) {
1311
- o = !1;
1309
+ function vn(e, t, r) {
1310
+ let o = "", i = !1;
1311
+ if (Ht(t)) {
1312
+ i = !1;
1312
1313
  for (let l = 0; l < t.length; l++) {
1313
1314
  let s = t[l];
1314
- if (i = rn(r) ? n("%s", r) : n("%s`%d", r, l), o = Tn(e, s, i), o) break;
1315
+ if (o = on(r) ? n("%s", r) : n("%s`%d", r, l), i = vn(e, s, o), i) break;
1315
1316
  }
1316
1317
  } else if (Qt(t)) {
1317
- o = !0;
1318
+ i = !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 = rn(r) ? n("%s", _) : n("%s`%s", r, _), qt(a) || Qt(a)) {
1322
- if (o = Tn(e, a, i), !o) break;
1322
+ if (o = on(r) ? n("%s", _) : n("%s`%s", r, _), Ht(a) || Qt(a)) {
1323
+ if (i = vn(e, a, o), !i) break;
1323
1324
  continue;
1324
1325
  }
1325
- let u = hn(0, e, i, 0, 0);
1326
- if (u || (u = Gt(e, i)), !u) {
1327
- o = !1;
1326
+ let u = yn(0, e, o, 0, 0);
1327
+ if (u || (u = Vt(e, o)), !u) {
1328
+ i = !1;
1328
1329
  break;
1329
1330
  }
1330
- if (0 !== _n(u, a)) {
1331
- o = !1;
1331
+ if (0 !== an(u, a)) {
1332
+ i = !1;
1332
1333
  break;
1333
1334
  }
1334
1335
  }
1335
1336
  }
1336
- return o;
1337
+ return i;
1337
1338
  }
1338
- function vn(e, t) {
1339
- return 0 === zt(t) || Tn(e, 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 && !nn(e) && Rt("GObj bad instanceof");
1343
- let i = {};
1344
- if (Ht(n) && !rn(n)) {
1345
- let o = n;
1346
- t.hasOwnProperty(o) ? i[o] = t[o] : r && Rt(`${we(e)}: key not found: ${o}`);
1347
- } else if (Qt(n) && Bt(n) > 0) for (let o of Object.keys(n)) t.hasOwnProperty(o) ? i[o] = t[o] : r && Rt(`${we(e)}: key not found: ${o}`);
1343
+ e && !rn(e) && kt("GObj bad instanceof");
1344
+ let o = {};
1345
+ if (Xt(n) && !on(n)) {
1346
+ let i = n;
1347
+ t.hasOwnProperty(i) ? o[i] = t[i] : r && kt(`${we(e)}: key not found: ${i}`);
1348
+ } else if (Qt(n) && Jt(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? o[i] = t[i] : r && kt(`${we(e)}: key not found: ${i}`);
1348
1349
  else {
1349
- if (!(qt(n) && Jt(n) > 0)) return t;
1350
- for (let o = 0; o < n.length; o++) {
1351
- let l = n[o];
1352
- t.hasOwnProperty(l) ? i[l] = t[l] : r && Rt(`${we(e)}: key not found: ${l}`);
1350
+ if (!(Ht(n) && qt(n) > 0)) return t;
1351
+ for (let i = 0; i < n.length; i++) {
1352
+ let l = n[i];
1353
+ t.hasOwnProperty(l) ? o[l] = t[l] : r && kt(`${we(e)}: key not found: ${l}`);
1353
1354
  }
1354
1355
  }
1355
- return i;
1356
+ return o;
1356
1357
  }
1357
- function Sn(e, t, n, r) {
1358
- let i = {};
1359
- if (Ut(i, t), Ht(n) && !rn(n)) {
1360
- let o = n;
1361
- hn(e, t, o, 0, 0) ? Vt(i, o) : r && Rt(`${we(e)}: key not found: ${o}`);
1362
- } else if (Qt(n) && Bt(n) > 0) for (let o of Object.keys(n)) t.hasOwnProperty(o) ? Vt(i, o) : r && Rt(`${we(e)}: key not found: ${o}`);
1358
+ function On(e, t, n, r) {
1359
+ let o = {};
1360
+ if (Ct(o, t), Xt(n) && !on(n)) {
1361
+ let i = n;
1362
+ yn(e, t, i, 0, 0) ? Wt(o, i) : r && kt(`${we(e)}: key not found: ${i}`);
1363
+ } else if (Qt(n) && Jt(n) > 0) for (let i of Object.keys(n)) t.hasOwnProperty(i) ? Wt(o, i) : r && kt(`${we(e)}: key not found: ${i}`);
1363
1364
  else {
1364
- if (!(qt(n) && Jt(n) > 0)) return {};
1365
- for (let o = 0; o < n.length; o++) {
1366
- let l = n[o];
1367
- t.hasOwnProperty(l) ? Vt(i, l) : r && Rt(`${we(e)}: key not found: ${l}`);
1365
+ if (!(Ht(n) && qt(n) > 0)) return {};
1366
+ for (let i = 0; i < n.length; i++) {
1367
+ let l = n[i];
1368
+ t.hasOwnProperty(l) ? Wt(o, l) : r && kt(`${we(e)}: key not found: ${l}`);
1368
1369
  }
1369
1370
  }
1370
- return i;
1371
+ return o;
1371
1372
  }
1372
- function On(e, t, n = !1) {
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 && Nn(e, t), t) : JSON.parse(r);
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 Nn(e, t) {
1381
- if ("undefined" != typeof window && window.localStorage) if (e && void 0 !== t) try {
1382
- window.localStorage.setItem(e, JSON.stringify(t));
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
- window.console.warn(`Error saving localStorage key "${e}":`, t);
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 wn(e) {
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 Dn(e, t) {
1397
- if (en(e) || en(t)) return !0;
1398
- if (qt(e)) {
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 (Ht(e) && e === t) return !0;
1406
+ } else if (Xt(e) && e === t) return !0;
1405
1407
  return !1;
1406
1408
  }
1407
- function Rn(e, t, n, r, i) {
1408
- if (e && !nn(e) && Rt("GObj bad instanceof"), !t) return null;
1409
- i || (i = vn);
1410
- let o = [];
1411
- if (qt(t)) for (let l = 0; l < t.length; l++) {
1409
+ function kn(e, t, n, r, o) {
1410
+ if (e && !rn(e) && kt("GObj bad instanceof"), !t) return null;
1411
+ o || (o = Sn);
1412
+ let i = [];
1413
+ if (Ht(t)) for (let l = 0; l < t.length; l++) {
1412
1414
  let s, _ = t[l];
1413
- if (Qt(_)) s = bn(e, _, "id", "", 0);
1415
+ if (Qt(_)) s = pn(e, _, "id", "", 0);
1414
1416
  else {
1415
- if (!Ht(_)) continue;
1417
+ if (!Xt(_)) continue;
1416
1418
  s = _;
1417
1419
  }
1418
- Dn(n, s) && i(_, r) && o.push(_);
1420
+ Rn(n, s) && o(_, r) && i.push(_);
1419
1421
  }
1420
1422
  else {
1421
- if (!Qt(t)) return Rt("kw_collect() BAD kw parameter"), null;
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
- Dn(n, e) && i(l, r) && o.push(l);
1426
+ Rn(n, e) && o(l, r) && i.push(l);
1425
1427
  }
1426
1428
  }
1427
- return o;
1429
+ return i;
1428
1430
  }
1429
- function kn(e, t) {
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 $n(e, t, n) {
1435
- if (!e || !t) return Rt("ERROR: str_in_list() list or str empty"), !1;
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 An(e, t) {
1448
+ function In(e, t) {
1447
1449
  try {
1448
1450
  let n = e.__md_iev__;
1449
1451
  if (n) return n[t];
@@ -1451,63 +1453,63 @@ var gobjJs = function(e) {
1451
1453
  return;
1452
1454
  }
1453
1455
  }
1454
- function In(e, t, n) {
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 Ln(e, t, n, r) {
1459
- if (!nn(e)) return Rt("gobj is not a GObj"), null;
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 = An(t, n);
1462
- i || (i = [], In(t, n, i));
1463
+ let o = In(t, n);
1464
+ o || (o = [], Ln(t, n, o));
1463
1465
  try {
1464
- qt(i) && i.unshift(r);
1466
+ Ht(o) && o.unshift(r);
1465
1467
  } catch (e) {
1466
- Rt(e);
1468
+ kt(e);
1467
1469
  }
1468
1470
  }
1469
- function Pn(e, t, n, r) {
1470
- if (!nn(e)) return Rt("gobj is not a GObj"), null;
1471
- if (!Qt(t)) return Rt("kw is not a dict"), null;
1472
- let i = An(t, n);
1473
- return i ? 0 === i.length ? (r && Rt(`stack empty: ${n}`), null) : i[0] : (r && Rt(`stack NOT FOUND: ${n}`), null);
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 o = In(t, n);
1475
+ return o ? 0 === o.length ? (r && kt(`stack empty: ${n}`), null) : o[0] : (r && kt(`stack NOT FOUND: ${n}`), null);
1474
1476
  }
1475
- function Un(e, t, n) {
1476
- return rn(n) ? fn(e, t, "__md_iev__`__msg_type__") : yn(e, t, "__md_iev__", "__msg_type__", n), 0;
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 Cn(e, t) {
1479
- return bn(e, t, "__md_iev__`__msg_type__", "", 0);
1480
+ function Fn(e, t) {
1481
+ return pn(e, t, "__md_iev__`__msg_type__", "", 0);
1480
1482
  }
1481
- function Fn(e, t, n) {
1482
- void 0 !== n && Ht(n) || (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
- let i = (n.length ? "`" : "") + r;
1486
- n += i, t.apply(this, [
1487
+ let o = (n.length ? "`" : "") + r;
1488
+ n += o, t.apply(this, [
1487
1489
  e,
1488
1490
  r,
1489
1491
  e[r],
1490
1492
  n
1491
- ]), Qt(e[r]) && Fn(e[r], t, n), n = n.slice(0, -i.length);
1493
+ ]), Qt(e[r]) && Gn(e[r], t, n), n = n.slice(0, -o.length);
1492
1494
  }
1493
1495
  }
1494
- function Gn(e, t, n, r) {
1496
+ function Vn(e, t, n, r) {
1495
1497
  if (!e) return null;
1496
- let i, o = e.length;
1497
- for (i = 0; i < o; i++) {
1498
- let o = e[i];
1499
- if (o) {
1500
- let e = o.id;
1501
- if (e && e === n) return o;
1502
- if (r && un(o, t)) {
1503
- let e = Gn(o[t], t, n, r);
1498
+ let o, i = e.length;
1499
+ for (o = 0; o < i; o++) {
1500
+ let i = e[o];
1501
+ if (i) {
1502
+ let e = i.id;
1503
+ if (e && e === n) return i;
1504
+ if (r && cn(i, t)) {
1505
+ let e = Vn(i[t], t, n, r);
1504
1506
  if (e) return e;
1505
1507
  }
1506
1508
  }
1507
1509
  }
1508
1510
  return null;
1509
1511
  }
1510
- function Vn(e) {
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 Wn(e) {
1543
+ function Mn(e) {
1542
1544
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
1543
1545
  }
1544
- function Mn(e) {
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 Kn() {
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,24 +1556,24 @@ 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 xn() {
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 Bn(e) {
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 Jn(e) {
1567
+ function qn(e) {
1566
1568
  return "persistent-attrs-" + we(e);
1567
1569
  }
1568
1570
  function zn(e, t) {
1569
- if (Ht(t)) {
1571
+ if (Xt(t)) {
1570
1572
  if (-1 === t.indexOf("^")) {
1571
- let n, r, i = e.fkey;
1572
- if (1 !== Bt(i)) return Rt("bad fkey 1"), Rt(e), Rt(t), null;
1573
- for (const e of Object.keys(i)) {
1574
- n = e, r = i[e];
1573
+ let n, r, o = e.fkey;
1574
+ if (1 !== Jt(o)) return kt("bad fkey 1"), kt(e), kt(t), null;
1575
+ for (const e of Object.keys(o)) {
1576
+ n = e, r = o[e];
1575
1577
  break;
1576
1578
  }
1577
1579
  return {
@@ -1582,7 +1584,7 @@ var gobjJs = function(e) {
1582
1584
  }
1583
1585
  {
1584
1586
  let n = t.split("^");
1585
- return 3 !== n.length ? (Rt("bad fkey 2"), Rt(e), Rt(t), null) : {
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
- } : (Rt("bad fkey 3"), Rt(e), Rt(t), null);
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
- ], qn = [
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
- ], Hn = [
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 Xn(e) {
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 ($n(Hn, r)) {
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 ($n(qn, r)) switch (r) {
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 Zn = [
1689
- j(E.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
1690
- j(E.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
1691
- j(E.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
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
- ], er = {
1695
+ ], tr = {
1694
1696
  periodic: !1,
1695
1697
  msec: 0,
1696
1698
  timer_id: -1
1697
- }, tr = null;
1698
- function nr(e, t, n, r) {
1699
- let i = e.priv, o = i.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
1700
- return $e(e) ? lt(Re(e), o, {}, e) : mt(e, o, {}), i.periodic && (i.timer_id = setTimeout(function() {
1699
+ }, nr = null;
1700
+ function rr(e, t, n, r) {
1701
+ let o = e.priv, i = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
1702
+ return $e(e) ? lt(Re(e), i, {}, e) : mt(e, i, {}), o.periodic && (o.timer_id = setTimeout(function() {
1701
1703
  lt(e, "EV_TIMEOUT", {}, e);
1702
- }, i.msec)), 0;
1704
+ }, o.msec)), 0;
1703
1705
  }
1704
- var rr = {
1706
+ var or = {
1705
1707
  mt_create: function(e) {
1706
1708
  let t = e.priv;
1707
- const n = qe(e, "subscriber");
1708
- n && gt(e, null, {}, n), t.periodic = Je(e, "periodic"), t.msec = ze(e, "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 = ze(e, "msec"), -1 !== n.timer_id && (clearTimeout(n.timer_id), n.timer_id = -1), n.msec > 0 && (n.timer_id = setTimeout(function() {
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
  }
@@ -1727,52 +1729,52 @@ var gobjJs = function(e) {
1727
1729
  mt_destroy: function(e) {}
1728
1730
  };
1729
1731
  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
- function or(e, t) {
1733
- return e instanceof O ? "C_TIMER" !== Ne(e) ? (Rt("not C_TIMER GObj"), -1) : (Xe(e, "periodic", !0), void Ze(e, "msec", t)) : (Rt("not GObj TYPE"), -1);
1734
- }
1735
- function lr(e) {
1736
- return e instanceof O ? "C_TIMER" !== Ne(e) ? (Rt("not C_TIMER GObj"), -1) : void Ze(e, "msec", -1) : (Rt("not GObj TYPE"), -1);
1737
- }
1738
- var sr = [
1739
- j(E.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
1740
- j(E.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
1741
- j(E.DTP_STRING, "__username__", 0, "", "Username"),
1742
- j(E.DTP_STRING, "start_date", 0, "", "Yuno starting date"),
1743
- j(E.DTP_STRING, "node_uuid", 0, "", "uuid of node"),
1744
- j(E.DTP_STRING, "yuno_role", 0, "", "Yuno role"),
1745
- j(E.DTP_STRING, "yuno_id", 0, "", "Yuno Id. Set by agent"),
1746
- j(E.DTP_STRING, "yuno_name", 0, "", "Yuno name. Set by agent"),
1747
- j(E.DTP_STRING, "yuno_tag", 0, "", "Tags of yuno. Set by agent"),
1748
- j(E.DTP_STRING, "yuno_release", 0, "", "Yuno Release. Set by agent"),
1749
- j(E.DTP_STRING, "yuno_version", 0, "", "Yuno version (APP_VERSION)"),
1750
- j(E.DTP_STRING, "yuneta_version", 0, l, "Yuneta version"),
1751
- j(E.DTP_LIST, "required_services", 0, "[]", "Required services"),
1752
- j(E.DTP_INTEGER, "tracing", 0, 0, "Tracing level"),
1753
- j(E.DTP_BOOLEAN, "trace_timer", 0, 0, "Trace timers"),
1754
- j(E.DTP_BOOLEAN, "trace_inter_event", 0, 0, "Trace traffic"),
1755
- j(E.DTP_POINTER, "trace_ievent_callback", 0, null, "Trace traffic callback"),
1756
- j(E.DTP_BOOLEAN, "trace_creation", 0, 0, "Trace creation"),
1757
- j(E.DTP_BOOLEAN, "trace_start_stop", 0, 0, "Trace start/stop"),
1758
- j(E.DTP_BOOLEAN, "trace_subscriptions", 0, 0, "Trace subscription"),
1759
- j(E.DTP_BOOLEAN, "trace_i18n", 0, 0, "Trace i18n"),
1760
- j(E.DTP_BOOLEAN, "no_poll", 0, 0, "no poll"),
1761
- j(E.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
1762
- j(E.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
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
- ], _r = { gobj_timer: null }, ar = null;
1765
- function ur(e, t, n, r) {
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 cr = {
1770
+ var fr = {
1769
1771
  mt_create: function(e) {
1770
1772
  let t = e.priv;
1771
- et(e, "start_date", Kn()), et(e, "node_uuid", xn()), e.priv.gobj_timer = se(Oe(e), "C_TIMER", {}, e), t.periodic_timeout = xe(e, "periodic_timeout");
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), or(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
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), ye(t) || be(t), 0;
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 fr = "ievent_gate_stack", gr = [
1790
- j(E.DTP_STRING, "wanted_yuno_role", y.SDF_RD, "", "wanted yuno role"),
1791
- j(E.DTP_STRING, "wanted_yuno_name", y.SDF_RD, "", "wanted yuno name"),
1792
- j(E.DTP_STRING, "wanted_yuno_service", y.SDF_RD, "", "wanted yuno service"),
1793
- j(E.DTP_STRING, "remote_yuno_role", y.SDF_RD, "", "confirmed remote yuno role"),
1794
- j(E.DTP_STRING, "remote_yuno_name", y.SDF_RD, "", "confirmed remote yuno name"),
1795
- j(E.DTP_STRING, "remote_yuno_service", y.SDF_RD, "", "confirmed remote yuno service"),
1796
- j(E.DTP_STRING, "url", y.SDF_RD, "", "Url to connect"),
1797
- j(E.DTP_STRING, "jwt", y.SDF_PERSIST, "", "JWT"),
1798
- j(E.DTP_STRING, "cert_pem", y.SDF_PERSIST, "", "SSL server certification, PEM str format"),
1799
- j(E.DTP_JSON, "extra_info", y.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
1800
- j(E.DTP_INTEGER, "timeout_retry", y.SDF_RD, "5000", "timeout waiting idAck"),
1801
- j(E.DTP_INTEGER, "timeout_idack", y.SDF_RD, "5000", "timeout waiting idAck"),
1802
- j(E.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
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
- ], dr = {
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
- }, br = null;
1814
- function pr(e) {
1815
- e.priv.websocket && Rt("Websocket ALREADY setup");
1816
- const t = Qe(e, "url");
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
- $t(`====> Starting WebSocket to '${t}' (${we(e)})`);
1823
+ At(`====> Starting WebSocket to '${t}' (${we(e)})`);
1819
1824
  try {
1820
1825
  n = new WebSocket(t);
1821
1826
  } catch (n) {
1822
- return Rt(`${we(e)}: Cannot open WebSocket to '${t}', Error: ${n.message}`), null;
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") ? kt("Close websocket by unload page") : lt(e, "EV_ON_CLOSE", {
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) : (Rt(`${we(e)}: Failed to initialize WebSocket.`), null);
1841
+ }, n) : (kt(`${we(e)}: Failed to initialize WebSocket.`), null);
1837
1842
  }
1838
- function mr(e, t = 1e3, n = "") {
1839
- let r = e.priv, i = r.websocket;
1840
- if (r.websocket = null, i && i.readyState !== WebSocket.CLOSED && i.readyState !== WebSocket.CLOSING) {
1841
- $t(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
1843
+ function hr(e, t = 1e3, n = "") {
1844
+ let r = e.priv, o = r.websocket;
1845
+ if (r.websocket = null, o && o.readyState !== WebSocket.CLOSED && o.readyState !== WebSocket.CLOSING) {
1846
+ At(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
1842
1847
  try {
1843
- i.close(t, n);
1848
+ o.close(t, n);
1844
1849
  } catch (e) {
1845
- Rt("Error closing WebSocket:", e.message);
1850
+ kt("Error closing WebSocket:", e.message);
1846
1851
  }
1847
- } else kt("WebSocket is already closed or in the process of closing.");
1852
+ } else $t("WebSocket is already closed or in the process of closing.");
1848
1853
  }
1849
- function hr(e, t, n) {
1850
- let r = Kn();
1854
+ function yr(e, t, n) {
1855
+ let r = xn();
1851
1856
  try {
1852
- $t("\n" + r + " " + t + "\n"), It(n);
1857
+ At("\n" + r + " " + t + "\n"), Lt(n);
1853
1858
  } catch (e) {
1854
- $t("ERROR in trace_inter_event: " + e);
1859
+ At("ERROR in trace_inter_event: " + e);
1855
1860
  }
1856
1861
  }
1857
1862
  var Er = class {
@@ -1859,100 +1864,108 @@ var gobjJs = function(e) {
1859
1864
  this.event = e, this.kw = t || {};
1860
1865
  }
1861
1866
  };
1862
- function yr(e, t, n, r) {
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 = Qe(e, "url"), i = Oe(Te()) + " ==> " + n, o = xe(Te(), "trace_ievent_callback");
1867
- o ? o(i, t, 1, r.length) : hr(0, i, t);
1871
+ let n = ze(e, "url"), o = Oe(Te()) + " ==> " + n, i = Ye(Te(), "trace_ievent_callback");
1872
+ i ? i(o, t, 1, r.length) : yr(0, o, t);
1868
1873
  }
1869
- if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return kt(`${we(e)}: send_iev(): websocket not open, message lost`), -1;
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
- Rt(`${we(e)}: send_iev(): ${t}`);
1878
+ kt(`${we(e)}: send_iev(): ${t}`);
1874
1879
  }
1875
1880
  return 0;
1876
1881
  }(e, function(e, t) {
1877
- return rn(e) ? (Rt("iev_create() event NULL"), null) : new Er(e, t);
1882
+ return on(e) ? (kt("iev_create() event NULL"), null) : new Er(e, t);
1878
1883
  }(t, n));
1879
1884
  }
1880
- function Tr(e, t, n) {
1881
- return rn(n) && (n = Qe(e, "wanted_yuno_service")), {
1882
- dst_yuno: Qe(e, "wanted_yuno_name"),
1883
- dst_role: Qe(e, "wanted_yuno_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: je(),
1891
+ src_role: Se(),
1887
1892
  src_service: t,
1888
- host: xn()
1893
+ host: Bn()
1889
1894
  };
1890
1895
  }
1891
- function vr(e) {
1892
- let t = e.priv, n = ye(Te()), r = Qe(Te(), "yuno_version"), i = Qe(Te(), "yuno_release"), o = Qe(Te(), "yuno_tag"), s = {
1893
- yuno_role: je(),
1894
- yuno_id: Se(),
1896
+ function Sr(e) {
1897
+ let t = e.priv, n = Ee(Te()), r = ze(Te(), "yuno_version"), o = ze(Te(), "yuno_release"), i = 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
- yuno_tag: o,
1903
+ yuno_tag: i,
1897
1904
  yuno_version: r,
1898
- yuno_release: i,
1905
+ yuno_release: o,
1899
1906
  yuneta_version: l,
1900
1907
  playing: n,
1901
1908
  pid: 0,
1902
1909
  watcher_pid: 0,
1903
- jwt: Qe(e, "jwt"),
1904
- username: Qe(Te(), "__username__"),
1910
+ jwt: ze(e, "jwt"),
1911
+ username: ze(Te(), "__username__"),
1905
1912
  launch_id: 0,
1906
- yuno_startdate: Qe(Te(), "start_date"),
1907
- id: xn(),
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: xe(Te(), "required_services")
1917
+ required_services: s
1911
1918
  };
1912
- return Ln(e, s, fr, Tr(e, Oe(Re(e)), null)), Un(e, s, "__identity__"), ir(t.gobj_timer, ze(e, "timeout_idack")), yr(e, "EV_IDENTITY_CARD", s);
1919
+ return Pn(e, _, gr, vr(e, Oe(Re(e)), null)), Cn(e, _, "__identity__"), ir(t.gobj_timer, qe(e, "timeout_idack")), Tr(e, "EV_IDENTITY_CARD", _);
1913
1920
  }
1914
1921
  function jr(e, t) {
1915
- if (rn(t.event)) return -1;
1916
- 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), Ln(e, n, fr, Tr(e, Oe(s), l)), Un(e, n, "__subscribing__"), yr(e, t.event, n);
1918
- }
1919
- function Sr(e, t, n, r) {
1920
- let i = e.priv;
1921
- return me(e) && (i.websocket = pr(e)), 0;
1922
+ if (on(t.event)) return -1;
1923
+ let n = {}, r = t.__global__, o = t.__config__, i = t.__filter__, l = t.__service__, s = t.subscriber;
1924
+ return o && (n.__config__ = o), r && (n.__global__ = r), i && (n.__filter__ = i), 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
- return $t("Websocket opened: " + e.priv.url), vr(e), 0;
1927
+ let o = e.priv;
1928
+ return me(e) && (o.websocket = mr(e)), 0;
1925
1929
  }
1926
1930
  function Nr(e, t, n, r) {
1927
- let i = e.priv, o = n.e, l = n.url;
1928
- return wt(), kt(`${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
- url: l,
1930
- remote_yuno_name: i.remote_yuno_name,
1931
- remote_yuno_role: i.remote_yuno_role,
1932
- remote_yuno_service: i.remote_yuno_service
1933
- })) : (kt(`${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
- url: l,
1935
- remote_yuno_name: i.remote_yuno_name,
1936
- remote_yuno_role: i.remote_yuno_role,
1937
- remote_yuno_service: i.remote_yuno_service,
1938
- code: o.code,
1939
- reason: o.reason,
1940
- was_clean: o.wasClean
1941
- })), me(e) && ir(i.gobj_timer, ze(e, "timeout_retry")), 0;
1931
+ return At("Websocket opened: " + e.priv.url), Sr(e), 0;
1942
1932
  }
1943
1933
  function wr(e, t, n, r) {
1944
- return vr(e), 0;
1934
+ let o = e.priv, i = n.e, l = n.url;
1935
+ return Dt(), $t(`${we(e)}: WebSocket closed ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, mt(e, "EV_ON_CLOSE", {
1936
+ url: l,
1937
+ remote_yuno_name: o.remote_yuno_name,
1938
+ remote_yuno_role: o.remote_yuno_role,
1939
+ remote_yuno_service: o.remote_yuno_service
1940
+ })) : ($t(`${we(e)}: EV_ON_OPEN_ERROR cannot open ${l} (Code: ${i.code}, Reason: "${i.reason}", Clean: ${i.wasClean})`), mt(e, "EV_ON_OPEN_ERROR", {
1941
+ url: l,
1942
+ remote_yuno_name: o.remote_yuno_name,
1943
+ remote_yuno_role: o.remote_yuno_role,
1944
+ remote_yuno_service: o.remote_yuno_service,
1945
+ code: i.code,
1946
+ reason: i.reason,
1947
+ was_clean: i.wasClean
1948
+ })), me(e) && ir(o.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 o = .2 * t.retry_ms, i = t.retry_ms - o + 2 * Math.random() * o;
1953
+ return Math.max(1, Math.round(i));
1954
+ }(e)), 0;
1945
1955
  }
1946
1956
  function Dr(e, t, n, r) {
1947
- let i = e.priv;
1948
- lr(i.gobj_timer);
1949
- let o = Pn(e, n, fr, !0), l = bn(e, o, "src_yuno", ""), s = bn(e, o, "src_role", ""), _ = bn(e, o, "src_service", "");
1957
+ return Sr(e), 0;
1958
+ }
1959
+ function Rr(e, t, n, r) {
1960
+ let o = e.priv;
1961
+ sr(o.gobj_timer);
1962
+ let i = Un(e, n, gr, !0), l = pn(e, i, "src_yuno", ""), s = pn(e, i, "src_role", ""), _ = pn(e, i, "src_service", "");
1950
1963
  et(e, "remote_yuno_name", l), et(e, "remote_yuno_role", s), et(e, "remote_yuno_service", _);
1951
- let a = dn(e, n, "result", -1, 0), u = bn(e, n, "comment", "", 0), c = bn(e, n, "username", "", 0), f = hn(e, n, "services_roles", {});
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
- mr(e);
1966
+ hr(e);
1954
1967
  let t = {
1955
- url: Qe(e, "url"),
1968
+ url: ze(e, "url"),
1956
1969
  result: a,
1957
1970
  comment: u,
1958
1971
  username: c,
@@ -1962,8 +1975,8 @@ 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) {
1966
- i.inform_on_close = !0;
1978
+ if (tt(e, "ST_SESSION"), o.inside_on_open = !0, o.retry_ms = 0, !o.inform_on_close) {
1979
+ o.inform_on_close = !0;
1967
1980
  let t = {
1968
1981
  username: c,
1969
1982
  remote_yuno_name: l,
@@ -1973,119 +1986,119 @@ var gobjJs = function(e) {
1973
1986
  };
1974
1987
  $e(e) ? lt(Re(e), "EV_ON_OPEN", t, e) : mt(e, "EV_ON_OPEN", t);
1975
1988
  }
1976
- i.inside_on_open = !1, function(e) {
1989
+ o.inside_on_open = !1, function(e) {
1977
1990
  let t = bt(e, null, null, null);
1978
1991
  for (let n = 0; n < t.length; n++) jr(e, t[n]);
1979
1992
  }(e);
1980
1993
  }
1981
1994
  return 0;
1982
1995
  }
1983
- function Rr(e, t, n, r) {
1984
- let i = e.priv.url, o = function(e, t) {
1996
+ function kr(e, t, n, r) {
1997
+ let o = e.priv.url, i = function(e, t) {
1985
1998
  let n;
1986
1999
  try {
1987
2000
  n = JSON.parse(t);
1988
2001
  } catch (e) {
1989
- return Rt("parsing inter_event json: " + e), null;
2002
+ return kt("parsing inter_event json: " + e), null;
1990
2003
  }
1991
- if (!(n instanceof Object)) return Rt("parsing inter_event: websocket data not a json object"), null;
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 Rt("parsing inter_event: no event"), null;
1994
- if ("string" != typeof r) return Rt("parsing inter_event: event not a string"), null;
1995
- let i = n.kw;
1996
- return i ? i instanceof Object ? {
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;
2008
+ let o = n.kw;
2009
+ return o ? o instanceof Object ? {
1997
2010
  event: r,
1998
- kw: i || {}
1999
- } : (Rt("parsing inter_event: kw not a json object"), null) : (Rt("parsing inter_kw: no kw"), null);
2011
+ kw: o || {}
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 = xe(Te(), "trace_ievent_callback");
2003
- r ? r(e, o, 2, t) : hr(0, e, o);
2015
+ let e = Oe(Te()) + " <== " + o, t = n.data.length, r = Ye(Te(), "trace_ievent_callback");
2016
+ r ? r(e, i, 2, t) : yr(0, e, i);
2004
2017
  }
2005
- let l = o.event, s = o.kw;
2018
+ let l = i.event, s = i.kw;
2006
2019
  if ("ST_SESSION" !== nt(e)) {
2007
- if (it(e, l, R.EVF_PUBLIC_EVENT)) {
2020
+ if (ot(e, l, R.EVF_PUBLIC_EVENT)) {
2008
2021
  if (0 === lt(e, l, s, e)) return 0;
2009
- } else Rt(`${we(e)}: event UNKNOWN in not-session state ${l}`);
2010
- return mr(e), -1;
2022
+ } else kt(`${we(e)}: event UNKNOWN in not-session state ${l}`);
2023
+ return hr(e), -1;
2011
2024
  }
2012
- o = null;
2013
- let _ = Cn(e, s), a = Pn(e, s, fr), u = bn(e, a, "dst_role", "");
2014
- if (u !== je()) return Rt(`"It's not my role, dst_role: ${u}, my_role: ${je()}`), 0;
2015
- let c = bn(e, a, "dst_service", "");
2025
+ i = null;
2026
+ let _ = Fn(e, s), a = Un(e, s, gr), u = pn(e, a, "dst_role", "");
2027
+ if (u.toLowerCase() !== Se().toLowerCase()) 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
- if (it(e, l, R.EVF_PUBLIC_EVENT)) return lt(e, l, s, e), 0;
2031
+ if (ot(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 Rt(`${we(e)}: Service found but no event or not public, service '${we(f)}', ev '${l}'`), -1;
2034
+ if (!ot(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 kr(e, t, n, r) {
2039
+ function $r(e, t, n, r) {
2027
2040
  return 0;
2028
2041
  }
2029
- function $r(e, t, n, r) {
2042
+ function Ar(e, t, n, r) {
2030
2043
  return 0;
2031
2044
  }
2032
- var Ar = {
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 = Qe(e, "url"), t.remote_yuno_name = Qe(e, "remote_yuno_name"), t.remote_yuno_role = Qe(e, "remote_yuno_role"), t.remote_yuno_service = Qe(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);
2036
- const n = qe(e, "subscriber");
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 = Qe(e, "url");
2056
+ n.url = ze(e, "url");
2044
2057
  break;
2045
2058
  case "remote_yuno_name":
2046
- n.remote_yuno_name = Qe(e, "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 = Qe(e, "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 = Qe(e, "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 = pr(e), 0;
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 lr(t.gobj_timer), fe(t.gobj_timer), t.websocket && mr(e), 0;
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 Rt("Not in session"), null;
2077
+ if ("ST_SESSION" !== nt(e)) return kt("Not in session"), null;
2065
2078
  n || (n = {});
2066
- let i = Tr(e, Oe(r), bn(e, n, "service", null, 0)), o = hn(e, n, "__md_stats__", null, ht.KW_EXTRACT);
2067
- return o || (o = {}), Ln(e, n, "stats_stack", {
2079
+ let o = vr(e, Oe(r), pn(e, n, "service", null, 0)), i = yn(e, n, "__md_stats__", null, ht.KW_EXTRACT);
2080
+ return i || (i = {}), Pn(e, n, "stats_stack", {
2068
2081
  stats: t,
2069
- kw: o
2070
- }), Ln(e, n, fr, i), n.__stats__ = t, Un(e, n, "__stats__"), yr(e, "EV_MT_STATS", n, r), null;
2082
+ kw: i
2083
+ }), Pn(e, n, gr, o), 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 Rt("Not in session"), null;
2086
+ if ("ST_SESSION" !== nt(e)) return kt("Not in session"), null;
2074
2087
  n || (n = {});
2075
- let i = Tr(e, Oe(r), bn(e, n, "service", "", 0)), o = hn(e, n, "__md_command__", null, ht.KW_EXTRACT);
2076
- return o || (o = {}), Ln(e, n, "command_stack", {
2088
+ let o = vr(e, Oe(r), pn(e, n, "service", "", 0)), i = yn(e, n, "__md_command__", null, ht.KW_EXTRACT);
2089
+ return i || (i = {}), Pn(e, n, "command_stack", {
2077
2090
  command: t,
2078
- kw: o
2079
- }), Ln(e, n, fr, i), n.__command__ = t, Un(e, n, "__command__"), yr(e, "EV_MT_COMMAND", n, r), null;
2091
+ kw: i
2092
+ }), Pn(e, n, gr, o), 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 = {}), Pn(e, n, fr));
2096
+ if (n || (n = {}), Un(e, n, gr));
2084
2097
  else {
2085
- let i = Tr(e, Oe(r), bn(e, n, "__service__", 0, 0));
2086
- Vt(n, "__service__"), Ln(e, n, "__message__", t), Ln(e, n, fr, i);
2098
+ let o = vr(e, Oe(r), pn(e, n, "__service__", 0, 0));
2099
+ Wt(n, "__service__"), Pn(e, n, "__message__", t), Pn(e, n, gr, o);
2087
2100
  }
2088
- return Un(e, n, "__message__"), yr(e, t, n, r);
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,77 +2108,77 @@ 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 (rn(t.event)) return 0;
2099
- 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), Ln(e, r, fr, Tr(e, Oe(_), s)), Un(e, r, "__unsubscribing__"), yr(e, t.event, r, e);
2111
+ if (on(t.event)) return 0;
2112
+ let r = {}, o = t.__global__, i = t.__config__, l = t.__filter__, s = t.__service__, _ = t.subscriber;
2113
+ return i && (r.__config__ = i), o && (r.__global__ = o), 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 = j, 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__", {
2116
+ return e.GObj = O, e.SDATA = S, e.SDATAAUTHZ = (e, t, n, r, o, i) => new T(e, t, n, null, i, r, null, 0, null, o, null), e.SDATACM = (e, t, n, r, o, i) => new T(e, t, 0, null, i, n, null, 0, o, r, null), e.SDATACM2 = (e, t, n, r, o, i, l) => new T(e, t, n, null, l, r, null, 0, i, o, null), e.SDATADF = (e, t, n, r, o, i) => new T(e, t, n, null, i, null, r, o), e.SDATAPM = (e, t, n, r, o) => new T(e, t, n, r, o), e.SDATAPM0 = (e, t, n, r, o) => new T(e, t, n, null, o, 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;
2107
2120
  }
2108
- }), e.build_command_response = i, e.build_path = function(...e) {
2121
+ }), e.build_command_response = o, e.build_path = function(...e) {
2109
2122
  let t = "", n = 0;
2110
2123
  for (let r of e) null != r && "" !== r && (r = String(r), r = 0 === n ? r.replace(/\/+$/, "") : r.replace(/^\/+/, "").replace(/\/+$/, ""), "" !== r && (n > 0 && (t += "/"), t += r, n++));
2111
2124
  return t;
2112
- }, e.build_stats_response = o, e.clean_name = function(e) {
2125
+ }, e.build_stats_response = i, e.clean_name = function(e) {
2113
2126
  return e.replace(/[?# ^:]/g, "_");
2114
- }, e.clear_timeout = lr, e.cmp_two_simple_json = _n, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
2115
- let [r, i, o, l] = t;
2116
- if (!r) return void Rt("Tag must be a valid HTML element.");
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) {
2128
+ let [r, o, i, l] = t;
2129
+ if (!r) return void kt("Tag must be a valid HTML element.");
2117
2130
  let s = document.createElement(r), _ = "";
2118
- if (i && "object" == typeof i) for (let e of Object.keys(i)) if ("style" === e && "object" == typeof i[e]) {
2131
+ if (o && "object" == typeof o) for (let e of Object.keys(o)) if ("style" === e && "object" == typeof o[e]) {
2119
2132
  let t = "";
2120
- for (const n of Object.keys(i[e])) t += `${n}: ${i[e][n]};`;
2133
+ for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
2121
2134
  s.style.cssText = t;
2122
- } 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 (Ht(o)) if (o = o.trim(), o.length > 0 && "<" === o[0]) s.appendChild(Mn(o));
2124
- else if (n && _) s.textContent = n(_) || o;
2125
- else s.textContent = o;
2126
- else if (qt(o)) {
2127
- if (o.length > 0) if (Ht(o[0])) s.appendChild(e(o, n));
2128
- 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 && (Rt("content ignored"), It(o));
2135
+ } else "style" === e ? s.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], s.setAttribute("data-i18n", _)) : s.setAttribute(e, o[e]);
2136
+ if (Xt(i)) if (i = i.trim(), i.length > 0 && "<" === i[0]) s.appendChild(Kn(i));
2137
+ else if (n && _) s.textContent = n(_) || i;
2138
+ else s.textContent = i;
2139
+ else if (Ht(i)) {
2140
+ if (i.length > 0) if (Xt(i[0])) s.appendChild(e(i, n));
2141
+ else for (let t of i) Array.isArray(t) && t.length > 0 ? s.appendChild(e(t, n)) : t instanceof HTMLElement && s.appendChild(t);
2142
+ } else i instanceof HTMLElement || i instanceof Text || i instanceof SVGElement ? s.appendChild(i) : null != i && (kt("content ignored"), Lt(i));
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 = Mn, e.create_json_record = function(e, t) {
2133
- let n = Lt(e);
2134
- return Ct(n, t), n;
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
- let i;
2139
- Qt(r) && (i = r.default), n[e] = hn(null, t, e, i);
2151
+ let o;
2152
+ Qt(r) && (o = r.default), n[e] = yn(null, t, e, o);
2140
2153
  }), n;
2141
- }, e.current_timestamp = Kn, e.data_type_t = E, e.db_list_persistent_attrs = function(e, t) {
2142
- let n = On(Jn(e), null, !1), r = {};
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, y.SDF_PERSIST), r = On(Jn(e), null, !1);
2158
+ let n = Be(e, E.SDF_PERSIST), r = Nn(qn(e), null, !1);
2146
2159
  if (r && Qt(r)) {
2147
- let i = jn(e, r, t, !1);
2148
- i = jn(e, i, n, !1), He(e, i, y.SDF_PERSIST);
2160
+ let o = jn(e, r, t, !1);
2161
+ o = jn(e, o, n, !1), He(e, o, E.SDF_PERSIST);
2149
2162
  }
2150
2163
  }, e.db_remove_persistent_attrs = function(e, t) {
2151
- let n = Sn(e, On(Jn(e), null, !1), t, !1);
2152
- 0 === Bt(n) ? wn(Jn(e)) : Nn(Jn(e), n);
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, y.SDF_PERSIST), t, !1), r = On(Jn(e), null, !1);
2155
- r && Qt(r) && Ft(n, r), Nn(Jn(e), n);
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
- let r = null, i = null, o = null;
2170
+ let r = null, o = null, i = null;
2158
2171
  const l = (...l) => {
2159
- o = this, i = l;
2172
+ i = this, o = l;
2160
2173
  const s = n && !r;
2161
2174
  clearTimeout(r), r = setTimeout(() => {
2162
- r = null, n || e.apply(o, i);
2163
- }, t), s && e.apply(o, i);
2175
+ r = null, n || e.apply(i, o);
2176
+ }, t), s && e.apply(i, o);
2164
2177
  };
2165
2178
  return l.flush = () => {
2166
- r && (clearTimeout(r), r = null, e.apply(o, i));
2179
+ r && (clearTimeout(r), r = null, e.apply(i, o));
2167
2180
  }, l.cancel = () => {
2168
- clearTimeout(r), r = null, i = null, o = null;
2181
+ clearTimeout(r), r = null, o = null, i = null;
2169
2182
  }, l;
2170
2183
  }, e.delete_from_list = function(e, t) {
2171
2184
  for (let n = 0; n < e.length; n++) if (t === e[n]) return e.splice(n, 1), !0;
@@ -2177,33 +2190,33 @@ var gobjJs = function(e) {
2177
2190
  Object.assign(t, e);
2178
2191
  }
2179
2192
  return t;
2180
- }, e.empty_string = rn, e.escapeHtml = Wn, e.event_flag_t = R, e.gclass_add_ev_action = J, e.gclass_add_event_type = Q, 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) {
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,
2184
2197
  right: 0,
2185
2198
  bottom: 0
2186
2199
  };
2187
- const { top: t, left: n, width: r, height: i } = e.getBoundingClientRect?.() || {
2200
+ const { top: t, left: n, width: r, height: o } = e.getBoundingClientRect?.() || {
2188
2201
  top: 0,
2189
2202
  left: 0,
2190
2203
  width: 0,
2191
2204
  height: 0
2192
- }, o = "undefined" != typeof window, l = o && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = o && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
2205
+ }, i = "undefined" != typeof window, l = i && (window.scrollY || document.documentElement?.scrollTop || document.body?.scrollTop) || 0, s = i && (window.scrollX || document.documentElement?.scrollLeft || document.body?.scrollLeft) || 0;
2193
2206
  return {
2194
2207
  top: t + l,
2195
2208
  left: n + s,
2196
2209
  right: n + s + r,
2197
- bottom: t + l + i
2210
+ bottom: t + l + o
2198
2211
  };
2199
- }, e.get_function_name = Bn, e.get_now = function() {
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) ? (Rt("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") && $t(n("👦👦🔵 child_added(%s): %s", De(t), we(e))), t.mt_child_added(t, e)), 0) : (Rt(`${we(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
2203
- }, e.gobj_change_state = tt, e.gobj_command = function(e, t, r, o) {
2204
- if (Ae(e)) return Rt("gobj NULL or DESTROYED"), -1;
2205
- let l = p && ze(p, "tracing");
2206
- return l && (P(n("🌀🌀 mach(%s%s), cmd: %s, src: %s", me(e) ? "" : "!!", we(e), t, we(o))), l > 1 && It(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);
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);
2216
+ }, e.gobj_change_state = tt, e.gobj_command = function(e, t, r, i) {
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(i))), l > 1 && Lt(r)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, t, r, i) : e.gclass.command_table ? c ? c(e, t, r, i) : o(0, -1, n("%s: global command parser not available", we(e)), 0, 0) : o(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,71 +2228,71 @@ 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 (rn(t)) return null;
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 = Ye, e.gobj_has_event = it, e.gobj_has_output_event = ot, e.gobj_hsdata = G, e.gobj_is_destroying = Ae, e.gobj_is_playing = ye, e.gobj_is_pure_child = $e, e.gobj_is_running = me, e.gobj_is_service = Ee, e.gobj_is_volatil = ke, e.gobj_list_persistent_attrs = function(e, t) {
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 = ot, e.gobj_has_output_event = it, 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 = pn(e, r, "publisher", null, ht.KW_REQUIRED), o = pn(e, r, "subscriber", null, ht.KW_REQUIRED);
2227
- Mt(r, "s_event", bn(e, r, "event", "", ht.KW_REQUIRED)), Mt(r, "s_publisher", we(i)), Mt(r, "s_subscriber", we(o));
2239
+ let r = t[n], o = mn(e, r, "publisher", null, ht.KW_REQUIRED), i = 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(o)), Kt(r, "s_subscriber", we(i));
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 = pn(e, r, "publisher", null, ht.KW_REQUIRED), o = pn(e, r, "subscriber", null, ht.KW_REQUIRED);
2232
- Mt(r, "s_event", bn(e, r, "event", "", ht.KW_REQUIRED)), Mt(r, "s_publisher", we(i)), Mt(r, "s_subscriber", we(o));
2244
+ let r = n[t], o = mn(e, r, "publisher", null, ht.KW_REQUIRED), i = 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(o)), Kt(r, "s_subscriber", we(i));
2233
2246
  }
2234
2247
  return {
2235
2248
  subscriptions: t,
2236
2249
  subscribings: n,
2237
- "total subscriptions": Jt(t),
2238
- total_subscribings: Jt(n)
2250
+ "total subscriptions": qt(t),
2251
+ total_subscribings: qt(n)
2239
2252
  };
2240
2253
  }, e.gobj_load_persistent_attrs = function(e, t) {
2241
- return Ee(e) ? s ? s(e, t) : -1 : (Rt(`${we(e)}: Only gobj services can load/save writable-persistent`), -1);
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 Rt("gobj NULL or DESTROYED"), null;
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;
2247
2260
  for (let e = 0; e < r.length; e++) {
2248
- const i = r[e];
2249
- We(i, t) && n.push(i);
2261
+ const o = r[e];
2262
+ We(o, t) && n.push(o);
2250
2263
  }
2251
2264
  return n;
2252
2265
  }, e.gobj_match_children_tree = function(e, t) {
2253
2266
  t = t || {};
2254
2267
  let n = [];
2255
2268
  return function e(n, r) {
2256
- let i = r.dl_children;
2257
- for (let r = 0; r < i.length; r++) {
2258
- let o = i[r];
2259
- We(o, t) && n.push(o), e(n, o);
2269
+ let o = r.dl_children;
2270
+ for (let r = 0; r < o.length; r++) {
2271
+ let i = o[r];
2272
+ We(i, t) && n.push(i), e(n, i);
2260
2273
  }
2261
2274
  }(n, e), n;
2262
2275
  }, e.gobj_match_gobj = We, e.gobj_name = Oe, e.gobj_parent = Re, e.gobj_pause = pe, e.gobj_play = be, e.gobj_post_event = function(e, t, n, r) {
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 = xe, e.gobj_read_attrs = Be, e.gobj_read_bool_attr = Je, e.gobj_read_integer_attr = ze, e.gobj_read_pointer_attr = qe, e.gobj_read_str_attr = Qe, e.gobj_remove_persistent_attrs = function(e, t) {
2267
- return Ee(e) ? a ? a(e, t) : -1 : (Rt(`${we(e)}: Only gobj services can load/save writable-persistent`), -1);
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 Rt("gobj NULL or DESTROYED"), -1;
2283
+ if (Ae(e)) return kt("gobj NULL or DESTROYED"), -1;
2271
2284
  let r = e.gclass.attrs_table;
2272
- for (let i = 0; i < r.length; i++) {
2273
- const o = r[i];
2274
- if (o.name && !(n && o.flag & n) && (-1 === t || o.flag & t)) {
2275
- const t = C(e, e.jn_attrs, o);
2276
- Qt(e.priv) && e.priv.hasOwnProperty(o.name) && (e.priv[o.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o.name);
2285
+ for (let o = 0; o < r.length; o++) {
2286
+ const i = r[o];
2287
+ if (i.name && !(n && i.flag & n) && (-1 === t || i.flag & t)) {
2288
+ const t = C(e, e.jn_attrs, i);
2289
+ Qt(e.priv) && e.priv.hasOwnProperty(i.name) && (e.priv[i.name] = t), e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, i.name);
2277
2290
  }
2278
2291
  }
2279
2292
  return 0;
2280
- }(e, y.SDF_VOLATIL, 0);
2293
+ }(e, E.SDF_VOLATIL, 0);
2281
2294
  }, e.gobj_save_persistent_attrs = function(e, t) {
2282
- return Ee(e) ? _ ? _(e, t) : -1 : (Rt(`${we(e)}: Only gobj services can load/save writable-persistent`), -1);
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,27 +2300,27 @@ 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) ? (Rt("gobj NULL or DESTROYED"), -1) : Ue(e, k.WALK_FIRST2LAST, ue, 0, 0);
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) ? (Rt("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
- }, e.gobj_start_up = function(e, t, n, r, i, o, l) {
2294
- s = t, _ = n, a = r, u = i, c = o, f = l;
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)));
2306
+ }, e.gobj_start_up = function(e, t, n, r, o, i, l) {
2307
+ s = t, _ = n, a = r, u = o, c = i, 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
- z(g, t, n);
2311
+ q(g, t, n);
2299
2312
  }
2300
2313
  return 0;
2301
- }, e.gobj_stats = function(e, t, r, i) {
2302
- return Ae(e) ? (Rt("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);
2314
+ }, e.gobj_stats = function(e, t, r, o) {
2315
+ return Ae(e) ? (kt("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, t, r, o) : f ? f(e, t, r, o) : i(0, -1, n("%s, stats parser not available", 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) ? (Rt("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));
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 Rt(`publisher NULL: ev ${t}`), 0;
2309
- if (!r) return Rt(`subscriber NULL: ev ${t}`), 0;
2310
- const i = new Set([
2321
+ if (null == n && (n = {}), !e) return kt(`publisher NULL: ev ${t}`), 0;
2322
+ if (!r) return kt(`subscriber NULL: ev ${t}`), 0;
2323
+ const o = new Set([
2311
2324
  "__config__",
2312
2325
  "__global__",
2313
2326
  "__local__",
@@ -2315,102 +2328,102 @@ var gobjJs = function(e) {
2315
2328
  "__service__"
2316
2329
  ]);
2317
2330
  if (Object.keys(n).forEach((n) => {
2318
- i.has(n) || Rt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2319
- }), rn(t)) t = "";
2320
- else if (!(ot(e, t, R.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & N.gcflag_no_check_output_events)) return Rt(`event NOT in output event list: ${we(e)}, ev ${t}`), 0;
2321
- let o = ut(e.dl_subscriptions, e, t, n, r), l = 0;
2322
- for (let t = 0; t < o.length; t++) {
2323
- let n = o[t];
2331
+ o.has(n) || kt(`${we(e)}: key ignored in subscription (key: ${n}, event: ${t})`);
2332
+ }), on(t)) t = "";
2333
+ else if (!(it(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;
2334
+ let i = ut(e.dl_subscriptions, e, t, n, r), l = 0;
2335
+ for (let t = 0; t < i.length; t++) {
2336
+ let n = i[t];
2324
2337
  ft(e, n, !1, !1), l++;
2325
2338
  }
2326
- return l || (kt(`${we(e)}: No subscription found`), It(n, "No subscription found")), 0;
2327
- }, 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 (!Ht(t)) return Rt(n("gobj_write_attr(%s): path must be a string", we(e))), -1;
2329
- let o, l = e.jn_attrs, s = t.split("`");
2339
+ return l || ($t(`${we(e)}: No subscription found`), Lt(n, "No subscription found")), 0;
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, o) {
2341
+ if (!Xt(t)) return kt(n("gobj_write_attr(%s): path must be a string", we(e))), -1;
2342
+ let i, l = e.jn_attrs, s = t.split("`");
2330
2343
  if (s.length <= 1) {
2331
- 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) : (Rt(n("gobj_write_attr(%s): attr not found '%s'", we(e), i)), -1);
2344
+ let o = t;
2345
+ return o in l && l.hasOwnProperty(o) ? (l[o] = r, Qt(e.priv) && e.priv.hasOwnProperty(o) && (e.priv[o] = r), e.obflag & D.obflag_created && !(e.obflag & D.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, o), 0) : (kt(n("gobj_write_attr(%s): attr not found '%s'", we(e), o)), -1);
2333
2346
  }
2334
2347
  let _ = s.length;
2335
2348
  for (let t = 0; t < _; t++) {
2336
- o = s[t];
2337
- let n = Me(e, { __gobj_name__: o });
2349
+ i = s[t];
2350
+ let n = Me(e, { __gobj_name__: i });
2338
2351
  if (n && t < _ - 1) {
2339
2352
  e = n;
2340
2353
  continue;
2341
2354
  }
2342
- let i = e.jn_attrs;
2343
- 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;
2355
+ let o = e.jn_attrs;
2356
+ if (i in o && o.hasOwnProperty(i)) return o[i] = r, Qt(e.priv) && e.priv.hasOwnProperty(i) && (e.priv[i] = r), e.obflag & D.obflag_created && !(e.obflag & D.obflag_destroyed) && e.mt_writing && e.mt_writing(e, i), 0;
2344
2357
  break;
2345
2358
  }
2346
- return Rt(n("gobj_write_attr(%s): attr not found '%s'", we(e), o)), -1;
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 = Se, e.gobj_yuno_name = ve, e.gobj_yuno_role = je, e.id_index_in_obj_list = kn, e.index_in_list = Yn, e.is_array = qt, e.is_boolean = Zt, e.is_date = function(e) {
2359
+ return kt(n("gobj_write_attr(%s): attr not found '%s'", we(e), i)), -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 = tn, e.is_gobj = nn, e.is_metadata_key = function(e) {
2350
- if (!Ht(e)) return !1;
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 = en, e.is_number = Xt, e.is_object = Qt, e.is_private_key = function(e) {
2355
- if (!Ht(e)) return !1;
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 (Xt(e)) return !0;
2361
- if (!Ht(e)) return !1;
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 = Ht, e.jdb_delete = function(e, t, n, r) {
2365
- let i = hn(null, hn(null, e, "topics", null, 0), t, null, 0);
2366
- if (!i) return Rt("jdb_delete: topic not found: " + t), null;
2367
- if (rn(r.id)) return Rt("jdb_delete: record without id: " + r), At(r), null;
2368
- let o, l = n.split("`"), s = i;
2369
- for (; (o = l.shift()) && !rn(o) && s;) Qt(s) && (s = hn(null, s, e.hook, null, 0)), s = Gn(s, null, o, !1);
2370
- if (0 === l.length && s) if (qt(s)) {
2371
- let e = kn(s, r.id);
2377
+ }, e.is_string = Xt, e.jdb_delete = function(e, t, n, r) {
2378
+ let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
2379
+ if (!o) 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;
2381
+ let i, l = n.split("`"), s = o;
2382
+ for (; (i = l.shift()) && !on(i) && s;) Qt(s) && (s = yn(null, s, e.hook, null, 0)), s = Vn(s, null, i, !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 = hn(null, s, e.hook, null, 0), n = kn(t, r.id);
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
- return i;
2390
+ return o;
2378
2391
  }, e.jdb_get = function(e, t, n, r) {
2379
- let i = hn(null, hn(null, e, "topics", null, 0), t, null, 0);
2380
- return i ? (void 0 === r && (r = !0), Gn(i, e.hook, n, r)) : (Rt("jdb_get: topic not found: " + t), null);
2392
+ let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
2393
+ return o ? (void 0 === r && (r = !0), Vn(o, 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 = hn(null, hn(null, e, "topics", null, 0), t, null, 0);
2383
- return r ? n < r.length ? r[n] : {} : (Rt("jdb_get_by_idx: topic not found: " + t), null);
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 = hn(null, e, "topics", null, 0);
2386
- if (!n) return Rt("jdb topics section not found"), At(e), null;
2387
- return hn(null, n, t, null, 0) || (Rt("jdb topic not found: " + t), At(n), null);
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 = Lt(e));
2390
- let r = hn(null, e, "type", [], 1);
2391
- bn(null, e, "hook", "data", 1);
2392
- let i = hn(null, e, "schema", {}, 1), o = hn(null, e, "topics", {}, 1);
2393
- return Fn(i, function(e, t, n, i) {
2394
- "__" !== t.substring(0, 2) && hn(null, o, i, Lt(r), 1);
2402
+ n && (e = Pt(e));
2403
+ let r = yn(null, e, "type", [], 1);
2404
+ pn(null, e, "hook", "data", 1);
2405
+ let o = yn(null, e, "schema", {}, 1), i = yn(null, e, "topics", {}, 1);
2406
+ return Gn(o, function(e, t, n, o) {
2407
+ "__" !== t.substring(0, 2) && yn(null, i, o, Pt(r), 1);
2395
2408
  }, t), e;
2396
2409
  }, e.jdb_update = function(e, t, n, r) {
2397
- let i = hn(null, hn(null, e, "topics", null, 0), t, null, 0);
2398
- if (!i) return Rt("jdb_update: topic not found: " + t), null;
2399
- if (rn(r.id)) return Rt("jdb_update: record without id: " + r), At(r), null;
2400
- let o, l = n.split("`"), s = i;
2401
- for (; (o = l.shift()) && !rn(o) && s;) Qt(s) && (s = hn(null, s, e.hook, [], 1)), s = Gn(s, null, o, !1);
2402
- if (0 === l.length && s) if (qt(s)) s.push(r);
2410
+ let o = yn(null, yn(null, e, "topics", null, 0), t, null, 0);
2411
+ if (!o) 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;
2413
+ let i, l = n.split("`"), s = o;
2414
+ for (; (i = l.shift()) && !on(i) && s;) Qt(s) && (s = yn(null, s, e.hook, [], 1)), s = Vn(s, null, i, !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 = hn(null, s, e.hook, [], 1), n = Gn(t, e.hook, r.id, !1);
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
- return i;
2409
- }, e.json_array_append = Kt, e.json_array_append_new = Yt, e.json_array_extend = function(e, t) {
2421
+ return o;
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 = xt, e.json_array_size = Jt, e.json_deep_copy = Lt, e.json_is_identical = Pt, e.json_object_del = Vt, e.json_object_get = Gt, e.json_object_set = Wt, e.json_object_set_new = Mt, e.json_object_size = Bt, e.json_object_update = Ut, e.json_object_update_existing = Ct, e.json_object_update_missing = Ft, e.json_size = zt, e.jwt2json = function(e, t) {
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 = Vn(e);
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,122 +2432,122 @@ var gobjJs = function(e) {
2419
2432
  } catch (e) {
2420
2433
  return null;
2421
2434
  }
2422
- }, e.jwtDecode = Vn, e.kw_clone_by_keys = jn, e.kw_clone_by_not_keys = Sn, e.kw_collect = function(e, t, n, r) {
2423
- if (e && !nn(e) && Rt("GObj bad instanceof"), !t) return null;
2424
- r || (r = vn);
2425
- let i = [];
2426
- if (qt(t)) for (let e = 0; e < t.length; e++) {
2427
- let o = t[e];
2428
- r(o, n) && i.push(o);
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);
2438
+ let o = [];
2439
+ if (Ht(t)) for (let e = 0; e < t.length; e++) {
2440
+ let i = t[e];
2441
+ r(i, n) && o.push(i);
2429
2442
  }
2430
2443
  else {
2431
- if (!Qt(t)) return Rt("kw_select() BAD kw parameter"), null;
2432
- r(t, n) && i.push(t);
2444
+ if (!Qt(t)) return kt("kw_select() BAD kw parameter"), null;
2445
+ r(t, n) && o.push(t);
2433
2446
  }
2434
- return i;
2435
- }, e.kw_delete = fn, e.kw_find_json_in_list = function(e, t, n, r) {
2436
- if (!n || !qt(t)) return r && Rt("item NULL or kw_list is not a list"), -1;
2437
- for (let e = 0; e < t.length; e++) if (Pt(n, t[e])) return e;
2438
- return r && Rt("item not found in this list"), -1;
2439
- }, e.kw_find_path = cn, e.kw_flag_t = ht, e.kw_get_bool = gn, e.kw_get_dict = mn, e.kw_get_dict_value = hn, e.kw_get_int = dn, e.kw_get_list = function(e, t, n, r, i) {
2440
- e && !nn(e) && Rt("GObj bad instanceof");
2441
- let o = cn(e, t, n, !1);
2442
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
2443
- if (void 0 === o) {
2447
+ return 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, o) {
2453
+ e && !rn(e) && kt("GObj bad instanceof");
2454
+ let i = fn(e, t, n, !1);
2455
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
2456
+ if (void 0 === i) {
2444
2457
  if (s) {
2445
- let i = Array(r);
2446
- return En(e, t, n, i), i;
2458
+ let o = Array(r);
2459
+ return En(e, t, n, o), o;
2447
2460
  }
2448
- return l && (Rt(`path not found: '${n}'`), It(t)), Array(r);
2449
- }
2450
- return _ && fn(e, t, n), qt(o) ? Array(o) : (l && (Rt(`path value MUST BE an array: ${n}`), At(t)), Array(r));
2451
- }, e.kw_get_local_storage_value = On, e.kw_get_pointer = pn, e.kw_get_real = function(e, t, n, r, i) {
2452
- e && !nn(e) && Rt("GObj bad instanceof");
2453
- let o = cn(e, t, n, !1);
2454
- const l = i && i & ht.KW_REQUIRED, s = i && i & ht.KW_CREATE, _ = i && i & ht.KW_EXTRACT;
2455
- if (void 0 === o) {
2461
+ return l && (kt(`path not found: '${n}'`), Lt(t)), Array(r);
2462
+ }
2463
+ return _ && gn(e, t, n), Ht(i) ? Array(i) : (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, o) {
2465
+ e && !rn(e) && kt("GObj bad instanceof");
2466
+ let i = fn(e, t, n, !1);
2467
+ const l = o && o & ht.KW_REQUIRED, s = o && o & ht.KW_CREATE, _ = o && o & ht.KW_EXTRACT;
2468
+ if (void 0 === i) {
2456
2469
  if (s) {
2457
- let i = Number(r);
2458
- return En(e, t, n, i), i;
2470
+ let o = Number(r);
2471
+ return En(e, t, n, o), o;
2459
2472
  }
2460
- return l && (Rt(`path not found: '${n}'`), It(t)), Number(r);
2473
+ return l && (kt(`path not found: '${n}'`), Lt(t)), Number(r);
2461
2474
  }
2462
- return _ && fn(e, t, n), Xt(o) ? Number(o) : (l && (Rt(`path value MUST BE a number: ${n}`), At(t)), Number(r));
2463
- }, e.kw_get_str = bn, e.kw_has_key = un, e.kw_match_simple = vn, e.kw_pop = an, e.kw_remove_local_storage_value = wn, e.kw_select = function(e, t, n, r) {
2464
- if (e && !nn(e) && Rt("GObj bad instanceof"), !t) return null;
2465
- r || (r = vn);
2466
- let i = [];
2467
- if (qt(t)) for (let e = 0; e < t.length; e++) {
2468
- let o = t[e];
2469
- r(o, n) && i.push(Lt(o));
2475
+ return _ && gn(e, t, n), Zt(i) ? Number(i) : (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);
2479
+ let o = [];
2480
+ if (Ht(t)) for (let e = 0; e < t.length; e++) {
2481
+ let i = t[e];
2482
+ r(i, n) && o.push(Pt(i));
2470
2483
  }
2471
2484
  else {
2472
- if (!Qt(t)) return Rt("kw_select() BAD kw parameter"), null;
2473
- r(t, n) && i.push(Lt(t));
2485
+ if (!Qt(t)) return kt("kw_select() BAD kw parameter"), null;
2486
+ r(t, n) && o.push(Pt(t));
2474
2487
  }
2475
- return i;
2476
- }, e.kw_set_dict_value = En, e.kw_set_local_storage_value = Nn, e.kw_set_subdict_value = yn, e.kwid_collect = Rn, e.kwid_find_one_record = function(e, t, n, r, i) {
2477
- e && !nn(e) && Rt("GObj bad instanceof");
2478
- let o = Rn(e, t, n, r, i);
2479
- return o.length > 0 ? o[0] : null;
2488
+ return 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, o) {
2490
+ e && !rn(e) && kt("GObj bad instanceof");
2491
+ let i = kn(e, t, n, r, o);
2492
+ return i.length > 0 ? i[0] : null;
2480
2493
  }, e.kwid_get_ids = function(e, t) {
2481
- if (e && !nn(e) && Rt("GObj bad instanceof"), !t) return [];
2494
+ if (e && !rn(e) && kt("GObj bad instanceof"), !t) return [];
2482
2495
  let n = [];
2483
- if (Ht(t)) n.push(t);
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 qt(t) && t.forEach(function(t) {
2486
- if (Ht(t)) rn(t) || n.push(t);
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 = bn(e, t, "id", 0, 0);
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 = Dn, e.kwid_new_dict = function(e, t, n) {
2494
- e && !nn(e) && Rt("GObj bad instanceof");
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 (rn(n) || (t = cn(e, t, n)), Qt(t)) r = t;
2497
- else if (qt(t)) for (let n = 0; n < t.length; n++) {
2498
- let i = t[n], o = bn(e, i, "id", "", 0);
2499
- rn(o) || (r[o] = i);
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 o = t[n], i = pn(e, o, "id", "", 0);
2512
+ on(i) || (r[i] = o);
2500
2513
  }
2501
- else Rt(`${we(e)} kwid_new_dict: data type unknown`);
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 (qt(e)) for (let i = 0; i < e.length; i++) {
2507
- let o = e[i];
2508
- if (Ht(o)) r.push({
2509
- id: e[i],
2510
- value: e[i]
2519
+ if (Ht(e)) for (let o = 0; o < e.length; o++) {
2520
+ let i = e[o];
2521
+ if (Xt(i)) r.push({
2522
+ id: e[o],
2523
+ value: e[o]
2511
2524
  });
2512
- else if (Qt(o)) {
2525
+ else if (Qt(i)) {
2513
2526
  let e = {};
2514
- if (un(o, t)) {
2515
- if (!un(o, n)) {
2516
- if (!(zt(o) > 0)) {
2517
- Rt("list2options(): object without field value: " + n);
2527
+ if (cn(i, t)) {
2528
+ if (!cn(i, n)) {
2529
+ if (!(zt(i) > 0)) {
2530
+ kt("list2options(): object without field value: " + n);
2518
2531
  continue;
2519
2532
  }
2520
- n = Object.keys(o)[0];
2533
+ n = Object.keys(i)[0];
2521
2534
  }
2522
- e.id = o[t], e.value = o[n];
2535
+ e.id = i[t], e.value = i[n];
2523
2536
  } else {
2524
- if (!(zt(o) > 0)) {
2525
- Rt("list2options(): object without field id: " + t);
2537
+ if (!(zt(i) > 0)) {
2538
+ kt("list2options(): object without field id: " + t);
2526
2539
  continue;
2527
2540
  }
2528
- t = Object.keys(o)[0], e.id = t, e.value = o[t];
2541
+ t = Object.keys(i)[0], e.id = t, e.value = i[t];
2529
2542
  }
2530
2543
  r.push(e);
2531
- } else Rt("list2options(): case1 not implemented");
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 Rt("list2options(): case2 not implemented");
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 && (Rt(`JSON parse status ${r.status}, error: ${e.message}`), n(r.status));
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 = $t, e.log_error = Rt, e.log_info = function(e) {
2551
- let t = Dt(e), n = Kn();
2552
- vt && vt("%c" + n + " INFO: " + String(t), "color:cyan"), Nt("info", t, n);
2553
- }, e.log_warning = kt, e.msg_iev_get_msg_type = Cn, e.msg_iev_get_stack = Pn, e.msg_iev_push_stack = Ln, e.msg_iev_read_key = An, e.msg_iev_set_msg_type = Un, e.msg_iev_write_key = In, e.node_uuid = xn, e.parseBoolean = on, e.parseSVG = function(e) {
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
- tn(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
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
- })) : Rt("You must supply a translation function");
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 (br) return Rt(`GClass ALREADY created: ${e}`), -1;
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
- Or,
2592
+ Nr,
2577
2593
  "ST_WAIT_IDENTITY_CARD_ACK"
2578
2594
  ],
2579
2595
  [
2580
2596
  "EV_ON_CLOSE",
2581
- Nr,
2597
+ wr,
2582
2598
  null
2583
2599
  ],
2584
2600
  [
2585
2601
  "EV_TIMEOUT",
2586
- Sr,
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
- Rr,
2614
+ kr,
2599
2615
  null
2600
2616
  ],
2601
2617
  [
2602
2618
  "EV_IDENTITY_CARD_ACK",
2603
- Dr,
2619
+ Rr,
2604
2620
  null
2605
2621
  ],
2606
2622
  [
2607
2623
  "EV_ON_CLOSE",
2608
- Nr,
2624
+ wr,
2609
2625
  "ST_DISCONNECTED"
2610
2626
  ],
2611
2627
  [
2612
2628
  "EV_TIMEOUT",
2613
- wr,
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
- Rr,
2641
+ kr,
2626
2642
  null
2627
2643
  ],
2628
2644
  [
2629
2645
  "EV_MT_STATS",
2630
- kr,
2646
+ $r,
2631
2647
  null
2632
2648
  ],
2633
2649
  [
2634
2650
  "EV_MT_COMMAND",
2635
- $r,
2651
+ Ar,
2636
2652
  null
2637
2653
  ],
2638
2654
  [
2639
2655
  "EV_ON_CLOSE",
2640
- Nr,
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 (br = M(e, [
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, Ar, 0, gr, dr, 0, 0, 0, N.gcflag_no_check_output_events)) ? 0 : -1;
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 (tr) return Rt(`GClass ALREADY created: ${e}`), -1;
2682
+ if (nr) return kt(`GClass ALREADY created: ${e}`), -1;
2667
2683
  const t = [["ST_IDLE", [[
2668
2684
  "EV_TIMEOUT",
2669
- nr,
2685
+ rr,
2670
2686
  null
2671
2687
  ]]]];
2672
- return (tr = M(e, [
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, rr, 0, Zn, er, 0, 0, 0, N.gcflag_manual_start)) ? 0 : -1;
2692
+ ], t, or, 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 (ar) return Rt(`GClass ALREADY created: ${e}`), -1;
2696
+ if (ur) return kt(`GClass ALREADY created: ${e}`), -1;
2681
2697
  const t = [["ST_IDLE", [[
2682
2698
  "EV_TIMEOUT_PERIODIC",
2683
- ur,
2699
+ cr,
2684
2700
  null
2685
2701
  ]]]];
2686
- return (ar = M(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, cr, 0, sr, _r, 0, 0, 0, 0)) ? 0 : -1;
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) ? "" : Wn(t);
2692
- }, e.sdata_flag_t = y, e.send_http_json_post = function(e, t, n) {
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
- St = "function" == typeof e ? e : null;
2699
- }, e.set_remote_log_functions = wt, e.set_timeout = ir, e.set_timeout_periodic = or, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = $n, e.strcasecmp = sn, e.strcmp = ln, e.strncmp = function(e, t, n) {
2700
- var r = (e + "").substring(0, n), i = (t + "").substring(0, n);
2701
- return r === i ? 0 : r > i ? 1 : -1;
2716
+ jt = "function" == typeof e ? e : null;
2717
+ }, e.set_remote_log_functions = Dt, e.set_timeout = ir, 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) {
2718
+ var r = (e + "").substring(0, n), o = (t + "").substring(0, n);
2719
+ return r === o ? 0 : r > o ? 1 : -1;
2702
2720
  }, e.strs_in_list = function(e, t, n) {
2703
- if (!e) return Rt("ERROR: strs_in_list() list empty"), !1;
2704
- if (!t) return Rt("ERROR: strs_in_list() str empty"), !1;
2705
- for (let r = 0; r < t.length; r++) if ($n(e, t[r], n)) return !0;
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 (Ht(t)) {
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 ($n(Qn, r)) n.real_type || (n.real_type = r);
2729
- else if ($n(Hn, r)) n.type || (n.type = r);
2730
- else if ($n(qn, r)) switch (r) {
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 = Xn(t), n.name || (n.name = e), n.header || (n.header = e)) : qt(t) && (n.real_type = "array", n.enum_list = t);
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
- let i = r;
2747
- return t && kt(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
2748
- const l = performance.now(), s = (l - i) / 1e3, _ = (l - r) / 1e3;
2749
- return t && kt(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${o}`), i = l, {
2764
+ let o = r;
2765
+ return t && $t(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", i = "") => {
2766
+ const l = performance.now(), s = (l - o) / 1e3, _ = (l - r) / 1e3;
2767
+ return t && $t(`--\x3e ${n} ${e} - partial: ${s} sec, total: ${_} sec, ${i}`), o = l, {
2750
2768
  partial: s,
2751
2769
  total: _
2752
2770
  };
2753
2771
  } };
2754
- }, e.trace_json = It, e.trace_msg = At, e.treedb_decoder_fkey = zn, e.treedb_decoder_hook = function(e, t) {
2755
- if (Ht(t)) {
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 !== Bt(r)) return Rt("bad hook 1"), Rt(e), Rt(t), null;
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 ? (Rt("bad hook 2"), Rt(e), Rt(t), null) : {
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
- } : (Rt("bad hook 3"), Rt(e), Rt(t), null);
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 = Xn, e.treedb_hook_data_size = function(e) {
2784
- if (qt(e) && 1 === zt(e)) {
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 un(t, "size") ? t.size : 1;
2804
+ return cn(t, "size") ? t.size : 1;
2787
2805
  }
2788
2806
  return zt(e);
2789
2807
  }, e.vsprintf = function(e, t) {