@yuneta/gobj-js 7.26.7 → 7.26.9

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.
@@ -2155,8 +2155,24 @@ function Nl(e, t, n, r) {
2155
2155
  }
2156
2156
  function wl(e, t, n, r, l) {
2157
2157
  if (e && !el(e) && ir("GObj bad instanceof"), !Yr(t)) return ir("kw is not an object"), -1;
2158
- let o = vl(e, t, n, {}, Vn.KW_CREATE);
2159
- return Yr(o) ? (gl(o, r, l), 0) : (ir("subdict is not an object"), -1);
2158
+ let o = bl(e, t, n, !1);
2159
+ if (void 0 === o) {
2160
+ if (!Jr(n) || function(e, t) {
2161
+ let n = t.split("`"), r = e;
2162
+ for (let e = 0; e < n.length - 1; e++) {
2163
+ if (Br(r)) {
2164
+ const t = dl(r, n[e]);
2165
+ if (t < 0) return !1;
2166
+ r = r[t];
2167
+ } else r = Object.prototype.hasOwnProperty.call(r, n[e]) ? r[n[e]] : void 0;
2168
+ if (null == r) return !1;
2169
+ if (!Yr(r) && !Br(r)) return !0;
2170
+ }
2171
+ return !1;
2172
+ }(t, n)) return -1;
2173
+ if (o = {}, Nl(e, t, n, o) < 0) return -1;
2174
+ }
2175
+ return Yr(o) ? (gl(o, r, l), 0) : (ir(`subdict is not an object: '${n}'`), -1);
2160
2176
  }
2161
2177
  function jl(e, n, r) {
2162
2178
  let l = "", o = !1;
@@ -2488,23 +2504,24 @@ function no(e, t, n) {
2488
2504
  }
2489
2505
  function ro(e, t, n) {
2490
2506
  n && (e = jr(e));
2491
- let r = Ol(null, e, "type", [], 1);
2492
- yl(null, e, "hook", "data", 1);
2493
- let l = Ol(null, e, "schema", {}, 1), o = Ol(null, e, "topics", {}, 1);
2507
+ let r = Ol(null, e, "type", [], Vn.KW_CREATE);
2508
+ yl(null, e, "hook", "data", Vn.KW_CREATE);
2509
+ let l = Ol(null, e, "schema", {}, Vn.KW_CREATE), o = Ol(null, e, "topics", {}, Vn.KW_CREATE);
2494
2510
  return no(l, function(e, t, n, l) {
2495
- "__" !== t.substring(0, 2) && Ol(null, o, l, jr(r), 1);
2511
+ "__" !== t.substring(0, 2) && Ol(null, o, l, jr(r), Vn.KW_CREATE);
2496
2512
  }, t), e;
2497
2513
  }
2498
2514
  function lo(e, t, n, r) {
2499
2515
  let l = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2500
2516
  if (!l) return ir("jdb_update: topic not found: " + t), null;
2501
2517
  if (tl(r.id)) return ir("jdb_update: record without id: " + r), _r(r), null;
2518
+ if (!Jr(n)) return ir(`jdb_update: path must be a string: ${String(n)}`), null;
2502
2519
  let o, i = n.split("`"), s = l;
2503
- for (; (o = i.shift()) && !tl(o) && s;) Yr(s) && (s = Ol(null, s, e.hook, [], 1)), s = uo(s, null, o, !1);
2520
+ for (; (o = i.shift()) && !tl(o) && s;) Yr(s) && (s = Ol(null, s, e.hook, [], Vn.KW_CREATE)), s = uo(s, null, o, !1);
2504
2521
  if (0 === i.length && s) if (Br(s)) s.push(r);
2505
2522
  else if (s.id === r.id) Dr(s, r);
2506
2523
  else {
2507
- let t = Ol(null, s, e.hook, [], 1), n = uo(t, e.hook, r.id, !1);
2524
+ let t = Ol(null, s, e.hook, [], Vn.KW_CREATE), n = uo(t, e.hook, r.id, !1);
2508
2525
  n ? Dr(n, r) : t.push(r);
2509
2526
  }
2510
2527
  return l;
@@ -2513,6 +2530,7 @@ function oo(e, t, n, r) {
2513
2530
  let l = Ol(null, Ol(null, e, "topics", null, 0), t, null, 0);
2514
2531
  if (!l) return ir("jdb_delete: topic not found: " + t), null;
2515
2532
  if (tl(r.id)) return ir("jdb_delete: record without id: " + r), _r(r), null;
2533
+ if (!Jr(n)) return ir(`jdb_delete: path must be a string: ${String(n)}`), null;
2516
2534
  let o, i = n.split("`"), s = l;
2517
2535
  for (; (o = i.shift()) && !tl(o) && s;) Yr(s) && (s = Ol(null, s, e.hook, null, 0)), s = uo(s, null, o, !1);
2518
2536
  if (0 === i.length && s) if (Br(s)) {