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