@platforma-sdk/model 1.38.0 → 1.39.0
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/bconfig/index.d.ts +2 -3
- package/dist/bconfig/index.d.ts.map +1 -1
- package/dist/bconfig/normalization.d.ts +1 -7
- package/dist/bconfig/normalization.d.ts.map +1 -1
- package/dist/bconfig/types.d.ts +0 -4
- package/dist/bconfig/types.d.ts.map +1 -1
- package/dist/bconfig/{utils.d.ts → util.d.ts} +1 -1
- package/dist/bconfig/util.d.ts.map +1 -0
- package/dist/bconfig/v3.d.ts +3 -32
- package/dist/bconfig/v3.d.ts.map +1 -1
- package/dist/builder.d.ts +3 -1
- package/dist/builder.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +572 -604
- package/dist/index.mjs.map +1 -1
- package/dist/render/api.d.ts +4 -2
- package/dist/render/api.d.ts.map +1 -1
- package/dist/render/internal.d.ts +3 -3
- package/dist/render/internal.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/package.json +2 -2
- package/src/bconfig/index.ts +2 -3
- package/src/bconfig/normalization.ts +2 -105
- package/src/bconfig/types.ts +0 -5
- package/src/bconfig/v3.ts +3 -41
- package/src/builder.ts +21 -2
- package/src/render/api.ts +27 -7
- package/src/render/internal.ts +14 -3
- package/dist/bconfig/container.d.ts +0 -46
- package/dist/bconfig/container.d.ts.map +0 -1
- package/dist/bconfig/utils.d.ts.map +0 -1
- package/src/bconfig/container.ts +0 -58
- /package/src/bconfig/{utils.ts → util.ts} +0 -0
package/dist/index.mjs
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
var qe = Object.defineProperty;
|
|
2
2
|
var ze = (t, e, n) => e in t ? qe(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
|
-
var
|
|
4
|
-
import { isPColumn as
|
|
3
|
+
var k = (t, e, n) => ze(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
|
+
import { isPColumn as ke, mapPObjectData as be, isDataInfoEntries as De, isDataInfo as ve, dataInfoToEntries as Ye, selectorsToPredicate as Y, resolveAnchors as Ce, deriveNativeId as Xe, isPColumnSpec as te, isPartitionedDataInfoEntries as Qe, getAxisId as R, entriesToDataInfo as Ze, canonicalizeAxisId as et, withEnrichments as Se, AnchoredIdDeriver as we, isPlRef as tt, mapValueInVOE as nt, ensurePColumn as rt, extractAllColumns as it, mapPTableDef as st, mapDataInfo as ot, extractConfigGeneric as at, matchAxisId as N, getColumnIdAndSpec as Ae, canonicalizeJson as O, parseJson as Pe, isPTableAbsent as lt, uniquePlId as ut, PTableNA as ct } from "@milaboratories/pl-model-common";
|
|
5
5
|
export * from "@milaboratories/pl-model-common";
|
|
6
|
-
import
|
|
7
|
-
import { z as
|
|
6
|
+
import Re from "canonicalize";
|
|
7
|
+
import { z as $ } from "zod";
|
|
8
8
|
export * from "@milaboratories/pl-error-like";
|
|
9
|
-
class
|
|
9
|
+
class dt extends Error {
|
|
10
10
|
constructor(e, n) {
|
|
11
11
|
super(`${e.length}${n ? "+" : ""} errors, first error: ` + e[0].message), this.errors = e, this.moreErrors = n;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
function
|
|
15
|
-
if (!t.ok) throw new
|
|
14
|
+
function pt(t) {
|
|
15
|
+
if (!t.ok) throw new dt(t.errors, t.moreErrors);
|
|
16
16
|
return t.value;
|
|
17
17
|
}
|
|
18
|
-
function
|
|
18
|
+
function sn(t) {
|
|
19
19
|
return new Proxy(t, {
|
|
20
20
|
get(e, n) {
|
|
21
|
-
return
|
|
21
|
+
return pt(e[n]);
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
25
|
function P(t) {
|
|
26
|
-
return typeof t == "string" || typeof t == "number" || typeof t == "boolean" || t === null ?
|
|
26
|
+
return typeof t == "string" || typeof t == "number" || typeof t == "boolean" || t === null ? ne(t) : t;
|
|
27
27
|
}
|
|
28
|
-
function
|
|
28
|
+
function X(t) {
|
|
29
29
|
return { type: "GetFromCtx", variable: t };
|
|
30
30
|
}
|
|
31
|
-
function
|
|
31
|
+
function on(t) {
|
|
32
32
|
return {
|
|
33
33
|
type: "Isolate",
|
|
34
34
|
cfg: t
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
|
-
const
|
|
38
|
-
function
|
|
37
|
+
const an = X("$args"), ln = X("$it"), un = X("$prod"), cn = X("$staging"), dn = X("$ui");
|
|
38
|
+
function ne(t) {
|
|
39
39
|
return { type: "Immediate", value: t };
|
|
40
40
|
}
|
|
41
|
-
function
|
|
41
|
+
function Oe(t) {
|
|
42
42
|
const e = {};
|
|
43
43
|
for (const [n, r] of Object.entries(t)) e[n] = P(r);
|
|
44
44
|
return {
|
|
@@ -46,7 +46,7 @@ function Re(t) {
|
|
|
46
46
|
template: e
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
function
|
|
49
|
+
function pn(...t) {
|
|
50
50
|
const e = [];
|
|
51
51
|
for (const n of t) e.push(P(n));
|
|
52
52
|
return {
|
|
@@ -54,14 +54,14 @@ function dn(...t) {
|
|
|
54
54
|
template: e
|
|
55
55
|
};
|
|
56
56
|
}
|
|
57
|
-
function
|
|
57
|
+
function re(t, e) {
|
|
58
58
|
return {
|
|
59
59
|
type: "GetJsonField",
|
|
60
60
|
source: P(t),
|
|
61
61
|
field: P(e)
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
-
function
|
|
64
|
+
function fn(t, e, n = "$it") {
|
|
65
65
|
return {
|
|
66
66
|
type: "MapRecordValues",
|
|
67
67
|
source: t,
|
|
@@ -69,7 +69,7 @@ function pn(t, e, n = "$it") {
|
|
|
69
69
|
itVar: n
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
|
-
function
|
|
72
|
+
function hn(t, e, n = "$it") {
|
|
73
73
|
return {
|
|
74
74
|
type: "MapArrayValues",
|
|
75
75
|
source: t,
|
|
@@ -77,46 +77,46 @@ function fn(t, e, n = "$it") {
|
|
|
77
77
|
itVar: n
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
|
-
function
|
|
80
|
+
function gn(t) {
|
|
81
81
|
return {
|
|
82
82
|
type: "Flatten",
|
|
83
83
|
source: t
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
|
-
function
|
|
86
|
+
function mn(t) {
|
|
87
87
|
return {
|
|
88
88
|
type: "IsEmpty",
|
|
89
89
|
arg: t
|
|
90
90
|
};
|
|
91
91
|
}
|
|
92
|
-
function
|
|
92
|
+
function yn(t) {
|
|
93
93
|
return {
|
|
94
94
|
type: "Not",
|
|
95
95
|
operand: t
|
|
96
96
|
};
|
|
97
97
|
}
|
|
98
|
-
function
|
|
98
|
+
function bn(t, e) {
|
|
99
99
|
return {
|
|
100
100
|
type: "And",
|
|
101
101
|
operand1: t,
|
|
102
102
|
operand2: e
|
|
103
103
|
};
|
|
104
104
|
}
|
|
105
|
-
function
|
|
105
|
+
function vn(t, e) {
|
|
106
106
|
return {
|
|
107
107
|
type: "Or",
|
|
108
108
|
operand1: t,
|
|
109
109
|
operand2: e
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
|
-
function
|
|
112
|
+
function Cn(t, e) {
|
|
113
113
|
return {
|
|
114
114
|
type: "GetResourceField",
|
|
115
115
|
source: P(t),
|
|
116
116
|
field: P(e)
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
|
-
function
|
|
119
|
+
function Sn() {
|
|
120
120
|
return function(t) {
|
|
121
121
|
return {
|
|
122
122
|
type: "GetResourceValueAsJson",
|
|
@@ -124,7 +124,7 @@ function wn() {
|
|
|
124
124
|
};
|
|
125
125
|
};
|
|
126
126
|
}
|
|
127
|
-
function
|
|
127
|
+
function wn(t, e, n = "$it") {
|
|
128
128
|
return {
|
|
129
129
|
type: "MapResourceFields",
|
|
130
130
|
source: t,
|
|
@@ -132,21 +132,21 @@ function Sn(t, e, n = "$it") {
|
|
|
132
132
|
itVar: n
|
|
133
133
|
};
|
|
134
134
|
}
|
|
135
|
-
function
|
|
135
|
+
function An(t, e) {
|
|
136
136
|
return {
|
|
137
137
|
type: "GetBlobContent",
|
|
138
138
|
range: e,
|
|
139
139
|
source: P(t)
|
|
140
140
|
};
|
|
141
141
|
}
|
|
142
|
-
function
|
|
142
|
+
function Pn(t, e) {
|
|
143
143
|
return {
|
|
144
144
|
type: "GetBlobContentAsString",
|
|
145
145
|
range: e,
|
|
146
146
|
source: P(t)
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
|
-
function
|
|
149
|
+
function xn() {
|
|
150
150
|
return function(t, e) {
|
|
151
151
|
return {
|
|
152
152
|
type: "GetBlobContentAsJson",
|
|
@@ -155,7 +155,7 @@ function Pn() {
|
|
|
155
155
|
};
|
|
156
156
|
};
|
|
157
157
|
}
|
|
158
|
-
function
|
|
158
|
+
function _n(t) {
|
|
159
159
|
return {
|
|
160
160
|
type: "GetDownloadedBlobContent",
|
|
161
161
|
source: P(t)
|
|
@@ -167,20 +167,20 @@ function In(t) {
|
|
|
167
167
|
source: P(t)
|
|
168
168
|
};
|
|
169
169
|
}
|
|
170
|
-
function
|
|
170
|
+
function Tn(t, e) {
|
|
171
171
|
return {
|
|
172
172
|
type: "ExtractArchiveAndGetURL",
|
|
173
173
|
format: e,
|
|
174
174
|
source: P(t)
|
|
175
175
|
};
|
|
176
176
|
}
|
|
177
|
-
function
|
|
177
|
+
function Ln(t) {
|
|
178
178
|
return {
|
|
179
179
|
type: "GetImportProgress",
|
|
180
180
|
source: P(t)
|
|
181
181
|
};
|
|
182
182
|
}
|
|
183
|
-
function
|
|
183
|
+
function Fn(t, e) {
|
|
184
184
|
return {
|
|
185
185
|
type: "GetLastLogs",
|
|
186
186
|
source: P(t),
|
|
@@ -207,48 +207,48 @@ function Dn(t) {
|
|
|
207
207
|
source: P(t)
|
|
208
208
|
};
|
|
209
209
|
}
|
|
210
|
-
function
|
|
210
|
+
function ft() {
|
|
211
211
|
return typeof globalThis.getPlatforma < "u" || typeof globalThis.platforma < "u";
|
|
212
212
|
}
|
|
213
|
-
function
|
|
213
|
+
function Ke(t) {
|
|
214
214
|
if (t && typeof globalThis.getPlatforma == "function")
|
|
215
215
|
return globalThis.getPlatforma(t);
|
|
216
216
|
if (typeof globalThis.platforma < "u") return globalThis.platforma;
|
|
217
217
|
throw new Error("Can't get platforma instance.");
|
|
218
218
|
}
|
|
219
|
-
function
|
|
219
|
+
function ht() {
|
|
220
220
|
if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
|
|
221
221
|
}
|
|
222
222
|
function v() {
|
|
223
223
|
if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
|
|
224
224
|
throw new Error("Not in config rendering context");
|
|
225
225
|
}
|
|
226
|
-
function
|
|
227
|
-
const n =
|
|
226
|
+
function G(t, e) {
|
|
227
|
+
const n = ht();
|
|
228
228
|
if (n === void 0) return !1;
|
|
229
229
|
if (t in n.callbackRegistry) throw new Error(`Callback with key ${t} already registered.`);
|
|
230
230
|
return n.callbackRegistry[t] = e, !0;
|
|
231
231
|
}
|
|
232
|
-
const
|
|
233
|
-
function
|
|
232
|
+
const ue = /* @__PURE__ */ new Map();
|
|
233
|
+
function gt(t, e) {
|
|
234
234
|
t in v().callbackRegistry || (v().callbackRegistry[t] = (n) => {
|
|
235
|
-
for (const r of
|
|
235
|
+
for (const r of ue.get(t))
|
|
236
236
|
r(n);
|
|
237
|
-
},
|
|
237
|
+
}, ue.set(t, [])), ue.get(t).push(e);
|
|
238
238
|
}
|
|
239
|
-
class
|
|
239
|
+
class F {
|
|
240
240
|
constructor(e, n = (r) => r) {
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
this.handle = e, this.postProcess = n,
|
|
241
|
+
k(this, "isResolved", !1);
|
|
242
|
+
k(this, "resolvedValue");
|
|
243
|
+
this.handle = e, this.postProcess = n, gt(e, (r) => {
|
|
244
244
|
this.resolvedValue = n(r), this.isResolved = !0;
|
|
245
245
|
});
|
|
246
246
|
}
|
|
247
247
|
map(e) {
|
|
248
|
-
return new
|
|
248
|
+
return new F(this.handle, (n) => e(this.postProcess(n)));
|
|
249
249
|
}
|
|
250
250
|
mapDefined(e) {
|
|
251
|
-
return new
|
|
251
|
+
return new F(this.handle, (n) => {
|
|
252
252
|
const r = this.postProcess(n);
|
|
253
253
|
return r ? e(r) : void 0;
|
|
254
254
|
});
|
|
@@ -257,7 +257,7 @@ class L {
|
|
|
257
257
|
return this.isResolved ? this.resolvedValue : { __awaited_futures__: [this.handle] };
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
|
-
function
|
|
260
|
+
function fe(t, e) {
|
|
261
261
|
return t === void 0 ? void 0 : e(t);
|
|
262
262
|
}
|
|
263
263
|
class D {
|
|
@@ -299,7 +299,7 @@ class D {
|
|
|
299
299
|
...this.resolvePath,
|
|
300
300
|
...n.map((i) => typeof i == "string" ? i : i.field)
|
|
301
301
|
];
|
|
302
|
-
return
|
|
302
|
+
return fe(
|
|
303
303
|
v().resolveWithCommon(this.handle, e, ...n),
|
|
304
304
|
(i) => new D(i, r)
|
|
305
305
|
);
|
|
@@ -321,7 +321,7 @@ class D {
|
|
|
321
321
|
}
|
|
322
322
|
getError() {
|
|
323
323
|
const e = [...this.resolvePath, "error"];
|
|
324
|
-
return
|
|
324
|
+
return fe(
|
|
325
325
|
v().getError(this.handle),
|
|
326
326
|
(n) => new D(n, e)
|
|
327
327
|
);
|
|
@@ -363,7 +363,7 @@ class D {
|
|
|
363
363
|
getPColumns(e = !1, n = "") {
|
|
364
364
|
const r = this.parsePObjectCollection(e, n);
|
|
365
365
|
return r === void 0 ? void 0 : Object.entries(r).map(([, s]) => {
|
|
366
|
-
if (!
|
|
366
|
+
if (!ke(s)) throw new Error(`not a PColumn (kind = ${s.spec.kind})`);
|
|
367
367
|
return s;
|
|
368
368
|
});
|
|
369
369
|
}
|
|
@@ -381,18 +381,18 @@ class D {
|
|
|
381
381
|
const i = {};
|
|
382
382
|
for (const [s, o] of Object.entries(r)) {
|
|
383
383
|
const a = [...this.resolvePath, s];
|
|
384
|
-
i[s] =
|
|
384
|
+
i[s] = be(o, (l) => new D(l, a));
|
|
385
385
|
}
|
|
386
386
|
return i;
|
|
387
387
|
}
|
|
388
388
|
getFileContentAsBase64(e) {
|
|
389
|
-
return new
|
|
389
|
+
return new F(v().getBlobContentAsBase64(this.handle, e));
|
|
390
390
|
}
|
|
391
391
|
getFileContentAsString(e) {
|
|
392
|
-
return new
|
|
392
|
+
return new F(v().getBlobContentAsString(this.handle, e));
|
|
393
393
|
}
|
|
394
394
|
getFileContentAsJson(e) {
|
|
395
|
-
return new
|
|
395
|
+
return new F(
|
|
396
396
|
v().getBlobContentAsString(this.handle, e)
|
|
397
397
|
).mapDefined((n) => JSON.parse(n));
|
|
398
398
|
}
|
|
@@ -412,7 +412,7 @@ class D {
|
|
|
412
412
|
* @returns downloaded file handle
|
|
413
413
|
*/
|
|
414
414
|
getFileHandle() {
|
|
415
|
-
return new
|
|
415
|
+
return new F(v().getDownloadedBlobContentHandle(this.handle));
|
|
416
416
|
}
|
|
417
417
|
/**
|
|
418
418
|
* @deprecated use getFileHandle
|
|
@@ -424,7 +424,7 @@ class D {
|
|
|
424
424
|
* @returns downloaded file handle
|
|
425
425
|
*/
|
|
426
426
|
getRemoteFileHandle() {
|
|
427
|
-
return new
|
|
427
|
+
return new F(v().getOnDemandBlobContentHandle(this.handle));
|
|
428
428
|
}
|
|
429
429
|
/**
|
|
430
430
|
* @deprecated use getRemoteFileHandle
|
|
@@ -436,22 +436,22 @@ class D {
|
|
|
436
436
|
* @returns the url to the extracted folder
|
|
437
437
|
*/
|
|
438
438
|
extractArchiveAndGetURL(e) {
|
|
439
|
-
return new
|
|
439
|
+
return new F(v().extractArchiveAndGetURL(this.handle, e));
|
|
440
440
|
}
|
|
441
441
|
getImportProgress() {
|
|
442
|
-
return new
|
|
442
|
+
return new F(v().getImportProgress(this.handle));
|
|
443
443
|
}
|
|
444
444
|
getLastLogs(e) {
|
|
445
|
-
return new
|
|
445
|
+
return new F(v().getLastLogs(this.handle, e));
|
|
446
446
|
}
|
|
447
447
|
getProgressLog(e) {
|
|
448
|
-
return new
|
|
448
|
+
return new F(v().getProgressLog(this.handle, e));
|
|
449
449
|
}
|
|
450
450
|
getProgressLogWithInfo(e) {
|
|
451
|
-
return new
|
|
451
|
+
return new F(v().getProgressLogWithInfo(this.handle, e));
|
|
452
452
|
}
|
|
453
453
|
getLogHandle() {
|
|
454
|
-
return new
|
|
454
|
+
return new F(v().getLogHandle(this.handle));
|
|
455
455
|
}
|
|
456
456
|
allFieldsResolved(e = "Input") {
|
|
457
457
|
switch (e) {
|
|
@@ -477,123 +477,123 @@ class D {
|
|
|
477
477
|
let l = (r === "Input" ? this.listInputFields() : r === "Output" ? this.listOutputFields() : this.listDynamicFields()).map(
|
|
478
478
|
(u) => [u, this.resolve({ field: u, assertFieldType: r })]
|
|
479
479
|
);
|
|
480
|
-
return s && (l = l.filter((u) => u[1] !== void 0)), l.map(([u,
|
|
480
|
+
return s && (l = l.filter((u) => u[1] !== void 0)), l.map(([u, h]) => o(u, h));
|
|
481
481
|
}
|
|
482
482
|
}
|
|
483
|
-
const
|
|
483
|
+
const Ne = "staging", Ve = "main", mt = {
|
|
484
484
|
explicitColumnsSupport: !0,
|
|
485
485
|
inlineColumnsSupport: !0,
|
|
486
486
|
activeArgs: !0,
|
|
487
487
|
pTablePartitionFiltersSupport: !0
|
|
488
488
|
};
|
|
489
|
-
function
|
|
489
|
+
function je(t) {
|
|
490
490
|
return typeof t == "object" && t !== null && "__awaited_futures__" in t;
|
|
491
491
|
}
|
|
492
|
-
function
|
|
492
|
+
function he(t, e, n) {
|
|
493
493
|
if (e.has(n)) return;
|
|
494
494
|
if (e.add(n), typeof n === "object")
|
|
495
|
-
if (
|
|
495
|
+
if (je(n)) n.__awaited_futures__.forEach((i) => t.add(i));
|
|
496
496
|
else if (Array.isArray(n))
|
|
497
|
-
for (const i of n)
|
|
497
|
+
for (const i of n) he(t, e, i);
|
|
498
498
|
else
|
|
499
499
|
for (const [, i] of Object.entries(n))
|
|
500
|
-
i !== n &&
|
|
500
|
+
i !== n && he(t, e, i);
|
|
501
501
|
}
|
|
502
|
-
function
|
|
502
|
+
function yt(t) {
|
|
503
503
|
const e = /* @__PURE__ */ new Set();
|
|
504
|
-
return
|
|
504
|
+
return he(e, /* @__PURE__ */ new Set(), t), e;
|
|
505
505
|
}
|
|
506
|
-
const
|
|
506
|
+
const Rn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
507
507
|
__proto__: null,
|
|
508
|
-
GlobalCfgRenderCtxFeatureFlags:
|
|
509
|
-
MainAccessorName:
|
|
510
|
-
StagingAccessorName:
|
|
511
|
-
getAllFutureAwaits:
|
|
512
|
-
isFutureAwait:
|
|
513
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
514
|
-
type:
|
|
515
|
-
importance:
|
|
516
|
-
id:
|
|
517
|
-
label:
|
|
518
|
-
}),
|
|
519
|
-
function
|
|
520
|
-
const r = /* @__PURE__ */ new Map(), i = n.forceTraceElements !== void 0 && n.forceTraceElements.length > 0 ? new Set(n.forceTraceElements) : void 0, s = /* @__PURE__ */ new Map(), o = t.map((
|
|
508
|
+
GlobalCfgRenderCtxFeatureFlags: mt,
|
|
509
|
+
MainAccessorName: Ve,
|
|
510
|
+
StagingAccessorName: Ne,
|
|
511
|
+
getAllFutureAwaits: yt,
|
|
512
|
+
isFutureAwait: je
|
|
513
|
+
}, Symbol.toStringTag, { value: "Module" })), bt = "pl7.app/label", vt = "pl7.app/trace", Ct = $.object({
|
|
514
|
+
type: $.string(),
|
|
515
|
+
importance: $.number().optional(),
|
|
516
|
+
id: $.string().optional(),
|
|
517
|
+
label: $.string()
|
|
518
|
+
}), St = $.array(Ct), wt = 1e-3, At = "__LABEL__", xe = "__LABEL__@1";
|
|
519
|
+
function Je(t, e, n = {}) {
|
|
520
|
+
const r = /* @__PURE__ */ new Map(), i = n.forceTraceElements !== void 0 && n.forceTraceElements.length > 0 ? new Set(n.forceTraceElements) : void 0, s = /* @__PURE__ */ new Map(), o = t.map((d) => {
|
|
521
521
|
var c, m;
|
|
522
|
-
const b = e(
|
|
523
|
-
let
|
|
524
|
-
"spec" in b && typeof b.spec == "object" ? (
|
|
525
|
-
const E = (c =
|
|
522
|
+
const b = e(d);
|
|
523
|
+
let p, y, C;
|
|
524
|
+
"spec" in b && typeof b.spec == "object" ? (p = b.spec, y = b.prefixTrace, C = b.suffixTrace) : p = b;
|
|
525
|
+
const E = (c = p.annotations) == null ? void 0 : c[bt], _ = (m = p.annotations) == null ? void 0 : m[vt], w = (_ ? St.safeParse(JSON.parse(_)).data : void 0) ?? [], A = [
|
|
526
526
|
...y ?? [],
|
|
527
|
-
...
|
|
528
|
-
...
|
|
527
|
+
...w,
|
|
528
|
+
...C ?? []
|
|
529
529
|
];
|
|
530
530
|
if (E !== void 0) {
|
|
531
|
-
const
|
|
532
|
-
n.addLabelAsSuffix ? A.push(
|
|
531
|
+
const T = { label: E, type: At, importance: -2 };
|
|
532
|
+
n.addLabelAsSuffix ? A.push(T) : A.splice(0, 0, T);
|
|
533
533
|
}
|
|
534
534
|
const S = [], I = /* @__PURE__ */ new Map();
|
|
535
|
-
for (let
|
|
536
|
-
const { type:
|
|
537
|
-
I.set(
|
|
538
|
-
const
|
|
539
|
-
s.set(
|
|
540
|
-
|
|
535
|
+
for (let T = A.length - 1; T >= 0; --T) {
|
|
536
|
+
const { type: U } = A[T], V = A[T].importance ?? 0, J = (I.get(U) ?? 0) + 1;
|
|
537
|
+
I.set(U, J);
|
|
538
|
+
const K = `${U}@${J}`;
|
|
539
|
+
s.set(K, (s.get(K) ?? 0) + 1), r.set(
|
|
540
|
+
K,
|
|
541
541
|
Math.max(
|
|
542
|
-
r.get(
|
|
543
|
-
|
|
542
|
+
r.get(K) ?? Number.NEGATIVE_INFINITY,
|
|
543
|
+
V - (A.length - T) * wt
|
|
544
544
|
)
|
|
545
|
-
), S.push({ ...A[
|
|
545
|
+
), S.push({ ...A[T], fullType: K, occurrenceIndex: J });
|
|
546
546
|
}
|
|
547
547
|
return S.reverse(), {
|
|
548
|
-
value:
|
|
549
|
-
spec:
|
|
548
|
+
value: d,
|
|
549
|
+
spec: p,
|
|
550
550
|
label: E,
|
|
551
551
|
fullTrace: S
|
|
552
552
|
};
|
|
553
553
|
}), a = [], l = [], u = [...r];
|
|
554
|
-
u.sort(([,
|
|
555
|
-
for (const [
|
|
556
|
-
|
|
557
|
-
const
|
|
558
|
-
const
|
|
554
|
+
u.sort(([, d], [, b]) => b - d);
|
|
555
|
+
for (const [d] of u)
|
|
556
|
+
d.endsWith("@1") || s.get(d) === t.length ? a.push(d) : l.push(d);
|
|
557
|
+
const h = (d, b = !1) => {
|
|
558
|
+
const p = [];
|
|
559
559
|
for (let y = 0; y < o.length; y++) {
|
|
560
|
-
const
|
|
560
|
+
const C = o[y], E = C.fullTrace.filter((A) => d.has(A.fullType) || i && i.has(A.type));
|
|
561
561
|
if (E.length === 0)
|
|
562
562
|
if (b)
|
|
563
|
-
|
|
563
|
+
p.push({
|
|
564
564
|
label: "Unlabeled",
|
|
565
|
-
value:
|
|
565
|
+
value: C.value
|
|
566
566
|
});
|
|
567
567
|
else return;
|
|
568
|
-
const
|
|
569
|
-
|
|
570
|
-
label:
|
|
571
|
-
value:
|
|
568
|
+
const _ = E.map((A) => A.label), w = n.separator ?? " / ";
|
|
569
|
+
p.push({
|
|
570
|
+
label: _.join(w),
|
|
571
|
+
value: C.value
|
|
572
572
|
});
|
|
573
573
|
}
|
|
574
|
-
return
|
|
574
|
+
return p;
|
|
575
575
|
};
|
|
576
576
|
if (a.length === 0) {
|
|
577
577
|
if (l.length !== 0) throw new Error("Non-empty secondary types list while main types list is empty.");
|
|
578
|
-
return
|
|
579
|
-
}
|
|
580
|
-
let
|
|
581
|
-
for (;
|
|
582
|
-
const
|
|
583
|
-
n.includeNativeLabel &&
|
|
584
|
-
for (let
|
|
585
|
-
g >= 0 &&
|
|
586
|
-
const b = d
|
|
587
|
-
if (b !== void 0 && new Set(b.map((
|
|
588
|
-
g++, g >= a.length && (
|
|
589
|
-
}
|
|
590
|
-
return
|
|
591
|
-
}
|
|
592
|
-
const
|
|
593
|
-
function
|
|
578
|
+
return h(new Set(xe), !0);
|
|
579
|
+
}
|
|
580
|
+
let f = 0, g = -1;
|
|
581
|
+
for (; f < a.length; ) {
|
|
582
|
+
const d = /* @__PURE__ */ new Set();
|
|
583
|
+
n.includeNativeLabel && d.add(xe);
|
|
584
|
+
for (let p = 0; p < f; ++p) d.add(a[p]);
|
|
585
|
+
g >= 0 && d.add(a[g]);
|
|
586
|
+
const b = h(d);
|
|
587
|
+
if (b !== void 0 && new Set(b.map((p) => p.label)).size === t.length) return b;
|
|
588
|
+
g++, g >= a.length && (f++, g = f);
|
|
589
|
+
}
|
|
590
|
+
return h(/* @__PURE__ */ new Set([...a, ...l]), !0);
|
|
591
|
+
}
|
|
592
|
+
const Q = "PColumnData/", ie = Q + "ResourceMap", se = Q + "Partitioned/ResourceMap", H = Q + "JsonPartitioned", B = Q + "BinaryPartitioned", Me = Q + "Partitioned/", oe = Me + "JsonPartitioned", q = Me + "BinaryPartitioned";
|
|
593
|
+
function $e(t, e, n, r = [], i) {
|
|
594
594
|
if (t === void 0) return !1;
|
|
595
595
|
switch (t.resourceType.name) {
|
|
596
|
-
case
|
|
596
|
+
case ie: {
|
|
597
597
|
let s = t.getInputsLocked();
|
|
598
598
|
for (const o of t.listInputFields()) {
|
|
599
599
|
const a = t.resolve({ field: o, assertFieldType: "Input" }), l = [...r, ...JSON.parse(o)], u = a === void 0 ? void 0 : e(a);
|
|
@@ -601,13 +601,13 @@ function Me(t, e, n, r = [], i) {
|
|
|
601
601
|
}
|
|
602
602
|
return s;
|
|
603
603
|
}
|
|
604
|
-
case
|
|
604
|
+
case se: {
|
|
605
605
|
let s = t.getInputsLocked();
|
|
606
606
|
for (const o of t.listInputFields()) {
|
|
607
607
|
const a = t.resolve({ field: o, assertFieldType: "Input" });
|
|
608
608
|
if (a === void 0) s = !1;
|
|
609
609
|
else {
|
|
610
|
-
const l = [...r, ...JSON.parse(o)], u =
|
|
610
|
+
const l = [...r, ...JSON.parse(o)], u = $e(
|
|
611
611
|
a,
|
|
612
612
|
e,
|
|
613
613
|
n,
|
|
@@ -625,53 +625,53 @@ function Me(t, e, n, r = [], i) {
|
|
|
625
625
|
}
|
|
626
626
|
function On(t, e, n = !1) {
|
|
627
627
|
const r = [];
|
|
628
|
-
return { isComplete:
|
|
628
|
+
return { isComplete: $e(t, e, r, [], n), data: r };
|
|
629
629
|
}
|
|
630
|
-
const
|
|
630
|
+
const ge = (t) => {
|
|
631
631
|
if (t.endsWith(".index"))
|
|
632
632
|
return { baseKey: t.substring(0, t.length - 6), type: "index" };
|
|
633
633
|
if (t.endsWith(".values"))
|
|
634
634
|
return { baseKey: t.substring(0, t.length - 7), type: "values" };
|
|
635
635
|
throw new Error(`key must ends on .index/.values for binary p-column, got: ${t}`);
|
|
636
636
|
};
|
|
637
|
-
function
|
|
637
|
+
function Pt(t) {
|
|
638
638
|
if (!t) return;
|
|
639
639
|
const e = t.resourceType.name, n = t.getDataAsJson(), r = [];
|
|
640
640
|
let i = 0;
|
|
641
641
|
switch (e) {
|
|
642
|
-
case
|
|
642
|
+
case ie:
|
|
643
643
|
i = n.keyLength;
|
|
644
644
|
break;
|
|
645
|
-
case
|
|
645
|
+
case se:
|
|
646
646
|
i = n.partitionKeyLength + n.keyLength;
|
|
647
647
|
break;
|
|
648
|
-
case
|
|
648
|
+
case H:
|
|
649
649
|
case B:
|
|
650
650
|
i = n.partitionKeyLength;
|
|
651
651
|
break;
|
|
652
|
-
case
|
|
653
|
-
case
|
|
652
|
+
case q:
|
|
653
|
+
case oe:
|
|
654
654
|
i = n.superPartitionKeyLength + n.partitionKeyLength;
|
|
655
655
|
break;
|
|
656
656
|
}
|
|
657
657
|
switch (e) {
|
|
658
|
-
case
|
|
659
|
-
case
|
|
658
|
+
case ie:
|
|
659
|
+
case H:
|
|
660
660
|
case B:
|
|
661
661
|
for (let s of t.listInputFields()) {
|
|
662
|
-
e === B && (s =
|
|
662
|
+
e === B && (s = ge(s).baseKey);
|
|
663
663
|
const o = [...JSON.parse(s)];
|
|
664
664
|
r.push(o);
|
|
665
665
|
}
|
|
666
666
|
break;
|
|
667
|
+
case se:
|
|
668
|
+
case q:
|
|
667
669
|
case oe:
|
|
668
|
-
case z:
|
|
669
|
-
case ae:
|
|
670
670
|
for (const s of t.listInputFields()) {
|
|
671
671
|
const o = [...JSON.parse(s)], a = t.resolve({ field: s, assertFieldType: "Input" });
|
|
672
672
|
if (a !== void 0)
|
|
673
673
|
for (let l of a.listInputFields()) {
|
|
674
|
-
e ===
|
|
674
|
+
e === q && (l = ge(l).baseKey);
|
|
675
675
|
const u = [...o, ...JSON.parse(l)];
|
|
676
676
|
r.push(u);
|
|
677
677
|
}
|
|
@@ -680,7 +680,7 @@ function At(t) {
|
|
|
680
680
|
}
|
|
681
681
|
return { data: r, keyLength: i };
|
|
682
682
|
}
|
|
683
|
-
function
|
|
683
|
+
function xt(t) {
|
|
684
684
|
if (t.type !== "JsonPartitioned" && t.type !== "BinaryPartitioned")
|
|
685
685
|
throw new Error(`Splitting requires Partitioned DataInfoEntries, got ${t.type}`);
|
|
686
686
|
const { parts: e, partitionKeyLength: n } = t, r = [];
|
|
@@ -699,11 +699,11 @@ function Pt(t) {
|
|
|
699
699
|
}
|
|
700
700
|
return r.map((i) => Array.from(i.values()));
|
|
701
701
|
}
|
|
702
|
-
function
|
|
702
|
+
function _t(t) {
|
|
703
703
|
if (t === void 0) return;
|
|
704
|
-
if (
|
|
705
|
-
return
|
|
706
|
-
const e =
|
|
704
|
+
if (De(t))
|
|
705
|
+
return xt(t);
|
|
706
|
+
const e = Pt(t);
|
|
707
707
|
if (!e) return;
|
|
708
708
|
const { data: n, keyLength: r } = e, i = [];
|
|
709
709
|
for (let s = 0; s < r; ++s)
|
|
@@ -716,16 +716,16 @@ function xt(t) {
|
|
|
716
716
|
}
|
|
717
717
|
return i.map((s) => Array.from(s.values()));
|
|
718
718
|
}
|
|
719
|
-
function
|
|
719
|
+
function me(t, e = []) {
|
|
720
720
|
if (t === void 0 || !t.getIsReadyOrError()) return;
|
|
721
721
|
const n = t.resourceType.name, r = t.getDataAsJson();
|
|
722
|
-
if (e.length > 0 && (n ===
|
|
722
|
+
if (e.length > 0 && (n === oe || n === q))
|
|
723
723
|
throw new Error(`Unexpected nested super-partitioned resource: ${n}`);
|
|
724
724
|
switch (n) {
|
|
725
|
+
case ie:
|
|
725
726
|
case se:
|
|
726
|
-
case oe:
|
|
727
727
|
throw new Error(`Only data columns are supported, got: ${n}`);
|
|
728
|
-
case
|
|
728
|
+
case H: {
|
|
729
729
|
if (typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
730
730
|
throw new Error(`Missing partitionKeyLength in metadata for ${n}`);
|
|
731
731
|
const i = [];
|
|
@@ -746,7 +746,7 @@ function ye(t, e = []) {
|
|
|
746
746
|
throw new Error(`Missing partitionKeyLength in metadata for ${n}`);
|
|
747
747
|
const i = [], s = /* @__PURE__ */ new Map();
|
|
748
748
|
for (const o of t.listInputFields()) {
|
|
749
|
-
const a =
|
|
749
|
+
const a = ge(o), l = t.resolve({ field: o, assertFieldType: "Input" });
|
|
750
750
|
if (l === void 0) return;
|
|
751
751
|
let u = s.get(a.baseKey);
|
|
752
752
|
u || (u = {}, s.set(a.baseKey, u)), a.type === "index" ? u.index = l : u.values = l;
|
|
@@ -768,16 +768,16 @@ function ye(t, e = []) {
|
|
|
768
768
|
parts: i
|
|
769
769
|
};
|
|
770
770
|
}
|
|
771
|
-
case
|
|
771
|
+
case oe: {
|
|
772
772
|
if (typeof (r == null ? void 0 : r.superPartitionKeyLength) != "number" || typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
773
773
|
throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);
|
|
774
774
|
const i = r.superPartitionKeyLength + r.partitionKeyLength, s = [];
|
|
775
775
|
for (const o of t.listInputFields()) {
|
|
776
776
|
const a = t.resolve({ field: o, assertFieldType: "Input" });
|
|
777
777
|
if (a === void 0) return;
|
|
778
|
-
if (a.resourceType.name !==
|
|
779
|
-
throw new Error(`Expected ${
|
|
780
|
-
const l =
|
|
778
|
+
if (a.resourceType.name !== H)
|
|
779
|
+
throw new Error(`Expected ${H} inside ${n}, but got ${a.resourceType.name}`);
|
|
780
|
+
const l = me(a, JSON.parse(o));
|
|
781
781
|
if (l === void 0) return;
|
|
782
782
|
if (l.type !== "JsonPartitioned")
|
|
783
783
|
throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);
|
|
@@ -789,7 +789,7 @@ function ye(t, e = []) {
|
|
|
789
789
|
parts: s
|
|
790
790
|
};
|
|
791
791
|
}
|
|
792
|
-
case
|
|
792
|
+
case q: {
|
|
793
793
|
if (typeof (r == null ? void 0 : r.superPartitionKeyLength) != "number" || typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
794
794
|
throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);
|
|
795
795
|
const i = r.superPartitionKeyLength + r.partitionKeyLength, s = [];
|
|
@@ -798,7 +798,7 @@ function ye(t, e = []) {
|
|
|
798
798
|
if (a === void 0) return;
|
|
799
799
|
if (a.resourceType.name !== B)
|
|
800
800
|
throw new Error(`Expected ${B} inside ${n}, but got ${a.resourceType.name}`);
|
|
801
|
-
const l =
|
|
801
|
+
const l = me(a, JSON.parse(o));
|
|
802
802
|
if (l === void 0) return;
|
|
803
803
|
if (l.type !== "BinaryPartitioned")
|
|
804
804
|
throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);
|
|
@@ -816,13 +816,13 @@ function ye(t, e = []) {
|
|
|
816
816
|
}
|
|
817
817
|
function It(t) {
|
|
818
818
|
if (t !== void 0) {
|
|
819
|
-
if (
|
|
820
|
-
if (
|
|
821
|
-
if (t instanceof D) return
|
|
819
|
+
if (De(t)) return t;
|
|
820
|
+
if (ve(t)) return Ye(t);
|
|
821
|
+
if (t instanceof D) return me(t);
|
|
822
822
|
throw new Error(`Unexpected input type: ${typeof t}`);
|
|
823
823
|
}
|
|
824
824
|
}
|
|
825
|
-
function
|
|
825
|
+
function Tt(t, e) {
|
|
826
826
|
const n = [...e].sort((s, o) => o[0] - s[0]);
|
|
827
827
|
if (t.type === "JsonPartitioned" || t.type === "BinaryPartitioned") {
|
|
828
828
|
const { partitionKeyLength: s } = t;
|
|
@@ -882,18 +882,18 @@ function _t(t, e) {
|
|
|
882
882
|
}
|
|
883
883
|
}
|
|
884
884
|
}
|
|
885
|
-
function
|
|
885
|
+
function Lt(t) {
|
|
886
886
|
if (!Array.isArray(t)) return !1;
|
|
887
887
|
if (t.length === 0) return !0;
|
|
888
888
|
const e = t[0];
|
|
889
889
|
return typeof e == "object" && e !== null && "key" in e && "val" in e;
|
|
890
890
|
}
|
|
891
|
-
class
|
|
891
|
+
class Ft {
|
|
892
892
|
constructor(e) {
|
|
893
893
|
this.columns = e;
|
|
894
894
|
}
|
|
895
895
|
selectColumns(e) {
|
|
896
|
-
const n = typeof e == "function" ? e :
|
|
896
|
+
const n = typeof e == "function" ? e : Y(e);
|
|
897
897
|
return this.columns.filter((r) => n(r.spec));
|
|
898
898
|
}
|
|
899
899
|
}
|
|
@@ -913,14 +913,14 @@ function kt(t) {
|
|
|
913
913
|
function Dt(t, e) {
|
|
914
914
|
if (!e || e.length === 0) return t;
|
|
915
915
|
const n = [...e].sort((r, i) => r[0] - i[0]);
|
|
916
|
-
return
|
|
916
|
+
return Re({ id: t, axisFilters: n });
|
|
917
917
|
}
|
|
918
918
|
function _e(t) {
|
|
919
919
|
if (!t || typeof t != "object") return !1;
|
|
920
920
|
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);
|
|
921
921
|
return !!e.domainAnchor || n || r;
|
|
922
922
|
}
|
|
923
|
-
function
|
|
923
|
+
function Rt(t) {
|
|
924
924
|
if (typeof t != "object" || !("axes" in t) || t.axes === void 0)
|
|
925
925
|
return [];
|
|
926
926
|
const e = t.axes.map((n, r) => typeof n == "object" && "split" in n && n.split === !0 ? r : -1).filter((n) => n !== -1);
|
|
@@ -928,11 +928,11 @@ function Ft(t) {
|
|
|
928
928
|
throw new Error("Axis splitting is not supported when `partialAxesMatch` is defined.");
|
|
929
929
|
return e.sort((n, r) => n - r), e;
|
|
930
930
|
}
|
|
931
|
-
class
|
|
931
|
+
class ae {
|
|
932
932
|
constructor() {
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
933
|
+
k(this, "defaultProviderStore", []);
|
|
934
|
+
k(this, "providers", [new Ft(this.defaultProviderStore)]);
|
|
935
|
+
k(this, "axisLabelProviders", []);
|
|
936
936
|
}
|
|
937
937
|
addColumnProvider(e) {
|
|
938
938
|
return this.providers.push(e), this;
|
|
@@ -960,44 +960,44 @@ class le {
|
|
|
960
960
|
};
|
|
961
961
|
let u = () => !1;
|
|
962
962
|
if (a) {
|
|
963
|
-
const
|
|
963
|
+
const p = (Array.isArray(a) ? a : [a]).map((y) => {
|
|
964
964
|
if (_e(y)) {
|
|
965
965
|
if (!r)
|
|
966
966
|
throw new Error("Anchored selectors in exclude require an AnchoredIdDeriver to be provided in options.");
|
|
967
|
-
return
|
|
967
|
+
return Y(Ce(r.anchors, y, n));
|
|
968
968
|
} else
|
|
969
|
-
return
|
|
969
|
+
return Y(y);
|
|
970
970
|
});
|
|
971
|
-
u = (y) =>
|
|
971
|
+
u = (y) => p.some((C) => C(y));
|
|
972
972
|
}
|
|
973
|
-
const
|
|
974
|
-
for (const
|
|
975
|
-
const y = _e(
|
|
976
|
-
let
|
|
973
|
+
const h = typeof e == "function" ? [e] : Array.isArray(e) ? e : [e], f = [], g = /* @__PURE__ */ new Set();
|
|
974
|
+
for (const p of h) {
|
|
975
|
+
const y = _e(p);
|
|
976
|
+
let C;
|
|
977
977
|
if (y) {
|
|
978
978
|
if (!r)
|
|
979
979
|
throw new Error("Anchored selectors require an AnchoredIdDeriver to be provided in options.");
|
|
980
|
-
|
|
980
|
+
C = Ce(r.anchors, p, n);
|
|
981
981
|
} else
|
|
982
|
-
|
|
983
|
-
const E = /* @__PURE__ */ new Set(),
|
|
982
|
+
C = p;
|
|
983
|
+
const E = /* @__PURE__ */ new Set(), _ = [];
|
|
984
984
|
for (const S of this.providers) {
|
|
985
|
-
const I = S.selectColumns(
|
|
985
|
+
const I = S.selectColumns(C);
|
|
986
986
|
for (const c of I) {
|
|
987
987
|
if (u(c.spec)) continue;
|
|
988
988
|
if (E.has(c.id))
|
|
989
989
|
throw new Error(`Duplicate column id ${c.id} in provider ${S.constructor.name}`);
|
|
990
990
|
const m = Xe(c.spec);
|
|
991
|
-
g.has(m) || (E.add(c.id), g.add(m),
|
|
991
|
+
g.has(m) || (E.add(c.id), g.add(m), _.push(c));
|
|
992
992
|
}
|
|
993
993
|
}
|
|
994
|
-
if (
|
|
995
|
-
const
|
|
996
|
-
for (const S of
|
|
997
|
-
if (!
|
|
994
|
+
if (_.length === 0) continue;
|
|
995
|
+
const w = Rt(p), A = w.length > 0;
|
|
996
|
+
for (const S of _) {
|
|
997
|
+
if (!te(S.spec)) continue;
|
|
998
998
|
const I = S.spec;
|
|
999
999
|
if (A) {
|
|
1000
|
-
if (
|
|
1000
|
+
if (Lt(S.data))
|
|
1001
1001
|
throw new Error(`Splitting is not supported for PColumns with PColumnValues data format. Column id: ${S.id}`);
|
|
1002
1002
|
const c = It(S.data);
|
|
1003
1003
|
if (!c) {
|
|
@@ -1006,48 +1006,48 @@ class le {
|
|
|
1006
1006
|
}
|
|
1007
1007
|
if (!Qe(c))
|
|
1008
1008
|
throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${c.type} for column ${S.id}`);
|
|
1009
|
-
const m =
|
|
1010
|
-
if (
|
|
1011
|
-
throw new Error(`Not enough partition keys (${c.partitionKeyLength}) for requested split axes (max index ${
|
|
1012
|
-
const
|
|
1013
|
-
if (
|
|
1014
|
-
if (
|
|
1009
|
+
const m = _t(c), T = w[w.length - 1];
|
|
1010
|
+
if (T >= c.partitionKeyLength)
|
|
1011
|
+
throw new Error(`Not enough partition keys (${c.partitionKeyLength}) for requested split axes (max index ${T}) in column ${I.name}`);
|
|
1012
|
+
const U = w.map((L) => this.findLabels(R(I.axesSpec[L]))), V = [], J = (L, W) => {
|
|
1013
|
+
if (W >= w.length) {
|
|
1014
|
+
if (V.push([...L]), V.length > 1e4)
|
|
1015
1015
|
throw new Error("Too many key combinations, aborting.");
|
|
1016
1016
|
return;
|
|
1017
1017
|
}
|
|
1018
|
-
const
|
|
1019
|
-
if (
|
|
1020
|
-
throw new Error(`Axis index ${
|
|
1021
|
-
const
|
|
1022
|
-
if (!
|
|
1023
|
-
|
|
1018
|
+
const j = w[W];
|
|
1019
|
+
if (j >= m.length)
|
|
1020
|
+
throw new Error(`Axis index ${j} out of bounds for unique keys array (length ${m.length}) during split key generation for column ${S.id}`);
|
|
1021
|
+
const M = m[j];
|
|
1022
|
+
if (!M || M.length === 0) {
|
|
1023
|
+
V.length = 0;
|
|
1024
1024
|
return;
|
|
1025
1025
|
}
|
|
1026
|
-
for (const
|
|
1027
|
-
|
|
1026
|
+
for (const Z of M)
|
|
1027
|
+
L.push(Z), J(L, W + 1), L.pop();
|
|
1028
1028
|
};
|
|
1029
|
-
if (
|
|
1029
|
+
if (J([], 0), V.length === 0)
|
|
1030
1030
|
continue;
|
|
1031
|
-
const
|
|
1032
|
-
for (let
|
|
1033
|
-
|
|
1034
|
-
const We = { ...I, axesSpec:
|
|
1035
|
-
for (const
|
|
1036
|
-
const
|
|
1037
|
-
const
|
|
1038
|
-
return { axisIdx:
|
|
1031
|
+
const K = [...I.axesSpec], Ue = w.map((L) => L);
|
|
1032
|
+
for (let L = w.length - 1; L >= 0; L--)
|
|
1033
|
+
K.splice(w[L], 1);
|
|
1034
|
+
const We = { ...I, axesSpec: K };
|
|
1035
|
+
for (const L of V) {
|
|
1036
|
+
const W = L.map((j, M) => {
|
|
1037
|
+
const Z = Ue[M], Ge = R(I.axesSpec[Z]), le = U[M], He = (le == null ? void 0 : le[j]) ?? String(j);
|
|
1038
|
+
return { axisIdx: Z, axisId: Ge, value: j, label: He };
|
|
1039
1039
|
});
|
|
1040
|
-
|
|
1040
|
+
f.push({
|
|
1041
1041
|
type: "split",
|
|
1042
1042
|
originalColumn: S,
|
|
1043
1043
|
spec: I,
|
|
1044
1044
|
adjustedSpec: We,
|
|
1045
1045
|
dataEntries: c,
|
|
1046
|
-
axisFilters:
|
|
1046
|
+
axisFilters: W
|
|
1047
1047
|
});
|
|
1048
1048
|
}
|
|
1049
1049
|
} else
|
|
1050
|
-
|
|
1050
|
+
f.push({
|
|
1051
1051
|
type: "direct",
|
|
1052
1052
|
originalColumn: S,
|
|
1053
1053
|
spec: I,
|
|
@@ -1055,20 +1055,20 @@ class le {
|
|
|
1055
1055
|
});
|
|
1056
1056
|
}
|
|
1057
1057
|
}
|
|
1058
|
-
if (
|
|
1059
|
-
const
|
|
1060
|
-
|
|
1061
|
-
(
|
|
1062
|
-
spec:
|
|
1063
|
-
suffixTrace:
|
|
1058
|
+
if (f.length === 0) return [];
|
|
1059
|
+
const d = Je(
|
|
1060
|
+
f,
|
|
1061
|
+
(p) => ({
|
|
1062
|
+
spec: p.spec,
|
|
1063
|
+
suffixTrace: p.type === "split" ? Et(p.axisFilters) : void 0
|
|
1064
1064
|
}),
|
|
1065
1065
|
l
|
|
1066
1066
|
), b = [];
|
|
1067
|
-
for (const { value:
|
|
1068
|
-
const { originalColumn:
|
|
1067
|
+
for (const { value: p, label: y } of d) {
|
|
1068
|
+
const { originalColumn: C, spec: E } = p, _ = p.type === "split" ? p.axisFilters : void 0, w = kt(_);
|
|
1069
1069
|
let A;
|
|
1070
|
-
r ? A = r.deriveS(E,
|
|
1071
|
-
let S = { ...
|
|
1070
|
+
r ? A = r.deriveS(E, w) : A = Dt(C.id, w);
|
|
1071
|
+
let S = { ...p.adjustedSpec };
|
|
1072
1072
|
o && (S = {
|
|
1073
1073
|
...S,
|
|
1074
1074
|
annotations: {
|
|
@@ -1078,7 +1078,7 @@ class le {
|
|
|
1078
1078
|
}), b.push({
|
|
1079
1079
|
id: A,
|
|
1080
1080
|
spec: S,
|
|
1081
|
-
data: () =>
|
|
1081
|
+
data: () => p.type === "split" ? Ze(Tt(p.dataEntries, w)) : p.originalColumn.data,
|
|
1082
1082
|
label: y
|
|
1083
1083
|
});
|
|
1084
1084
|
}
|
|
@@ -1107,19 +1107,19 @@ class le {
|
|
|
1107
1107
|
return i;
|
|
1108
1108
|
}
|
|
1109
1109
|
}
|
|
1110
|
-
function
|
|
1110
|
+
function ce(t, e) {
|
|
1111
1111
|
if (t === void 0) return e === void 0;
|
|
1112
1112
|
if (e === void 0) return !0;
|
|
1113
1113
|
for (const n in e)
|
|
1114
1114
|
if (t[n] !== e[n]) return !1;
|
|
1115
1115
|
return !0;
|
|
1116
1116
|
}
|
|
1117
|
-
function
|
|
1118
|
-
return
|
|
1117
|
+
function Ie(t) {
|
|
1118
|
+
return be(t, (e) => e instanceof D ? e.handle : ve(e) ? ot(e, (n) => n.handle) : e);
|
|
1119
1119
|
}
|
|
1120
1120
|
class Ot {
|
|
1121
1121
|
constructor() {
|
|
1122
|
-
|
|
1122
|
+
k(this, "ctx", v());
|
|
1123
1123
|
}
|
|
1124
1124
|
/**
|
|
1125
1125
|
* @deprecated use getOptions()
|
|
@@ -1128,18 +1128,18 @@ class Ot {
|
|
|
1128
1128
|
return this.ctx.calculateOptions(e);
|
|
1129
1129
|
}
|
|
1130
1130
|
getOptions(e, n) {
|
|
1131
|
-
const r = typeof e == "function" ? e :
|
|
1131
|
+
const r = typeof e == "function" ? e : Y(e), i = this.getSpecs().entries.filter((a) => r(a.obj));
|
|
1132
1132
|
let s = {}, o = !1;
|
|
1133
|
-
return typeof n < "u" && (typeof n == "function" ? s = n : typeof n == "object" && ("includeNativeLabel" in n || "separator" in n || "addLabelAsSuffix" in n ? s = n : (n = n, s = n.label ?? {}, o = n.refsWithEnrichments ?? !1))), typeof s == "object" ?
|
|
1134
|
-
ref:
|
|
1133
|
+
return typeof n < "u" && (typeof n == "function" ? s = n : typeof n == "object" && ("includeNativeLabel" in n || "separator" in n || "addLabelAsSuffix" in n ? s = n : (n = n, s = n.label ?? {}, o = n.refsWithEnrichments ?? !1))), typeof s == "object" ? Je(i, (a) => a.obj, s ?? {}).map(({ value: { ref: a }, label: l }) => ({
|
|
1134
|
+
ref: Se(a, o),
|
|
1135
1135
|
label: l
|
|
1136
1136
|
})) : i.map(({ ref: a, obj: l }) => ({
|
|
1137
|
-
ref:
|
|
1137
|
+
ref: Se(a, o),
|
|
1138
1138
|
label: s(l, a)
|
|
1139
1139
|
}));
|
|
1140
1140
|
}
|
|
1141
1141
|
resolveAnchorCtx(e) {
|
|
1142
|
-
if (e instanceof
|
|
1142
|
+
if (e instanceof we) return e;
|
|
1143
1143
|
const n = {};
|
|
1144
1144
|
for (const [r, i] of Object.entries(e))
|
|
1145
1145
|
if (tt(i)) {
|
|
@@ -1149,7 +1149,7 @@ class Ot {
|
|
|
1149
1149
|
n[r] = s;
|
|
1150
1150
|
} else
|
|
1151
1151
|
n[r] = i;
|
|
1152
|
-
return new
|
|
1152
|
+
return new we(n);
|
|
1153
1153
|
}
|
|
1154
1154
|
/**
|
|
1155
1155
|
* Returns columns that match the provided anchors and selectors. It applies axis filters and label derivation.
|
|
@@ -1162,7 +1162,7 @@ class Ot {
|
|
|
1162
1162
|
getAnchoredPColumns(e, n, r) {
|
|
1163
1163
|
const i = this.resolveAnchorCtx(e);
|
|
1164
1164
|
if (i)
|
|
1165
|
-
return new
|
|
1165
|
+
return new ae().addColumnProvider(this).addAxisLabelProvider(this).getColumns(n, {
|
|
1166
1166
|
...r,
|
|
1167
1167
|
anchorCtx: i
|
|
1168
1168
|
});
|
|
@@ -1199,7 +1199,7 @@ class Ot {
|
|
|
1199
1199
|
getCanonicalOptions(e, n, r) {
|
|
1200
1200
|
const i = this.resolveAnchorCtx(e);
|
|
1201
1201
|
if (!i) return;
|
|
1202
|
-
const s = new
|
|
1202
|
+
const s = new ae().addColumnProvider(this).addAxisLabelProvider(this).getUniversalEntries(n, {
|
|
1203
1203
|
...r,
|
|
1204
1204
|
anchorCtx: i
|
|
1205
1205
|
});
|
|
@@ -1271,7 +1271,7 @@ class Ot {
|
|
|
1271
1271
|
)) == null ? void 0 : r.obj;
|
|
1272
1272
|
const n = this.ctx.getDataFromResultPoolByRef(e.blockId, e.name);
|
|
1273
1273
|
if (n)
|
|
1274
|
-
return
|
|
1274
|
+
return be(
|
|
1275
1275
|
n,
|
|
1276
1276
|
(i) => new D(i, [e.blockId, e.name])
|
|
1277
1277
|
);
|
|
@@ -1294,7 +1294,7 @@ class Ot {
|
|
|
1294
1294
|
getPColumnSpecByRef(e) {
|
|
1295
1295
|
const n = this.getSpecByRef(e);
|
|
1296
1296
|
if (n) {
|
|
1297
|
-
if (!
|
|
1297
|
+
if (!te(n)) throw new Error(`not a PColumn spec (kind = ${n.kind})`);
|
|
1298
1298
|
return n;
|
|
1299
1299
|
}
|
|
1300
1300
|
}
|
|
@@ -1313,13 +1313,13 @@ class Ot {
|
|
|
1313
1313
|
findDataWithCompatibleSpec(e) {
|
|
1314
1314
|
const n = [];
|
|
1315
1315
|
e: for (const r of this.getData().entries) {
|
|
1316
|
-
if (!
|
|
1316
|
+
if (!te(r.obj.spec))
|
|
1317
1317
|
continue;
|
|
1318
1318
|
const i = r.obj.spec;
|
|
1319
|
-
if (e.name === i.name && e.valueType === i.valueType && e.axesSpec.length === i.axesSpec.length &&
|
|
1319
|
+
if (e.name === i.name && e.valueType === i.valueType && e.axesSpec.length === i.axesSpec.length && ce(e.domain, i.domain)) {
|
|
1320
1320
|
for (let s = 0; s < e.axesSpec.length; ++s) {
|
|
1321
1321
|
const o = e.axesSpec[s], a = i.axesSpec[s];
|
|
1322
|
-
if (o.name !== a.name || o.type !== a.type || !
|
|
1322
|
+
if (o.name !== a.name || o.type !== a.type || !ce(o.domain, a.domain))
|
|
1323
1323
|
continue e;
|
|
1324
1324
|
}
|
|
1325
1325
|
n.push(r.obj);
|
|
@@ -1334,9 +1334,9 @@ class Ot {
|
|
|
1334
1334
|
findLabels(e) {
|
|
1335
1335
|
const n = this.getData();
|
|
1336
1336
|
for (const r of n.entries) {
|
|
1337
|
-
if (!
|
|
1337
|
+
if (!ke(r.obj)) continue;
|
|
1338
1338
|
const i = r.obj.spec;
|
|
1339
|
-
if (i.name === "pl7.app/label" && i.axesSpec.length === 1 && i.axesSpec[0].name === e.name && i.axesSpec[0].type === e.type &&
|
|
1339
|
+
if (i.name === "pl7.app/label" && i.axesSpec.length === 1 && i.axesSpec[0].name === e.name && i.axesSpec[0].type === e.type && ce(e.domain, i.axesSpec[0].domain)) {
|
|
1340
1340
|
if (r.obj.data.resourceType.name !== "PColumnData/Json")
|
|
1341
1341
|
throw Error(`Expected JSON column for labels, got: ${r.obj.data.resourceType.name}`);
|
|
1342
1342
|
return Object.fromEntries(
|
|
@@ -1355,13 +1355,13 @@ class Ot {
|
|
|
1355
1355
|
* @returns An array of PColumn objects matching the selectors. Data is loaded on first access.
|
|
1356
1356
|
*/
|
|
1357
1357
|
selectColumns(e) {
|
|
1358
|
-
const n = typeof e == "function" ? e :
|
|
1359
|
-
return this.getSpecs().entries.filter(({ obj: i }) =>
|
|
1358
|
+
const n = typeof e == "function" ? e : Y(e);
|
|
1359
|
+
return this.getSpecs().entries.filter(({ obj: i }) => te(i) ? n(i) : !1).map(({ ref: i, obj: s }) => {
|
|
1360
1360
|
const o = s;
|
|
1361
1361
|
let a = null;
|
|
1362
1362
|
const l = this;
|
|
1363
1363
|
return {
|
|
1364
|
-
id:
|
|
1364
|
+
id: Re(i),
|
|
1365
1365
|
spec: o,
|
|
1366
1366
|
get data() {
|
|
1367
1367
|
var u;
|
|
@@ -1386,40 +1386,58 @@ class Ot {
|
|
|
1386
1386
|
return r;
|
|
1387
1387
|
}
|
|
1388
1388
|
}
|
|
1389
|
-
class
|
|
1389
|
+
class ee {
|
|
1390
1390
|
constructor() {
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1391
|
+
k(this, "ctx");
|
|
1392
|
+
k(this, "_argsCache");
|
|
1393
|
+
k(this, "_uiStateCache");
|
|
1394
1394
|
// lazy rendering because this feature is rarely used
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
this.ctx = v()
|
|
1395
|
+
k(this, "_activeArgsCache");
|
|
1396
|
+
k(this, "resultPool", new Ot());
|
|
1397
|
+
this.ctx = v();
|
|
1398
|
+
}
|
|
1399
|
+
get args() {
|
|
1400
|
+
if (this._argsCache === void 0) {
|
|
1401
|
+
const e = this.ctx.args, n = typeof e == "function" ? e() : e;
|
|
1402
|
+
this._argsCache = { v: JSON.parse(n) };
|
|
1403
|
+
}
|
|
1404
|
+
return this._argsCache.v;
|
|
1405
|
+
}
|
|
1406
|
+
get uiState() {
|
|
1407
|
+
if (this._uiStateCache === void 0) {
|
|
1408
|
+
const e = this.ctx.uiState, n = typeof e == "function" ? e() : e;
|
|
1409
|
+
this._uiStateCache = { v: n ? JSON.parse(n) : {} };
|
|
1410
|
+
}
|
|
1411
|
+
return this._uiStateCache.v;
|
|
1398
1412
|
}
|
|
1399
1413
|
/**
|
|
1400
1414
|
* Returns args snapshot the block was executed for (i.e. when "Run" button was pressed).
|
|
1401
1415
|
* Returns undefined, if block was never executed or stopped mid-way execution, so that the result was cleared.
|
|
1402
1416
|
* */
|
|
1403
1417
|
get activeArgs() {
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1418
|
+
if (this._activeArgsCache === void 0) {
|
|
1419
|
+
const e = this.ctx.activeArgs, n = typeof e == "function" ? e() : e;
|
|
1420
|
+
this._activeArgsCache = {
|
|
1421
|
+
v: n ? JSON.parse(n) : void 0
|
|
1422
|
+
};
|
|
1423
|
+
}
|
|
1424
|
+
return this._activeArgsCache.v;
|
|
1407
1425
|
}
|
|
1408
1426
|
// /** Can be used to determine features provided by the desktop instance. */
|
|
1409
1427
|
// public get featureFlags() {
|
|
1410
1428
|
// return this.ctx.featureFlags;
|
|
1411
1429
|
// }
|
|
1412
1430
|
getNamedAccessor(e) {
|
|
1413
|
-
return
|
|
1431
|
+
return fe(
|
|
1414
1432
|
this.ctx.getAccessorHandleByName(e),
|
|
1415
1433
|
(n) => new D(n, [e])
|
|
1416
1434
|
);
|
|
1417
1435
|
}
|
|
1418
1436
|
get prerun() {
|
|
1419
|
-
return this.getNamedAccessor(
|
|
1437
|
+
return this.getNamedAccessor(Ne);
|
|
1420
1438
|
}
|
|
1421
1439
|
get outputs() {
|
|
1422
|
-
return this.getNamedAccessor(
|
|
1440
|
+
return this.getNamedAccessor(Ve);
|
|
1423
1441
|
}
|
|
1424
1442
|
/**
|
|
1425
1443
|
* Find labels data for a given axis id. It will search for a label column and return its data as a map.
|
|
@@ -1431,7 +1449,7 @@ class te {
|
|
|
1431
1449
|
}
|
|
1432
1450
|
verifyInlineAndExplicitColumnsSupport(e) {
|
|
1433
1451
|
var i;
|
|
1434
|
-
const n = e.some((s) => !(s.data instanceof D) ||
|
|
1452
|
+
const n = e.some((s) => !(s.data instanceof D) || ve(s.data)), r = ((i = this.ctx.featureFlags) == null ? void 0 : i.inlineColumnsSupport) === !0;
|
|
1435
1453
|
if (n && !r) throw Error("Inline or explicit columns not supported");
|
|
1436
1454
|
}
|
|
1437
1455
|
patchPTableDef(e) {
|
|
@@ -1445,7 +1463,7 @@ class te {
|
|
|
1445
1463
|
// TODO remove all non-PColumn fields
|
|
1446
1464
|
createPFrame(e) {
|
|
1447
1465
|
return this.verifyInlineAndExplicitColumnsSupport(e), this.ctx.createPFrame(
|
|
1448
|
-
e.map((n) =>
|
|
1466
|
+
e.map((n) => Ie(n))
|
|
1449
1467
|
);
|
|
1450
1468
|
}
|
|
1451
1469
|
createPTable(e) {
|
|
@@ -1459,7 +1477,7 @@ class te {
|
|
|
1459
1477
|
filters: [],
|
|
1460
1478
|
sorting: e.sorting ?? []
|
|
1461
1479
|
}) : n = this.patchPTableDef(e), this.verifyInlineAndExplicitColumnsSupport(it(n.src)), this.ctx.createPTable(
|
|
1462
|
-
st(n, (r) =>
|
|
1480
|
+
st(n, (r) => Ie(r))
|
|
1463
1481
|
);
|
|
1464
1482
|
}
|
|
1465
1483
|
/** @deprecated scheduled for removal from SDK */
|
|
@@ -1479,106 +1497,38 @@ class te {
|
|
|
1479
1497
|
this.ctx.logError(e);
|
|
1480
1498
|
}
|
|
1481
1499
|
}
|
|
1482
|
-
const
|
|
1483
|
-
function
|
|
1500
|
+
const z = "1.39.0";
|
|
1501
|
+
function Kt(t) {
|
|
1484
1502
|
return t.__renderLambda === !0;
|
|
1485
1503
|
}
|
|
1486
|
-
function
|
|
1504
|
+
function de(t) {
|
|
1487
1505
|
if (t !== void 0)
|
|
1488
|
-
return
|
|
1506
|
+
return Kt(t) ? t.handle : t;
|
|
1489
1507
|
}
|
|
1490
|
-
function
|
|
1491
|
-
|
|
1492
|
-
return typeof t == "string" ? { __renderLambda: !0, handle: t, retentive: !1 } : t;
|
|
1493
|
-
}
|
|
1494
|
-
function Rn(t) {
|
|
1495
|
-
if (t.v3 !== void 0) {
|
|
1496
|
-
const {
|
|
1497
|
-
initialArgs: e,
|
|
1498
|
-
initialUiState: n,
|
|
1499
|
-
inputsValid: r,
|
|
1500
|
-
outputs: i,
|
|
1501
|
-
renderingMode: s,
|
|
1502
|
-
sdkVersion: o,
|
|
1503
|
-
sections: a,
|
|
1504
|
-
title: l,
|
|
1505
|
-
enrichmentTargets: u
|
|
1506
|
-
} = t.v3, { code: d } = t;
|
|
1507
|
-
return {
|
|
1508
|
-
initialArgs: e,
|
|
1509
|
-
initialUiState: n,
|
|
1510
|
-
inputsValid: r,
|
|
1511
|
-
outputs: i,
|
|
1512
|
-
renderingMode: s,
|
|
1513
|
-
sdkVersion: o,
|
|
1514
|
-
sections: a,
|
|
1515
|
-
title: l,
|
|
1516
|
-
code: d,
|
|
1517
|
-
enrichmentTargets: u
|
|
1518
|
-
};
|
|
1519
|
-
} else if (t.inputsValid !== void 0) {
|
|
1520
|
-
const { sdkVersion: e, renderingMode: n, outputs: r, inputsValid: i, sections: s, initialArgs: o, code: a } = t, l = Object.keys(t);
|
|
1521
|
-
if (e === void 0 || n === void 0 || r === void 0 || i === void 0 || s === void 0 || o === void 0)
|
|
1522
|
-
throw new Error(
|
|
1523
|
-
`Malformed config v2. SDK version ${e}; Fields = ${l.join(", ")}`
|
|
1524
|
-
);
|
|
1525
|
-
return {
|
|
1526
|
-
sdkVersion: e,
|
|
1527
|
-
renderingMode: n,
|
|
1528
|
-
initialArgs: o,
|
|
1529
|
-
outputs: Object.fromEntries(
|
|
1530
|
-
Object.entries(r).map(([u, d]) => [u, M(d)])
|
|
1531
|
-
),
|
|
1532
|
-
inputsValid: M(i),
|
|
1533
|
-
sections: M(s),
|
|
1534
|
-
initialUiState: void 0,
|
|
1535
|
-
code: a
|
|
1536
|
-
};
|
|
1537
|
-
} else if (t.renderingMode !== void 0) {
|
|
1538
|
-
const { sdkVersion: e, canRun: n, renderingMode: r, outputs: i, sections: s, initialArgs: o, code: a } = t, l = Object.keys(t);
|
|
1539
|
-
if (r === void 0 || i === void 0 || n === void 0 || s === void 0 || o === void 0)
|
|
1540
|
-
throw new Error(
|
|
1541
|
-
`Malformed config v1. SDK version ${e}; Fields = ${l.join(", ")}`
|
|
1542
|
-
);
|
|
1543
|
-
return {
|
|
1544
|
-
sdkVersion: e ?? "unknown",
|
|
1545
|
-
renderingMode: r,
|
|
1546
|
-
initialArgs: o,
|
|
1547
|
-
outputs: Object.fromEntries(
|
|
1548
|
-
Object.entries(i).map(([u, d]) => [u, M(d)])
|
|
1549
|
-
),
|
|
1550
|
-
inputsValid: M(n),
|
|
1551
|
-
sections: M(s),
|
|
1552
|
-
initialUiState: void 0,
|
|
1553
|
-
code: a
|
|
1554
|
-
};
|
|
1555
|
-
} else {
|
|
1556
|
-
const { sdkVersion: e } = t, n = Object.keys(t);
|
|
1557
|
-
throw new Error(
|
|
1558
|
-
`Config format not supported: SDK = ${e}; Fields = ${n.join(", ")}`
|
|
1559
|
-
);
|
|
1560
|
-
}
|
|
1508
|
+
function Kn(t) {
|
|
1509
|
+
return at(t);
|
|
1561
1510
|
}
|
|
1562
|
-
class
|
|
1563
|
-
constructor(e, n, r, i, s, o, a, l) {
|
|
1564
|
-
this._renderingMode = e, this._initialArgs = n, this._initialUiState = r, this._outputs = i, this._inputsValid = s, this._sections = o, this._title = a, this._enrichmentTargets = l;
|
|
1511
|
+
const x = class x {
|
|
1512
|
+
constructor(e, n, r, i, s, o, a, l, u) {
|
|
1513
|
+
this._renderingMode = e, this._initialArgs = n, this._initialUiState = r, this._outputs = i, this._inputsValid = s, this._sections = o, this._title = a, this._enrichmentTargets = l, this._featureFlags = u;
|
|
1565
1514
|
}
|
|
1566
1515
|
static create(e = "Heavy") {
|
|
1567
|
-
return new
|
|
1516
|
+
return new x(
|
|
1568
1517
|
e,
|
|
1569
1518
|
void 0,
|
|
1570
1519
|
{},
|
|
1571
1520
|
{},
|
|
1572
|
-
|
|
1573
|
-
|
|
1521
|
+
ne(!0),
|
|
1522
|
+
ne([]),
|
|
1523
|
+
void 0,
|
|
1574
1524
|
void 0,
|
|
1575
|
-
|
|
1525
|
+
{ ...x.INITIAL_BLOCK_FEATURE_FLAGS }
|
|
1576
1526
|
);
|
|
1577
1527
|
}
|
|
1578
1528
|
output(e, n, r = {}) {
|
|
1579
1529
|
if (typeof n == "function") {
|
|
1580
1530
|
const i = `output#${e}`;
|
|
1581
|
-
return
|
|
1531
|
+
return G(i, () => n(new ee())), new x(
|
|
1582
1532
|
this._renderingMode,
|
|
1583
1533
|
this._initialArgs,
|
|
1584
1534
|
this._initialUiState,
|
|
@@ -1593,10 +1543,11 @@ class k {
|
|
|
1593
1543
|
this._inputsValid,
|
|
1594
1544
|
this._sections,
|
|
1595
1545
|
this._title,
|
|
1596
|
-
this._enrichmentTargets
|
|
1546
|
+
this._enrichmentTargets,
|
|
1547
|
+
this._featureFlags
|
|
1597
1548
|
);
|
|
1598
1549
|
} else
|
|
1599
|
-
return new
|
|
1550
|
+
return new x(
|
|
1600
1551
|
this._renderingMode,
|
|
1601
1552
|
this._initialArgs,
|
|
1602
1553
|
this._initialUiState,
|
|
@@ -1607,7 +1558,8 @@ class k {
|
|
|
1607
1558
|
this._inputsValid,
|
|
1608
1559
|
this._sections,
|
|
1609
1560
|
this._title,
|
|
1610
|
-
this._enrichmentTargets
|
|
1561
|
+
this._enrichmentTargets,
|
|
1562
|
+
this._featureFlags
|
|
1611
1563
|
);
|
|
1612
1564
|
}
|
|
1613
1565
|
/** Shortcut for {@link output} with retentive flag set to true. */
|
|
@@ -1615,7 +1567,7 @@ class k {
|
|
|
1615
1567
|
return this.output(e, n, { retentive: !0 });
|
|
1616
1568
|
}
|
|
1617
1569
|
argsValid(e) {
|
|
1618
|
-
return typeof e == "function" ? (
|
|
1570
|
+
return typeof e == "function" ? (G("inputsValid", () => e(new ee())), new x(
|
|
1619
1571
|
this._renderingMode,
|
|
1620
1572
|
this._initialArgs,
|
|
1621
1573
|
this._initialUiState,
|
|
@@ -1626,8 +1578,9 @@ class k {
|
|
|
1626
1578
|
},
|
|
1627
1579
|
this._sections,
|
|
1628
1580
|
this._title,
|
|
1629
|
-
this._enrichmentTargets
|
|
1630
|
-
|
|
1581
|
+
this._enrichmentTargets,
|
|
1582
|
+
this._featureFlags
|
|
1583
|
+
)) : new x(
|
|
1631
1584
|
this._renderingMode,
|
|
1632
1585
|
this._initialArgs,
|
|
1633
1586
|
this._initialUiState,
|
|
@@ -1635,11 +1588,12 @@ class k {
|
|
|
1635
1588
|
e,
|
|
1636
1589
|
this._sections,
|
|
1637
1590
|
this._title,
|
|
1638
|
-
this._enrichmentTargets
|
|
1591
|
+
this._enrichmentTargets,
|
|
1592
|
+
this._featureFlags
|
|
1639
1593
|
);
|
|
1640
1594
|
}
|
|
1641
1595
|
sections(e) {
|
|
1642
|
-
return Array.isArray(e) ? this.sections(
|
|
1596
|
+
return Array.isArray(e) ? this.sections(ne(e)) : typeof e == "function" ? (G("sections", () => e(new ee())), new x(
|
|
1643
1597
|
this._renderingMode,
|
|
1644
1598
|
this._initialArgs,
|
|
1645
1599
|
this._initialUiState,
|
|
@@ -1647,8 +1601,9 @@ class k {
|
|
|
1647
1601
|
this._inputsValid,
|
|
1648
1602
|
{ __renderLambda: !0, handle: "sections" },
|
|
1649
1603
|
this._title,
|
|
1650
|
-
this._enrichmentTargets
|
|
1651
|
-
|
|
1604
|
+
this._enrichmentTargets,
|
|
1605
|
+
this._featureFlags
|
|
1606
|
+
)) : new x(
|
|
1652
1607
|
this._renderingMode,
|
|
1653
1608
|
this._initialArgs,
|
|
1654
1609
|
this._initialUiState,
|
|
@@ -1656,12 +1611,13 @@ class k {
|
|
|
1656
1611
|
this._inputsValid,
|
|
1657
1612
|
e,
|
|
1658
1613
|
this._title,
|
|
1659
|
-
this._enrichmentTargets
|
|
1614
|
+
this._enrichmentTargets,
|
|
1615
|
+
this._featureFlags
|
|
1660
1616
|
);
|
|
1661
1617
|
}
|
|
1662
1618
|
/** Sets a rendering function to derive block title, shown for the block in the left blocks-overview panel. */
|
|
1663
1619
|
title(e) {
|
|
1664
|
-
return
|
|
1620
|
+
return G("title", () => e(new ee())), new x(
|
|
1665
1621
|
this._renderingMode,
|
|
1666
1622
|
this._initialArgs,
|
|
1667
1623
|
this._initialUiState,
|
|
@@ -1669,7 +1625,8 @@ class k {
|
|
|
1669
1625
|
this._inputsValid,
|
|
1670
1626
|
this._sections,
|
|
1671
1627
|
{ __renderLambda: !0, handle: "title" },
|
|
1672
|
-
this._enrichmentTargets
|
|
1628
|
+
this._enrichmentTargets,
|
|
1629
|
+
this._featureFlags
|
|
1673
1630
|
);
|
|
1674
1631
|
}
|
|
1675
1632
|
/**
|
|
@@ -1677,7 +1634,7 @@ class k {
|
|
|
1677
1634
|
* @deprecated use {@link withArgs}
|
|
1678
1635
|
* */
|
|
1679
1636
|
initialArgs(e) {
|
|
1680
|
-
return new
|
|
1637
|
+
return new x(
|
|
1681
1638
|
this._renderingMode,
|
|
1682
1639
|
e,
|
|
1683
1640
|
this._initialUiState,
|
|
@@ -1685,12 +1642,13 @@ class k {
|
|
|
1685
1642
|
this._inputsValid,
|
|
1686
1643
|
this._sections,
|
|
1687
1644
|
this._title,
|
|
1688
|
-
this._enrichmentTargets
|
|
1645
|
+
this._enrichmentTargets,
|
|
1646
|
+
this._featureFlags
|
|
1689
1647
|
);
|
|
1690
1648
|
}
|
|
1691
1649
|
/** Sets initial args for the block, this value must be specified. */
|
|
1692
1650
|
withArgs(e) {
|
|
1693
|
-
return new
|
|
1651
|
+
return new x(
|
|
1694
1652
|
this._renderingMode,
|
|
1695
1653
|
e,
|
|
1696
1654
|
this._initialUiState,
|
|
@@ -1698,12 +1656,13 @@ class k {
|
|
|
1698
1656
|
this._inputsValid,
|
|
1699
1657
|
this._sections,
|
|
1700
1658
|
this._title,
|
|
1701
|
-
this._enrichmentTargets
|
|
1659
|
+
this._enrichmentTargets,
|
|
1660
|
+
this._featureFlags
|
|
1702
1661
|
);
|
|
1703
1662
|
}
|
|
1704
1663
|
/** Defines type and sets initial value for block UiState. */
|
|
1705
1664
|
withUiState(e) {
|
|
1706
|
-
return new
|
|
1665
|
+
return new x(
|
|
1707
1666
|
this._renderingMode,
|
|
1708
1667
|
this._initialArgs,
|
|
1709
1668
|
e,
|
|
@@ -1711,7 +1670,8 @@ class k {
|
|
|
1711
1670
|
this._inputsValid,
|
|
1712
1671
|
this._sections,
|
|
1713
1672
|
this._title,
|
|
1714
|
-
this._enrichmentTargets
|
|
1673
|
+
this._enrichmentTargets,
|
|
1674
|
+
this._featureFlags
|
|
1715
1675
|
);
|
|
1716
1676
|
}
|
|
1717
1677
|
/**
|
|
@@ -1719,7 +1679,7 @@ class k {
|
|
|
1719
1679
|
* Influences dependency graph construction.
|
|
1720
1680
|
*/
|
|
1721
1681
|
enriches(e) {
|
|
1722
|
-
return
|
|
1682
|
+
return G("enrichmentTargets", e), new x(
|
|
1723
1683
|
this._renderingMode,
|
|
1724
1684
|
this._initialArgs,
|
|
1725
1685
|
this._initialUiState,
|
|
@@ -1727,7 +1687,8 @@ class k {
|
|
|
1727
1687
|
this._inputsValid,
|
|
1728
1688
|
this._sections,
|
|
1729
1689
|
this._title,
|
|
1730
|
-
{ __renderLambda: !0, handle: "enrichmentTargets" }
|
|
1690
|
+
{ __renderLambda: !0, handle: "enrichmentTargets" },
|
|
1691
|
+
this._featureFlags
|
|
1731
1692
|
);
|
|
1732
1693
|
}
|
|
1733
1694
|
/** Renders all provided block settings into a pre-configured platforma API
|
|
@@ -1737,7 +1698,7 @@ class k {
|
|
|
1737
1698
|
if (this._initialArgs === void 0) throw new Error("Initial arguments not set.");
|
|
1738
1699
|
const e = {
|
|
1739
1700
|
v3: {
|
|
1740
|
-
sdkVersion:
|
|
1701
|
+
sdkVersion: z,
|
|
1741
1702
|
renderingMode: this._renderingMode,
|
|
1742
1703
|
initialArgs: this._initialArgs,
|
|
1743
1704
|
initialUiState: this._initialUiState,
|
|
@@ -1745,22 +1706,29 @@ class k {
|
|
|
1745
1706
|
sections: this._sections,
|
|
1746
1707
|
title: this._title,
|
|
1747
1708
|
outputs: this._outputs,
|
|
1748
|
-
enrichmentTargets: this._enrichmentTargets
|
|
1709
|
+
enrichmentTargets: this._enrichmentTargets,
|
|
1710
|
+
featureFlags: this._featureFlags
|
|
1749
1711
|
},
|
|
1750
1712
|
// fields below are added to allow previous desktop versions read generated configs
|
|
1751
|
-
sdkVersion:
|
|
1713
|
+
sdkVersion: z,
|
|
1752
1714
|
renderingMode: this._renderingMode,
|
|
1753
1715
|
initialArgs: this._initialArgs,
|
|
1754
|
-
inputsValid:
|
|
1755
|
-
sections:
|
|
1716
|
+
inputsValid: de(this._inputsValid),
|
|
1717
|
+
sections: de(this._sections),
|
|
1756
1718
|
outputs: Object.fromEntries(
|
|
1757
|
-
Object.entries(this._outputs).map(([n, r]) => [n,
|
|
1719
|
+
Object.entries(this._outputs).map(([n, r]) => [n, de(r)])
|
|
1758
1720
|
)
|
|
1759
1721
|
};
|
|
1760
|
-
return
|
|
1722
|
+
return ft() ? Ke({ sdkVersion: z }) : { config: e };
|
|
1761
1723
|
}
|
|
1762
|
-
}
|
|
1763
|
-
|
|
1724
|
+
};
|
|
1725
|
+
k(x, "INITIAL_BLOCK_FEATURE_FLAGS", {
|
|
1726
|
+
supportsLazyState: !0,
|
|
1727
|
+
requiresUIAPIVersion: 1,
|
|
1728
|
+
requiresModelAPIVersion: 1
|
|
1729
|
+
});
|
|
1730
|
+
let Te = x;
|
|
1731
|
+
function Be() {
|
|
1764
1732
|
return {
|
|
1765
1733
|
sourceId: null,
|
|
1766
1734
|
hiddenColIds: null,
|
|
@@ -1769,28 +1737,28 @@ function Ue() {
|
|
|
1769
1737
|
sorting: []
|
|
1770
1738
|
};
|
|
1771
1739
|
}
|
|
1772
|
-
function
|
|
1740
|
+
function Nt() {
|
|
1773
1741
|
return {
|
|
1774
1742
|
version: 3,
|
|
1775
1743
|
stateCache: [],
|
|
1776
|
-
pTableParams:
|
|
1744
|
+
pTableParams: Be()
|
|
1777
1745
|
};
|
|
1778
1746
|
}
|
|
1779
|
-
function
|
|
1747
|
+
function Vt(t) {
|
|
1780
1748
|
return "version" in t ? (t.version === 2 && (t = {
|
|
1781
1749
|
version: 3,
|
|
1782
1750
|
stateCache: t.stateCache.map((e) => ({
|
|
1783
1751
|
...e,
|
|
1784
1752
|
filtersState: []
|
|
1785
1753
|
})),
|
|
1786
|
-
pTableParams:
|
|
1787
|
-
}), t) :
|
|
1754
|
+
pTableParams: Be()
|
|
1755
|
+
}), t) : Nt();
|
|
1788
1756
|
}
|
|
1789
|
-
function
|
|
1757
|
+
function ye(t) {
|
|
1790
1758
|
return t.axesSpec.length === 1 && t.name === "pl7.app/label";
|
|
1791
1759
|
}
|
|
1792
1760
|
function jt(t) {
|
|
1793
|
-
return new
|
|
1761
|
+
return new ae().addAxisLabelProvider(t).addColumnProvider(t).getColumns({
|
|
1794
1762
|
name: "pl7.app/label",
|
|
1795
1763
|
axes: [{}]
|
|
1796
1764
|
// exactly one axis
|
|
@@ -1799,41 +1767,41 @@ function jt(t) {
|
|
|
1799
1767
|
function Le(t, e) {
|
|
1800
1768
|
const n = [], r = [];
|
|
1801
1769
|
for (const a of t)
|
|
1802
|
-
|
|
1770
|
+
ye(a.spec) ? n.push(a) : r.push(a);
|
|
1803
1771
|
const i = [];
|
|
1804
1772
|
for (const a of r)
|
|
1805
1773
|
for (const l of a.spec.axesSpec) {
|
|
1806
|
-
const u =
|
|
1807
|
-
i.some((
|
|
1774
|
+
const u = R(l);
|
|
1775
|
+
i.some((h) => N(h, u)) || i.push(u);
|
|
1808
1776
|
}
|
|
1809
1777
|
for (const a of n) {
|
|
1810
|
-
const l =
|
|
1778
|
+
const l = R(a.spec.axesSpec[0]), u = i.findIndex((h) => N(h, l));
|
|
1811
1779
|
u !== -1 && i.splice(u, 1);
|
|
1812
1780
|
}
|
|
1813
1781
|
const s = (a, l) => {
|
|
1814
1782
|
let u = a.toString();
|
|
1815
1783
|
if (l)
|
|
1816
|
-
for (const
|
|
1817
|
-
u +=
|
|
1784
|
+
for (const h in l)
|
|
1785
|
+
u += h, u += l[h];
|
|
1818
1786
|
return u;
|
|
1819
1787
|
}, o = [];
|
|
1820
1788
|
for (const a of e) {
|
|
1821
|
-
const l = a.spec.axesSpec[0], u =
|
|
1822
|
-
if (
|
|
1823
|
-
const
|
|
1824
|
-
g >
|
|
1825
|
-
id: s(a.id,
|
|
1789
|
+
const l = a.spec.axesSpec[0], u = R(l), h = i.findIndex((f) => N(f, u));
|
|
1790
|
+
if (h !== -1) {
|
|
1791
|
+
const f = i[h], g = Object.keys(f.domain ?? {}).length, d = Object.keys(l.domain ?? {}).length;
|
|
1792
|
+
g > d ? o.push({
|
|
1793
|
+
id: s(a.id, f.domain),
|
|
1826
1794
|
spec: {
|
|
1827
1795
|
...a.spec,
|
|
1828
|
-
axesSpec: [{ ...
|
|
1796
|
+
axesSpec: [{ ...f, annotations: l.annotations }]
|
|
1829
1797
|
},
|
|
1830
1798
|
data: a.data
|
|
1831
|
-
}) : o.push(a), i.splice(
|
|
1799
|
+
}) : o.push(a), i.splice(h, 1);
|
|
1832
1800
|
}
|
|
1833
1801
|
}
|
|
1834
1802
|
return o;
|
|
1835
1803
|
}
|
|
1836
|
-
function
|
|
1804
|
+
function Jt(t) {
|
|
1837
1805
|
const e = (i) => Array.isArray(i), n = (i) => i instanceof D, r = (i) => typeof i == "object" && "type" in i;
|
|
1838
1806
|
return t.map((i) => i.data).every((i) => {
|
|
1839
1807
|
if (e(i))
|
|
@@ -1853,7 +1821,7 @@ function Nt(t) {
|
|
|
1853
1821
|
throw Error(`unsupported column data type: ${i}`);
|
|
1854
1822
|
});
|
|
1855
1823
|
}
|
|
1856
|
-
function
|
|
1824
|
+
function Fe(t) {
|
|
1857
1825
|
let e = t.columns;
|
|
1858
1826
|
const n = [];
|
|
1859
1827
|
if (t.coreColumnPredicate) {
|
|
@@ -1875,70 +1843,70 @@ function Ee(t) {
|
|
|
1875
1843
|
sorting: t.sorting
|
|
1876
1844
|
};
|
|
1877
1845
|
}
|
|
1878
|
-
function
|
|
1846
|
+
function Mt(t) {
|
|
1879
1847
|
var e;
|
|
1880
1848
|
return ((e = t.annotations) == null ? void 0 : e["pl7.app/table/visibility"]) === "hidden";
|
|
1881
1849
|
}
|
|
1882
|
-
function
|
|
1850
|
+
function $t(t) {
|
|
1883
1851
|
var e;
|
|
1884
1852
|
return ((e = t.annotations) == null ? void 0 : e["pl7.app/table/visibility"]) === "optional";
|
|
1885
1853
|
}
|
|
1886
|
-
function
|
|
1854
|
+
function pe(t, e) {
|
|
1887
1855
|
return [...new Map(t.map((n) => [e(n), n])).values()];
|
|
1888
1856
|
}
|
|
1889
|
-
function
|
|
1857
|
+
function Nn(t, e, n, r) {
|
|
1890
1858
|
if (e.length === 0) return;
|
|
1891
|
-
const i = e.filter((c) =>
|
|
1859
|
+
const i = e.filter((c) => !Mt(c.spec)), s = Vt(n), o = jt(t.resultPool);
|
|
1892
1860
|
if (!o) return;
|
|
1893
|
-
const a = Le(i.map(
|
|
1894
|
-
...
|
|
1895
|
-
[...l.flatMap((c) => c.spec.axesSpec.map((m) =>
|
|
1896
|
-
(c) =>
|
|
1861
|
+
const a = Le(i.map(Ae), o), l = [...i, ...a], h = [
|
|
1862
|
+
...pe(
|
|
1863
|
+
[...l.flatMap((c) => c.spec.axesSpec.map((m) => R(m)))],
|
|
1864
|
+
(c) => O(c)
|
|
1897
1865
|
).map((c) => ({ type: "axis", id: c })),
|
|
1898
1866
|
...l.map((c) => ({ type: "column", id: c.id }))
|
|
1899
|
-
],
|
|
1867
|
+
], f = new Set(h.map((c) => O(c))), g = (c) => f.has(O(c)), d = (r == null ? void 0 : r.coreJoinType) ?? "full", b = s.pTableParams.partitionFilters.filter((c) => {
|
|
1900
1868
|
const m = g(c.column);
|
|
1901
1869
|
return m || t.logWarn(`Partition filter ${JSON.stringify(c)} does not match provided columns, skipping`), m;
|
|
1902
|
-
}),
|
|
1870
|
+
}), p = pe(
|
|
1903
1871
|
[...(r == null ? void 0 : r.filters) ?? [], ...s.pTableParams.filters],
|
|
1904
|
-
(c) =>
|
|
1872
|
+
(c) => O(c.column)
|
|
1905
1873
|
).filter((c) => {
|
|
1906
1874
|
const m = g(c.column);
|
|
1907
1875
|
return m || t.logWarn(`Filter ${JSON.stringify(c)} does not match provided columns, skipping`), m;
|
|
1908
|
-
}), y =
|
|
1876
|
+
}), y = pe(
|
|
1909
1877
|
[...(r == null ? void 0 : r.sorting) ?? [], ...s.pTableParams.sorting],
|
|
1910
|
-
(c) =>
|
|
1878
|
+
(c) => O(c.column)
|
|
1911
1879
|
).filter((c) => {
|
|
1912
1880
|
const m = g(c.column);
|
|
1913
1881
|
return m || t.logWarn(`Sorting ${JSON.stringify(c)} does not match provided columns, skipping`), m;
|
|
1914
|
-
}),
|
|
1882
|
+
}), C = Fe({
|
|
1915
1883
|
columns: i,
|
|
1916
1884
|
labelColumns: a,
|
|
1917
|
-
coreJoinType:
|
|
1885
|
+
coreJoinType: d,
|
|
1918
1886
|
partitionFilters: b,
|
|
1919
|
-
filters:
|
|
1887
|
+
filters: p,
|
|
1920
1888
|
sorting: y,
|
|
1921
1889
|
coreColumnPredicate: r == null ? void 0 : r.coreColumnPredicate
|
|
1922
|
-
}), E = t.createPTable(
|
|
1923
|
-
if (
|
|
1890
|
+
}), E = t.createPTable(C), _ = new Set((() => {
|
|
1891
|
+
if (d === "inner") return [];
|
|
1924
1892
|
const c = s.pTableParams.hiddenColIds;
|
|
1925
|
-
return c || i.filter((m) =>
|
|
1893
|
+
return c || i.filter((m) => $t(m.spec)).map((m) => m.id);
|
|
1926
1894
|
})());
|
|
1927
1895
|
i.filter((c) => {
|
|
1928
1896
|
var m;
|
|
1929
1897
|
return ((m = c.spec.annotations) == null ? void 0 : m["pl7.app/isLinkerColumn"]) === "true";
|
|
1930
|
-
}).forEach((c) =>
|
|
1931
|
-
var
|
|
1932
|
-
return (
|
|
1933
|
-
}).forEach((m) =>
|
|
1934
|
-
const
|
|
1935
|
-
if (!
|
|
1936
|
-
const S =
|
|
1937
|
-
columns:
|
|
1898
|
+
}).forEach((c) => _.delete(c.id)), r != null && r.coreColumnPredicate && i.flatMap((m) => {
|
|
1899
|
+
var T;
|
|
1900
|
+
return (T = r == null ? void 0 : r.coreColumnPredicate) != null && T.call(r, m.spec) ? [m.id] : [];
|
|
1901
|
+
}).forEach((m) => _.delete(m)), [...b.map((c) => c.column), ...p.map((c) => c.column), ...y.map((c) => c.column)].filter((c) => c.type === "column").forEach((c) => _.delete(c.id));
|
|
1902
|
+
const w = i.filter((c) => !_.has(c.id)), A = Le(w.map(Ae), o);
|
|
1903
|
+
if (!Jt([...w, ...A])) return;
|
|
1904
|
+
const S = Fe({
|
|
1905
|
+
columns: w,
|
|
1938
1906
|
labelColumns: A,
|
|
1939
|
-
coreJoinType:
|
|
1907
|
+
coreJoinType: d,
|
|
1940
1908
|
partitionFilters: b,
|
|
1941
|
-
filters:
|
|
1909
|
+
filters: p,
|
|
1942
1910
|
sorting: y,
|
|
1943
1911
|
coreColumnPredicate: r == null ? void 0 : r.coreColumnPredicate
|
|
1944
1912
|
}), I = t.createPTable(S);
|
|
@@ -1948,7 +1916,7 @@ function Vn(t, e, n, r) {
|
|
|
1948
1916
|
visibleTableHandle: I
|
|
1949
1917
|
};
|
|
1950
1918
|
}
|
|
1951
|
-
function
|
|
1919
|
+
function Vn(t, e, n) {
|
|
1952
1920
|
const r = t.resultPool.findLabels(e);
|
|
1953
1921
|
return {
|
|
1954
1922
|
axis: e,
|
|
@@ -1959,7 +1927,7 @@ function Kn(t, e, n) {
|
|
|
1959
1927
|
defaultValue: n[0]
|
|
1960
1928
|
};
|
|
1961
1929
|
}
|
|
1962
|
-
const
|
|
1930
|
+
const Bt = (t, e) => {
|
|
1963
1931
|
let n = t.toString();
|
|
1964
1932
|
return e == null || e.forEach((r) => {
|
|
1965
1933
|
if (r)
|
|
@@ -1978,16 +1946,16 @@ function Ut(t) {
|
|
|
1978
1946
|
}), e = r;
|
|
1979
1947
|
}), e;
|
|
1980
1948
|
}
|
|
1981
|
-
function
|
|
1949
|
+
function Wt(t) {
|
|
1982
1950
|
var e;
|
|
1983
|
-
return t.axesSpec.length === 2 && ((e = t.annotations) == null ? void 0 : e[
|
|
1951
|
+
return t.axesSpec.length === 2 && ((e = t.annotations) == null ? void 0 : e[Ht]) === "true";
|
|
1984
1952
|
}
|
|
1985
|
-
const
|
|
1986
|
-
function
|
|
1953
|
+
const Gt = "pl7.app/graph/isVirtual", Ee = "pl7.app/label", Ht = "pl7.app/isLinkerColumn";
|
|
1954
|
+
function qt(t) {
|
|
1987
1955
|
var n, r;
|
|
1988
1956
|
const e = /* @__PURE__ */ new Map();
|
|
1989
1957
|
for (const { spec: i } of t) {
|
|
1990
|
-
const s = i.axesSpec.map(
|
|
1958
|
+
const s = i.axesSpec.map(R).map(O);
|
|
1991
1959
|
s.forEach((o) => {
|
|
1992
1960
|
e.has(o) || e.set(o, /* @__PURE__ */ new Set());
|
|
1993
1961
|
});
|
|
@@ -1999,72 +1967,72 @@ function Ht(t) {
|
|
|
1999
1967
|
}
|
|
2000
1968
|
return e;
|
|
2001
1969
|
}
|
|
2002
|
-
function
|
|
2003
|
-
const n =
|
|
1970
|
+
function zt(t, e) {
|
|
1971
|
+
const n = qt(t), r = [...n.keys()].map(Pe), i = [];
|
|
2004
1972
|
for (const l of e.values()) {
|
|
2005
|
-
const u = r.find((
|
|
2006
|
-
u && i.push(
|
|
1973
|
+
const u = r.find((h) => N(l, h));
|
|
1974
|
+
u && i.push(O(u));
|
|
2007
1975
|
}
|
|
2008
1976
|
const s = new Set(i), o = /* @__PURE__ */ new Map();
|
|
2009
1977
|
let a = [...i];
|
|
2010
1978
|
for (; a.length; ) {
|
|
2011
1979
|
const l = [];
|
|
2012
1980
|
for (const u of a)
|
|
2013
|
-
for (const
|
|
2014
|
-
s.has(
|
|
1981
|
+
for (const h of n.get(u) ?? [])
|
|
1982
|
+
s.has(h) || (l.push(h), s.add(h), o.set(h, Pe(h)));
|
|
2015
1983
|
a = l;
|
|
2016
1984
|
}
|
|
2017
1985
|
return o;
|
|
2018
1986
|
}
|
|
2019
|
-
function
|
|
1987
|
+
function Yt(t, e) {
|
|
2020
1988
|
const n = [];
|
|
2021
1989
|
return e.forEach((r) => {
|
|
2022
|
-
n.push(...
|
|
1990
|
+
n.push(...Xt(t, r));
|
|
2023
1991
|
}), n;
|
|
2024
1992
|
}
|
|
2025
|
-
function
|
|
2026
|
-
const n = e.spec.axesSpec.map(
|
|
2027
|
-
if (n.every((u) => t.has(
|
|
1993
|
+
function Xt(t, e) {
|
|
1994
|
+
const n = e.spec.axesSpec.map(R);
|
|
1995
|
+
if (n.every((u) => t.has(O(u))))
|
|
2028
1996
|
return [e];
|
|
2029
1997
|
const r = n.map((u) => {
|
|
2030
|
-
const
|
|
2031
|
-
for (const [
|
|
2032
|
-
|
|
2033
|
-
return
|
|
1998
|
+
const h = [];
|
|
1999
|
+
for (const [f, g] of t)
|
|
2000
|
+
N(g, u) && !N(u, g) && h.push(g);
|
|
2001
|
+
return h;
|
|
2034
2002
|
}), i = Ut(r), s = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set(), a = i.map((u) => {
|
|
2035
|
-
const
|
|
2036
|
-
return u.map((
|
|
2037
|
-
const
|
|
2038
|
-
return Object.entries(b ?? {}).forEach(([
|
|
2039
|
-
if ((
|
|
2040
|
-
const
|
|
2041
|
-
|
|
2003
|
+
const h = /* @__PURE__ */ new Set();
|
|
2004
|
+
return u.map((f, g) => {
|
|
2005
|
+
const d = e.spec.axesSpec[g].domain, b = f.domain;
|
|
2006
|
+
return Object.entries(b ?? {}).forEach(([p, y]) => {
|
|
2007
|
+
if ((d == null ? void 0 : d[p]) === void 0) {
|
|
2008
|
+
const C = JSON.stringify([p, y]);
|
|
2009
|
+
h.add(C), s.add(C);
|
|
2042
2010
|
}
|
|
2043
2011
|
}), {
|
|
2044
|
-
...
|
|
2012
|
+
...f,
|
|
2045
2013
|
annotations: e.spec.axesSpec[g].annotations
|
|
2046
2014
|
};
|
|
2047
|
-
}),
|
|
2015
|
+
}), h;
|
|
2048
2016
|
});
|
|
2049
2017
|
[...s].forEach((u) => {
|
|
2050
|
-
a.some((
|
|
2018
|
+
a.some((h) => !h.has(u)) && o.add(u);
|
|
2051
2019
|
});
|
|
2052
|
-
const l = i.map((u,
|
|
2053
|
-
var
|
|
2054
|
-
const
|
|
2055
|
-
var
|
|
2056
|
-
return (
|
|
2020
|
+
const l = i.map((u, h) => {
|
|
2021
|
+
var p;
|
|
2022
|
+
const f = Bt(e.id, u.map((y) => y.domain)), g = ((p = e.spec.annotations) == null ? void 0 : p[Ee]) ?? "", d = [...a[h]].filter((y) => o.has(y)).sort().map((y) => {
|
|
2023
|
+
var C;
|
|
2024
|
+
return (C = JSON.parse(y)) == null ? void 0 : C[1];
|
|
2057
2025
|
}).join(" / "), b = {
|
|
2058
2026
|
...e.spec.annotations,
|
|
2059
|
-
[
|
|
2027
|
+
[Gt]: "true"
|
|
2060
2028
|
};
|
|
2061
|
-
return (g ||
|
|
2062
|
-
id:
|
|
2029
|
+
return (g || d) && (b[Ee] = g && d ? g + " / " + d : g + d), {
|
|
2030
|
+
id: f,
|
|
2063
2031
|
spec: {
|
|
2064
2032
|
...e.spec,
|
|
2065
|
-
axesSpec: u.map((y,
|
|
2033
|
+
axesSpec: u.map((y, C) => ({
|
|
2066
2034
|
...y,
|
|
2067
|
-
annotations: e.spec.axesSpec[
|
|
2035
|
+
annotations: e.spec.axesSpec[C].annotations
|
|
2068
2036
|
})),
|
|
2069
2037
|
annotations: b
|
|
2070
2038
|
},
|
|
@@ -2075,50 +2043,50 @@ function Yt(t, e) {
|
|
|
2075
2043
|
}
|
|
2076
2044
|
function jn(t, e) {
|
|
2077
2045
|
if (!e) return;
|
|
2078
|
-
const n = new
|
|
2046
|
+
const n = new ae();
|
|
2079
2047
|
n.addColumnProvider(t.resultPool), n.addColumns(e);
|
|
2080
2048
|
const r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
|
|
2081
|
-
for (const
|
|
2082
|
-
for (const g of
|
|
2083
|
-
const
|
|
2084
|
-
r.set(
|
|
2049
|
+
for (const f of e)
|
|
2050
|
+
for (const g of f.spec.axesSpec) {
|
|
2051
|
+
const d = R(g);
|
|
2052
|
+
r.set(O(d), d), i.set(O(d), d);
|
|
2085
2053
|
}
|
|
2086
|
-
const s = n.getColumns((
|
|
2087
|
-
for (const
|
|
2088
|
-
r.set(...
|
|
2089
|
-
const a = (n.getColumns((
|
|
2090
|
-
const
|
|
2054
|
+
const s = n.getColumns((f) => Wt(f)) ?? [], o = zt(s, r);
|
|
2055
|
+
for (const f of o)
|
|
2056
|
+
r.set(...f), i.set(...f);
|
|
2057
|
+
const a = (n.getColumns((f) => f.axesSpec.some((g) => {
|
|
2058
|
+
const d = R(g);
|
|
2091
2059
|
for (const b of r.values())
|
|
2092
|
-
if (
|
|
2060
|
+
if (N(b, d))
|
|
2093
2061
|
return !0;
|
|
2094
2062
|
return !1;
|
|
2095
|
-
}), { dontWaitAllData: !0, overrideLabelAnnotation: !1 }) ?? []).filter((
|
|
2096
|
-
for (const
|
|
2097
|
-
for (const g of
|
|
2098
|
-
const
|
|
2099
|
-
i.set(
|
|
2063
|
+
}), { dontWaitAllData: !0, overrideLabelAnnotation: !1 }) ?? []).filter((f) => !ye(f.spec));
|
|
2064
|
+
for (const f of a)
|
|
2065
|
+
for (const g of f.spec.axesSpec) {
|
|
2066
|
+
const d = R(g);
|
|
2067
|
+
i.set(O(d), d);
|
|
2100
2068
|
}
|
|
2101
|
-
const l = (n.getColumns((
|
|
2102
|
-
const
|
|
2069
|
+
const l = (n.getColumns((f) => f.axesSpec.some((g) => {
|
|
2070
|
+
const d = R(g);
|
|
2103
2071
|
for (const b of i.values())
|
|
2104
|
-
if (
|
|
2072
|
+
if (N(b, d))
|
|
2105
2073
|
return !0;
|
|
2106
2074
|
return !1;
|
|
2107
|
-
}), { dontWaitAllData: !0, overrideLabelAnnotation: !1 }) ?? []).filter((
|
|
2108
|
-
if (!
|
|
2109
|
-
(
|
|
2075
|
+
}), { dontWaitAllData: !0, overrideLabelAnnotation: !1 }) ?? []).filter((f) => ye(f.spec)), u = [...a, ...l], h = Yt(r, u);
|
|
2076
|
+
if (!h.some(
|
|
2077
|
+
(f) => f.data instanceof D && !f.data.getIsReadyOrError()
|
|
2110
2078
|
))
|
|
2111
|
-
return t.createPFrame(
|
|
2079
|
+
return t.createPFrame(h);
|
|
2112
2080
|
}
|
|
2113
|
-
function
|
|
2081
|
+
function Jn({
|
|
2114
2082
|
selection: t,
|
|
2115
|
-
columnId: e =
|
|
2083
|
+
columnId: e = ut(),
|
|
2116
2084
|
label: n = "Selection marker",
|
|
2117
2085
|
domain: r
|
|
2118
2086
|
}) {
|
|
2119
2087
|
if (!(t != null && t.axesSpec.length))
|
|
2120
2088
|
return;
|
|
2121
|
-
const i = t.selectedKeys.filter((s) => s.every((o) => !
|
|
2089
|
+
const i = t.selectedKeys.filter((s) => s.every((o) => !lt(o))).map((s) => ({ key: s, val: 1 }));
|
|
2122
2090
|
if (i.length)
|
|
2123
2091
|
return {
|
|
2124
2092
|
id: e,
|
|
@@ -2136,10 +2104,10 @@ function Nn({
|
|
|
2136
2104
|
data: i
|
|
2137
2105
|
};
|
|
2138
2106
|
}
|
|
2139
|
-
function
|
|
2140
|
-
return t ===
|
|
2107
|
+
function Mn(t) {
|
|
2108
|
+
return t === ct ? (console.error("Axis value can never be N/A"), "") : t;
|
|
2141
2109
|
}
|
|
2142
|
-
class
|
|
2110
|
+
class $n {
|
|
2143
2111
|
constructor(e) {
|
|
2144
2112
|
this.handle = e;
|
|
2145
2113
|
}
|
|
@@ -2159,128 +2127,128 @@ class Jn {
|
|
|
2159
2127
|
return await platforma.pFrameDriver.getUniqueValues(this.handle, e);
|
|
2160
2128
|
}
|
|
2161
2129
|
}
|
|
2162
|
-
function
|
|
2163
|
-
return
|
|
2130
|
+
function Qt(t) {
|
|
2131
|
+
return Oe({
|
|
2164
2132
|
__isRef: !0,
|
|
2165
|
-
blockId:
|
|
2166
|
-
name:
|
|
2133
|
+
blockId: re(t, "blockId"),
|
|
2134
|
+
name: re(t, "name")
|
|
2167
2135
|
});
|
|
2168
2136
|
}
|
|
2169
|
-
function
|
|
2170
|
-
return
|
|
2171
|
-
ref:
|
|
2172
|
-
label:
|
|
2137
|
+
function Bn(t) {
|
|
2138
|
+
return Oe({
|
|
2139
|
+
ref: Qt(re(t, "ref")),
|
|
2140
|
+
label: re(t, "label")
|
|
2173
2141
|
});
|
|
2174
2142
|
}
|
|
2175
2143
|
const Un = {
|
|
2176
|
-
sdkVersion:
|
|
2144
|
+
sdkVersion: z
|
|
2177
2145
|
};
|
|
2178
|
-
function
|
|
2179
|
-
return
|
|
2146
|
+
function Zt() {
|
|
2147
|
+
return Ke({ sdkVersion: z });
|
|
2180
2148
|
}
|
|
2181
|
-
function
|
|
2149
|
+
function Wn(t) {
|
|
2182
2150
|
try {
|
|
2183
|
-
return
|
|
2151
|
+
return Zt();
|
|
2184
2152
|
} catch {
|
|
2185
2153
|
return t;
|
|
2186
2154
|
}
|
|
2187
2155
|
}
|
|
2188
|
-
function
|
|
2156
|
+
function Gn(t) {
|
|
2189
2157
|
if (typeof globalThis.getEnvironmentValue == "function")
|
|
2190
2158
|
return globalThis.getEnvironmentValue(t);
|
|
2191
2159
|
}
|
|
2192
2160
|
export {
|
|
2193
|
-
|
|
2194
|
-
|
|
2161
|
+
an as Args,
|
|
2162
|
+
Te as BlockModel,
|
|
2195
2163
|
Un as CurrentSdkInfo,
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2164
|
+
F as FutureRef,
|
|
2165
|
+
Gt as IS_VIRTUAL_COLUMN,
|
|
2166
|
+
ln as It,
|
|
2167
|
+
Rn as JsRenderInternal,
|
|
2168
|
+
Ee as LABEL_ANNOTATION,
|
|
2169
|
+
Ht as LINKER_COLUMN_ANNOTATION,
|
|
2170
|
+
un as MainOutputs,
|
|
2171
|
+
dt as OutputError,
|
|
2172
|
+
bt as PAnnotationLabel,
|
|
2173
|
+
vt as PAnnotationTrace,
|
|
2174
|
+
ae as PColumnCollection,
|
|
2175
|
+
$n as PFrameImpl,
|
|
2208
2176
|
B as RT_BINARY_PARTITIONED,
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2177
|
+
q as RT_BINARY_SUPER_PARTITIONED,
|
|
2178
|
+
H as RT_JSON_PARTITIONED,
|
|
2179
|
+
oe as RT_JSON_SUPER_PARTITIONED,
|
|
2180
|
+
ie as RT_RESOURCE_MAP,
|
|
2181
|
+
se as RT_RESOURCE_MAP_PARTITIONED,
|
|
2182
|
+
ee as RenderCtx,
|
|
2215
2183
|
Ot as ResultPool,
|
|
2216
|
-
|
|
2217
|
-
|
|
2218
|
-
|
|
2184
|
+
cn as StagingOutputs,
|
|
2185
|
+
St as Trace,
|
|
2186
|
+
Ct as TraceEntry,
|
|
2219
2187
|
D as TreeNodeAccessor,
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2188
|
+
dn as UiState,
|
|
2189
|
+
Jt as allColumnsComputed,
|
|
2190
|
+
bn as and,
|
|
2223
2191
|
It as convertOrParsePColumnData,
|
|
2224
2192
|
jn as createPFrameForGraphs,
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2193
|
+
Vn as createPlDataTableSheet,
|
|
2194
|
+
Nt as createPlDataTableStateV2,
|
|
2195
|
+
Nn as createPlDataTableV2,
|
|
2196
|
+
Jn as createRowSelectionColumn,
|
|
2197
|
+
Je as deriveLabels,
|
|
2198
|
+
de as downgradeCfgOrLambda,
|
|
2199
|
+
Yt as enrichCompatible,
|
|
2200
|
+
Tn as extractArchiveAndGetURL,
|
|
2201
|
+
Kn as extractConfig,
|
|
2202
|
+
Tt as filterDataInfoEntries,
|
|
2203
|
+
gn as flatten,
|
|
2204
|
+
Bn as fromPlOption,
|
|
2205
|
+
Qt as fromPlRef,
|
|
2238
2206
|
jt as getAllLabelColumns,
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2207
|
+
zt as getAvailableWithLinkersAxes,
|
|
2208
|
+
An as getBlobContent,
|
|
2209
|
+
xn as getBlobContentAsJson,
|
|
2210
|
+
Pn as getBlobContentAsString,
|
|
2211
|
+
_n as getDownloadedBlobContent,
|
|
2212
|
+
Gn as getEnvironmentValue,
|
|
2213
|
+
X as getFromCfg,
|
|
2214
|
+
ne as getImmediate,
|
|
2215
|
+
Ln as getImportProgress,
|
|
2216
|
+
re as getJsonField,
|
|
2217
|
+
Fn as getLastLogs,
|
|
2218
|
+
qt as getLinkerColumnsMap,
|
|
2251
2219
|
Dn as getLogHandle,
|
|
2252
2220
|
Le as getMatchingLabelColumns,
|
|
2253
2221
|
In as getOnDemandBlobContent,
|
|
2254
|
-
|
|
2255
|
-
|
|
2222
|
+
Pt as getPartitionKeysList,
|
|
2223
|
+
Wn as getPlatformaOrDefault,
|
|
2256
2224
|
En as getProgressLog,
|
|
2257
2225
|
kn as getProgressLogWithInfo,
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
|
|
2226
|
+
Zt as getRawPlatformaInstance,
|
|
2227
|
+
Cn as getResourceField,
|
|
2228
|
+
Sn as getResourceValueAsJson,
|
|
2229
|
+
_t as getUniquePartitionKeys,
|
|
2230
|
+
fe as ifDef,
|
|
2231
|
+
Mt as isColumnHidden,
|
|
2232
|
+
$t as isColumnOptional,
|
|
2233
|
+
Kt as isConfigLambda,
|
|
2234
|
+
mn as isEmpty,
|
|
2235
|
+
ye as isLabelColumn,
|
|
2236
|
+
Wt as isLinkerColumn,
|
|
2237
|
+
on as isolate,
|
|
2238
|
+
pn as makeArray,
|
|
2239
|
+
Be as makeDefaultPTableParams,
|
|
2240
|
+
Oe as makeObject,
|
|
2241
|
+
hn as mapArrayValues,
|
|
2242
|
+
Mn as mapPTableValueToAxisKey,
|
|
2243
|
+
fn as mapRecordValues,
|
|
2244
|
+
wn as mapResourceFields,
|
|
2245
|
+
yn as not,
|
|
2246
|
+
vn as or,
|
|
2247
|
+
me as parsePColumnData,
|
|
2280
2248
|
On as parseResourceMap,
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2249
|
+
pt as readOutput,
|
|
2250
|
+
pe as uniqueBy,
|
|
2251
|
+
Vt as upgradePlDataTableStateV2,
|
|
2252
|
+
sn as wrapOutputs
|
|
2285
2253
|
};
|
|
2286
2254
|
//# sourceMappingURL=index.mjs.map
|