@yuneta/gobj-js 7.26.13 → 7.26.14

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.
@@ -664,7 +664,7 @@ var gobjJs = function(e) {
664
664
  t.parent && hn(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
665
665
  }
666
666
  function Re(e, t) {
667
- let n = tl(e.dl_children, t);
667
+ let n = nl(e.dl_children, t);
668
668
  n >= 0 && (Hn(e.dl_children, n), t.parent = null);
669
669
  }
670
670
  function De(e, t) {
@@ -1096,7 +1096,7 @@ var gobjJs = function(e) {
1096
1096
  if (1 === C) L(n("🔄 %s %s%s %s from %s%s", t || "", e.running ? "" : "!!", et(e), o.state_name, l && !l.running ? "!!" : "", et(l)));
1097
1097
  else {
1098
1098
  let r = "";
1099
- i.action && (r = rl(i.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ze(e), Xe(e), o.state_name, "", t || "", "", r, l && !l.running ? "!!" : "", Ze(l), Xe(l)));
1099
+ i.action && (r = ll(i.action)), L(n("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Ze(e), Xe(e), o.state_name, "", t || "", "", r, l && !l.running ? "!!" : "", Ze(l), Xe(l)));
1100
1100
  }
1101
1101
  r && q(e) && zn(r) && Un(r);
1102
1102
  }
@@ -1402,23 +1402,23 @@ var gobjJs = function(e) {
1402
1402
  return n;
1403
1403
  }
1404
1404
  function hn(e, ...t) {
1405
- let n = mn(e, ...t), r = el();
1405
+ let n = mn(e, ...t), r = tl();
1406
1406
  tn && (tn === en.error ? cn("error", n) && tn("%c" + r + " ERROR: " + String(n), "color:red") : (cn("error", n) && en.error("%c" + r + " ERROR: " + String(n), "color:red"), tn(`${r} ERROR: ${String(n)}`))), gn("error", n, r);
1407
1407
  }
1408
1408
  function yn(e, ...t) {
1409
- let n = mn(e, ...t), r = el();
1409
+ let n = mn(e, ...t), r = tl();
1410
1410
  nn && (nn === en.warn ? cn("warning", n) && nn("%c" + r + " WARNING: " + String(n), "color:yellow") : (cn("warning", n) && en.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), nn(`${r} WARNING: ${String(n)}`))), gn("warning", n, r);
1411
1411
  }
1412
1412
  function En(e, ...t) {
1413
- let n = mn(e, ...t), r = el();
1413
+ let n = mn(e, ...t), r = tl();
1414
1414
  ln && cn("debug", n) && ln("%c" + r + " DEBUG: " + String(n), "color:silver"), gn("debug", n, r);
1415
1415
  }
1416
1416
  function Tn(e, ...t) {
1417
- let n = mn(e, ...t), r = el();
1417
+ let n = mn(e, ...t), r = tl();
1418
1418
  ln && cn("msg", n) && ln("%c" + r + " MSG: " + String(n), "color:cyan"), gn("msg", n, r);
1419
1419
  }
1420
1420
  function vn(e, t) {
1421
- cn("json", t) && (t && en.warn("=====> " + t), en.dir(e)), gn("json", e, el());
1421
+ cn("json", t) && (t && en.warn("=====> " + t), en.dir(e)), gn("json", e, tl());
1422
1422
  }
1423
1423
  var jn = [
1424
1424
  "passw",
@@ -1844,7 +1844,7 @@ var gobjJs = function(e) {
1844
1844
  e && !sr(e) && hn("GObj bad instanceof");
1845
1845
  let o = mr(e, t, n, !1);
1846
1846
  const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
1847
- return void 0 === o ? i && Zn(r) && t ? (Sr(e, t, n, r), r) : (s && (hn(`path not found: '${n}'`), Un(t)), r) : Zn(o) ? (_ && hr(e, t, n), o) : (s && (hn(`${e ? et(e) + ": " : ""}path MUST BE a json dict: '${n}'`), Un(t)), r);
1847
+ return void 0 === o ? i && Zn(r) && t ? (Sr(e, t, n, r), r) : (s && (hn(`path not found: '${n}'`), Un(t)), r) : Zn(o) ? (_ && hr(e, t, n), o) : i && null === o && Zn(r) ? (Sr(e, t, n, r), r) : ((s || i) && (hn(`${e ? et(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (i ? ", cannot create" : "")), Un(t)), r);
1848
1848
  }
1849
1849
  function Or(e, t, n, r, l) {
1850
1850
  e && !sr(e) && hn("GObj bad instanceof");
@@ -2091,7 +2091,14 @@ var gobjJs = function(e) {
2091
2091
  ]), Zn(e[r]) && Kr(e[r], t, n), n = n.slice(0, -l.length);
2092
2092
  }
2093
2093
  }
2094
- function Yr(e, t, n, r) {
2094
+ function Yr(e) {
2095
+ try {
2096
+ return JSON.stringify(e);
2097
+ } catch (t) {
2098
+ return `<${typeof e}: not json (${t.message})>`;
2099
+ }
2100
+ }
2101
+ function Br(e, t, n, r) {
2095
2102
  if (!e) return null;
2096
2103
  let l, o = e.length;
2097
2104
  for (l = 0; l < o; l++) {
@@ -2100,14 +2107,14 @@ var gobjJs = function(e) {
2100
2107
  let e = o.id;
2101
2108
  if (e && e === n) return o;
2102
2109
  if (r && gr(o, t)) {
2103
- let e = Yr(o[t], t, n, r);
2110
+ let e = Br(o[t], t, n, r);
2104
2111
  if (e) return e;
2105
2112
  }
2106
2113
  }
2107
2114
  }
2108
2115
  return null;
2109
2116
  }
2110
- function Br(e) {
2117
+ function Jr(e) {
2111
2118
  function t(e) {
2112
2119
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
2113
2120
  switch (t.length % 4) {
@@ -2138,10 +2145,10 @@ var gobjJs = function(e) {
2138
2145
  signature: t(n[2])
2139
2146
  };
2140
2147
  }
2141
- function Jr(e) {
2148
+ function qr(e) {
2142
2149
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
2143
2150
  }
2144
- var qr = class {
2151
+ var Hr = class {
2145
2152
  constructor(e) {
2146
2153
  this.html = e, Object.freeze(this);
2147
2154
  }
@@ -2149,41 +2156,41 @@ var gobjJs = function(e) {
2149
2156
  return this.html;
2150
2157
  }
2151
2158
  };
2152
- function Hr(e) {
2153
- return e instanceof qr;
2154
- }
2155
2159
  function zr(e) {
2160
+ return e instanceof Hr;
2161
+ }
2162
+ function Qr(e) {
2156
2163
  const t = document.createElement("template");
2157
2164
  return t.innerHTML = e.html.trim(), t.content;
2158
2165
  }
2159
- var Qr = !1, Xr = /* @__PURE__ */ new Set();
2160
- function Zr(e) {
2166
+ var Xr = !1, Zr = /* @__PURE__ */ new Set();
2167
+ function el(e) {
2161
2168
  const t = document.createElement("template");
2162
2169
  return t.innerHTML = e.trim(), t.content.firstChild;
2163
2170
  }
2164
- function el(e) {
2171
+ function tl(e) {
2165
2172
  const t = (e, t) => String(e).padStart(t, "0"), n = `${(e = e || /* @__PURE__ */ new Date()).getFullYear()}-${t(e.getMonth() + 1, 2)}-${t(e.getDate(), 2)}T${t(e.getHours(), 2)}:${t(e.getMinutes(), 2)}:${t(e.getSeconds(), 2)}`, r = t(e.getMilliseconds(), 3), l = e.getTimezoneOffset();
2166
2173
  return `${n}.${r}${l > 0 ? "-" : "+"}${t(Math.floor(Math.abs(l) / 60), 2)}${t(Math.abs(l) % 60, 2)}`;
2167
2174
  }
2168
- function tl(e, t) {
2175
+ function nl(e, t) {
2169
2176
  if (!e) throw "ERROR: index_in_list() list empty";
2170
2177
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
2171
2178
  return -1;
2172
2179
  }
2173
- function nl() {
2180
+ function rl() {
2174
2181
  let e = "";
2175
2182
  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;
2176
2183
  }
2177
- function rl(e) {
2184
+ function ll(e) {
2178
2185
  let t = null;
2179
2186
  return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
2180
2187
  }
2181
- var ll = 256, ol = 1e5;
2182
- function sl(e) {
2188
+ var ol = 256, sl = 1e5;
2189
+ function il(e) {
2183
2190
  const t = String(e).replace(/`/g, "``");
2184
2191
  return "[" === t[0] ? "[" + t : t;
2185
2192
  }
2186
- function il(e) {
2193
+ function _l(e) {
2187
2194
  if ("string" != typeof e) return null;
2188
2195
  let t = [], n = "";
2189
2196
  for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
@@ -2204,13 +2211,13 @@ var gobjJs = function(e) {
2204
2211
  return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
2205
2212
  });
2206
2213
  }
2207
- function _l(e, t) {
2214
+ function al(e, t) {
2208
2215
  return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
2209
2216
  }
2210
- function al(e) {
2217
+ function ul(e) {
2211
2218
  return "persistent-attrs-" + et(e);
2212
2219
  }
2213
- function ul(e, t) {
2220
+ function cl(e, t) {
2214
2221
  if (tr(t)) {
2215
2222
  if (-1 === t.indexOf("^")) {
2216
2223
  let n, r, l = e.fkey;
@@ -2240,7 +2247,7 @@ var gobjJs = function(e) {
2240
2247
  hook_name: t.hook_name
2241
2248
  } : (hn("bad fkey 3"), hn(e), hn(t), null);
2242
2249
  }
2243
- var cl = [
2250
+ var fl = [
2244
2251
  "string",
2245
2252
  "integer",
2246
2253
  "object",
@@ -2250,7 +2257,7 @@ var gobjJs = function(e) {
2250
2257
  "real",
2251
2258
  "boolean",
2252
2259
  "blob"
2253
- ], fl = [
2260
+ ], gl = [
2254
2261
  "persistent",
2255
2262
  "required",
2256
2263
  "notnull",
@@ -2262,7 +2269,7 @@ var gobjJs = function(e) {
2262
2269
  "stats",
2263
2270
  "rstats",
2264
2271
  "pstats"
2265
- ], gl = [
2272
+ ], dl = [
2266
2273
  "hook",
2267
2274
  "fkey",
2268
2275
  "enum",
@@ -2291,7 +2298,7 @@ var gobjJs = function(e) {
2291
2298
  "coordinates",
2292
2299
  "gbuffer"
2293
2300
  ];
2294
- function dl(e) {
2301
+ function bl(e) {
2295
2302
  let t = {
2296
2303
  name: e.id,
2297
2304
  header: e.header,
@@ -2310,7 +2317,7 @@ var gobjJs = function(e) {
2310
2317
  if (!e.flag) return t;
2311
2318
  for (let n = 0; n < e.flag.length; n++) {
2312
2319
  let r = e.flag[n];
2313
- if (Ur(gl, r)) {
2320
+ if (Ur(dl, r)) {
2314
2321
  switch (r) {
2315
2322
  case "enum":
2316
2323
  t.enum_list = e.enum;
@@ -2324,7 +2331,7 @@ var gobjJs = function(e) {
2324
2331
  case "file": t.is_file = !0;
2325
2332
  }
2326
2333
  t.type = r;
2327
- } else if (Ur(fl, r)) switch (r) {
2334
+ } else if (Ur(gl, r)) switch (r) {
2328
2335
  case "writable":
2329
2336
  t.is_writable = !0;
2330
2337
  break;
@@ -2337,23 +2344,23 @@ var gobjJs = function(e) {
2337
2344
  }
2338
2345
  return t.is_file && (t.type = "file"), t;
2339
2346
  }
2340
- var bl = [
2347
+ var pl = [
2341
2348
  j(y.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
2342
2349
  j(y.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
2343
2350
  j(y.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
2344
2351
  v()
2345
- ], pl = {
2352
+ ], ml = {
2346
2353
  periodic: !1,
2347
2354
  msec: 0,
2348
2355
  timer_id: -1
2349
- }, ml = null;
2350
- function hl(e, t, n, r) {
2356
+ }, hl = null;
2357
+ function yl(e, t, n, r) {
2351
2358
  let l = e.priv, o = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
2352
2359
  return l.periodic && l.msec > 0 ? l.timer_id = setTimeout(function() {
2353
2360
  Vt(e, "EV_TIMEOUT", {}, e);
2354
2361
  }, l.msec) : l.timer_id = -1, lt(e) ? Vt(nt(e), o, {}, e) : Xt(e, o, {}), l.periodic || -1 !== l.timer_id || Ke(e) && Ve(e), 0;
2355
2362
  }
2356
- var yl = {
2363
+ var El = {
2357
2364
  mt_create: function(e) {
2358
2365
  let t = e.priv;
2359
2366
  const n = Ot(e, "subscriber");
@@ -2378,16 +2385,16 @@ var gobjJs = function(e) {
2378
2385
  },
2379
2386
  mt_destroy: function(e) {}
2380
2387
  };
2381
- function El(e, t) {
2388
+ function Tl(e, t) {
2382
2389
  return e instanceof S ? "C_TIMER" !== Ze(e) ? (hn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !1), void $t(e, "msec", t)) : (hn("not GObj TYPE"), -1);
2383
2390
  }
2384
- function Tl(e, t) {
2391
+ function vl(e, t) {
2385
2392
  return e instanceof S ? "C_TIMER" !== Ze(e) ? (hn("not C_TIMER GObj"), -1) : (Nt(e, "periodic", !0), void $t(e, "msec", t)) : (hn("not GObj TYPE"), -1);
2386
2393
  }
2387
- function vl(e) {
2394
+ function jl(e) {
2388
2395
  return e instanceof S ? "C_TIMER" !== Ze(e) ? (hn("not C_TIMER GObj"), -1) : void $t(e, "msec", -1) : (hn("not GObj TYPE"), -1);
2389
2396
  }
2390
- var jl = [
2397
+ var Ol = [
2391
2398
  j(y.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
2392
2399
  j(y.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
2393
2400
  j(y.DTP_STRING, "__username__", 0, "", "Username"),
@@ -2407,26 +2414,26 @@ var gobjJs = function(e) {
2407
2414
  j(y.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
2408
2415
  j(y.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
2409
2416
  v()
2410
- ], Ol = { gobj_timer: null }, Sl = null;
2411
- function wl(e, t, n, r) {
2417
+ ], Sl = { gobj_timer: null }, wl = null;
2418
+ function Nl(e, t, n, r) {
2412
2419
  let l = yt(e, t);
2413
2420
  return Zn(l) || (l = {}), l[n] = r, St(e, t, l), De(e, t);
2414
2421
  }
2415
- function Nl(e) {
2422
+ function $l(e) {
2416
2423
  if (!0 === e || !1 === e) return e;
2417
2424
  let t = String(null == e ? "" : e).toLowerCase();
2418
2425
  return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
2419
2426
  }
2420
- function $l() {
2427
+ function Rl() {
2421
2428
  return `${ze()}^${He()}`;
2422
2429
  }
2423
- function Rl(e, t, n, r) {
2430
+ function Dl(e, t, n, r) {
2424
2431
  return Xt(e, t, n), 0;
2425
2432
  }
2426
- var Dl = {
2433
+ var kl = {
2427
2434
  mt_create: function(e) {
2428
2435
  let t = e.priv;
2429
- Rt(e, "start_date", el()), Rt(e, "node_uuid", nl()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout = yt(e, "periodic_timeout"), function(e) {
2436
+ Rt(e, "start_date", tl()), Rt(e, "node_uuid", rl()), e.priv.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.periodic_timeout = yt(e, "periodic_timeout"), function(e) {
2430
2437
  let t = yt(e, "trace_levels");
2431
2438
  if (!Zn(t)) return 0;
2432
2439
  let n = t.__global_trace__;
@@ -2460,10 +2467,10 @@ var gobjJs = function(e) {
2460
2467
  },
2461
2468
  mt_writing: function(e, t) {},
2462
2469
  mt_start: function(e) {
2463
- return Tl(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
2470
+ return vl(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
2464
2471
  },
2465
2472
  mt_stop: function(e) {
2466
- return vl(e.priv.gobj_timer), Me(e), 0;
2473
+ return jl(e.priv.gobj_timer), Me(e), 0;
2467
2474
  },
2468
2475
  mt_destroy: function(e) {},
2469
2476
  mt_play: function(e) {
@@ -2480,24 +2487,24 @@ var gobjJs = function(e) {
2480
2487
  case "get-global-no-trace": return l(0, 0, null, null, ne());
2481
2488
  case "set-global-trace":
2482
2489
  case "set-global-no-trace": {
2483
- let r = "set-global-no-trace" === t, o = n.level, s = Nl(n.set);
2484
- return o ? null === s ? l(0, -1, `${$l()}: bitmask set or re-set?`, null, null) : (r ? X(o, s) : Q(o, s)) < 0 ? l(0, -1, `${$l()}: global trace level not found: ${o}`, null, null) : r ? (wl(e, "no_trace_levels", "__global_no_trace__", ne()), l(0, 0, null, null, ne())) : (wl(e, "trace_levels", "__global_trace__", te()), l(0, 0, null, null, te())) : l(0, -1, `${$l()}: what level?`, null, null);
2490
+ let r = "set-global-no-trace" === t, o = n.level, s = $l(n.set);
2491
+ return o ? null === s ? l(0, -1, `${Rl()}: bitmask set or re-set?`, null, null) : (r ? X(o, s) : Q(o, s)) < 0 ? l(0, -1, `${Rl()}: global trace level not found: ${o}`, null, null) : r ? (Nl(e, "no_trace_levels", "__global_no_trace__", ne()), l(0, 0, null, null, ne())) : (Nl(e, "trace_levels", "__global_trace__", te()), l(0, 0, null, null, te())) : l(0, -1, `${Rl()}: what level?`, null, null);
2485
2492
  }
2486
2493
  case "get-gclass-trace":
2487
2494
  case "get-gclass-no-trace":
2488
2495
  case "set-gclass-trace":
2489
2496
  case "set-gclass-no-trace": {
2490
2497
  let r = t.indexOf("no-trace") >= 0, o = n.gclass_name || n.gclass || "", s = Oe(o);
2491
- if (!s) return l(0, -1, `${$l()}: what gclass is '${o}'?`, null, null);
2498
+ if (!s) return l(0, -1, `${Rl()}: what gclass is '${o}'?`, null, null);
2492
2499
  if (0 === t.indexOf("get-")) return l(0, 0, null, null, r ? oe(s) : re(s));
2493
- let i = n.level, _ = Nl(n.set);
2494
- return i ? null === _ ? l(0, -1, `${$l()}: bitmask set or re-set?`, null, null) : (r ? ie(s, i, _) : se(s, i, _)) < 0 ? l(0, -1, `${$l()}: trace level of ${o} not found: ${i}`, null, null) : r ? (wl(e, "no_trace_levels", o, oe(s)), l(0, 0, null, null, oe(s))) : (wl(e, "trace_levels", o, le(s)), l(0, 0, null, null, re(s))) : l(0, -1, `${$l()}: what level?`, null, null);
2500
+ let i = n.level, _ = $l(n.set);
2501
+ return i ? null === _ ? l(0, -1, `${Rl()}: bitmask set or re-set?`, null, null) : (r ? ie(s, i, _) : se(s, i, _)) < 0 ? l(0, -1, `${Rl()}: trace level of ${o} not found: ${i}`, null, null) : r ? (Nl(e, "no_trace_levels", o, oe(s)), l(0, 0, null, null, oe(s))) : (Nl(e, "trace_levels", o, le(s)), l(0, 0, null, null, re(s))) : l(0, -1, `${Rl()}: what level?`, null, null);
2495
2502
  }
2496
- default: return l(0, -1, `${$l()}: command not available: ${t}`, null, null);
2503
+ default: return l(0, -1, `${Rl()}: command not available: ${t}`, null, null);
2497
2504
  }
2498
2505
  }
2499
2506
  };
2500
- var kl = "ievent_gate_stack", Al = [
2507
+ var Al = "ievent_gate_stack", Il = [
2501
2508
  j(y.DTP_STRING, "wanted_yuno_role", E.SDF_RD, "", "wanted yuno role"),
2502
2509
  j(y.DTP_STRING, "wanted_yuno_name", E.SDF_RD, "", "wanted yuno name"),
2503
2510
  j(y.DTP_STRING, "wanted_yuno_service", E.SDF_RD, "", "wanted yuno service"),
@@ -2514,15 +2521,15 @@ var gobjJs = function(e) {
2514
2521
  j(y.DTP_INTEGER, "timeout_idack", E.SDF_RD, "5000", "timeout waiting idAck"),
2515
2522
  j(y.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
2516
2523
  v()
2517
- ], Il = [
2524
+ ], Cl = [
2518
2525
  ["ievents", "Trace inter-events with metadata of kw"],
2519
2526
  ["ievents2", "Trace inter-events with full kw"],
2520
2527
  ["identity-card", "Trace identity_card messages"]
2521
2528
  ];
2522
- function Cl(e) {
2529
+ function Ll(e) {
2523
2530
  return !!(3 & x(e));
2524
2531
  }
2525
- var Ll = {
2532
+ var Pl = {
2526
2533
  url: null,
2527
2534
  remote_yuno_name: null,
2528
2535
  remote_yuno_role: null,
@@ -2532,8 +2539,8 @@ var gobjJs = function(e) {
2532
2539
  websocket: null,
2533
2540
  inside_on_open: !1,
2534
2541
  retry_ms: 0
2535
- }, Pl = null;
2536
- function Ul(e) {
2542
+ }, Ul = null;
2543
+ function Fl(e) {
2537
2544
  e.priv.websocket && hn("Websocket ALREADY setup");
2538
2545
  const t = jt(e, "url");
2539
2546
  En(`====> Starting WebSocket to '${t}' (${et(e)})`);
@@ -2548,7 +2555,7 @@ var gobjJs = function(e) {
2548
2555
  code: 1006,
2549
2556
  reason: r.message,
2550
2557
  was_clean: !1
2551
- }, e) < 0 && El(e.priv.gobj_timer, ql(e)), null;
2558
+ }, e) < 0 && Tl(e.priv.gobj_timer, Hl(e)), null;
2552
2559
  }
2553
2560
  return r ? (r.onopen = () => {
2554
2561
  n !== e.priv.ws_seq || ot(e) || Vt(e, "EV_ON_OPEN", {
@@ -2570,7 +2577,7 @@ var gobjJs = function(e) {
2570
2577
  }, e));
2571
2578
  }, r) : (hn(`${et(e)}: Failed to initialize WebSocket.`), null);
2572
2579
  }
2573
- function Fl(e, t = 1e3, n = "") {
2580
+ function Vl(e, t = 1e3, n = "") {
2574
2581
  let r = e.priv, l = r.websocket;
2575
2582
  if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
2576
2583
  En(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
@@ -2581,25 +2588,25 @@ var gobjJs = function(e) {
2581
2588
  }
2582
2589
  } else yn("WebSocket is already closed or in the process of closing.");
2583
2590
  }
2584
- function Vl(e, t, n) {
2585
- let r = el();
2591
+ function Gl(e, t, n) {
2592
+ let r = tl();
2586
2593
  try {
2587
2594
  En("\n" + r + " " + t + "\n"), Un(n);
2588
2595
  } catch (e) {
2589
2596
  En("ERROR in trace_inter_event: " + e);
2590
2597
  }
2591
2598
  }
2592
- var Gl = class {
2599
+ var Ml = class {
2593
2600
  constructor(e, t) {
2594
2601
  this.event = e, this.kw = t || {};
2595
2602
  }
2596
2603
  };
2597
- function Ml(e, t, n, r) {
2604
+ function Wl(e, t, n, r) {
2598
2605
  return function(e, t) {
2599
2606
  let n = e.priv, r = JSON.stringify(t);
2600
- if (Cl(e)) {
2607
+ if (Ll(e)) {
2601
2608
  let n = jt(e, "url"), l = Xe(qe()) + " ==> " + n, o = yt(qe(), "trace_ievent_callback");
2602
- o ? o(l, t, 1, r.length) : Vl(0, l, t);
2609
+ o ? o(l, t, 1, r.length) : Gl(0, l, t);
2603
2610
  }
2604
2611
  if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return yn(`${et(e)}: send_iev(): websocket not open, message lost`), -1;
2605
2612
  try {
@@ -2609,10 +2616,10 @@ var gobjJs = function(e) {
2609
2616
  }
2610
2617
  return 0;
2611
2618
  }(e, function(e, t) {
2612
- return ir(e) ? (hn("iev_create() event NULL"), null) : new Gl(e, t);
2619
+ return ir(e) ? (hn("iev_create() event NULL"), null) : new Ml(e, t);
2613
2620
  }(t, n));
2614
2621
  }
2615
- function Wl(e, t, n) {
2622
+ function xl(e, t, n) {
2616
2623
  return ir(n) && (n = jt(e, "wanted_yuno_service")), {
2617
2624
  dst_yuno: jt(e, "wanted_yuno_name"),
2618
2625
  dst_role: jt(e, "wanted_yuno_role"),
@@ -2620,10 +2627,10 @@ var gobjJs = function(e) {
2620
2627
  src_yuno: He(),
2621
2628
  src_role: ze(),
2622
2629
  src_service: t,
2623
- host: nl()
2630
+ host: rl()
2624
2631
  };
2625
2632
  }
2626
- function xl(e) {
2633
+ function Kl(e) {
2627
2634
  let t = e.priv, n = Je(qe()), r = jt(qe(), "yuno_version"), l = jt(qe(), "yuno_release"), o = jt(qe(), "yuno_tag"), i = yt(e, "required_services");
2628
2635
  i && i.length || (i = yt(qe(), "required_services"));
2629
2636
  let _ = {
@@ -2641,27 +2648,27 @@ var gobjJs = function(e) {
2641
2648
  username: jt(qe(), "__username__"),
2642
2649
  launch_id: 0,
2643
2650
  yuno_startdate: jt(qe(), "start_date"),
2644
- id: nl(),
2651
+ id: rl(),
2645
2652
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
2646
2653
  language: "undefined" != typeof window ? window.navigator.language : "",
2647
2654
  required_services: i
2648
2655
  };
2649
- return Gr(e, _, kl, Wl(e, Xe(nt(e)), null)), Wr(e, _, "__identity__"), El(t.gobj_timer, vt(e, "timeout_idack")), Ml(e, "EV_IDENTITY_CARD", _);
2656
+ return Gr(e, _, Al, xl(e, Xe(nt(e)), null)), Wr(e, _, "__identity__"), Tl(t.gobj_timer, vt(e, "timeout_idack")), Wl(e, "EV_IDENTITY_CARD", _);
2650
2657
  }
2651
- function Kl(e, t) {
2658
+ function Yl(e, t) {
2652
2659
  if (ir(t.event)) return -1;
2653
2660
  let n = {}, r = t.__global__, l = t.__config__, o = t.__filter__, s = t.__service__, i = t.subscriber;
2654
2661
  l && (n.__config__ = l), r && (n.__global__ = r), o && (n.__filter__ = o);
2655
- return Gr(e, n, kl, Wl(e, Xe(i), s)), Wr(e, n, "__subscribing__"), Ml(e, t.event, n);
2656
- }
2657
- function Yl(e, t, n, r) {
2658
- let l = e.priv;
2659
- return Ke(e) && (l.websocket = Ul(e)), 0;
2662
+ return Gr(e, n, Al, xl(e, Xe(i), s)), Wr(e, n, "__subscribing__"), Wl(e, t.event, n);
2660
2663
  }
2661
2664
  function Bl(e, t, n, r) {
2662
- return En("Websocket opened: " + e.priv.url), xl(e), 0;
2665
+ let l = e.priv;
2666
+ return Ke(e) && (l.websocket = Fl(e)), 0;
2663
2667
  }
2664
2668
  function Jl(e, t, n, r) {
2669
+ return En("Websocket opened: " + e.priv.url), Kl(e), 0;
2670
+ }
2671
+ function ql(e, t, n, r) {
2665
2672
  let l = e.priv, o = n.url;
2666
2673
  return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (bn(), yn(`${et(e)}: WebSocket closed ${o} (Code: ${n.code}, Reason: "${n.reason}", Clean: ${n.was_clean})`), l.websocket && (l.websocket.onopen = null, l.websocket.onmessage = null, l.websocket.onerror = null, l.websocket.onclose = null, l.websocket = null), l.inform_on_close ? (l.inform_on_close = !1, Xt(e, "EV_ON_CLOSE", {
2667
2674
  url: o,
@@ -2676,25 +2683,25 @@ var gobjJs = function(e) {
2676
2683
  code: n.code,
2677
2684
  reason: n.reason,
2678
2685
  was_clean: n.was_clean
2679
- })), Ke(e) && El(l.gobj_timer, ql(e))), 0;
2686
+ })), Ke(e) && Tl(l.gobj_timer, Hl(e))), 0;
2680
2687
  }
2681
- function ql(e) {
2688
+ function Hl(e) {
2682
2689
  let t = e.priv, n = vt(e, "timeout_retry"), r = vt(e, "timeout_retry_max");
2683
2690
  r < n && (r = n), t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
2684
2691
  let l = .2 * t.retry_ms, o = t.retry_ms - l + 2 * Math.random() * l;
2685
2692
  return Math.max(1, Math.round(o));
2686
2693
  }
2687
- function Hl(e, t, n, r) {
2688
- return xl(e), 0;
2689
- }
2690
2694
  function zl(e, t, n, r) {
2695
+ return Kl(e), 0;
2696
+ }
2697
+ function Ql(e, t, n, r) {
2691
2698
  let l = e.priv;
2692
- vl(l.gobj_timer);
2693
- let o = Mr(e, n, kl, !0), s = Tr(e, o, "src_yuno", ""), i = Tr(e, o, "src_role", ""), _ = Tr(e, o, "src_service", "");
2699
+ jl(l.gobj_timer);
2700
+ let o = Mr(e, n, Al, !0), s = Tr(e, o, "src_yuno", ""), i = Tr(e, o, "src_role", ""), _ = Tr(e, o, "src_service", "");
2694
2701
  Rt(e, "remote_yuno_name", s), Rt(e, "remote_yuno_role", i), Rt(e, "remote_yuno_service", _);
2695
2702
  let a = Er(e, n, "result", -1, 0), u = Tr(e, n, "comment", "", 0), c = Tr(e, n, "username", "", 0), f = Or(e, n, "services_roles", {});
2696
2703
  if (a < 0) {
2697
- Fl(e);
2704
+ Vl(e);
2698
2705
  let t = {
2699
2706
  url: jt(e, "url"),
2700
2707
  result: a,
@@ -2719,12 +2726,12 @@ var gobjJs = function(e) {
2719
2726
  }
2720
2727
  l.inside_on_open = !1, function(e) {
2721
2728
  let t = zt(e, null, null, null);
2722
- for (let n = 0; n < t.length; n++) Kl(e, t[n]);
2729
+ for (let n = 0; n < t.length; n++) Yl(e, t[n]);
2723
2730
  }(e);
2724
2731
  }
2725
2732
  return 0;
2726
2733
  }
2727
- function Ql(e, t, n, r) {
2734
+ function Xl(e, t, n, r) {
2728
2735
  let l = e.priv.url, o = function(e, t) {
2729
2736
  let n;
2730
2737
  try {
@@ -2743,19 +2750,19 @@ var gobjJs = function(e) {
2743
2750
  } : (yn(`${et(e)}: parsing inter_event: kw not a json object`), null) : (yn(`${et(e)}: parsing inter_kw: no kw`), null);
2744
2751
  }(e, n.data);
2745
2752
  if (!o) return yn(`${et(e)}: frame dropped from ${l}: ${String(n.data).substring(0, 256)}`), -1;
2746
- if (Cl(e)) {
2753
+ if (Ll(e)) {
2747
2754
  let e = Xe(qe()) + " <== " + l, t = n.data.length, r = yt(qe(), "trace_ievent_callback");
2748
- r ? r(e, o, 2, t) : Vl(0, e, o);
2755
+ r ? r(e, o, 2, t) : Gl(0, e, o);
2749
2756
  }
2750
2757
  let s = o.event, i = o.kw;
2751
2758
  if ("ST_SESSION" !== kt(e)) {
2752
2759
  if (It(e, s, R.EVF_PUBLIC_EVENT)) {
2753
2760
  if (!(Vt(e, s, i, e) < 0)) return 0;
2754
2761
  } else hn(`${et(e)}: event UNKNOWN in not-session state ${s}`);
2755
- return Fl(e), -1;
2762
+ return Vl(e), -1;
2756
2763
  }
2757
2764
  o = null;
2758
- let _ = xr(e, i), a = Mr(e, i, kl), u = Tr(e, a, "dst_role", "");
2765
+ let _ = xr(e, i), a = Mr(e, i, Al), u = Tr(e, a, "dst_role", "");
2759
2766
  if (u.toLowerCase() !== ze().toLowerCase()) return hn(`"It's not my role, dst_role: ${u}, my_role: ${ze()}`), 0;
2760
2767
  let c = Tr(e, a, "dst_service", "");
2761
2768
  if ("__subscribing__" === _) return yn(`${et(e)}: subscription event ignored, I'm client (service: ${c}, event: ${s})`), -1;
@@ -2767,13 +2774,13 @@ var gobjJs = function(e) {
2767
2774
  }
2768
2775
  return lt(e) ? Vt(nt(e), s, i, e) : Xt(e, s, i), 0;
2769
2776
  }
2770
- function Xl(e, t, n, r) {
2777
+ function Zl(e, t, n, r) {
2771
2778
  return 0;
2772
2779
  }
2773
- function Zl(e, t, n, r) {
2780
+ function eo(e, t, n, r) {
2774
2781
  return 0;
2775
2782
  }
2776
- var eo = {
2783
+ var to = {
2777
2784
  mt_create: function(e) {
2778
2785
  let t = e.priv;
2779
2786
  t.gobj_timer = Ce(Xe(e), "C_TIMER", {}, e), t.ws_seq = 0, t.url = jt(e, "url"), t.remote_yuno_name = jt(e, "remote_yuno_name"), t.remote_yuno_role = jt(e, "remote_yuno_role"), t.remote_yuno_service = jt(e, "remote_yuno_service"), Rt(e, "wanted_yuno_name", t.remote_yuno_name), Rt(e, "wanted_yuno_role", t.remote_yuno_role), Rt(e, "wanted_yuno_service", t.remote_yuno_service);
@@ -2803,43 +2810,43 @@ var gobjJs = function(e) {
2803
2810
  code: 1e3,
2804
2811
  reason: "restarted",
2805
2812
  was_clean: !0
2806
- }, e), vl(t.gobj_timer)), t.websocket = Ul(e), 0;
2813
+ }, e), jl(t.gobj_timer)), t.websocket = Fl(e), 0;
2807
2814
  },
2808
2815
  mt_stop: function(e) {
2809
2816
  let t = e.priv;
2810
- return vl(t.gobj_timer), t.websocket && Fl(e), 0;
2817
+ return jl(t.gobj_timer), t.websocket && Vl(e), 0;
2811
2818
  },
2812
2819
  mt_destroy: function(e) {},
2813
2820
  mt_stats: function(e, t, n, r) {
2814
2821
  if ("ST_SESSION" !== kt(e)) return hn("Not in session"), null;
2815
2822
  n || (n = {});
2816
- let l = Wl(e, Xe(r), Tr(e, n, "service", null, 0)), o = Or(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
2823
+ let l = xl(e, Xe(r), Tr(e, n, "service", null, 0)), o = Or(e, n, "__md_stats__", null, Zt.KW_EXTRACT);
2817
2824
  return o || (o = {}), Gr(e, n, "stats_stack", {
2818
2825
  stats: t,
2819
2826
  kw: o
2820
- }), Gr(e, n, kl, l), n.__stats__ = t, Wr(e, n, "__stats__"), Ml(e, "EV_MT_STATS", n, r), null;
2827
+ }), Gr(e, n, Al, l), n.__stats__ = t, Wr(e, n, "__stats__"), Wl(e, "EV_MT_STATS", n, r), null;
2821
2828
  },
2822
2829
  mt_command_parser: function(e, t, n, r) {
2823
2830
  if ("ST_SESSION" !== kt(e)) return hn("Not in session"), null;
2824
2831
  n || (n = {});
2825
- let l = Wl(e, Xe(r), Tr(e, n, "service", "", 0)), o = Or(e, n, "__md_command__", null, Zt.KW_EXTRACT);
2832
+ let l = xl(e, Xe(r), Tr(e, n, "service", "", 0)), o = Or(e, n, "__md_command__", null, Zt.KW_EXTRACT);
2826
2833
  return o || (o = {}), Gr(e, n, "command_stack", {
2827
2834
  command: t,
2828
2835
  kw: o
2829
- }), Gr(e, n, kl, l), n.__command__ = t, Wr(e, n, "__command__"), Ml(e, "EV_MT_COMMAND", n, r), null;
2836
+ }), Gr(e, n, Al, l), n.__command__ = t, Wr(e, n, "__command__"), Wl(e, "EV_MT_COMMAND", n, r), null;
2830
2837
  },
2831
2838
  mt_inject_event: function(e, t, n, r) {
2832
2839
  if ("ST_SESSION" !== kt(e)) return window.console.error("Not in session"), -1;
2833
- if (n = Gn({}, Zn(n) ? n : {}), Zn(n.__md_iev__) && (n.__md_iev__ = Fn(n.__md_iev__)), Mr(e, n, kl));
2840
+ if (n = Gn({}, Zn(n) ? n : {}), Zn(n.__md_iev__) && (n.__md_iev__ = Fn(n.__md_iev__)), Mr(e, n, Al));
2834
2841
  else {
2835
- let l = Wl(e, Xe(r), Tr(e, n, "__service__", 0, 0));
2836
- Kn(n, "__service__"), Gr(e, n, "__message__", t), Gr(e, n, kl, l);
2842
+ let l = xl(e, Xe(r), Tr(e, n, "__service__", 0, 0));
2843
+ Kn(n, "__service__"), Gr(e, n, "__message__", t), Gr(e, n, Al, l);
2837
2844
  }
2838
- return Wr(e, n, "__message__"), Ml(e, t, n, r);
2845
+ return Wr(e, n, "__message__"), Wl(e, t, n, r);
2839
2846
  },
2840
2847
  mt_subscription_added: function(e, t) {
2841
2848
  let n = e.priv;
2842
- return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 : Kl(e, t) : 0;
2849
+ return "ST_SESSION" === kt(e) && n.websocket ? n.inside_on_open ? 0 : Yl(e, t) : 0;
2843
2850
  },
2844
2851
  mt_subscription_deleted: function(e, t) {
2845
2852
  let n = e.priv;
@@ -2848,7 +2855,7 @@ var gobjJs = function(e) {
2848
2855
  if (ir(t.event)) return 0;
2849
2856
  let r = {}, l = t.__global__, o = t.__config__, s = t.__filter__, i = t.__service__, _ = t.subscriber;
2850
2857
  o && (r.__config__ = o), l && (r.__global__ = l), s && (r.__filter__ = s);
2851
- return Gr(e, r, kl, Wl(e, Xe(_), i)), Wr(e, r, "__unsubscribing__"), Ml(e, t.event, r, e);
2858
+ return Gr(e, r, Al, xl(e, Xe(_), i)), Wr(e, r, "__unsubscribing__"), Wl(e, t.event, r, e);
2852
2859
  }
2853
2860
  };
2854
2861
  return e.GObj = S, e.SDATA = j, e.SDATAAUTHZ = (e, t, n, r, l, o) => new T(e, t, n, null, o, r, null, 0, null, l, null), e.SDATACM = (e, t, n, r, l, o) => new T(e, t, 0, null, o, n, null, 0, l, r, null), e.SDATACM2 = (e, t, n, r, l, o, s) => new T(e, t, n, null, s, r, null, 0, o, l, null), e.SDATADF = (e, t, n, r, l, o) => new T(e, t, n, null, o, null, r, l), e.SDATAPM = (e, t, n, r, l) => new T(e, t, n, r, l), e.SDATAPM0 = (e, t, n, r, l) => new T(e, t, n, null, l, null, null, 0, null, null, r), e.SDATA_END = v, e.SDataDesc = T, e.YUNETA_VERSION = s, Object.defineProperty(e, "__yuno__", {
@@ -2862,7 +2869,7 @@ var gobjJs = function(e) {
2862
2869
  return t;
2863
2870
  }, e.build_stats_response = o, e.clean_name = function(e) {
2864
2871
  return e.replace(/[?# ^:]/g, "_");
2865
- }, e.clear_timeout = vl, e.cmp_two_simple_json = cr, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
2872
+ }, e.clear_timeout = jl, e.cmp_two_simple_json = cr, e.command_parser = function(e, t, n, r) {}, e.createElement2 = function e(t, n) {
2866
2873
  let [r, l, o, s] = t;
2867
2874
  if (!r) return void hn("Tag must be a valid HTML element.");
2868
2875
  let i = document.createElement(r), _ = "";
@@ -2871,21 +2878,21 @@ var gobjJs = function(e) {
2871
2878
  for (const n of Object.keys(l[e])) t += `${n}: ${l[e][n]};`;
2872
2879
  i.style.cssText = t;
2873
2880
  } else "style" === e ? i.style.cssText = l[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== l[e] && void 0 !== l[e] && (_ = l[e], i.setAttribute("data-i18n", _)) : i.setAttribute(e, l[e]);
2874
- if (Hr(o)) i.appendChild(zr(o));
2875
- else if (tr(o)) if (o = o.trim(), o.length > 0 && "<" === o[0] && !Qr) i.appendChild(Zr(o));
2881
+ if (zr(o)) i.appendChild(Qr(o));
2882
+ else if (tr(o)) if (o = o.trim(), o.length > 0 && "<" === o[0] && !Xr) i.appendChild(el(o));
2876
2883
  else if (o.length > 0 && "<" === o[0] && function(e) {
2877
- if (Xr.size >= 100) return;
2884
+ if (Zr.size >= 100) return;
2878
2885
  const t = e.slice(0, 80);
2879
- Xr.has(t) || (Xr.add(t), yn(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
2886
+ Zr.has(t) || (Zr.add(t), yn(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
2880
2887
  }(o), n && _) i.textContent = n(_) || o;
2881
2888
  else i.textContent = o;
2882
2889
  else if (er(o)) {
2883
2890
  if (o.length > 0) if (tr(o[0])) i.appendChild(e(o, n));
2884
- else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) : Hr(t) ? i.appendChild(zr(t)) : tr(t) ? i.appendChild(document.createTextNode(t)) : null != t && !1 !== t && hn("createElement2: child ignored, type " + typeof t);
2891
+ else for (let t of o) Array.isArray(t) ? t.length > 0 && i.appendChild(e(t, n)) : t instanceof Node ? i.appendChild(t) : zr(t) ? i.appendChild(Qr(t)) : tr(t) ? i.appendChild(document.createTextNode(t)) : null != t && !1 !== t && hn("createElement2: child ignored, type " + typeof t);
2885
2892
  } else o instanceof HTMLElement || o instanceof Text || o instanceof SVGElement ? i.appendChild(o) : null != o && (hn("content ignored"), vn(o));
2886
2893
  if (s && "object" == typeof s) for (const e of Object.keys(s)) i.addEventListener(e, s[e]);
2887
2894
  return i;
2888
- }, e.createOneHtml = Zr, e.create_json_record = function(e, t) {
2895
+ }, e.createOneHtml = el, e.create_json_record = function(e, t) {
2889
2896
  let n = Fn(e);
2890
2897
  return Mn(n, t), n;
2891
2898
  }, e.create_template_record = function(e, t) {
@@ -2896,21 +2903,21 @@ var gobjJs = function(e) {
2896
2903
  let o = Or(null, t, e, l);
2897
2904
  Yn(n, e, o);
2898
2905
  }), n;
2899
- }, e.current_timestamp = el, e.data_type_t = y, e.db_list_persistent_attrs = function(e, t) {
2900
- let n = kr(al(e), null, !1), r = {};
2906
+ }, e.current_timestamp = tl, e.data_type_t = y, e.db_list_persistent_attrs = function(e, t) {
2907
+ let n = kr(ul(e), null, !1), r = {};
2901
2908
  return n && Zn(n) && (r = Rr(e, n, t, !1)), r;
2902
2909
  }, e.db_load_persistent_attrs = function(e, t) {
2903
- let n = Et(e, E.SDF_PERSIST), r = kr(al(e), null, !1);
2910
+ let n = Et(e, E.SDF_PERSIST), r = kr(ul(e), null, !1);
2904
2911
  if (r && Zn(r)) {
2905
2912
  let l = Rr(e, r, t, !1);
2906
2913
  l = Rr(e, l, n, !1), wt(e, l, E.SDF_PERSIST);
2907
2914
  }
2908
2915
  }, e.db_remove_persistent_attrs = function(e, t) {
2909
- let n = Dr(e, kr(al(e), null, !1), t, !1);
2910
- 0 === zn(n) ? Ir(al(e)) : Ar(al(e), n);
2916
+ let n = Dr(e, kr(ul(e), null, !1), t, !1);
2917
+ 0 === zn(n) ? Ir(ul(e)) : Ar(ul(e), n);
2911
2918
  }, e.db_save_persistent_attrs = function(e, t) {
2912
- let n = Rr(e, Et(e, E.SDF_PERSIST), t, !1), r = kr(al(e), null, !1);
2913
- return r && Zn(r) && Wn(n, r), Ar(al(e), n);
2919
+ let n = Rr(e, Et(e, E.SDF_PERSIST), t, !1), r = kr(ul(e), null, !1);
2920
+ return r && Zn(r) && Wn(n, r), Ar(ul(e), n);
2914
2921
  }, e.debounce = function(e, t = 0, n = !1) {
2915
2922
  let r = null, l = null, o = null;
2916
2923
  const s = (...s) => {
@@ -2934,20 +2941,20 @@ var gobjJs = function(e) {
2934
2941
  return t;
2935
2942
  }, e.empty_json = function(e) {
2936
2943
  return 0 === Xn(e);
2937
- }, e.empty_string = ir, e.escapeHtml = Jr, e.event_flag_t = R, e.flat2json = function(e) {
2944
+ }, e.empty_string = ir, e.escapeHtml = qr, e.event_flag_t = R, e.flat2json = function(e) {
2938
2945
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
2939
2946
  let t = null;
2940
2947
  for (const n of Object.keys(e)) {
2941
- const r = il(n);
2948
+ const r = _l(n);
2942
2949
  if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
2943
- if (r.length > ll) throw new Error(`flat2json: '${n}' deeper than 256`);
2950
+ if (r.length > ol) throw new Error(`flat2json: '${n}' deeper than 256`);
2944
2951
  const l = "number" == typeof r[0];
2945
2952
  if (null === t) t = l ? [] : {};
2946
2953
  else if (l !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
2947
2954
  let o = t;
2948
2955
  for (let t = 0; t < r.length; t++) {
2949
2956
  const l = r[t], s = "number" == typeof l, i = t === r.length - 1, _ = !i && "number" == typeof r[t + 1];
2950
- if (s && l > ol) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
2957
+ if (s && l > sl) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
2951
2958
  if (s !== Array.isArray(o)) throw new Error(`flat2json: '${n}' uses a ${s ? "array index" : "key"} where the tree already has a ${Array.isArray(o) ? "array" : "object"}`);
2952
2959
  if (i) {
2953
2960
  if (Array.isArray(o)) {
@@ -2987,15 +2994,15 @@ var gobjJs = function(e) {
2987
2994
  removed: {},
2988
2995
  changed: {}
2989
2996
  };
2990
- for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? _l(n[e], r[e]) || br(l.changed, e, {
2997
+ for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? al(n[e], r[e]) || br(l.changed, e, {
2991
2998
  from: n[e],
2992
2999
  to: r[e]
2993
3000
  }) : br(l.removed, e, n[e]);
2994
3001
  for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || br(l.added, e, r[e]);
2995
3002
  return l;
2996
3003
  }, e.flat_key_join = function(e) {
2997
- return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : sl(e)).join("`") : "";
2998
- }, e.flat_key_split = il, e.gclass_add_ev_action = ye, e.gclass_add_event_type = Te, e.gclass_add_state = he, e.gclass_check_fsm = je, e.gclass_create = de, e.gclass_event_type = ve, e.gclass_find_by_name = Oe, e.gclass_flag_t = w, e.gclass_unregister = be, e.getPositionRelativeToBody = function(e) {
3004
+ return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : il(e)).join("`") : "";
3005
+ }, e.flat_key_split = _l, e.gclass_add_ev_action = ye, e.gclass_add_event_type = Te, e.gclass_add_state = he, e.gclass_check_fsm = je, e.gclass_create = de, e.gclass_event_type = ve, e.gclass_find_by_name = Oe, e.gclass_flag_t = w, e.gclass_unregister = be, e.getPositionRelativeToBody = function(e) {
2999
3006
  if (!e) return {
3000
3007
  top: 0,
3001
3008
  left: 0,
@@ -3014,7 +3021,7 @@ var gobjJs = function(e) {
3014
3021
  right: n + i + r,
3015
3022
  bottom: t + s + l
3016
3023
  };
3017
- }, e.get_function_name = rl, e.get_now = function() {
3024
+ }, e.get_function_name = ll, e.get_now = function() {
3018
3025
  return Math.floor(Date.now() / 1e3);
3019
3026
  }, e.gobj_bottom_gobj = st, e.gobj_change_parent = function(e, t) {
3020
3027
  return ot(e) ? (hn("gobj NULL or DESTROYED"), null) : t instanceof S ? (e.parent && e.parent.gclass.gmt.mt_child_removed && e.parent.gclass.gmt.mt_child_removed(e.parent, e), e.parent && (Re(e.parent, e), e.parent = null), $e(t, e), t.gclass.gmt.mt_child_added && (Y(e) && En(n("👦👦🔵 child_added(%s): %s", tt(t), et(e))), t.gclass.gmt.mt_child_added(t, e)), 0) : (hn(`${et(e)}: gobj_change_parent() BAD TYPE of parent`), -1);
@@ -3162,10 +3169,10 @@ var gobjJs = function(e) {
3162
3169
  }
3163
3170
  return _ ? yn(`${et(e)}: Hard subscription not removed, only gobj_unsubscribe_list() with force removes it (event: ${t}, hard: ${_})`) : i || a || (yn(`${et(e)}: No subscription found`), Un(n, "No subscription found")), 0;
3164
3171
  }, e.gobj_unsubscribe_list = Ht, e.gobj_walk_gobj_children = at, e.gobj_walk_gobj_children_tree = ut, e.gobj_write_attr = St, e.gobj_write_attrs = wt, e.gobj_write_bool_attr = Nt, e.gobj_write_integer_attr = $t, e.gobj_write_str_attr = Rt, e.gobj_yuno = qe, e.gobj_yuno_id = Qe, e.gobj_yuno_name = He, e.gobj_yuno_role = ze, e.html_markup = function(e) {
3165
- return "string" != typeof e ? (hn("html_markup: not a string, type " + typeof e), new qr("")) : new qr(e);
3166
- }, e.id_index_in_obj_list = Pr, e.index_in_list = tl, e.is_array = er, e.is_boolean = rr, e.is_date = function(e) {
3172
+ return "string" != typeof e ? (hn("html_markup: not a string, type " + typeof e), new Hr("")) : new Hr(e);
3173
+ }, e.id_index_in_obj_list = Pr, e.index_in_list = nl, e.is_array = er, e.is_boolean = rr, e.is_date = function(e) {
3167
3174
  return e instanceof Date && !isNaN(e);
3168
- }, e.is_function = or, e.is_gobj = sr, e.is_html_markup = Hr, e.is_metadata_key = function(e) {
3175
+ }, e.is_function = or, e.is_gobj = sr, e.is_html_markup = zr, e.is_metadata_key = function(e) {
3169
3176
  if (!tr(e)) return !1;
3170
3177
  let t = 0;
3171
3178
  for (; t < e.length && "_" === e[t] && !(t > 2); t++);
@@ -3183,17 +3190,17 @@ var gobjJs = function(e) {
3183
3190
  }, e.is_secret_name = wn, e.is_string = tr, e.jdb_delete = function(e, t, n, r) {
3184
3191
  let l = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
3185
3192
  if (!l) return hn("jdb_delete: topic not found: " + t), null;
3186
- if (!Zn(r) || ir(r.id)) return hn(`jdb_delete: record without id: ${JSON.stringify(r)}`), null;
3193
+ if (!Zn(r) || ir(r.id)) return hn(`jdb_delete: record without id: ${Yr(r)}`), null;
3187
3194
  if (!tr(n)) return hn(`jdb_delete: path must be a string: ${String(n)}`), null;
3188
3195
  if ("" !== n && n.split("`").includes("")) return hn(`jdb_delete: empty segment in path: '${n}'`), null;
3189
3196
  let o, s = n.split("`"), i = l;
3190
- for (; (o = s.shift()) && !ir(o) && i;) Zn(i) && (i = Or(null, i, e.hook, null, 0)), i = Yr(i, null, o, !1);
3197
+ for (; (o = s.shift()) && !ir(o) && i;) Zn(i) && (i = Or(null, i, e.hook, null, 0)), i = Br(i, null, o, !1);
3191
3198
  if (!i || 0 !== s.length) return hn(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
3192
3199
  let _ = er(i) ? i : Or(null, i, e.hook, null, 0), a = Pr(_, r.id);
3193
3200
  return a < 0 ? (hn(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (_.splice(a, 1), l);
3194
3201
  }, e.jdb_get = function(e, t, n, r) {
3195
3202
  let l = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
3196
- return l ? (void 0 === r && (r = !0), Yr(l, e.hook, n, r)) : (hn("jdb_get: topic not found: " + t), null);
3203
+ return l ? (void 0 === r && (r = !0), Br(l, e.hook, n, r)) : (hn("jdb_get: topic not found: " + t), null);
3197
3204
  }, e.jdb_get_by_idx = function(e, t, n) {
3198
3205
  let r = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
3199
3206
  return r ? n < r.length ? r[n] : {} : (hn("jdb_get_by_idx: topic not found: " + t), null);
@@ -3212,11 +3219,11 @@ var gobjJs = function(e) {
3212
3219
  }, e.jdb_update = function(e, t, n, r) {
3213
3220
  let l = Or(null, Or(null, e, "topics", null, 0), t, null, 0);
3214
3221
  if (!l) return hn("jdb_update: topic not found: " + t), null;
3215
- if (!Zn(r) || ir(r.id)) return hn(`jdb_update: record without id: ${JSON.stringify(r)}`), null;
3222
+ if (!Zn(r) || ir(r.id)) return hn(`jdb_update: record without id: ${Yr(r)}`), null;
3216
3223
  if (!tr(n)) return hn(`jdb_update: path must be a string: ${String(n)}`), null;
3217
3224
  if ("" !== n && n.split("`").includes("")) return hn(`jdb_update: empty segment in path: '${n}'`), null;
3218
3225
  let o, s, i = n.split("`"), _ = l;
3219
- for (; (o = i.shift()) && !ir(o) && _;) Zn(_) && (_ = Or(null, _, e.hook, null, 0)), _ = Yr(_, null, o, !1);
3226
+ for (; (o = i.shift()) && !ir(o) && _;) Zn(_) && (_ = Or(null, _, e.hook, null, 0)), _ = Br(_, null, o, !1);
3220
3227
  if (!_ || 0 !== i.length) return hn(`jdb_update: path not found in topic '${t}': '${n}'`), null;
3221
3228
  if (er(_)) s = _;
3222
3229
  else {
@@ -3224,11 +3231,11 @@ var gobjJs = function(e) {
3224
3231
  if (s = Or(null, _, e.hook, null, 0), null == s) s = [], Yn(_, e.hook, s);
3225
3232
  else if (!er(s)) return hn(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
3226
3233
  }
3227
- let a = Yr(s, e.hook, r.id, !1);
3234
+ let a = Br(s, e.hook, r.id, !1);
3228
3235
  return a ? Gn(a, r) : s.push(r), l;
3229
3236
  }, e.json2flat = function(e) {
3230
3237
  const t = {}, n = (e, r, l) => {
3231
- if (l > ll) throw new Error("json2flat: deeper than 256");
3238
+ if (l > ol) throw new Error("json2flat: deeper than 256");
3232
3239
  if (null === e || "object" != typeof e || Array.isArray(e)) {
3233
3240
  if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
3234
3241
  const o = `[${t}]`;
@@ -3238,7 +3245,7 @@ var gobjJs = function(e) {
3238
3245
  const t = Object.keys(e);
3239
3246
  if (t.length > 0) {
3240
3247
  for (const o of t) {
3241
- const t = sl(o);
3248
+ const t = il(o);
3242
3249
  n(e[o], 0 === l ? t : r + "`" + t, l + 1);
3243
3250
  }
3244
3251
  return;
@@ -3251,7 +3258,7 @@ var gobjJs = function(e) {
3251
3258
  return t ? (Array.prototype.push.apply(e, t), e) : e;
3252
3259
  }, e.json_array_remove = Hn, e.json_array_size = Qn, e.json_deep_copy = Fn, e.json_is_identical = Vn, e.json_mask_secrets = Pn, e.json_object_del = Kn, e.json_object_get = xn, e.json_object_set = Yn, e.json_object_set_new = Bn, e.json_object_size = zn, e.json_object_update = Gn, e.json_object_update_existing = Mn, e.json_object_update_missing = Wn, e.json_size = Xn, e.jwt2json = function(e, t) {
3253
3260
  try {
3254
- let n = Br(e);
3261
+ let n = Jr(e);
3255
3262
  switch (t) {
3256
3263
  case "header": return JSON.parse(n.header);
3257
3264
  case "signature": return JSON.parse(n.signature);
@@ -3260,7 +3267,7 @@ var gobjJs = function(e) {
3260
3267
  } catch (e) {
3261
3268
  return null;
3262
3269
  }
3263
- }, e.jwtDecode = Br, e.kw_clone_by_keys = Rr, e.kw_clone_by_not_keys = Dr, e.kw_collect = function(e, t, n, r) {
3270
+ }, e.jwtDecode = Jr, e.kw_clone_by_keys = Rr, e.kw_clone_by_not_keys = Dr, e.kw_collect = function(e, t, n, r) {
3264
3271
  if (e && !sr(e) && hn("GObj bad instanceof"), !t) return null;
3265
3272
  r || (r = $r);
3266
3273
  let l = [];
@@ -3281,7 +3288,7 @@ var gobjJs = function(e) {
3281
3288
  e && !sr(e) && hn("GObj bad instanceof");
3282
3289
  let o = mr(e, t, n, !1);
3283
3290
  const s = l && l & Zt.KW_REQUIRED, i = l && l & Zt.KW_CREATE, _ = l && l & Zt.KW_EXTRACT;
3284
- return void 0 === o ? i && er(r) && t ? (Sr(e, t, n, r), r) : (s && (hn(`path not found: '${n}'`), Un(t)), r) : er(o) ? (_ && hr(e, t, n), o) : (s && (hn(`${e ? et(e) + ": " : ""}path MUST BE a json list: '${n}'`), Un(t)), r);
3291
+ return void 0 === o ? i && er(r) && t ? (Sr(e, t, n, r), r) : (s && (hn(`path not found: '${n}'`), Un(t)), r) : er(o) ? (_ && hr(e, t, n), o) : i && null === o && er(r) ? (Sr(e, t, n, r), r) : ((s || i) && (hn(`${e ? et(e) + ": " : ""}path MUST BE a json list: '${n}'` + (i ? ", cannot create" : "")), Un(t)), r);
3285
3292
  }, e.kw_get_local_storage_value = kr, e.kw_get_pointer = vr, e.kw_get_real = function(e, t, n, r, l) {
3286
3293
  e && !sr(e) && hn("GObj bad instanceof");
3287
3294
  let o = mr(e, t, n, !1);
@@ -3404,9 +3411,9 @@ var gobjJs = function(e) {
3404
3411
  var e;
3405
3412
  }, r.send();
3406
3413
  }, e.log_debug = En, e.log_error = hn, e.log_info = function(e, ...t) {
3407
- let n = mn(e, ...t), r = el();
3414
+ let n = mn(e, ...t), r = tl();
3408
3415
  rn && cn("info", n) && rn("%c" + r + " INFO: " + String(n), "color:cyan"), gn("info", n, r);
3409
- }, e.log_warning = yn, e.mask_secrets_inline = kn, e.msg_iev_get_msg_type = xr, e.msg_iev_get_stack = Mr, e.msg_iev_push_stack = Gr, e.msg_iev_read_key = Fr, e.msg_iev_set_msg_type = Wr, e.msg_iev_write_key = Vr, e.node_uuid = nl, e.parseBoolean = _r, e.parseSVG = function(e) {
3416
+ }, e.log_warning = yn, e.mask_secrets_inline = kn, e.msg_iev_get_msg_type = xr, e.msg_iev_get_stack = Mr, e.msg_iev_push_stack = Gr, e.msg_iev_read_key = Fr, e.msg_iev_set_msg_type = Wr, e.msg_iev_write_key = Vr, e.node_uuid = rl, e.parseBoolean = _r, e.parseSVG = function(e) {
3410
3417
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
3411
3418
  }, e.refresh_language = function(e, t) {
3412
3419
  if (!or(t)) return void hn("You must supply a translation function");
@@ -3433,22 +3440,22 @@ var gobjJs = function(e) {
3433
3440
  });
3434
3441
  }, e.register_c_ievent_cli = function() {
3435
3442
  return function(e) {
3436
- if (Pl) return hn(`GClass ALREADY created: ${e}`), -1;
3443
+ if (Ul) return hn(`GClass ALREADY created: ${e}`), -1;
3437
3444
  const t = [
3438
3445
  ["ST_DISCONNECTED", [
3439
3446
  [
3440
3447
  "EV_ON_OPEN",
3441
- Bl,
3448
+ Jl,
3442
3449
  "ST_WAIT_IDENTITY_CARD_ACK"
3443
3450
  ],
3444
3451
  [
3445
3452
  "EV_ON_CLOSE",
3446
- Jl,
3453
+ ql,
3447
3454
  null
3448
3455
  ],
3449
3456
  [
3450
3457
  "EV_TIMEOUT",
3451
- Yl,
3458
+ Bl,
3452
3459
  null
3453
3460
  ],
3454
3461
  [
@@ -3460,22 +3467,22 @@ var gobjJs = function(e) {
3460
3467
  ["ST_WAIT_IDENTITY_CARD_ACK", [
3461
3468
  [
3462
3469
  "EV_ON_MESSAGE",
3463
- Ql,
3470
+ Xl,
3464
3471
  null
3465
3472
  ],
3466
3473
  [
3467
3474
  "EV_IDENTITY_CARD_ACK",
3468
- zl,
3475
+ Ql,
3469
3476
  null
3470
3477
  ],
3471
3478
  [
3472
3479
  "EV_ON_CLOSE",
3473
- Jl,
3480
+ ql,
3474
3481
  "ST_DISCONNECTED"
3475
3482
  ],
3476
3483
  [
3477
3484
  "EV_TIMEOUT",
3478
- Hl,
3485
+ zl,
3479
3486
  null
3480
3487
  ],
3481
3488
  [
@@ -3487,22 +3494,22 @@ var gobjJs = function(e) {
3487
3494
  ["ST_SESSION", [
3488
3495
  [
3489
3496
  "EV_ON_MESSAGE",
3490
- Ql,
3497
+ Xl,
3491
3498
  null
3492
3499
  ],
3493
3500
  [
3494
3501
  "EV_MT_STATS",
3495
- Xl,
3502
+ Zl,
3496
3503
  null
3497
3504
  ],
3498
3505
  [
3499
3506
  "EV_MT_COMMAND",
3500
- Zl,
3507
+ eo,
3501
3508
  null
3502
3509
  ],
3503
3510
  [
3504
3511
  "EV_ON_CLOSE",
3505
- Jl,
3512
+ ql,
3506
3513
  "ST_DISCONNECTED"
3507
3514
  ],
3508
3515
  [
@@ -3513,7 +3520,7 @@ var gobjJs = function(e) {
3513
3520
  ]],
3514
3521
  [null, null]
3515
3522
  ];
3516
- return (Pl = de(e, [
3523
+ return (Ul = de(e, [
3517
3524
  ["EV_ON_MESSAGE", R.EVF_OUTPUT_EVENT],
3518
3525
  ["EV_IDENTITY_CARD_ACK", R.EVF_PUBLIC_EVENT],
3519
3526
  ["EV_ON_ID_NAK", R.EVF_PUBLIC_EVENT | R.EVF_OUTPUT_EVENT],
@@ -3524,36 +3531,36 @@ var gobjJs = function(e) {
3524
3531
  ["EV_ON_OPEN_ERROR", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS],
3525
3532
  ["EV_TIMEOUT", 0],
3526
3533
  [null, 0]
3527
- ], t, eo, 0, Al, Ll, 0, 0, Il, w.gcflag_no_check_output_events)) ? 0 : -1;
3534
+ ], t, to, 0, Il, Pl, 0, 0, Cl, w.gcflag_no_check_output_events)) ? 0 : -1;
3528
3535
  }("C_IEVENT_CLI");
3529
3536
  }, e.register_c_timer = function() {
3530
3537
  return function(e) {
3531
- if (ml) return hn(`GClass ALREADY created: ${e}`), -1;
3538
+ if (hl) return hn(`GClass ALREADY created: ${e}`), -1;
3532
3539
  const t = [["ST_IDLE", [[
3533
3540
  "EV_TIMEOUT",
3534
- hl,
3541
+ yl,
3535
3542
  null
3536
3543
  ]]]];
3537
- return (ml = de(e, [
3544
+ return (hl = de(e, [
3538
3545
  ["EV_TIMEOUT", R.EVF_OUTPUT_EVENT],
3539
3546
  ["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT],
3540
3547
  [0, 0]
3541
- ], t, yl, 0, bl, pl, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
3548
+ ], t, El, 0, pl, ml, 0, 0, 0, w.gcflag_manual_start)) ? 0 : -1;
3542
3549
  }("C_TIMER");
3543
3550
  }, e.register_c_yuno = function() {
3544
3551
  return function(e) {
3545
- if (Sl) return hn(`GClass ALREADY created: ${e}`), -1;
3552
+ if (wl) return hn(`GClass ALREADY created: ${e}`), -1;
3546
3553
  const t = [["ST_IDLE", [[
3547
3554
  "EV_TIMEOUT_PERIODIC",
3548
- Rl,
3555
+ Dl,
3549
3556
  null
3550
3557
  ]]]];
3551
- return (Sl = de(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, Dl, 0, jl, Ol, 0, 0, 0, 0)) ? 0 : -1;
3558
+ return (wl = de(e, [["EV_TIMEOUT_PERIODIC", R.EVF_OUTPUT_EVENT | R.EVF_NO_WARN_SUBS], [0, 0]], t, kl, 0, Ol, Sl, 0, 0, 0, 0)) ? 0 : -1;
3552
3559
  }("C_YUNO");
3553
3560
  }, e.safeSrc = function(e) {
3554
3561
  if (!e) return "";
3555
3562
  const t = String(e).trim();
3556
- return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : Jr(t);
3563
+ return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : qr(t);
3557
3564
  }, e.sdata_flag_t = E, e.send_http_json_post = function(e, t, n) {
3558
3565
  let r = new XMLHttpRequest();
3559
3566
  r.open("POST", e), r.setRequestHeader("Accept", "application/json"), r.setRequestHeader("Content-Type", "application/json"), r.onreadystatechange = function() {
@@ -3577,9 +3584,9 @@ var gobjJs = function(e) {
3577
3584
  }
3578
3585
  } else on = e;
3579
3586
  }, e.set_remote_log_functions = bn, e.set_strings_are_text = function(e) {
3580
- Qr = !!e;
3581
- }, e.set_timeout = El, e.set_timeout_periodic = Tl, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Ur, e.strcasecmp = ur, e.strcmp = ar, e.strings_are_text = function() {
3582
- return Qr;
3587
+ Xr = !!e;
3588
+ }, e.set_timeout = Tl, e.set_timeout_periodic = vl, e.sprintf = n, e.stats_parser = function(e, t, n, r) {}, e.str_in_list = Ur, e.strcasecmp = ur, e.strcmp = ar, e.strings_are_text = function() {
3589
+ return Xr;
3583
3590
  }, e.strncmp = function(e, t, n) {
3584
3591
  var r = (e + "").substring(0, n), l = (t + "").substring(0, n);
3585
3592
  return r === l ? 0 : r > l ? 1 : -1;
@@ -3609,9 +3616,9 @@ var gobjJs = function(e) {
3609
3616
  let e = t.split(".");
3610
3617
  for (let t = 0; t < e.length; t++) {
3611
3618
  let r = e[t];
3612
- if (Ur(cl, r)) n.real_type || (n.real_type = r);
3613
- else if (Ur(gl, r)) n.type || (n.type = r);
3614
- else if (Ur(fl, r)) switch (r) {
3619
+ if (Ur(fl, r)) n.real_type || (n.real_type = r);
3620
+ else if (Ur(dl, r)) n.type || (n.type = r);
3621
+ else if (Ur(gl, r)) switch (r) {
3615
3622
  case "writable":
3616
3623
  n.is_writable = !0;
3617
3624
  break;
@@ -3623,7 +3630,7 @@ var gobjJs = function(e) {
3623
3630
  }
3624
3631
  }
3625
3632
  n.real_type || (n.real_type = "string");
3626
- } else Zn(t) ? (n = dl(t), n.name || (n.name = e), n.header || (n.header = e)) : er(t) && (n.real_type = "array", n.enum_list = t);
3633
+ } else Zn(t) ? (n = bl(t), n.name || (n.name = e), n.header || (n.header = e)) : er(t) && (n.real_type = "array", n.enum_list = t);
3627
3634
  return n.type || (n.type = n.real_type), n;
3628
3635
  }, e.timeTracker = function(e = "Time Tracker", t = !1) {
3629
3636
  const n = e, r = performance.now();
@@ -3635,7 +3642,7 @@ var gobjJs = function(e) {
3635
3642
  total: _
3636
3643
  };
3637
3644
  } };
3638
- }, e.trace_json = vn, e.trace_json_masked = Un, e.trace_level_t = P, e.trace_msg = Tn, e.treedb_decoder_fkey = ul, e.treedb_decoder_hook = function(e, t) {
3645
+ }, e.trace_json = vn, e.trace_json_masked = Un, e.trace_level_t = P, e.trace_msg = Tn, e.treedb_decoder_fkey = cl, e.treedb_decoder_hook = function(e, t) {
3639
3646
  if (tr(t)) {
3640
3647
  if (-1 === t.indexOf("^")) {
3641
3648
  let n, r = e.hook;
@@ -3662,9 +3669,9 @@ var gobjJs = function(e) {
3662
3669
  id: t.id
3663
3670
  } : (hn("bad hook 3"), hn(e), hn(t), null);
3664
3671
  }, e.treedb_encoder_fkey = function(e, t) {
3665
- let n = ul(e, t);
3672
+ let n = cl(e, t);
3666
3673
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
3667
- }, e.treedb_get_field_desc = dl, e.treedb_hook_data_size = function(e) {
3674
+ }, e.treedb_get_field_desc = bl, e.treedb_hook_data_size = function(e) {
3668
3675
  if (er(e) && 1 === Xn(e)) {
3669
3676
  let t = e[0];
3670
3677
  return gr(t, "size") ? t.size : 1;