@yuneta/gobj-js 7.3.1 → 7.3.4

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.
@@ -219,10 +219,10 @@ var T = class {
219
219
  this.event_name = e, this.event_flag = Number(t) || 0;
220
220
  }
221
221
  };
222
- function I(e) {
222
+ function A(e) {
223
223
  Kt(e) && (e = JSON.stringify(e)), Nt(" ".repeat(Math.max(0, 2 * m - 1)) + String(e));
224
224
  }
225
- function A(e, t) {
225
+ function I(e, t) {
226
226
  let n = {};
227
227
  if (!Yt(t)) return St("sdata_desc MUST be an array"), Dt(t), n;
228
228
  for (let r = 0; r < t.length; r++) {
@@ -280,7 +280,8 @@ function P(e, t, n, r) {
280
280
  let o;
281
281
  switch (n.type) {
282
282
  case h.DTP_STRING:
283
- if (Bt(r)) o = String(r);
283
+ if (null == r) o = "";
284
+ else if (Bt(r)) o = String(r);
284
285
  else {
285
286
  let e = JSON.stringify(r);
286
287
  e && (o = String(e));
@@ -332,7 +333,7 @@ function U(e) {
332
333
  function C(e, t, n) {
333
334
  return We(e, t) ? U(e) : e && e.bottom_gobj ? C(e.bottom_gobj, t, n) : (n && St(`GClass Attribute NOT FOUND: ${Oe(e)}, attr ${t}`), null);
334
335
  }
335
- function G(e, t, n) {
336
+ function F(e, t, n) {
336
337
  if (!(e && e instanceof j)) return n && St("gclass NULL"), null;
337
338
  if (!t) return e.attrs_table;
338
339
  for (let n = 0; n < e.attrs_table.length; n++) {
@@ -341,10 +342,10 @@ function G(e, t, n) {
341
342
  }
342
343
  return n && St(`${e.gclass_name}: GClass Attribute NOT FOUND: ${t}`), null;
343
344
  }
344
- function F(e, t, n, r, o, s, i, l, _, a, u) {
345
+ function G(e, t, n, r, o, s, i, l, _, a, u) {
345
346
  if (Xt(e)) return St("gclass_name EMPTY"), null;
346
347
  if (e.includes("`") || e.includes("^") || e.includes(".")) return St(`GClass name CANNOT have '.' or '^' or '\`' char: ${e}`), null;
347
- if (H(e)) return St(`GClass ALREADY exists: ${e}`), null;
348
+ if (q(e)) return St(`GClass ALREADY exists: ${e}`), null;
348
349
  let c = new j(e, r, o, s, i, l, _, a, u);
349
350
  (function(e, t) {
350
351
  e && e instanceof j ? t ? g[t] ? St(`gclass ALREADY REGISTERED: ${t}`) : g[t] = e : St("gclass_name undefined") : St("gclass undefined");
@@ -447,14 +448,14 @@ function Q(e) {
447
448
  }
448
449
  return t;
449
450
  }
450
- function H(e, t) {
451
+ function q(e, t) {
451
452
  let n = null;
452
453
  try {
453
454
  n = g[e];
454
455
  } catch (e) {}
455
456
  return n || t && St(`gclass not found: ${e}`), n;
456
457
  }
457
- function q() {
458
+ function H() {
458
459
  return !b || b.obflag & w.obflag_destroyed ? null : b;
459
460
  }
460
461
  function X(e, t) {
@@ -470,8 +471,8 @@ function ee(e, t) {
470
471
  t.parent && St(`_add_child() ALREADY HAS PARENT: ${t.gobj_name}`), e.dl_children.push(t), t.parent = e;
471
472
  }
472
473
  function te(e, t) {
473
- let n = Gn(e.dl_children, t);
474
- n >= 0 && (Ft(e.dl_children, n), t.parent = null);
474
+ let n = Fn(e.dl_children, t);
475
+ n >= 0 && (Gt(e.dl_children, n), t.parent = null);
475
476
  }
476
477
  function ne(e, t) {
477
478
  "__json_config_variables__" !== t && St(`GClass Attribute NOT FOUND: ${Oe(e)}, attr ${t}`);
@@ -482,7 +483,7 @@ function re(e, t, n) {
482
483
  if (!e || !t) return St("hsdata or kw NULL"), -1;
483
484
  let s = 0;
484
485
  for (const [i, l] of Object.entries(t)) {
485
- const t = G(o.gclass, i, !1);
486
+ const t = F(o.gclass, i, !1);
486
487
  t ? (-1 === n || t.flag & n) && (t.flag & E.SDF_DEPRECATED && Ot(`${Oe(o)}: Deprecated attribute used in gobj creation: ${i}`), s += P(o, e, t, l)) : r && (r(o, i), s--);
487
488
  }
488
489
  return s;
@@ -503,7 +504,7 @@ function oe(e, n, r, o, s) {
503
504
  s |= N.gobj_flag_service;
504
505
  }
505
506
  if (Xt(n)) return St("gclass_name must be a string"), null;
506
- let l = H(n, !1);
507
+ let l = q(n, !1);
507
508
  if (!l) return St(`GClass not registered: ${n}^${e}`), null;
508
509
  if (!Bt(e)) return St(`gobj_name must be a string: ${n}`), null;
509
510
  if (!Xt(e)) {
@@ -511,10 +512,10 @@ function oe(e, n, r, o, s) {
511
512
  if (e.includes("^")) return St(`gobj_name cannot contain char ^: ${n}^${e}`), null;
512
513
  }
513
514
  let _ = new S(e, l, r, o, s);
514
- _.jn_attrs = A(_, l.attrs_table);
515
+ _.jn_attrs = I(_, l.attrs_table);
515
516
  for (const [e, t] of Object.entries(_.jn_attrs)) e in _.priv && (_.priv[e] = t);
516
517
  let a = d && Ye(d, "trace_creation");
517
- return a && I(t("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & N.gobj_flag_service && Z(_), _.gobj_flag & N.gobj_flag_yuno && (d = _), _.gobj_flag & N.gobj_flag_default_service && (b = _), _.gobj_flag & N.gobj_flag_yuno || ee(o, _), _.obflag |= w.obflag_created, _.gclass.instances++, re(_, r), _.gobj_flag & N.gobj_flag_service && i && i(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && I(t("👦👦🔵 child_added(%s): %s", Ne(o), Oe(_))), o.gclass.gmt.mt_child_added(o, _)), a && I(t("💙💙⏪ created: %s", Ne(_))), _;
518
+ return a && A(t("💙💙⏩ creating: %s^%s", l.gclass_name, e)), _.gobj_flag & N.gobj_flag_service && Z(_), _.gobj_flag & N.gobj_flag_yuno && (d = _), _.gobj_flag & N.gobj_flag_default_service && (b = _), _.gobj_flag & N.gobj_flag_yuno || ee(o, _), _.obflag |= w.obflag_created, _.gclass.instances++, re(_, r), _.gobj_flag & N.gobj_flag_service && i && i(_, null), _.gclass.gmt.mt_create2 ? _.gclass.gmt.mt_create2(_, r) : _.gclass.gmt.mt_create && _.gclass.gmt.mt_create(_), o && o.gclass.gmt.mt_child_added && (a && A(t("👦👦🔵 child_added(%s): %s", Ne(o), Oe(_))), o.gclass.gmt.mt_child_added(o, _)), a && A(t("💙💙⏪ created: %s", Ne(_))), _;
518
519
  }
519
520
  function se(e, t, n, r) {
520
521
  return oe(e, t, n, r, N.gobj_flag_pure_child);
@@ -523,9 +524,9 @@ function ie(e) {
523
524
  if (Re(e)) return void St("gobj NULL or DESTROYED");
524
525
  e.__refs__ > 0 && St(`${Oe(e)}: gobj DESTROYING with references: ${e.__refs__}`), e.obflag |= w.obflag_destroying;
525
526
  let n = d && Ye(d, "trace_creation");
526
- n && I(t("💔💔⏩ destroying: %s", Ne(e)));
527
+ n && A(t("💔💔⏩ destroying: %s", Ne(e)));
527
528
  let r = we(e);
528
- r && r.gclass.gmt.mt_child_removed && (n && I(t("👦👦🔴 child_removed(%s): %s", Ne(r), Oe(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & N.gobj_flag_service && function(e) {
529
+ r && r.gclass.gmt.mt_child_removed && (n && A(t("👦👦🔴 child_removed(%s): %s", Ne(r), Oe(e))), r.gclass.gmt.mt_child_removed(r, e)), e.gobj_flag & N.gobj_flag_service && function(e) {
529
530
  let t = je(e);
530
531
  t = t.toLowerCase(), p[t] ? delete p[t] : St(`"service NOT found in register": ${t}`);
531
532
  }(e), e.playing && (St(`Destroying a PLAYING gobj: ${Ne(e)}`), pe(e)), e.running && (St(`Destroying a RUNNING gobj: ${Ne(e)}`), ue(e)), ft(e, e.dl_subscriptions, !0), ft(e, e.dl_subscribings, !0), r && (te(r, e), De(e) && (ke(r) !== e || Re(r) || $e(r, null))), function(e) {
@@ -534,13 +535,13 @@ function ie(e) {
534
535
  let n = t[e];
535
536
  Re(n) || ie(n);
536
537
  }
537
- }(e), e.obflag & w.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), n && I(t("💔💔⏪ destroyed: %s", Ne(e))), e.obflag |= w.obflag_destroyed, e.obflag & w.obflag_created && e.gclass.instances--;
538
+ }(e), e.obflag & w.obflag_created && e.gclass.gmt.mt_destroy && e.gclass.gmt.mt_destroy(e), n && A(t("💔💔⏪ destroyed: %s", Ne(e))), e.obflag |= w.obflag_destroyed, e.obflag & w.obflag_created && e.gclass.instances--;
538
539
  }
539
540
  function le(e) {
540
541
  if (Re(e)) return St("gobj NULL or DESTROYED"), -1;
541
542
  if (e.running) return St(`${Oe(e)}: GObj ALREADY RUNNING`), -1;
542
543
  if (e.disabled) return St(`${Oe(e)}: GObj DISABLED`), -1;
543
- d && Ye(d, "trace_start_stop") && I(t("⏺ ⏺ start: %s", Ne(e))), e.running = !0;
544
+ d && Ye(d, "trace_start_stop") && A(t("⏺ ⏺ start: %s", Ne(e))), e.running = !0;
544
545
  let n = 0;
545
546
  return e.gclass.gmt.mt_start && (n = e.gclass.gmt.mt_start(e)), n;
546
547
  }
@@ -553,7 +554,7 @@ function ae(e, t, n) {
553
554
  function ue(e) {
554
555
  if (Re(e)) return St("gobj NULL or DESTROYED"), -1;
555
556
  if (!e.running) return St(`${Oe(e)}: GObj NOT RUNNING`), -1;
556
- e.playing && (Ot(`${Oe(e)}: GObj stopping without previous pause`), pe(e)), d && Ye(d, "trace_start_stop") && I(t("⏹ ⏹ stop: %s", Ne(e))), e.running = !1;
557
+ e.playing && (Ot(`${Oe(e)}: GObj stopping without previous pause`), pe(e)), d && Ye(d, "trace_start_stop") && A(t("⏹ ⏹ stop: %s", Ne(e))), e.running = !1;
557
558
  let n = 0;
558
559
  return e.gclass.gmt.mt_stop && (n = e.gclass.gmt.mt_stop(e)), n;
559
560
  }
@@ -561,7 +562,7 @@ function ce(e, t, n) {
561
562
  return de(e) && ue(e), 0;
562
563
  }
563
564
  function fe(e) {
564
- return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : Ae(e, x.WALK_FIRST2LAST, ce, 0, 0);
565
+ return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : Ie(e, x.WALK_FIRST2LAST, ce, 0, 0);
565
566
  }
566
567
  function ge(e) {
567
568
  if (Re(e)) return St(`gobj NULL or DESTROYED: ${Oe(e)}`), -1;
@@ -571,12 +572,12 @@ function ge(e) {
571
572
  if (e.gclass.gclass_flag & O.gcflag_required_start_to_play) return St(`${Oe(e)}: Cannot play, start not done`), -1;
572
573
  Ot(`${Oe(e)}: GObj playing without previous start`), le(e);
573
574
  }
574
- d && Ye(d, "trace_start_stop") && I(t("⏯ ⏯ play: %s", Ne(e))), e.playing = !0;
575
+ d && Ye(d, "trace_start_stop") && A(t("⏯ ⏯ play: %s", Ne(e))), e.playing = !0;
575
576
  let n = 0;
576
577
  return e.gclass.gmt.mt_play && (n = e.gclass.gmt.mt_play(e), n < 0 && (e.playing = !1)), n;
577
578
  }
578
579
  function pe(e) {
579
- return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : e.playing ? (d && Ye(d, "trace_start_stop") && I(t("⏸ ⏸ pause: %s", Ne(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (St(`${Oe(e)}: GObj NOT PLAYING`), -1);
580
+ return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : e.playing ? (d && Ye(d, "trace_start_stop") && A(t("⏸ ⏸ pause: %s", Ne(e))), e.playing = !1, e.gclass.gmt.mt_pause ? e.gclass.gmt.mt_pause(e) : 0) : (St(`${Oe(e)}: GObj NOT PLAYING`), -1);
580
581
  }
581
582
  function de(e) {
582
583
  return !Re(e) && e.running;
@@ -606,43 +607,43 @@ function ve() {
606
607
  return e ? Je(e, "yuno_id") : "";
607
608
  }
608
609
  function je(e) {
609
- return qt(e) ? e.gobj_name : (St("gobj bad type"), null);
610
+ return Ht(e) ? e.gobj_name : (St("gobj bad type"), null);
610
611
  }
611
612
  function Se(e) {
612
- return qt(e) ? e.gclass.gclass_name : (St("gobj NULL of bad type"), null);
613
+ return Ht(e) ? e.gclass.gclass_name : (St("gobj NULL of bad type"), null);
613
614
  }
614
615
  function Oe(e) {
615
- return qt(e) ? e.gclass.gclass_name + "^" + je(e) : (St("gobj bad type"), null);
616
+ return Ht(e) ? e.gclass.gclass_name + "^" + je(e) : (St("gobj bad type"), null);
616
617
  }
617
618
  function Ne(e) {
618
- if (!qt(e)) return St("gobj NULL of bad type"), null;
619
+ if (!Ht(e)) return St("gobj NULL of bad type"), null;
619
620
  let t = Oe(e), n = we(e);
620
621
  for (; n;) t = Oe(n) + "`" + t, n = we(n);
621
622
  return t;
622
623
  }
623
624
  function we(e) {
624
- return qt(e) ? e.parent : (St("gobj NULL of bad type"), null);
625
+ return Ht(e) ? e.parent : (St("gobj NULL of bad type"), null);
625
626
  }
626
627
  function De(e) {
627
- return qt(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (St("gobj NULL of bad type"), null);
628
+ return Ht(e) ? !!(e.gobj_flag & N.gobj_flag_volatil) : (St("gobj NULL of bad type"), null);
628
629
  }
629
630
  function xe(e) {
630
- return qt(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (St("gobj NULL of bad type"), null);
631
+ return Ht(e) ? !!(e.gobj_flag & N.gobj_flag_pure_child) : (St("gobj NULL of bad type"), null);
631
632
  }
632
633
  function Re(e) {
633
- return !qt(e) || !!(e.obflag & (w.obflag_destroyed | w.obflag_destroying));
634
+ return !Ht(e) || !!(e.obflag & (w.obflag_destroyed | w.obflag_destroying));
634
635
  }
635
636
  function ke(e) {
636
- return qt(e) ? e.bottom_gobj : (St("gobj NULL of bad type"), null);
637
+ return Ht(e) ? e.bottom_gobj : (St("gobj NULL of bad type"), null);
637
638
  }
638
639
  function $e(e, t) {
639
- if (!qt(e)) return St("gobj NULL of bad type"), null;
640
+ if (!Ht(e)) return St("gobj NULL of bad type"), null;
640
641
  e.bottom_gobj && Ot(`${Oe(e)}: bottom_gobj already set`), e.bottom_gobj = t;
641
642
  }
642
- function Ie(e, t, n) {
643
- return qt(e) ? t ? G(e.gclass, t, n) : e.gclass.attrs_table : (St("gobj NULL of bad type"), null);
643
+ function Ae(e, t, n) {
644
+ return Ht(e) ? t ? F(e.gclass, t, n) : e.gclass.attrs_table : (St("gobj NULL of bad type"), null);
644
645
  }
645
- function Ae(e, t, n, r, o) {
646
+ function Ie(e, t, n, r, o) {
646
647
  return Re(e) ? (St("gobj NULL, destroying, or bad type"), 0) : Pe(e.dl_children, t, n, r, o);
647
648
  }
648
649
  function Le(e, t, n, r, o) {
@@ -683,8 +684,8 @@ function Ce(e, t, n, r, o) {
683
684
  }
684
685
  return 0;
685
686
  }
686
- function Ge(e, t) {
687
- if (!qt(e)) return St("gobj NULL of bad type"), !1;
687
+ function Fe(e, t) {
688
+ if (!Ht(e)) return St("gobj NULL of bad type"), !1;
688
689
  let n = t.__gclass_name__, r = t.__gobj_name__, o = t.__prefix_gobj_name__;
689
690
  t.__disabled__;
690
691
  let s = t.__state__;
@@ -699,12 +700,12 @@ function Ge(e, t) {
699
700
  for (const n of Object.keys(t)) if ("__gclass_name__" !== n && "__gobj_name__" !== n && "__prefix_gobj_name__" !== n && "__disabled__" !== n && "__state__" !== n && We(e, n) && i[n] !== t[n]) return !1;
700
701
  return !0;
701
702
  }
702
- function Fe(e, t) {
703
+ function Ge(e, t) {
703
704
  if (Re(e)) return St("gobj NULL or DESTROYED"), null;
704
705
  const n = e.dl_children;
705
706
  for (let e = 0; e < n.length; e++) {
706
707
  const r = n[e];
707
- if (Ge(r, t)) return r;
708
+ if (Fe(r, t)) return r;
708
709
  }
709
710
  return null;
710
711
  }
@@ -724,11 +725,11 @@ function Ve(e, t) {
724
725
  if (1 === n.length) return e;
725
726
  let r = n[1].split("^"), o = {};
726
727
  1 === r.length ? o.__gobj_name__ = r : (o.__gclass_name__ = r[0], o.__gobj_name__ = r[1]);
727
- let s = Fe(e, o);
728
+ let s = Ge(e, o);
728
729
  return s ? (n.splice(0, 1), n = n.join("`"), Ve(s, n)) : null;
729
730
  }
730
731
  function We(e, t) {
731
- return !Xt(t) && !!G(e.gclass, t, !1);
732
+ return !Xt(t) && !!F(e.gclass, t, !1);
732
733
  }
733
734
  function Me(e, t, n) {
734
735
  let r = e.jn_attrs;
@@ -743,7 +744,7 @@ function Ke(e, t, n) {
743
744
  for (let n = 0; n < o.length; n++) {
744
745
  const s = o[n];
745
746
  if (s.name && (-1 === t || s.flag & t)) {
746
- let t = At(e.jn_attrs, s.name);
747
+ let t = It(e.jn_attrs, s.name);
747
748
  Pt(r, s.name, t);
748
749
  }
749
750
  }
@@ -757,35 +758,35 @@ function Ye(e, t) {
757
758
  if (0 === tn(t, "__service__")) return me(e);
758
759
  }
759
760
  let n = C(e, t, !1);
760
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? At(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
761
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? It(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
761
762
  }
762
763
  function Be(e, t) {
763
764
  t && tn(t, "__trace_level__");
764
765
  let n = C(e, t, !1);
765
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? At(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
766
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? It(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
766
767
  }
767
768
  function Je(e, t) {
768
769
  if (t && 0 === tn(t, "__state__")) return et(e);
769
770
  let n = C(e, t, !1);
770
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? At(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
771
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? It(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
771
772
  }
772
773
  function ze(e, t) {
773
774
  let n = C(e, t, !1);
774
- return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? At(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
775
+ return n ? !e.gclass.gmt.mt_reading || e.obflag & w.obflag_destroyed ? It(n, t) : e.gclass.gmt.mt_reading(e, t) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), 0);
775
776
  }
776
777
  function Qe(e, t, n, r) {
777
778
  let o = U(e), s = 0;
778
779
  for (const [r, i] of Object.entries(t)) {
779
- let t = Ie(e, r, !0);
780
+ let t = Ae(e, r, !0);
780
781
  t && (-1 === n || t.flag & n) && (s += P(e, o, t, i));
781
782
  }
782
783
  return s;
783
784
  }
784
- function He(e, t, n) {
785
+ function qe(e, t, n) {
785
786
  let r = C(e, t, !1);
786
787
  return r ? (r[t] = Zt(n), Kt(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
787
788
  }
788
- function qe(e, t, n) {
789
+ function He(e, t, n) {
789
790
  let r = C(e, t, !1);
790
791
  return r ? (r[t] = parseInt(n), Kt(e.priv) && e.priv.hasOwnProperty(t) && (e.priv[t] = n), e.obflag & w.obflag_created && !(e.obflag & w.obflag_destroyed) && e.gclass.gmt.mt_writing && e.gclass.gmt.mt_writing(e, t), 0) : (St(`${Oe(e)}: GClass Attribute NOT FOUND, attr ${t}`), -1);
791
792
  }
@@ -803,7 +804,7 @@ function et(e) {
803
804
  return Re(e) ? (St("gobj NULL or DESTROYED"), null) : e.current_state.state_name;
804
805
  }
805
806
  function tt(e, t, n) {
806
- if (!qt(e)) return St("gobj NULL of bad type"), null;
807
+ if (!Ht(e)) return St("gobj NULL of bad type"), null;
807
808
  let r = z(e.gclass, t);
808
809
  if (r) return r;
809
810
  if (n) {
@@ -831,17 +832,17 @@ function ot(e, n, r, o) {
831
832
  let i = 0;
832
833
  i = d && Be(d, "tracing"), "C_TIMER" === Se(o) && (i = d && Be(d, "trace_timer")), m++;
833
834
  let l = M(s, n);
834
- if (!l) return e.gclass.gmt.mt_inject_event ? (m--, i && (I(t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Oe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Oe(o))), r && i > 1 && Vt(r) && Dt(r)), e.gclass.gmt.mt_inject_event(e, n, r, o)) : (i && I(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Se(e), je(e), s.state_name, n || "", o && !o.running ? "!!" : "", Se(o), je(o))), St(`📛📛 Event NOT DEFINED in state 📛📛: ${Oe(e)}, ${s.state_name}, ${n}`), m--, -1);
835
+ if (!l) return e.gclass.gmt.mt_inject_event ? (m--, i && (A(t("🔃 mach(%s%s), st: %s, ev: %s, from(%s%s)", e.running ? "" : "!!", Oe(e), s.state_name, n || "", o && !o.running ? "!!" : "", Oe(o))), r && i > 1 && Vt(r) && Dt(r)), e.gclass.gmt.mt_inject_event(e, n, r, o)) : (i && A(t("📛 mach(%s%s^%s), st: %s, ev: %s, 📛📛ERROR Event NOT DEFINED in state📛📛, from(%s%s^%s)", e.running ? "" : "!!", Se(e), je(e), s.state_name, n || "", o && !o.running ? "!!" : "", Se(o), je(o))), St(`📛📛 Event NOT DEFINED in state 📛📛: ${Oe(e)}, ${s.state_name}, ${n}`), m--, -1);
835
836
  if (i) {
836
837
  let _ = "";
837
- l.action && (_ = Vn(l.action)), I(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Se(e), je(e), s.state_name, "", n || "", "", _, o && !o.running ? "!!" : "", Se(o), je(o))), r && i > 1 && Vt(r) && Dt(r);
838
+ l.action && (_ = Vn(l.action)), A(t("🔄 mach(%s%s^%s), st: %s, ev: %s%s%s, ac: %s, from(%s%s^%s)", e.running ? "" : "!!", Se(e), je(e), s.state_name, "", n || "", "", _, o && !o.running ? "!!" : "", Se(o), je(o))), r && i > 1 && Vt(r) && Dt(r);
838
839
  }
839
840
  l.next_state && Ze(e, l.next_state);
840
841
  let _ = -1;
841
842
  try {
842
843
  l.action && (_ = l.action(e, n, r, o));
843
844
  } finally {}
844
- return !i || e.obflag & w.obflag_destroyed || I(t("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Se(e), je(e), e.current_state.state_name, n || "", Jt(_) ? _ : 0)), m--, _;
845
+ return !i || e.obflag & w.obflag_destroyed || A(t("<- mach(%s%s^%s), st: %s, ev: %s, ret: %d", e.running ? "" : "!!", Se(e), je(e), e.current_state.state_name, n || "", Jt(_) ? _ : 0)), m--, _;
845
846
  }
846
847
  var st = Object.freeze({
847
848
  __hard_subscription__: 1,
@@ -894,9 +895,9 @@ function at(e, t, n, r, o) {
894
895
  function ut(e, n, r, o) {
895
896
  let s = cn(e, n, "publisher", null, bt.KW_REQUIRED), i = cn(e, n, "subscriber", null, bt.KW_REQUIRED), l = un(e, n, "event", "", bt.KW_REQUIRED);
896
897
  if (!!(an(e, n, "subs_flag", null, bt.KW_REQUIRED) & st.__hard_subscription__) && !r) return -1;
897
- d && Ye(d, "trace_subscriptions") && (I(t("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", l || "", Oe(s), Oe(i))), Dt(n)), s.obflag & w.obflag_destroyed || o || s.gclass.gmt.mt_subscription_deleted && s.gclass.gmt.mt_subscription_deleted(s, n);
898
+ d && Ye(d, "trace_subscriptions") && (A(t("💜💜👎 unsubscribing event '%s': publisher %s, subscriber'%s'", l || "", Oe(s), Oe(i))), Dt(n)), s.obflag & w.obflag_destroyed || o || s.gclass.gmt.mt_subscription_deleted && s.gclass.gmt.mt_subscription_deleted(s, n);
898
899
  let _ = at(s.dl_subscriptions, s, l, n, i);
899
- return _ >= 0 ? Ft(s.dl_subscriptions, _) : (St(`${Oe(e)}: subscription in publisher not found`), Dt(n)), _ = at(i.dl_subscribings, s, l, n, i), _ >= 0 ? Ft(i.dl_subscribings, _) : (St(`${Oe(e)}: subscription in subscriber not found`), Dt(n)), 0;
900
+ return _ >= 0 ? Gt(s.dl_subscriptions, _) : (St(`${Oe(e)}: subscription in publisher not found`), Dt(n)), _ = at(i.dl_subscribings, s, l, n, i), _ >= 0 ? Gt(i.dl_subscribings, _) : (St(`${Oe(e)}: subscription in subscriber not found`), Dt(n)), 0;
900
901
  }
901
902
  function ct(e, n, r, o) {
902
903
  if (null == r && (r = {}), !e) return St(`publisher NULL: ev ${n}`), 0;
@@ -915,7 +916,7 @@ function ct(e, n, r, o) {
915
916
  let i = _t(e.dl_subscriptions, e, n, r, o);
916
917
  Wt(i) > 0 && (St(`${Oe(e)}: ${Wt(i)} subscription(s) REPEATED, will be deleted and override`), Dt(i, "subscription REPEATED"), ft(e, i, !1));
917
918
  let l = function(e, t, n, r) {
918
- let o = A(e, it);
919
+ let o = I(e, it);
919
920
  Ut(o, "event", t), Ut(o, "subscriber", r), Ut(o, "publisher", e);
920
921
  let s = 0;
921
922
  if (n) {
@@ -935,7 +936,7 @@ function ct(e, n, r, o) {
935
936
  }
936
937
  return Ut(o, "subs_flag", s), o;
937
938
  }(e, n, r, o);
938
- return l ? (Ct(e.dl_subscriptions, l), Ct(o.dl_subscribings, l), d && Ye(d, "trace_subscriptions") && (I(t("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", n || "", Oe(e), Oe(o))), r && Dt(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, l) < 0 && (ut(e, l, !0, !0), l = 0), l) : (St(`${Oe(e)}: _create_subscription() FAILED`), 0);
939
+ return l ? (Ct(e.dl_subscriptions, l), Ct(o.dl_subscribings, l), d && Ye(d, "trace_subscriptions") && (A(t("💜💜👍 subscribing event '%s', publisher '%s', subscriber %s", n || "", Oe(e), Oe(o))), r && Dt(r)), e.gclass.gmt.mt_subscription_added && e.gclass.gmt.mt_subscription_added(e, l) < 0 && (ut(e, l, !0, !0), l = 0), l) : (St(`${Oe(e)}: _create_subscription() FAILED`), 0);
939
940
  }
940
941
  function ft(e, t, n) {
941
942
  let r = [...t];
@@ -954,7 +955,7 @@ function dt(e, n, r) {
954
955
  let o = tt(e, n, !0);
955
956
  if (!(o && o.event_flag & (D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT) || e.gclass.gclass_flag & O.gcflag_no_check_output_events)) return St(`event NOT in output event list: ${Oe(e)}, ev ${n}`), -1;
956
957
  let s = d && Ye(d, "trace_subscriptions");
957
- if (s && (I(t("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Se(e), je(e), e.current_state.state_name, "", n || "", "")), Dt(r)), e.gclass.gmt.mt_publish_event) {
958
+ if (s && (A(t("🔝🔝 mach(%s%s^%s), st: %s, ev: %s%s%s", e.running ? "" : "!!", Se(e), je(e), e.current_state.state_name, "", n || "", "")), Dt(r)), e.gclass.gmt.mt_publish_event) {
958
959
  let t = e.gclass.gmt.mt_publish_event(e, n, r);
959
960
  if (t <= 0) return t;
960
961
  }
@@ -972,11 +973,11 @@ function dt(e, n, r) {
972
973
  if (Xt(f) || 0 === tn(f, n)) {
973
974
  fn(e, a, "__config__", null, 0);
974
975
  let o = fn(e, a, "__global__", null, 0), i = fn(e, a, "__local__", null, 0), f = gn(e, a, "__filter__", null, 0), g = r, p = 1;
975
- if (e.gclass.gmt.mt_publication_filter ? p = e.gclass.gmt.mt_publication_filter(e, n, g, u) : Mt(f) > 0 && (p = mn(g, f), s && (I(t("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", p ? "👍" : "👎", n || "", Oe(u), Oe(e))), Dt(f))), p < 0) break;
976
+ if (e.gclass.gmt.mt_publication_filter ? p = e.gclass.gmt.mt_publication_filter(e, n, g, u) : Mt(f) > 0 && (p = mn(g, f), s && (A(t("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", p ? "👍" : "👎", n || "", Oe(u), Oe(e))), Dt(f))), p < 0) break;
976
977
  if (0 === p) continue;
977
978
  let d = tt(u, n, !0);
978
979
  if (d && d.event_flag & D.EVF_SYSTEM_EVENT && !nt(u, d.event_name, 0)) continue;
979
- i && rn(g, i), o && kt(g, o), s && (I(t("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Oe(u), et(u), n || "", e && !e.running ? "!!" : "", Oe(e))), Dt(g));
980
+ i && rn(g, i), o && kt(g, o), s && (A(t("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", u.running ? "" : "!!", Oe(u), et(u), n || "", e && !e.running ? "!!" : "", Oe(e))), Dt(g));
980
981
  let b = ot(u, n, g, e);
981
982
  if (b < 0 && c & st.__own_event__) {
982
983
  l = -1;
@@ -1084,12 +1085,12 @@ function $t(e, t) {
1084
1085
  for (let n in t) t.hasOwnProperty(n) && e.hasOwnProperty(n) && (e[n] = t[n]);
1085
1086
  return e;
1086
1087
  }
1087
- function It(e, t) {
1088
+ function At(e, t) {
1088
1089
  if (!t) return e;
1089
1090
  for (let n in t) t.hasOwnProperty(n) && !e.hasOwnProperty(n) && (e[n] = t[n]);
1090
1091
  return e;
1091
1092
  }
1092
- function At(e, t) {
1093
+ function It(e, t) {
1093
1094
  if (e && e.hasOwnProperty(t)) return e[t];
1094
1095
  }
1095
1096
  function Lt(e, t) {
@@ -1104,10 +1105,10 @@ function Ut(e, t, n) {
1104
1105
  function Ct(e, t) {
1105
1106
  e.push(t);
1106
1107
  }
1107
- function Gt(e, t) {
1108
+ function Ft(e, t) {
1108
1109
  e.push(t);
1109
1110
  }
1110
- function Ft(e, t) {
1111
+ function Gt(e, t) {
1111
1112
  e.splice(t, 1);
1112
1113
  }
1113
1114
  function Vt(e) {
@@ -1137,10 +1138,10 @@ function zt(e) {
1137
1138
  function Qt(e) {
1138
1139
  return null == e;
1139
1140
  }
1140
- function Ht(e) {
1141
+ function qt(e) {
1141
1142
  return "function" == typeof e;
1142
1143
  }
1143
- function qt(e) {
1144
+ function Ht(e) {
1144
1145
  return e instanceof S;
1145
1146
  }
1146
1147
  function Xt(e) {
@@ -1177,7 +1178,7 @@ function on(e, t) {
1177
1178
  return !(!(t in e) || !e.hasOwnProperty(t));
1178
1179
  }
1179
1180
  function sn(e, t, n, r) {
1180
- if (e && !qt(e) && St("GObj bad instanceof"), !Kt(t) && !Yt(t)) return St(`${Oe(e)}: kw must be list or dict`), 0;
1181
+ if (e && !Ht(e) && St("GObj bad instanceof"), !Kt(t) && !Yt(t)) return St(`${Oe(e)}: kw must be list or dict`), 0;
1181
1182
  if (!Bt(n)) return St(`${Oe(e)}: path must be a string: ${String(n)}`), 0;
1182
1183
  let o = n.split("`");
1183
1184
  if (o.length <= 1) return t[n];
@@ -1186,7 +1187,7 @@ function sn(e, t, n, r) {
1186
1187
  return t;
1187
1188
  }
1188
1189
  function ln(e, t, n) {
1189
- e && !qt(e) && St("GObj bad instanceof");
1190
+ e && !Ht(e) && St("GObj bad instanceof");
1190
1191
  let [r, o] = function(e, t) {
1191
1192
  let n = e.lastIndexOf(t);
1192
1193
  return -1 === n ? [e, ""] : [e.substring(0, n), e.substring(n + 1)];
@@ -1194,7 +1195,7 @@ function ln(e, t, n) {
1194
1195
  return Xt(o) ? Lt(t, n) : Lt(sn(e, t, r, !0), o), 0;
1195
1196
  }
1196
1197
  function _n(e, t, n, r, o) {
1197
- e && !qt(e) && St("GObj bad instanceof");
1198
+ e && !Ht(e) && St("GObj bad instanceof");
1198
1199
  let s = sn(e, t, n, !1);
1199
1200
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1200
1201
  if (void 0 === s) {
@@ -1207,7 +1208,7 @@ function _n(e, t, n, r, o) {
1207
1208
  return _ && ln(e, t, n), Boolean(s);
1208
1209
  }
1209
1210
  function an(e, t, n, r, o) {
1210
- e && !qt(e) && St("GObj bad instanceof");
1211
+ e && !Ht(e) && St("GObj bad instanceof");
1211
1212
  let s = sn(e, t, n, !1);
1212
1213
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1213
1214
  if (void 0 === s) {
@@ -1220,7 +1221,7 @@ function an(e, t, n, r, o) {
1220
1221
  return _ && ln(e, t, n), Jt(s) ? parseInt(s) : (i && (St(`path value MUST BE a number: ${n}`), wt(t)), parseInt(r));
1221
1222
  }
1222
1223
  function un(e, t, n, r, o) {
1223
- e && !qt(e) && St("GObj bad instanceof");
1224
+ e && !Ht(e) && St("GObj bad instanceof");
1224
1225
  let s = sn(e, t, n, !1);
1225
1226
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1226
1227
  if (void 0 === s) {
@@ -1233,7 +1234,7 @@ function un(e, t, n, r, o) {
1233
1234
  return _ && ln(e, t, n), Bt(s) ? String(s) : (i && (St(`${Oe(e)}: path value MUST BE a string: ${n}`), wt(t)), String(r));
1234
1235
  }
1235
1236
  function cn(e, t, n, r, o) {
1236
- e && !qt(e) && St("GObj bad instanceof");
1237
+ e && !Ht(e) && St("GObj bad instanceof");
1237
1238
  let s = sn(e, t, n, !1);
1238
1239
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1239
1240
  if (void 0 === s) {
@@ -1246,7 +1247,7 @@ function cn(e, t, n, r, o) {
1246
1247
  return _ && ln(e, t, n), s;
1247
1248
  }
1248
1249
  function fn(e, t, n, r, o) {
1249
- e && !qt(e) && St("GObj bad instanceof");
1250
+ e && !Ht(e) && St("GObj bad instanceof");
1250
1251
  let s = sn(e, t, n, !1);
1251
1252
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1252
1253
  if (void 0 === s) {
@@ -1259,7 +1260,7 @@ function fn(e, t, n, r, o) {
1259
1260
  return _ && ln(e, t, n), Kt(s) ? Object(s) : (i && (St(`path value MUST BE a dict: ${n}`), wt(t)), Object(r));
1260
1261
  }
1261
1262
  function gn(e, t, n, r, o) {
1262
- e && !qt(e) && St("GObj bad instanceof");
1263
+ e && !Ht(e) && St("GObj bad instanceof");
1263
1264
  let s = sn(e, t, n, !1);
1264
1265
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
1265
1266
  if (void 0 === s) {
@@ -1272,7 +1273,7 @@ function gn(e, t, n, r, o) {
1272
1273
  return _ && ln(e, t, n), s;
1273
1274
  }
1274
1275
  function pn(e, t, n, r) {
1275
- if (e && !qt(e) && St("GObj bad instanceof"), !Kt(t)) return St("kw is not an object"), -1;
1276
+ if (e && !Ht(e) && St("GObj bad instanceof"), !Kt(t)) return St("kw is not an object"), -1;
1276
1277
  let o = n.split("`");
1277
1278
  if (o.length <= 1) return t[n] = r, 0;
1278
1279
  let s = o.length;
@@ -1283,7 +1284,7 @@ function pn(e, t, n, r) {
1283
1284
  return 0;
1284
1285
  }
1285
1286
  function dn(e, t, n, r, o) {
1286
- if (e && !qt(e) && St("GObj bad instanceof"), !Kt(t)) return St("kw is not an object"), -1;
1287
+ if (e && !Ht(e) && St("GObj bad instanceof"), !Kt(t)) return St("kw is not an object"), -1;
1287
1288
  let s = fn(e, t, n, {}, !0);
1288
1289
  return Kt(s) ? (s[r] = o, 0) : (St("subdict is not an object"), -1);
1289
1290
  }
@@ -1305,7 +1306,7 @@ function bn(e, n, r) {
1305
1306
  continue;
1306
1307
  }
1307
1308
  let u = gn(0, e, o, 0, 0);
1308
- if (u || (u = At(e, o)), !u) {
1309
+ if (u || (u = It(e, o)), !u) {
1309
1310
  s = !1;
1310
1311
  break;
1311
1312
  }
@@ -1321,7 +1322,7 @@ function mn(e, t) {
1321
1322
  return 0 === Mt(t) || bn(e, t, "");
1322
1323
  }
1323
1324
  function hn(e, t, n, r) {
1324
- e && !qt(e) && St("GObj bad instanceof");
1325
+ e && !Ht(e) && St("GObj bad instanceof");
1325
1326
  let o = {};
1326
1327
  if (Bt(n) && !Xt(n)) {
1327
1328
  let s = n;
@@ -1387,7 +1388,7 @@ function jn(e, t) {
1387
1388
  return !1;
1388
1389
  }
1389
1390
  function Sn(e, t, n, r, o) {
1390
- if (e && !qt(e) && St("GObj bad instanceof"), !t) return null;
1391
+ if (e && !Ht(e) && St("GObj bad instanceof"), !t) return null;
1391
1392
  o || (o = mn);
1392
1393
  let s = [];
1393
1394
  if (Yt(t)) for (let i = 0; i < t.length; i++) {
@@ -1438,7 +1439,7 @@ function Dn(e, t, n) {
1438
1439
  r || (r = {}, e.__md_iev__ = r), r[t] = n;
1439
1440
  }
1440
1441
  function xn(e, t, n, r) {
1441
- if (!qt(e)) return St("gobj is not a GObj"), null;
1442
+ if (!Ht(e)) return St("gobj is not a GObj"), null;
1442
1443
  if (!t) return;
1443
1444
  let o = wn(t, n);
1444
1445
  o || (o = [], Dn(t, n, o));
@@ -1449,7 +1450,7 @@ function xn(e, t, n, r) {
1449
1450
  }
1450
1451
  }
1451
1452
  function Rn(e, t, n, r) {
1452
- if (!qt(e)) return St("gobj is not a GObj"), null;
1453
+ if (!Ht(e)) return St("gobj is not a GObj"), null;
1453
1454
  if (!Kt(t)) return St("kw is not a dict"), null;
1454
1455
  let o = wn(t, n);
1455
1456
  return o ? 0 === o.length ? (r && St(`stack empty: ${n}`), null) : o[0] : (r && St(`stack NOT FOUND: ${n}`), null);
@@ -1460,7 +1461,7 @@ function kn(e, t, n) {
1460
1461
  function $n(e, t) {
1461
1462
  return un(e, t, "__md_iev__`__msg_type__", "", 0);
1462
1463
  }
1463
- function In(e, t, n) {
1464
+ function An(e, t, n) {
1464
1465
  void 0 !== n && Bt(n) || (n = "");
1465
1466
  for (let r of Object.keys(e)) {
1466
1467
  if (!e.hasOwnProperty(r)) continue;
@@ -1470,10 +1471,10 @@ function In(e, t, n) {
1470
1471
  r,
1471
1472
  e[r],
1472
1473
  n
1473
- ]), Kt(e[r]) && In(e[r], t, n), n = n.slice(0, -o.length);
1474
+ ]), Kt(e[r]) && An(e[r], t, n), n = n.slice(0, -o.length);
1474
1475
  }
1475
1476
  }
1476
- function An(e, t, n, r) {
1477
+ function In(e, t, n, r) {
1477
1478
  if (!e) return null;
1478
1479
  let o, s = e.length;
1479
1480
  for (o = 0; o < s; o++) {
@@ -1482,7 +1483,7 @@ function An(e, t, n, r) {
1482
1483
  let e = s.id;
1483
1484
  if (e && e === n) return s;
1484
1485
  if (r && on(s, t)) {
1485
- let e = An(s[t], t, n, r);
1486
+ let e = In(s[t], t, n, r);
1486
1487
  if (e) return e;
1487
1488
  }
1488
1489
  }
@@ -1531,12 +1532,12 @@ function Cn() {
1531
1532
  const e = /* @__PURE__ */ new Date(), t = e.toISOString().slice(0, 19), n = String(e.getMilliseconds()).padStart(3, "0"), r = e.getTimezoneOffset();
1532
1533
  return `${t}.${n}${r > 0 ? "-" : "+"}${String(Math.abs(r) / 60).padStart(2, "0")}${String(Math.abs(r) % 60).padStart(2, "0")}`;
1533
1534
  }
1534
- function Gn(e, t) {
1535
+ function Fn(e, t) {
1535
1536
  if (!e) throw "ERROR: index_in_list() list empty";
1536
1537
  for (let n = 0; n < e.length; n++) if (t === e[n]) return n;
1537
1538
  return -1;
1538
1539
  }
1539
- function Fn() {
1540
+ function Gn() {
1540
1541
  let e = "";
1541
1542
  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;
1542
1543
  }
@@ -1675,8 +1676,8 @@ var zn = [
1675
1676
  periodic: !1,
1676
1677
  msec: 0,
1677
1678
  timer_id: -1
1678
- }, Hn = null;
1679
- function qn(e, t, n, r) {
1679
+ }, qn = null;
1680
+ function Hn(e, t, n, r) {
1680
1681
  let o = e.priv, s = o.periodic ? "EV_TIMEOUT_PERIODIC" : "EV_TIMEOUT";
1681
1682
  return xe(e) ? ot(we(e), s, {}, e) : dt(e, s, {}), o.periodic && (o.timer_id = setTimeout(function() {
1682
1683
  ot(e, "EV_TIMEOUT", {}, e);
@@ -1703,18 +1704,18 @@ var Xn = {
1703
1704
  return 0;
1704
1705
  },
1705
1706
  mt_stop: function(e) {
1706
- return qe(e, "msec", -1), 0;
1707
+ return He(e, "msec", -1), 0;
1707
1708
  },
1708
1709
  mt_destroy: function(e) {}
1709
1710
  };
1710
1711
  function Zn(e, t) {
1711
- return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : (He(e, "periodic", !1), void qe(e, "msec", t)) : (St("not GObj TYPE"), -1);
1712
+ return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : (qe(e, "periodic", !1), void He(e, "msec", t)) : (St("not GObj TYPE"), -1);
1712
1713
  }
1713
1714
  function er(e, t) {
1714
- return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : (He(e, "periodic", !0), void qe(e, "msec", t)) : (St("not GObj TYPE"), -1);
1715
+ return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : (qe(e, "periodic", !0), void He(e, "msec", t)) : (St("not GObj TYPE"), -1);
1715
1716
  }
1716
1717
  function tr(e) {
1717
- return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : void qe(e, "msec", -1) : (St("not GObj TYPE"), -1);
1718
+ return e instanceof S ? "C_TIMER" !== Se(e) ? (St("not C_TIMER GObj"), -1) : void He(e, "msec", -1) : (St("not GObj TYPE"), -1);
1718
1719
  }
1719
1720
  var nr = [
1720
1721
  v(h.DTP_BOOLEAN, "changesLost", 0, !1, "Set true to warn about leaving page"),
@@ -1749,7 +1750,7 @@ function sr(e, t, n, r) {
1749
1750
  var ir = {
1750
1751
  mt_create: function(e) {
1751
1752
  let t = e.priv;
1752
- Xe(e, "start_date", Cn()), Xe(e, "node_uuid", Fn()), e.priv.gobj_timer = se(je(e), "C_TIMER", {}, e), t.periodic_timeout = Me(e, "periodic_timeout");
1753
+ Xe(e, "start_date", Cn()), Xe(e, "node_uuid", Gn()), e.priv.gobj_timer = se(je(e), "C_TIMER", {}, e), t.periodic_timeout = Me(e, "periodic_timeout");
1753
1754
  },
1754
1755
  mt_writing: function(e, t) {},
1755
1756
  mt_start: function(e) {
@@ -1760,11 +1761,11 @@ var ir = {
1760
1761
  },
1761
1762
  mt_destroy: function(e) {},
1762
1763
  mt_play: function(e) {
1763
- let t = q();
1764
+ let t = H();
1764
1765
  return de(t) || le(t), he(t) || ge(t), 0;
1765
1766
  },
1766
1767
  mt_pause: function(e) {
1767
- return pe(q()), 0;
1768
+ return pe(H()), 0;
1768
1769
  }
1769
1770
  };
1770
1771
  var lr = "ievent_gate_stack", _r = [
@@ -1865,7 +1866,7 @@ function br(e, t, n) {
1865
1866
  src_yuno: Te(),
1866
1867
  src_role: ye(),
1867
1868
  src_service: t,
1868
- host: Fn()
1869
+ host: Gn()
1869
1870
  };
1870
1871
  }
1871
1872
  function mr(e) {
@@ -1884,7 +1885,7 @@ function mr(e) {
1884
1885
  username: Je(Ee(), "__username__"),
1885
1886
  launch_id: 0,
1886
1887
  yuno_startdate: Je(Ee(), "start_date"),
1887
- id: Fn(),
1888
+ id: Gn(),
1888
1889
  user_agent: "undefined" != typeof window ? window.navigator.userAgent : "",
1889
1890
  language: "undefined" != typeof window ? window.navigator.language : "",
1890
1891
  required_services: Me(Ee(), "required_services")
@@ -1905,11 +1906,19 @@ function Tr(e, t, n, r) {
1905
1906
  }
1906
1907
  function yr(e, t, n, r) {
1907
1908
  let o = e.priv, s = n.e, i = n.url;
1908
- return vt(), Ot(`${Oe(e)}: WebSocket closed ${i} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close && (o.inform_on_close = !1, dt(e, "EV_ON_CLOSE", {
1909
+ return vt(), Ot(`${Oe(e)}: WebSocket closed ${i} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), o.websocket && (o.websocket.onopen = null, o.websocket.onmessage = null, o.websocket.onerror = null, o.websocket.onclose = null, o.websocket = null), o.inform_on_close ? (o.inform_on_close = !1, dt(e, "EV_ON_CLOSE", {
1909
1910
  url: i,
1910
1911
  remote_yuno_name: o.remote_yuno_name,
1911
1912
  remote_yuno_role: o.remote_yuno_role,
1912
1913
  remote_yuno_service: o.remote_yuno_service
1914
+ })) : (Ot(`${Oe(e)}: EV_ON_OPEN_ERROR cannot open ${i} (Code: ${s.code}, Reason: "${s.reason}", Clean: ${s.wasClean})`), dt(e, "EV_ON_OPEN_ERROR", {
1915
+ url: i,
1916
+ remote_yuno_name: o.remote_yuno_name,
1917
+ remote_yuno_role: o.remote_yuno_role,
1918
+ remote_yuno_service: o.remote_yuno_service,
1919
+ code: s.code,
1920
+ reason: s.reason,
1921
+ was_clean: s.wasClean
1913
1922
  })), de(e) && Zn(o.gobj_timer, Be(e, "timeout_retry")), 0;
1914
1923
  }
1915
1924
  function vr(e, t, n, r) {
@@ -2091,7 +2100,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2091
2100
  let t = "";
2092
2101
  for (const n of Object.keys(o[e])) t += `${n}: ${o[e][n]};`;
2093
2102
  l.style.cssText = t;
2094
- } else "style" === e ? l.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? (_ = o[e], l.setAttribute("data-i18n", _)) : l.setAttribute(e, o[e]);
2103
+ } else "style" === e ? l.style.cssText = o[e] : "i18n" === e || "data-i18n" === e || "data_i18next" === e || "data-i18next" === e ? null !== o[e] && void 0 !== o[e] && (_ = o[e], l.setAttribute("data-i18n", _)) : l.setAttribute(e, o[e]);
2095
2104
  if (Bt(s)) if (s = s.trim(), s.length > 0 && "<" === s[0]) l.appendChild(Un(s));
2096
2105
  else if (n && _) l.textContent = n(_) || s;
2097
2106
  else l.textContent = s;
@@ -2123,7 +2132,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2123
2132
  0 === Vt(n) ? vn(Wn(e)) : yn(Wn(e), n);
2124
2133
  }, exports.db_save_persistent_attrs = function(e, t) {
2125
2134
  let n = hn(e, Ke(e, E.SDF_PERSIST), t, !1), r = Tn(Wn(e), null, !1);
2126
- r && Kt(r) && It(n, r), yn(Wn(e), n);
2135
+ r && Kt(r) && At(n, r), yn(Wn(e), n);
2127
2136
  }, exports.debounce = function(e, t = 0, n = !1) {
2128
2137
  let r = null, o = null, s = null;
2129
2138
  const i = (...i) => {
@@ -2148,7 +2157,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2148
2157
  Object.assign(t, e);
2149
2158
  }
2150
2159
  return t;
2151
- }, exports.empty_string = Xt, exports.escapeHtml = Pn, exports.event_flag_t = D, exports.gclass_add_ev_action = Y, exports.gclass_add_event_type = J, exports.gclass_add_state = K, exports.gclass_check_fsm = Q, exports.gclass_create = F, exports.gclass_event_type = z, exports.gclass_find_by_name = H, exports.gclass_flag_t = O, exports.gclass_unregister = V, exports.getPositionRelativeToBody = function(e) {
2160
+ }, exports.empty_string = Xt, exports.escapeHtml = Pn, exports.event_flag_t = D, exports.gclass_add_ev_action = Y, exports.gclass_add_event_type = J, exports.gclass_add_state = K, exports.gclass_check_fsm = Q, exports.gclass_create = G, exports.gclass_event_type = z, exports.gclass_find_by_name = q, exports.gclass_flag_t = O, exports.gclass_unregister = V, exports.getPositionRelativeToBody = function(e) {
2152
2161
  if (!e) return {
2153
2162
  top: 0,
2154
2163
  left: 0,
@@ -2174,7 +2183,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2174
2183
  }, exports.gobj_change_state = Ze, exports.gobj_command = function(e, n, o, s) {
2175
2184
  if (Re(e)) return St("gobj NULL or DESTROYED"), -1;
2176
2185
  let i = d && Be(d, "tracing");
2177
- return i && (I(t("🌀🌀 mach(%s%s), cmd: %s, src: %s", de(e) ? "" : "!!", Oe(e), n, Oe(s))), i > 1 && Dt(o)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, n, o, s) : e.gclass.command_table ? u ? u(e, n, o, s) : r(0, -1, t("%s: global command parser not available", Oe(e)), 0, 0) : r(0, -1, t("%s: command table not available", Oe(e)), 0, 0);
2186
+ return i && (A(t("🌀🌀 mach(%s%s), cmd: %s, src: %s", de(e) ? "" : "!!", Oe(e), n, Oe(s))), i > 1 && Dt(o)), e.gclass.gmt.mt_command_parser ? e.gclass.gmt.mt_command_parser(e, n, o, s) : e.gclass.command_table ? u ? u(e, n, o, s) : r(0, -1, t("%s: global command parser not available", Oe(e)), 0, 0) : r(0, -1, t("%s: command table not available", Oe(e)), 0, 0);
2178
2187
  }, exports.gobj_create = function(e, t, n, r) {
2179
2188
  return oe(e, t, n, r, 0);
2180
2189
  }, exports.gobj_create2 = oe, exports.gobj_create_default_service = function(e, t, n, r) {
@@ -2185,7 +2194,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2185
2194
  return oe(e, t, n, r, N.gobj_flag_volatil);
2186
2195
  }, exports.gobj_create_yuno = function(e, t, n) {
2187
2196
  return oe(e, t, n, null, N.gobj_flag_yuno);
2188
- }, exports.gobj_current_state = et, exports.gobj_default_service = q, exports.gobj_destroy = ie, exports.gobj_find_child = Fe, exports.gobj_find_gobj = function(e, t) {
2197
+ }, exports.gobj_current_state = et, exports.gobj_default_service = H, exports.gobj_destroy = ie, exports.gobj_find_child = Ge, exports.gobj_find_gobj = function(e, t) {
2189
2198
  if (Xt(t)) return null;
2190
2199
  const n = t.toLowerCase();
2191
2200
  return "__default_service__" === n ? b : "__yuno__" === n || "__root__" === n ? d : Ve(d, t);
@@ -2217,7 +2226,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2217
2226
  const r = e.dl_children;
2218
2227
  for (let e = 0; e < r.length; e++) {
2219
2228
  const o = r[e];
2220
- Ge(o, t) && n.push(o);
2229
+ Fe(o, t) && n.push(o);
2221
2230
  }
2222
2231
  return n;
2223
2232
  }, exports.gobj_match_children_tree = function(e, t) {
@@ -2227,10 +2236,10 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2227
2236
  let o = r.dl_children;
2228
2237
  for (let r = 0; r < o.length; r++) {
2229
2238
  let s = o[r];
2230
- Ge(s, t) && n.push(s), e(n, s);
2239
+ Fe(s, t) && n.push(s), e(n, s);
2231
2240
  }
2232
2241
  }(n, e), n;
2233
- }, exports.gobj_match_gobj = Ge, exports.gobj_name = je, exports.gobj_parent = we, exports.gobj_pause = pe, exports.gobj_play = ge, exports.gobj_post_event = function(e, t, n, r) {
2242
+ }, exports.gobj_match_gobj = Fe, exports.gobj_name = je, exports.gobj_parent = we, exports.gobj_pause = pe, exports.gobj_play = ge, exports.gobj_post_event = function(e, t, n, r) {
2234
2243
  setTimeout(() => {
2235
2244
  Re(e) || ot(e, t, n, r);
2236
2245
  }, 10);
@@ -2253,12 +2262,12 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2253
2262
  return me(e) ? l ? l(e, t) : -1 : (St(`${Oe(e)}: Only gobj services can load/save writable-persistent`), -1);
2254
2263
  }, exports.gobj_search_path = Ve, exports.gobj_send_event = ot, exports.gobj_services = function() {
2255
2264
  let e = [];
2256
- for (const t of Object.keys(p)) Gt(e, t);
2265
+ for (const t of Object.keys(p)) Ft(e, t);
2257
2266
  return e;
2258
2267
  }, exports.gobj_set_bottom_gobj = $e, exports.gobj_short_name = Oe, exports.gobj_start = le, exports.gobj_start_children = function(e) {
2259
- return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : Ae(e, x.WALK_FIRST2LAST, _e, 0, 0);
2268
+ return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : Ie(e, x.WALK_FIRST2LAST, _e, 0, 0);
2260
2269
  }, exports.gobj_start_tree = function(e) {
2261
- return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : (d && Ye(d, "trace_start_stop") && I(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", Ne(e))), e.gclass.gclass_flag & O.gcflag_manual_start || e.disabled ? 0 : (e.running || le(e), Le(e, x.WALK_TOP2BOTTOM, ae, 0, 0)));
2270
+ return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : (d && Ye(d, "trace_start_stop") && A(t("⏺ ⏺ ⏺ ⏺ start_tree: %s", Ne(e))), e.gclass.gclass_flag & O.gcflag_manual_start || e.disabled ? 0 : (e.running || le(e), Le(e, x.WALK_TOP2BOTTOM, ae, 0, 0)));
2262
2271
  }, exports.gobj_start_up = function(e, t, n, r, o, s, g) {
2263
2272
  i = t, l = n, _ = r, a = o, u = s, c = g;
2264
2273
  const p = [["EV_STATE_CHANGED", D.EVF_SYSTEM_EVENT | D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]];
@@ -2270,7 +2279,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2270
2279
  }, exports.gobj_stats = function(e, n, r, s) {
2271
2280
  return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : e.gclass.gmt.mt_stats ? e.gclass.gmt.mt_stats(e, n, r, s) : c ? c(e, n, r, s) : o(0, -1, t("%s, stats parser not available", Oe(e)), 0, 0);
2272
2281
  }, exports.gobj_stop = ue, exports.gobj_stop_children = fe, exports.gobj_stop_tree = function(e) {
2273
- return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : (d && Ye(d, "trace_start_stop") && I(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Ne(e))), de(e) && ue(e), Le(e, x.WALK_TOP2BOTTOM, ce, 0, 0));
2282
+ return Re(e) ? (St("gobj NULL or DESTROYED"), -1) : (d && Ye(d, "trace_start_stop") && A(t("⏹ ⏹ ⏹ ⏹ stop_tree: %s", Ne(e))), de(e) && ue(e), Le(e, x.WALK_TOP2BOTTOM, ce, 0, 0));
2274
2283
  }, exports.gobj_subscribe_event = ct, exports.gobj_unsubscribe_event = function(e, t, n, r) {
2275
2284
  if (null == n && (n = {}), !e) return St(`publisher NULL: ev ${t}`), 0;
2276
2285
  if (!r) return St(`subscriber NULL: ev ${t}`), 0;
@@ -2291,7 +2300,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2291
2300
  ut(e, n, !1, !1), i++;
2292
2301
  }
2293
2302
  return i || (Ot(`${Oe(e)}: No subscription found`), Dt(n, "No subscription found")), 0;
2294
- }, exports.gobj_unsubscribe_list = ft, exports.gobj_walk_gobj_children = Ae, exports.gobj_walk_gobj_children_tree = Le, exports.gobj_write_attr = function(e, n, r, o) {
2303
+ }, exports.gobj_unsubscribe_list = ft, exports.gobj_walk_gobj_children = Ie, exports.gobj_walk_gobj_children_tree = Le, exports.gobj_write_attr = function(e, n, r, o) {
2295
2304
  if (!Bt(n)) return St(t("gobj_write_attr(%s): path must be a string", Oe(e))), -1;
2296
2305
  let s, i = e.jn_attrs, l = n.split("`");
2297
2306
  if (l.length <= 1) {
@@ -2301,7 +2310,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2301
2310
  let _ = l.length;
2302
2311
  for (let t = 0; t < _; t++) {
2303
2312
  s = l[t];
2304
- let n = Fe(e, { __gobj_name__: s });
2313
+ let n = Ge(e, { __gobj_name__: s });
2305
2314
  if (n && t < _ - 1) {
2306
2315
  e = n;
2307
2316
  continue;
@@ -2311,9 +2320,9 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2311
2320
  break;
2312
2321
  }
2313
2322
  return St(t("gobj_write_attr(%s): attr not found '%s'", Oe(e), s)), -1;
2314
- }, exports.gobj_write_attrs = Qe, exports.gobj_write_bool_attr = He, exports.gobj_write_integer_attr = qe, exports.gobj_write_str_attr = Xe, exports.gobj_yuno = Ee, exports.gobj_yuno_id = ve, exports.gobj_yuno_name = Te, exports.gobj_yuno_role = ye, exports.id_index_in_obj_list = On, exports.index_in_list = Gn, exports.is_array = Yt, exports.is_boolean = zt, exports.is_date = function(e) {
2323
+ }, exports.gobj_write_attrs = Qe, exports.gobj_write_bool_attr = qe, exports.gobj_write_integer_attr = He, exports.gobj_write_str_attr = Xe, exports.gobj_yuno = Ee, exports.gobj_yuno_id = ve, exports.gobj_yuno_name = Te, exports.gobj_yuno_role = ye, exports.id_index_in_obj_list = On, exports.index_in_list = Fn, exports.is_array = Yt, exports.is_boolean = zt, exports.is_date = function(e) {
2315
2324
  return e instanceof Date && !isNaN(e);
2316
- }, exports.is_function = Ht, exports.is_gobj = qt, exports.is_metadata_key = function(e) {
2325
+ }, exports.is_function = qt, exports.is_gobj = Ht, exports.is_metadata_key = function(e) {
2317
2326
  if (!Bt(e)) return !1;
2318
2327
  let t;
2319
2328
  for (t = 0; t < e.length && "_" === e[t] && !(t > 2); t++);
@@ -2333,7 +2342,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2333
2342
  if (!o) return St("jdb_delete: topic not found: " + t), null;
2334
2343
  if (Xt(r.id)) return St("jdb_delete: record without id: " + r), wt(r), null;
2335
2344
  let s, i = n.split("`"), l = o;
2336
- for (; (s = i.shift()) && !Xt(s) && l;) Kt(l) && (l = gn(null, l, e.hook, null, 0)), l = An(l, null, s, !1);
2345
+ for (; (s = i.shift()) && !Xt(s) && l;) Kt(l) && (l = gn(null, l, e.hook, null, 0)), l = In(l, null, s, !1);
2337
2346
  if (0 === i.length && l) if (Yt(l)) {
2338
2347
  let e = On(l, r.id);
2339
2348
  e >= 0 && l.splice(e, 1);
@@ -2344,7 +2353,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2344
2353
  return o;
2345
2354
  }, exports.jdb_get = function(e, t, n, r) {
2346
2355
  let o = gn(null, gn(null, e, "topics", null, 0), t, null, 0);
2347
- return o ? (void 0 === r && (r = !0), An(o, e.hook, n, r)) : (St("jdb_get: topic not found: " + t), null);
2356
+ return o ? (void 0 === r && (r = !0), In(o, e.hook, n, r)) : (St("jdb_get: topic not found: " + t), null);
2348
2357
  }, exports.jdb_get_by_idx = function(e, t, n) {
2349
2358
  let r = gn(null, gn(null, e, "topics", null, 0), t, null, 0);
2350
2359
  return r ? n < r.length ? r[n] : {} : (St("jdb_get_by_idx: topic not found: " + t), null);
@@ -2357,7 +2366,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2357
2366
  let r = gn(null, e, "type", [], 1);
2358
2367
  un(null, e, "hook", "data", 1);
2359
2368
  let o = gn(null, e, "schema", {}, 1), s = gn(null, e, "topics", {}, 1);
2360
- return In(o, function(e, t, n, o) {
2369
+ return An(o, function(e, t, n, o) {
2361
2370
  "__" !== t.substring(0, 2) && gn(null, s, o, xt(r), 1);
2362
2371
  }, t), e;
2363
2372
  }, exports.jdb_update = function(e, t, n, r) {
@@ -2365,17 +2374,17 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2365
2374
  if (!o) return St("jdb_update: topic not found: " + t), null;
2366
2375
  if (Xt(r.id)) return St("jdb_update: record without id: " + r), wt(r), null;
2367
2376
  let s, i = n.split("`"), l = o;
2368
- for (; (s = i.shift()) && !Xt(s) && l;) Kt(l) && (l = gn(null, l, e.hook, [], 1)), l = An(l, null, s, !1);
2377
+ for (; (s = i.shift()) && !Xt(s) && l;) Kt(l) && (l = gn(null, l, e.hook, [], 1)), l = In(l, null, s, !1);
2369
2378
  if (0 === i.length && l) if (Yt(l)) l.push(r);
2370
2379
  else if (l.id === r.id) Object.assign(l, r);
2371
2380
  else {
2372
- let t = gn(null, l, e.hook, [], 1), n = An(t, e.hook, r.id, !1);
2381
+ let t = gn(null, l, e.hook, [], 1), n = In(t, e.hook, r.id, !1);
2373
2382
  n ? Object.assign(n, r) : t.push(r);
2374
2383
  }
2375
2384
  return o;
2376
- }, exports.json_array_append = Ct, exports.json_array_append_new = Gt, exports.json_array_extend = function(e, t) {
2385
+ }, exports.json_array_append = Ct, exports.json_array_append_new = Ft, exports.json_array_extend = function(e, t) {
2377
2386
  return t ? (Array.prototype.push.apply(e, t), e) : e;
2378
- }, exports.json_array_remove = Ft, exports.json_array_size = Wt, exports.json_deep_copy = xt, exports.json_is_identical = Rt, exports.json_object_del = Lt, exports.json_object_get = At, exports.json_object_set = Pt, exports.json_object_set_new = Ut, exports.json_object_size = Vt, exports.json_object_update = kt, exports.json_object_update_existing = $t, exports.json_object_update_missing = It, exports.json_size = Mt, exports.jwt2json = function(e, t) {
2387
+ }, exports.json_array_remove = Gt, exports.json_array_size = Wt, exports.json_deep_copy = xt, exports.json_is_identical = Rt, exports.json_object_del = Lt, exports.json_object_get = It, exports.json_object_set = Pt, exports.json_object_set_new = Ut, exports.json_object_size = Vt, exports.json_object_update = kt, exports.json_object_update_existing = $t, exports.json_object_update_missing = At, exports.json_size = Mt, exports.jwt2json = function(e, t) {
2379
2388
  try {
2380
2389
  let n = Ln(e);
2381
2390
  switch (t) {
@@ -2387,7 +2396,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2387
2396
  return null;
2388
2397
  }
2389
2398
  }, exports.jwtDecode = Ln, exports.kw_clone_by_keys = hn, exports.kw_clone_by_not_keys = En, exports.kw_collect = function(e, t, n, r) {
2390
- if (e && !qt(e) && St("GObj bad instanceof"), !t) return null;
2399
+ if (e && !Ht(e) && St("GObj bad instanceof"), !t) return null;
2391
2400
  r || (r = mn);
2392
2401
  let o = [];
2393
2402
  if (Yt(t)) for (let e = 0; e < t.length; e++) {
@@ -2404,7 +2413,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2404
2413
  for (let e = 0; e < t.length; e++) if (Rt(n, t[e])) return e;
2405
2414
  return r && St("item not found in this list"), -1;
2406
2415
  }, exports.kw_find_path = sn, exports.kw_flag_t = bt, exports.kw_get_bool = _n, exports.kw_get_dict = fn, exports.kw_get_dict_value = gn, exports.kw_get_int = an, exports.kw_get_list = function(e, t, n, r, o) {
2407
- e && !qt(e) && St("GObj bad instanceof");
2416
+ e && !Ht(e) && St("GObj bad instanceof");
2408
2417
  let s = sn(e, t, n, !1);
2409
2418
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
2410
2419
  if (void 0 === s) {
@@ -2416,7 +2425,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2416
2425
  }
2417
2426
  return _ && ln(e, t, n), Yt(s) ? Array(s) : (i && (St(`path value MUST BE an array: ${n}`), wt(t)), Array(r));
2418
2427
  }, exports.kw_get_local_storage_value = Tn, exports.kw_get_pointer = cn, exports.kw_get_real = function(e, t, n, r, o) {
2419
- e && !qt(e) && St("GObj bad instanceof");
2428
+ e && !Ht(e) && St("GObj bad instanceof");
2420
2429
  let s = sn(e, t, n, !1);
2421
2430
  const i = o && o & bt.KW_REQUIRED, l = o && o & bt.KW_CREATE, _ = o && o & bt.KW_EXTRACT;
2422
2431
  if (void 0 === s) {
@@ -2428,7 +2437,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2428
2437
  }
2429
2438
  return _ && ln(e, t, n), Jt(s) ? Number(s) : (i && (St(`path value MUST BE a number: ${n}`), wt(t)), Number(r));
2430
2439
  }, exports.kw_get_str = un, exports.kw_has_key = on, exports.kw_match_simple = mn, exports.kw_pop = rn, exports.kw_remove_local_storage_value = vn, exports.kw_select = function(e, t, n, r) {
2431
- if (e && !qt(e) && St("GObj bad instanceof"), !t) return null;
2440
+ if (e && !Ht(e) && St("GObj bad instanceof"), !t) return null;
2432
2441
  r || (r = mn);
2433
2442
  let o = [];
2434
2443
  if (Yt(t)) for (let e = 0; e < t.length; e++) {
@@ -2441,11 +2450,11 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2441
2450
  }
2442
2451
  return o;
2443
2452
  }, exports.kw_set_dict_value = pn, exports.kw_set_local_storage_value = yn, exports.kw_set_subdict_value = dn, exports.kwid_collect = Sn, exports.kwid_find_one_record = function(e, t, n, r, o) {
2444
- e && !qt(e) && St("GObj bad instanceof");
2453
+ e && !Ht(e) && St("GObj bad instanceof");
2445
2454
  let s = Sn(e, t, n, r, o);
2446
2455
  return s.length > 0 ? s[0] : null;
2447
2456
  }, exports.kwid_get_ids = function(e, t) {
2448
- if (e && !qt(e) && St("GObj bad instanceof"), !t) return [];
2457
+ if (e && !Ht(e) && St("GObj bad instanceof"), !t) return [];
2449
2458
  let n = [];
2450
2459
  if (Bt(t)) n.push(t);
2451
2460
  else if (Kt(t)) for (let e in t) t.hasOwnProperty(e) && n.push(e);
@@ -2458,7 +2467,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2458
2467
  });
2459
2468
  return n;
2460
2469
  }, exports.kwid_match_id = jn, exports.kwid_new_dict = function(e, t, n) {
2461
- e && !qt(e) && St("GObj bad instanceof");
2470
+ e && !Ht(e) && St("GObj bad instanceof");
2462
2471
  let r = {};
2463
2472
  if (Xt(n) || (t = sn(e, t, n)), Kt(t)) r = t;
2464
2473
  else if (Yt(t)) for (let e = 0; e < t.length; e++) {
@@ -2517,15 +2526,21 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2517
2526
  }, exports.log_debug = Nt, exports.log_error = St, exports.log_info = function(e) {
2518
2527
  let t = jt(e), n = Cn();
2519
2528
  Tt && Tt("%c" + n + " INFO: " + String(t), "color:cyan");
2520
- }, exports.log_warning = Ot, exports.msg_iev_get_msg_type = $n, exports.msg_iev_get_stack = Rn, exports.msg_iev_push_stack = xn, exports.msg_iev_read_key = wn, exports.msg_iev_set_msg_type = kn, exports.msg_iev_write_key = Dn, exports.node_uuid = Fn, exports.parseBoolean = Zt, exports.parseSVG = function(e) {
2529
+ }, exports.log_warning = Ot, exports.msg_iev_get_msg_type = $n, exports.msg_iev_get_stack = Rn, exports.msg_iev_push_stack = xn, exports.msg_iev_read_key = wn, exports.msg_iev_set_msg_type = kn, exports.msg_iev_write_key = Dn, exports.node_uuid = Gn, exports.parseBoolean = Zt, exports.parseSVG = function(e) {
2521
2530
  return new DOMParser().parseFromString(e, "image/svg+xml").firstChild;
2522
2531
  }, exports.refresh_language = function(e, t) {
2523
- Ht(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2532
+ qt(t) ? (e || (e = document), e.querySelectorAll("[data-i18n]").forEach(function(e) {
2524
2533
  let n = e.getAttribute("data-i18n");
2525
2534
  for (let r of e.childNodes) if (r.nodeType === Node.TEXT_NODE) {
2526
2535
  n || (n = r.nodeValue), r.nodeValue = t(n);
2527
2536
  break;
2528
2537
  }
2538
+ }), e.querySelectorAll("[data-i18n-title]").forEach(function(e) {
2539
+ let n = e.getAttribute("data-i18n-title");
2540
+ n && e.setAttribute("title", t(n));
2541
+ }), e.querySelectorAll("[data-i18n-aria-label]").forEach(function(e) {
2542
+ let n = e.getAttribute("data-i18n-aria-label");
2543
+ n && e.setAttribute("aria-label", t(n));
2529
2544
  })) : St("You must supply a translation function");
2530
2545
  }, exports.register_c_ievent_cli = function() {
2531
2546
  return function(e) {
@@ -2609,7 +2624,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2609
2624
  ]],
2610
2625
  [null, null]
2611
2626
  ];
2612
- return (ur = F(e, [
2627
+ return (ur = G(e, [
2613
2628
  ["EV_ON_MESSAGE", D.EVF_OUTPUT_EVENT],
2614
2629
  ["EV_IDENTITY_CARD_ACK", D.EVF_PUBLIC_EVENT],
2615
2630
  ["EV_ON_ID_NAK", D.EVF_PUBLIC_EVENT | D.EVF_OUTPUT_EVENT],
@@ -2617,19 +2632,20 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2617
2632
  ["EV_MT_COMMAND", D.EVF_PUBLIC_EVENT],
2618
2633
  ["EV_ON_OPEN", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
2619
2634
  ["EV_ON_CLOSE", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
2635
+ ["EV_ON_OPEN_ERROR", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS],
2620
2636
  ["EV_TIMEOUT", 0],
2621
2637
  [null, 0]
2622
2638
  ], t, wr, 0, _r, ar, 0, 0, 0, O.gcflag_no_check_output_events)) ? 0 : -1;
2623
2639
  }("C_IEVENT_CLI");
2624
2640
  }, exports.register_c_timer = function() {
2625
2641
  return function(e) {
2626
- if (Hn) return St(`GClass ALREADY created: ${e}`), -1;
2642
+ if (qn) return St(`GClass ALREADY created: ${e}`), -1;
2627
2643
  const t = [["ST_IDLE", [[
2628
2644
  "EV_TIMEOUT",
2629
- qn,
2645
+ Hn,
2630
2646
  null
2631
2647
  ]]]];
2632
- return (Hn = F(e, [
2648
+ return (qn = G(e, [
2633
2649
  ["EV_TIMEOUT", D.EVF_OUTPUT_EVENT],
2634
2650
  ["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT],
2635
2651
  [0, 0]
@@ -2643,7 +2659,7 @@ exports.GObj = S, exports.SDATA = v, exports.SDATAAUTHZ = (e, t, n, r, o, s) =>
2643
2659
  sr,
2644
2660
  null
2645
2661
  ]]]];
2646
- return (or = F(e, [["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]], t, ir, 0, nr, rr, 0, 0, 0, 0)) ? 0 : -1;
2662
+ return (or = G(e, [["EV_TIMEOUT_PERIODIC", D.EVF_OUTPUT_EVENT | D.EVF_NO_WARN_SUBS], [0, 0]], t, ir, 0, nr, rr, 0, 0, 0, 0)) ? 0 : -1;
2647
2663
  }("C_YUNO");
2648
2664
  }, exports.safeSrc = function(e) {
2649
2665
  if (!e) return "";