@dcupl/bundle 2.0.0-beta.21 → 2.0.0-beta.22

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.
@@ -521,7 +521,7 @@
521
521
  g$1.Request = Request;
522
522
  g$1.Response = Response;
523
523
  }
524
- var xt$1 = typeof global == "object" && global && global.Object === Object && global, ur$1 = typeof self == "object" && self && self.Object === Object && self, M$2 = xt$1 || ur$1 || Function("return this")(), x$1 = M$2.Symbol, St$1 = Object.prototype, cr$1 = St$1.hasOwnProperty, fr$1 = St$1.toString, L$3 = x$1 ? x$1.toStringTag : void 0;
524
+ var xt$1 = typeof global == "object" && global && global.Object === Object && global, ur$1 = typeof self == "object" && self && self.Object === Object && self, M$2 = xt$1 || ur$1 || Function("return this")(), x$2 = M$2.Symbol, St$1 = Object.prototype, cr$1 = St$1.hasOwnProperty, fr$1 = St$1.toString, L$3 = x$2 ? x$2.toStringTag : void 0;
525
525
  function lr$1(r) {
526
526
  var e = cr$1.call(r, L$3), t = r[L$3];
527
527
  try {
@@ -536,23 +536,23 @@
536
536
  function pr$1(r) {
537
537
  return hr$1.call(r);
538
538
  }
539
- var gr$1 = "[object Null]", yr$1 = "[object Undefined]", Re$2 = x$1 ? x$1.toStringTag : void 0;
539
+ var gr$1 = "[object Null]", yr$1 = "[object Undefined]", Re$2 = x$2 ? x$2.toStringTag : void 0;
540
540
  function N$4(r) {
541
541
  return r == null ? r === void 0 ? yr$1 : gr$1 : Re$2 && Re$2 in Object(r) ? lr$1(r) : pr$1(r);
542
542
  }
543
- function O$1(r) {
543
+ function O$2(r) {
544
544
  return r != null && typeof r == "object";
545
545
  }
546
546
  var mr$1 = "[object Symbol]";
547
547
  function F$2(r) {
548
- return typeof r == "symbol" || O$1(r) && N$4(r) == mr$1;
548
+ return typeof r == "symbol" || O$2(r) && N$4(r) == mr$1;
549
549
  }
550
550
  function z$4(r, e) {
551
551
  for (var t = -1, n = r == null ? 0 : r.length, s = Array(n); ++t < n; )
552
552
  s[t] = e(r[t], t, r);
553
553
  return s;
554
554
  }
555
- var v$2 = Array.isArray, Fe$2 = x$1 ? x$1.prototype : void 0, ke$1 = Fe$2 ? Fe$2.toString : void 0;
555
+ var v$2 = Array.isArray, Fe$2 = x$2 ? x$2.prototype : void 0, ke$1 = Fe$2 ? Fe$2.toString : void 0;
556
556
  function Tt(r) {
557
557
  if (typeof r == "string")
558
558
  return r;
@@ -793,12 +793,12 @@
793
793
  }
794
794
  var bn$1 = "[object Arguments]";
795
795
  function He$3(r) {
796
- return O$1(r) && N$4(r) == bn$1;
796
+ return O$2(r) && N$4(r) == bn$1;
797
797
  }
798
798
  var Ct$1 = Object.prototype, vn$1 = Ct$1.hasOwnProperty, wn$1 = Ct$1.propertyIsEnumerable, De$2 = He$3(/* @__PURE__ */ (function() {
799
799
  return arguments;
800
800
  })()) ? He$3 : function(r) {
801
- return O$1(r) && vn$1.call(r, "callee") && !wn$1.call(r, "callee");
801
+ return O$2(r) && vn$1.call(r, "callee") && !wn$1.call(r, "callee");
802
802
  };
803
803
  function An$1() {
804
804
  return false;
@@ -807,7 +807,7 @@
807
807
  m[Rn$1] = m[Fn$1] = m[kn$1] = m[Gn$1] = m[Ln$1] = m[zn$1] = m[Bn$1] = m[Un$1] = m[Hn$1] = true;
808
808
  m[Tn$1] = m[On$1] = m[Kn$1] = m[Mn$1] = m[Pn$1] = m[$n$1] = m[_n$1] = m[Cn$1] = m[In$1] = m[Dn$1] = m[En$1] = m[Qn$1] = m[Nn$1] = m[jn$1] = m[qn$1] = false;
809
809
  function Wn$1(r) {
810
- return O$1(r) && Ie$2(r.length) && !!m[N$4(r)];
810
+ return O$2(r) && Ie$2(r.length) && !!m[N$4(r)];
811
811
  }
812
812
  function J$2(r) {
813
813
  return function(e) {
@@ -1030,7 +1030,7 @@
1030
1030
  r[s + t] = e[t];
1031
1031
  return r;
1032
1032
  }
1033
- var Je$3 = x$1 ? x$1.isConcatSpreadable : void 0;
1033
+ var Je$3 = x$2 ? x$2.isConcatSpreadable : void 0;
1034
1034
  function js$1(r) {
1035
1035
  return v$2(r) || De$2(r) || !!(Je$3 && r && r[Je$3]);
1036
1036
  }
@@ -1108,8 +1108,8 @@
1108
1108
  function we$2(r) {
1109
1109
  return oi(r, ce$1, ii);
1110
1110
  }
1111
- var Ae$2 = q(M$2, "DataView"), xe$2 = q(M$2, "Promise"), Se$2 = q(M$2, "Set"), rt$2 = "[object Map]", ai = "[object Object]", nt$2 = "[object Promise]", st$2 = "[object Set]", it$2 = "[object WeakMap]", ot$2 = "[object DataView]", ui = j$2(Ae$2), ci = j$2(H$1), fi = j$2(xe$2), li = j$2(Se$2), di = j$2(ve$1), A$2 = N$4;
1112
- (Ae$2 && A$2(new Ae$2(new ArrayBuffer(1))) != ot$2 || H$1 && A$2(new H$1()) != rt$2 || xe$2 && A$2(xe$2.resolve()) != nt$2 || Se$2 && A$2(new Se$2()) != st$2 || ve$1 && A$2(new ve$1()) != it$2) && (A$2 = function(r) {
1111
+ var Ae$2 = q(M$2, "DataView"), xe$2 = q(M$2, "Promise"), Se$2 = q(M$2, "Set"), rt$2 = "[object Map]", ai = "[object Object]", nt$2 = "[object Promise]", st$2 = "[object Set]", it$2 = "[object WeakMap]", ot$2 = "[object DataView]", ui = j$2(Ae$2), ci = j$2(H$1), fi = j$2(xe$2), li = j$2(Se$2), di = j$2(ve$1), A$1 = N$4;
1112
+ (Ae$2 && A$1(new Ae$2(new ArrayBuffer(1))) != ot$2 || H$1 && A$1(new H$1()) != rt$2 || xe$2 && A$1(xe$2.resolve()) != nt$2 || Se$2 && A$1(new Se$2()) != st$2 || ve$1 && A$1(new ve$1()) != it$2) && (A$1 = function(r) {
1113
1113
  var e = N$4(r), t = e == ai ? r.constructor : void 0, n = t ? j$2(t) : "";
1114
1114
  if (n)
1115
1115
  switch (n) {
@@ -1145,7 +1145,7 @@
1145
1145
  var e = new r.constructor(r.source, mi.exec(r));
1146
1146
  return e.lastIndex = r.lastIndex, e;
1147
1147
  }
1148
- var at$3 = x$1 ? x$1.prototype : void 0, ut$1 = at$3 ? at$3.valueOf : void 0;
1148
+ var at$3 = x$2 ? x$2.prototype : void 0, ut$1 = at$3 ? at$3.valueOf : void 0;
1149
1149
  function vi(r) {
1150
1150
  return ut$1 ? Object(ut$1.call(r)) : {};
1151
1151
  }
@@ -1192,11 +1192,11 @@
1192
1192
  }
1193
1193
  var Gi = "[object Map]";
1194
1194
  function Li(r) {
1195
- return O$1(r) && A$2(r) == Gi;
1195
+ return O$2(r) && A$1(r) == Gi;
1196
1196
  }
1197
1197
  var ct$3 = k$1 && k$1.isMap, zi = ct$3 ? J$2(ct$3) : Li, Bi = "[object Set]";
1198
1198
  function Ui(r) {
1199
- return O$1(r) && A$2(r) == Bi;
1199
+ return O$2(r) && A$1(r) == Bi;
1200
1200
  }
1201
1201
  var ft$1 = k$1 && k$1.isSet, Hi = ft$1 ? J$2(ft$1) : Ui, Wi = 1, Pt$1 = "[object Arguments]", Vi = "[object Array]", Zi = "[object Boolean]", Ji = "[object Date]", Xi = "[object Error]", Rt$1 = "[object Function]", Yi = "[object GeneratorFunction]", eo$1 = "[object Map]", to$1 = "[object Number]", Ft$1 = "[object Object]", ro$1 = "[object RegExp]", no$1 = "[object Set]", so$1 = "[object String]", io$1 = "[object Symbol]", oo$1 = "[object WeakMap]", ao$1 = "[object ArrayBuffer]", uo$1 = "[object DataView]", co$1 = "[object Float32Array]", fo$1 = "[object Float64Array]", lo$1 = "[object Int8Array]", ho$1 = "[object Int16Array]", po$1 = "[object Int32Array]", go$1 = "[object Uint8Array]", yo$1 = "[object Uint8ClampedArray]", mo$1 = "[object Uint16Array]", bo$1 = "[object Uint32Array]", y$1 = {};
1202
1202
  y$1[Pt$1] = y$1[Vi] = y$1[ao$1] = y$1[uo$1] = y$1[Zi] = y$1[Ji] = y$1[co$1] = y$1[fo$1] = y$1[lo$1] = y$1[ho$1] = y$1[po$1] = y$1[eo$1] = y$1[to$1] = y$1[Ft$1] = y$1[ro$1] = y$1[no$1] = y$1[so$1] = y$1[io$1] = y$1[go$1] = y$1[yo$1] = y$1[mo$1] = y$1[bo$1] = true;
@@ -1211,7 +1211,7 @@
1211
1211
  if (u)
1212
1212
  o = gi(r);
1213
1213
  else {
1214
- var c = A$2(r), f = c == Rt$1 || c == Yi;
1214
+ var c = A$1(r), f = c == Rt$1 || c == Yi;
1215
1215
  if (oe$1(r))
1216
1216
  return ei(r, a);
1217
1217
  if (c == Ft$1 || c == Pt$1 || f && !s)
@@ -1237,7 +1237,7 @@
1237
1237
  }), o;
1238
1238
  }
1239
1239
  var vo$1 = 1, wo$1 = 4;
1240
- function C$1(r) {
1240
+ function C$2(r) {
1241
1241
  return se$1(r, vo$1 | wo$1);
1242
1242
  }
1243
1243
  var Ao$1 = "__lodash_hash_undefined__";
@@ -1283,8 +1283,8 @@
1283
1283
  break;
1284
1284
  }
1285
1285
  if (h) {
1286
- if (!To$1(e, function(I2, D2) {
1287
- if (!kt$1(h, D2) && (p2 === I2 || s(p2, I2, t, n, i)))
1286
+ if (!To$1(e, function(I, D2) {
1287
+ if (!kt$1(h, D2) && (p2 === I || s(p2, I, t, n, i)))
1288
1288
  return h.push(D2);
1289
1289
  })) {
1290
1290
  d = false;
@@ -1309,7 +1309,7 @@
1309
1309
  t[++e] = n;
1310
1310
  }), t;
1311
1311
  }
1312
- var Co$1 = 1, Io$1 = 2, Do = "[object Boolean]", Eo$1 = "[object Date]", Qo = "[object Error]", No = "[object Map]", jo$1 = "[object Number]", qo = "[object RegExp]", Ko = "[object Set]", Po$1 = "[object String]", Ro$1 = "[object Symbol]", Fo$1 = "[object ArrayBuffer]", ko$1 = "[object DataView]", lt$3 = x$1 ? x$1.prototype : void 0, ge = lt$3 ? lt$3.valueOf : void 0;
1312
+ var Co$1 = 1, Io$1 = 2, Do = "[object Boolean]", Eo$1 = "[object Date]", Qo = "[object Error]", No = "[object Map]", jo$1 = "[object Number]", qo = "[object RegExp]", Ko = "[object Set]", Po$1 = "[object String]", Ro$1 = "[object Symbol]", Fo$1 = "[object ArrayBuffer]", ko$1 = "[object DataView]", lt$3 = x$2 ? x$2.prototype : void 0, ge = lt$3 ? lt$3.valueOf : void 0;
1313
1313
  function Go(r, e, t, n, s, i, o) {
1314
1314
  switch (t) {
1315
1315
  case ko$1:
@@ -1362,10 +1362,10 @@
1362
1362
  i.set(r, e), i.set(e, r);
1363
1363
  for (var w = o; ++l < u; ) {
1364
1364
  d = a[l];
1365
- var I2 = r[d], D2 = e[d];
1365
+ var I = r[d], D2 = e[d];
1366
1366
  if (n)
1367
- var Pe2 = o ? n(D2, I2, d, e, r, i) : n(I2, D2, d, r, e, i);
1368
- if (!(Pe2 === void 0 ? I2 === D2 || s(I2, D2, t, n, i) : Pe2)) {
1367
+ var Pe2 = o ? n(D2, I, d, e, r, i) : n(I, D2, d, r, e, i);
1368
+ if (!(Pe2 === void 0 ? I === D2 || s(I, D2, t, n, i) : Pe2)) {
1369
1369
  g2 = false;
1370
1370
  break;
1371
1371
  }
@@ -1379,7 +1379,7 @@
1379
1379
  }
1380
1380
  var Ho = 1, dt$3 = "[object Arguments]", ht = "[object Array]", re$2 = "[object Object]", Wo = Object.prototype, pt$1 = Wo.hasOwnProperty;
1381
1381
  function Vo$1(r, e, t, n, s, i) {
1382
- var o = v$2(r), a = v$2(e), u = o ? ht : A$2(r), c = a ? ht : A$2(e);
1382
+ var o = v$2(r), a = v$2(e), u = o ? ht : A$1(r), c = a ? ht : A$1(e);
1383
1383
  u = u == dt$3 ? re$2 : u, c = c == dt$3 ? re$2 : c;
1384
1384
  var f = u == re$2, l = c == re$2, d = u == c;
1385
1385
  if (d && oe$1(r)) {
@@ -1399,7 +1399,7 @@
1399
1399
  return d ? (i || (i = new T$2()), Uo(r, e, t, n, s, i)) : false;
1400
1400
  }
1401
1401
  function X$2(r, e, t, n, s) {
1402
- return r === e ? true : r == null || e == null || !O$1(r) && !O$1(e) ? r !== r && e !== e : Vo$1(r, e, t, n, X$2, s);
1402
+ return r === e ? true : r == null || e == null || !O$2(r) && !O$2(e) ? r !== r && e !== e : Vo$1(r, e, t, n, X$2, s);
1403
1403
  }
1404
1404
  var Zo = 1, Jo = 2;
1405
1405
  function Lt$1(r, e, t, n) {
@@ -1512,7 +1512,7 @@
1512
1512
  }
1513
1513
  var Wt$1 = fa(ca);
1514
1514
  function ye(r) {
1515
- return O$1(r) && G$1(r);
1515
+ return O$2(r) && G$1(r);
1516
1516
  }
1517
1517
  var la = 200;
1518
1518
  function da(r, e, t, n) {
@@ -1586,7 +1586,7 @@
1586
1586
  }
1587
1587
  var wa = "[object String]";
1588
1588
  function Aa(r) {
1589
- return typeof r == "string" || !v$2(r) && O$1(r) && N$4(r) == wa;
1589
+ return typeof r == "string" || !v$2(r) && O$2(r) && N$4(r) == wa;
1590
1590
  }
1591
1591
  function xa(r, e) {
1592
1592
  return X$2(r, e);
@@ -1663,7 +1663,7 @@
1663
1663
  return 0;
1664
1664
  if (G$1(r))
1665
1665
  return Aa(r) ? Fa(r) : r.length;
1666
- var e = A$2(r);
1666
+ var e = A$1(r);
1667
1667
  return e == ka || e == Ga ? r.size : Nt$1(r).length;
1668
1668
  }
1669
1669
  function qe$3(r) {
@@ -2583,7 +2583,7 @@
2583
2583
  }
2584
2584
  generateContext(e) {
2585
2585
  try {
2586
- return C$1(e);
2586
+ return C$2(e);
2587
2587
  } catch (t) {
2588
2588
  return this.log.error("Error in cache generateContext", t), e;
2589
2589
  }
@@ -2653,7 +2653,7 @@
2653
2653
  };
2654
2654
  }
2655
2655
  }
2656
- const sr$1 = (r, e) => e ? typeof structuredClone < "u" ? structuredClone(r) : C$1(r) : r, vt = (r, e, t, n, s, i) => {
2656
+ const sr$1 = (r, e) => e ? typeof structuredClone < "u" ? structuredClone(r) : C$2(r) : r, vt = (r, e, t, n, s, i) => {
2657
2657
  try {
2658
2658
  const o = !!e.dcuplInitOptions.performance?.clone?.enabled && !!t.cloneResult, a = sr$1(i, o);
2659
2659
  if (t.scope === "list" && (t.listKey = r.cdRef?.key || r.key, t.modelKey = r.model?.key || r.modelKey), t.type === "list_created" && t.args[0].listKey.startsWith("__global_list__") || t.listKey?.startsWith("__global_list__"))
@@ -3082,13 +3082,13 @@
3082
3082
  }
3083
3083
  }
3084
3084
  const S$2 = new ru();
3085
- function K$3(r, e) {
3085
+ function K$2(r, e) {
3086
3086
  if (e.includes("[*]")) {
3087
3087
  const i = e.indexOf("[*]"), o = e.substring(0, i), a = e.substring(i + 3), u = o ? W$2(r, o) : r;
3088
3088
  if (!Array.isArray(u)) return [];
3089
3089
  const c = [];
3090
3090
  for (const f of u)
3091
- !a || a === "" ? f !== void 0 && c.push(f) : a.startsWith(".") && c.push(...K$3(f, a.slice(1)));
3091
+ !a || a === "" ? f !== void 0 && c.push(f) : a.startsWith(".") && c.push(...K$2(f, a.slice(1)));
3092
3092
  return c;
3093
3093
  }
3094
3094
  const t = e.split(".");
@@ -3149,7 +3149,7 @@
3149
3149
  for (const s of e.values())
3150
3150
  if (s)
3151
3151
  if (t)
3152
- n += K$3(s, r).filter((i) => i != null).length;
3152
+ n += K$2(s, r).filter((i) => i != null).length;
3153
3153
  else {
3154
3154
  const i = s[r];
3155
3155
  if (i == null) continue;
@@ -3163,7 +3163,7 @@
3163
3163
  if (!i) continue;
3164
3164
  let o;
3165
3165
  if (s)
3166
- o = K$3(i, r);
3166
+ o = K$2(i, r);
3167
3167
  else {
3168
3168
  const a = i[r];
3169
3169
  a === void 0 ? o = [] : Array.isArray(a) ? o = a.filter((u) => u !== void 0) : o = [a];
@@ -3189,7 +3189,7 @@
3189
3189
  }, s = S$2.parse(r.attribute).isDeepQuery;
3190
3190
  for (const i of e.values()) {
3191
3191
  let o;
3192
- s ? o = K$3(i, r.attribute) : o = [i[r.attribute]];
3192
+ s ? o = K$2(i, r.attribute) : o = [i[r.attribute]];
3193
3193
  let a = false;
3194
3194
  for (const u of o)
3195
3195
  for (const c of t)
@@ -3204,7 +3204,7 @@
3204
3204
  if (!i) continue;
3205
3205
  let o;
3206
3206
  if (s)
3207
- o = K$3(i, r);
3207
+ o = K$2(i, r);
3208
3208
  else {
3209
3209
  const a = i[r];
3210
3210
  a === void 0 ? o = [] : Array.isArray(a) ? o = a : o = [a];
@@ -3248,7 +3248,7 @@
3248
3248
  queries: []
3249
3249
  };
3250
3250
  _initOptions;
3251
- currentQuery = C$1(this._defaultQueryOptions);
3251
+ currentQuery = C$2(this._defaultQueryOptions);
3252
3252
  deepQueryService;
3253
3253
  constructor(e) {
3254
3254
  this.deepQueryService = e || S$2;
@@ -3277,7 +3277,7 @@
3277
3277
  * });
3278
3278
  */
3279
3279
  init(e) {
3280
- this._initOptions = C$1(e), this.currentQuery = C$1(this._defaultQueryOptions), this.currentQuery.modelKey = e.modelKey, "queries" in e && Array.isArray(e.queries) && (e.groupType && (this.currentQuery.groupType = e.groupType), e.queries && (this.currentQuery.queries = C$1(e.queries)), e.count !== void 0 && (this.currentQuery.count = e.count), e.start !== void 0 && (this.currentQuery.start = e.start), e.sort && (this.currentQuery.sort = e.sort), e.projection && (this.currentQuery.projection = e.projection));
3280
+ this._initOptions = C$2(e), this.currentQuery = C$2(this._defaultQueryOptions), this.currentQuery.modelKey = e.modelKey, "queries" in e && Array.isArray(e.queries) && (e.groupType && (this.currentQuery.groupType = e.groupType), e.queries && (this.currentQuery.queries = C$2(e.queries)), e.count !== void 0 && (this.currentQuery.count = e.count), e.start !== void 0 && (this.currentQuery.start = e.start), e.sort && (this.currentQuery.sort = e.sort), e.projection && (this.currentQuery.projection = e.projection));
3281
3281
  }
3282
3282
  reset() {
3283
3283
  return this.init(this._initOptions), this.getQuery();
@@ -3295,7 +3295,7 @@
3295
3295
  return this.currentQuery.queries.find((t) => this.isQueryGroup(t) && t.groupKey === e);
3296
3296
  }
3297
3297
  getQuery() {
3298
- return C$1(this.currentQuery);
3298
+ return C$2(this.currentQuery);
3299
3299
  }
3300
3300
  hasQueryGroup(e) {
3301
3301
  return this.currentQuery.queries.some((t) => this.isQueryGroup(t) && t.groupKey === e);
@@ -3933,7 +3933,7 @@
3933
3933
  };
3934
3934
  const _e$2 = new ir$1();
3935
3935
  function Qu(r, e, t, n, s, i, o) {
3936
- const a = t.excludeGroup ?? s, u = _e$2.removeQuery({ groupKey: a }, C$1(n)), c = o.queryData(r, u, false, i), f = e ? [...e.keys()] : [], l = new Set(f), d = i.get(s) ?? /* @__PURE__ */ new Map();
3936
+ const a = t.excludeGroup ?? s, u = _e$2.removeQuery({ groupKey: a }, C$2(n)), c = o.queryData(r, u, false, i), f = e ? [...e.keys()] : [], l = new Set(f), d = i.get(s) ?? /* @__PURE__ */ new Map();
3937
3937
  if (!t.excludeUnresolved)
3938
3938
  for (const p2 of d.keys())
3939
3939
  l.add(p2);
@@ -4100,7 +4100,7 @@
4100
4100
  const a = S$2.parse(e).isDeepQuery;
4101
4101
  for (const u of t.values()) {
4102
4102
  let c;
4103
- a ? (c = K$3(u, e), c.length === 0 && (c = [void 0])) : c = [u[e]], this.fillInverseIndex(s, u.key, c), this.fillDataMap(s, c);
4103
+ a ? (c = K$2(u, e), c.length === 0 && (c = [void 0])) : c = [u[e]], this.fillInverseIndex(s, u.key, c), this.fillDataMap(s, c);
4104
4104
  }
4105
4105
  i = this.getIndex(s) || /* @__PURE__ */ new Map();
4106
4106
  }
@@ -4535,7 +4535,7 @@
4535
4535
  if (s == null)
4536
4536
  return;
4537
4537
  if (Array.isArray(s) && o !== "length" && !/^\d+$/.test(o))
4538
- return K$3(s, n.slice(i).join("."));
4538
+ return K$2(s, n.slice(i).join("."));
4539
4539
  s = s[o];
4540
4540
  }
4541
4541
  return s;
@@ -5301,7 +5301,7 @@
5301
5301
  }
5302
5302
  d.forEach((g2) => {
5303
5303
  let y2;
5304
- h ? (y2 = K$3(g2, e), y2.length === 0 && (y2 = [void 0])) : y2 = [g2[e]], this.indicesController.fillInverseIndex(e, g2.key, y2), this.indicesController.fillDataMap(e, y2);
5304
+ h ? (y2 = K$2(g2, e), y2.length === 0 && (y2 = [void 0])) : y2 = [g2[e]], this.indicesController.fillInverseIndex(e, g2.key, y2), this.indicesController.fillDataMap(e, y2);
5305
5305
  }), n = this.indicesController.getIndex(e), t || (o = this.indicesController.getData(e));
5306
5306
  }
5307
5307
  const f = Qu(
@@ -5556,10 +5556,10 @@
5556
5556
  }), i;
5557
5557
  }
5558
5558
  };
5559
- var K$2 = Object.defineProperty, $$1 = Object.getOwnPropertyDescriptor, D$2 = (A2, e, t, r) => {
5559
+ var K$1 = Object.defineProperty, $$1 = Object.getOwnPropertyDescriptor, D$2 = (A2, e, t, r) => {
5560
5560
  for (var i = $$1(e, t), n = A2.length - 1, s; n >= 0; n--)
5561
5561
  (s = A2[n]) && (i = s(e, t, i) || i);
5562
- return i && K$2(e, t, i), i;
5562
+ return i && K$1(e, t, i), i;
5563
5563
  };
5564
5564
  let p$2 = class p {
5565
5565
  constructor(e, t, r) {
@@ -5931,7 +5931,10 @@
5931
5931
  });
5932
5932
  if (this.filter.cacheCtrl.has("query", t))
5933
5933
  return this.filter.cacheCtrl.get("query", t);
5934
- const i = Object.assign({}, e, { modelKey: this.model.key }), n = this.dcuplApi.queryManager.queryData(
5934
+ const i = Object.assign({}, e, {
5935
+ queries: e.queries ?? [],
5936
+ modelKey: this.model.key
5937
+ }), n = this.dcuplApi.queryManager.queryData(
5935
5938
  this.filter.filteredData,
5936
5939
  i,
5937
5940
  false,
@@ -6312,15 +6315,15 @@
6312
6315
  function Q$3(d) {
6313
6316
  return G$1(d) ? Xn$1(d, true) : Ge$1(d);
6314
6317
  }
6315
- var xe$1 = "[object Object]", Te$1 = Function.prototype, Ke$1 = Object.prototype, z$2 = Te$1.toString, _e$1 = Ke$1.hasOwnProperty, $e$1 = z$2.call(Object);
6316
- function we$1(d) {
6317
- if (!O$1(d) || N$4(d) != xe$1)
6318
+ var xe$1 = "[object Object]", Te$1 = Function.prototype, Ke$1 = Object.prototype, z$2 = Te$1.toString, _e$1 = Ke$1.hasOwnProperty, we$1 = z$2.call(Object);
6319
+ function $e$1(d) {
6320
+ if (!O$2(d) || N$4(d) != xe$1)
6318
6321
  return false;
6319
6322
  var e = Ks$1(d);
6320
6323
  if (e === null)
6321
6324
  return true;
6322
6325
  var t = _e$1.call(e, "constructor") && e.constructor;
6323
- return typeof t == "function" && t instanceof t && z$2.call(t) == $e$1;
6326
+ return typeof t == "function" && t instanceof t && z$2.call(t) == we$1;
6324
6327
  }
6325
6328
  function Fe$1(d, e, t, s) {
6326
6329
  for (var r = -1, i = d == null ? 0 : d.length; ++r < i; ) {
@@ -6340,10 +6343,10 @@
6340
6343
  return r(t, d, Y$3(s), i);
6341
6344
  };
6342
6345
  }
6343
- function T$1(d, e, t) {
6346
+ function x$1(d, e, t) {
6344
6347
  (t !== void 0 && !Ce$2(d[e], t) || t === void 0 && !(e in d)) && cn$1(d, e, t);
6345
6348
  }
6346
- function K$1(d, e) {
6349
+ function T$1(d, e) {
6347
6350
  if (!(e === "constructor" && typeof d[e] == "function") && e != "__proto__")
6348
6351
  return d[e];
6349
6352
  }
@@ -6351,25 +6354,25 @@
6351
6354
  return De$1(d, Q$3(d));
6352
6355
  }
6353
6356
  function Ve$1(d, e, t, s, r, i, o) {
6354
- var n = K$1(d, t), a = K$1(e, t), l = o.get(a);
6357
+ var n = T$1(d, t), a = T$1(e, t), l = o.get(a);
6355
6358
  if (l) {
6356
- T$1(d, t, l);
6359
+ x$1(d, t, l);
6357
6360
  return;
6358
6361
  }
6359
6362
  var c = i ? i(n, a, t + "", d, e, o) : void 0, f = c === void 0;
6360
6363
  if (f) {
6361
6364
  var u = v$2(a), y2 = !u && oe$1(a), h = !u && !y2 && Et$1(a);
6362
- c = a, u || y2 || h ? v$2(n) ? c = n : ye(n) ? c = Ae$1(n) : y2 ? (f = false, c = ei(a, true)) : h ? (f = false, c = wi(a, true)) : c = [] : we$1(a) || De$2(a) ? (c = n, De$2(n) ? c = Ue$1(n) : (!E$3(n) || Ot$1(n)) && (c = ki(a))) : f = false;
6365
+ c = a, u || y2 || h ? v$2(n) ? c = n : ye(n) ? c = Ae$1(n) : y2 ? (f = false, c = ei(a, true)) : h ? (f = false, c = wi(a, true)) : c = [] : $e$1(a) || De$2(a) ? (c = n, De$2(n) ? c = Ue$1(n) : (!E$3(n) || Ot$1(n)) && (c = ki(a))) : f = false;
6363
6366
  }
6364
- f && (o.set(a, c), r(c, a, s, i, o), o.delete(a)), T$1(d, t, c);
6367
+ f && (o.set(a, c), r(c, a, s, i, o), o.delete(a)), x$1(d, t, c);
6365
6368
  }
6366
6369
  function L$1(d, e, t, s, r) {
6367
6370
  d !== e && ua(e, function(i, o) {
6368
6371
  if (r || (r = new T$2()), E$3(i))
6369
6372
  Ve$1(d, e, o, t, L$1, s, r);
6370
6373
  else {
6371
- var n = s ? s(K$1(d, o), i, o + "", d, e, r) : void 0;
6372
- n === void 0 && (n = i), T$1(d, o, n);
6374
+ var n = s ? s(T$1(d, o), i, o + "", d, e, r) : void 0;
6375
+ n === void 0 && (n = i), x$1(d, o, n);
6373
6376
  }
6374
6377
  }, Q$3);
6375
6378
  }
@@ -6377,9 +6380,9 @@
6377
6380
  Ne$1.call(d, t) ? d[t].push(e) : cn$1(d, t, [e]);
6378
6381
  }), Qe$1 = "[object Boolean]";
6379
6382
  function ze$1(d) {
6380
- return d === true || d === false || O$1(d) && N$4(d) == Qe$1;
6383
+ return d === true || d === false || O$2(d) && N$4(d) == Qe$1;
6381
6384
  }
6382
- var A$1 = Ee$1(function(d, e, t) {
6385
+ var O$1 = Ee$1(function(d, e, t) {
6383
6386
  L$1(d, e, t);
6384
6387
  });
6385
6388
  const p$1 = (d, e, t) => ({
@@ -6581,7 +6584,7 @@
6581
6584
  function j$1(d, e, t = v$1) {
6582
6585
  return typeof e == "string" ? String(d[e]) : e.length === 1 ? String(d[e[0]]) : e.map((s) => String(d[s])).join(t);
6583
6586
  }
6584
- function S$1(d, e = v$1) {
6587
+ function M$1(d, e = v$1) {
6585
6588
  if (d !== void 0)
6586
6589
  return typeof d == "string" ? d : d.join(e);
6587
6590
  }
@@ -6624,7 +6627,7 @@
6624
6627
  // Enables O(1) lookup instead of O(n·v²) nested loops
6625
6628
  groupedRefReverseIndex = /* @__PURE__ */ new Map();
6626
6629
  init(e) {
6627
- this.key = e.key, this.initialDefinition = e, e.quality && (this.qualityConfig = A$1({}, U$1, e.quality));
6630
+ this.key = e.key, this.initialDefinition = e, e.quality && (this.qualityConfig = O$1({}, U$1, e.quality));
6628
6631
  }
6629
6632
  applyPropertiesAndReferences(e) {
6630
6633
  const t = /* @__PURE__ */ new Set();
@@ -6653,7 +6656,7 @@
6653
6656
  }), this.supportsAutoCreation = !!e.supportsAutoCreation, this.keyProperty = e.keyProperty || "key", this.keyPropertySeparator = e.keyPropertySeparator, this.autoGenerateKey = !!e.autoGenerateKey, this.autoGenerateProperties = !!e.autoGenerateProperties, this.autoGeneratePropertiesOption = e.autoGenerateProperties ?? false, this.valueMappings = e.valueMappings || [], this.meta = e.meta;
6654
6657
  }
6655
6658
  setAttributeQualityConfig(e) {
6656
- const t = this.qualityConfig.attributes, s = A$1(
6659
+ const t = this.qualityConfig.attributes, s = O$1(
6657
6660
  {},
6658
6661
  J$1,
6659
6662
  t,
@@ -6947,15 +6950,15 @@
6947
6950
  }
6948
6951
  processJSONProperty(e, t, s) {
6949
6952
  if (this.attributeQualityConfigs.get(e.key)?.forceStrictDataType) {
6950
- if (!O$1(t)) {
6953
+ if (!O$2(t)) {
6951
6954
  this.setError(this.getWrongDataTypeError(e, t, s));
6952
6955
  return;
6953
6956
  }
6954
6957
  return t;
6955
6958
  }
6956
- if (O$1(t))
6959
+ if (O$2(t))
6957
6960
  return t;
6958
- if (!O$1(t) && typeof t == "string")
6961
+ if (!O$2(t) && typeof t == "string")
6959
6962
  try {
6960
6963
  return JSON.parse(t);
6961
6964
  } catch {
@@ -7085,7 +7088,7 @@
7085
7088
  r && r.sourceColumns.length > 0 && this.emitUnknownColumnErrors(e, r.sourceColumns, t, s, i);
7086
7089
  for (let o of e.data) {
7087
7090
  if (o.key === void 0 || o.key === null) {
7088
- const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = S$1(l, c);
7091
+ const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = M$1(l, c);
7089
7092
  this.setError({
7090
7093
  title: "Missing Key",
7091
7094
  type: "model",
@@ -7103,7 +7106,7 @@
7103
7106
  key: String(o.key)
7104
7107
  };
7105
7108
  else if (e.type === "set") {
7106
- const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = S$1(l, c), u = String(o.key);
7109
+ const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = M$1(l, c), u = String(o.key);
7107
7110
  this.setError({
7108
7111
  title: "Non Unique Key",
7109
7112
  type: "model",
@@ -7642,7 +7645,7 @@
7642
7645
  const s = this.getBasicProperties().filter((o) => t.has(o.key)), r = this.getBasicReferences().filter((o) => t.has(o.key)), i = this.modelParser.qualityController.dcupl?.getContainerSourceMetadata(e)?.origin ?? "inline";
7643
7646
  for (let o of e.data) {
7644
7647
  if (o.key === void 0 || o.key === null) {
7645
- const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = S$1(l, c);
7648
+ const l = e.keyProperty ?? this.keyProperty, c = e.keyPropertySeparator ?? this.keyPropertySeparator ?? v$1, f = M$1(l, c);
7646
7649
  this.setError({
7647
7650
  title: "Missing Key",
7648
7651
  type: "model",
@@ -8120,7 +8123,7 @@
8120
8123
  function at$2(d) {
8121
8124
  return "query" in d;
8122
8125
  }
8123
- function I(d) {
8126
+ function S$1(d) {
8124
8127
  return "resolve" in d;
8125
8128
  }
8126
8129
  function dt$2(d) {
@@ -8129,12 +8132,12 @@
8129
8132
  function lt$2(d) {
8130
8133
  return "groupBy" in d;
8131
8134
  }
8132
- var ct$2 = Object.defineProperty, ft = Object.getOwnPropertyDescriptor, E$2 = (d, e, t, s) => {
8135
+ var ct$2 = Object.defineProperty, ft = Object.getOwnPropertyDescriptor, C$1 = (d, e, t, s) => {
8133
8136
  for (var r = ft(e, t), i = d.length - 1, o; i >= 0; i--)
8134
8137
  (o = d[i]) && (r = o(e, t, r) || r);
8135
8138
  return r && ct$2(e, t, r), r;
8136
8139
  };
8137
- let M$1 = class M {
8140
+ let E$2 = class E {
8138
8141
  constructor(e, t, s) {
8139
8142
  this.cdRef = e, this.qualityController = t, this.dcuplInstance = s, this.qualityController.modelParser = this;
8140
8143
  }
@@ -8160,8 +8163,8 @@
8160
8163
  log = Ua.child({ prefix: "ModelParser" });
8161
8164
  async init() {
8162
8165
  this.changeTracker.clear(), this.qualityController.enabled && (this.qualityController.resetDataErrors(), this.models.get("$DcuplErrorTrackingErrors") || this.qualityController.initErrorTrackingModels()), this.prepareModels(), this.qualityController.enabled && this.validateModels(), this.initDependencyGraph(), this.buildAttributeDependencyGraph(), this.validateAttributeDependencyGraph();
8163
- const e = this.getMergedContainers(this.unprocessedData);
8164
- await this.connectDataWithModels(e), this.consolidateUnprocessedData(e), this.qualityController.enabled && await this.qualityController.initData(), this.changeTracker.clear();
8166
+ const e = this.unprocessedData.filter((s) => !s.placeholderUid), t = this.getMergedContainers(this.unprocessedData);
8167
+ await this.connectDataWithModels(t), this.consolidateUnprocessedData(t, e), this.qualityController.enabled && await this.qualityController.initData(), this.changeTracker.clear(), this.retrackUnprocessedData(t);
8165
8168
  }
8166
8169
  prepareModels() {
8167
8170
  this.unprocessedModelDescriptions.forEach((e) => {
@@ -8230,7 +8233,7 @@ Models cannot have circular references as this leads to unpredictable behavior d
8230
8233
  }), e.references.forEach((s, r) => {
8231
8234
  if (at$2(s))
8232
8235
  this.processQueryReference(t, r, s.query);
8233
- else if (I(s))
8236
+ else if (S$1(s))
8234
8237
  this.processResolvedReference(t, r, s.resolve);
8235
8238
  else if (dt$2(s))
8236
8239
  this.processDerivedReference(t, r, s.derive);
@@ -8308,8 +8311,8 @@ These attributes will default to Step 1 processing which may be incorrect. This
8308
8311
  for (let h = 0; h < a.length - 1; h++) {
8309
8312
  const b2 = a[h], k2 = u.references.get(b2);
8310
8313
  if (k2) {
8311
- const $2 = this.models.get(k2.model);
8312
- if ($2 && (u = $2, y2 = k2.model, h === a.length - 2)) {
8314
+ const _2 = this.models.get(k2.model);
8315
+ if (_2 && (u = _2, y2 = k2.model, h === a.length - 2)) {
8313
8316
  const H2 = a[a.length - 1], Y2 = {
8314
8317
  modelKey: y2,
8315
8318
  attributeKey: H2,
@@ -8542,21 +8545,21 @@ These attributes will default to Step 1 processing which may be incorrect. This
8542
8545
  */
8543
8546
  async partialUpdate() {
8544
8547
  const e = this.handleAlternativeKey(this.unprocessedData).filter(
8545
- (s) => !s.placeholderUid
8548
+ (r) => !r.placeholderUid
8546
8549
  );
8547
- for (const s of e)
8548
- if (s.type === "remove") {
8549
- const r = this.models.get(s.model);
8550
- if (r) {
8551
- r.deleteDataEntries(s);
8552
- for (const i of r.properties.values())
8553
- this.changeTracker.recordAttributeChange(s.model, i.key);
8554
- for (const i of r.references.values())
8555
- this.changeTracker.recordAttributeChange(s.model, i.key);
8550
+ for (const r of e)
8551
+ if (r.type === "remove") {
8552
+ const i = this.models.get(r.model);
8553
+ if (i) {
8554
+ i.deleteDataEntries(r);
8555
+ for (const o of i.properties.values())
8556
+ this.changeTracker.recordAttributeChange(r.model, o.key);
8557
+ for (const o of i.references.values())
8558
+ this.changeTracker.recordAttributeChange(r.model, o.key);
8556
8559
  }
8557
8560
  }
8558
- const t = this.getMergedContainers(this.unprocessedData);
8559
- await this.connectDataWithModelsPartial(t), this.consolidateUnprocessedData(t);
8561
+ const t = this.unprocessedData.filter((r) => !r.placeholderUid), s = this.getMergedContainers(this.unprocessedData);
8562
+ await this.connectDataWithModelsPartial(s), this.consolidateUnprocessedData(s, t), this.retrackUnprocessedData(s);
8560
8563
  }
8561
8564
  async reprocessData() {
8562
8565
  this.qualityController.enabled && this.qualityController.resetModelErrors();
@@ -8646,16 +8649,35 @@ These attributes will default to Step 1 processing which may be incorrect. This
8646
8649
  * re-merging the full history, so this is behavior-preserving and only affects
8647
8650
  * how much is re-merged on the next cycle. Runs after processing completes.
8648
8651
  *
8649
- * - Pending (unresolved) placeholder containers are kept for a later cycle
8650
- * (getMergedContainers filtered them out of `mergedContainers`).
8652
+ * - Only the containers the apply merged (`consumedContainers`) are collapsed.
8653
+ * Every other container stays queued after the merged result, keeping its
8654
+ * relative order: pending (unresolved) placeholders, and placeholders
8655
+ * resolved or containers staged while the apply ran — it yields to the
8656
+ * event loop, and dropping those lost their data. A placeholder that was
8657
+ * already pending therefore folds after containers this apply merged, even
8658
+ * ones staged after it (as before).
8651
8659
  * - Merged containers are registered as already-keyed so a subsequent
8652
8660
  * handleAlternativeKey pass does not re-apply a composite keyProperty (#182).
8653
8661
  */
8654
- consolidateUnprocessedData(e) {
8655
- const t = this.unprocessedData.filter((s) => s.placeholderUid);
8656
- for (const s of e)
8657
- this.keyedContainers.add(s);
8658
- this.unprocessedData = [...e, ...t];
8662
+ consolidateUnprocessedData(e, t) {
8663
+ const s = new Set(t), r = this.unprocessedData.filter((i) => !s.has(i));
8664
+ for (const i of e)
8665
+ this.keyedContainers.add(i);
8666
+ this.unprocessedData = [...e, ...r];
8667
+ }
8668
+ /**
8669
+ * Re-records the containers still queued on top of the merged result after
8670
+ * an apply cleared the change tracker. They were staged (or their
8671
+ * placeholder resolved) while the apply ran and are not processed yet: the
8672
+ * next apply must still see them, or its partial path skips their data.
8673
+ * Left out: pending placeholders, which carry no data yet (as before), and
8674
+ * internal `$` models, whose containers the apply stages and processes
8675
+ * itself (quality initData rebuilds the error-tracking models).
8676
+ */
8677
+ retrackUnprocessedData(e) {
8678
+ const t = new Set(e);
8679
+ for (const s of this.unprocessedData)
8680
+ t.has(s) || s.placeholderUid || s.model.startsWith("$") || this.changeTracker.recordDataChange(s);
8659
8681
  }
8660
8682
  mergeContainers(e) {
8661
8683
  let t;
@@ -8673,7 +8695,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
8673
8695
  r.data.forEach((i) => {
8674
8696
  if (t.has(i.key)) {
8675
8697
  let n = t.get(i.key);
8676
- n = A$1(n, i), t.set(i.key, n);
8698
+ n = this.mergeRow(n, i), t.set(i.key, n);
8677
8699
  } else
8678
8700
  t.set(i.key, i);
8679
8701
  });
@@ -8682,7 +8704,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
8682
8704
  r.data.forEach((i) => {
8683
8705
  if (t.has(i.key)) {
8684
8706
  let n = t.get(i.key);
8685
- n = A$1(n, i), t.set(i.key, n);
8707
+ n = this.mergeRow(n, i), t.set(i.key, n);
8686
8708
  }
8687
8709
  });
8688
8710
  break;
@@ -8708,6 +8730,24 @@ These attributes will default to Step 1 processing which may be incorrect. This
8708
8730
  type: "set"
8709
8731
  };
8710
8732
  }
8733
+ /**
8734
+ * Folds an update/upsert payload row into the stored row. Every attribute
8735
+ * the payload carries replaces the stored value wholesale: arrays
8736
+ * (Array<…> properties, multi-valued references) and objects (json/any
8737
+ * properties) are never merged element-wise or recursively — change
8738
+ * tracking and the partial path work per attribute, too. Attributes absent
8739
+ * from the payload, or `undefined` in it, keep their stored value (send
8740
+ * `null` to clear one). Returns a new row and mutates neither input: rows
8741
+ * can be caller-owned, and json values are stored by reference.
8742
+ */
8743
+ mergeRow(e, t) {
8744
+ const s = { ...e };
8745
+ for (const r of Object.keys(t)) {
8746
+ const i = t[r];
8747
+ i !== void 0 && r !== "__proto__" && (s[r] = i);
8748
+ }
8749
+ return s;
8750
+ }
8711
8751
  /**
8712
8752
  * Mirrors mergeContainers() for the loader source-metadata side channel: when
8713
8753
  * several resources feed one model, their per-resource coercion metadata must
@@ -8835,11 +8875,11 @@ These attributes will default to Step 1 processing which may be incorrect. This
8835
8875
  if (c)
8836
8876
  for (const f of c) {
8837
8877
  const u = l.references.get(f);
8838
- if (u && I(u)) {
8878
+ if (u && S$1(u)) {
8839
8879
  const y2 = u.resolve.model, h = u.resolve.reference, b2 = this.models.get(y2);
8840
8880
  if (b2) {
8841
8881
  const k2 = b2.references.get(h);
8842
- k2 && I(k2) && t.get(a).add(y2);
8882
+ k2 && S$1(k2) && t.get(a).add(y2);
8843
8883
  }
8844
8884
  }
8845
8885
  }
@@ -9026,33 +9066,33 @@ These attributes will default to Step 1 processing which may be incorrect. This
9026
9066
  return e;
9027
9067
  }
9028
9068
  };
9029
- E$2([
9069
+ C$1([
9030
9070
  Iu({
9031
9071
  scope: "global",
9032
9072
  type: "model_add",
9033
9073
  connectMessage: true
9034
9074
  })
9035
- ], M$1.prototype, "addModel");
9036
- E$2([
9075
+ ], E$2.prototype, "addModel");
9076
+ C$1([
9037
9077
  Iu({
9038
9078
  scope: "global",
9039
9079
  type: "data_change",
9040
9080
  connectMessage: true
9041
9081
  })
9042
- ], M$1.prototype, "addData");
9043
- E$2([
9082
+ ], E$2.prototype, "addData");
9083
+ C$1([
9044
9084
  Iu({
9045
9085
  scope: "global",
9046
9086
  type: "view_add",
9047
9087
  connectMessage: true
9048
9088
  })
9049
- ], M$1.prototype, "addView");
9050
- E$2([
9089
+ ], E$2.prototype, "addView");
9090
+ C$1([
9051
9091
  Iu({
9052
9092
  scope: "global",
9053
9093
  type: "dcupl_handle_datacontainer"
9054
9094
  })
9055
- ], M$1.prototype, "handleDataContainer");
9095
+ ], E$2.prototype, "handleDataContainer");
9056
9096
  function z$1(n, e, t) {
9057
9097
  return n === n && (t !== void 0 && (n = n <= t ? n : t), n = n >= e ? n : e), n;
9058
9098
  }
@@ -9136,7 +9176,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
9136
9176
  // }
9137
9177
  // @trigger({ scope: 'global', name: 'list:create', type: 'list_created' })
9138
9178
  init(e) {
9139
- this.options = C$1(e), this.key = this.options.listKey, this.modelKey = this.options.modelKey, this.setup(this.options);
9179
+ this.options = C$2(e), this.key = this.options.listKey, this.modelKey = this.options.modelKey, this.setup(this.options);
9140
9180
  }
9141
9181
  initFromItemKeys(e, t) {
9142
9182
  const r = /* @__PURE__ */ new Map();
@@ -9175,6 +9215,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
9175
9215
  * affected list, after every affected list has been refreshed, so a
9176
9216
  * subscriber re-querying any list in its handler sees post-update results
9177
9217
  * (#278).
9218
+ * @internal
9178
9219
  */
9179
9220
  emitResultUpdated() {
9180
9221
  this.catalog && this.catalog.filter.emitResultUpdated();
@@ -10106,7 +10147,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
10106
10147
  scriptController = new Ku();
10107
10148
  qualityController = new ee$2(this.scriptController);
10108
10149
  log = Ua.child({ prefix: "Dcupl" });
10109
- modelParser = new M$1(this.cdRef, this.qualityController, this);
10150
+ modelParser = new E$2(this.cdRef, this.qualityController, this);
10110
10151
  globalItemService = new z$3(this.modelParser, this.scriptController);
10111
10152
  queryManager = new ju(
10112
10153
  this.scriptController,
@@ -10151,11 +10192,11 @@ These attributes will default to Step 1 processing which may be incorrect. This
10151
10192
  initOptions;
10152
10193
  lists = new P(this, this.cdRef);
10153
10194
  busy = false;
10154
- // Tracks if the class is busy
10195
+ // Set until the update queue is drained
10155
10196
  updateQueue = [];
10156
- // Queue for pending updates
10197
+ // Pending applies; each settles its own caller
10157
10198
  constructor(e) {
10158
- this.analyticsController.init(!!e?.analytics?.enabled), this.qualityController.dcupl = this, this.analyticsController.mark({ name: "dcupl:constructor" }), this.initOptions = A$1({}, this._defaultInitOptions, e), this.qualityController.enabled = this.initOptions.errorTracking?.enabled || this.initOptions.quality?.enabled || false, this.qualityController.maxErrorsPerGroup = this.initOptions.quality?.maxErrorsPerGroup ?? 1e3, this.modelParser.initOptions = Object.assign({}, this.initOptions), this.cdRef._init({
10199
+ this.analyticsController.init(!!e?.analytics?.enabled), this.qualityController.dcupl = this, this.analyticsController.mark({ name: "dcupl:constructor" }), this.initOptions = O$1({}, this._defaultInitOptions, e), this.qualityController.enabled = this.initOptions.errorTracking?.enabled || this.initOptions.quality?.enabled || false, this.qualityController.maxErrorsPerGroup = this.initOptions.quality?.maxErrorsPerGroup ?? 1e3, this.modelParser.initOptions = Object.assign({}, this.initOptions), this.cdRef._init({
10159
10200
  cdRefKey: "root",
10160
10201
  dcuplInitOptions: this.initOptions,
10161
10202
  analyticsController: this.analyticsController
@@ -10309,7 +10350,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
10309
10350
  const r = this.modelParser.unprocessedData.findIndex(
10310
10351
  (s) => s.placeholderUid === e.placeholderUid
10311
10352
  );
10312
- r > -1 && (delete e.placeholderUid, this.modelParser.unprocessedData[r] = e, t && this.containerSourceMetadata.set(e, t));
10353
+ r > -1 && (delete e.placeholderUid, e.type || (e.type = "set"), this.modelParser.unprocessedData[r] = e, this.modelParser.changeTracker.recordDataChange(e), t && this.containerSourceMetadata.set(e, t));
10313
10354
  }
10314
10355
  removeRegisteredContainer(e) {
10315
10356
  const t = this.modelParser.unprocessedData.findIndex(
@@ -10462,8 +10503,11 @@ These attributes will default to Step 1 processing which may be incorrect. This
10462
10503
  }
10463
10504
  async update(e) {
10464
10505
  try {
10465
- const t = this.snapshotChangedAttributes();
10466
- if (await this.performUpdate(() => this.modelParser.update()), t) {
10506
+ const t = await this.performUpdate(async () => {
10507
+ const r = this.snapshotChangedAttributes();
10508
+ return await this.modelParser.update(), r;
10509
+ });
10510
+ if (t) {
10467
10511
  const r = {
10468
10512
  isPartialUpdate: true,
10469
10513
  changedModels: Array.from(t.keys()),
@@ -10524,22 +10568,33 @@ These attributes will default to Step 1 processing which may be incorrect. This
10524
10568
  }
10525
10569
  /**
10526
10570
  * UPDATE QUEUE
10527
- */
10528
- async performUpdate(e) {
10529
- if (this.busy)
10530
- return new Promise((t) => {
10531
- this.updateQueue.push(() => e().then(t));
10532
- });
10533
- try {
10534
- this.busy = true, await e();
10535
- } finally {
10536
- this.busy = false, this.processQueue();
10537
- }
10571
+ *
10572
+ * Every init()/update() apply runs through here, strictly one at a time and
10573
+ * in call order. `busy` stays set until the queue is drained, so a call that
10574
+ * arrives while queued applies are still running waits for its turn instead
10575
+ * of running alongside them. Each queued entry settles its own caller's
10576
+ * promise — resolve or reject — and never rejects itself, so a failing apply
10577
+ * neither strands the applies queued behind it nor surfaces as an unhandled
10578
+ * rejection. When idle, the apply starts synchronously, as before.
10579
+ */
10580
+ performUpdate(e) {
10581
+ return new Promise((t, r) => {
10582
+ this.updateQueue.push(async () => {
10583
+ try {
10584
+ t(await e());
10585
+ } catch (s) {
10586
+ r(s);
10587
+ }
10588
+ }), this.busy || this.processQueue();
10589
+ });
10538
10590
  }
10539
10591
  async processQueue() {
10540
- if (this.updateQueue.length > 0) {
10541
- const e = this.updateQueue.shift();
10542
- e && (await e(), this.processQueue());
10592
+ this.busy = true;
10593
+ try {
10594
+ for (; this.updateQueue.length > 0; )
10595
+ await this.updateQueue.shift()();
10596
+ } finally {
10597
+ this.busy = false;
10543
10598
  }
10544
10599
  }
10545
10600
  }
@@ -11853,7 +11908,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
11853
11908
  if (b2)
11854
11909
  l += p2;
11855
11910
  else {
11856
- (l.length > 0 || !i) && f.push(l), C2 && m2 ? f.forEach((I2) => m2.push(u ? u(I2) : I2)) : m2 ? y2.push(this.buildObjectRow(m2, f, o, g2)) : y2.push([...f]), f = [], l = "", C2 = false, h += p2 === "\r" && _2 === `
11911
+ (l.length > 0 || !i) && f.push(l), C2 && m2 ? f.forEach((I) => m2.push(u ? u(I) : I)) : m2 ? y2.push(this.buildObjectRow(m2, f, o, g2)) : y2.push([...f]), f = [], l = "", C2 = false, h += p2 === "\r" && _2 === `
11857
11912
  ` ? 1 : 0;
11858
11913
  continue;
11859
11914
  }
@@ -11862,8 +11917,8 @@ These attributes will default to Step 1 processing which may be incorrect. This
11862
11917
  else if (p2 === n)
11863
11918
  b2 ? _2 === a ? (l += n, h++) : b2 = false : l.length === 0 ? b2 = true : l += p2;
11864
11919
  else if ((b2 || l.length === 0) && (p2 === "{" || p2 === "[")) {
11865
- const I2 = this.extractJson(e, h, P2);
11866
- l += I2.value, h += I2.length - 1;
11920
+ const I = this.extractJson(e, h, P2);
11921
+ l += I.value, h += I.length - 1;
11867
11922
  } else
11868
11923
  l += p2;
11869
11924
  }
@@ -13462,7 +13517,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
13462
13517
  i,
13463
13518
  "rawFileTransformer",
13464
13519
  o || []
13465
- ), I2 = b.now();
13520
+ ), I = b.now();
13466
13521
  let H2 = [], q2 = this.core.modelParser.unprocessedModelDescriptions.get(i.model);
13467
13522
  if (!q2 && (n?.missingModelHandling?.autoGenerateProperties || i.options?.autoGenerateProperties)) {
13468
13523
  const w = i.options?.autoGenerateProperties ?? n?.missingModelHandling?.autoGenerateProperties ?? true;
@@ -13523,7 +13578,7 @@ These attributes will default to Step 1 processing which may be incorrect. This
13523
13578
  duration: w.duration,
13524
13579
  parseEnd: P2,
13525
13580
  rawTransformStart: p2,
13526
- rawTransformEnd: I2,
13581
+ rawTransformEnd: I,
13527
13582
  parseStart: C2,
13528
13583
  csvToJsonStart: ft2,
13529
13584
  csvToJsonEnd: ht2,