@platforma-open/milaboratories.vj-usage.model 2.0.0 → 2.1.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/.turbo/turbo-build.log +13 -13
- package/CHANGELOG.md +12 -0
- package/dist/bundle.js +839 -716
- package/dist/bundle.js.map +1 -1
- package/dist/index.cjs +48 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -13
- package/dist/index.d.ts +29 -13
- package/dist/index.js +49 -40
- package/dist/index.js.map +1 -1
- package/dist/model.json +1 -1
- package/package.json +4 -4
- package/src/index.ts +52 -49
package/dist/bundle.js
CHANGED
|
@@ -2,48 +2,6 @@
|
|
|
2
2
|
typeof exports === "object" && typeof module !== "undefined" ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.model = {}));
|
|
3
3
|
})(this, function(exports2) {
|
|
4
4
|
"use strict";
|
|
5
|
-
function getDefaultExportFromCjs(x2) {
|
|
6
|
-
return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
|
|
7
|
-
}
|
|
8
|
-
var canonicalize;
|
|
9
|
-
var hasRequiredCanonicalize;
|
|
10
|
-
function requireCanonicalize() {
|
|
11
|
-
if (hasRequiredCanonicalize) return canonicalize;
|
|
12
|
-
hasRequiredCanonicalize = 1;
|
|
13
|
-
canonicalize = function serialize(object) {
|
|
14
|
-
if (typeof object === "number" && isNaN(object)) {
|
|
15
|
-
throw new Error("NaN is not allowed");
|
|
16
|
-
}
|
|
17
|
-
if (typeof object === "number" && !isFinite(object)) {
|
|
18
|
-
throw new Error("Infinity is not allowed");
|
|
19
|
-
}
|
|
20
|
-
if (object === null || typeof object !== "object") {
|
|
21
|
-
return JSON.stringify(object);
|
|
22
|
-
}
|
|
23
|
-
if (object.toJSON instanceof Function) {
|
|
24
|
-
return serialize(object.toJSON());
|
|
25
|
-
}
|
|
26
|
-
if (Array.isArray(object)) {
|
|
27
|
-
const values2 = object.reduce((t, cv, ci) => {
|
|
28
|
-
const comma = ci === 0 ? "" : ",";
|
|
29
|
-
const value = cv === void 0 || typeof cv === "symbol" ? null : cv;
|
|
30
|
-
return `${t}${comma}${serialize(value)}`;
|
|
31
|
-
}, "");
|
|
32
|
-
return `[${values2}]`;
|
|
33
|
-
}
|
|
34
|
-
const values = Object.keys(object).sort().reduce((t, cv) => {
|
|
35
|
-
if (object[cv] === void 0 || typeof object[cv] === "symbol") {
|
|
36
|
-
return t;
|
|
37
|
-
}
|
|
38
|
-
const comma = t.length === 0 ? "" : ",";
|
|
39
|
-
return `${t}${comma}${serialize(cv)}:${serialize(object[cv])}`;
|
|
40
|
-
}, "");
|
|
41
|
-
return `{${values}}`;
|
|
42
|
-
};
|
|
43
|
-
return canonicalize;
|
|
44
|
-
}
|
|
45
|
-
var canonicalizeExports = requireCanonicalize();
|
|
46
|
-
const _e = /* @__PURE__ */ getDefaultExportFromCjs(canonicalizeExports);
|
|
47
5
|
var util;
|
|
48
6
|
(function(util2) {
|
|
49
7
|
util2.assertEqual = (val) => val;
|
|
@@ -95,7 +53,7 @@
|
|
|
95
53
|
return array.map((val) => typeof val === "string" ? `'${val}'` : val).join(separator);
|
|
96
54
|
}
|
|
97
55
|
util2.joinValues = joinValues;
|
|
98
|
-
util2.jsonStringifyReplacer = (
|
|
56
|
+
util2.jsonStringifyReplacer = (_2, value) => {
|
|
99
57
|
if (typeof value === "bigint") {
|
|
100
58
|
return value.toString();
|
|
101
59
|
}
|
|
@@ -433,7 +391,7 @@
|
|
|
433
391
|
overrideMap,
|
|
434
392
|
overrideMap === errorMap ? void 0 : errorMap
|
|
435
393
|
// then global default map
|
|
436
|
-
].filter((
|
|
394
|
+
].filter((x) => !!x)
|
|
437
395
|
});
|
|
438
396
|
ctx.common.issues.push(issue);
|
|
439
397
|
}
|
|
@@ -496,10 +454,10 @@
|
|
|
496
454
|
});
|
|
497
455
|
const DIRTY = (value) => ({ status: "dirty", value });
|
|
498
456
|
const OK = (value) => ({ status: "valid", value });
|
|
499
|
-
const isAborted = (
|
|
500
|
-
const isDirty = (
|
|
501
|
-
const isValid = (
|
|
502
|
-
const isAsync = (
|
|
457
|
+
const isAborted = (x) => x.status === "aborted";
|
|
458
|
+
const isDirty = (x) => x.status === "dirty";
|
|
459
|
+
const isValid = (x) => x.status === "valid";
|
|
460
|
+
const isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
|
|
503
461
|
function __classPrivateFieldGet(receiver, state, kind, f2) {
|
|
504
462
|
if (typeof state === "function" ? receiver !== state || true : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
505
463
|
return state.get(receiver);
|
|
@@ -2829,7 +2787,7 @@
|
|
|
2829
2787
|
if (!schema)
|
|
2830
2788
|
return null;
|
|
2831
2789
|
return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));
|
|
2832
|
-
}).filter((
|
|
2790
|
+
}).filter((x) => !!x);
|
|
2833
2791
|
if (ctx.common.async) {
|
|
2834
2792
|
return Promise.all(items).then((results) => {
|
|
2835
2793
|
return ParseStatus.mergeArray(status, results);
|
|
@@ -3087,7 +3045,7 @@
|
|
|
3087
3045
|
ctx.schemaErrorMap,
|
|
3088
3046
|
getErrorMap(),
|
|
3089
3047
|
errorMap
|
|
3090
|
-
].filter((
|
|
3048
|
+
].filter((x) => !!x),
|
|
3091
3049
|
issueData: {
|
|
3092
3050
|
code: ZodIssueCode.invalid_arguments,
|
|
3093
3051
|
argumentsError: error
|
|
@@ -3103,7 +3061,7 @@
|
|
|
3103
3061
|
ctx.schemaErrorMap,
|
|
3104
3062
|
getErrorMap(),
|
|
3105
3063
|
errorMap
|
|
3106
|
-
].filter((
|
|
3064
|
+
].filter((x) => !!x),
|
|
3107
3065
|
issueData: {
|
|
3108
3066
|
code: ZodIssueCode.invalid_return_type,
|
|
3109
3067
|
returnTypeError: error
|
|
@@ -3111,31 +3069,31 @@
|
|
|
3111
3069
|
});
|
|
3112
3070
|
}
|
|
3113
3071
|
const params = { errorMap: ctx.common.contextualErrorMap };
|
|
3114
|
-
const
|
|
3072
|
+
const fn2 = ctx.data;
|
|
3115
3073
|
if (this._def.returns instanceof ZodPromise) {
|
|
3116
|
-
const
|
|
3074
|
+
const me2 = this;
|
|
3117
3075
|
return OK(async function(...args) {
|
|
3118
3076
|
const error = new ZodError([]);
|
|
3119
|
-
const parsedArgs = await
|
|
3077
|
+
const parsedArgs = await me2._def.args.parseAsync(args, params).catch((e) => {
|
|
3120
3078
|
error.addIssue(makeArgsIssue(args, e));
|
|
3121
3079
|
throw error;
|
|
3122
3080
|
});
|
|
3123
|
-
const result = await Reflect.apply(
|
|
3124
|
-
const parsedReturns = await
|
|
3081
|
+
const result = await Reflect.apply(fn2, this, parsedArgs);
|
|
3082
|
+
const parsedReturns = await me2._def.returns._def.type.parseAsync(result, params).catch((e) => {
|
|
3125
3083
|
error.addIssue(makeReturnsIssue(result, e));
|
|
3126
3084
|
throw error;
|
|
3127
3085
|
});
|
|
3128
3086
|
return parsedReturns;
|
|
3129
3087
|
});
|
|
3130
3088
|
} else {
|
|
3131
|
-
const
|
|
3089
|
+
const me2 = this;
|
|
3132
3090
|
return OK(function(...args) {
|
|
3133
|
-
const parsedArgs =
|
|
3091
|
+
const parsedArgs = me2._def.args.safeParse(args, params);
|
|
3134
3092
|
if (!parsedArgs.success) {
|
|
3135
3093
|
throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);
|
|
3136
3094
|
}
|
|
3137
|
-
const result = Reflect.apply(
|
|
3138
|
-
const parsedReturns =
|
|
3095
|
+
const result = Reflect.apply(fn2, this, parsedArgs.data);
|
|
3096
|
+
const parsedReturns = me2._def.returns.safeParse(result, params);
|
|
3139
3097
|
if (!parsedReturns.success) {
|
|
3140
3098
|
throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);
|
|
3141
3099
|
}
|
|
@@ -3956,234 +3914,274 @@
|
|
|
3956
3914
|
quotelessJson,
|
|
3957
3915
|
ZodError
|
|
3958
3916
|
});
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3917
|
+
function getDefaultExportFromCjs(x) {
|
|
3918
|
+
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
3919
|
+
}
|
|
3920
|
+
var canonicalize;
|
|
3921
|
+
var hasRequiredCanonicalize;
|
|
3922
|
+
function requireCanonicalize() {
|
|
3923
|
+
if (hasRequiredCanonicalize) return canonicalize;
|
|
3924
|
+
hasRequiredCanonicalize = 1;
|
|
3925
|
+
canonicalize = function serialize(object) {
|
|
3926
|
+
if (typeof object === "number" && isNaN(object)) {
|
|
3927
|
+
throw new Error("NaN is not allowed");
|
|
3928
|
+
}
|
|
3929
|
+
if (typeof object === "number" && !isFinite(object)) {
|
|
3930
|
+
throw new Error("Infinity is not allowed");
|
|
3931
|
+
}
|
|
3932
|
+
if (object === null || typeof object !== "object") {
|
|
3933
|
+
return JSON.stringify(object);
|
|
3934
|
+
}
|
|
3935
|
+
if (object.toJSON instanceof Function) {
|
|
3936
|
+
return serialize(object.toJSON());
|
|
3937
|
+
}
|
|
3938
|
+
if (Array.isArray(object)) {
|
|
3939
|
+
const values2 = object.reduce((t, cv, ci) => {
|
|
3940
|
+
const comma = ci === 0 ? "" : ",";
|
|
3941
|
+
const value = cv === void 0 || typeof cv === "symbol" ? null : cv;
|
|
3942
|
+
return `${t}${comma}${serialize(value)}`;
|
|
3943
|
+
}, "");
|
|
3944
|
+
return `[${values2}]`;
|
|
3945
|
+
}
|
|
3946
|
+
const values = Object.keys(object).sort().reduce((t, cv) => {
|
|
3947
|
+
if (object[cv] === void 0 || typeof object[cv] === "symbol") {
|
|
3948
|
+
return t;
|
|
3949
|
+
}
|
|
3950
|
+
const comma = t.length === 0 ? "" : ",";
|
|
3951
|
+
return `${t}${comma}${serialize(cv)}:${serialize(object[cv])}`;
|
|
3952
|
+
}, "");
|
|
3953
|
+
return `{${values}}`;
|
|
3954
|
+
};
|
|
3955
|
+
return canonicalize;
|
|
3956
|
+
}
|
|
3957
|
+
var canonicalizeExports = requireCanonicalize();
|
|
3958
|
+
const ke = /* @__PURE__ */ getDefaultExportFromCjs(canonicalizeExports);
|
|
3959
|
+
var B$1 = Object.defineProperty;
|
|
3960
|
+
var j = (n2, e, t) => e in n2 ? B$1(n2, e, { enumerable: true, configurable: true, writable: true, value: t }) : n2[e] = t;
|
|
3961
|
+
var l$1 = (n2, e, t) => j(n2, typeof e != "symbol" ? e + "" : e, t);
|
|
3962
|
+
z$1.object({
|
|
3963
|
+
/** Included left border. */
|
|
3964
|
+
from: z$1.number(),
|
|
3965
|
+
/** Excluded right border. */
|
|
3966
|
+
to: z$1.number()
|
|
3967
|
+
});
|
|
3962
3968
|
function w(n2) {
|
|
3963
3969
|
throw new Error("Unexpected object: " + n2);
|
|
3964
3970
|
}
|
|
3965
|
-
function
|
|
3971
|
+
function En(n2) {
|
|
3966
3972
|
if (!n2 || typeof n2 != "object")
|
|
3967
3973
|
return false;
|
|
3968
|
-
const
|
|
3969
|
-
if (!("type" in
|
|
3974
|
+
const e = n2;
|
|
3975
|
+
if (!("type" in e))
|
|
3970
3976
|
return false;
|
|
3971
|
-
switch (
|
|
3977
|
+
switch (e.type) {
|
|
3972
3978
|
case "Json":
|
|
3973
|
-
return typeof
|
|
3979
|
+
return typeof e.keyLength == "number" && e.data !== void 0 && typeof e.data == "object";
|
|
3974
3980
|
case "JsonPartitioned":
|
|
3975
|
-
return typeof
|
|
3981
|
+
return typeof e.partitionKeyLength == "number" && e.parts !== void 0 && typeof e.parts == "object";
|
|
3976
3982
|
case "BinaryPartitioned":
|
|
3977
|
-
return typeof
|
|
3983
|
+
return typeof e.partitionKeyLength == "number" && e.parts !== void 0 && typeof e.parts == "object";
|
|
3978
3984
|
default:
|
|
3979
3985
|
return false;
|
|
3980
3986
|
}
|
|
3981
3987
|
}
|
|
3982
|
-
function
|
|
3988
|
+
function Nn(n2, e) {
|
|
3983
3989
|
if (n2 !== void 0)
|
|
3984
3990
|
switch (n2.type) {
|
|
3985
3991
|
case "Json":
|
|
3986
3992
|
return n2;
|
|
3987
3993
|
case "JsonPartitioned": {
|
|
3988
|
-
const
|
|
3994
|
+
const t = {};
|
|
3989
3995
|
for (const [r, o] of Object.entries(n2.parts))
|
|
3990
|
-
|
|
3996
|
+
t[r] = e(o);
|
|
3991
3997
|
return {
|
|
3992
3998
|
...n2,
|
|
3993
|
-
parts:
|
|
3999
|
+
parts: t
|
|
3994
4000
|
};
|
|
3995
4001
|
}
|
|
3996
4002
|
case "BinaryPartitioned": {
|
|
3997
|
-
const
|
|
4003
|
+
const t = {};
|
|
3998
4004
|
for (const [r, o] of Object.entries(n2.parts))
|
|
3999
|
-
|
|
4000
|
-
index:
|
|
4001
|
-
values:
|
|
4005
|
+
t[r] = {
|
|
4006
|
+
index: e(o.index),
|
|
4007
|
+
values: e(o.values)
|
|
4002
4008
|
};
|
|
4003
4009
|
return {
|
|
4004
4010
|
...n2,
|
|
4005
|
-
parts:
|
|
4011
|
+
parts: t
|
|
4006
4012
|
};
|
|
4007
4013
|
}
|
|
4008
4014
|
}
|
|
4009
4015
|
}
|
|
4010
|
-
function
|
|
4016
|
+
function K(n2) {
|
|
4011
4017
|
if (!n2 || typeof n2 != "object")
|
|
4012
4018
|
return false;
|
|
4013
|
-
const
|
|
4014
|
-
if (!("type" in
|
|
4019
|
+
const e = n2;
|
|
4020
|
+
if (!("type" in e))
|
|
4015
4021
|
return false;
|
|
4016
|
-
switch (
|
|
4022
|
+
switch (e.type) {
|
|
4017
4023
|
case "Json":
|
|
4018
|
-
return typeof
|
|
4024
|
+
return typeof e.keyLength == "number" && Array.isArray(e.data);
|
|
4019
4025
|
case "JsonPartitioned":
|
|
4020
|
-
return typeof
|
|
4026
|
+
return typeof e.partitionKeyLength == "number" && Array.isArray(e.parts);
|
|
4021
4027
|
case "BinaryPartitioned":
|
|
4022
|
-
return typeof
|
|
4028
|
+
return typeof e.partitionKeyLength == "number" && Array.isArray(e.parts);
|
|
4023
4029
|
default:
|
|
4024
4030
|
return false;
|
|
4025
4031
|
}
|
|
4026
4032
|
}
|
|
4027
|
-
function
|
|
4028
|
-
return
|
|
4033
|
+
function Sn(n2) {
|
|
4034
|
+
return K(n2) ? n2.type === "JsonPartitioned" || n2.type === "BinaryPartitioned" : false;
|
|
4029
4035
|
}
|
|
4030
|
-
function
|
|
4036
|
+
function Cn(n2) {
|
|
4031
4037
|
switch (n2.type) {
|
|
4032
4038
|
case "Json": {
|
|
4033
|
-
const
|
|
4039
|
+
const e = Object.entries(n2.data).map(([t, r]) => ({ key: JSON.parse(t), value: r }));
|
|
4034
4040
|
return {
|
|
4035
4041
|
type: "Json",
|
|
4036
4042
|
keyLength: n2.keyLength,
|
|
4037
|
-
data:
|
|
4043
|
+
data: e
|
|
4038
4044
|
};
|
|
4039
4045
|
}
|
|
4040
4046
|
case "JsonPartitioned": {
|
|
4041
|
-
const
|
|
4047
|
+
const e = Object.entries(n2.parts).map(([t, r]) => ({ key: JSON.parse(t), value: r }));
|
|
4042
4048
|
return {
|
|
4043
4049
|
type: "JsonPartitioned",
|
|
4044
4050
|
partitionKeyLength: n2.partitionKeyLength,
|
|
4045
|
-
parts:
|
|
4051
|
+
parts: e
|
|
4046
4052
|
};
|
|
4047
4053
|
}
|
|
4048
4054
|
case "BinaryPartitioned": {
|
|
4049
|
-
const
|
|
4055
|
+
const e = Object.entries(n2.parts).map(([t, r]) => ({ key: JSON.parse(t), value: r }));
|
|
4050
4056
|
return {
|
|
4051
4057
|
type: "BinaryPartitioned",
|
|
4052
4058
|
partitionKeyLength: n2.partitionKeyLength,
|
|
4053
|
-
parts:
|
|
4059
|
+
parts: e
|
|
4054
4060
|
};
|
|
4055
4061
|
}
|
|
4056
4062
|
}
|
|
4057
4063
|
}
|
|
4058
|
-
function
|
|
4064
|
+
function Jn(n2) {
|
|
4059
4065
|
switch (n2.type) {
|
|
4060
4066
|
case "Json": {
|
|
4061
|
-
const
|
|
4062
|
-
for (const
|
|
4063
|
-
|
|
4067
|
+
const e = {};
|
|
4068
|
+
for (const t of n2.data)
|
|
4069
|
+
e[JSON.stringify(t.key)] = t.value;
|
|
4064
4070
|
return {
|
|
4065
4071
|
type: "Json",
|
|
4066
4072
|
keyLength: n2.keyLength,
|
|
4067
|
-
data:
|
|
4073
|
+
data: e
|
|
4068
4074
|
};
|
|
4069
4075
|
}
|
|
4070
4076
|
case "JsonPartitioned": {
|
|
4071
|
-
const
|
|
4072
|
-
for (const
|
|
4073
|
-
|
|
4077
|
+
const e = {};
|
|
4078
|
+
for (const t of n2.parts)
|
|
4079
|
+
e[JSON.stringify(t.key)] = t.value;
|
|
4074
4080
|
return {
|
|
4075
4081
|
type: "JsonPartitioned",
|
|
4076
4082
|
partitionKeyLength: n2.partitionKeyLength,
|
|
4077
|
-
parts:
|
|
4083
|
+
parts: e
|
|
4078
4084
|
};
|
|
4079
4085
|
}
|
|
4080
4086
|
case "BinaryPartitioned": {
|
|
4081
|
-
const
|
|
4082
|
-
for (const
|
|
4083
|
-
|
|
4087
|
+
const e = {};
|
|
4088
|
+
for (const t of n2.parts)
|
|
4089
|
+
e[JSON.stringify(t.key)] = t.value;
|
|
4084
4090
|
return {
|
|
4085
4091
|
type: "BinaryPartitioned",
|
|
4086
4092
|
partitionKeyLength: n2.partitionKeyLength,
|
|
4087
|
-
parts:
|
|
4093
|
+
parts: e
|
|
4088
4094
|
};
|
|
4089
4095
|
}
|
|
4090
4096
|
}
|
|
4091
4097
|
}
|
|
4092
|
-
function En(n2) {
|
|
4093
|
-
return {
|
|
4094
|
-
kind: n2.kind,
|
|
4095
|
-
valueType: n2.valueType,
|
|
4096
|
-
name: n2.name,
|
|
4097
|
-
domain: n2.domain,
|
|
4098
|
-
parentAxes: n2.parentAxes,
|
|
4099
|
-
axesId: z(n2.axesSpec)
|
|
4100
|
-
};
|
|
4101
|
-
}
|
|
4102
4098
|
function p$1(n2) {
|
|
4103
|
-
const { type:
|
|
4104
|
-
return
|
|
4099
|
+
const { type: e, name: t, domain: r } = n2, o = { type: e, name: t };
|
|
4100
|
+
return r && Object.entries(r).length > 0 && Object.assign(o, { domain: r }), o;
|
|
4105
4101
|
}
|
|
4106
|
-
function
|
|
4102
|
+
function J(n2) {
|
|
4107
4103
|
return n2.map(p$1);
|
|
4108
4104
|
}
|
|
4109
|
-
function
|
|
4110
|
-
return
|
|
4105
|
+
function Rn(n2) {
|
|
4106
|
+
return ke(p$1(n2));
|
|
4111
4107
|
}
|
|
4112
|
-
function
|
|
4113
|
-
if (n2 === void 0) return
|
|
4114
|
-
if (
|
|
4115
|
-
for (const
|
|
4116
|
-
if (n2[
|
|
4108
|
+
function Y$1(n2, e) {
|
|
4109
|
+
if (n2 === void 0) return e === void 0;
|
|
4110
|
+
if (e === void 0) return true;
|
|
4111
|
+
for (const t in e)
|
|
4112
|
+
if (n2[t] !== e[t]) return false;
|
|
4117
4113
|
return true;
|
|
4118
4114
|
}
|
|
4119
|
-
function
|
|
4120
|
-
return n2.name ===
|
|
4115
|
+
function Z$1(n2, e) {
|
|
4116
|
+
return n2.name === e.name && Y$1(n2.domain, e.domain);
|
|
4121
4117
|
}
|
|
4122
|
-
function
|
|
4123
|
-
return { ...n2, src:
|
|
4118
|
+
function Un(n2, e) {
|
|
4119
|
+
return { ...n2, src: h(n2.src, e) };
|
|
4124
4120
|
}
|
|
4125
|
-
function
|
|
4121
|
+
function h(n2, e) {
|
|
4126
4122
|
switch (n2.type) {
|
|
4127
4123
|
case "column":
|
|
4128
4124
|
return {
|
|
4129
4125
|
type: "column",
|
|
4130
|
-
column:
|
|
4126
|
+
column: e(n2.column)
|
|
4131
4127
|
};
|
|
4132
4128
|
case "slicedColumn":
|
|
4133
4129
|
return {
|
|
4134
4130
|
type: "slicedColumn",
|
|
4135
|
-
column:
|
|
4131
|
+
column: e(n2.column),
|
|
4136
4132
|
newId: n2.newId,
|
|
4137
4133
|
axisFilters: n2.axisFilters
|
|
4138
4134
|
};
|
|
4135
|
+
case "inlineColumn":
|
|
4136
|
+
return n2;
|
|
4139
4137
|
case "inner":
|
|
4140
4138
|
case "full":
|
|
4141
4139
|
return {
|
|
4142
4140
|
type: n2.type,
|
|
4143
|
-
entries: n2.entries.map((
|
|
4141
|
+
entries: n2.entries.map((t) => h(t, e))
|
|
4144
4142
|
};
|
|
4145
4143
|
case "outer":
|
|
4146
4144
|
return {
|
|
4147
4145
|
type: "outer",
|
|
4148
|
-
primary:
|
|
4149
|
-
secondary: n2.secondary.map((
|
|
4146
|
+
primary: h(n2.primary, e),
|
|
4147
|
+
secondary: n2.secondary.map((t) => h(t, e))
|
|
4150
4148
|
};
|
|
4151
4149
|
default:
|
|
4152
4150
|
w(n2);
|
|
4153
4151
|
}
|
|
4154
4152
|
}
|
|
4155
|
-
function
|
|
4156
|
-
return
|
|
4153
|
+
function nn(n2) {
|
|
4154
|
+
return ke(n2);
|
|
4157
4155
|
}
|
|
4158
|
-
function
|
|
4159
|
-
return
|
|
4156
|
+
function P(n2) {
|
|
4157
|
+
return ke(p$1(n2));
|
|
4160
4158
|
}
|
|
4161
|
-
function
|
|
4162
|
-
return JSON.stringify([n2,
|
|
4159
|
+
function k(n2, e) {
|
|
4160
|
+
return JSON.stringify([n2, e]);
|
|
4163
4161
|
}
|
|
4164
|
-
class
|
|
4162
|
+
class _n {
|
|
4165
4163
|
/**
|
|
4166
4164
|
* Creates a new anchor context from a set of anchor column specifications
|
|
4167
4165
|
* @param anchors Record of anchor column specifications indexed by anchor ID
|
|
4168
4166
|
*/
|
|
4169
|
-
constructor(
|
|
4170
|
-
|
|
4171
|
-
|
|
4172
|
-
|
|
4173
|
-
|
|
4174
|
-
this.anchors =
|
|
4175
|
-
const
|
|
4176
|
-
|
|
4177
|
-
for (const [r, o] of
|
|
4167
|
+
constructor(e) {
|
|
4168
|
+
l$1(this, "domains", /* @__PURE__ */ new Map());
|
|
4169
|
+
l$1(this, "axes", /* @__PURE__ */ new Map());
|
|
4170
|
+
l$1(this, "domainPacks", []);
|
|
4171
|
+
l$1(this, "domainPackToAnchor", /* @__PURE__ */ new Map());
|
|
4172
|
+
this.anchors = e;
|
|
4173
|
+
const t = Object.entries(e);
|
|
4174
|
+
t.sort((r, o) => r[0].localeCompare(o[0]));
|
|
4175
|
+
for (const [r, o] of t) {
|
|
4178
4176
|
for (let s2 = 0; s2 < o.axesSpec.length; s2++) {
|
|
4179
|
-
const a = o.axesSpec[s2], i =
|
|
4177
|
+
const a = o.axesSpec[s2], i = P(a);
|
|
4180
4178
|
this.axes.set(i, { anchor: r, idx: s2 });
|
|
4181
4179
|
}
|
|
4182
4180
|
if (o.domain !== void 0) {
|
|
4183
4181
|
const s2 = Object.entries(o.domain);
|
|
4184
4182
|
s2.sort((a, i) => a[0].localeCompare(i[0])), this.domainPackToAnchor.set(JSON.stringify(s2), r), this.domainPacks.push(s2.map(([a]) => a));
|
|
4185
4183
|
for (const [a, i] of s2) {
|
|
4186
|
-
const u2 =
|
|
4184
|
+
const u2 = k(a, i);
|
|
4187
4185
|
this.domains.set(u2, r);
|
|
4188
4186
|
}
|
|
4189
4187
|
}
|
|
@@ -4192,20 +4190,20 @@
|
|
|
4192
4190
|
/**
|
|
4193
4191
|
* Implementation of derive method
|
|
4194
4192
|
*/
|
|
4195
|
-
derive(
|
|
4193
|
+
derive(e, t) {
|
|
4196
4194
|
const r = {
|
|
4197
|
-
name:
|
|
4195
|
+
name: e.name,
|
|
4198
4196
|
axes: []
|
|
4199
4197
|
};
|
|
4200
4198
|
let o;
|
|
4201
|
-
if (
|
|
4199
|
+
if (e.domain !== void 0)
|
|
4202
4200
|
n:
|
|
4203
4201
|
for (const a of this.domainPacks) {
|
|
4204
4202
|
const i = [];
|
|
4205
4203
|
for (const c2 of a) {
|
|
4206
|
-
const
|
|
4207
|
-
if (
|
|
4208
|
-
i.push([c2,
|
|
4204
|
+
const m2 = e.domain[c2];
|
|
4205
|
+
if (m2 !== void 0)
|
|
4206
|
+
i.push([c2, m2]);
|
|
4209
4207
|
else
|
|
4210
4208
|
break n;
|
|
4211
4209
|
}
|
|
@@ -4215,26 +4213,26 @@
|
|
|
4215
4213
|
break;
|
|
4216
4214
|
}
|
|
4217
4215
|
}
|
|
4218
|
-
for (const [a, i] of Object.entries(
|
|
4216
|
+
for (const [a, i] of Object.entries(e.domain ?? {})) {
|
|
4219
4217
|
if (o !== void 0 && o.has(a))
|
|
4220
4218
|
continue;
|
|
4221
|
-
const u2 =
|
|
4219
|
+
const u2 = k(a, i), c2 = this.domains.get(u2);
|
|
4222
4220
|
r.domain ?? (r.domain = {}), r.domain[a] = c2 ? { anchor: c2 } : i;
|
|
4223
4221
|
}
|
|
4224
|
-
if (r.axes =
|
|
4225
|
-
const i =
|
|
4222
|
+
if (r.axes = e.axesSpec.map((a) => {
|
|
4223
|
+
const i = P(a), u2 = this.axes.get(i);
|
|
4226
4224
|
return u2 === void 0 ? p$1(a) : u2;
|
|
4227
|
-
}), !
|
|
4225
|
+
}), !t || t.length === 0)
|
|
4228
4226
|
return r;
|
|
4229
4227
|
const s2 = [];
|
|
4230
|
-
for (const a of
|
|
4228
|
+
for (const a of t) {
|
|
4231
4229
|
const [i, u2] = a;
|
|
4232
4230
|
if (typeof i == "number") {
|
|
4233
|
-
if (i < 0 || i >=
|
|
4234
|
-
throw new Error(`Axis index ${i} is out of bounds (0-${
|
|
4231
|
+
if (i < 0 || i >= e.axesSpec.length)
|
|
4232
|
+
throw new Error(`Axis index ${i} is out of bounds (0-${e.axesSpec.length - 1})`);
|
|
4235
4233
|
s2.push([i, u2]);
|
|
4236
4234
|
} else {
|
|
4237
|
-
const c2 =
|
|
4235
|
+
const c2 = e.axesSpec.findIndex((m2) => m2.name === i);
|
|
4238
4236
|
if (c2 === -1)
|
|
4239
4237
|
throw new Error(`Axis with name "${i}" not found in the column specification`);
|
|
4240
4238
|
s2.push([c2, u2]);
|
|
@@ -4251,12 +4249,12 @@
|
|
|
4251
4249
|
* @param axisFilters Optional axis filters to apply to the column
|
|
4252
4250
|
* @returns A canonicalized string representation of the anchored column identifier
|
|
4253
4251
|
*/
|
|
4254
|
-
deriveS(
|
|
4255
|
-
return
|
|
4252
|
+
deriveS(e, t) {
|
|
4253
|
+
return nn(this.derive(e, t));
|
|
4256
4254
|
}
|
|
4257
4255
|
}
|
|
4258
|
-
function
|
|
4259
|
-
const r = { ...
|
|
4256
|
+
function Mn(n2, e, t) {
|
|
4257
|
+
const r = { ...e }, o = (t == null ? void 0 : t.ignoreMissingDomains) ?? false;
|
|
4260
4258
|
if (r.domainAnchor !== void 0) {
|
|
4261
4259
|
const s2 = n2[r.domainAnchor];
|
|
4262
4260
|
if (!s2)
|
|
@@ -4282,161 +4280,185 @@
|
|
|
4282
4280
|
}
|
|
4283
4281
|
r.domain = s2;
|
|
4284
4282
|
}
|
|
4285
|
-
return r.axes && (r.axes = r.axes.map((s2) =>
|
|
4283
|
+
return r.axes && (r.axes = r.axes.map((s2) => en(n2, s2))), r;
|
|
4286
4284
|
}
|
|
4287
|
-
function
|
|
4288
|
-
if (!
|
|
4289
|
-
return
|
|
4290
|
-
const
|
|
4285
|
+
function en(n2, e) {
|
|
4286
|
+
if (!tn(e))
|
|
4287
|
+
return e;
|
|
4288
|
+
const t = e.anchor, r = n2[t];
|
|
4291
4289
|
if (!r)
|
|
4292
|
-
throw new Error(`Anchor "${
|
|
4293
|
-
if ("idx" in
|
|
4294
|
-
if (
|
|
4295
|
-
throw new Error(`Axis index ${
|
|
4296
|
-
return r.axesSpec[
|
|
4297
|
-
} else if ("name" in
|
|
4298
|
-
const o = r.axesSpec.filter((s2) => s2.name ===
|
|
4290
|
+
throw new Error(`Anchor "${t}" not found for axis reference`);
|
|
4291
|
+
if ("idx" in e) {
|
|
4292
|
+
if (e.idx < 0 || e.idx >= r.axesSpec.length)
|
|
4293
|
+
throw new Error(`Axis index ${e.idx} out of bounds for anchor "${t}"`);
|
|
4294
|
+
return r.axesSpec[e.idx];
|
|
4295
|
+
} else if ("name" in e) {
|
|
4296
|
+
const o = r.axesSpec.filter((s2) => s2.name === e.name);
|
|
4299
4297
|
if (o.length > 1)
|
|
4300
|
-
throw new Error(`Multiple axes with name "${
|
|
4298
|
+
throw new Error(`Multiple axes with name "${e.name}" found in anchor "${t}"`);
|
|
4301
4299
|
if (o.length === 0)
|
|
4302
|
-
throw new Error(`Axis with name "${
|
|
4300
|
+
throw new Error(`Axis with name "${e.name}" not found in anchor "${t}"`);
|
|
4303
4301
|
return o[0];
|
|
4304
|
-
} else if ("id" in
|
|
4305
|
-
const o = r.axesSpec.filter((s2) =>
|
|
4302
|
+
} else if ("id" in e) {
|
|
4303
|
+
const o = r.axesSpec.filter((s2) => Z$1(e.id, p$1(s2)));
|
|
4306
4304
|
if (o.length > 1)
|
|
4307
|
-
throw new Error(`Multiple matching axes found for matcher in anchor "${
|
|
4305
|
+
throw new Error(`Multiple matching axes found for matcher in anchor "${t}"`);
|
|
4308
4306
|
if (o.length === 0)
|
|
4309
|
-
throw new Error(`No matching axis found for matcher in anchor "${
|
|
4307
|
+
throw new Error(`No matching axis found for matcher in anchor "${t}"`);
|
|
4310
4308
|
return o[0];
|
|
4311
4309
|
}
|
|
4312
4310
|
throw new Error("Unsupported axis reference type");
|
|
4313
4311
|
}
|
|
4314
|
-
function
|
|
4312
|
+
function tn(n2) {
|
|
4315
4313
|
return typeof n2 == "object" && "anchor" in n2;
|
|
4316
4314
|
}
|
|
4317
4315
|
function f(n2) {
|
|
4318
4316
|
return n2.kind === "PColumn";
|
|
4319
4317
|
}
|
|
4320
|
-
function
|
|
4318
|
+
function rn(n2) {
|
|
4321
4319
|
return f(n2.spec);
|
|
4322
4320
|
}
|
|
4323
|
-
function
|
|
4324
|
-
if (!
|
|
4321
|
+
function qn(n2) {
|
|
4322
|
+
if (!rn(n2)) throw new Error(`not a PColumn (kind = ${n2.spec.kind})`);
|
|
4325
4323
|
return n2;
|
|
4326
4324
|
}
|
|
4327
|
-
function
|
|
4325
|
+
function Wn(n2, e) {
|
|
4328
4326
|
return n2 === void 0 ? void 0 : {
|
|
4329
4327
|
...n2,
|
|
4330
|
-
data:
|
|
4328
|
+
data: e(n2.data)
|
|
4331
4329
|
};
|
|
4332
4330
|
}
|
|
4333
|
-
function
|
|
4334
|
-
const
|
|
4331
|
+
function Xn(n2) {
|
|
4332
|
+
const e = /* @__PURE__ */ new Map(), t = (r) => {
|
|
4335
4333
|
switch (r.type) {
|
|
4336
4334
|
case "column":
|
|
4337
|
-
|
|
4335
|
+
e.set(r.column.id, r.column);
|
|
4338
4336
|
return;
|
|
4339
4337
|
case "slicedColumn":
|
|
4340
|
-
|
|
4338
|
+
e.set(r.column.id, r.column);
|
|
4339
|
+
return;
|
|
4340
|
+
case "inlineColumn":
|
|
4341
4341
|
return;
|
|
4342
4342
|
case "full":
|
|
4343
4343
|
case "inner":
|
|
4344
|
-
for (const o of r.entries)
|
|
4344
|
+
for (const o of r.entries) t(o);
|
|
4345
4345
|
return;
|
|
4346
4346
|
case "outer":
|
|
4347
|
-
|
|
4348
|
-
for (const o of r.secondary)
|
|
4347
|
+
t(r.primary);
|
|
4348
|
+
for (const o of r.secondary) t(o);
|
|
4349
4349
|
return;
|
|
4350
4350
|
default:
|
|
4351
4351
|
w(r);
|
|
4352
4352
|
}
|
|
4353
4353
|
};
|
|
4354
|
-
return
|
|
4354
|
+
return t(n2), [...e.values()];
|
|
4355
4355
|
}
|
|
4356
|
-
function
|
|
4357
|
-
if (n2.name !== void 0 && n2.name !==
|
|
4356
|
+
function E$1(n2, e) {
|
|
4357
|
+
if (n2.name !== void 0 && n2.name !== e.name)
|
|
4358
4358
|
return false;
|
|
4359
4359
|
if (n2.type !== void 0) {
|
|
4360
4360
|
if (Array.isArray(n2.type)) {
|
|
4361
|
-
if (!n2.type.includes(
|
|
4361
|
+
if (!n2.type.includes(e.type))
|
|
4362
4362
|
return false;
|
|
4363
|
-
} else if (n2.type !==
|
|
4363
|
+
} else if (n2.type !== e.type)
|
|
4364
4364
|
return false;
|
|
4365
4365
|
}
|
|
4366
4366
|
if (n2.domain !== void 0) {
|
|
4367
|
-
const
|
|
4367
|
+
const t = e.domain || {};
|
|
4368
4368
|
for (const [r, o] of Object.entries(n2.domain))
|
|
4369
|
-
if (
|
|
4369
|
+
if (t[r] !== o)
|
|
4370
4370
|
return false;
|
|
4371
4371
|
}
|
|
4372
4372
|
return true;
|
|
4373
4373
|
}
|
|
4374
|
-
function N(n2,
|
|
4375
|
-
if (
|
|
4374
|
+
function N(n2, e) {
|
|
4375
|
+
if (e.name !== void 0 && n2.name !== e.name || e.namePattern !== void 0 && !new RegExp(e.namePattern).test(n2.name))
|
|
4376
4376
|
return false;
|
|
4377
|
-
if (
|
|
4378
|
-
if (Array.isArray(
|
|
4379
|
-
if (!
|
|
4377
|
+
if (e.type !== void 0) {
|
|
4378
|
+
if (Array.isArray(e.type)) {
|
|
4379
|
+
if (!e.type.includes(n2.valueType))
|
|
4380
4380
|
return false;
|
|
4381
|
-
} else if (
|
|
4381
|
+
} else if (e.type !== n2.valueType)
|
|
4382
4382
|
return false;
|
|
4383
4383
|
}
|
|
4384
|
-
if (
|
|
4385
|
-
const
|
|
4386
|
-
for (const [r, o] of Object.entries(
|
|
4387
|
-
if (
|
|
4384
|
+
if (e.domain !== void 0) {
|
|
4385
|
+
const t = n2.domain || {};
|
|
4386
|
+
for (const [r, o] of Object.entries(e.domain))
|
|
4387
|
+
if (t[r] !== o)
|
|
4388
4388
|
return false;
|
|
4389
4389
|
}
|
|
4390
|
-
if (
|
|
4391
|
-
const
|
|
4392
|
-
if (
|
|
4393
|
-
for (const r of
|
|
4394
|
-
if (!
|
|
4390
|
+
if (e.axes !== void 0) {
|
|
4391
|
+
const t = n2.axesSpec.map(p$1);
|
|
4392
|
+
if (e.partialAxesMatch) {
|
|
4393
|
+
for (const r of e.axes)
|
|
4394
|
+
if (!t.some((o) => E$1(r, o)))
|
|
4395
4395
|
return false;
|
|
4396
4396
|
} else {
|
|
4397
|
-
if (
|
|
4397
|
+
if (t.length !== e.axes.length)
|
|
4398
4398
|
return false;
|
|
4399
|
-
for (let r = 0; r <
|
|
4400
|
-
if (!
|
|
4399
|
+
for (let r = 0; r < e.axes.length; r++)
|
|
4400
|
+
if (!E$1(e.axes[r], t[r]))
|
|
4401
4401
|
return false;
|
|
4402
4402
|
}
|
|
4403
4403
|
}
|
|
4404
|
-
if (
|
|
4405
|
-
const
|
|
4406
|
-
for (const [r, o] of Object.entries(
|
|
4407
|
-
if (
|
|
4404
|
+
if (e.annotations !== void 0) {
|
|
4405
|
+
const t = n2.annotations || {};
|
|
4406
|
+
for (const [r, o] of Object.entries(e.annotations))
|
|
4407
|
+
if (t[r] !== o)
|
|
4408
4408
|
return false;
|
|
4409
4409
|
}
|
|
4410
|
-
if (
|
|
4411
|
-
const
|
|
4412
|
-
for (const [r, o] of Object.entries(
|
|
4413
|
-
const s2 =
|
|
4410
|
+
if (e.annotationPatterns !== void 0) {
|
|
4411
|
+
const t = n2.annotations || {};
|
|
4412
|
+
for (const [r, o] of Object.entries(e.annotationPatterns)) {
|
|
4413
|
+
const s2 = t[r];
|
|
4414
4414
|
if (s2 === void 0 || !new RegExp(o).test(s2))
|
|
4415
4415
|
return false;
|
|
4416
4416
|
}
|
|
4417
4417
|
}
|
|
4418
4418
|
return true;
|
|
4419
4419
|
}
|
|
4420
|
-
function
|
|
4421
|
-
return Array.isArray(n2) ? (
|
|
4420
|
+
function Gn(n2) {
|
|
4421
|
+
return Array.isArray(n2) ? (e) => n2.some((t) => f(e) && N(e, t)) : (e) => f(e) && N(e, n2);
|
|
4422
|
+
}
|
|
4423
|
+
function Qn(n2) {
|
|
4424
|
+
const e = {
|
|
4425
|
+
kind: n2.kind,
|
|
4426
|
+
name: n2.name
|
|
4427
|
+
};
|
|
4428
|
+
return n2.domain !== void 0 && (e.domain = n2.domain), f(n2) && (e.axesSpec = J(n2.axesSpec)), ke(e);
|
|
4422
4429
|
}
|
|
4423
4430
|
z$1.object({
|
|
4424
4431
|
__isRef: z$1.literal(true).describe("Crucial marker for the block dependency tree reconstruction"),
|
|
4425
4432
|
blockId: z$1.string().describe("Upstream block id"),
|
|
4426
|
-
name: z$1.string().describe("Name of the output provided to the upstream block's output context")
|
|
4433
|
+
name: z$1.string().describe("Name of the output provided to the upstream block's output context"),
|
|
4434
|
+
requireEnrichments: z$1.literal(true).optional().describe("True if current block that stores this reference in its args, may need enrichments for the references value originating from the blocks in between current and referenced block")
|
|
4427
4435
|
}).describe(
|
|
4428
4436
|
"Universal reference type, allowing to set block connections. It is crucial that {@link __isRef} is present and equal to true, internal logic relies on this marker to build block dependency trees."
|
|
4429
|
-
).
|
|
4430
|
-
function
|
|
4437
|
+
).readonly();
|
|
4438
|
+
function ne(n2) {
|
|
4431
4439
|
return typeof n2 == "object" && n2 !== null && "__isRef" in n2 && n2.__isRef === true && "blockId" in n2 && "name" in n2;
|
|
4432
4440
|
}
|
|
4433
|
-
function
|
|
4434
|
-
|
|
4441
|
+
function te$1(n2, e = true) {
|
|
4442
|
+
if (e)
|
|
4443
|
+
return {
|
|
4444
|
+
...n2,
|
|
4445
|
+
requireEnrichments: true
|
|
4446
|
+
};
|
|
4447
|
+
{
|
|
4448
|
+
const { requireEnrichments: t, ...r } = n2;
|
|
4449
|
+
return r;
|
|
4450
|
+
}
|
|
4435
4451
|
}
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
|
|
4439
|
-
|
|
4452
|
+
function oe$1(n2, e) {
|
|
4453
|
+
return n2.ok ? { ok: true, value: e(n2.value) } : n2;
|
|
4454
|
+
}
|
|
4455
|
+
const fn = 24;
|
|
4456
|
+
z$1.string().length(fn).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
|
|
4457
|
+
function ue(n2) {
|
|
4458
|
+
return ke(n2);
|
|
4459
|
+
}
|
|
4460
|
+
function ce$1(n2) {
|
|
4461
|
+
return JSON.parse(n2);
|
|
4440
4462
|
}
|
|
4441
4463
|
var stringify = { exports: {} };
|
|
4442
4464
|
var hasRequiredStringify;
|
|
@@ -4479,12 +4501,12 @@
|
|
|
4479
4501
|
}), c = l.extend({
|
|
4480
4502
|
cause: z$1.lazy(() => s).optional(),
|
|
4481
4503
|
errors: z$1.lazy(() => s.array()).optional()
|
|
4482
|
-
}), m
|
|
4504
|
+
}), m = z$1.object({
|
|
4483
4505
|
type: z$1.literal("StandardError"),
|
|
4484
4506
|
name: z$1.string(),
|
|
4485
4507
|
message: z$1.string(),
|
|
4486
4508
|
stack: z$1.string().optional()
|
|
4487
|
-
}), p = m
|
|
4509
|
+
}), p = m.extend({
|
|
4488
4510
|
cause: z$1.lazy(() => s).optional(),
|
|
4489
4511
|
errors: z$1.lazy(() => s.array()).optional()
|
|
4490
4512
|
}), s = z$1.union([p, c]);
|
|
@@ -4497,54 +4519,54 @@
|
|
|
4497
4519
|
cause: z$1.lazy(() => n).optional(),
|
|
4498
4520
|
errors: z$1.lazy(() => n.array()).optional()
|
|
4499
4521
|
});
|
|
4500
|
-
var
|
|
4501
|
-
var
|
|
4502
|
-
var
|
|
4503
|
-
function
|
|
4522
|
+
var qe = Object.defineProperty;
|
|
4523
|
+
var ze = (t, e, n2) => e in t ? qe(t, e, { enumerable: true, configurable: true, writable: true, value: n2 }) : t[e] = n2;
|
|
4524
|
+
var O = (t, e, n2) => ze(t, typeof e != "symbol" ? e + "" : e, n2);
|
|
4525
|
+
function re(t) {
|
|
4504
4526
|
return { type: "Immediate", value: t };
|
|
4505
4527
|
}
|
|
4506
|
-
function
|
|
4528
|
+
function pt() {
|
|
4507
4529
|
return typeof globalThis.getPlatforma < "u" || typeof globalThis.platforma < "u";
|
|
4508
4530
|
}
|
|
4509
|
-
function
|
|
4531
|
+
function De(t) {
|
|
4510
4532
|
if (t && typeof globalThis.getPlatforma == "function")
|
|
4511
4533
|
return globalThis.getPlatforma(t);
|
|
4512
4534
|
if (typeof globalThis.platforma < "u") return globalThis.platforma;
|
|
4513
4535
|
throw new Error("Can't get platforma instance.");
|
|
4514
4536
|
}
|
|
4515
|
-
function
|
|
4537
|
+
function ft() {
|
|
4516
4538
|
if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
|
|
4517
4539
|
}
|
|
4518
|
-
function
|
|
4540
|
+
function y() {
|
|
4519
4541
|
if (typeof globalThis.cfgRenderCtx < "u") return globalThis.cfgRenderCtx;
|
|
4520
4542
|
throw new Error("Not in config rendering context");
|
|
4521
4543
|
}
|
|
4522
|
-
function
|
|
4523
|
-
const n2 =
|
|
4544
|
+
function H(t, e) {
|
|
4545
|
+
const n2 = ft();
|
|
4524
4546
|
if (n2 === void 0) return false;
|
|
4525
4547
|
if (t in n2.callbackRegistry) throw new Error(`Callback with key ${t} already registered.`);
|
|
4526
4548
|
return n2.callbackRegistry[t] = e, true;
|
|
4527
4549
|
}
|
|
4528
|
-
const
|
|
4529
|
-
function
|
|
4530
|
-
t in
|
|
4531
|
-
for (const r of
|
|
4550
|
+
const ce = /* @__PURE__ */ new Map();
|
|
4551
|
+
function ht(t, e) {
|
|
4552
|
+
t in y().callbackRegistry || (y().callbackRegistry[t] = (n2) => {
|
|
4553
|
+
for (const r of ce.get(t))
|
|
4532
4554
|
r(n2);
|
|
4533
|
-
},
|
|
4555
|
+
}, ce.set(t, [])), ce.get(t).push(e);
|
|
4534
4556
|
}
|
|
4535
|
-
class
|
|
4557
|
+
class _ {
|
|
4536
4558
|
constructor(e, n2 = (r) => r) {
|
|
4537
|
-
|
|
4538
|
-
|
|
4539
|
-
this.handle = e, this.postProcess = n2,
|
|
4559
|
+
O(this, "isResolved", false);
|
|
4560
|
+
O(this, "resolvedValue");
|
|
4561
|
+
this.handle = e, this.postProcess = n2, ht(e, (r) => {
|
|
4540
4562
|
this.resolvedValue = n2(r), this.isResolved = true;
|
|
4541
4563
|
});
|
|
4542
4564
|
}
|
|
4543
4565
|
map(e) {
|
|
4544
|
-
return new
|
|
4566
|
+
return new _(this.handle, (n2) => e(this.postProcess(n2)));
|
|
4545
4567
|
}
|
|
4546
4568
|
mapDefined(e) {
|
|
4547
|
-
return new
|
|
4569
|
+
return new _(this.handle, (n2) => {
|
|
4548
4570
|
const r = this.postProcess(n2);
|
|
4549
4571
|
return r ? e(r) : void 0;
|
|
4550
4572
|
});
|
|
@@ -4553,10 +4575,10 @@
|
|
|
4553
4575
|
return this.isResolved ? this.resolvedValue : { __awaited_futures__: [this.handle] };
|
|
4554
4576
|
}
|
|
4555
4577
|
}
|
|
4556
|
-
function
|
|
4578
|
+
function he(t, e) {
|
|
4557
4579
|
return t === void 0 ? void 0 : e(t);
|
|
4558
4580
|
}
|
|
4559
|
-
class
|
|
4581
|
+
class E {
|
|
4560
4582
|
constructor(e, n2) {
|
|
4561
4583
|
this.handle = e, this.resolvePath = n2;
|
|
4562
4584
|
}
|
|
@@ -4595,47 +4617,47 @@
|
|
|
4595
4617
|
...this.resolvePath,
|
|
4596
4618
|
...n2.map((i) => typeof i == "string" ? i : i.field)
|
|
4597
4619
|
];
|
|
4598
|
-
return
|
|
4599
|
-
|
|
4600
|
-
(i) => new
|
|
4620
|
+
return he(
|
|
4621
|
+
y().resolveWithCommon(this.handle, e, ...n2),
|
|
4622
|
+
(i) => new E(i, r)
|
|
4601
4623
|
);
|
|
4602
4624
|
}
|
|
4603
4625
|
get resourceType() {
|
|
4604
|
-
return
|
|
4626
|
+
return y().getResourceType(this.handle);
|
|
4605
4627
|
}
|
|
4606
4628
|
getInputsLocked() {
|
|
4607
|
-
return
|
|
4629
|
+
return y().getInputsLocked(this.handle);
|
|
4608
4630
|
}
|
|
4609
4631
|
getOutputsLocked() {
|
|
4610
|
-
return
|
|
4632
|
+
return y().getOutputsLocked(this.handle);
|
|
4611
4633
|
}
|
|
4612
4634
|
getIsReadyOrError() {
|
|
4613
|
-
return
|
|
4635
|
+
return y().getIsReadyOrError(this.handle);
|
|
4614
4636
|
}
|
|
4615
4637
|
getIsFinal() {
|
|
4616
|
-
return
|
|
4638
|
+
return y().getIsFinal(this.handle);
|
|
4617
4639
|
}
|
|
4618
4640
|
getError() {
|
|
4619
4641
|
const e = [...this.resolvePath, "error"];
|
|
4620
|
-
return
|
|
4621
|
-
|
|
4622
|
-
(n2) => new
|
|
4642
|
+
return he(
|
|
4643
|
+
y().getError(this.handle),
|
|
4644
|
+
(n2) => new E(n2, e)
|
|
4623
4645
|
);
|
|
4624
4646
|
}
|
|
4625
4647
|
listInputFields() {
|
|
4626
|
-
return
|
|
4648
|
+
return y().listInputFields(this.handle);
|
|
4627
4649
|
}
|
|
4628
4650
|
listOutputFields() {
|
|
4629
|
-
return
|
|
4651
|
+
return y().listOutputFields(this.handle);
|
|
4630
4652
|
}
|
|
4631
4653
|
listDynamicFields() {
|
|
4632
|
-
return
|
|
4654
|
+
return y().listDynamicFields(this.handle);
|
|
4633
4655
|
}
|
|
4634
4656
|
getKeyValueBase64(e) {
|
|
4635
|
-
return
|
|
4657
|
+
return y().getKeyValueBase64(this.handle, e);
|
|
4636
4658
|
}
|
|
4637
4659
|
getKeyValueAsString(e) {
|
|
4638
|
-
return
|
|
4660
|
+
return y().getKeyValueAsString(this.handle, e);
|
|
4639
4661
|
}
|
|
4640
4662
|
getKeyValueAsJson(e) {
|
|
4641
4663
|
const n2 = this.getKeyValueAsString(e);
|
|
@@ -4643,10 +4665,10 @@
|
|
|
4643
4665
|
return JSON.parse(n2);
|
|
4644
4666
|
}
|
|
4645
4667
|
getDataBase64() {
|
|
4646
|
-
return
|
|
4668
|
+
return y().getDataBase64(this.handle);
|
|
4647
4669
|
}
|
|
4648
4670
|
getDataAsString() {
|
|
4649
|
-
return
|
|
4671
|
+
return y().getDataAsString(this.handle);
|
|
4650
4672
|
}
|
|
4651
4673
|
getDataAsJson() {
|
|
4652
4674
|
const e = this.getDataAsString();
|
|
@@ -4659,7 +4681,7 @@
|
|
|
4659
4681
|
getPColumns(e = false, n2 = "") {
|
|
4660
4682
|
const r = this.parsePObjectCollection(e, n2);
|
|
4661
4683
|
return r === void 0 ? void 0 : Object.entries(r).map(([, s2]) => {
|
|
4662
|
-
if (!
|
|
4684
|
+
if (!rn(s2)) throw new Error(`not a PColumn (kind = ${s2.spec.kind})`);
|
|
4663
4685
|
return s2;
|
|
4664
4686
|
});
|
|
4665
4687
|
}
|
|
@@ -4667,7 +4689,7 @@
|
|
|
4667
4689
|
*
|
|
4668
4690
|
*/
|
|
4669
4691
|
parsePObjectCollection(e = false, n2 = "") {
|
|
4670
|
-
const r =
|
|
4692
|
+
const r = y().parsePObjectCollection(
|
|
4671
4693
|
this.handle,
|
|
4672
4694
|
e,
|
|
4673
4695
|
n2,
|
|
@@ -4677,20 +4699,20 @@
|
|
|
4677
4699
|
const i = {};
|
|
4678
4700
|
for (const [s2, o] of Object.entries(r)) {
|
|
4679
4701
|
const a = [...this.resolvePath, s2];
|
|
4680
|
-
i[s2] =
|
|
4702
|
+
i[s2] = Wn(o, (l2) => new E(l2, a));
|
|
4681
4703
|
}
|
|
4682
4704
|
return i;
|
|
4683
4705
|
}
|
|
4684
|
-
getFileContentAsBase64() {
|
|
4685
|
-
return new
|
|
4706
|
+
getFileContentAsBase64(e) {
|
|
4707
|
+
return new _(y().getBlobContentAsBase64(this.handle, e));
|
|
4686
4708
|
}
|
|
4687
|
-
getFileContentAsString() {
|
|
4688
|
-
return new
|
|
4709
|
+
getFileContentAsString(e) {
|
|
4710
|
+
return new _(y().getBlobContentAsString(this.handle, e));
|
|
4689
4711
|
}
|
|
4690
|
-
getFileContentAsJson() {
|
|
4691
|
-
return new
|
|
4692
|
-
|
|
4693
|
-
).mapDefined((
|
|
4712
|
+
getFileContentAsJson(e) {
|
|
4713
|
+
return new _(
|
|
4714
|
+
y().getBlobContentAsString(this.handle, e)
|
|
4715
|
+
).mapDefined((n2) => JSON.parse(n2));
|
|
4694
4716
|
}
|
|
4695
4717
|
/**
|
|
4696
4718
|
* @deprecated use getFileContentAsBase64
|
|
@@ -4708,7 +4730,7 @@
|
|
|
4708
4730
|
* @returns downloaded file handle
|
|
4709
4731
|
*/
|
|
4710
4732
|
getFileHandle() {
|
|
4711
|
-
return new
|
|
4733
|
+
return new _(y().getDownloadedBlobContentHandle(this.handle));
|
|
4712
4734
|
}
|
|
4713
4735
|
/**
|
|
4714
4736
|
* @deprecated use getFileHandle
|
|
@@ -4720,7 +4742,7 @@
|
|
|
4720
4742
|
* @returns downloaded file handle
|
|
4721
4743
|
*/
|
|
4722
4744
|
getRemoteFileHandle() {
|
|
4723
|
-
return new
|
|
4745
|
+
return new _(y().getOnDemandBlobContentHandle(this.handle));
|
|
4724
4746
|
}
|
|
4725
4747
|
/**
|
|
4726
4748
|
* @deprecated use getRemoteFileHandle
|
|
@@ -4732,22 +4754,22 @@
|
|
|
4732
4754
|
* @returns the url to the extracted folder
|
|
4733
4755
|
*/
|
|
4734
4756
|
extractArchiveAndGetURL(e) {
|
|
4735
|
-
return new
|
|
4757
|
+
return new _(y().extractArchiveAndGetURL(this.handle, e));
|
|
4736
4758
|
}
|
|
4737
4759
|
getImportProgress() {
|
|
4738
|
-
return new
|
|
4760
|
+
return new _(y().getImportProgress(this.handle));
|
|
4739
4761
|
}
|
|
4740
4762
|
getLastLogs(e) {
|
|
4741
|
-
return new
|
|
4763
|
+
return new _(y().getLastLogs(this.handle, e));
|
|
4742
4764
|
}
|
|
4743
4765
|
getProgressLog(e) {
|
|
4744
|
-
return new
|
|
4766
|
+
return new _(y().getProgressLog(this.handle, e));
|
|
4745
4767
|
}
|
|
4746
4768
|
getProgressLogWithInfo(e) {
|
|
4747
|
-
return new
|
|
4769
|
+
return new _(y().getProgressLogWithInfo(this.handle, e));
|
|
4748
4770
|
}
|
|
4749
4771
|
getLogHandle() {
|
|
4750
|
-
return new
|
|
4772
|
+
return new _(y().getLogHandle(this.handle));
|
|
4751
4773
|
}
|
|
4752
4774
|
allFieldsResolved(e = "Input") {
|
|
4753
4775
|
switch (e) {
|
|
@@ -4773,134 +4795,135 @@
|
|
|
4773
4795
|
let l2 = (r === "Input" ? this.listInputFields() : r === "Output" ? this.listOutputFields() : this.listDynamicFields()).map(
|
|
4774
4796
|
(u2) => [u2, this.resolve({ field: u2, assertFieldType: r })]
|
|
4775
4797
|
);
|
|
4776
|
-
return s2 && (l2 = l2.filter((u2) => u2[1] !== void 0)), l2.map(([u2,
|
|
4798
|
+
return s2 && (l2 = l2.filter((u2) => u2[1] !== void 0)), l2.map(([u2, c2]) => o(u2, c2));
|
|
4777
4799
|
}
|
|
4778
4800
|
}
|
|
4779
|
-
const
|
|
4780
|
-
const
|
|
4801
|
+
const Re = "staging", Fe = "main";
|
|
4802
|
+
const yt = "pl7.app/label", vt = "pl7.app/trace", bt = z$1.object({
|
|
4781
4803
|
type: z$1.string(),
|
|
4782
4804
|
importance: z$1.number().optional(),
|
|
4783
4805
|
id: z$1.string().optional(),
|
|
4784
4806
|
label: z$1.string()
|
|
4785
|
-
}),
|
|
4786
|
-
function
|
|
4787
|
-
const r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(),
|
|
4788
|
-
var
|
|
4789
|
-
const
|
|
4790
|
-
let
|
|
4791
|
-
"spec" in
|
|
4792
|
-
const
|
|
4793
|
-
...
|
|
4794
|
-
...
|
|
4795
|
-
...
|
|
4807
|
+
}), wt = z$1.array(bt), At = 1e-3, xt = "__LABEL__", Pe = "__LABEL__@1";
|
|
4808
|
+
function je(t, e, n2 = {}) {
|
|
4809
|
+
const r = /* @__PURE__ */ new Map(), i = n2.forceTraceElements !== void 0 && n2.forceTraceElements.length > 0 ? new Set(n2.forceTraceElements) : void 0, s2 = /* @__PURE__ */ new Map(), o = t.map((p2) => {
|
|
4810
|
+
var P2, R;
|
|
4811
|
+
const v = e(p2);
|
|
4812
|
+
let f2, m2, w2;
|
|
4813
|
+
"spec" in v && typeof v.spec == "object" ? (f2 = v.spec, m2 = v.prefixTrace, w2 = v.suffixTrace) : f2 = v;
|
|
4814
|
+
const h2 = (P2 = f2.annotations) == null ? void 0 : P2[yt], I = (R = f2.annotations) == null ? void 0 : R[vt], x = (I ? wt.safeParse(JSON.parse(I)).data : void 0) ?? [], b = [
|
|
4815
|
+
...m2 ?? [],
|
|
4816
|
+
...x,
|
|
4817
|
+
...w2 ?? []
|
|
4796
4818
|
];
|
|
4797
|
-
if (
|
|
4798
|
-
const
|
|
4799
|
-
n2.addLabelAsSuffix ?
|
|
4800
|
-
}
|
|
4801
|
-
const
|
|
4802
|
-
for (let
|
|
4803
|
-
const { type:
|
|
4804
|
-
|
|
4805
|
-
const
|
|
4806
|
-
|
|
4807
|
-
|
|
4819
|
+
if (h2 !== void 0) {
|
|
4820
|
+
const k2 = { label: h2, type: xt, importance: -2 };
|
|
4821
|
+
n2.addLabelAsSuffix ? b.push(k2) : b.splice(0, 0, k2);
|
|
4822
|
+
}
|
|
4823
|
+
const A = [], L = /* @__PURE__ */ new Map();
|
|
4824
|
+
for (let k2 = b.length - 1; k2 >= 0; --k2) {
|
|
4825
|
+
const { type: W } = b[k2], V = b[k2].importance ?? 0, N2 = (L.get(W) ?? 0) + 1;
|
|
4826
|
+
L.set(W, N2);
|
|
4827
|
+
const F = `${W}@${N2}`;
|
|
4828
|
+
s2.set(F, (s2.get(F) ?? 0) + 1), r.set(
|
|
4829
|
+
F,
|
|
4808
4830
|
Math.max(
|
|
4809
|
-
r.get(
|
|
4810
|
-
|
|
4831
|
+
r.get(F) ?? Number.NEGATIVE_INFINITY,
|
|
4832
|
+
V - (b.length - k2) * At
|
|
4811
4833
|
)
|
|
4812
|
-
),
|
|
4834
|
+
), A.push({ ...b[k2], fullType: F, occurrenceIndex: N2 });
|
|
4813
4835
|
}
|
|
4814
|
-
return
|
|
4815
|
-
value:
|
|
4816
|
-
spec:
|
|
4817
|
-
label:
|
|
4818
|
-
fullTrace:
|
|
4836
|
+
return A.reverse(), {
|
|
4837
|
+
value: p2,
|
|
4838
|
+
spec: f2,
|
|
4839
|
+
label: h2,
|
|
4840
|
+
fullTrace: A
|
|
4819
4841
|
};
|
|
4820
|
-
}),
|
|
4821
|
-
|
|
4822
|
-
for (const [
|
|
4823
|
-
|
|
4824
|
-
const
|
|
4825
|
-
const
|
|
4826
|
-
for (let
|
|
4827
|
-
const
|
|
4828
|
-
if (
|
|
4829
|
-
|
|
4830
|
-
|
|
4831
|
-
|
|
4832
|
-
|
|
4833
|
-
|
|
4842
|
+
}), a = [], l2 = [], u2 = [...r];
|
|
4843
|
+
u2.sort(([, p2], [, v]) => v - p2);
|
|
4844
|
+
for (const [p2] of u2)
|
|
4845
|
+
p2.endsWith("@1") || s2.get(p2) === t.length ? a.push(p2) : l2.push(p2);
|
|
4846
|
+
const c2 = (p2, v = false) => {
|
|
4847
|
+
const f2 = [];
|
|
4848
|
+
for (let m2 = 0; m2 < o.length; m2++) {
|
|
4849
|
+
const w2 = o[m2], h2 = w2.fullTrace.filter((b) => p2.has(b.fullType) || i && i.has(b.type));
|
|
4850
|
+
if (h2.length === 0)
|
|
4851
|
+
if (v)
|
|
4852
|
+
f2.push({
|
|
4853
|
+
label: "Unlabeled",
|
|
4854
|
+
value: w2.value
|
|
4855
|
+
});
|
|
4856
|
+
else return;
|
|
4857
|
+
const I = h2.map((b) => b.label), x = n2.separator ?? " / ";
|
|
4858
|
+
f2.push({
|
|
4859
|
+
label: I.join(x),
|
|
4860
|
+
value: w2.value
|
|
4834
4861
|
});
|
|
4835
4862
|
}
|
|
4836
|
-
return h;
|
|
4837
|
-
};
|
|
4838
|
-
if (o.length === 0) {
|
|
4839
|
-
if (a.length !== 0) throw new Error("Assertion error.");
|
|
4840
|
-
const f2 = u2(new Set(Ae));
|
|
4841
|
-
if (f2 === void 0) throw new Error("Assertion error.");
|
|
4842
4863
|
return f2;
|
|
4864
|
+
};
|
|
4865
|
+
if (a.length === 0) {
|
|
4866
|
+
if (l2.length !== 0) throw new Error("Non-empty secondary types list while main types list is empty.");
|
|
4867
|
+
return c2(new Set(Pe), true);
|
|
4843
4868
|
}
|
|
4844
|
-
let
|
|
4845
|
-
for (;
|
|
4846
|
-
const
|
|
4847
|
-
n2.includeNativeLabel &&
|
|
4848
|
-
for (let
|
|
4849
|
-
|
|
4850
|
-
const
|
|
4851
|
-
if (
|
|
4852
|
-
|
|
4853
|
-
}
|
|
4854
|
-
|
|
4855
|
-
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
const H = "PColumnData/", ne = H + "ResourceMap", re = H + "Partitioned/ResourceMap", B = H + "JsonPartitioned", K = H + "BinaryPartitioned", Re = H + "Partitioned/", ie = Re + "JsonPartitioned", U = Re + "BinaryPartitioned";
|
|
4859
|
-
const fe = (t) => {
|
|
4869
|
+
let d = 0, g = -1;
|
|
4870
|
+
for (; d < a.length; ) {
|
|
4871
|
+
const p2 = /* @__PURE__ */ new Set();
|
|
4872
|
+
n2.includeNativeLabel && p2.add(Pe);
|
|
4873
|
+
for (let f2 = 0; f2 < d; ++f2) p2.add(a[f2]);
|
|
4874
|
+
g >= 0 && p2.add(a[g]);
|
|
4875
|
+
const v = c2(p2);
|
|
4876
|
+
if (v !== void 0 && new Set(v.map((f2) => f2.label)).size === t.length) return v;
|
|
4877
|
+
g++, g >= a.length && (d++, g = d);
|
|
4878
|
+
}
|
|
4879
|
+
return c2(/* @__PURE__ */ new Set([...a, ...l2]), true);
|
|
4880
|
+
}
|
|
4881
|
+
const Z = "PColumnData/", se = Z + "ResourceMap", oe = Z + "Partitioned/ResourceMap", q = Z + "JsonPartitioned", B = Z + "BinaryPartitioned", Ve = Z + "Partitioned/", ae = Ve + "JsonPartitioned", z = Ve + "BinaryPartitioned";
|
|
4882
|
+
const me = (t) => {
|
|
4860
4883
|
if (t.endsWith(".index"))
|
|
4861
4884
|
return { baseKey: t.substring(0, t.length - 6), type: "index" };
|
|
4862
4885
|
if (t.endsWith(".values"))
|
|
4863
4886
|
return { baseKey: t.substring(0, t.length - 7), type: "values" };
|
|
4864
4887
|
throw new Error(`key must ends on .index/.values for binary p-column, got: ${t}`);
|
|
4865
4888
|
};
|
|
4866
|
-
function
|
|
4889
|
+
function Ct(t) {
|
|
4867
4890
|
if (!t) return;
|
|
4868
4891
|
const e = t.resourceType.name, n2 = t.getDataAsJson(), r = [];
|
|
4869
4892
|
let i = 0;
|
|
4870
4893
|
switch (e) {
|
|
4871
|
-
case
|
|
4894
|
+
case se:
|
|
4872
4895
|
i = n2.keyLength;
|
|
4873
4896
|
break;
|
|
4874
|
-
case
|
|
4897
|
+
case oe:
|
|
4875
4898
|
i = n2.partitionKeyLength + n2.keyLength;
|
|
4876
4899
|
break;
|
|
4900
|
+
case q:
|
|
4877
4901
|
case B:
|
|
4878
|
-
case K:
|
|
4879
4902
|
i = n2.partitionKeyLength;
|
|
4880
4903
|
break;
|
|
4881
|
-
case
|
|
4882
|
-
case
|
|
4904
|
+
case z:
|
|
4905
|
+
case ae:
|
|
4883
4906
|
i = n2.superPartitionKeyLength + n2.partitionKeyLength;
|
|
4884
4907
|
break;
|
|
4885
4908
|
}
|
|
4886
4909
|
switch (e) {
|
|
4887
|
-
case
|
|
4910
|
+
case se:
|
|
4911
|
+
case q:
|
|
4888
4912
|
case B:
|
|
4889
|
-
case K:
|
|
4890
4913
|
for (let s2 of t.listInputFields()) {
|
|
4891
|
-
e ===
|
|
4914
|
+
e === B && (s2 = me(s2).baseKey);
|
|
4892
4915
|
const o = [...JSON.parse(s2)];
|
|
4893
4916
|
r.push(o);
|
|
4894
4917
|
}
|
|
4895
4918
|
break;
|
|
4896
|
-
case
|
|
4897
|
-
case
|
|
4898
|
-
case
|
|
4919
|
+
case oe:
|
|
4920
|
+
case z:
|
|
4921
|
+
case ae:
|
|
4899
4922
|
for (const s2 of t.listInputFields()) {
|
|
4900
4923
|
const o = [...JSON.parse(s2)], a = t.resolve({ field: s2, assertFieldType: "Input" });
|
|
4901
4924
|
if (a !== void 0)
|
|
4902
4925
|
for (let l2 of a.listInputFields()) {
|
|
4903
|
-
e ===
|
|
4926
|
+
e === z && (l2 = me(l2).baseKey);
|
|
4904
4927
|
const u2 = [...o, ...JSON.parse(l2)];
|
|
4905
4928
|
r.push(u2);
|
|
4906
4929
|
}
|
|
@@ -4909,7 +4932,7 @@
|
|
|
4909
4932
|
}
|
|
4910
4933
|
return { data: r, keyLength: i };
|
|
4911
4934
|
}
|
|
4912
|
-
function
|
|
4935
|
+
function Pt(t) {
|
|
4913
4936
|
if (t.type !== "JsonPartitioned" && t.type !== "BinaryPartitioned")
|
|
4914
4937
|
throw new Error(`Splitting requires Partitioned DataInfoEntries, got ${t.type}`);
|
|
4915
4938
|
const { parts: e, partitionKeyLength: n2 } = t, r = [];
|
|
@@ -4928,11 +4951,11 @@
|
|
|
4928
4951
|
}
|
|
4929
4952
|
return r.map((i) => Array.from(i.values()));
|
|
4930
4953
|
}
|
|
4931
|
-
function
|
|
4954
|
+
function St(t) {
|
|
4932
4955
|
if (t === void 0) return;
|
|
4933
|
-
if (
|
|
4934
|
-
return
|
|
4935
|
-
const e =
|
|
4956
|
+
if (K(t))
|
|
4957
|
+
return Pt(t);
|
|
4958
|
+
const e = Ct(t);
|
|
4936
4959
|
if (!e) return;
|
|
4937
4960
|
const { data: n2, keyLength: r } = e, i = [];
|
|
4938
4961
|
for (let s2 = 0; s2 < r; ++s2)
|
|
@@ -4945,16 +4968,16 @@
|
|
|
4945
4968
|
}
|
|
4946
4969
|
return i.map((s2) => Array.from(s2.values()));
|
|
4947
4970
|
}
|
|
4948
|
-
function
|
|
4971
|
+
function ye(t, e = []) {
|
|
4949
4972
|
if (t === void 0 || !t.getIsReadyOrError()) return;
|
|
4950
4973
|
const n2 = t.resourceType.name, r = t.getDataAsJson();
|
|
4951
|
-
if (e.length > 0 && (n2 ===
|
|
4974
|
+
if (e.length > 0 && (n2 === ae || n2 === z))
|
|
4952
4975
|
throw new Error(`Unexpected nested super-partitioned resource: ${n2}`);
|
|
4953
4976
|
switch (n2) {
|
|
4954
|
-
case
|
|
4955
|
-
case
|
|
4977
|
+
case se:
|
|
4978
|
+
case oe:
|
|
4956
4979
|
throw new Error(`Only data columns are supported, got: ${n2}`);
|
|
4957
|
-
case
|
|
4980
|
+
case q: {
|
|
4958
4981
|
if (typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
4959
4982
|
throw new Error(`Missing partitionKeyLength in metadata for ${n2}`);
|
|
4960
4983
|
const i = [];
|
|
@@ -4970,12 +4993,12 @@
|
|
|
4970
4993
|
parts: i
|
|
4971
4994
|
};
|
|
4972
4995
|
}
|
|
4973
|
-
case
|
|
4996
|
+
case B: {
|
|
4974
4997
|
if (typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
4975
4998
|
throw new Error(`Missing partitionKeyLength in metadata for ${n2}`);
|
|
4976
4999
|
const i = [], s2 = /* @__PURE__ */ new Map();
|
|
4977
5000
|
for (const o of t.listInputFields()) {
|
|
4978
|
-
const a =
|
|
5001
|
+
const a = me(o), l2 = t.resolve({ field: o, assertFieldType: "Input" });
|
|
4979
5002
|
if (l2 === void 0) return;
|
|
4980
5003
|
let u2 = s2.get(a.baseKey);
|
|
4981
5004
|
u2 || (u2 = {}, s2.set(a.baseKey, u2)), a.type === "index" ? u2.index = l2 : u2.values = l2;
|
|
@@ -4997,16 +5020,16 @@
|
|
|
4997
5020
|
parts: i
|
|
4998
5021
|
};
|
|
4999
5022
|
}
|
|
5000
|
-
case
|
|
5023
|
+
case ae: {
|
|
5001
5024
|
if (typeof (r == null ? void 0 : r.superPartitionKeyLength) != "number" || typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
5002
5025
|
throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n2}`);
|
|
5003
5026
|
const i = r.superPartitionKeyLength + r.partitionKeyLength, s2 = [];
|
|
5004
5027
|
for (const o of t.listInputFields()) {
|
|
5005
5028
|
const a = t.resolve({ field: o, assertFieldType: "Input" });
|
|
5006
5029
|
if (a === void 0) return;
|
|
5007
|
-
if (a.resourceType.name !==
|
|
5008
|
-
throw new Error(`Expected ${
|
|
5009
|
-
const l2 =
|
|
5030
|
+
if (a.resourceType.name !== q)
|
|
5031
|
+
throw new Error(`Expected ${q} inside ${n2}, but got ${a.resourceType.name}`);
|
|
5032
|
+
const l2 = ye(a, JSON.parse(o));
|
|
5010
5033
|
if (l2 === void 0) return;
|
|
5011
5034
|
if (l2.type !== "JsonPartitioned")
|
|
5012
5035
|
throw new Error(`Unexpected inner result type for ${n2}: ${l2.type}`);
|
|
@@ -5018,16 +5041,16 @@
|
|
|
5018
5041
|
parts: s2
|
|
5019
5042
|
};
|
|
5020
5043
|
}
|
|
5021
|
-
case
|
|
5044
|
+
case z: {
|
|
5022
5045
|
if (typeof (r == null ? void 0 : r.superPartitionKeyLength) != "number" || typeof (r == null ? void 0 : r.partitionKeyLength) != "number")
|
|
5023
5046
|
throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n2}`);
|
|
5024
5047
|
const i = r.superPartitionKeyLength + r.partitionKeyLength, s2 = [];
|
|
5025
5048
|
for (const o of t.listInputFields()) {
|
|
5026
5049
|
const a = t.resolve({ field: o, assertFieldType: "Input" });
|
|
5027
5050
|
if (a === void 0) return;
|
|
5028
|
-
if (a.resourceType.name !==
|
|
5029
|
-
throw new Error(`Expected ${
|
|
5030
|
-
const l2 =
|
|
5051
|
+
if (a.resourceType.name !== B)
|
|
5052
|
+
throw new Error(`Expected ${B} inside ${n2}, but got ${a.resourceType.name}`);
|
|
5053
|
+
const l2 = ye(a, JSON.parse(o));
|
|
5031
5054
|
if (l2 === void 0) return;
|
|
5032
5055
|
if (l2.type !== "BinaryPartitioned")
|
|
5033
5056
|
throw new Error(`Unexpected inner result type for ${n2}: ${l2.type}`);
|
|
@@ -5043,15 +5066,15 @@
|
|
|
5043
5066
|
throw new Error(`Unknown resource type: ${n2}`);
|
|
5044
5067
|
}
|
|
5045
5068
|
}
|
|
5046
|
-
function
|
|
5069
|
+
function _t(t) {
|
|
5047
5070
|
if (t !== void 0) {
|
|
5048
|
-
if (
|
|
5049
|
-
if (
|
|
5050
|
-
if (t instanceof
|
|
5071
|
+
if (K(t)) return t;
|
|
5072
|
+
if (En(t)) return Cn(t);
|
|
5073
|
+
if (t instanceof E) return ye(t);
|
|
5051
5074
|
throw new Error(`Unexpected input type: ${typeof t}`);
|
|
5052
5075
|
}
|
|
5053
5076
|
}
|
|
5054
|
-
function
|
|
5077
|
+
function It(t, e) {
|
|
5055
5078
|
const n2 = [...e].sort((s2, o) => o[0] - s2[0]);
|
|
5056
5079
|
if (t.type === "JsonPartitioned" || t.type === "BinaryPartitioned") {
|
|
5057
5080
|
const { partitionKeyLength: s2 } = t;
|
|
@@ -5111,39 +5134,45 @@
|
|
|
5111
5134
|
}
|
|
5112
5135
|
}
|
|
5113
5136
|
}
|
|
5114
|
-
|
|
5137
|
+
function Lt(t) {
|
|
5138
|
+
if (!Array.isArray(t)) return false;
|
|
5139
|
+
if (t.length === 0) return true;
|
|
5140
|
+
const e = t[0];
|
|
5141
|
+
return typeof e == "object" && e !== null && "key" in e && "val" in e;
|
|
5142
|
+
}
|
|
5143
|
+
class Tt {
|
|
5115
5144
|
constructor(e) {
|
|
5116
5145
|
this.columns = e;
|
|
5117
5146
|
}
|
|
5118
5147
|
selectColumns(e) {
|
|
5119
|
-
const n2 = typeof e == "function" ? e :
|
|
5148
|
+
const n2 = typeof e == "function" ? e : Gn(e);
|
|
5120
5149
|
return this.columns.filter((r) => n2(r.spec));
|
|
5121
5150
|
}
|
|
5122
5151
|
}
|
|
5123
|
-
function
|
|
5152
|
+
function Et(t) {
|
|
5124
5153
|
if (t)
|
|
5125
5154
|
return t.map((e) => ({
|
|
5126
|
-
type: `split:${
|
|
5155
|
+
type: `split:${Rn(e.axisId)}`,
|
|
5127
5156
|
label: e.label,
|
|
5128
5157
|
importance: 1e6
|
|
5129
5158
|
// High importance for split filters in labels
|
|
5130
5159
|
}));
|
|
5131
5160
|
}
|
|
5132
|
-
function
|
|
5161
|
+
function kt(t) {
|
|
5133
5162
|
if (t)
|
|
5134
5163
|
return t.map((e) => [e.axisIdx, e.value]);
|
|
5135
5164
|
}
|
|
5136
|
-
function
|
|
5165
|
+
function Ot(t, e) {
|
|
5137
5166
|
if (!e || e.length === 0) return t;
|
|
5138
5167
|
const n2 = [...e].sort((r, i) => r[0] - i[0]);
|
|
5139
|
-
return
|
|
5168
|
+
return ke({ id: t, axisFilters: n2 });
|
|
5140
5169
|
}
|
|
5141
|
-
function
|
|
5170
|
+
function Se(t) {
|
|
5142
5171
|
if (!t || typeof t != "object") return false;
|
|
5143
5172
|
const e = t, n2 = 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);
|
|
5144
5173
|
return !!e.domainAnchor || n2 || r;
|
|
5145
5174
|
}
|
|
5146
|
-
function
|
|
5175
|
+
function Dt(t) {
|
|
5147
5176
|
if (typeof t != "object" || !("axes" in t) || t.axes === void 0)
|
|
5148
5177
|
return [];
|
|
5149
5178
|
const e = t.axes.map((n2, r) => typeof n2 == "object" && "split" in n2 && n2.split === true ? r : -1).filter((n2) => n2 !== -1);
|
|
@@ -5151,11 +5180,11 @@
|
|
|
5151
5180
|
throw new Error("Axis splitting is not supported when `partialAxesMatch` is defined.");
|
|
5152
5181
|
return e.sort((n2, r) => n2 - r), e;
|
|
5153
5182
|
}
|
|
5154
|
-
class
|
|
5183
|
+
class le {
|
|
5155
5184
|
constructor() {
|
|
5156
|
-
|
|
5157
|
-
|
|
5158
|
-
|
|
5185
|
+
O(this, "defaultProviderStore", []);
|
|
5186
|
+
O(this, "providers", [new Tt(this.defaultProviderStore)]);
|
|
5187
|
+
O(this, "axisLabelProviders", []);
|
|
5159
5188
|
}
|
|
5160
5189
|
addColumnProvider(e) {
|
|
5161
5190
|
return this.providers.push(e), this;
|
|
@@ -5177,117 +5206,135 @@
|
|
|
5177
5206
|
}
|
|
5178
5207
|
}
|
|
5179
5208
|
getUniversalEntries(e, n2) {
|
|
5180
|
-
const { anchorCtx: r, labelOps: i, dontWaitAllData: s2 = false, overrideLabelAnnotation: o = false } = n2 ?? {},
|
|
5209
|
+
const { anchorCtx: r, labelOps: i, dontWaitAllData: s2 = false, overrideLabelAnnotation: o = false, exclude: a } = n2 ?? {}, l2 = {
|
|
5181
5210
|
...o && (i == null ? void 0 : i.includeNativeLabel) !== false ? { includeNativeLabel: true } : {},
|
|
5182
5211
|
...i ?? {}
|
|
5183
|
-
}
|
|
5184
|
-
|
|
5185
|
-
|
|
5186
|
-
|
|
5187
|
-
|
|
5212
|
+
};
|
|
5213
|
+
let u2 = () => false;
|
|
5214
|
+
if (a) {
|
|
5215
|
+
const f2 = (Array.isArray(a) ? a : [a]).map((m2) => {
|
|
5216
|
+
if (Se(m2)) {
|
|
5217
|
+
if (!r)
|
|
5218
|
+
throw new Error("Anchored selectors in exclude require an AnchoredIdDeriver to be provided in options.");
|
|
5219
|
+
return Gn(Mn(r.anchors, m2, n2));
|
|
5220
|
+
} else
|
|
5221
|
+
return Gn(m2);
|
|
5222
|
+
});
|
|
5223
|
+
u2 = (m2) => f2.some((w2) => w2(m2));
|
|
5224
|
+
}
|
|
5225
|
+
const c2 = typeof e == "function" ? [e] : Array.isArray(e) ? e : [e], d = [], g = /* @__PURE__ */ new Set();
|
|
5226
|
+
for (const f$1 of c2) {
|
|
5227
|
+
const m2 = Se(f$1);
|
|
5228
|
+
let w2;
|
|
5229
|
+
if (m2) {
|
|
5188
5230
|
if (!r)
|
|
5189
5231
|
throw new Error("Anchored selectors require an AnchoredIdDeriver to be provided in options.");
|
|
5190
|
-
|
|
5232
|
+
w2 = Mn(r.anchors, f$1, n2);
|
|
5191
5233
|
} else
|
|
5192
|
-
|
|
5193
|
-
const
|
|
5194
|
-
for (const
|
|
5195
|
-
const
|
|
5196
|
-
for (const
|
|
5197
|
-
if (
|
|
5198
|
-
|
|
5234
|
+
w2 = f$1;
|
|
5235
|
+
const h2 = /* @__PURE__ */ new Set(), I = [];
|
|
5236
|
+
for (const A of this.providers) {
|
|
5237
|
+
const L = A.selectColumns(w2);
|
|
5238
|
+
for (const P2 of L) {
|
|
5239
|
+
if (u2(P2.spec)) continue;
|
|
5240
|
+
if (h2.has(P2.id))
|
|
5241
|
+
throw new Error(`Duplicate column id ${P2.id} in provider ${A.constructor.name}`);
|
|
5242
|
+
const R = Qn(P2.spec);
|
|
5243
|
+
g.has(R) || (h2.add(P2.id), g.add(R), I.push(P2));
|
|
5199
5244
|
}
|
|
5200
5245
|
}
|
|
5201
|
-
if (
|
|
5202
|
-
const
|
|
5203
|
-
for (const
|
|
5204
|
-
if (!f(
|
|
5205
|
-
const
|
|
5206
|
-
if (
|
|
5207
|
-
|
|
5208
|
-
|
|
5246
|
+
if (I.length === 0) continue;
|
|
5247
|
+
const x = Dt(f$1), b = x.length > 0;
|
|
5248
|
+
for (const A of I) {
|
|
5249
|
+
if (!f(A.spec)) continue;
|
|
5250
|
+
const L = A.spec;
|
|
5251
|
+
if (b) {
|
|
5252
|
+
if (Lt(A.data))
|
|
5253
|
+
throw new Error(`Splitting is not supported for PColumns with PColumnValues data format. Column id: ${A.id}`);
|
|
5254
|
+
const P2 = _t(A.data);
|
|
5255
|
+
if (!P2) {
|
|
5209
5256
|
if (s2) continue;
|
|
5210
5257
|
return;
|
|
5211
5258
|
}
|
|
5212
|
-
if (!
|
|
5213
|
-
throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${
|
|
5214
|
-
const
|
|
5215
|
-
if (
|
|
5216
|
-
throw new Error(`Not enough partition keys (${
|
|
5217
|
-
const
|
|
5218
|
-
if (
|
|
5219
|
-
if (
|
|
5259
|
+
if (!Sn(P2))
|
|
5260
|
+
throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${P2.type} for column ${A.id}`);
|
|
5261
|
+
const R = St(P2), k2 = x[x.length - 1];
|
|
5262
|
+
if (k2 >= P2.partitionKeyLength)
|
|
5263
|
+
throw new Error(`Not enough partition keys (${P2.partitionKeyLength}) for requested split axes (max index ${k2}) in column ${L.name}`);
|
|
5264
|
+
const W = x.map((S) => this.findLabels(p$1(L.axesSpec[S]))), V = [], N2 = (S, G) => {
|
|
5265
|
+
if (G >= x.length) {
|
|
5266
|
+
if (V.push([...S]), V.length > 1e4)
|
|
5220
5267
|
throw new Error("Too many key combinations, aborting.");
|
|
5221
5268
|
return;
|
|
5222
5269
|
}
|
|
5223
|
-
const
|
|
5224
|
-
if (
|
|
5225
|
-
throw new Error(`Axis index ${
|
|
5226
|
-
const
|
|
5227
|
-
if (!
|
|
5228
|
-
|
|
5270
|
+
const $ = x[G];
|
|
5271
|
+
if ($ >= R.length)
|
|
5272
|
+
throw new Error(`Axis index ${$} out of bounds for unique keys array (length ${R.length}) during split key generation for column ${A.id}`);
|
|
5273
|
+
const J2 = R[$];
|
|
5274
|
+
if (!J2 || J2.length === 0) {
|
|
5275
|
+
V.length = 0;
|
|
5229
5276
|
return;
|
|
5230
5277
|
}
|
|
5231
|
-
for (const
|
|
5232
|
-
|
|
5278
|
+
for (const ee of J2)
|
|
5279
|
+
S.push(ee), N2(S, G + 1), S.pop();
|
|
5233
5280
|
};
|
|
5234
|
-
if (
|
|
5281
|
+
if (N2([], 0), V.length === 0)
|
|
5235
5282
|
continue;
|
|
5236
|
-
const
|
|
5237
|
-
for (let
|
|
5238
|
-
|
|
5239
|
-
const
|
|
5240
|
-
for (const
|
|
5241
|
-
const
|
|
5242
|
-
const
|
|
5243
|
-
return { axisIdx:
|
|
5283
|
+
const F = [...L.axesSpec], Be = x.map((S) => S);
|
|
5284
|
+
for (let S = x.length - 1; S >= 0; S--)
|
|
5285
|
+
F.splice(x[S], 1);
|
|
5286
|
+
const We = { ...L, axesSpec: F };
|
|
5287
|
+
for (const S of V) {
|
|
5288
|
+
const G = S.map(($, J2) => {
|
|
5289
|
+
const ee = Be[J2], Ge = p$1(L.axesSpec[ee]), ue2 = W[J2], He = (ue2 == null ? void 0 : ue2[$]) ?? String($);
|
|
5290
|
+
return { axisIdx: ee, axisId: Ge, value: $, label: He };
|
|
5244
5291
|
});
|
|
5245
|
-
|
|
5292
|
+
d.push({
|
|
5246
5293
|
type: "split",
|
|
5247
|
-
originalColumn:
|
|
5248
|
-
spec:
|
|
5249
|
-
adjustedSpec:
|
|
5250
|
-
dataEntries:
|
|
5251
|
-
axisFilters:
|
|
5294
|
+
originalColumn: A,
|
|
5295
|
+
spec: L,
|
|
5296
|
+
adjustedSpec: We,
|
|
5297
|
+
dataEntries: P2,
|
|
5298
|
+
axisFilters: G
|
|
5252
5299
|
});
|
|
5253
5300
|
}
|
|
5254
5301
|
} else
|
|
5255
|
-
|
|
5302
|
+
d.push({
|
|
5256
5303
|
type: "direct",
|
|
5257
|
-
originalColumn:
|
|
5258
|
-
spec:
|
|
5259
|
-
adjustedSpec:
|
|
5304
|
+
originalColumn: A,
|
|
5305
|
+
spec: L,
|
|
5306
|
+
adjustedSpec: L
|
|
5260
5307
|
});
|
|
5261
5308
|
}
|
|
5262
5309
|
}
|
|
5263
|
-
if (
|
|
5264
|
-
const
|
|
5265
|
-
|
|
5266
|
-
(
|
|
5267
|
-
spec:
|
|
5268
|
-
suffixTrace:
|
|
5310
|
+
if (d.length === 0) return [];
|
|
5311
|
+
const p2 = je(
|
|
5312
|
+
d,
|
|
5313
|
+
(f2) => ({
|
|
5314
|
+
spec: f2.spec,
|
|
5315
|
+
suffixTrace: f2.type === "split" ? Et(f2.axisFilters) : void 0
|
|
5269
5316
|
}),
|
|
5270
|
-
|
|
5271
|
-
),
|
|
5272
|
-
for (const { value:
|
|
5273
|
-
const { originalColumn:
|
|
5274
|
-
let
|
|
5275
|
-
r ?
|
|
5276
|
-
let
|
|
5277
|
-
o && (
|
|
5278
|
-
...
|
|
5317
|
+
l2
|
|
5318
|
+
), v = [];
|
|
5319
|
+
for (const { value: f2, label: m2 } of p2) {
|
|
5320
|
+
const { originalColumn: w2, spec: h2 } = f2, I = f2.type === "split" ? f2.axisFilters : void 0, x = kt(I);
|
|
5321
|
+
let b;
|
|
5322
|
+
r ? b = r.deriveS(h2, x) : b = Ot(w2.id, x);
|
|
5323
|
+
let A = { ...f2.adjustedSpec };
|
|
5324
|
+
o && (A = {
|
|
5325
|
+
...A,
|
|
5279
5326
|
annotations: {
|
|
5280
|
-
...
|
|
5281
|
-
"pl7.app/label":
|
|
5327
|
+
...A.annotations ?? {},
|
|
5328
|
+
"pl7.app/label": m2
|
|
5282
5329
|
}
|
|
5283
|
-
}),
|
|
5284
|
-
id:
|
|
5285
|
-
spec:
|
|
5286
|
-
data: () =>
|
|
5287
|
-
label:
|
|
5330
|
+
}), v.push({
|
|
5331
|
+
id: b,
|
|
5332
|
+
spec: A,
|
|
5333
|
+
data: () => f2.type === "split" ? Jn(It(f2.dataEntries, x)) : f2.originalColumn.data,
|
|
5334
|
+
label: m2
|
|
5288
5335
|
});
|
|
5289
5336
|
}
|
|
5290
|
-
return
|
|
5337
|
+
return v;
|
|
5291
5338
|
}
|
|
5292
5339
|
getColumns(e, n2) {
|
|
5293
5340
|
const r = this.getUniversalEntries(e, {
|
|
@@ -5312,19 +5359,19 @@
|
|
|
5312
5359
|
return i;
|
|
5313
5360
|
}
|
|
5314
5361
|
}
|
|
5315
|
-
function
|
|
5362
|
+
function de(t, e) {
|
|
5316
5363
|
if (t === void 0) return e === void 0;
|
|
5317
5364
|
if (e === void 0) return true;
|
|
5318
5365
|
for (const n2 in e)
|
|
5319
5366
|
if (t[n2] !== e[n2]) return false;
|
|
5320
5367
|
return true;
|
|
5321
5368
|
}
|
|
5322
|
-
function
|
|
5323
|
-
return
|
|
5369
|
+
function _e(t) {
|
|
5370
|
+
return Wn(t, (e) => e instanceof E ? e.handle : En(e) ? Nn(e, (n2) => n2.handle) : e);
|
|
5324
5371
|
}
|
|
5325
|
-
class
|
|
5372
|
+
class Rt {
|
|
5326
5373
|
constructor() {
|
|
5327
|
-
|
|
5374
|
+
O(this, "ctx", y());
|
|
5328
5375
|
}
|
|
5329
5376
|
/**
|
|
5330
5377
|
* @deprecated use getOptions()
|
|
@@ -5333,27 +5380,28 @@
|
|
|
5333
5380
|
return this.ctx.calculateOptions(e);
|
|
5334
5381
|
}
|
|
5335
5382
|
getOptions(e, n2) {
|
|
5336
|
-
const r = typeof e == "function" ? e :
|
|
5337
|
-
|
|
5338
|
-
|
|
5339
|
-
|
|
5340
|
-
|
|
5341
|
-
|
|
5342
|
-
|
|
5383
|
+
const r = typeof e == "function" ? e : Gn(e), i = this.getSpecs().entries.filter((a) => r(a.obj));
|
|
5384
|
+
let s2 = {}, o = false;
|
|
5385
|
+
return typeof n2 < "u" && (typeof n2 == "function" ? s2 = n2 : typeof n2 == "object" && ("includeNativeLabel" in n2 || "separator" in n2 || "addLabelAsSuffix" in n2 ? s2 = n2 : (n2 = n2, s2 = n2.label ?? {}, o = n2.refsWithEnrichments ?? false))), typeof s2 == "object" ? je(i, (a) => a.obj, s2 ?? {}).map(({ value: { ref: a }, label: l2 }) => ({
|
|
5386
|
+
ref: te$1(a, o),
|
|
5387
|
+
label: l2
|
|
5388
|
+
})) : i.map(({ ref: a, obj: l2 }) => ({
|
|
5389
|
+
ref: te$1(a, o),
|
|
5390
|
+
label: s2(l2, a)
|
|
5343
5391
|
}));
|
|
5344
5392
|
}
|
|
5345
5393
|
resolveAnchorCtx(e) {
|
|
5346
|
-
if (e instanceof
|
|
5394
|
+
if (e instanceof _n) return e;
|
|
5347
5395
|
const n2 = {};
|
|
5348
5396
|
for (const [r, i] of Object.entries(e))
|
|
5349
|
-
if (
|
|
5397
|
+
if (ne(i)) {
|
|
5350
5398
|
const s2 = this.getPColumnSpecByRef(i);
|
|
5351
5399
|
if (!s2)
|
|
5352
5400
|
return;
|
|
5353
5401
|
n2[r] = s2;
|
|
5354
5402
|
} else
|
|
5355
5403
|
n2[r] = i;
|
|
5356
|
-
return new
|
|
5404
|
+
return new _n(n2);
|
|
5357
5405
|
}
|
|
5358
5406
|
/**
|
|
5359
5407
|
* Returns columns that match the provided anchors and selectors. It applies axis filters and label derivation.
|
|
@@ -5366,7 +5414,7 @@
|
|
|
5366
5414
|
getAnchoredPColumns(e, n2, r) {
|
|
5367
5415
|
const i = this.resolveAnchorCtx(e);
|
|
5368
5416
|
if (i)
|
|
5369
|
-
return new
|
|
5417
|
+
return new le().addColumnProvider(this).addAxisLabelProvider(this).getColumns(n2, {
|
|
5370
5418
|
...r,
|
|
5371
5419
|
anchorCtx: i
|
|
5372
5420
|
});
|
|
@@ -5403,7 +5451,7 @@
|
|
|
5403
5451
|
getCanonicalOptions(e, n2, r) {
|
|
5404
5452
|
const i = this.resolveAnchorCtx(e);
|
|
5405
5453
|
if (!i) return;
|
|
5406
|
-
const s2 = new
|
|
5454
|
+
const s2 = new le().addColumnProvider(this).addAxisLabelProvider(this).getUniversalEntries(n2, {
|
|
5407
5455
|
...r,
|
|
5408
5456
|
anchorCtx: i
|
|
5409
5457
|
});
|
|
@@ -5427,7 +5475,7 @@
|
|
|
5427
5475
|
ref: n2.ref,
|
|
5428
5476
|
obj: {
|
|
5429
5477
|
...n2.obj,
|
|
5430
|
-
data: new
|
|
5478
|
+
data: new E(n2.obj.data, [n2.ref.blockId, n2.ref.name])
|
|
5431
5479
|
}
|
|
5432
5480
|
}))
|
|
5433
5481
|
};
|
|
@@ -5446,9 +5494,9 @@
|
|
|
5446
5494
|
ref: n2.ref,
|
|
5447
5495
|
obj: {
|
|
5448
5496
|
...n2.obj,
|
|
5449
|
-
data:
|
|
5497
|
+
data: oe$1(
|
|
5450
5498
|
n2.obj.data,
|
|
5451
|
-
(r) => new
|
|
5499
|
+
(r) => new E(r, [n2.ref.blockId, n2.ref.name])
|
|
5452
5500
|
)
|
|
5453
5501
|
}
|
|
5454
5502
|
}))
|
|
@@ -5475,9 +5523,9 @@
|
|
|
5475
5523
|
)) == null ? void 0 : r.obj;
|
|
5476
5524
|
const n2 = this.ctx.getDataFromResultPoolByRef(e.blockId, e.name);
|
|
5477
5525
|
if (n2)
|
|
5478
|
-
return
|
|
5526
|
+
return Wn(
|
|
5479
5527
|
n2,
|
|
5480
|
-
(i) => new
|
|
5528
|
+
(i) => new E(i, [e.blockId, e.name])
|
|
5481
5529
|
);
|
|
5482
5530
|
}
|
|
5483
5531
|
/**
|
|
@@ -5488,7 +5536,7 @@
|
|
|
5488
5536
|
getPColumnByRef(e) {
|
|
5489
5537
|
const n2 = this.getDataByRef(e);
|
|
5490
5538
|
if (n2)
|
|
5491
|
-
return
|
|
5539
|
+
return qn(n2);
|
|
5492
5540
|
}
|
|
5493
5541
|
/**
|
|
5494
5542
|
* Returns spec associated with the ref ensuring that it is a p-column spec.
|
|
@@ -5520,10 +5568,10 @@
|
|
|
5520
5568
|
if (!f(r.obj.spec))
|
|
5521
5569
|
continue;
|
|
5522
5570
|
const i = r.obj.spec;
|
|
5523
|
-
if (e.name === i.name && e.valueType === i.valueType && e.axesSpec.length === i.axesSpec.length &&
|
|
5571
|
+
if (e.name === i.name && e.valueType === i.valueType && e.axesSpec.length === i.axesSpec.length && de(e.domain, i.domain)) {
|
|
5524
5572
|
for (let s2 = 0; s2 < e.axesSpec.length; ++s2) {
|
|
5525
5573
|
const o = e.axesSpec[s2], a = i.axesSpec[s2];
|
|
5526
|
-
if (o.name !== a.name || o.type !== a.type || !
|
|
5574
|
+
if (o.name !== a.name || o.type !== a.type || !de(o.domain, a.domain))
|
|
5527
5575
|
continue e;
|
|
5528
5576
|
}
|
|
5529
5577
|
n2.push(r.obj);
|
|
@@ -5538,9 +5586,9 @@
|
|
|
5538
5586
|
findLabels(e) {
|
|
5539
5587
|
const n2 = this.getData();
|
|
5540
5588
|
for (const r of n2.entries) {
|
|
5541
|
-
if (!
|
|
5589
|
+
if (!rn(r.obj)) continue;
|
|
5542
5590
|
const i = r.obj.spec;
|
|
5543
|
-
if (i.name === "pl7.app/label" && i.axesSpec.length === 1 && i.axesSpec[0].name === e.name && i.axesSpec[0].type === e.type &&
|
|
5591
|
+
if (i.name === "pl7.app/label" && i.axesSpec.length === 1 && i.axesSpec[0].name === e.name && i.axesSpec[0].type === e.type && de(e.domain, i.axesSpec[0].domain)) {
|
|
5544
5592
|
if (r.obj.data.resourceType.name !== "PColumnData/Json")
|
|
5545
5593
|
throw Error(`Expected JSON column for labels, got: ${r.obj.data.resourceType.name}`);
|
|
5546
5594
|
return Object.fromEntries(
|
|
@@ -5559,13 +5607,13 @@
|
|
|
5559
5607
|
* @returns An array of PColumn objects matching the selectors. Data is loaded on first access.
|
|
5560
5608
|
*/
|
|
5561
5609
|
selectColumns(e) {
|
|
5562
|
-
const n2 = typeof e == "function" ? e :
|
|
5610
|
+
const n2 = typeof e == "function" ? e : Gn(e);
|
|
5563
5611
|
return this.getSpecs().entries.filter(({ obj: i }) => f(i) ? n2(i) : false).map(({ ref: i, obj: s2 }) => {
|
|
5564
5612
|
const o = s2;
|
|
5565
5613
|
let a = null;
|
|
5566
5614
|
const l2 = this;
|
|
5567
5615
|
return {
|
|
5568
|
-
id:
|
|
5616
|
+
id: ke(i),
|
|
5569
5617
|
spec: o,
|
|
5570
5618
|
get data() {
|
|
5571
5619
|
var u2;
|
|
@@ -5590,14 +5638,14 @@
|
|
|
5590
5638
|
return r;
|
|
5591
5639
|
}
|
|
5592
5640
|
}
|
|
5593
|
-
class
|
|
5641
|
+
class te {
|
|
5594
5642
|
constructor() {
|
|
5595
|
-
|
|
5596
|
-
|
|
5597
|
-
|
|
5598
|
-
|
|
5599
|
-
|
|
5600
|
-
this.ctx =
|
|
5643
|
+
O(this, "ctx");
|
|
5644
|
+
O(this, "args");
|
|
5645
|
+
O(this, "uiState");
|
|
5646
|
+
O(this, "_activeArgsCache");
|
|
5647
|
+
O(this, "resultPool", new Rt());
|
|
5648
|
+
this.ctx = y(), this.args = JSON.parse(this.ctx.args), this.uiState = this.ctx.uiState !== void 0 ? JSON.parse(this.ctx.uiState) : {};
|
|
5601
5649
|
}
|
|
5602
5650
|
/**
|
|
5603
5651
|
* Returns args snapshot the block was executed for (i.e. when "Run" button was pressed).
|
|
@@ -5613,13 +5661,13 @@
|
|
|
5613
5661
|
// return this.ctx.featureFlags;
|
|
5614
5662
|
// }
|
|
5615
5663
|
getNamedAccessor(e) {
|
|
5616
|
-
return
|
|
5664
|
+
return he(
|
|
5617
5665
|
this.ctx.getAccessorHandleByName(e),
|
|
5618
|
-
(n2) => new
|
|
5666
|
+
(n2) => new E(n2, [e])
|
|
5619
5667
|
);
|
|
5620
5668
|
}
|
|
5621
5669
|
get prerun() {
|
|
5622
|
-
return this.getNamedAccessor(
|
|
5670
|
+
return this.getNamedAccessor(Re);
|
|
5623
5671
|
}
|
|
5624
5672
|
get outputs() {
|
|
5625
5673
|
return this.getNamedAccessor(Fe);
|
|
@@ -5634,13 +5682,13 @@
|
|
|
5634
5682
|
}
|
|
5635
5683
|
verifyInlineAndExplicitColumnsSupport(e) {
|
|
5636
5684
|
var i;
|
|
5637
|
-
const n2 = e.some((s2) => !(s2.data instanceof
|
|
5685
|
+
const n2 = e.some((s2) => !(s2.data instanceof E) || En(s2.data)), r = ((i = this.ctx.featureFlags) == null ? void 0 : i.inlineColumnsSupport) === true;
|
|
5638
5686
|
if (n2 && !r) throw Error("Inline or explicit columns not supported");
|
|
5639
5687
|
}
|
|
5640
5688
|
// TODO remove all non-PColumn fields
|
|
5641
5689
|
createPFrame(e) {
|
|
5642
5690
|
return this.verifyInlineAndExplicitColumnsSupport(e), this.ctx.createPFrame(
|
|
5643
|
-
e.map((n2) =>
|
|
5691
|
+
e.map((n2) => _e(n2))
|
|
5644
5692
|
);
|
|
5645
5693
|
}
|
|
5646
5694
|
createPTable(e) {
|
|
@@ -5652,8 +5700,8 @@
|
|
|
5652
5700
|
},
|
|
5653
5701
|
filters: e.filters ?? [],
|
|
5654
5702
|
sorting: e.sorting ?? []
|
|
5655
|
-
} : n2 = e, this.verifyInlineAndExplicitColumnsSupport(
|
|
5656
|
-
|
|
5703
|
+
} : n2 = e, this.verifyInlineAndExplicitColumnsSupport(Xn(n2.src)), this.ctx.createPTable(
|
|
5704
|
+
Un(n2, (r) => _e(r))
|
|
5657
5705
|
);
|
|
5658
5706
|
}
|
|
5659
5707
|
/** @deprecated scheduled for removal from SDK */
|
|
@@ -5661,21 +5709,29 @@
|
|
|
5661
5709
|
return this.ctx.getBlockLabel(e);
|
|
5662
5710
|
}
|
|
5663
5711
|
getCurrentUnstableMarker() {
|
|
5664
|
-
|
|
5665
|
-
|
|
5712
|
+
return this.ctx.getCurrentUnstableMarker();
|
|
5713
|
+
}
|
|
5714
|
+
logInfo(e) {
|
|
5715
|
+
this.ctx.logInfo(e);
|
|
5716
|
+
}
|
|
5717
|
+
logWarn(e) {
|
|
5718
|
+
this.ctx.logWarn(e);
|
|
5719
|
+
}
|
|
5720
|
+
logError(e) {
|
|
5721
|
+
this.ctx.logError(e);
|
|
5666
5722
|
}
|
|
5667
5723
|
}
|
|
5668
|
-
const
|
|
5669
|
-
function
|
|
5724
|
+
const Y = "1.34.10";
|
|
5725
|
+
function Ft(t) {
|
|
5670
5726
|
return t.__renderLambda === true;
|
|
5671
5727
|
}
|
|
5672
|
-
function
|
|
5728
|
+
function pe(t) {
|
|
5673
5729
|
if (t !== void 0)
|
|
5674
|
-
return
|
|
5730
|
+
return Ft(t) ? t.handle : t;
|
|
5675
5731
|
}
|
|
5676
5732
|
class T {
|
|
5677
|
-
constructor(e, n2, r, i, s2, o, a) {
|
|
5678
|
-
this._renderingMode = e, this._initialArgs = n2, this._initialUiState = r, this._outputs = i, this._inputsValid = s2, this._sections = o, this._title = a;
|
|
5733
|
+
constructor(e, n2, r, i, s2, o, a, l2) {
|
|
5734
|
+
this._renderingMode = e, this._initialArgs = n2, this._initialUiState = r, this._outputs = i, this._inputsValid = s2, this._sections = o, this._title = a, this._enrichmentTargets = l2;
|
|
5679
5735
|
}
|
|
5680
5736
|
static create(e = "Heavy") {
|
|
5681
5737
|
return new T(
|
|
@@ -5683,15 +5739,16 @@
|
|
|
5683
5739
|
void 0,
|
|
5684
5740
|
{},
|
|
5685
5741
|
{},
|
|
5686
|
-
|
|
5687
|
-
|
|
5742
|
+
re(true),
|
|
5743
|
+
re([]),
|
|
5744
|
+
void 0,
|
|
5688
5745
|
void 0
|
|
5689
5746
|
);
|
|
5690
5747
|
}
|
|
5691
5748
|
output(e, n2, r = {}) {
|
|
5692
5749
|
if (typeof n2 == "function") {
|
|
5693
5750
|
const i = `output#${e}`;
|
|
5694
|
-
return
|
|
5751
|
+
return H(i, () => n2(new te())), new T(
|
|
5695
5752
|
this._renderingMode,
|
|
5696
5753
|
this._initialArgs,
|
|
5697
5754
|
this._initialUiState,
|
|
@@ -5705,7 +5762,8 @@
|
|
|
5705
5762
|
},
|
|
5706
5763
|
this._inputsValid,
|
|
5707
5764
|
this._sections,
|
|
5708
|
-
this._title
|
|
5765
|
+
this._title,
|
|
5766
|
+
this._enrichmentTargets
|
|
5709
5767
|
);
|
|
5710
5768
|
} else
|
|
5711
5769
|
return new T(
|
|
@@ -5718,7 +5776,8 @@
|
|
|
5718
5776
|
},
|
|
5719
5777
|
this._inputsValid,
|
|
5720
5778
|
this._sections,
|
|
5721
|
-
this._title
|
|
5779
|
+
this._title,
|
|
5780
|
+
this._enrichmentTargets
|
|
5722
5781
|
);
|
|
5723
5782
|
}
|
|
5724
5783
|
/** Shortcut for {@link output} with retentive flag set to true. */
|
|
@@ -5726,7 +5785,7 @@
|
|
|
5726
5785
|
return this.output(e, n2, { retentive: true });
|
|
5727
5786
|
}
|
|
5728
5787
|
argsValid(e) {
|
|
5729
|
-
return typeof e == "function" ? (
|
|
5788
|
+
return typeof e == "function" ? (H("inputsValid", () => e(new te())), new T(
|
|
5730
5789
|
this._renderingMode,
|
|
5731
5790
|
this._initialArgs,
|
|
5732
5791
|
this._initialUiState,
|
|
@@ -5736,7 +5795,8 @@
|
|
|
5736
5795
|
handle: "inputsValid"
|
|
5737
5796
|
},
|
|
5738
5797
|
this._sections,
|
|
5739
|
-
this._title
|
|
5798
|
+
this._title,
|
|
5799
|
+
this._enrichmentTargets
|
|
5740
5800
|
)) : new T(
|
|
5741
5801
|
this._renderingMode,
|
|
5742
5802
|
this._initialArgs,
|
|
@@ -5744,18 +5804,20 @@
|
|
|
5744
5804
|
this._outputs,
|
|
5745
5805
|
e,
|
|
5746
5806
|
this._sections,
|
|
5747
|
-
this._title
|
|
5807
|
+
this._title,
|
|
5808
|
+
this._enrichmentTargets
|
|
5748
5809
|
);
|
|
5749
5810
|
}
|
|
5750
5811
|
sections(e) {
|
|
5751
|
-
return Array.isArray(e) ? this.sections(
|
|
5812
|
+
return Array.isArray(e) ? this.sections(re(e)) : typeof e == "function" ? (H("sections", () => e(new te())), new T(
|
|
5752
5813
|
this._renderingMode,
|
|
5753
5814
|
this._initialArgs,
|
|
5754
5815
|
this._initialUiState,
|
|
5755
5816
|
this._outputs,
|
|
5756
5817
|
this._inputsValid,
|
|
5757
5818
|
{ __renderLambda: true, handle: "sections" },
|
|
5758
|
-
this._title
|
|
5819
|
+
this._title,
|
|
5820
|
+
this._enrichmentTargets
|
|
5759
5821
|
)) : new T(
|
|
5760
5822
|
this._renderingMode,
|
|
5761
5823
|
this._initialArgs,
|
|
@@ -5763,19 +5825,21 @@
|
|
|
5763
5825
|
this._outputs,
|
|
5764
5826
|
this._inputsValid,
|
|
5765
5827
|
e,
|
|
5766
|
-
this._title
|
|
5828
|
+
this._title,
|
|
5829
|
+
this._enrichmentTargets
|
|
5767
5830
|
);
|
|
5768
5831
|
}
|
|
5769
5832
|
/** Sets a rendering function to derive block title, shown for the block in the left blocks-overview panel. */
|
|
5770
5833
|
title(e) {
|
|
5771
|
-
return
|
|
5834
|
+
return H("title", () => e(new te())), new T(
|
|
5772
5835
|
this._renderingMode,
|
|
5773
5836
|
this._initialArgs,
|
|
5774
5837
|
this._initialUiState,
|
|
5775
5838
|
this._outputs,
|
|
5776
5839
|
this._inputsValid,
|
|
5777
5840
|
this._sections,
|
|
5778
|
-
{ __renderLambda: true, handle: "title" }
|
|
5841
|
+
{ __renderLambda: true, handle: "title" },
|
|
5842
|
+
this._enrichmentTargets
|
|
5779
5843
|
);
|
|
5780
5844
|
}
|
|
5781
5845
|
/**
|
|
@@ -5790,7 +5854,8 @@
|
|
|
5790
5854
|
this._outputs,
|
|
5791
5855
|
this._inputsValid,
|
|
5792
5856
|
this._sections,
|
|
5793
|
-
this._title
|
|
5857
|
+
this._title,
|
|
5858
|
+
this._enrichmentTargets
|
|
5794
5859
|
);
|
|
5795
5860
|
}
|
|
5796
5861
|
/** Sets initial args for the block, this value must be specified. */
|
|
@@ -5802,7 +5867,8 @@
|
|
|
5802
5867
|
this._outputs,
|
|
5803
5868
|
this._inputsValid,
|
|
5804
5869
|
this._sections,
|
|
5805
|
-
this._title
|
|
5870
|
+
this._title,
|
|
5871
|
+
this._enrichmentTargets
|
|
5806
5872
|
);
|
|
5807
5873
|
}
|
|
5808
5874
|
/** Defines type and sets initial value for block UiState. */
|
|
@@ -5814,7 +5880,24 @@
|
|
|
5814
5880
|
this._outputs,
|
|
5815
5881
|
this._inputsValid,
|
|
5816
5882
|
this._sections,
|
|
5817
|
-
this._title
|
|
5883
|
+
this._title,
|
|
5884
|
+
this._enrichmentTargets
|
|
5885
|
+
);
|
|
5886
|
+
}
|
|
5887
|
+
/**
|
|
5888
|
+
* Defines how to derive list of upstream references this block is meant to enrich with its exports from block args.
|
|
5889
|
+
* Influences dependency graph construction.
|
|
5890
|
+
*/
|
|
5891
|
+
enriches(e) {
|
|
5892
|
+
return H("enrichmentTargets", e), new T(
|
|
5893
|
+
this._renderingMode,
|
|
5894
|
+
this._initialArgs,
|
|
5895
|
+
this._initialUiState,
|
|
5896
|
+
this._outputs,
|
|
5897
|
+
this._inputsValid,
|
|
5898
|
+
this._sections,
|
|
5899
|
+
this._title,
|
|
5900
|
+
{ __renderLambda: true, handle: "enrichmentTargets" }
|
|
5818
5901
|
);
|
|
5819
5902
|
}
|
|
5820
5903
|
/** Renders all provided block settings into a pre-configured platforma API
|
|
@@ -5824,29 +5907,33 @@
|
|
|
5824
5907
|
if (this._initialArgs === void 0) throw new Error("Initial arguments not set.");
|
|
5825
5908
|
const e = {
|
|
5826
5909
|
v3: {
|
|
5827
|
-
sdkVersion:
|
|
5910
|
+
sdkVersion: Y,
|
|
5828
5911
|
renderingMode: this._renderingMode,
|
|
5829
5912
|
initialArgs: this._initialArgs,
|
|
5830
5913
|
initialUiState: this._initialUiState,
|
|
5831
5914
|
inputsValid: this._inputsValid,
|
|
5832
5915
|
sections: this._sections,
|
|
5833
5916
|
title: this._title,
|
|
5834
|
-
outputs: this._outputs
|
|
5917
|
+
outputs: this._outputs,
|
|
5918
|
+
enrichmentTargets: this._enrichmentTargets
|
|
5835
5919
|
},
|
|
5836
5920
|
// fields below are added to allow previous desktop versions read generated configs
|
|
5837
|
-
sdkVersion:
|
|
5921
|
+
sdkVersion: Y,
|
|
5838
5922
|
renderingMode: this._renderingMode,
|
|
5839
5923
|
initialArgs: this._initialArgs,
|
|
5840
|
-
inputsValid:
|
|
5841
|
-
sections:
|
|
5924
|
+
inputsValid: pe(this._inputsValid),
|
|
5925
|
+
sections: pe(this._sections),
|
|
5842
5926
|
outputs: Object.fromEntries(
|
|
5843
|
-
Object.entries(this._outputs).map(([n2, r]) => [n2,
|
|
5927
|
+
Object.entries(this._outputs).map(([n2, r]) => [n2, pe(r)])
|
|
5844
5928
|
)
|
|
5845
5929
|
};
|
|
5846
|
-
return
|
|
5930
|
+
return pt() ? De({ sdkVersion: Y }) : { config: e };
|
|
5847
5931
|
}
|
|
5848
5932
|
}
|
|
5849
|
-
|
|
5933
|
+
function ve(t) {
|
|
5934
|
+
return t.axesSpec.length === 1 && t.name === "pl7.app/label";
|
|
5935
|
+
}
|
|
5936
|
+
const Vt = (t, e) => {
|
|
5850
5937
|
let n2 = t.toString();
|
|
5851
5938
|
return e == null || e.forEach((r) => {
|
|
5852
5939
|
if (r)
|
|
@@ -5854,7 +5941,7 @@
|
|
|
5854
5941
|
n2 += i, n2 += s2;
|
|
5855
5942
|
}), n2;
|
|
5856
5943
|
};
|
|
5857
|
-
function
|
|
5944
|
+
function $t(t) {
|
|
5858
5945
|
if (!t.length)
|
|
5859
5946
|
return [];
|
|
5860
5947
|
let e = [[]];
|
|
@@ -5865,178 +5952,214 @@
|
|
|
5865
5952
|
}), e = r;
|
|
5866
5953
|
}), e;
|
|
5867
5954
|
}
|
|
5868
|
-
function
|
|
5869
|
-
|
|
5870
|
-
return
|
|
5955
|
+
function Nt(t) {
|
|
5956
|
+
var e;
|
|
5957
|
+
return t.axesSpec.length === 2 && ((e = t.annotations) == null ? void 0 : e[Mt]) === "true";
|
|
5958
|
+
}
|
|
5959
|
+
const Jt = "pl7.app/graph/isVirtual", Ie = "pl7.app/label", Mt = "pl7.app/isLinkerColumn";
|
|
5960
|
+
function Ut(t) {
|
|
5961
|
+
var n2, r;
|
|
5962
|
+
const e = /* @__PURE__ */ new Map();
|
|
5963
|
+
for (const { spec: i } of t) {
|
|
5964
|
+
const s2 = i.axesSpec.map(p$1).map(ue);
|
|
5965
|
+
s2.forEach((o) => {
|
|
5966
|
+
e.has(o) || e.set(o, /* @__PURE__ */ new Set());
|
|
5967
|
+
});
|
|
5968
|
+
for (let o = 0; o < s2.length - 1; o++)
|
|
5969
|
+
for (let a = o + 1; a < s2.length; a++) {
|
|
5970
|
+
const l2 = s2[o], u2 = s2[a];
|
|
5971
|
+
(n2 = e.get(l2)) == null || n2.add(u2), (r = e.get(u2)) == null || r.add(l2);
|
|
5972
|
+
}
|
|
5973
|
+
}
|
|
5974
|
+
return e;
|
|
5871
5975
|
}
|
|
5872
|
-
function
|
|
5873
|
-
const n2 = t.
|
|
5874
|
-
|
|
5976
|
+
function Bt(t, e) {
|
|
5977
|
+
const n2 = Ut(t), r = [...n2.keys()].map(ce$1), i = [];
|
|
5978
|
+
for (const l2 of e.values()) {
|
|
5979
|
+
const u2 = r.find((c2) => Z$1(l2, c2));
|
|
5980
|
+
u2 && i.push(ue(u2));
|
|
5981
|
+
}
|
|
5982
|
+
const s2 = new Set(i), o = /* @__PURE__ */ new Map();
|
|
5983
|
+
let a = [...i];
|
|
5984
|
+
for (; a.length; ) {
|
|
5985
|
+
const l2 = [];
|
|
5986
|
+
for (const u2 of a)
|
|
5987
|
+
for (const c2 of n2.get(u2) ?? [])
|
|
5988
|
+
s2.has(c2) || (l2.push(c2), s2.add(c2), o.set(c2, ce$1(c2)));
|
|
5989
|
+
a = l2;
|
|
5990
|
+
}
|
|
5991
|
+
return o;
|
|
5992
|
+
}
|
|
5993
|
+
function Wt(t, e) {
|
|
5994
|
+
const n2 = [];
|
|
5995
|
+
return e.forEach((r) => {
|
|
5996
|
+
n2.push(...Gt(t, r));
|
|
5997
|
+
}), n2;
|
|
5875
5998
|
}
|
|
5876
|
-
|
|
5877
|
-
|
|
5878
|
-
|
|
5879
|
-
|
|
5880
|
-
|
|
5881
|
-
|
|
5882
|
-
|
|
5883
|
-
|
|
5884
|
-
|
|
5885
|
-
|
|
5886
|
-
|
|
5887
|
-
|
|
5888
|
-
|
|
5889
|
-
|
|
5890
|
-
|
|
5999
|
+
function Gt(t, e) {
|
|
6000
|
+
const n2 = e.spec.axesSpec.map(p$1);
|
|
6001
|
+
if (n2.every((u2) => t.has(ue(u2))))
|
|
6002
|
+
return [e];
|
|
6003
|
+
const r = n2.map((u2) => {
|
|
6004
|
+
const c2 = [];
|
|
6005
|
+
for (const [d, g] of t)
|
|
6006
|
+
Z$1(g, u2) && !Z$1(u2, g) && c2.push(g);
|
|
6007
|
+
return c2;
|
|
6008
|
+
}), i = $t(r), s2 = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set(), a = i.map((u2) => {
|
|
6009
|
+
const c2 = /* @__PURE__ */ new Set();
|
|
6010
|
+
return u2.map((d, g) => {
|
|
6011
|
+
const p2 = e.spec.axesSpec[g].domain, v = d.domain;
|
|
6012
|
+
return Object.entries(v ?? {}).forEach(([f2, m2]) => {
|
|
6013
|
+
if ((p2 == null ? void 0 : p2[f2]) === void 0) {
|
|
6014
|
+
const w2 = JSON.stringify([f2, m2]);
|
|
6015
|
+
c2.add(w2), s2.add(w2);
|
|
5891
6016
|
}
|
|
5892
6017
|
}), {
|
|
5893
|
-
...
|
|
5894
|
-
annotations: e.spec.axesSpec[
|
|
6018
|
+
...d,
|
|
6019
|
+
annotations: e.spec.axesSpec[g].annotations
|
|
5895
6020
|
};
|
|
5896
|
-
}),
|
|
6021
|
+
}), c2;
|
|
6022
|
+
});
|
|
6023
|
+
[...s2].forEach((u2) => {
|
|
6024
|
+
a.some((c2) => !c2.has(u2)) && o.add(u2);
|
|
5897
6025
|
});
|
|
5898
|
-
|
|
5899
|
-
|
|
5900
|
-
|
|
5901
|
-
|
|
5902
|
-
|
|
5903
|
-
|
|
5904
|
-
return (g = JSON.parse(v)) == null ? void 0 : g[1];
|
|
5905
|
-
}).join(" / "), x2 = {
|
|
6026
|
+
const l2 = i.map((u2, c2) => {
|
|
6027
|
+
var f2;
|
|
6028
|
+
const d = Vt(e.id, u2.map((m2) => m2.domain)), g = ((f2 = e.spec.annotations) == null ? void 0 : f2[Ie]) ?? "", p2 = [...a[c2]].filter((m2) => o.has(m2)).sort().map((m2) => {
|
|
6029
|
+
var w2;
|
|
6030
|
+
return (w2 = JSON.parse(m2)) == null ? void 0 : w2[1];
|
|
6031
|
+
}).join(" / "), v = {
|
|
5906
6032
|
...e.spec.annotations,
|
|
5907
|
-
[
|
|
6033
|
+
[Jt]: "true"
|
|
5908
6034
|
};
|
|
5909
|
-
return (
|
|
5910
|
-
id:
|
|
6035
|
+
return (g || p2) && (v[Ie] = g && p2 ? g + " / " + p2 : g + p2), {
|
|
6036
|
+
id: d,
|
|
5911
6037
|
spec: {
|
|
5912
6038
|
...e.spec,
|
|
5913
|
-
axesSpec:
|
|
5914
|
-
...
|
|
5915
|
-
annotations: e.spec.axesSpec[
|
|
6039
|
+
axesSpec: u2.map((m2, w2) => ({
|
|
6040
|
+
...m2,
|
|
6041
|
+
annotations: e.spec.axesSpec[w2].annotations
|
|
5916
6042
|
})),
|
|
5917
|
-
annotations:
|
|
6043
|
+
annotations: v
|
|
5918
6044
|
},
|
|
5919
6045
|
data: e.data
|
|
5920
6046
|
};
|
|
5921
6047
|
});
|
|
6048
|
+
return [e, ...l2];
|
|
5922
6049
|
}
|
|
5923
|
-
function
|
|
5924
|
-
|
|
5925
|
-
|
|
5926
|
-
|
|
5927
|
-
|
|
5928
|
-
|
|
5929
|
-
|
|
5930
|
-
|
|
5931
|
-
);
|
|
5932
|
-
}
|
|
5933
|
-
|
|
5934
|
-
|
|
5935
|
-
|
|
5936
|
-
const
|
|
5937
|
-
|
|
5938
|
-
|
|
5939
|
-
|
|
5940
|
-
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
|
|
5944
|
-
|
|
5945
|
-
|
|
5946
|
-
|
|
5947
|
-
|
|
5948
|
-
|
|
5949
|
-
|
|
5950
|
-
|
|
5951
|
-
|
|
5952
|
-
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
5956
|
-
|
|
5957
|
-
"Float",
|
|
5958
|
-
"Double",
|
|
5959
|
-
"String",
|
|
5960
|
-
"Bytes"
|
|
5961
|
-
];
|
|
5962
|
-
function _n(t, e) {
|
|
5963
|
-
if (e === void 0) return;
|
|
5964
|
-
const n2 = t.resultPool.getData().entries.map((s2) => s2.obj).filter(q).filter((s2) => jt.includes(s2.spec.valueType)), r = kt(e, n2), i = [...r, ...Rt(r)];
|
|
5965
|
-
if (!i.some(
|
|
5966
|
-
(s2) => s2.data instanceof I && !s2.data.getIsReadyOrError()
|
|
6050
|
+
function Kn(t, e) {
|
|
6051
|
+
if (!e) return;
|
|
6052
|
+
const n2 = new le();
|
|
6053
|
+
n2.addColumnProvider(t.resultPool), n2.addColumns(e);
|
|
6054
|
+
const r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
|
|
6055
|
+
for (const d of e)
|
|
6056
|
+
for (const g of d.spec.axesSpec) {
|
|
6057
|
+
const p2 = p$1(g);
|
|
6058
|
+
r.set(ue(p2), p2), i.set(ue(p2), p2);
|
|
6059
|
+
}
|
|
6060
|
+
const s2 = n2.getColumns((d) => Nt(d)) ?? [], o = Bt(s2, r);
|
|
6061
|
+
for (const d of o)
|
|
6062
|
+
r.set(...d), i.set(...d);
|
|
6063
|
+
const a = (n2.getColumns((d) => d.axesSpec.some((g) => {
|
|
6064
|
+
const p2 = p$1(g);
|
|
6065
|
+
for (const v of r.values())
|
|
6066
|
+
if (Z$1(v, p2))
|
|
6067
|
+
return true;
|
|
6068
|
+
return false;
|
|
6069
|
+
}), { dontWaitAllData: true, overrideLabelAnnotation: false }) ?? []).filter((d) => !ve(d.spec));
|
|
6070
|
+
for (const d of a)
|
|
6071
|
+
for (const g of d.spec.axesSpec) {
|
|
6072
|
+
const p2 = p$1(g);
|
|
6073
|
+
i.set(ue(p2), p2);
|
|
6074
|
+
}
|
|
6075
|
+
const l2 = (n2.getColumns((d) => d.axesSpec.some((g) => {
|
|
6076
|
+
const p2 = p$1(g);
|
|
6077
|
+
for (const v of i.values())
|
|
6078
|
+
if (Z$1(v, p2))
|
|
6079
|
+
return true;
|
|
6080
|
+
return false;
|
|
6081
|
+
}), { dontWaitAllData: true, overrideLabelAnnotation: false }) ?? []).filter((d) => ve(d.spec)), u2 = [...a, ...l2], c2 = Wt(r, u2);
|
|
6082
|
+
if (!c2.some(
|
|
6083
|
+
(d) => d.data instanceof E && !d.data.getIsReadyOrError()
|
|
5967
6084
|
))
|
|
5968
|
-
return t.createPFrame(
|
|
6085
|
+
return t.createPFrame(c2);
|
|
5969
6086
|
}
|
|
5970
|
-
const model = T.create().withArgs({
|
|
6087
|
+
const model = T.create().withArgs({
|
|
6088
|
+
scChain: "A",
|
|
6089
|
+
allele: false
|
|
6090
|
+
}).withUiState({
|
|
5971
6091
|
blockTitle: "V/J Usage",
|
|
5972
6092
|
weightedFlag: true,
|
|
5973
6093
|
vUsagePlotState: {
|
|
5974
6094
|
title: "V Usage",
|
|
5975
|
-
template: "
|
|
5976
|
-
currentTab: "settings"
|
|
6095
|
+
template: "heatmapClustered",
|
|
6096
|
+
currentTab: "settings",
|
|
6097
|
+
layersSettings: {
|
|
6098
|
+
heatmapClustered: {
|
|
6099
|
+
normalizationDirection: null
|
|
6100
|
+
}
|
|
6101
|
+
}
|
|
5977
6102
|
},
|
|
5978
6103
|
jUsagePlotState: {
|
|
5979
6104
|
title: "V Usage",
|
|
5980
|
-
template: "
|
|
5981
|
-
currentTab: null
|
|
6105
|
+
template: "heatmapClustered",
|
|
6106
|
+
currentTab: null,
|
|
6107
|
+
layersSettings: {
|
|
6108
|
+
heatmapClustered: {
|
|
6109
|
+
normalizationDirection: null
|
|
6110
|
+
}
|
|
6111
|
+
}
|
|
5982
6112
|
},
|
|
5983
6113
|
vjUsagePlotState: {
|
|
5984
6114
|
title: "V/J Usage",
|
|
5985
|
-
template: "
|
|
5986
|
-
currentTab: null
|
|
5987
|
-
|
|
5988
|
-
|
|
5989
|
-
|
|
5990
|
-
).output("vGeneOptions", (ctx) => ctx.resultPool.getOptions(
|
|
5991
|
-
(c2) => {
|
|
5992
|
-
var _a;
|
|
5993
|
-
return f(c2) && c2.valueType === "String" && (c2.name === "pl7.app/vdj/geneHit" || c2.name === "pl7.app/vdj/geneHitWithAllele") && ((_a = c2.domain) == null ? void 0 : _a["pl7.app/vdj/reference"]) === "VGene";
|
|
5994
|
-
}
|
|
5995
|
-
)).output("jGeneOptions", (ctx) => {
|
|
5996
|
-
const inputRef = ctx.args.vGeneRef;
|
|
5997
|
-
if (inputRef === void 0) return void 0;
|
|
5998
|
-
const vGeneSpec = ctx.resultPool.getPColumnSpecByRef(inputRef);
|
|
5999
|
-
if (vGeneSpec === void 0) return void 0;
|
|
6000
|
-
return ctx.resultPool.getCanonicalOptions({ main: inputRef }, [
|
|
6001
|
-
{
|
|
6002
|
-
axes: [{ anchor: "main", idx: 0 }],
|
|
6003
|
-
name: vGeneSpec.name,
|
|
6004
|
-
domain: {
|
|
6005
|
-
"pl7.app/vdj/reference": "JGene",
|
|
6006
|
-
"pl7.app/vdj/scClonotypeChain": { anchor: "main" },
|
|
6007
|
-
"pl7.app/vdj/scClonotypeChain/index": { anchor: "main" }
|
|
6115
|
+
template: "heatmapClustered",
|
|
6116
|
+
currentTab: null,
|
|
6117
|
+
layersSettings: {
|
|
6118
|
+
heatmapClustered: {
|
|
6119
|
+
normalizationDirection: null
|
|
6008
6120
|
}
|
|
6009
6121
|
}
|
|
6010
|
-
|
|
6011
|
-
}).
|
|
6012
|
-
|
|
6013
|
-
|
|
6014
|
-
|
|
6015
|
-
|
|
6122
|
+
}
|
|
6123
|
+
}).argsValid((ctx) => ctx.args.datasetRef !== void 0).output(
|
|
6124
|
+
"datasetOptions",
|
|
6125
|
+
(ctx) => ctx.resultPool.getOptions(
|
|
6126
|
+
[{
|
|
6127
|
+
axes: [
|
|
6128
|
+
{ name: "pl7.app/sampleId" },
|
|
6129
|
+
{ name: "pl7.app/vdj/clonotypeKey" }
|
|
6130
|
+
],
|
|
6131
|
+
annotations: { "pl7.app/isAnchor": "true" }
|
|
6132
|
+
}, {
|
|
6133
|
+
axes: [
|
|
6134
|
+
{ name: "pl7.app/sampleId" },
|
|
6135
|
+
{ name: "pl7.app/vdj/scClonotypeKey" }
|
|
6136
|
+
],
|
|
6137
|
+
annotations: { "pl7.app/isAnchor": "true" }
|
|
6138
|
+
}],
|
|
6016
6139
|
{
|
|
6017
|
-
|
|
6018
|
-
|
|
6019
|
-
}, { anchor: "main", idx: 0 }],
|
|
6020
|
-
annotations: {
|
|
6021
|
-
"pl7.app/isAbundance": "true",
|
|
6022
|
-
"pl7.app/abundance/normalized": "false"
|
|
6023
|
-
}
|
|
6140
|
+
// suppress native label of the column (e.g. "Number of Reads") to show only the dataset label
|
|
6141
|
+
label: { includeNativeLabel: false }
|
|
6024
6142
|
}
|
|
6025
|
-
)
|
|
6143
|
+
)
|
|
6144
|
+
).output("datasetSpec", (ctx) => {
|
|
6145
|
+
if (ctx.args.datasetRef === void 0) {
|
|
6146
|
+
return void 0;
|
|
6147
|
+
}
|
|
6148
|
+
return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);
|
|
6026
6149
|
}).output("pf", (ctx) => {
|
|
6027
6150
|
var _a, _b;
|
|
6028
6151
|
const pCols = (_b = (_a = ctx.outputs) == null ? void 0 : _a.resolve("pf")) == null ? void 0 : _b.getPColumns();
|
|
6029
6152
|
if (pCols === void 0) {
|
|
6030
6153
|
return void 0;
|
|
6031
6154
|
}
|
|
6032
|
-
return
|
|
6155
|
+
return Kn(ctx, pCols);
|
|
6033
6156
|
}).output("isRunning", (ctx) => {
|
|
6034
6157
|
var _a;
|
|
6035
6158
|
return ((_a = ctx.outputs) == null ? void 0 : _a.getIsReadyOrError()) === false;
|
|
6036
6159
|
}).title((ctx) => {
|
|
6037
6160
|
var _a;
|
|
6038
6161
|
return ((_a = ctx.uiState) == null ? void 0 : _a.blockTitle) ?? "V/J Usage";
|
|
6039
|
-
}).sections((
|
|
6162
|
+
}).sections((_2) => [
|
|
6040
6163
|
{ type: "link", href: "/", label: "V Gene Usage" },
|
|
6041
6164
|
{ type: "link", href: "/jUsage", label: "J Gene Usage" },
|
|
6042
6165
|
{ type: "link", href: "/vjUsage", label: "V/J Gene Usage" }
|