@platforma-sdk/model 1.30.3 → 1.30.21

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.
package/dist/index.mjs CHANGED
@@ -1,10 +1,10 @@
1
1
  var Me = Object.defineProperty;
2
2
  var We = (t, e, n) => e in t ? Me(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
3
  var T = (t, e, n) => We(t, typeof e != "symbol" ? e + "" : e, n);
4
- import { isPColumn as me, mapPObjectData as ye, isDataInfoEntries as _e, isDataInfo as ve, dataInfoToEntries as Ge, resolveAnchors as He, isPColumnSpec as Q, isPartitionedDataInfoEntries as qe, getAxisId as E, entriesToDataInfo as ze, selectorsToPredicate as ce, canonicalizeAxisId as Ye, withEnrichments as be, AnchoredIdDeriver as we, isPlRef as Xe, mapValueInVOE as Qe, ensurePColumn as Ze, extractAllColumns as et, mapPTableDef as tt, mapDataInfo as nt, canonicalizeJson as ee, matchAxisId as G, getColumnIdAndSpec as Ie, getPColumnSpecId as Ae } from "@milaboratories/pl-model-common";
4
+ import { isPColumn as me, mapPObjectData as ye, isDataInfoEntries as _e, isDataInfo as ve, dataInfoToEntries as Ge, resolveAnchors as He, isPColumnSpec as Q, isPartitionedDataInfoEntries as qe, getAxisId as E, entriesToDataInfo as ze, selectorsToPredicate as ce, canonicalizeAxisId as Ye, withEnrichments as be, AnchoredIdDeriver as we, isPlRef as Xe, mapValueInVOE as Qe, ensurePColumn as Ze, extractAllColumns as et, mapPTableDef as tt, mapDataInfo as nt, canonicalizeJson as ee, matchAxisId as R, getColumnIdAndSpec as Ie, getPColumnSpecId as Ae } from "@milaboratories/pl-model-common";
5
5
  export * from "@milaboratories/pl-model-common";
6
6
  import Le from "canonicalize";
7
- import { z as V } from "zod";
7
+ import { z as K } from "zod";
8
8
  export * from "@milaboratories/pl-error-like";
9
9
  class rt extends Error {
10
10
  constructor(e, n) {
@@ -22,7 +22,7 @@ function Mt(t) {
22
22
  }
23
23
  });
24
24
  }
25
- function S(t) {
25
+ function C(t) {
26
26
  return typeof t == "string" || typeof t == "number" || typeof t == "boolean" || t === null ? Z(t) : t;
27
27
  }
28
28
  function H(t) {
@@ -40,7 +40,7 @@ function Z(t) {
40
40
  }
41
41
  function Te(t) {
42
42
  const e = {};
43
- for (const [n, r] of Object.entries(t)) e[n] = S(r);
43
+ for (const [n, r] of Object.entries(t)) e[n] = C(r);
44
44
  return {
45
45
  type: "MakeObject",
46
46
  template: e
@@ -48,7 +48,7 @@ function Te(t) {
48
48
  }
49
49
  function Xt(...t) {
50
50
  const e = [];
51
- for (const n of t) e.push(S(n));
51
+ for (const n of t) e.push(C(n));
52
52
  return {
53
53
  type: "MakeArray",
54
54
  template: e
@@ -57,8 +57,8 @@ function Xt(...t) {
57
57
  function te(t, e) {
58
58
  return {
59
59
  type: "GetJsonField",
60
- source: S(t),
61
- field: S(e)
60
+ source: C(t),
61
+ field: C(e)
62
62
  };
63
63
  }
64
64
  function Qt(t, e, n = "$it") {
@@ -112,15 +112,15 @@ function sn(t, e) {
112
112
  function on(t, e) {
113
113
  return {
114
114
  type: "GetResourceField",
115
- source: S(t),
116
- field: S(e)
115
+ source: C(t),
116
+ field: C(e)
117
117
  };
118
118
  }
119
119
  function an() {
120
120
  return function(t) {
121
121
  return {
122
122
  type: "GetResourceValueAsJson",
123
- source: S(t)
123
+ source: C(t)
124
124
  };
125
125
  };
126
126
  }
@@ -135,73 +135,73 @@ function ln(t, e, n = "$it") {
135
135
  function un(t) {
136
136
  return {
137
137
  type: "GetBlobContent",
138
- source: S(t)
138
+ source: C(t)
139
139
  };
140
140
  }
141
141
  function cn(t) {
142
142
  return {
143
143
  type: "GetBlobContentAsString",
144
- source: S(t)
144
+ source: C(t)
145
145
  };
146
146
  }
147
- function dn() {
147
+ function pn() {
148
148
  return function(t) {
149
149
  return {
150
150
  type: "GetBlobContentAsJson",
151
- source: S(t)
151
+ source: C(t)
152
152
  };
153
153
  };
154
154
  }
155
- function pn(t) {
155
+ function dn(t) {
156
156
  return {
157
157
  type: "GetDownloadedBlobContent",
158
- source: S(t)
158
+ source: C(t)
159
159
  };
160
160
  }
161
161
  function fn(t) {
162
162
  return {
163
163
  type: "GetOnDemandBlobContent",
164
- source: S(t)
164
+ source: C(t)
165
165
  };
166
166
  }
167
167
  function hn(t, e) {
168
168
  return {
169
169
  type: "ExtractArchiveAndGetURL",
170
170
  format: e,
171
- source: S(t)
171
+ source: C(t)
172
172
  };
173
173
  }
174
174
  function gn(t) {
175
175
  return {
176
176
  type: "GetImportProgress",
177
- source: S(t)
177
+ source: C(t)
178
178
  };
179
179
  }
180
180
  function mn(t, e) {
181
181
  return {
182
182
  type: "GetLastLogs",
183
- source: S(t),
183
+ source: C(t),
184
184
  lines: e
185
185
  };
186
186
  }
187
187
  function yn(t, e) {
188
188
  return {
189
189
  type: "GetProgressLog",
190
- source: S(t),
190
+ source: C(t),
191
191
  patternToSearch: e
192
192
  };
193
193
  }
194
194
  function vn(t, e) {
195
195
  return {
196
196
  type: "GetProgressLogWithInfo",
197
- source: S(t),
197
+ source: C(t),
198
198
  patternToSearch: e
199
199
  };
200
200
  }
201
201
  function bn(t) {
202
202
  return {
203
203
  type: "GetLogHandle",
204
- source: S(t)
204
+ source: C(t)
205
205
  };
206
206
  }
207
207
  function st() {
@@ -216,11 +216,11 @@ function Ee(t) {
216
216
  function ot() {
217
217
  if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
218
218
  }
219
- function m() {
219
+ function y() {
220
220
  if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
221
221
  throw new Error("Not in config rendering context");
222
222
  }
223
- function U(t, e) {
223
+ function B(t, e) {
224
224
  const n = ot();
225
225
  if (n === void 0) return !1;
226
226
  if (t in n.callbackRegistry) throw new Error(`Callback with key ${t} already registered.`);
@@ -228,12 +228,12 @@ function U(t, e) {
228
228
  }
229
229
  const ae = /* @__PURE__ */ new Map();
230
230
  function at(t, e) {
231
- t in m().callbackRegistry || (m().callbackRegistry[t] = (n) => {
231
+ t in y().callbackRegistry || (y().callbackRegistry[t] = (n) => {
232
232
  for (const r of ae.get(t))
233
233
  r(n);
234
234
  }, ae.set(t, [])), ae.get(t).push(e);
235
235
  }
236
- class C {
236
+ class S {
237
237
  constructor(e, n = (r) => r) {
238
238
  T(this, "isResolved", !1);
239
239
  T(this, "resolvedValue");
@@ -242,10 +242,10 @@ class C {
242
242
  });
243
243
  }
244
244
  map(e) {
245
- return new C(this.handle, (n) => e(this.postProcess(n)));
245
+ return new S(this.handle, (n) => e(this.postProcess(n)));
246
246
  }
247
247
  mapDefined(e) {
248
- return new C(this.handle, (n) => {
248
+ return new S(this.handle, (n) => {
249
249
  const r = this.postProcess(n);
250
250
  return r ? e(r) : void 0;
251
251
  });
@@ -254,7 +254,7 @@ class C {
254
254
  return this.isResolved ? this.resolvedValue : { __awaited_futures__: [this.handle] };
255
255
  }
256
256
  }
257
- function de(t, e) {
257
+ function pe(t, e) {
258
258
  return t === void 0 ? void 0 : e(t);
259
259
  }
260
260
  class I {
@@ -296,47 +296,47 @@ class I {
296
296
  ...this.resolvePath,
297
297
  ...n.map((i) => typeof i == "string" ? i : i.field)
298
298
  ];
299
- return de(
300
- m().resolveWithCommon(this.handle, e, ...n),
299
+ return pe(
300
+ y().resolveWithCommon(this.handle, e, ...n),
301
301
  (i) => new I(i, r)
302
302
  );
303
303
  }
304
304
  get resourceType() {
305
- return m().getResourceType(this.handle);
305
+ return y().getResourceType(this.handle);
306
306
  }
307
307
  getInputsLocked() {
308
- return m().getInputsLocked(this.handle);
308
+ return y().getInputsLocked(this.handle);
309
309
  }
310
310
  getOutputsLocked() {
311
- return m().getOutputsLocked(this.handle);
311
+ return y().getOutputsLocked(this.handle);
312
312
  }
313
313
  getIsReadyOrError() {
314
- return m().getIsReadyOrError(this.handle);
314
+ return y().getIsReadyOrError(this.handle);
315
315
  }
316
316
  getIsFinal() {
317
- return m().getIsFinal(this.handle);
317
+ return y().getIsFinal(this.handle);
318
318
  }
319
319
  getError() {
320
320
  const e = [...this.resolvePath, "error"];
321
- return de(
322
- m().getError(this.handle),
321
+ return pe(
322
+ y().getError(this.handle),
323
323
  (n) => new I(n, e)
324
324
  );
325
325
  }
326
326
  listInputFields() {
327
- return m().listInputFields(this.handle);
327
+ return y().listInputFields(this.handle);
328
328
  }
329
329
  listOutputFields() {
330
- return m().listOutputFields(this.handle);
330
+ return y().listOutputFields(this.handle);
331
331
  }
332
332
  listDynamicFields() {
333
- return m().listDynamicFields(this.handle);
333
+ return y().listDynamicFields(this.handle);
334
334
  }
335
335
  getKeyValueBase64(e) {
336
- return m().getKeyValueBase64(this.handle, e);
336
+ return y().getKeyValueBase64(this.handle, e);
337
337
  }
338
338
  getKeyValueAsString(e) {
339
- return m().getKeyValueAsString(this.handle, e);
339
+ return y().getKeyValueAsString(this.handle, e);
340
340
  }
341
341
  getKeyValueAsJson(e) {
342
342
  const n = this.getKeyValueAsString(e);
@@ -344,10 +344,10 @@ class I {
344
344
  return JSON.parse(n);
345
345
  }
346
346
  getDataBase64() {
347
- return m().getDataBase64(this.handle);
347
+ return y().getDataBase64(this.handle);
348
348
  }
349
349
  getDataAsString() {
350
- return m().getDataAsString(this.handle);
350
+ return y().getDataAsString(this.handle);
351
351
  }
352
352
  getDataAsJson() {
353
353
  const e = this.getDataAsString();
@@ -368,7 +368,7 @@ class I {
368
368
  *
369
369
  */
370
370
  parsePObjectCollection(e = !1, n = "") {
371
- const r = m().parsePObjectCollection(
371
+ const r = y().parsePObjectCollection(
372
372
  this.handle,
373
373
  e,
374
374
  n,
@@ -383,14 +383,14 @@ class I {
383
383
  return i;
384
384
  }
385
385
  getFileContentAsBase64() {
386
- return new C(m().getBlobContentAsBase64(this.handle));
386
+ return new S(y().getBlobContentAsBase64(this.handle));
387
387
  }
388
388
  getFileContentAsString() {
389
- return new C(m().getBlobContentAsString(this.handle));
389
+ return new S(y().getBlobContentAsString(this.handle));
390
390
  }
391
391
  getFileContentAsJson() {
392
- return new C(
393
- m().getBlobContentAsString(this.handle)
392
+ return new S(
393
+ y().getBlobContentAsString(this.handle)
394
394
  ).mapDefined((e) => JSON.parse(e));
395
395
  }
396
396
  /**
@@ -409,7 +409,7 @@ class I {
409
409
  * @returns downloaded file handle
410
410
  */
411
411
  getFileHandle() {
412
- return new C(m().getDownloadedBlobContentHandle(this.handle));
412
+ return new S(y().getDownloadedBlobContentHandle(this.handle));
413
413
  }
414
414
  /**
415
415
  * @deprecated use getFileHandle
@@ -421,7 +421,7 @@ class I {
421
421
  * @returns downloaded file handle
422
422
  */
423
423
  getRemoteFileHandle() {
424
- return new C(m().getOnDemandBlobContentHandle(this.handle));
424
+ return new S(y().getOnDemandBlobContentHandle(this.handle));
425
425
  }
426
426
  /**
427
427
  * @deprecated use getRemoteFileHandle
@@ -433,22 +433,22 @@ class I {
433
433
  * @returns the url to the extracted folder
434
434
  */
435
435
  extractArchiveAndGetURL(e) {
436
- return new C(m().extractArchiveAndGetURL(this.handle, e));
436
+ return new S(y().extractArchiveAndGetURL(this.handle, e));
437
437
  }
438
438
  getImportProgress() {
439
- return new C(m().getImportProgress(this.handle));
439
+ return new S(y().getImportProgress(this.handle));
440
440
  }
441
441
  getLastLogs(e) {
442
- return new C(m().getLastLogs(this.handle, e));
442
+ return new S(y().getLastLogs(this.handle, e));
443
443
  }
444
444
  getProgressLog(e) {
445
- return new C(m().getProgressLog(this.handle, e));
445
+ return new S(y().getProgressLog(this.handle, e));
446
446
  }
447
447
  getProgressLogWithInfo(e) {
448
- return new C(m().getProgressLogWithInfo(this.handle, e));
448
+ return new S(y().getProgressLogWithInfo(this.handle, e));
449
449
  }
450
450
  getLogHandle() {
451
- return new C(m().getLogHandle(this.handle));
451
+ return new S(y().getLogHandle(this.handle));
452
452
  }
453
453
  allFieldsResolved(e = "Input") {
454
454
  switch (e) {
@@ -474,117 +474,117 @@ class I {
474
474
  let l = (r === "Input" ? this.listInputFields() : r === "Output" ? this.listOutputFields() : this.listDynamicFields()).map(
475
475
  (u) => [u, this.resolve({ field: u, assertFieldType: r })]
476
476
  );
477
- return s && (l = l.filter((u) => u[1] !== void 0)), l.map(([u, y]) => o(u, y));
477
+ return s && (l = l.filter((u) => u[1] !== void 0)), l.map(([u, p]) => o(u, p));
478
478
  }
479
479
  }
480
- const Fe = "staging", De = "main", lt = {
480
+ const Fe = "staging", Oe = "main", lt = {
481
481
  explicitColumnsSupport: !0,
482
482
  inlineColumnsSupport: !0,
483
483
  activeArgs: !0
484
484
  };
485
- function Oe(t) {
485
+ function De(t) {
486
486
  return typeof t == "object" && t !== null && "__awaited_futures__" in t;
487
487
  }
488
- function pe(t, e, n) {
488
+ function de(t, e, n) {
489
489
  if (e.has(n)) return;
490
490
  if (e.add(n), typeof n === "object")
491
- if (Oe(n)) n.__awaited_futures__.forEach((i) => t.add(i));
491
+ if (De(n)) n.__awaited_futures__.forEach((i) => t.add(i));
492
492
  else if (Array.isArray(n))
493
- for (const i of n) pe(t, e, i);
493
+ for (const i of n) de(t, e, i);
494
494
  else
495
495
  for (const [, i] of Object.entries(n))
496
- i !== n && pe(t, e, i);
496
+ i !== n && de(t, e, i);
497
497
  }
498
498
  function ut(t) {
499
499
  const e = /* @__PURE__ */ new Set();
500
- return pe(e, /* @__PURE__ */ new Set(), t), e;
500
+ return de(e, /* @__PURE__ */ new Set(), t), e;
501
501
  }
502
502
  const wn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
503
503
  __proto__: null,
504
504
  GlobalCfgRenderCtxFeatureFlags: lt,
505
- MainAccessorName: De,
505
+ MainAccessorName: Oe,
506
506
  StagingAccessorName: Fe,
507
507
  getAllFutureAwaits: ut,
508
- isFutureAwait: Oe
509
- }, Symbol.toStringTag, { value: "Module" })), ct = "pl7.app/label", dt = "pl7.app/trace", pt = V.object({
510
- type: V.string(),
511
- importance: V.number().optional(),
512
- id: V.string().optional(),
513
- label: V.string()
514
- }), ft = V.array(pt), ht = 1e-3, gt = "__LABEL__", Pe = "__LABEL__@1";
508
+ isFutureAwait: De
509
+ }, Symbol.toStringTag, { value: "Module" })), ct = "pl7.app/label", pt = "pl7.app/trace", dt = K.object({
510
+ type: K.string(),
511
+ importance: K.number().optional(),
512
+ id: K.string().optional(),
513
+ label: K.string()
514
+ }), ft = K.array(dt), ht = 1e-3, gt = "__LABEL__", xe = "__LABEL__@1";
515
515
  function Re(t, e, n = {}) {
516
516
  const r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = t.map((f) => {
517
517
  var z, F;
518
- const h = e(f);
519
- let p, x, c;
520
- "spec" in h && typeof h.spec == "object" ? (p = h.spec, x = h.prefixTrace, c = h.suffixTrace) : p = h;
521
- const v = (z = p.annotations) == null ? void 0 : z[ct], g = (F = p.annotations) == null ? void 0 : F[dt], b = (g ? ft.safeParse(JSON.parse(g)).data : void 0) ?? [], A = [
522
- ...x ?? [],
523
- ...b,
518
+ const g = e(f);
519
+ let h, P, c;
520
+ "spec" in g && typeof g.spec == "object" ? (h = g.spec, P = g.prefixTrace, c = g.suffixTrace) : h = g;
521
+ const b = (z = h.annotations) == null ? void 0 : z[ct], m = (F = h.annotations) == null ? void 0 : F[pt], w = (m ? ft.safeParse(JSON.parse(m)).data : void 0) ?? [], A = [
522
+ ...P ?? [],
523
+ ...w,
524
524
  ...c ?? []
525
525
  ];
526
- if (v) {
527
- const L = { label: v, type: gt, importance: -2 };
526
+ if (b) {
527
+ const L = { label: b, type: gt, importance: -2 };
528
528
  n.addLabelAsSuffix ? A.push(L) : A.splice(0, 0, L);
529
529
  }
530
- const D = [], $ = /* @__PURE__ */ new Map();
530
+ const O = [], J = /* @__PURE__ */ new Map();
531
531
  for (let L = A.length - 1; L >= 0; --L) {
532
- const { type: R } = A[L], se = A[L].importance ?? 0, J = ($.get(R) ?? 0) + 1;
533
- $.set(R, J);
534
- const P = `${R}@${J}`;
535
- i.set(P, (i.get(P) ?? 0) + 1), r.set(
536
- P,
532
+ const { type: k } = A[L], se = A[L].importance ?? 0, N = (J.get(k) ?? 0) + 1;
533
+ J.set(k, N);
534
+ const x = `${k}@${N}`;
535
+ i.set(x, (i.get(x) ?? 0) + 1), r.set(
536
+ x,
537
537
  Math.max(
538
- r.get(P) ?? Number.NEGATIVE_INFINITY,
538
+ r.get(x) ?? Number.NEGATIVE_INFINITY,
539
539
  se - (A.length - L) * ht
540
540
  )
541
- ), D.push({ ...A[L], fullType: P, occurenceIndex: J });
541
+ ), O.push({ ...A[L], fullType: x, occurrenceIndex: N });
542
542
  }
543
- return D.reverse(), {
543
+ return O.reverse(), {
544
544
  value: f,
545
- spec: p,
546
- label: v,
547
- fullTrace: D
545
+ spec: h,
546
+ label: b,
547
+ fullTrace: O
548
548
  };
549
549
  }), o = [], a = [], l = [...r];
550
- l.sort(([, f], [, h]) => h - f);
550
+ l.sort(([, f], [, g]) => g - f);
551
551
  for (const [f] of l)
552
552
  f.endsWith("@1") || i.get(f) === t.length ? o.push(f) : a.push(f);
553
553
  const u = (f) => {
554
- const h = [];
555
- for (let p = 0; p < s.length; p++) {
556
- const x = s[p], c = x.fullTrace.filter((b) => f.has(b.fullType));
554
+ const g = [];
555
+ for (let h = 0; h < s.length; h++) {
556
+ const P = s[h], c = P.fullTrace.filter((w) => f.has(w.fullType));
557
557
  if (c.length === 0)
558
558
  return;
559
- const v = c.map((b) => b.label), g = n.separator ?? " / ";
560
- h.push({
561
- label: v.join(g),
562
- value: x.value
559
+ const b = c.map((w) => w.label), m = n.separator ?? " / ";
560
+ g.push({
561
+ label: b.join(m),
562
+ value: P.value
563
563
  });
564
564
  }
565
- return h;
565
+ return g;
566
566
  };
567
567
  if (o.length === 0) {
568
568
  if (a.length !== 0) throw new Error("Assertion error.");
569
- const f = u(new Set(Pe));
569
+ const f = u(new Set(xe));
570
570
  if (f === void 0) throw new Error("Assertion error.");
571
571
  return f;
572
572
  }
573
- let y = 0, w = 0;
574
- for (; y < o.length; ) {
573
+ let p = 0, v = 0;
574
+ for (; p < o.length; ) {
575
575
  const f = /* @__PURE__ */ new Set();
576
- n.includeNativeLabel && f.add(Pe);
577
- for (let p = 0; p < y; ++p) f.add(o[p]);
578
- f.add(o[w]);
579
- const h = u(f);
580
- if (h !== void 0 && new Set(h.map((p) => p.label)).size === t.length) return h;
581
- w++, w >= o.length && (y++, w = y);
576
+ n.includeNativeLabel && f.add(xe);
577
+ for (let h = 0; h < p; ++h) f.add(o[h]);
578
+ f.add(o[v]);
579
+ const g = u(f);
580
+ if (g !== void 0 && new Set(g.map((h) => h.label)).size === t.length) return g;
581
+ v++, v >= o.length && (p++, v = p);
582
582
  }
583
583
  const d = u(/* @__PURE__ */ new Set([...o, ...a]));
584
584
  if (d === void 0) throw new Error("Assertion error.");
585
585
  return d;
586
586
  }
587
- const q = "PColumnData/", ne = q + "ResourceMap", re = q + "Partitioned/ResourceMap", B = q + "JsonPartitioned", K = q + "BinaryPartitioned", ke = q + "Partitioned/", ie = ke + "JsonPartitioned", M = ke + "BinaryPartitioned";
587
+ const q = "PColumnData/", ne = q + "ResourceMap", re = q + "Partitioned/ResourceMap", M = q + "JsonPartitioned", $ = q + "BinaryPartitioned", ke = q + "Partitioned/", ie = ke + "JsonPartitioned", W = ke + "BinaryPartitioned";
588
588
  function je(t, e, n, r = [], i) {
589
589
  if (t === void 0) return !1;
590
590
  switch (t.resourceType.name) {
@@ -640,33 +640,33 @@ function mt(t) {
640
640
  case re:
641
641
  i = n.partitionKeyLength + n.keyLength;
642
642
  break;
643
- case B:
644
- case K:
643
+ case M:
644
+ case $:
645
645
  i = n.partitionKeyLength;
646
646
  break;
647
- case M:
647
+ case W:
648
648
  case ie:
649
649
  i = n.superPartitionKeyLength + n.partitionKeyLength;
650
650
  break;
651
651
  }
652
652
  switch (e) {
653
653
  case ne:
654
- case B:
655
- case K:
654
+ case M:
655
+ case $:
656
656
  for (let s of t.listInputFields()) {
657
- e === K && (s = fe(s).baseKey);
657
+ e === $ && (s = fe(s).baseKey);
658
658
  const o = [...JSON.parse(s)];
659
659
  r.push(o);
660
660
  }
661
661
  break;
662
662
  case re:
663
- case M:
663
+ case W:
664
664
  case ie:
665
665
  for (const s of t.listInputFields()) {
666
666
  const o = [...JSON.parse(s)], a = t.resolve({ field: s, assertFieldType: "Input" });
667
667
  if (a !== void 0)
668
668
  for (let l of a.listInputFields()) {
669
- e === M && (l = fe(l).baseKey);
669
+ e === W && (l = fe(l).baseKey);
670
670
  const u = [...o, ...JSON.parse(l)];
671
671
  r.push(u);
672
672
  }
@@ -714,13 +714,13 @@ function vt(t) {
714
714
  function he(t, e = []) {
715
715
  if (t === void 0 || !t.getIsReadyOrError()) return;
716
716
  const n = t.resourceType.name, r = t.getDataAsJson();
717
- if (e.length > 0 && (n === ie || n === M))
717
+ if (e.length > 0 && (n === ie || n === W))
718
718
  throw new Error(`Unexpected nested super-partitioned resource: ${n}`);
719
719
  switch (n) {
720
720
  case ne:
721
721
  case re:
722
722
  throw new Error(`Only data columns are supported, got: ${n}`);
723
- case B: {
723
+ case M: {
724
724
  if (typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
725
725
  throw new Error(`Missing partitionKeyLength in metadata for ${n}`);
726
726
  const i = [];
@@ -736,7 +736,7 @@ function he(t, e = []) {
736
736
  parts: i
737
737
  };
738
738
  }
739
- case K: {
739
+ case $: {
740
740
  if (typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
741
741
  throw new Error(`Missing partitionKeyLength in metadata for ${n}`);
742
742
  const i = [], s = /* @__PURE__ */ new Map();
@@ -770,8 +770,8 @@ function he(t, e = []) {
770
770
  for (const o of t.listInputFields()) {
771
771
  const a = t.resolve({ field: o, assertFieldType: "Input" });
772
772
  if (a === void 0) return;
773
- if (a.resourceType.name !== B)
774
- throw new Error(`Expected ${B} inside ${n}, but got ${a.resourceType.name}`);
773
+ if (a.resourceType.name !== M)
774
+ throw new Error(`Expected ${M} inside ${n}, but got ${a.resourceType.name}`);
775
775
  const l = he(a, JSON.parse(o));
776
776
  if (l === void 0) return;
777
777
  if (l.type !== "JsonPartitioned")
@@ -784,15 +784,15 @@ function he(t, e = []) {
784
784
  parts: s
785
785
  };
786
786
  }
787
- case M: {
787
+ case W: {
788
788
  if (typeof (r == null ? void 0 : r.superPartitionKeyLength) != "number" || typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
789
789
  throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);
790
790
  const i = r.superPartitionKeyLength + r.partitionKeyLength, s = [];
791
791
  for (const o of t.listInputFields()) {
792
792
  const a = t.resolve({ field: o, assertFieldType: "Input" });
793
793
  if (a === void 0) return;
794
- if (a.resourceType.name !== K)
795
- throw new Error(`Expected ${K} inside ${n}, but got ${a.resourceType.name}`);
794
+ if (a.resourceType.name !== $)
795
+ throw new Error(`Expected ${$} inside ${n}, but got ${a.resourceType.name}`);
796
796
  const l = he(a, JSON.parse(o));
797
797
  if (l === void 0) return;
798
798
  if (l.type !== "BinaryPartitioned")
@@ -886,7 +886,7 @@ class At {
886
886
  return this.columns.filter((r) => n(r.spec));
887
887
  }
888
888
  }
889
- function Pt(t) {
889
+ function xt(t) {
890
890
  if (t)
891
891
  return t.map((e) => ({
892
892
  type: `split:${Ye(e.axisId)}`,
@@ -895,16 +895,16 @@ function Pt(t) {
895
895
  // High importance for split filters in labels
896
896
  }));
897
897
  }
898
- function xt(t) {
898
+ function Pt(t) {
899
899
  if (t)
900
900
  return t.map((e) => [e.axisIdx, e.value]);
901
901
  }
902
- function St(t, e) {
902
+ function Ct(t, e) {
903
903
  if (!e || e.length === 0) return t;
904
904
  const n = [...e].sort((r, i) => r[0] - i[0]);
905
905
  return Le({ id: t, axisFilters: n });
906
906
  }
907
- function Ct(t) {
907
+ function St(t) {
908
908
  if (!t || typeof t != "object") return !1;
909
909
  const e = t, n = e.domain && typeof e.domain == "object" && Object.values(e.domain).some((i) => typeof i == "object" && i !== null && "anchor" in i), r = e.axes && Array.isArray(e.axes) && e.axes.some((i) => typeof i == "object" && i !== null && "anchor" in i);
910
910
  return !!e.domainAnchor || n || r;
@@ -948,112 +948,112 @@ class ge {
948
948
  ...i ?? {}
949
949
  }, l = typeof e == "function" ? [e] : Array.isArray(e) ? e : [e], u = [];
950
950
  for (const d of l) {
951
- const f = Ct(d);
952
- let h;
951
+ const f = St(d);
952
+ let g;
953
953
  if (f) {
954
954
  if (!r)
955
955
  throw new Error("Anchored selectors require an AnchoredIdDeriver to be provided in options.");
956
- h = He(r.anchors, d, n);
956
+ g = He(r.anchors, d, n);
957
957
  } else
958
- h = d;
959
- const p = /* @__PURE__ */ new Set(), x = [];
960
- for (const g of this.providers) {
961
- const b = g.selectColumns(h);
962
- for (const A of b) {
963
- if (p.has(A.id)) throw new Error(`Duplicate column id ${A.id} in provider ${g.constructor.name}`);
964
- p.add(A.id), x.push(A);
958
+ g = d;
959
+ const h = /* @__PURE__ */ new Set(), P = [];
960
+ for (const m of this.providers) {
961
+ const w = m.selectColumns(g);
962
+ for (const A of w) {
963
+ if (h.has(A.id)) throw new Error(`Duplicate column id ${A.id} in provider ${m.constructor.name}`);
964
+ h.add(A.id), P.push(A);
965
965
  }
966
966
  }
967
- if (x.length === 0) continue;
968
- const c = _t(d), v = c.length > 0;
969
- for (const g of x) {
970
- if (!Q(g.spec)) continue;
971
- const b = g.spec;
972
- if (v) {
973
- const A = bt(g.data);
967
+ if (P.length === 0) continue;
968
+ const c = _t(d), b = c.length > 0;
969
+ for (const m of P) {
970
+ if (!Q(m.spec)) continue;
971
+ const w = m.spec;
972
+ if (b) {
973
+ const A = bt(m.data);
974
974
  if (!A) {
975
975
  if (s) continue;
976
976
  return;
977
977
  }
978
978
  if (!qe(A))
979
- throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${A.type} for column ${g.id}`);
980
- const D = vt(A), $ = c[c.length - 1];
981
- if ($ >= A.partitionKeyLength)
982
- throw new Error(`Not enough partition keys (${A.partitionKeyLength}) for requested split axes (max index ${$}) in column ${b.name}`);
983
- const z = c.map((P) => this.findLabels(E(b.axesSpec[P]))), F = [], L = (P, N) => {
984
- if (N >= c.length) {
985
- if (F.push([...P]), F.length > 1e4)
979
+ throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${A.type} for column ${m.id}`);
980
+ const O = vt(A), J = c[c.length - 1];
981
+ if (J >= A.partitionKeyLength)
982
+ throw new Error(`Not enough partition keys (${A.partitionKeyLength}) for requested split axes (max index ${J}) in column ${w.name}`);
983
+ const z = c.map((x) => this.findLabels(E(w.axesSpec[x]))), F = [], L = (x, U) => {
984
+ if (U >= c.length) {
985
+ if (F.push([...x]), F.length > 1e4)
986
986
  throw new Error("Too many key combinations, aborting.");
987
987
  return;
988
988
  }
989
- const O = c[N];
990
- if (O >= D.length)
991
- throw new Error(`Axis index ${O} out of bounds for unique keys array (length ${D.length}) during split key generation for column ${g.id}`);
992
- const k = D[O];
993
- if (!k || k.length === 0) {
989
+ const D = c[U];
990
+ if (D >= O.length)
991
+ throw new Error(`Axis index ${D} out of bounds for unique keys array (length ${O.length}) during split key generation for column ${m.id}`);
992
+ const j = O[D];
993
+ if (!j || j.length === 0) {
994
994
  F.length = 0;
995
995
  return;
996
996
  }
997
- for (const Y of k)
998
- P.push(Y), L(P, N + 1), P.pop();
997
+ for (const Y of j)
998
+ x.push(Y), L(x, U + 1), x.pop();
999
999
  };
1000
1000
  if (L([], 0), F.length === 0)
1001
1001
  continue;
1002
- const R = [...b.axesSpec], se = c.map((P) => P);
1003
- for (let P = c.length - 1; P >= 0; P--)
1004
- R.splice(c[P], 1);
1005
- const J = { ...b, axesSpec: R };
1006
- for (const P of F) {
1007
- const N = P.map((O, k) => {
1008
- const Y = se[k], Ue = E(b.axesSpec[Y]), oe = z[k], Be = (oe == null ? void 0 : oe[O]) ?? String(O);
1009
- return { axisIdx: Y, axisId: Ue, value: O, label: Be };
1002
+ const k = [...w.axesSpec], se = c.map((x) => x);
1003
+ for (let x = c.length - 1; x >= 0; x--)
1004
+ k.splice(c[x], 1);
1005
+ const N = { ...w, axesSpec: k };
1006
+ for (const x of F) {
1007
+ const U = x.map((D, j) => {
1008
+ const Y = se[j], Ue = E(w.axesSpec[Y]), oe = z[j], Be = (oe == null ? void 0 : oe[D]) ?? String(D);
1009
+ return { axisIdx: Y, axisId: Ue, value: D, label: Be };
1010
1010
  });
1011
1011
  u.push({
1012
1012
  type: "split",
1013
- originalColumn: g,
1014
- spec: b,
1015
- adjustedSpec: J,
1013
+ originalColumn: m,
1014
+ spec: w,
1015
+ adjustedSpec: N,
1016
1016
  dataEntries: A,
1017
- axisFilters: N
1017
+ axisFilters: U
1018
1018
  });
1019
1019
  }
1020
1020
  } else
1021
1021
  u.push({
1022
1022
  type: "direct",
1023
- originalColumn: g,
1024
- spec: b,
1025
- adjustedSpec: b
1023
+ originalColumn: m,
1024
+ spec: w,
1025
+ adjustedSpec: w
1026
1026
  });
1027
1027
  }
1028
1028
  }
1029
1029
  if (u.length === 0) return [];
1030
- const y = Re(
1030
+ const p = Re(
1031
1031
  u,
1032
1032
  (d) => ({
1033
1033
  spec: d.spec,
1034
- suffixTrace: d.type === "split" ? Pt(d.axisFilters) : void 0
1034
+ suffixTrace: d.type === "split" ? xt(d.axisFilters) : void 0
1035
1035
  }),
1036
1036
  a
1037
- ), w = [];
1038
- for (const { value: d, label: f } of y) {
1039
- const { originalColumn: h, spec: p } = d, x = d.type === "split" ? d.axisFilters : void 0, c = xt(x);
1040
- let v;
1041
- r ? v = r.deriveS(p, c) : v = St(h.id, c);
1042
- let g = { ...d.adjustedSpec };
1043
- o && (g = {
1044
- ...g,
1037
+ ), v = [];
1038
+ for (const { value: d, label: f } of p) {
1039
+ const { originalColumn: g, spec: h } = d, P = d.type === "split" ? d.axisFilters : void 0, c = Pt(P);
1040
+ let b;
1041
+ r ? b = r.deriveS(h, c) : b = Ct(g.id, c);
1042
+ let m = { ...d.adjustedSpec };
1043
+ o && (m = {
1044
+ ...m,
1045
1045
  annotations: {
1046
- ...g.annotations ?? {},
1046
+ ...m.annotations ?? {},
1047
1047
  "pl7.app/label": f
1048
1048
  }
1049
- }), w.push({
1050
- id: v,
1051
- spec: g,
1049
+ }), v.push({
1050
+ id: b,
1051
+ spec: m,
1052
1052
  data: () => d.type === "split" ? ze(wt(d.dataEntries, c)) : d.originalColumn.data,
1053
1053
  label: f
1054
1054
  });
1055
1055
  }
1056
- return w;
1056
+ return v;
1057
1057
  }
1058
1058
  getColumns(e, n) {
1059
1059
  const r = this.getUniversalEntries(e, {
@@ -1085,12 +1085,12 @@ function le(t, e) {
1085
1085
  if (t[n] !== e[n]) return !1;
1086
1086
  return !0;
1087
1087
  }
1088
- function xe(t) {
1088
+ function Pe(t) {
1089
1089
  return ye(t, (e) => e instanceof I ? e.handle : ve(e) ? nt(e, (n) => n.handle) : e);
1090
1090
  }
1091
1091
  class It {
1092
1092
  constructor() {
1093
- T(this, "ctx", m());
1093
+ T(this, "ctx", y());
1094
1094
  }
1095
1095
  /**
1096
1096
  * @deprecated use getOptions()
@@ -1365,7 +1365,7 @@ class X {
1365
1365
  // lazy rendering because this feature is rarely used
1366
1366
  T(this, "_activeArgsCache");
1367
1367
  T(this, "resultPool", new It());
1368
- this.ctx = m(), this.args = JSON.parse(this.ctx.args), this.uiState = this.ctx.uiState !== void 0 ? JSON.parse(this.ctx.uiState) : {};
1368
+ this.ctx = y(), this.args = JSON.parse(this.ctx.args), this.uiState = this.ctx.uiState !== void 0 ? JSON.parse(this.ctx.uiState) : {};
1369
1369
  }
1370
1370
  /**
1371
1371
  * Returns args snapshot the block was executed for (i.e. when "Run" button was pressed).
@@ -1381,7 +1381,7 @@ class X {
1381
1381
  // return this.ctx.featureFlags;
1382
1382
  // }
1383
1383
  getNamedAccessor(e) {
1384
- return de(
1384
+ return pe(
1385
1385
  this.ctx.getAccessorHandleByName(e),
1386
1386
  (n) => new I(n, [e])
1387
1387
  );
@@ -1390,7 +1390,7 @@ class X {
1390
1390
  return this.getNamedAccessor(Fe);
1391
1391
  }
1392
1392
  get outputs() {
1393
- return this.getNamedAccessor(De);
1393
+ return this.getNamedAccessor(Oe);
1394
1394
  }
1395
1395
  /**
1396
1396
  * Find labels data for a given axis id. It will search for a label column and return its data as a map.
@@ -1408,7 +1408,7 @@ class X {
1408
1408
  // TODO remove all non-PColumn fields
1409
1409
  createPFrame(e) {
1410
1410
  return this.verifyInlineAndExplicitColumnsSupport(e), this.ctx.createPFrame(
1411
- e.map((n) => xe(n))
1411
+ e.map((n) => Pe(n))
1412
1412
  );
1413
1413
  }
1414
1414
  createPTable(e) {
@@ -1421,7 +1421,7 @@ class X {
1421
1421
  filters: e.filters ?? [],
1422
1422
  sorting: e.sorting ?? []
1423
1423
  } : n = e, this.verifyInlineAndExplicitColumnsSupport(et(n.src)), this.ctx.createPTable(
1424
- tt(n, (r) => xe(r))
1424
+ tt(n, (r) => Pe(r))
1425
1425
  );
1426
1426
  }
1427
1427
  /** @deprecated scheduled for removal from SDK */
@@ -1432,7 +1432,7 @@ class X {
1432
1432
  return this.ctx.getCurrentUnstableMarker();
1433
1433
  }
1434
1434
  }
1435
- const W = "1.30.3";
1435
+ const G = "1.30.21";
1436
1436
  function Lt(t) {
1437
1437
  return t.__renderLambda === !0;
1438
1438
  }
@@ -1440,11 +1440,11 @@ function ue(t) {
1440
1440
  if (t !== void 0)
1441
1441
  return Lt(t) ? t.handle : t;
1442
1442
  }
1443
- function j(t) {
1443
+ function V(t) {
1444
1444
  if (t !== void 0)
1445
1445
  return typeof t == "string" ? { __renderLambda: !0, handle: t, retentive: !1 } : t;
1446
1446
  }
1447
- function Pn(t) {
1447
+ function xn(t) {
1448
1448
  if (t.v3 !== void 0) {
1449
1449
  const {
1450
1450
  initialArgs: e,
@@ -1456,7 +1456,7 @@ function Pn(t) {
1456
1456
  sections: a,
1457
1457
  title: l,
1458
1458
  enrichmentTargets: u
1459
- } = t.v3, { code: y } = t;
1459
+ } = t.v3, { code: p } = t;
1460
1460
  return {
1461
1461
  initialArgs: e,
1462
1462
  initialUiState: n,
@@ -1466,7 +1466,7 @@ function Pn(t) {
1466
1466
  sdkVersion: o,
1467
1467
  sections: a,
1468
1468
  title: l,
1469
- code: y,
1469
+ code: p,
1470
1470
  enrichmentTargets: u
1471
1471
  };
1472
1472
  } else if (t.inputsValid !== void 0) {
@@ -1480,10 +1480,10 @@ function Pn(t) {
1480
1480
  renderingMode: n,
1481
1481
  initialArgs: o,
1482
1482
  outputs: Object.fromEntries(
1483
- Object.entries(r).map(([u, y]) => [u, j(y)])
1483
+ Object.entries(r).map(([u, p]) => [u, V(p)])
1484
1484
  ),
1485
- inputsValid: j(i),
1486
- sections: j(s),
1485
+ inputsValid: V(i),
1486
+ sections: V(s),
1487
1487
  initialUiState: void 0,
1488
1488
  code: a
1489
1489
  };
@@ -1498,10 +1498,10 @@ function Pn(t) {
1498
1498
  renderingMode: r,
1499
1499
  initialArgs: o,
1500
1500
  outputs: Object.fromEntries(
1501
- Object.entries(i).map(([u, y]) => [u, j(y)])
1501
+ Object.entries(i).map(([u, p]) => [u, V(p)])
1502
1502
  ),
1503
- inputsValid: j(n),
1504
- sections: j(s),
1503
+ inputsValid: V(n),
1504
+ sections: V(s),
1505
1505
  initialUiState: void 0,
1506
1506
  code: a
1507
1507
  };
@@ -1531,7 +1531,7 @@ class _ {
1531
1531
  output(e, n, r = {}) {
1532
1532
  if (typeof n == "function") {
1533
1533
  const i = `output#${e}`;
1534
- return U(i, () => n(new X())), new _(
1534
+ return B(i, () => n(new X())), new _(
1535
1535
  this._renderingMode,
1536
1536
  this._initialArgs,
1537
1537
  this._initialUiState,
@@ -1568,7 +1568,7 @@ class _ {
1568
1568
  return this.output(e, n, { retentive: !0 });
1569
1569
  }
1570
1570
  argsValid(e) {
1571
- return typeof e == "function" ? (U("inputsValid", () => e(new X())), new _(
1571
+ return typeof e == "function" ? (B("inputsValid", () => e(new X())), new _(
1572
1572
  this._renderingMode,
1573
1573
  this._initialArgs,
1574
1574
  this._initialUiState,
@@ -1592,7 +1592,7 @@ class _ {
1592
1592
  );
1593
1593
  }
1594
1594
  sections(e) {
1595
- return Array.isArray(e) ? this.sections(Z(e)) : typeof e == "function" ? (U("sections", () => e(new X())), new _(
1595
+ return Array.isArray(e) ? this.sections(Z(e)) : typeof e == "function" ? (B("sections", () => e(new X())), new _(
1596
1596
  this._renderingMode,
1597
1597
  this._initialArgs,
1598
1598
  this._initialUiState,
@@ -1614,7 +1614,7 @@ class _ {
1614
1614
  }
1615
1615
  /** Sets a rendering function to derive block title, shown for the block in the left blocks-overview panel. */
1616
1616
  title(e) {
1617
- return U("title", () => e(new X())), new _(
1617
+ return B("title", () => e(new X())), new _(
1618
1618
  this._renderingMode,
1619
1619
  this._initialArgs,
1620
1620
  this._initialUiState,
@@ -1672,7 +1672,7 @@ class _ {
1672
1672
  * Influences dependency graph construction.
1673
1673
  */
1674
1674
  enriches(e) {
1675
- return U("enrichmentTargets", e), new _(
1675
+ return B("enrichmentTargets", e), new _(
1676
1676
  this._renderingMode,
1677
1677
  this._initialArgs,
1678
1678
  this._initialUiState,
@@ -1690,7 +1690,7 @@ class _ {
1690
1690
  if (this._initialArgs === void 0) throw new Error("Initial arguments not set.");
1691
1691
  const e = {
1692
1692
  v3: {
1693
- sdkVersion: W,
1693
+ sdkVersion: G,
1694
1694
  renderingMode: this._renderingMode,
1695
1695
  initialArgs: this._initialArgs,
1696
1696
  initialUiState: this._initialUiState,
@@ -1701,7 +1701,7 @@ class _ {
1701
1701
  enrichmentTargets: this._enrichmentTargets
1702
1702
  },
1703
1703
  // fields below are added to allow previous desktop versions read generated configs
1704
- sdkVersion: W,
1704
+ sdkVersion: G,
1705
1705
  renderingMode: this._renderingMode,
1706
1706
  initialArgs: this._initialArgs,
1707
1707
  inputsValid: ue(this._inputsValid),
@@ -1710,10 +1710,10 @@ class _ {
1710
1710
  Object.entries(this._outputs).map(([n, r]) => [n, ue(r)])
1711
1711
  )
1712
1712
  };
1713
- return st() ? Ee({ sdkVersion: W }) : { config: e };
1713
+ return st() ? Ee({ sdkVersion: G }) : { config: e };
1714
1714
  }
1715
1715
  }
1716
- function xn(t) {
1716
+ function Pn(t) {
1717
1717
  const e = t.type;
1718
1718
  switch (e) {
1719
1719
  case "axis":
@@ -1727,7 +1727,7 @@ function xn(t) {
1727
1727
  function Tt(t) {
1728
1728
  return JSON.parse(t);
1729
1729
  }
1730
- function Sn(t) {
1730
+ function Et(t) {
1731
1731
  return t.axesSpec.length === 1 && t.name === "pl7.app/label";
1732
1732
  }
1733
1733
  function Ve(t) {
@@ -1738,36 +1738,41 @@ function Ve(t) {
1738
1738
  }, { dontWaitAllData: !0 });
1739
1739
  }
1740
1740
  function Ke(t, e) {
1741
- const n = (i, s) => {
1742
- let o = i.toString();
1743
- if (s)
1744
- for (const a in s)
1745
- o += a, o += s[a];
1746
- return o;
1747
- }, r = /* @__PURE__ */ new Map();
1748
- for (const i of t)
1749
- for (const s of i.spec.axesSpec) {
1750
- const o = E(s);
1751
- for (const a of e) {
1752
- const l = a.spec.axesSpec[0], u = E(a.spec.axesSpec[0]);
1753
- if (G(o, u)) {
1754
- const y = Object.keys(o.domain ?? {}).length, w = Object.keys(u.domain ?? {}).length;
1755
- if (y > w) {
1756
- const d = n(a.id, o.domain);
1757
- r.set(d, {
1758
- id: d,
1759
- spec: {
1760
- ...a.spec,
1761
- axesSpec: [{ ...o, annotations: l.annotations }]
1762
- },
1763
- data: a.data
1764
- });
1765
- } else
1766
- r.set(n(a.id), a);
1767
- }
1768
- }
1741
+ const n = [], r = [];
1742
+ for (const a of t)
1743
+ Et(a.spec) ? n.push(a) : r.push(a);
1744
+ const i = [];
1745
+ for (const a of r)
1746
+ for (const l of a.spec.axesSpec) {
1747
+ const u = E(l);
1748
+ i.some((p) => R(p, u)) || i.push(u);
1749
+ }
1750
+ for (const a of n) {
1751
+ const l = E(a.spec.axesSpec[0]), u = i.findIndex((p) => R(p, l));
1752
+ u !== -1 && i.splice(u, 1);
1753
+ }
1754
+ const s = (a, l) => {
1755
+ let u = a.toString();
1756
+ if (l)
1757
+ for (const p in l)
1758
+ u += p, u += l[p];
1759
+ return u;
1760
+ }, o = [];
1761
+ for (const a of e) {
1762
+ const l = a.spec.axesSpec[0], u = E(l), p = i.findIndex((v) => R(v, u));
1763
+ if (p !== -1) {
1764
+ const v = i[p], d = Object.keys(v.domain ?? {}).length, f = Object.keys(l.domain ?? {}).length;
1765
+ d > f ? o.push({
1766
+ id: s(a.id, v.domain),
1767
+ spec: {
1768
+ ...a.spec,
1769
+ axesSpec: [{ ...v, annotations: l.annotations }]
1770
+ },
1771
+ data: a.data
1772
+ }) : o.push(a), i.splice(p, 1);
1769
1773
  }
1770
- return [...r.values()];
1774
+ }
1775
+ return o;
1771
1776
  }
1772
1777
  function $e(t) {
1773
1778
  const e = (i) => Array.isArray(i), n = (i) => i instanceof I, r = (i) => typeof i == "object" && "type" in i;
@@ -1811,9 +1816,9 @@ function Je(t, e, n, r, i, s) {
1811
1816
  };
1812
1817
  }
1813
1818
  function Cn(t, e, n, r) {
1814
- var u, y;
1819
+ var u, p;
1815
1820
  Array.isArray(r) && (r = { filters: r });
1816
- const i = (r == null ? void 0 : r.coreJoinType) ?? "full", s = [...(r == null ? void 0 : r.filters) ?? [], ...((u = n == null ? void 0 : n.pTableParams) == null ? void 0 : u.filters) ?? []], o = ((y = n == null ? void 0 : n.pTableParams) == null ? void 0 : y.sorting) ?? [], a = Ve(t.resultPool);
1821
+ const i = (r == null ? void 0 : r.coreJoinType) ?? "full", s = [...(r == null ? void 0 : r.filters) ?? [], ...((u = n == null ? void 0 : n.pTableParams) == null ? void 0 : u.filters) ?? []], o = ((p = n == null ? void 0 : n.pTableParams) == null ? void 0 : p.sorting) ?? [], a = Ve(t.resultPool);
1817
1822
  if (!a) return;
1818
1823
  const l = Ke(e.map(Ie), a);
1819
1824
  if ($e([...e, ...l]))
@@ -1821,24 +1826,24 @@ function Cn(t, e, n, r) {
1821
1826
  Je(e, l, i, s, o, r == null ? void 0 : r.coreColumnPredicate)
1822
1827
  );
1823
1828
  }
1824
- function Et(t) {
1829
+ function Ft(t) {
1825
1830
  var e;
1826
1831
  return ((e = t.annotations) == null ? void 0 : e["pl7.app/table/visibility"]) === "optional";
1827
1832
  }
1828
- function _n(t, e, n, r, i) {
1829
- var p, x;
1830
- const s = (i == null ? void 0 : i.coreJoinType) ?? "full", o = [...(i == null ? void 0 : i.filters) ?? [], ...((p = r == null ? void 0 : r.pTableParams) == null ? void 0 : p.filters) ?? []], a = ((x = r == null ? void 0 : r.pTableParams) == null ? void 0 : x.sorting) ?? [], l = e.find((c) => n(c.spec));
1833
+ function Sn(t, e, n, r, i) {
1834
+ var h, P;
1835
+ const s = (i == null ? void 0 : i.coreJoinType) ?? "full", o = [...(i == null ? void 0 : i.filters) ?? [], ...((h = r == null ? void 0 : r.pTableParams) == null ? void 0 : h.filters) ?? []], a = ((P = r == null ? void 0 : r.pTableParams) == null ? void 0 : P.sorting) ?? [], l = e.find((c) => n(c.spec));
1831
1836
  if (!l) return;
1832
1837
  const u = Ve(t.resultPool);
1833
1838
  if (!u) return;
1834
- const y = new Set((() => {
1835
- var v, g;
1839
+ const p = new Set((() => {
1840
+ var b, m;
1836
1841
  if (s === "inner") return [];
1837
- const c = (g = (v = r == null ? void 0 : r.gridState.columnVisibility) == null ? void 0 : v.hiddenColIds) == null ? void 0 : g.map(Tt).filter((b) => b.type === "column").map((b) => b.id);
1838
- return c || e.filter((b) => Et(b.spec)).map((b) => b.id);
1842
+ const c = (m = (b = r == null ? void 0 : r.gridState.columnVisibility) == null ? void 0 : b.hiddenColIds) == null ? void 0 : m.map(Tt).filter((w) => w.type === "column").map((w) => w.id);
1843
+ return c || e.filter((w) => Ft(w.spec)).map((w) => w.id);
1839
1844
  })());
1840
- y.delete(l.id), [...o.map((c) => c.column), ...a.map((c) => c.column)].filter((c) => c.type === "column").map((c) => y.delete(c.id));
1841
- const w = e.filter((c) => !y.has(c.id)), d = Ke(w.map(Ie), u), f = [
1845
+ p.delete(l.id), [...o.map((c) => c.column), ...a.map((c) => c.column)].filter((c) => c.type === "column").map((c) => p.delete(c.id));
1846
+ const v = e.filter((c) => !p.has(c.id)), d = Ke(v.map(Ie), u), f = [
1842
1847
  ...l.spec.axesSpec.map((c) => ({
1843
1848
  type: "axis",
1844
1849
  id: E(c),
@@ -1850,16 +1855,16 @@ function _n(t, e, n, r, i) {
1850
1855
  spec: c.spec
1851
1856
  }))
1852
1857
  ];
1853
- if (!$e([...w, ...d])) return;
1854
- const h = t.createPTable(
1858
+ if (!$e([...v, ...d])) return;
1859
+ const g = t.createPTable(
1855
1860
  Je(e, d, s, o, a, i == null ? void 0 : i.coreColumnPredicate)
1856
1861
  );
1857
1862
  return {
1858
1863
  tableSpec: f,
1859
- tableHandle: h
1864
+ tableHandle: g
1860
1865
  };
1861
1866
  }
1862
- function In(t, e, n) {
1867
+ function _n(t, e, n) {
1863
1868
  const r = t.resultPool.findLabels(e);
1864
1869
  return {
1865
1870
  axis: e,
@@ -1870,7 +1875,7 @@ function In(t, e, n) {
1870
1875
  defaultValue: n[0]
1871
1876
  };
1872
1877
  }
1873
- const Ft = (t, e) => {
1878
+ const Ot = (t, e) => {
1874
1879
  let n = t.toString();
1875
1880
  return e == null || e.forEach((r) => {
1876
1881
  if (r)
@@ -1889,74 +1894,74 @@ function Dt(t) {
1889
1894
  }), e = r;
1890
1895
  }), e;
1891
1896
  }
1892
- function Ot(t, e) {
1893
- const n = t.spec.axesSpec.map(E);
1894
- return e.spec.axesSpec.map(E).every((i) => n.some((s) => G(s, i) && G(i, s)));
1897
+ function Rt(t, e) {
1898
+ const n = t.axesSpec.map(E);
1899
+ return e.axesSpec.map(E).every((i) => n.some((s) => R(s, i) && R(i, s)));
1895
1900
  }
1896
1901
  function Ne(t, e) {
1897
- const n = t.spec.axesSpec.map(E);
1898
- return e.spec.axesSpec.map(E).every((i) => n.some((s) => G(s, i)));
1902
+ const n = t.axesSpec.map(E);
1903
+ return e.axesSpec.map(E).every((i) => n.some((s) => R(s, i)));
1899
1904
  }
1900
- const Rt = "pl7.app/graph/isVirtual", Se = "pl7.app/label";
1901
- function Ce(t, e) {
1905
+ const kt = "pl7.app/graph/isVirtual", Ce = "pl7.app/label";
1906
+ function Se(t, e) {
1902
1907
  const n = t.spec.axesSpec.map(E), r = e.spec.axesSpec.map(E);
1903
- if (Ot(t, e))
1908
+ if (Rt(t.spec, e.spec))
1904
1909
  return [];
1905
- if (!Ne(t, e))
1910
+ if (!Ne(t.spec, e.spec))
1906
1911
  return [];
1907
- const o = r.map((w) => n.filter((d) => G(d, w))), a = Dt(o), l = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), y = a.map((w) => {
1912
+ const o = r.map((v) => n.filter((d) => R(d, v))), a = Dt(o), l = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), p = a.map((v) => {
1908
1913
  const d = /* @__PURE__ */ new Set();
1909
- return w.map((f, h) => {
1910
- const p = e.spec.axesSpec[h].domain, x = f.domain;
1911
- return Object.entries(x ?? {}).forEach(([c, v]) => {
1912
- if ((p == null ? void 0 : p[c]) === void 0) {
1913
- const g = JSON.stringify([c, v]);
1914
- d.add(g), l.add(g);
1914
+ return v.map((f, g) => {
1915
+ const h = e.spec.axesSpec[g].domain, P = f.domain;
1916
+ return Object.entries(P ?? {}).forEach(([c, b]) => {
1917
+ if ((h == null ? void 0 : h[c]) === void 0) {
1918
+ const m = JSON.stringify([c, b]);
1919
+ d.add(m), l.add(m);
1915
1920
  }
1916
1921
  }), {
1917
1922
  ...f,
1918
- annotations: e.spec.axesSpec[h].annotations
1923
+ annotations: e.spec.axesSpec[g].annotations
1919
1924
  };
1920
1925
  }), d;
1921
1926
  });
1922
- return [...l].forEach((w) => {
1923
- y.some((d) => !d.has(w)) && u.add(w);
1924
- }), a.map((w, d) => {
1927
+ return [...l].forEach((v) => {
1928
+ p.some((d) => !d.has(v)) && u.add(v);
1929
+ }), a.map((v, d) => {
1925
1930
  var c;
1926
- const f = Ft(e.id, w.map((v) => v.domain)), h = ((c = e.spec.annotations) == null ? void 0 : c[Se]) ?? "", p = [...y[d]].filter((v) => u.has(v)).sort().map((v) => {
1927
- var g;
1928
- return (g = JSON.parse(v)) == null ? void 0 : g[1];
1929
- }).join(" / "), x = {
1931
+ const f = Ot(e.id, v.map((b) => b.domain)), g = ((c = e.spec.annotations) == null ? void 0 : c[Ce]) ?? "", h = [...p[d]].filter((b) => u.has(b)).sort().map((b) => {
1932
+ var m;
1933
+ return (m = JSON.parse(b)) == null ? void 0 : m[1];
1934
+ }).join(" / "), P = {
1930
1935
  ...e.spec.annotations,
1931
- [Rt]: "true"
1936
+ [kt]: "true"
1932
1937
  };
1933
- return (h || p) && (x[Se] = h && p ? h + " / " + p : h + p), {
1938
+ return (g || h) && (P[Ce] = g && h ? g + " / " + h : g + h), {
1934
1939
  id: f,
1935
1940
  spec: {
1936
1941
  ...e.spec,
1937
- axesSpec: w.map((v, g) => ({
1938
- ...v,
1939
- annotations: e.spec.axesSpec[g].annotations
1942
+ axesSpec: v.map((b, m) => ({
1943
+ ...b,
1944
+ annotations: e.spec.axesSpec[m].annotations
1940
1945
  })),
1941
- annotations: x
1946
+ annotations: P
1942
1947
  },
1943
1948
  data: e.data
1944
1949
  };
1945
1950
  });
1946
1951
  }
1947
- function kt(t) {
1952
+ function jt(t) {
1948
1953
  const e = [];
1949
1954
  for (let n = 0; n < t.length; n++)
1950
1955
  for (let r = n + 1; r < t.length; r++) {
1951
1956
  const i = t[n], s = t[r];
1952
1957
  e.push(
1953
- ...Ce(i, s),
1954
- ...Ce(s, i)
1958
+ ...Se(i, s),
1959
+ ...Se(s, i)
1955
1960
  );
1956
1961
  }
1957
1962
  return e;
1958
1963
  }
1959
- function jt(t, e) {
1964
+ function Vt(t, e) {
1960
1965
  const n = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Map();
1961
1966
  t.forEach((s) => {
1962
1967
  n.add(s.id), r.set(ee(Ae(s.spec)), s);
@@ -1967,7 +1972,7 @@ function jt(t, e) {
1967
1972
  const o = ee(Ae(s.spec));
1968
1973
  if (!r.has(o)) {
1969
1974
  for (const a of r.values())
1970
- if (Ne(a, s)) {
1975
+ if (Ne(a.spec, s.spec)) {
1971
1976
  i.set(o, s);
1972
1977
  break;
1973
1978
  }
@@ -1975,23 +1980,15 @@ function jt(t, e) {
1975
1980
  }
1976
1981
  return [...r.values(), ...i.values()];
1977
1982
  }
1978
- const Vt = [
1979
- "Int",
1980
- "Long",
1981
- "Float",
1982
- "Double",
1983
- "String",
1984
- "Bytes"
1985
- ];
1986
- function Ln(t, e) {
1987
- if (e === void 0) return;
1988
- const n = t.resultPool.getData().entries.map((s) => s.obj).filter(me).filter((s) => Vt.includes(s.spec.valueType)), r = jt(e, n), i = [...r, ...kt(r)];
1983
+ function In(t, e) {
1984
+ if (!e) return;
1985
+ const n = t.resultPool.getData().entries.map((s) => s.obj).filter(me), r = Vt(e, n), i = [...r, ...jt(r)];
1989
1986
  if (!i.some(
1990
1987
  (s) => s.data instanceof I && !s.data.getIsReadyOrError()
1991
1988
  ))
1992
1989
  return t.createPFrame(i);
1993
1990
  }
1994
- class Tn {
1991
+ class Ln {
1995
1992
  constructor(e) {
1996
1993
  this.handle = e;
1997
1994
  }
@@ -2018,19 +2015,19 @@ function Kt(t) {
2018
2015
  name: te(t, "name")
2019
2016
  });
2020
2017
  }
2021
- function En(t) {
2018
+ function Tn(t) {
2022
2019
  return Te({
2023
2020
  ref: Kt(te(t, "ref")),
2024
2021
  label: te(t, "label")
2025
2022
  });
2026
2023
  }
2027
- const Fn = {
2028
- sdkVersion: W
2024
+ const En = {
2025
+ sdkVersion: G
2029
2026
  };
2030
2027
  function $t() {
2031
- return Ee({ sdkVersion: W });
2028
+ return Ee({ sdkVersion: G });
2032
2029
  }
2033
- function Dn(t) {
2030
+ function Fn(t) {
2034
2031
  try {
2035
2032
  return $t();
2036
2033
  } catch {
@@ -2044,21 +2041,21 @@ function On(t) {
2044
2041
  export {
2045
2042
  Gt as Args,
2046
2043
  _ as BlockModel,
2047
- Fn as CurrentSdkInfo,
2048
- C as FutureRef,
2049
- Rt as IS_VIRTUAL_COLUMN,
2044
+ En as CurrentSdkInfo,
2045
+ S as FutureRef,
2046
+ kt as IS_VIRTUAL_COLUMN,
2050
2047
  Ht as It,
2051
2048
  wn as JsRenderInternal,
2052
- Se as LABEL_ANNOTATION,
2049
+ Ce as LABEL_ANNOTATION,
2053
2050
  qt as MainOutputs,
2054
2051
  rt as OutputError,
2055
2052
  ct as PAnnotationLabel,
2056
- dt as PAnnotationTrace,
2053
+ pt as PAnnotationTrace,
2057
2054
  ge as PColumnCollection,
2058
- Tn as PFrameImpl,
2059
- K as RT_BINARY_PARTITIONED,
2060
- M as RT_BINARY_SUPER_PARTITIONED,
2061
- B as RT_JSON_PARTITIONED,
2055
+ Ln as PFrameImpl,
2056
+ $ as RT_BINARY_PARTITIONED,
2057
+ W as RT_BINARY_SUPER_PARTITIONED,
2058
+ M as RT_JSON_PARTITIONED,
2062
2059
  ie as RT_JSON_SUPER_PARTITIONED,
2063
2060
  ne as RT_RESOURCE_MAP,
2064
2061
  re as RT_RESOURCE_MAP_PARTITIONED,
@@ -2066,31 +2063,31 @@ export {
2066
2063
  It as ResultPool,
2067
2064
  zt as StagingOutputs,
2068
2065
  ft as Trace,
2069
- pt as TraceEntry,
2066
+ dt as TraceEntry,
2070
2067
  I as TreeNodeAccessor,
2071
2068
  Yt as UiState,
2072
2069
  $e as allColumnsComputed,
2073
2070
  rn as and,
2074
2071
  bt as convertOrParsePColumnData,
2075
- Ln as createPFrameForGraphs,
2072
+ In as createPFrameForGraphs,
2076
2073
  Cn as createPlDataTable,
2077
- In as createPlDataTableSheet,
2078
- _n as createPlDataTableV2,
2074
+ _n as createPlDataTableSheet,
2075
+ Sn as createPlDataTableV2,
2079
2076
  Re as deriveLabels,
2080
2077
  ue as downgradeCfgOrLambda,
2081
- jt as enrichColumnsWithCompatible,
2078
+ Vt as enrichColumnsWithCompatible,
2082
2079
  hn as extractArchiveAndGetURL,
2083
- Pn as extractConfig,
2080
+ xn as extractConfig,
2084
2081
  wt as filterDataInfoEntries,
2085
2082
  en as flatten,
2086
- En as fromPlOption,
2083
+ Tn as fromPlOption,
2087
2084
  Kt as fromPlRef,
2088
- kt as getAdditionalColumns,
2085
+ jt as getAdditionalColumns,
2089
2086
  Ve as getAllLabelColumns,
2090
2087
  un as getBlobContent,
2091
- dn as getBlobContentAsJson,
2088
+ pn as getBlobContentAsJson,
2092
2089
  cn as getBlobContentAsString,
2093
- pn as getDownloadedBlobContent,
2090
+ dn as getDownloadedBlobContent,
2094
2091
  On as getEnvironmentValue,
2095
2092
  H as getFromCfg,
2096
2093
  Z as getImmediate,
@@ -2101,18 +2098,18 @@ export {
2101
2098
  Ke as getMatchingLabelColumns,
2102
2099
  fn as getOnDemandBlobContent,
2103
2100
  mt as getPartitionKeysList,
2104
- Dn as getPlatformaOrDefault,
2101
+ Fn as getPlatformaOrDefault,
2105
2102
  yn as getProgressLog,
2106
2103
  vn as getProgressLogWithInfo,
2107
2104
  $t as getRawPlatformaInstance,
2108
2105
  on as getResourceField,
2109
2106
  an as getResourceValueAsJson,
2110
2107
  vt as getUniquePartitionKeys,
2111
- de as ifDef,
2112
- Et as isColumnOptional,
2108
+ pe as ifDef,
2109
+ Ft as isColumnOptional,
2113
2110
  Lt as isConfigLambda,
2114
2111
  tn as isEmpty,
2115
- Sn as isLabelColumn,
2112
+ Et as isLabelColumn,
2116
2113
  Wt as isolate,
2117
2114
  Xt as makeArray,
2118
2115
  Te as makeObject,
@@ -2125,7 +2122,7 @@ export {
2125
2122
  Tt as parsePTableColumnId,
2126
2123
  An as parseResourceMap,
2127
2124
  it as readOutput,
2128
- xn as stringifyPTableColumnId,
2125
+ Pn as stringifyPTableColumnId,
2129
2126
  Mt as wrapOutputs
2130
2127
  };
2131
2128
  //# sourceMappingURL=index.mjs.map