@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.
@@ -714,7 +714,7 @@ function Be(e, t) {
714
714
  t.parent && ir(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
715
715
  }
716
716
  function Je(e, t) {
717
- let n = ko(e.dl_children, t);
717
+ let n = Io(e.dl_children, t);
718
718
  n >= 0 && (Vr(e.dl_children, n), t.parent = null);
719
719
  }
720
720
  function qe(e, t) {
@@ -1223,7 +1223,7 @@ function Tn(e, n, r, l) {
1223
1223
  if (1 === W) Y(t("🔄 %s %s%s %s from %s%s", n || "", e.running ? "" : "!!", Rt(e), o.state_name, l && !l.running ? "!!" : "", Rt(l)));
1224
1224
  else {
1225
1225
  let r = "";
1226
- s.action && (r = Lo(s.action)), Y(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", $t(e), jt(e), o.state_name, "", n || "", "", r, l && !l.running ? "!!" : "", $t(l), jt(l)));
1226
+ s.action && (r = Po(s.action)), Y(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", $t(e), jt(e), o.state_name, "", n || "", "", r, l && !l.running ? "!!" : "", $t(l), jt(l)));
1227
1227
  }
1228
1228
  r && le(e) && Mr(r) && wr(r);
1229
1229
  }
@@ -1601,27 +1601,27 @@ function or(e) {
1601
1601
  return n;
1602
1602
  }
1603
1603
  function ir(e, ...t) {
1604
- let n = or(e, ...t), r = Do();
1604
+ let n = or(e, ...t), r = Ao();
1605
1605
  Mn && (Mn === Gn.error ? Zn("error", n) && Mn("%c" + r + " ERROR: " + String(n), "color:red") : (Zn("error", n) && Gn.error("%c" + r + " ERROR: " + String(n), "color:red"), Mn(`${r} ERROR: ${String(n)}`))), tr("error", n, r);
1606
1606
  }
1607
1607
  function sr(e, ...t) {
1608
- let n = or(e, ...t), r = Do();
1608
+ let n = or(e, ...t), r = Ao();
1609
1609
  Wn && (Wn === Gn.warn ? Zn("warning", n) && Wn("%c" + r + " WARNING: " + String(n), "color:yellow") : (Zn("warning", n) && Gn.warn("%c" + r + " WARNING: " + String(n), "color:yellow"), Wn(`${r} WARNING: ${String(n)}`))), tr("warning", n, r);
1610
1610
  }
1611
1611
  function ar(e, ...t) {
1612
- let n = or(e, ...t), r = Do();
1612
+ let n = or(e, ...t), r = Ao();
1613
1613
  xn && Zn("info", n) && xn("%c" + r + " INFO: " + String(n), "color:cyan"), tr("info", n, r);
1614
1614
  }
1615
1615
  function ur(e, ...t) {
1616
- let n = or(e, ...t), r = Do();
1616
+ let n = or(e, ...t), r = Ao();
1617
1617
  Kn && Zn("debug", n) && Kn("%c" + r + " DEBUG: " + String(n), "color:silver"), tr("debug", n, r);
1618
1618
  }
1619
1619
  function _r(e, ...t) {
1620
- let n = or(e, ...t), r = Do();
1620
+ let n = or(e, ...t), r = Ao();
1621
1621
  Kn && Zn("msg", n) && Kn("%c" + r + " MSG: " + String(n), "color:cyan"), tr("msg", n, r);
1622
1622
  }
1623
1623
  function cr(e, t) {
1624
- Zn("json", t) && (t && Gn.warn("=====> " + t), Gn.dir(e)), tr("json", e, Do());
1624
+ Zn("json", t) && (t && Gn.warn("=====> " + t), Gn.dir(e)), tr("json", e, Ao());
1625
1625
  }
1626
1626
  var fr = [
1627
1627
  "passw",
@@ -2111,7 +2111,7 @@ function vl(e, t, n, r, l) {
2111
2111
  e && !el(e) && ir("GObj bad instanceof");
2112
2112
  let o = bl(e, t, n, !1);
2113
2113
  const i = l && l & Vn.KW_REQUIRED, s = l && l & Vn.KW_CREATE, a = l && l & Vn.KW_EXTRACT;
2114
- return void 0 === o ? s && Yr(r) && t ? (Nl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), wr(t)), r) : Yr(o) ? (a && pl(e, t, n), o) : (i && (ir(`${e ? Rt(e) + ": " : ""}path MUST BE a json dict: '${n}'`), wr(t)), r);
2114
+ return void 0 === o ? s && Yr(r) && t ? (Nl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), wr(t)), r) : Yr(o) ? (a && pl(e, t, n), o) : s && null === o && Yr(r) ? (Nl(e, t, n, r), r) : ((i || s) && (ir(`${e ? Rt(e) + ": " : ""}path MUST BE a json dict: '${n}'` + (s ? ", cannot create" : "")), wr(t)), r);
2115
2115
  }
2116
2116
  function Ol(e, t, n, r, l) {
2117
2117
  e && !el(e) && ir("GObj bad instanceof");
@@ -2130,7 +2130,7 @@ function Sl(e, t, n, r, l) {
2130
2130
  e && !el(e) && ir("GObj bad instanceof");
2131
2131
  let o = bl(e, t, n, !1);
2132
2132
  const i = l && l & Vn.KW_REQUIRED, s = l && l & Vn.KW_CREATE, a = l && l & Vn.KW_EXTRACT;
2133
- return void 0 === o ? s && Br(r) && t ? (Nl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), wr(t)), r) : Br(o) ? (a && pl(e, t, n), o) : (i && (ir(`${e ? Rt(e) + ": " : ""}path MUST BE a json list: '${n}'`), wr(t)), r);
2133
+ return void 0 === o ? s && Br(r) && t ? (Nl(e, t, n, r), r) : (i && (ir(`path not found: '${n}'`), wr(t)), r) : Br(o) ? (a && pl(e, t, n), o) : s && null === o && Br(r) ? (Nl(e, t, n, r), r) : ((i || s) && (ir(`${e ? Rt(e) + ": " : ""}path MUST BE a json list: '${n}'` + (s ? ", cannot create" : "")), wr(t)), r);
2134
2134
  }
2135
2135
  function Nl(e, t, n, r) {
2136
2136
  if (e && !el(e) && ir("GObj bad instanceof"), !Yr(t)) return ir("kw is not an object"), -1;
@@ -2513,14 +2513,21 @@ function ro(e, t, n) {
2513
2513
  "__" === t.substring(0, 2) || Yr(n) || Ol(null, o, l, jr(r), Vn.KW_CREATE);
2514
2514
  }, t), e;
2515
2515
  }
2516
- function lo(e, t, n, r) {
2516
+ function lo(e) {
2517
+ try {
2518
+ return JSON.stringify(e);
2519
+ } catch (t) {
2520
+ return `<${typeof e}: not json (${t.message})>`;
2521
+ }
2522
+ }
2523
+ function oo(e, t, n, r) {
2517
2524
  let l = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2518
2525
  if (!l) return ir("jdb_update: topic not found: " + t), null;
2519
- if (!Yr(r) || tl(r.id)) return ir(`jdb_update: record without id: ${JSON.stringify(r)}`), null;
2526
+ if (!Yr(r) || tl(r.id)) return ir(`jdb_update: record without id: ${lo(r)}`), null;
2520
2527
  if (!Jr(n)) return ir(`jdb_update: path must be a string: ${String(n)}`), null;
2521
2528
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_update: empty segment in path: '${n}'`), null;
2522
2529
  let o, i, s = n.split("`"), a = l;
2523
- for (; (o = s.shift()) && !tl(o) && a;) Yr(a) && (a = Ol(null, a, e.hook, null, 0)), a = uo(a, null, o, !1);
2530
+ for (; (o = s.shift()) && !tl(o) && a;) Yr(a) && (a = Ol(null, a, e.hook, null, 0)), a = _o(a, null, o, !1);
2524
2531
  if (!a || 0 !== s.length) return ir(`jdb_update: path not found in topic '${t}': '${n}'`), null;
2525
2532
  if (Br(a)) i = a;
2526
2533
  else {
@@ -2528,35 +2535,35 @@ function lo(e, t, n, r) {
2528
2535
  if (i = Ol(null, a, e.hook, null, 0), null == i) i = [], Lr(a, e.hook, i);
2529
2536
  else if (!Br(i)) return ir(`jdb_update: the hook '${e.hook}' of '${n}' is not a list in topic '${t}'`), null;
2530
2537
  }
2531
- let u = uo(i, e.hook, r.id, !1);
2538
+ let u = _o(i, e.hook, r.id, !1);
2532
2539
  return u ? Dr(u, r) : i.push(r), l;
2533
2540
  }
2534
- function oo(e, t, n, r) {
2541
+ function io(e, t, n, r) {
2535
2542
  let l = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2536
2543
  if (!l) return ir("jdb_delete: topic not found: " + t), null;
2537
- if (!Yr(r) || tl(r.id)) return ir(`jdb_delete: record without id: ${JSON.stringify(r)}`), null;
2544
+ if (!Yr(r) || tl(r.id)) return ir(`jdb_delete: record without id: ${lo(r)}`), null;
2538
2545
  if (!Jr(n)) return ir(`jdb_delete: path must be a string: ${String(n)}`), null;
2539
2546
  if ("" !== n && n.split("`").includes("")) return ir(`jdb_delete: empty segment in path: '${n}'`), null;
2540
2547
  let o, i = n.split("`"), s = l;
2541
- for (; (o = i.shift()) && !tl(o) && s;) Yr(s) && (s = Ol(null, s, e.hook, null, 0)), s = uo(s, null, o, !1);
2548
+ for (; (o = i.shift()) && !tl(o) && s;) Yr(s) && (s = Ol(null, s, e.hook, null, 0)), s = _o(s, null, o, !1);
2542
2549
  if (!s || 0 !== i.length) return ir(`jdb_delete: path not found in topic '${t}': '${n}'`), null;
2543
2550
  let a = Br(s) ? s : Ol(null, s, e.hook, null, 0), u = Kl(a, r.id);
2544
2551
  return u < 0 ? (ir(`jdb_delete: record not found in topic '${t}': '${n}' '${r.id}'`), null) : (a.splice(u, 1), l);
2545
2552
  }
2546
- function io(e, t) {
2553
+ function so(e, t) {
2547
2554
  let n = Ol(null, e, "topics", null, 0);
2548
2555
  if (!n) return ir("jdb topics section not found"), _r(e), null;
2549
2556
  return Ol(null, n, t, null, 0) || (ir("jdb topic not found: " + t), _r(n), null);
2550
2557
  }
2551
- function so(e, t, n, r) {
2558
+ function ao(e, t, n, r) {
2552
2559
  let l = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2553
- return l ? (void 0 === r && (r = !0), uo(l, e.hook, n, r)) : (ir("jdb_get: topic not found: " + t), null);
2560
+ return l ? (void 0 === r && (r = !0), _o(l, e.hook, n, r)) : (ir("jdb_get: topic not found: " + t), null);
2554
2561
  }
2555
- function ao(e, t, n) {
2562
+ function uo(e, t, n) {
2556
2563
  let r = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2557
2564
  return r ? n < r.length ? r[n] : {} : (ir("jdb_get_by_idx: topic not found: " + t), null);
2558
2565
  }
2559
- function uo(e, t, n, r) {
2566
+ function _o(e, t, n, r) {
2560
2567
  if (!e) return null;
2561
2568
  let l, o = e.length;
2562
2569
  for (l = 0; l < o; l++) {
@@ -2565,18 +2572,18 @@ function uo(e, t, n, r) {
2565
2572
  let e = o.id;
2566
2573
  if (e && e === n) return o;
2567
2574
  if (r && cl(o, t)) {
2568
- let e = uo(o[t], t, n, r);
2575
+ let e = _o(o[t], t, n, r);
2569
2576
  if (e) return e;
2570
2577
  }
2571
2578
  }
2572
2579
  }
2573
2580
  return null;
2574
2581
  }
2575
- function _o(e, t) {
2582
+ function co(e, t) {
2576
2583
  let n = jr(e);
2577
2584
  return Ar(n, t), n;
2578
2585
  }
2579
- function co(e) {
2586
+ function fo(e) {
2580
2587
  function t(e) {
2581
2588
  let t = e.replace(/-/g, "+").replace(/_/g, "/");
2582
2589
  switch (t.length % 4) {
@@ -2607,9 +2614,9 @@ function co(e) {
2607
2614
  signature: t(n[2])
2608
2615
  };
2609
2616
  }
2610
- function fo(e, t) {
2617
+ function go(e, t) {
2611
2618
  try {
2612
- let n = co(e);
2619
+ let n = fo(e);
2613
2620
  switch (t) {
2614
2621
  case "header": return JSON.parse(n.header);
2615
2622
  case "signature": return JSON.parse(n.signature);
@@ -2619,15 +2626,15 @@ function fo(e, t) {
2619
2626
  return null;
2620
2627
  }
2621
2628
  }
2622
- function go(e) {
2629
+ function bo(e) {
2623
2630
  return null == e ? "" : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
2624
2631
  }
2625
- function bo(e) {
2632
+ function po(e) {
2626
2633
  if (!e) return "";
2627
2634
  const t = String(e).trim();
2628
- return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : go(t);
2635
+ return /^javascript:/i.test(t) || /^data:/i.test(t) ? "" : bo(t);
2629
2636
  }
2630
- var po = class {
2637
+ var mo = class {
2631
2638
  constructor(e) {
2632
2639
  this.html = e, Object.freeze(this);
2633
2640
  }
@@ -2635,28 +2642,28 @@ var po = class {
2635
2642
  return this.html;
2636
2643
  }
2637
2644
  };
2638
- function mo(e) {
2639
- return "string" != typeof e ? (ir("html_markup: not a string, type " + typeof e), new po("")) : new po(e);
2640
- }
2641
2645
  function ho(e) {
2642
- return e instanceof po;
2646
+ return "string" != typeof e ? (ir("html_markup: not a string, type " + typeof e), new mo("")) : new mo(e);
2643
2647
  }
2644
2648
  function Eo(e) {
2649
+ return e instanceof mo;
2650
+ }
2651
+ function yo(e) {
2645
2652
  const t = document.createElement("template");
2646
2653
  return t.innerHTML = e.html.trim(), t.content;
2647
2654
  }
2648
- var yo = !1, To = /* @__PURE__ */ new Set();
2649
- function vo(e) {
2650
- yo = !!e;
2655
+ var To = !1, vo = /* @__PURE__ */ new Set();
2656
+ function Oo(e) {
2657
+ To = !!e;
2651
2658
  }
2652
- function Oo() {
2653
- return yo;
2659
+ function So() {
2660
+ return To;
2654
2661
  }
2655
- function So(e) {
2662
+ function No(e) {
2656
2663
  const t = document.createElement("template");
2657
2664
  return t.innerHTML = e.trim(), t.content.firstChild;
2658
2665
  }
2659
- function No(e, t) {
2666
+ function wo(e, t) {
2660
2667
  let [n, r, l, o] = e;
2661
2668
  if (!n) return void ir("Tag must be a valid HTML element.");
2662
2669
  let i = document.createElement(n), s = "";
@@ -2665,22 +2672,22 @@ function No(e, t) {
2665
2672
  for (const n of Object.keys(r[e])) t += `${n}: ${r[e][n]};`;
2666
2673
  i.style.cssText = t;
2667
2674
  } else "style" === e ? i.style.cssText = r[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== r[e] && void 0 !== r[e] && (s = r[e], i.setAttribute("data-i18n", s)) : i.setAttribute(e, r[e]);
2668
- if (ho(l)) i.appendChild(Eo(l));
2669
- else if (Jr(l)) if (l = l.trim(), l.length > 0 && "<" === l[0] && !yo) i.appendChild(So(l));
2675
+ if (Eo(l)) i.appendChild(yo(l));
2676
+ else if (Jr(l)) if (l = l.trim(), l.length > 0 && "<" === l[0] && !To) i.appendChild(No(l));
2670
2677
  else if (l.length > 0 && "<" === l[0] && function(e) {
2671
- if (To.size >= 100) return;
2678
+ if (vo.size >= 100) return;
2672
2679
  const t = e.slice(0, 80);
2673
- To.has(t) || (To.add(t), sr(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
2680
+ vo.has(t) || (vo.add(t), sr(`createElement2: a string that starts with '<' is TEXT (set_strings_are_text): use html_markup() if it is markup: ${JSON.stringify(t)}`));
2674
2681
  }(l), t && s) i.textContent = t(s) || l;
2675
2682
  else i.textContent = l;
2676
2683
  else if (Br(l)) {
2677
- if (l.length > 0) if (Jr(l[0])) i.appendChild(No(l, t));
2678
- else for (let e of l) Array.isArray(e) ? e.length > 0 && i.appendChild(No(e, t)) : e instanceof Node ? i.appendChild(e) : ho(e) ? i.appendChild(Eo(e)) : Jr(e) ? i.appendChild(document.createTextNode(e)) : null != e && !1 !== e && ir("createElement2: child ignored, type " + typeof e);
2684
+ if (l.length > 0) if (Jr(l[0])) i.appendChild(wo(l, t));
2685
+ else for (let e of l) Array.isArray(e) ? e.length > 0 && i.appendChild(wo(e, t)) : e instanceof Node ? i.appendChild(e) : Eo(e) ? i.appendChild(yo(e)) : Jr(e) ? i.appendChild(document.createTextNode(e)) : null != e && !1 !== e && ir("createElement2: child ignored, type " + typeof e);
2679
2686
  } else l instanceof HTMLElement || l instanceof Text || l instanceof SVGElement ? i.appendChild(l) : null != l && (ir("content ignored"), cr(l));
2680
2687
  if (o && "object" == typeof o) for (const e of Object.keys(o)) i.addEventListener(e, o[e]);
2681
2688
  return i;
2682
2689
  }
2683
- function wo(e) {
2690
+ function jo(e) {
2684
2691
  if (!e) return {
2685
2692
  top: 0,
2686
2693
  left: 0,
@@ -2700,10 +2707,10 @@ function wo(e) {
2700
2707
  bottom: t + i + l
2701
2708
  };
2702
2709
  }
2703
- function jo(e) {
2710
+ function $o(e) {
2704
2711
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
2705
2712
  }
2706
- function $o(e, t) {
2713
+ function Ro(e, t) {
2707
2714
  if (!Zr(t)) return void ir("You must supply a translation function");
2708
2715
  e || (e = document);
2709
2716
  const n = (t) => {
@@ -2727,7 +2734,7 @@ function $o(e, t) {
2727
2734
  n && e.setAttribute("placeholder", t(n));
2728
2735
  });
2729
2736
  }
2730
- function Ro(e = "Time Tracker", t = !1) {
2737
+ function Do(e = "Time Tracker", t = !1) {
2731
2738
  const n = e, r = performance.now();
2732
2739
  let l = r;
2733
2740
  return t && sr(`--\x3e ${n} - starting`), { mark: (e = "Intermediate", o = "") => {
@@ -2738,30 +2745,30 @@ function Ro(e = "Time Tracker", t = !1) {
2738
2745
  };
2739
2746
  } };
2740
2747
  }
2741
- function Do(e) {
2748
+ function Ao(e) {
2742
2749
  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();
2743
2750
  return `${n}.${r}${l > 0 ? "-" : "+"}${t(Math.floor(Math.abs(l) / 60), 2)}${t(Math.abs(l) % 60, 2)}`;
2744
2751
  }
2745
- function Ao() {
2752
+ function ko() {
2746
2753
  return Math.floor(Date.now() / 1e3);
2747
2754
  }
2748
- function ko(e, t) {
2755
+ function Io(e, t) {
2749
2756
  if (!e) throw "ERROR: index_in_list() list empty";
2750
2757
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
2751
2758
  return -1;
2752
2759
  }
2753
- function Io() {
2760
+ function Co() {
2754
2761
  let e = "";
2755
2762
  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;
2756
2763
  }
2757
- function Co(e) {
2764
+ function Lo(e) {
2758
2765
  return e.replace(/[?# ^:]/g, "_");
2759
2766
  }
2760
- function Lo(e) {
2767
+ function Po(e) {
2761
2768
  let t = null;
2762
2769
  return "function" != typeof e && "object" != typeof e || (t = ("" + e).match(/function\s*([\w\$]*)\s*\(/)), null !== t ? t[1] + "()" : "";
2763
2770
  }
2764
- function Po(e, t = 0, n = !1) {
2771
+ function Uo(e, t = 0, n = !1) {
2765
2772
  let r = null, l = null, o = null;
2766
2773
  const i = (...i) => {
2767
2774
  o = this, l = i;
@@ -2776,20 +2783,20 @@ function Po(e, t = 0, n = !1) {
2776
2783
  clearTimeout(r), r = null, l = null, o = null;
2777
2784
  }, i;
2778
2785
  }
2779
- function Uo(...e) {
2786
+ function Fo(...e) {
2780
2787
  let t = "", n = 0;
2781
2788
  for (let r of e) null != r && "" !== r && (r = String(r), r = 0 === n ? r.replace(/\/+$/, "") : r.replace(/^\/+/, "").replace(/\/+$/, ""), "" !== r && (n > 0 && (t += "/"), t += r, n++));
2782
2789
  return t;
2783
2790
  }
2784
- var Fo = 256, Vo = 1e5;
2785
- function Go(e) {
2791
+ var Vo = 256, Go = 1e5;
2792
+ function Mo(e) {
2786
2793
  const t = String(e).replace(/`/g, "``");
2787
2794
  return "[" === t[0] ? "[" + t : t;
2788
2795
  }
2789
- function Mo(e) {
2790
- return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : Go(e)).join("`") : "";
2791
- }
2792
2796
  function Wo(e) {
2797
+ return Array.isArray(e) && 0 !== e.length ? e.map((e) => "number" == typeof e ? `[${e}]` : Mo(e)).join("`") : "";
2798
+ }
2799
+ function xo(e) {
2793
2800
  if ("string" != typeof e) return null;
2794
2801
  let t = [], n = "";
2795
2802
  for (let r = 0; r < e.length; r++) if ("`" !== e[r]) n += e[r];
@@ -2810,9 +2817,9 @@ function Wo(e) {
2810
2817
  return null !== t ? t : "[" === e[0] && "[" === e[1] ? e.slice(1) : e;
2811
2818
  });
2812
2819
  }
2813
- function xo(e) {
2820
+ function Ko(e) {
2814
2821
  const t = {}, n = (e, r, l) => {
2815
- if (l > Fo) throw new Error("json2flat: deeper than 256");
2822
+ if (l > Vo) throw new Error("json2flat: deeper than 256");
2816
2823
  if (null === e || "object" != typeof e || Array.isArray(e)) {
2817
2824
  if (Array.isArray(e) && e.length > 0) return void e.forEach((e, t) => {
2818
2825
  const o = `[${t}]`;
@@ -2822,7 +2829,7 @@ function xo(e) {
2822
2829
  const t = Object.keys(e);
2823
2830
  if (t.length > 0) {
2824
2831
  for (const o of t) {
2825
- const t = Go(o);
2832
+ const t = Mo(o);
2826
2833
  n(e[o], 0 === l ? t : r + "`" + t, l + 1);
2827
2834
  }
2828
2835
  return;
@@ -2832,20 +2839,20 @@ function xo(e) {
2832
2839
  };
2833
2840
  return null == e || n(e, "", 0), t;
2834
2841
  }
2835
- function Ko(e) {
2842
+ function Yo(e) {
2836
2843
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat2json: a flat json is an object of id -> value");
2837
2844
  let t = null;
2838
2845
  for (const n of Object.keys(e)) {
2839
- const r = Wo(n);
2846
+ const r = xo(n);
2840
2847
  if (!r || 0 === r.length) throw new Error(`flat2json: malformed flat id: '${n}'`);
2841
- if (r.length > Fo) throw new Error(`flat2json: '${n}' deeper than 256`);
2848
+ if (r.length > Vo) throw new Error(`flat2json: '${n}' deeper than 256`);
2842
2849
  const l = "number" == typeof r[0];
2843
2850
  if (null === t) t = l ? [] : {};
2844
2851
  else if (l !== Array.isArray(t)) throw new Error(`flat2json: '${n}' does not fit a ${Array.isArray(t) ? "array" : "object"} root`);
2845
2852
  let o = t;
2846
2853
  for (let t = 0; t < r.length; t++) {
2847
2854
  const l = r[t], i = "number" == typeof l, s = t === r.length - 1, a = !s && "number" == typeof r[t + 1];
2848
- if (i && l > Vo) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
2855
+ if (i && l > Go) throw new Error(`flat2json: array index ${l} over the limit (100000) in '${n}'`);
2849
2856
  if (i !== Array.isArray(o)) throw new Error(`flat2json: '${n}' uses a ${i ? "array index" : "key"} where the tree already has a ${Array.isArray(o) ? "array" : "object"}`);
2850
2857
  if (s) {
2851
2858
  if (Array.isArray(o)) {
@@ -2869,23 +2876,23 @@ function Ko(e) {
2869
2876
  }
2870
2877
  return null === t ? {} : t;
2871
2878
  }
2872
- function Yo(e, t) {
2879
+ function Bo(e, t) {
2873
2880
  return e === t || null !== e && null !== t && "object" == typeof e && "object" == typeof t && JSON.stringify(e) === JSON.stringify(t);
2874
2881
  }
2875
- function Bo(e, t) {
2882
+ function Jo(e, t) {
2876
2883
  const n = e && "object" == typeof e ? e : {}, r = t && "object" == typeof t ? t : {}, l = {
2877
2884
  added: {},
2878
2885
  removed: {},
2879
2886
  changed: {}
2880
2887
  };
2881
- for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? Yo(n[e], r[e]) || gl(l.changed, e, {
2888
+ for (const e of Object.keys(n)) Object.prototype.hasOwnProperty.call(r, e) ? Bo(n[e], r[e]) || gl(l.changed, e, {
2882
2889
  from: n[e],
2883
2890
  to: r[e]
2884
2891
  }) : gl(l.removed, e, n[e]);
2885
2892
  for (const e of Object.keys(r)) Object.prototype.hasOwnProperty.call(n, e) || gl(l.added, e, r[e]);
2886
2893
  return l;
2887
2894
  }
2888
- function Jo(e, t) {
2895
+ function qo(e, t) {
2889
2896
  if (null === e || "object" != typeof e || Array.isArray(e)) throw new Error("flat_apply: a flat json is an object of id -> value");
2890
2897
  if (null === t || "object" != typeof t) throw new Error("flat_apply: a diff is the object flat_diff() answers");
2891
2898
  for (const n of Object.keys(t.removed || {})) delete e[n];
@@ -2897,36 +2904,36 @@ function Jo(e, t) {
2897
2904
  }
2898
2905
  return e;
2899
2906
  }
2900
- function qo(e) {
2907
+ function Ho(e) {
2901
2908
  return "persistent-attrs-" + Rt(e);
2902
2909
  }
2903
- function Ho(e, t) {
2904
- let n = Xt(e, v.SDF_PERSIST), r = Cl(qo(e), null, !1);
2910
+ function zo(e, t) {
2911
+ let n = Xt(e, v.SDF_PERSIST), r = Cl(Ho(e), null, !1);
2905
2912
  if (r && Yr(r)) {
2906
2913
  let l = kl(e, r, t, !1);
2907
2914
  l = kl(e, l, n, !1), on(e, l, v.SDF_PERSIST);
2908
2915
  }
2909
2916
  }
2910
- function zo(e, t) {
2911
- let n = kl(e, Xt(e, v.SDF_PERSIST), t, !1), r = Cl(qo(e), null, !1);
2912
- return r && Yr(r) && kr(n, r), Ll(qo(e), n);
2913
- }
2914
2917
  function Qo(e, t) {
2915
- let n = Il(e, Cl(qo(e), null, !1), t, !1);
2916
- 0 === Mr(n) ? Pl(qo(e)) : Ll(qo(e), n);
2918
+ let n = kl(e, Xt(e, v.SDF_PERSIST), t, !1), r = Cl(Ho(e), null, !1);
2919
+ return r && Yr(r) && kr(n, r), Ll(Ho(e), n);
2917
2920
  }
2918
2921
  function Xo(e, t) {
2919
- let n = Cl(qo(e), null, !1), r = {};
2922
+ let n = Il(e, Cl(Ho(e), null, !1), t, !1);
2923
+ 0 === Mr(n) ? Pl(Ho(e)) : Ll(Ho(e), n);
2924
+ }
2925
+ function Zo(e, t) {
2926
+ let n = Cl(Ho(e), null, !1), r = {};
2920
2927
  return n && Yr(n) && (r = kl(e, n, t, !1)), r;
2921
2928
  }
2922
- function Zo(e) {
2929
+ function ei(e) {
2923
2930
  if (Br(e) && 1 === xr(e)) {
2924
2931
  let t = e[0];
2925
2932
  return cl(t, "size") ? t.size : 1;
2926
2933
  }
2927
2934
  return xr(e);
2928
2935
  }
2929
- function ei(e, t) {
2936
+ function ti(e, t) {
2930
2937
  if (Jr(t)) {
2931
2938
  if (-1 === t.indexOf("^")) {
2932
2939
  let n, r, l = e.fkey;
@@ -2956,11 +2963,11 @@ function ei(e, t) {
2956
2963
  hook_name: t.hook_name
2957
2964
  } : (ir("bad fkey 3"), ir(e), ir(t), null);
2958
2965
  }
2959
- function ti(e, t) {
2960
- let n = ei(e, t);
2966
+ function ni(e, t) {
2967
+ let n = ti(e, t);
2961
2968
  return n ? n.topic_name + "^" + n.id + "^" + n.hook_name : null;
2962
2969
  }
2963
- function ni(e, t) {
2970
+ function ri(e, t) {
2964
2971
  if (Jr(t)) {
2965
2972
  if (-1 === t.indexOf("^")) {
2966
2973
  let n, r = e.hook;
@@ -2987,7 +2994,7 @@ function ni(e, t) {
2987
2994
  id: t.id
2988
2995
  } : (ir("bad hook 3"), ir(e), ir(t), null);
2989
2996
  }
2990
- var ri = [
2997
+ var li = [
2991
2998
  "string",
2992
2999
  "integer",
2993
3000
  "object",
@@ -2997,7 +3004,7 @@ var ri = [
2997
3004
  "real",
2998
3005
  "boolean",
2999
3006
  "blob"
3000
- ], li = [
3007
+ ], oi = [
3001
3008
  "persistent",
3002
3009
  "required",
3003
3010
  "notnull",
@@ -3009,7 +3016,7 @@ var ri = [
3009
3016
  "stats",
3010
3017
  "rstats",
3011
3018
  "pstats"
3012
- ], oi = [
3019
+ ], ii = [
3013
3020
  "hook",
3014
3021
  "fkey",
3015
3022
  "enum",
@@ -3038,7 +3045,7 @@ var ri = [
3038
3045
  "coordinates",
3039
3046
  "gbuffer"
3040
3047
  ];
3041
- function ii(e) {
3048
+ function si(e) {
3042
3049
  let t = {
3043
3050
  name: e.id,
3044
3051
  header: e.header,
@@ -3057,7 +3064,7 @@ function ii(e) {
3057
3064
  if (!e.flag) return t;
3058
3065
  for (let n = 0; n < e.flag.length; n++) {
3059
3066
  let r = e.flag[n];
3060
- if (Yl(oi, r)) {
3067
+ if (Yl(ii, r)) {
3061
3068
  switch (r) {
3062
3069
  case "enum":
3063
3070
  t.enum_list = e.enum;
@@ -3071,7 +3078,7 @@ function ii(e) {
3071
3078
  case "file": t.is_file = !0;
3072
3079
  }
3073
3080
  t.type = r;
3074
- } else if (Yl(li, r)) switch (r) {
3081
+ } else if (Yl(oi, r)) switch (r) {
3075
3082
  case "writable":
3076
3083
  t.is_writable = !0;
3077
3084
  break;
@@ -3084,7 +3091,7 @@ function ii(e) {
3084
3091
  }
3085
3092
  return t.is_file && (t.type = "file"), t;
3086
3093
  }
3087
- function si(e, t) {
3094
+ function ai(e, t) {
3088
3095
  let n = {
3089
3096
  name: e,
3090
3097
  header: e,
@@ -3102,9 +3109,9 @@ function si(e, t) {
3102
3109
  let e = t.split(".");
3103
3110
  for (let t = 0; t < e.length; t++) {
3104
3111
  let r = e[t];
3105
- if (Yl(ri, r)) n.real_type || (n.real_type = r);
3106
- else if (Yl(oi, r)) n.type || (n.type = r);
3107
- else if (Yl(li, r)) switch (r) {
3112
+ if (Yl(li, r)) n.real_type || (n.real_type = r);
3113
+ else if (Yl(ii, r)) n.type || (n.type = r);
3114
+ else if (Yl(oi, r)) switch (r) {
3108
3115
  case "writable":
3109
3116
  n.is_writable = !0;
3110
3117
  break;
@@ -3116,10 +3123,10 @@ function si(e, t) {
3116
3123
  }
3117
3124
  }
3118
3125
  n.real_type || (n.real_type = "string");
3119
- } else Yr(t) ? (n = ii(t), n.name || (n.name = e), n.header || (n.header = e)) : Br(t) && (n.real_type = "array", n.enum_list = t);
3126
+ } else Yr(t) ? (n = si(t), n.name || (n.name = e), n.header || (n.header = e)) : Br(t) && (n.real_type = "array", n.enum_list = t);
3120
3127
  return n.type || (n.type = n.real_type), n;
3121
3128
  }
3122
- function ai(e, t) {
3129
+ function ui(e, t) {
3123
3130
  let n = {};
3124
3131
  return t || (t = {}), Object.entries(e).forEach(([e, r]) => {
3125
3132
  let l;
@@ -3128,23 +3135,23 @@ function ai(e, t) {
3128
3135
  Lr(n, e, o);
3129
3136
  }), n;
3130
3137
  }
3131
- var ui = [
3138
+ var _i = [
3132
3139
  N(T.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
3133
3140
  N(T.DTP_BOOLEAN, "periodic", 0, 0, "True for periodic timeouts"),
3134
3141
  N(T.DTP_INTEGER, "msec", 0, 0, "Timeout in milliseconds"),
3135
3142
  S()
3136
- ], _i = {
3143
+ ], ci = {
3137
3144
  periodic: !1,
3138
3145
  msec: 0,
3139
3146
  timer_id: -1
3140
- }, ci = null;
3141
- function fi(e, t, n, r) {
3147
+ }, fi = null;
3148
+ function gi(e, t, n, r) {
3142
3149
  let l = e.priv, o = l.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
3143
3150
  return l.periodic && l.msec > 0 ? l.timer_id = setTimeout(function() {
3144
3151
  Tn(e, "EV_TIMEOUT", {}, e);
3145
3152
  }, l.msec) : l.timer_id = -1, It(e) ? Tn(At(e), o, {}, e) : Pn(e, o, {}), l.periodic || -1 !== l.timer_id || Et(e) && gt(e), 0;
3146
3153
  }
3147
- var gi = {
3154
+ var di = {
3148
3155
  mt_create: function(e) {
3149
3156
  let t = e.priv;
3150
3157
  const n = nn(e, "subscriber");
@@ -3169,31 +3176,31 @@ var gi = {
3169
3176
  },
3170
3177
  mt_destroy: function(e) {}
3171
3178
  };
3172
- function di() {
3179
+ function bi() {
3173
3180
  return function(e) {
3174
- if (ci) return ir(`GClass ALREADY created: ${e}`), -1;
3181
+ if (fi) return ir(`GClass ALREADY created: ${e}`), -1;
3175
3182
  const t = [["ST_IDLE", [[
3176
3183
  "EV_TIMEOUT",
3177
- fi,
3184
+ gi,
3178
3185
  null
3179
3186
  ]]]];
3180
- return (ci = Ae(e, [
3187
+ return (fi = Ae(e, [
3181
3188
  ["EV_TIMEOUT", U.EVF_OUTPUT_EVENT],
3182
3189
  ["EV_TIMEOUT_PERIODIC", U.EVF_OUTPUT_EVENT],
3183
3190
  [0, 0]
3184
- ], t, gi, 0, ui, _i, 0, 0, 0, C.gcflag_manual_start)) ? 0 : -1;
3191
+ ], t, di, 0, _i, ci, 0, 0, 0, C.gcflag_manual_start)) ? 0 : -1;
3185
3192
  }("C_TIMER");
3186
3193
  }
3187
- function bi(e, t) {
3194
+ function pi(e, t) {
3188
3195
  return e instanceof I ? "C_TIMER" !== $t(e) ? (ir("not C_TIMER GObj"), -1) : (sn(e, "periodic", !1), void an(e, "msec", t)) : (ir("not GObj TYPE"), -1);
3189
3196
  }
3190
- function pi(e, t) {
3197
+ function mi(e, t) {
3191
3198
  return e instanceof I ? "C_TIMER" !== $t(e) ? (ir("not C_TIMER GObj"), -1) : (sn(e, "periodic", !0), void an(e, "msec", t)) : (ir("not GObj TYPE"), -1);
3192
3199
  }
3193
- function mi(e) {
3200
+ function hi(e) {
3194
3201
  return e instanceof I ? "C_TIMER" !== $t(e) ? (ir("not C_TIMER GObj"), -1) : void an(e, "msec", -1) : (ir("not GObj TYPE"), -1);
3195
3202
  }
3196
- var hi = [
3203
+ var Ei = [
3197
3204
  N(T.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
3198
3205
  N(T.DTP_BOOLEAN, "browser_beforeunload", 0, !1, "Set true to refreshing browser"),
3199
3206
  N(T.DTP_STRING, "__username__", 0, "", "Username"),
@@ -3213,26 +3220,26 @@ var hi = [
3213
3220
  N(T.DTP_BOOLEAN, "developer", 0, !1, "Developer mode enabled"),
3214
3221
  N(T.DTP_INTEGER, "periodic_timeout", 0, "1000", "Timeout periodic, in miliseconds."),
3215
3222
  S()
3216
- ], Ei = { gobj_timer: null }, yi = null;
3217
- function Ti(e, t, n, r) {
3223
+ ], yi = { gobj_timer: null }, Ti = null;
3224
+ function vi(e, t, n, r) {
3218
3225
  let l = Qt(e, t);
3219
3226
  return Yr(l) || (l = {}), l[n] = r, rn(e, t, l), He(e, t);
3220
3227
  }
3221
- function vi(e) {
3228
+ function Oi(e) {
3222
3229
  if (!0 === e || !1 === e) return e;
3223
3230
  let t = String(null == e ? "" : e).toLowerCase();
3224
3231
  return "true" === t || "set" === t || "false" !== t && "reset" !== t && ("" === t || isNaN(Number(t)) ? null : !!Number(t));
3225
3232
  }
3226
- function Oi() {
3233
+ function Si() {
3227
3234
  return `${Nt()}^${St()}`;
3228
3235
  }
3229
- function Si(e, t, n, r) {
3236
+ function Ni(e, t, n, r) {
3230
3237
  return Pn(e, t, n), 0;
3231
3238
  }
3232
- var Ni = {
3239
+ var wi = {
3233
3240
  mt_create: function(e) {
3234
3241
  let t = e.priv;
3235
- un(e, "start_date", Do()), un(e, "node_uuid", Io()), e.priv.gobj_timer = ot(jt(e), "C_TIMER", {}, e), t.periodic_timeout = Qt(e, "periodic_timeout"), function(e) {
3242
+ un(e, "start_date", Ao()), un(e, "node_uuid", Co()), e.priv.gobj_timer = ot(jt(e), "C_TIMER", {}, e), t.periodic_timeout = Qt(e, "periodic_timeout"), function(e) {
3236
3243
  let t = Qt(e, "trace_levels");
3237
3244
  if (!Yr(t)) return 0;
3238
3245
  let n = t.__global_trace__;
@@ -3266,10 +3273,10 @@ var Ni = {
3266
3273
  },
3267
3274
  mt_writing: function(e, t) {},
3268
3275
  mt_start: function(e) {
3269
- return pi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3276
+ return mi(e.priv.gobj_timer, e.priv.periodic_timeout), 0;
3270
3277
  },
3271
3278
  mt_stop: function(e) {
3272
- return mi(e.priv.gobj_timer), bt(e), 0;
3279
+ return hi(e.priv.gobj_timer), bt(e), 0;
3273
3280
  },
3274
3281
  mt_destroy: function(e) {},
3275
3282
  mt_play: function(e) {
@@ -3286,35 +3293,35 @@ var Ni = {
3286
3293
  case "get-global-no-trace": return o(0, 0, null, null, de());
3287
3294
  case "set-global-trace":
3288
3295
  case "set-global-no-trace": {
3289
- let r = "set-global-no-trace" === t, l = n.level, i = vi(n.set);
3290
- return l ? null === i ? o(0, -1, `${Oi()}: bitmask set or re-set?`, null, null) : (r ? ae(l, i) : se(l, i)) < 0 ? o(0, -1, `${Oi()}: global trace level not found: ${l}`, null, null) : r ? (Ti(e, "no_trace_levels", "__global_no_trace__", de()), o(0, 0, null, null, de())) : (Ti(e, "trace_levels", "__global_trace__", ge()), o(0, 0, null, null, ge())) : o(0, -1, `${Oi()}: what level?`, null, null);
3296
+ let r = "set-global-no-trace" === t, l = n.level, i = Oi(n.set);
3297
+ return l ? null === i ? o(0, -1, `${Si()}: bitmask set or re-set?`, null, null) : (r ? ae(l, i) : se(l, i)) < 0 ? o(0, -1, `${Si()}: global trace level not found: ${l}`, null, null) : r ? (vi(e, "no_trace_levels", "__global_no_trace__", de()), o(0, 0, null, null, de())) : (vi(e, "trace_levels", "__global_trace__", ge()), o(0, 0, null, null, ge())) : o(0, -1, `${Si()}: what level?`, null, null);
3291
3298
  }
3292
3299
  case "get-gclass-trace":
3293
3300
  case "get-gclass-no-trace":
3294
3301
  case "set-gclass-trace":
3295
3302
  case "set-gclass-no-trace": {
3296
3303
  let r = t.indexOf("no-trace") >= 0, l = n.gclass_name || n.gclass || "", i = Me(l);
3297
- if (!i) return o(0, -1, `${Oi()}: what gclass is '${l}'?`, null, null);
3304
+ if (!i) return o(0, -1, `${Si()}: what gclass is '${l}'?`, null, null);
3298
3305
  if (0 === t.indexOf("get-")) return o(0, 0, null, null, r ? me(i) : be(i));
3299
- let s = n.level, a = vi(n.set);
3300
- return s ? null === a ? o(0, -1, `${Oi()}: bitmask set or re-set?`, null, null) : (r ? Te(i, s, a) : Ee(i, s, a)) < 0 ? o(0, -1, `${Oi()}: trace level of ${l} not found: ${s}`, null, null) : r ? (Ti(e, "no_trace_levels", l, me(i)), o(0, 0, null, null, me(i))) : (Ti(e, "trace_levels", l, pe(i)), o(0, 0, null, null, be(i))) : o(0, -1, `${Oi()}: what level?`, null, null);
3306
+ let s = n.level, a = Oi(n.set);
3307
+ return s ? null === a ? o(0, -1, `${Si()}: bitmask set or re-set?`, null, null) : (r ? Te(i, s, a) : Ee(i, s, a)) < 0 ? o(0, -1, `${Si()}: trace level of ${l} not found: ${s}`, null, null) : r ? (vi(e, "no_trace_levels", l, me(i)), o(0, 0, null, null, me(i))) : (vi(e, "trace_levels", l, pe(i)), o(0, 0, null, null, be(i))) : o(0, -1, `${Si()}: what level?`, null, null);
3301
3308
  }
3302
- default: return o(0, -1, `${Oi()}: command not available: ${t}`, null, null);
3309
+ default: return o(0, -1, `${Si()}: command not available: ${t}`, null, null);
3303
3310
  }
3304
3311
  }
3305
3312
  };
3306
- function wi() {
3313
+ function ji() {
3307
3314
  return function(e) {
3308
- if (yi) return ir(`GClass ALREADY created: ${e}`), -1;
3315
+ if (Ti) return ir(`GClass ALREADY created: ${e}`), -1;
3309
3316
  const t = [["ST_IDLE", [[
3310
3317
  "EV_TIMEOUT_PERIODIC",
3311
- Si,
3318
+ Ni,
3312
3319
  null
3313
3320
  ]]]];
3314
- return (yi = Ae(e, [["EV_TIMEOUT_PERIODIC", U.EVF_OUTPUT_EVENT | U.EVF_NO_WARN_SUBS], [0, 0]], t, Ni, 0, hi, Ei, 0, 0, 0, 0)) ? 0 : -1;
3321
+ return (Ti = Ae(e, [["EV_TIMEOUT_PERIODIC", U.EVF_OUTPUT_EVENT | U.EVF_NO_WARN_SUBS], [0, 0]], t, wi, 0, Ei, yi, 0, 0, 0, 0)) ? 0 : -1;
3315
3322
  }("C_YUNO");
3316
3323
  }
3317
- var ji = "ievent_gate_stack", $i = [
3324
+ var $i = "ievent_gate_stack", Ri = [
3318
3325
  N(T.DTP_STRING, "wanted_yuno_role", v.SDF_RD, "", "wanted yuno role"),
3319
3326
  N(T.DTP_STRING, "wanted_yuno_name", v.SDF_RD, "", "wanted yuno name"),
3320
3327
  N(T.DTP_STRING, "wanted_yuno_service", v.SDF_RD, "", "wanted yuno service"),
@@ -3331,15 +3338,15 @@ var ji = "ievent_gate_stack", $i = [
3331
3338
  N(T.DTP_INTEGER, "timeout_idack", v.SDF_RD, "5000", "timeout waiting idAck"),
3332
3339
  N(T.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
3333
3340
  S()
3334
- ], Ri = [
3341
+ ], Di = [
3335
3342
  ["ievents", "Trace inter-events with metadata of kw"],
3336
3343
  ["ievents2", "Trace inter-events with full kw"],
3337
3344
  ["identity-card", "Trace identity_card messages"]
3338
3345
  ];
3339
- function Di(e) {
3346
+ function Ai(e) {
3340
3347
  return !!(3 & Z(e));
3341
3348
  }
3342
- var Ai = {
3349
+ var ki = {
3343
3350
  url: null,
3344
3351
  remote_yuno_name: null,
3345
3352
  remote_yuno_role: null,
@@ -3349,8 +3356,8 @@ var Ai = {
3349
3356
  websocket: null,
3350
3357
  inside_on_open: !1,
3351
3358
  retry_ms: 0
3352
- }, ki = null;
3353
- function Ii(e) {
3359
+ }, Ii = null;
3360
+ function Ci(e) {
3354
3361
  e.priv.websocket && ir("Websocket ALREADY setup");
3355
3362
  const t = tn(e, "url");
3356
3363
  ur(`====> Starting WebSocket to '${t}' (${Rt(e)})`);
@@ -3365,7 +3372,7 @@ function Ii(e) {
3365
3372
  code: 1006,
3366
3373
  reason: r.message,
3367
3374
  was_clean: !1
3368
- }, e) < 0 && bi(e.priv.gobj_timer, Ki(e)), null;
3375
+ }, e) < 0 && pi(e.priv.gobj_timer, Yi(e)), null;
3369
3376
  }
3370
3377
  return r ? (r.onopen = () => {
3371
3378
  n !== e.priv.ws_seq || Ct(e) || Tn(e, "EV_ON_OPEN", {
@@ -3387,7 +3394,7 @@ function Ii(e) {
3387
3394
  }, e));
3388
3395
  }, r) : (ir(`${Rt(e)}: Failed to initialize WebSocket.`), null);
3389
3396
  }
3390
- function Ci(e, t = 1e3, n = "") {
3397
+ function Li(e, t = 1e3, n = "") {
3391
3398
  let r = e.priv, l = r.websocket;
3392
3399
  if (r.websocket = null, l && l.readyState !== WebSocket.CLOSED && l.readyState !== WebSocket.CLOSING) {
3393
3400
  ur(`Closing WebSocket (Code: ${t}, Reason: "${n}")`);
@@ -3398,25 +3405,25 @@ function Ci(e, t = 1e3, n = "") {
3398
3405
  }
3399
3406
  } else sr("WebSocket is already closed or in the process of closing.");
3400
3407
  }
3401
- function Li(e, t, n) {
3402
- let r = Do();
3408
+ function Pi(e, t, n) {
3409
+ let r = Ao();
3403
3410
  try {
3404
3411
  ur("\n" + r + " " + t + "\n"), wr(n);
3405
3412
  } catch (e) {
3406
3413
  ur("ERROR in trace_inter_event: " + e);
3407
3414
  }
3408
3415
  }
3409
- var Pi = class {
3416
+ var Ui = class {
3410
3417
  constructor(e, t) {
3411
3418
  this.event = e, this.kw = t || {};
3412
3419
  }
3413
3420
  };
3414
- function Ui(e, t, n, r) {
3421
+ function Fi(e, t, n, r) {
3415
3422
  return function(e, t) {
3416
3423
  let n = e.priv, r = JSON.stringify(t);
3417
- if (Di(e)) {
3424
+ if (Ai(e)) {
3418
3425
  let n = tn(e, "url"), l = jt(Ot()) + " ==> " + n, o = Qt(Ot(), "trace_ievent_callback");
3419
- o ? o(l, t, 1, r.length) : Li(0, l, t);
3426
+ o ? o(l, t, 1, r.length) : Pi(0, l, t);
3420
3427
  }
3421
3428
  if (!n.websocket || n.websocket.readyState !== WebSocket.OPEN) return sr(`${Rt(e)}: send_iev(): websocket not open, message lost`), -1;
3422
3429
  try {
@@ -3426,10 +3433,10 @@ function Ui(e, t, n, r) {
3426
3433
  }
3427
3434
  return 0;
3428
3435
  }(e, function(e, t) {
3429
- return tl(e) ? (ir("iev_create() event NULL"), null) : new Pi(e, t);
3436
+ return tl(e) ? (ir("iev_create() event NULL"), null) : new Ui(e, t);
3430
3437
  }(t, n));
3431
3438
  }
3432
- function Fi(e, t, n) {
3439
+ function Vi(e, t, n) {
3433
3440
  return tl(n) && (n = tn(e, "wanted_yuno_service")), {
3434
3441
  dst_yuno: tn(e, "wanted_yuno_name"),
3435
3442
  dst_role: tn(e, "wanted_yuno_role"),
@@ -3437,10 +3444,10 @@ function Fi(e, t, n) {
3437
3444
  src_yuno: St(),
3438
3445
  src_role: Nt(),
3439
3446
  src_service: t,
3440
- host: Io()
3447
+ host: Co()
3441
3448
  };
3442
3449
  }
3443
- function Vi(e) {
3450
+ function Gi(e) {
3444
3451
  let t = e.priv, n = vt(Ot()), r = tn(Ot(), "yuno_version"), l = tn(Ot(), "yuno_release"), o = tn(Ot(), "yuno_tag"), i = Qt(e, "required_services");
3445
3452
  i && i.length || (i = Qt(Ot(), "required_services"));
3446
3453
  let s = {
@@ -3458,27 +3465,27 @@ function Vi(e) {
3458
3465
  username: tn(Ot(), "__username__"),
3459
3466
  launch_id: 0,
3460
3467
  yuno_startdate: tn(Ot(), "start_date"),
3461
- id: Io(),
3468
+ id: Co(),
3462
3469
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
3463
3470
  language: "undefined" != typeof window ? window.navigator.language : "",
3464
3471
  required_services: i
3465
3472
  };
3466
- return zl(e, s, ji, Fi(e, jt(At(e)), null)), Xl(e, s, "__identity__"), bi(t.gobj_timer, en(e, "timeout_idack")), Ui(e, "EV_IDENTITY_CARD", s);
3473
+ return zl(e, s, $i, Vi(e, jt(At(e)), null)), Xl(e, s, "__identity__"), pi(t.gobj_timer, en(e, "timeout_idack")), Fi(e, "EV_IDENTITY_CARD", s);
3467
3474
  }
3468
- function Gi(e, t) {
3475
+ function Mi(e, t) {
3469
3476
  if (tl(t.event)) return -1;
3470
3477
  let n = {}, r = t.__global__, l = t.__config__, o = t.__filter__, i = t.__service__, s = t.subscriber;
3471
3478
  l && (n.__config__ = l), r && (n.__global__ = r), o && (n.__filter__ = o);
3472
- return zl(e, n, ji, Fi(e, jt(s), i)), Xl(e, n, "__subscribing__"), Ui(e, t.event, n);
3473
- }
3474
- function Mi(e, t, n, r) {
3475
- let l = e.priv;
3476
- return Et(e) && (l.websocket = Ii(e)), 0;
3479
+ return zl(e, n, $i, Vi(e, jt(s), i)), Xl(e, n, "__subscribing__"), Fi(e, t.event, n);
3477
3480
  }
3478
3481
  function Wi(e, t, n, r) {
3479
- return ur("Websocket opened: " + e.priv.url), Vi(e), 0;
3482
+ let l = e.priv;
3483
+ return Et(e) && (l.websocket = Ci(e)), 0;
3480
3484
  }
3481
3485
  function xi(e, t, n, r) {
3486
+ return ur("Websocket opened: " + e.priv.url), Gi(e), 0;
3487
+ }
3488
+ function Ki(e, t, n, r) {
3482
3489
  let l = e.priv, o = n.url;
3483
3490
  return void 0 !== n.ws_seq && n.ws_seq !== l.ws_seq || (rr(), sr(`${Rt(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, Pn(e, "EV_ON_CLOSE", {
3484
3491
  url: o,
@@ -3493,25 +3500,25 @@ function xi(e, t, n, r) {
3493
3500
  code: n.code,
3494
3501
  reason: n.reason,
3495
3502
  was_clean: n.was_clean
3496
- })), Et(e) && bi(l.gobj_timer, Ki(e))), 0;
3503
+ })), Et(e) && pi(l.gobj_timer, Yi(e))), 0;
3497
3504
  }
3498
- function Ki(e) {
3505
+ function Yi(e) {
3499
3506
  let t = e.priv, n = en(e, "timeout_retry"), r = en(e, "timeout_retry_max");
3500
3507
  r < n && (r = n), t.retry_ms = t.retry_ms ? Math.min(2 * t.retry_ms, r) : n;
3501
3508
  let l = .2 * t.retry_ms, o = t.retry_ms - l + 2 * Math.random() * l;
3502
3509
  return Math.max(1, Math.round(o));
3503
3510
  }
3504
- function Yi(e, t, n, r) {
3505
- return Vi(e), 0;
3506
- }
3507
3511
  function Bi(e, t, n, r) {
3512
+ return Gi(e), 0;
3513
+ }
3514
+ function Ji(e, t, n, r) {
3508
3515
  let l = e.priv;
3509
- mi(l.gobj_timer);
3510
- let o = Ql(e, n, ji, !0), i = yl(e, o, "src_yuno", ""), s = yl(e, o, "src_role", ""), a = yl(e, o, "src_service", "");
3516
+ hi(l.gobj_timer);
3517
+ let o = Ql(e, n, $i, !0), i = yl(e, o, "src_yuno", ""), s = yl(e, o, "src_role", ""), a = yl(e, o, "src_service", "");
3511
3518
  un(e, "remote_yuno_name", i), un(e, "remote_yuno_role", s), un(e, "remote_yuno_service", a);
3512
3519
  let u = hl(e, n, "result", -1, 0), _ = yl(e, n, "comment", "", 0), c = yl(e, n, "username", "", 0), f = Ol(e, n, "services_roles", {});
3513
3520
  if (u < 0) {
3514
- Ci(e);
3521
+ Li(e);
3515
3522
  let t = {
3516
3523
  url: tn(e, "url"),
3517
3524
  result: u,
@@ -3536,12 +3543,12 @@ function Bi(e, t, n, r) {
3536
3543
  }
3537
3544
  l.inside_on_open = !1, function(e) {
3538
3545
  let t = In(e, null, null, null);
3539
- for (let n = 0; n < t.length; n++) Gi(e, t[n]);
3546
+ for (let n = 0; n < t.length; n++) Mi(e, t[n]);
3540
3547
  }(e);
3541
3548
  }
3542
3549
  return 0;
3543
3550
  }
3544
- function Ji(e, t, n, r) {
3551
+ function qi(e, t, n, r) {
3545
3552
  let l = e.priv.url, o = function(e, t) {
3546
3553
  let n;
3547
3554
  try {
@@ -3560,19 +3567,19 @@ function Ji(e, t, n, r) {
3560
3567
  } : (sr(`${Rt(e)}: parsing inter_event: kw not a json object`), null) : (sr(`${Rt(e)}: parsing inter_kw: no kw`), null);
3561
3568
  }(e, n.data);
3562
3569
  if (!o) return sr(`${Rt(e)}: frame dropped from ${l}: ${String(n.data).substring(0, 256)}`), -1;
3563
- if (Di(e)) {
3570
+ if (Ai(e)) {
3564
3571
  let e = jt(Ot()) + " <== " + l, t = n.data.length, r = Qt(Ot(), "trace_ievent_callback");
3565
- r ? r(e, o, 2, t) : Li(0, e, o);
3572
+ r ? r(e, o, 2, t) : Pi(0, e, o);
3566
3573
  }
3567
3574
  let i = o.event, s = o.kw;
3568
3575
  if ("ST_SESSION" !== cn(e)) {
3569
3576
  if (dn(e, i, U.EVF_PUBLIC_EVENT)) {
3570
3577
  if (!(Tn(e, i, s, e) < 0)) return 0;
3571
3578
  } else ir(`${Rt(e)}: event UNKNOWN in not-session state ${i}`);
3572
- return Ci(e), -1;
3579
+ return Li(e), -1;
3573
3580
  }
3574
3581
  o = null;
3575
- let a = Zl(e, s), u = Ql(e, s, ji), _ = yl(e, u, "dst_role", "");
3582
+ let a = Zl(e, s), u = Ql(e, s, $i), _ = yl(e, u, "dst_role", "");
3576
3583
  if (_.toLowerCase() !== Nt().toLowerCase()) return ir(`"It's not my role, dst_role: ${_}, my_role: ${Nt()}`), 0;
3577
3584
  let c = yl(e, u, "dst_service", "");
3578
3585
  if ("__subscribing__" === a) return sr(`${Rt(e)}: subscription event ignored, I'm client (service: ${c}, event: ${i})`), -1;
@@ -3584,13 +3591,13 @@ function Ji(e, t, n, r) {
3584
3591
  }
3585
3592
  return It(e) ? Tn(At(e), i, s, e) : Pn(e, i, s), 0;
3586
3593
  }
3587
- function qi(e, t, n, r) {
3594
+ function Hi(e, t, n, r) {
3588
3595
  return 0;
3589
3596
  }
3590
- function Hi(e, t, n, r) {
3597
+ function zi(e, t, n, r) {
3591
3598
  return 0;
3592
3599
  }
3593
- var zi = {
3600
+ var Qi = {
3594
3601
  mt_create: function(e) {
3595
3602
  let t = e.priv;
3596
3603
  t.gobj_timer = ot(jt(e), "C_TIMER", {}, e), t.ws_seq = 0, t.url = tn(e, "url"), t.remote_yuno_name = tn(e, "remote_yuno_name"), t.remote_yuno_role = tn(e, "remote_yuno_role"), t.remote_yuno_service = tn(e, "remote_yuno_service"), un(e, "wanted_yuno_name", t.remote_yuno_name), un(e, "wanted_yuno_role", t.remote_yuno_role), un(e, "wanted_yuno_service", t.remote_yuno_service);
@@ -3620,43 +3627,43 @@ var zi = {
3620
3627
  code: 1e3,
3621
3628
  reason: "restarted",
3622
3629
  was_clean: !0
3623
- }, e), mi(t.gobj_timer)), t.websocket = Ii(e), 0;
3630
+ }, e), hi(t.gobj_timer)), t.websocket = Ci(e), 0;
3624
3631
  },
3625
3632
  mt_stop: function(e) {
3626
3633
  let t = e.priv;
3627
- return mi(t.gobj_timer), t.websocket && Ci(e), 0;
3634
+ return hi(t.gobj_timer), t.websocket && Li(e), 0;
3628
3635
  },
3629
3636
  mt_destroy: function(e) {},
3630
3637
  mt_stats: function(e, t, n, r) {
3631
3638
  if ("ST_SESSION" !== cn(e)) return ir("Not in session"), null;
3632
3639
  n || (n = {});
3633
- let l = Fi(e, jt(r), yl(e, n, "service", null, 0)), o = Ol(e, n, "__md_stats__", null, Vn.KW_EXTRACT);
3640
+ let l = Vi(e, jt(r), yl(e, n, "service", null, 0)), o = Ol(e, n, "__md_stats__", null, Vn.KW_EXTRACT);
3634
3641
  return o || (o = {}), zl(e, n, "stats_stack", {
3635
3642
  stats: t,
3636
3643
  kw: o
3637
- }), zl(e, n, ji, l), n.__stats__ = t, Xl(e, n, "__stats__"), Ui(e, "EV_MT_STATS", n, r), null;
3644
+ }), zl(e, n, $i, l), n.__stats__ = t, Xl(e, n, "__stats__"), Fi(e, "EV_MT_STATS", n, r), null;
3638
3645
  },
3639
3646
  mt_command_parser: function(e, t, n, r) {
3640
3647
  if ("ST_SESSION" !== cn(e)) return ir("Not in session"), null;
3641
3648
  n || (n = {});
3642
- let l = Fi(e, jt(r), yl(e, n, "service", "", 0)), o = Ol(e, n, "__md_command__", null, Vn.KW_EXTRACT);
3649
+ let l = Vi(e, jt(r), yl(e, n, "service", "", 0)), o = Ol(e, n, "__md_command__", null, Vn.KW_EXTRACT);
3643
3650
  return o || (o = {}), zl(e, n, "command_stack", {
3644
3651
  command: t,
3645
3652
  kw: o
3646
- }), zl(e, n, ji, l), n.__command__ = t, Xl(e, n, "__command__"), Ui(e, "EV_MT_COMMAND", n, r), null;
3653
+ }), zl(e, n, $i, l), n.__command__ = t, Xl(e, n, "__command__"), Fi(e, "EV_MT_COMMAND", n, r), null;
3647
3654
  },
3648
3655
  mt_inject_event: function(e, t, n, r) {
3649
3656
  if ("ST_SESSION" !== cn(e)) return window.console.error("Not in session"), -1;
3650
- if (n = Dr({}, Yr(n) ? n : {}), Yr(n.__md_iev__) && (n.__md_iev__ = jr(n.__md_iev__)), Ql(e, n, ji));
3657
+ if (n = Dr({}, Yr(n) ? n : {}), Yr(n.__md_iev__) && (n.__md_iev__ = jr(n.__md_iev__)), Ql(e, n, $i));
3651
3658
  else {
3652
- let l = Fi(e, jt(r), yl(e, n, "__service__", 0, 0));
3653
- Cr(n, "__service__"), zl(e, n, "__message__", t), zl(e, n, ji, l);
3659
+ let l = Vi(e, jt(r), yl(e, n, "__service__", 0, 0));
3660
+ Cr(n, "__service__"), zl(e, n, "__message__", t), zl(e, n, $i, l);
3654
3661
  }
3655
- return Xl(e, n, "__message__"), Ui(e, t, n, r);
3662
+ return Xl(e, n, "__message__"), Fi(e, t, n, r);
3656
3663
  },
3657
3664
  mt_subscription_added: function(e, t) {
3658
3665
  let n = e.priv;
3659
- return "ST_SESSION" === cn(e) && n.websocket ? n.inside_on_open ? 0 : Gi(e, t) : 0;
3666
+ return "ST_SESSION" === cn(e) && n.websocket ? n.inside_on_open ? 0 : Mi(e, t) : 0;
3660
3667
  },
3661
3668
  mt_subscription_deleted: function(e, t) {
3662
3669
  let n = e.priv;
@@ -3665,27 +3672,27 @@ var zi = {
3665
3672
  if (tl(t.event)) return 0;
3666
3673
  let r = {}, l = t.__global__, o = t.__config__, i = t.__filter__, s = t.__service__, a = t.subscriber;
3667
3674
  o && (r.__config__ = o), l && (r.__global__ = l), i && (r.__filter__ = i);
3668
- return zl(e, r, ji, Fi(e, jt(a), s)), Xl(e, r, "__unsubscribing__"), Ui(e, t.event, r, e);
3675
+ return zl(e, r, $i, Vi(e, jt(a), s)), Xl(e, r, "__unsubscribing__"), Fi(e, t.event, r, e);
3669
3676
  }
3670
3677
  };
3671
- function Qi() {
3678
+ function Xi() {
3672
3679
  return function(e) {
3673
- if (ki) return ir(`GClass ALREADY created: ${e}`), -1;
3680
+ if (Ii) return ir(`GClass ALREADY created: ${e}`), -1;
3674
3681
  const t = [
3675
3682
  ["ST_DISCONNECTED", [
3676
3683
  [
3677
3684
  "EV_ON_OPEN",
3678
- Wi,
3685
+ xi,
3679
3686
  "ST_WAIT_IDENTITY_CARD_ACK"
3680
3687
  ],
3681
3688
  [
3682
3689
  "EV_ON_CLOSE",
3683
- xi,
3690
+ Ki,
3684
3691
  null
3685
3692
  ],
3686
3693
  [
3687
3694
  "EV_TIMEOUT",
3688
- Mi,
3695
+ Wi,
3689
3696
  null
3690
3697
  ],
3691
3698
  [
@@ -3697,22 +3704,22 @@ function Qi() {
3697
3704
  ["ST_WAIT_IDENTITY_CARD_ACK", [
3698
3705
  [
3699
3706
  "EV_ON_MESSAGE",
3700
- Ji,
3707
+ qi,
3701
3708
  null
3702
3709
  ],
3703
3710
  [
3704
3711
  "EV_IDENTITY_CARD_ACK",
3705
- Bi,
3712
+ Ji,
3706
3713
  null
3707
3714
  ],
3708
3715
  [
3709
3716
  "EV_ON_CLOSE",
3710
- xi,
3717
+ Ki,
3711
3718
  "ST_DISCONNECTED"
3712
3719
  ],
3713
3720
  [
3714
3721
  "EV_TIMEOUT",
3715
- Yi,
3722
+ Bi,
3716
3723
  null
3717
3724
  ],
3718
3725
  [
@@ -3724,22 +3731,22 @@ function Qi() {
3724
3731
  ["ST_SESSION", [
3725
3732
  [
3726
3733
  "EV_ON_MESSAGE",
3727
- Ji,
3734
+ qi,
3728
3735
  null
3729
3736
  ],
3730
3737
  [
3731
3738
  "EV_MT_STATS",
3732
- qi,
3739
+ Hi,
3733
3740
  null
3734
3741
  ],
3735
3742
  [
3736
3743
  "EV_MT_COMMAND",
3737
- Hi,
3744
+ zi,
3738
3745
  null
3739
3746
  ],
3740
3747
  [
3741
3748
  "EV_ON_CLOSE",
3742
- xi,
3749
+ Ki,
3743
3750
  "ST_DISCONNECTED"
3744
3751
  ],
3745
3752
  [
@@ -3750,7 +3757,7 @@ function Qi() {
3750
3757
  ]],
3751
3758
  [null, null]
3752
3759
  ];
3753
- return (ki = Ae(e, [
3760
+ return (Ii = Ae(e, [
3754
3761
  ["EV_ON_MESSAGE", U.EVF_OUTPUT_EVENT],
3755
3762
  ["EV_IDENTITY_CARD_ACK", U.EVF_PUBLIC_EVENT],
3756
3763
  ["EV_ON_ID_NAK", U.EVF_PUBLIC_EVENT | U.EVF_OUTPUT_EVENT],
@@ -3761,9 +3768,9 @@ function Qi() {
3761
3768
  ["EV_ON_OPEN_ERROR", U.EVF_OUTPUT_EVENT | U.EVF_NO_WARN_SUBS],
3762
3769
  ["EV_TIMEOUT", 0],
3763
3770
  [null, 0]
3764
- ], t, zi, 0, $i, Ai, 0, 0, Ri, C.gcflag_no_check_output_events)) ? 0 : -1;
3771
+ ], t, Qi, 0, Ri, ki, 0, 0, Di, C.gcflag_no_check_output_events)) ? 0 : -1;
3765
3772
  }("C_IEVENT_CLI");
3766
3773
  }
3767
- export { I as GObj, N as SDATA, R as SDATAAUTHZ, w as SDATACM, j as SDATACM2, A as SDATADF, $ as SDATAPM, D as SDATAPM0, S as SDATA_END, O as SDataDesc, a as YUNETA_VERSION, h as __yuno__, o as build_command_response, Uo as build_path, s as build_stats_response, Co as clean_name, mi as clear_timeout, il as cmp_two_simple_json, l as command_parser, No as createElement2, So as createOneHtml, _o as create_json_record, ai as create_template_record, Do as current_timestamp, T as data_type_t, Xo as db_list_persistent_attrs, Ho as db_load_persistent_attrs, Qo as db_remove_persistent_attrs, zo as db_save_persistent_attrs, Po as debounce, Jl as delete_from_list, $r as duplicate_objects, Kr as empty_json, tl as empty_string, go as escapeHtml, U as event_flag_t, Ko as flat2json, Jo as flat_apply, Bo as flat_diff, Mo as flat_key_join, Wo as flat_key_split, Pe as gclass_add_ev_action, Fe as gclass_add_event_type, Le as gclass_add_state, Ge as gclass_check_fsm, Ae as gclass_create, Ve as gclass_event_type, Me as gclass_find_by_name, C as gclass_flag_t, ke as gclass_unregister, wo as getPositionRelativeToBody, Lo as get_function_name, Ao as get_now, Lt as gobj_bottom_gobj, fn as gobj_change_parent, _n as gobj_change_state, Un as gobj_command, it as gobj_create, et as gobj_create2, rt as gobj_create_default_service, ot as gobj_create_pure_child, nt as gobj_create_service, lt as gobj_create_volatil, tt as gobj_create_yuno, cn as gobj_current_state, xe as gobj_default_service, yn as gobj_deliver_posted_events, st as gobj_destroy, Bt as gobj_find_child, Kt as gobj_find_gobj, Ke as gobj_find_service, Ln as gobj_find_subscribings, In as gobj_find_subscriptions, L as gobj_flag_t, Dt as gobj_full_name, $t as gobj_gclass_name, be as gobj_get_gclass_trace_level, pe as gobj_get_gclass_trace_level2, me as gobj_get_gclass_trace_no_level, ge as gobj_get_global_trace_level, de as gobj_get_global_trace_no_level, ue as gobj_global_trace_level, _e as gobj_global_trace_no_level, zt as gobj_has_attr, dn as gobj_has_event, bn as gobj_has_output_event, $e as gobj_hsdata, Ct as gobj_is_destroying, vt as gobj_is_playing, It as gobj_is_pure_child, Et as gobj_is_running, Tt as gobj_is_service, kt as gobj_is_volatil, Qe as gobj_list_persistent_attrs, Cn as gobj_list_subscriptions, qe as gobj_load_persistent_attrs, Jt as gobj_match_children, qt as gobj_match_children_tree, Yt as gobj_match_gobj, jt as gobj_name, At as gobj_parent, ht as gobj_pause, mt as gobj_play, hn as gobj_post_event, En as gobj_posted_events_size, Pn as gobj_publish_event, Qt as gobj_read_attr, Xt as gobj_read_attrs, Zt as gobj_read_bool_attr, en as gobj_read_integer_attr, nn as gobj_read_pointer_attr, tn as gobj_read_str_attr, ze as gobj_remove_persistent_attrs, Oe as gobj_repr_global_trace_levels, ln as gobj_reset_volatil_attrs, He as gobj_save_persistent_attrs, Ht as gobj_search_path, Tn as gobj_send_event, We as gobj_services, Pt as gobj_set_bottom_gobj, he as gobj_set_deep_trace, Te as gobj_set_gclass_no_trace, Ee as gobj_set_gclass_trace, ae as gobj_set_global_no_trace, fe as gobj_set_global_no_trace2, se as gobj_set_global_trace, ce as gobj_set_global_trace2, ve as gobj_set_gobj_no_trace, ye as gobj_set_gobj_trace, x as gobj_set_trace_machine_format, Rt as gobj_short_name, at as gobj_start, _t as gobj_start_children, ft as gobj_start_tree, Se as gobj_start_up, Fn as gobj_stats, gt as gobj_stop, bt as gobj_stop_children, pt as gobj_stop_tree, Dn as gobj_subscribe_event, Z as gobj_trace_level, K as gobj_trace_machine_format, ee as gobj_trace_no_level, An as gobj_unsubscribe_event, kn as gobj_unsubscribe_list, Ft as gobj_walk_gobj_children, Vt as gobj_walk_gobj_children_tree, rn as gobj_write_attr, on as gobj_write_attrs, sn as gobj_write_bool_attr, an as gobj_write_integer_attr, un as gobj_write_str_attr, Ot as gobj_yuno, wt as gobj_yuno_id, St as gobj_yuno_name, Nt as gobj_yuno_role, mo as html_markup, Kl as id_index_in_obj_list, ko as index_in_list, Br as is_array, Hr as is_boolean, Xr as is_date, Zr as is_function, el as is_gobj, ho as is_html_markup, al as is_metadata_key, zr as is_null, qr as is_number, Yr as is_object, ul as is_private_key, Qr as is_pure_number, br as is_secret_name, Jr as is_string, oo as jdb_delete, so as jdb_get, ao as jdb_get_by_idx, io as jdb_get_topic, ro as jdb_init, lo as jdb_update, xo as json2flat, Ur as json_array_append, Fr as json_array_append_new, Gr as json_array_extend, Vr as json_array_remove, Wr as json_array_size, jr as json_deep_copy, Rr as json_is_identical, Nr as json_mask_secrets, Cr as json_object_del, Ir as json_object_get, Lr as json_object_set, Pr as json_object_set_new, Mr as json_object_size, Dr as json_object_update, Ar as json_object_update_existing, kr as json_object_update_missing, xr as json_size, fo as jwt2json, co as jwtDecode, kl as kw_clone_by_keys, Il as kw_clone_by_not_keys, Al as kw_collect, pl as kw_delete, Rl as kw_find_json_in_list, bl as kw_find_path, Vn as kw_flag_t, ml as kw_get_bool, vl as kw_get_dict, Ol as kw_get_dict_value, hl as kw_get_int, Sl as kw_get_list, Cl as kw_get_local_storage_value, Tl as kw_get_pointer, El as kw_get_real, yl as kw_get_str, cl as kw_has_key, $l as kw_match_simple, _l as kw_pop, Pl as kw_remove_local_storage_value, Dl as kw_select, Nl as kw_set_dict_value, Ll as kw_set_local_storage_value, wl as kw_set_subdict_value, Fl as kwid_collect, Ml as kwid_find_one_record, Wl as kwid_get_ids, Ul as kwid_match_id, Vl as kwid_new_dict, Gl as kwid_new_list, xl as list2options, eo as load_json_file, ur as log_debug, ir as log_error, ar as log_info, sr as log_warning, yr as mask_secrets_inline, Zl as msg_iev_get_msg_type, Ql as msg_iev_get_stack, zl as msg_iev_push_stack, ql as msg_iev_read_key, Xl as msg_iev_set_msg_type, Hl as msg_iev_write_key, Io as node_uuid, nl as parseBoolean, jo as parseSVG, $o as refresh_language, Qi as register_c_ievent_cli, di as register_c_timer, wi as register_c_yuno, bo as safeSrc, v as sdata_flag_t, to as send_http_json_post, zn as set_console_log_enabled, Xn as set_console_log_filter, qn as set_log_callback, rr as set_remote_log_functions, vo as set_strings_are_text, bi as set_timeout, pi as set_timeout_periodic, t as sprintf, i as stats_parser, Yl as str_in_list, ol as strcasecmp, ll as strcmp, Oo as strings_are_text, rl as strncmp, Bl as strs_in_list, sl as strstr, si as template_get_field_desc, Ro as timeTracker, cr as trace_json, wr as trace_json_masked, B as trace_level_t, _r as trace_msg, ei as treedb_decoder_fkey, ni as treedb_decoder_hook, ti as treedb_encoder_fkey, ii as treedb_get_field_desc, Zo as treedb_hook_data_size, n as vsprintf, F as walk_type_t };
3774
+ export { I as GObj, N as SDATA, R as SDATAAUTHZ, w as SDATACM, j as SDATACM2, A as SDATADF, $ as SDATAPM, D as SDATAPM0, S as SDATA_END, O as SDataDesc, a as YUNETA_VERSION, h as __yuno__, o as build_command_response, Fo as build_path, s as build_stats_response, Lo as clean_name, hi as clear_timeout, il as cmp_two_simple_json, l as command_parser, wo as createElement2, No as createOneHtml, co as create_json_record, ui as create_template_record, Ao as current_timestamp, T as data_type_t, Zo as db_list_persistent_attrs, zo as db_load_persistent_attrs, Xo as db_remove_persistent_attrs, Qo as db_save_persistent_attrs, Uo as debounce, Jl as delete_from_list, $r as duplicate_objects, Kr as empty_json, tl as empty_string, bo as escapeHtml, U as event_flag_t, Yo as flat2json, qo as flat_apply, Jo as flat_diff, Wo as flat_key_join, xo as flat_key_split, Pe as gclass_add_ev_action, Fe as gclass_add_event_type, Le as gclass_add_state, Ge as gclass_check_fsm, Ae as gclass_create, Ve as gclass_event_type, Me as gclass_find_by_name, C as gclass_flag_t, ke as gclass_unregister, jo as getPositionRelativeToBody, Po as get_function_name, ko as get_now, Lt as gobj_bottom_gobj, fn as gobj_change_parent, _n as gobj_change_state, Un as gobj_command, it as gobj_create, et as gobj_create2, rt as gobj_create_default_service, ot as gobj_create_pure_child, nt as gobj_create_service, lt as gobj_create_volatil, tt as gobj_create_yuno, cn as gobj_current_state, xe as gobj_default_service, yn as gobj_deliver_posted_events, st as gobj_destroy, Bt as gobj_find_child, Kt as gobj_find_gobj, Ke as gobj_find_service, Ln as gobj_find_subscribings, In as gobj_find_subscriptions, L as gobj_flag_t, Dt as gobj_full_name, $t as gobj_gclass_name, be as gobj_get_gclass_trace_level, pe as gobj_get_gclass_trace_level2, me as gobj_get_gclass_trace_no_level, ge as gobj_get_global_trace_level, de as gobj_get_global_trace_no_level, ue as gobj_global_trace_level, _e as gobj_global_trace_no_level, zt as gobj_has_attr, dn as gobj_has_event, bn as gobj_has_output_event, $e as gobj_hsdata, Ct as gobj_is_destroying, vt as gobj_is_playing, It as gobj_is_pure_child, Et as gobj_is_running, Tt as gobj_is_service, kt as gobj_is_volatil, Qe as gobj_list_persistent_attrs, Cn as gobj_list_subscriptions, qe as gobj_load_persistent_attrs, Jt as gobj_match_children, qt as gobj_match_children_tree, Yt as gobj_match_gobj, jt as gobj_name, At as gobj_parent, ht as gobj_pause, mt as gobj_play, hn as gobj_post_event, En as gobj_posted_events_size, Pn as gobj_publish_event, Qt as gobj_read_attr, Xt as gobj_read_attrs, Zt as gobj_read_bool_attr, en as gobj_read_integer_attr, nn as gobj_read_pointer_attr, tn as gobj_read_str_attr, ze as gobj_remove_persistent_attrs, Oe as gobj_repr_global_trace_levels, ln as gobj_reset_volatil_attrs, He as gobj_save_persistent_attrs, Ht as gobj_search_path, Tn as gobj_send_event, We as gobj_services, Pt as gobj_set_bottom_gobj, he as gobj_set_deep_trace, Te as gobj_set_gclass_no_trace, Ee as gobj_set_gclass_trace, ae as gobj_set_global_no_trace, fe as gobj_set_global_no_trace2, se as gobj_set_global_trace, ce as gobj_set_global_trace2, ve as gobj_set_gobj_no_trace, ye as gobj_set_gobj_trace, x as gobj_set_trace_machine_format, Rt as gobj_short_name, at as gobj_start, _t as gobj_start_children, ft as gobj_start_tree, Se as gobj_start_up, Fn as gobj_stats, gt as gobj_stop, bt as gobj_stop_children, pt as gobj_stop_tree, Dn as gobj_subscribe_event, Z as gobj_trace_level, K as gobj_trace_machine_format, ee as gobj_trace_no_level, An as gobj_unsubscribe_event, kn as gobj_unsubscribe_list, Ft as gobj_walk_gobj_children, Vt as gobj_walk_gobj_children_tree, rn as gobj_write_attr, on as gobj_write_attrs, sn as gobj_write_bool_attr, an as gobj_write_integer_attr, un as gobj_write_str_attr, Ot as gobj_yuno, wt as gobj_yuno_id, St as gobj_yuno_name, Nt as gobj_yuno_role, ho as html_markup, Kl as id_index_in_obj_list, Io as index_in_list, Br as is_array, Hr as is_boolean, Xr as is_date, Zr as is_function, el as is_gobj, Eo as is_html_markup, al as is_metadata_key, zr as is_null, qr as is_number, Yr as is_object, ul as is_private_key, Qr as is_pure_number, br as is_secret_name, Jr as is_string, io as jdb_delete, ao as jdb_get, uo as jdb_get_by_idx, so as jdb_get_topic, ro as jdb_init, oo as jdb_update, Ko as json2flat, Ur as json_array_append, Fr as json_array_append_new, Gr as json_array_extend, Vr as json_array_remove, Wr as json_array_size, jr as json_deep_copy, Rr as json_is_identical, Nr as json_mask_secrets, Cr as json_object_del, Ir as json_object_get, Lr as json_object_set, Pr as json_object_set_new, Mr as json_object_size, Dr as json_object_update, Ar as json_object_update_existing, kr as json_object_update_missing, xr as json_size, go as jwt2json, fo as jwtDecode, kl as kw_clone_by_keys, Il as kw_clone_by_not_keys, Al as kw_collect, pl as kw_delete, Rl as kw_find_json_in_list, bl as kw_find_path, Vn as kw_flag_t, ml as kw_get_bool, vl as kw_get_dict, Ol as kw_get_dict_value, hl as kw_get_int, Sl as kw_get_list, Cl as kw_get_local_storage_value, Tl as kw_get_pointer, El as kw_get_real, yl as kw_get_str, cl as kw_has_key, $l as kw_match_simple, _l as kw_pop, Pl as kw_remove_local_storage_value, Dl as kw_select, Nl as kw_set_dict_value, Ll as kw_set_local_storage_value, wl as kw_set_subdict_value, Fl as kwid_collect, Ml as kwid_find_one_record, Wl as kwid_get_ids, Ul as kwid_match_id, Vl as kwid_new_dict, Gl as kwid_new_list, xl as list2options, eo as load_json_file, ur as log_debug, ir as log_error, ar as log_info, sr as log_warning, yr as mask_secrets_inline, Zl as msg_iev_get_msg_type, Ql as msg_iev_get_stack, zl as msg_iev_push_stack, ql as msg_iev_read_key, Xl as msg_iev_set_msg_type, Hl as msg_iev_write_key, Co as node_uuid, nl as parseBoolean, $o as parseSVG, Ro as refresh_language, Xi as register_c_ievent_cli, bi as register_c_timer, ji as register_c_yuno, po as safeSrc, v as sdata_flag_t, to as send_http_json_post, zn as set_console_log_enabled, Xn as set_console_log_filter, qn as set_log_callback, rr as set_remote_log_functions, Oo as set_strings_are_text, pi as set_timeout, mi as set_timeout_periodic, t as sprintf, i as stats_parser, Yl as str_in_list, ol as strcasecmp, ll as strcmp, So as strings_are_text, rl as strncmp, Bl as strs_in_list, sl as strstr, ai as template_get_field_desc, Do as timeTracker, cr as trace_json, wr as trace_json_masked, B as trace_level_t, _r as trace_msg, ti as treedb_decoder_fkey, ri as treedb_decoder_hook, ni as treedb_encoder_fkey, si as treedb_get_field_desc, ei as treedb_hook_data_size, n as vsprintf, F as walk_type_t };
3768
3775
 
3769
3776
  //# sourceMappingURL=gobj-js.es.min.js.map