@platforma-sdk/model 1.29.2 → 1.29.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/PFrameForGraphs.d.ts.map +1 -1
- package/dist/components/PlDataTable.d.ts +38 -4
- package/dist/components/PlDataTable.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +583 -479
- package/dist/index.mjs.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/components/PFrameForGraphs.test.ts +37 -0
- package/src/components/PFrameForGraphs.ts +21 -7
- package/src/components/PlDataTable.ts +250 -67
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PFrameForGraphs.d.ts","sourceRoot":"","sources":["../../src/components/PFrameForGraphs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"PFrameForGraphs.d.ts","sourceRoot":"","sources":["../../src/components/PFrameForGraphs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,OAAO,EAEP,aAAa,EACb,YAAY,EAED,MAAM,iCAAiC,CAAC;AAQrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAoD7C,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAC3D,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAuFhD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,GAAG,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,CAetI;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,EACxD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,GAC5D,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,CAwB7C;AAWD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EACxC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,YAAY,CAAC,EAAE,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC,EAAE,GACzD,YAAY,GAAG,SAAS,CAuB1B"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
import { AxisSpec, DataInfo, JoinEntry, PColumn, PColumnIdAndSpec, PColumnSpec, PColumnValues, PTableHandle, PTableRecordFilter, PTableSorting } from '@milaboratories/pl-model-common';
|
|
2
|
-
import { RenderCtx, TreeNodeAccessor } from '../render';
|
|
1
|
+
import { AxisSpec, CanonicalizedJson, DataInfo, JoinEntry, PColumn, PColumnIdAndSpec, PColumnSpec, PColumnValues, PTableColumnSpec, PTableHandle, PTableRecordFilter, PTableSorting } from '@milaboratories/pl-model-common';
|
|
2
|
+
import { AxisLabelProvider, ColumnProvider, RenderCtx, TreeNodeAccessor } from '../render';
|
|
3
|
+
/** Canonicalized PTableColumnSpec JSON string */
|
|
4
|
+
export type PTableColumnSpecJson = CanonicalizedJson<PTableColumnSpec>;
|
|
5
|
+
/** Encode `PTableColumnId` as canonicalized JSON string */
|
|
6
|
+
export declare function strinfigyPTableColumnId(spec: PTableColumnSpec): PTableColumnSpecJson;
|
|
7
|
+
/** Parse `PTableColumnId` from JSON string */
|
|
8
|
+
export declare function parsePTableColumnId(str: PTableColumnSpecJson): PTableColumnSpec;
|
|
3
9
|
/** Data table state */
|
|
4
10
|
export type PlDataTableGridState = {
|
|
5
11
|
/**
|
|
@@ -24,7 +30,7 @@ export type PlDataTableGridState = {
|
|
|
24
30
|
/** Includes column visibility */
|
|
25
31
|
columnVisibility?: {
|
|
26
32
|
/** All colIds which were hidden */
|
|
27
|
-
hiddenColIds:
|
|
33
|
+
hiddenColIds: PTableColumnSpecJson[];
|
|
28
34
|
};
|
|
29
35
|
/** current sheet selections */
|
|
30
36
|
sheets?: Record<string, string | number>;
|
|
@@ -249,18 +255,46 @@ export type CreatePlDataTableOps = {
|
|
|
249
255
|
*/
|
|
250
256
|
coreJoinType?: 'inner' | 'full';
|
|
251
257
|
};
|
|
258
|
+
/** Check if column is a label column */
|
|
259
|
+
export declare function isLabelColumn(column: PColumnSpec): boolean;
|
|
260
|
+
/** Get all label columns from the result pool */
|
|
261
|
+
export declare function getAllLabelColumns(resultPool: AxisLabelProvider & ColumnProvider): PColumn<TreeNodeAccessor | DataInfo<TreeNodeAccessor>>[] | undefined;
|
|
262
|
+
/** Get label columns matching the provided columns from the result pool */
|
|
263
|
+
export declare function getMatchingLabelColumns(columns: PColumnIdAndSpec[], allLabelColumns: PColumn<TreeNodeAccessor | DataInfo<TreeNodeAccessor>>[]): PColumn<TreeNodeAccessor | DataInfo<TreeNodeAccessor>>[];
|
|
264
|
+
/** Check if all columns are computed */
|
|
265
|
+
export declare function allColumnsComputed(columns: PColumn<PColumnValues | TreeNodeAccessor | DataInfo<TreeNodeAccessor>>[]): boolean;
|
|
252
266
|
/**
|
|
253
267
|
* Create p-table handle given ui table state
|
|
254
268
|
*
|
|
255
269
|
* @param ctx context
|
|
256
270
|
* @param columns column list
|
|
257
271
|
* @param tableState table ui state
|
|
258
|
-
* @returns
|
|
272
|
+
* @returns PlAgDataTable table source
|
|
259
273
|
*/
|
|
260
274
|
export declare function createPlDataTable<A, U>(ctx: RenderCtx<A, U>, columns: PColumn<TreeNodeAccessor | PColumnValues | DataInfo<TreeNodeAccessor>>[], tableState: PlDataTableState | undefined): PTableHandle | undefined;
|
|
261
275
|
export declare function createPlDataTable<A, U>(ctx: RenderCtx<A, U>, columns: PColumn<TreeNodeAccessor | PColumnValues | DataInfo<TreeNodeAccessor>>[], tableState: PlDataTableState | undefined, ops: CreatePlDataTableOps): PTableHandle | undefined;
|
|
262
276
|
/** @deprecated use method with extended ops as the last argument */
|
|
263
277
|
export declare function createPlDataTable<A, U>(ctx: RenderCtx<A, U>, columns: PColumn<TreeNodeAccessor | PColumnValues | DataInfo<TreeNodeAccessor>>[], tableState: PlDataTableState | undefined, filters: PTableRecordFilter[]): PTableHandle | undefined;
|
|
278
|
+
/** PlAgDataTable model */
|
|
279
|
+
export type PlDataTableModel = {
|
|
280
|
+
/** p-table specification (full, including hidden columns) */
|
|
281
|
+
tableSpec: PTableColumnSpec[];
|
|
282
|
+
/** p-table handle (integration of visible columns data) */
|
|
283
|
+
tableHandle: PTableHandle;
|
|
284
|
+
};
|
|
285
|
+
/** Check if column is hidden by default */
|
|
286
|
+
export declare function isColumnOptional(spec: {
|
|
287
|
+
annotations?: Record<string, string>;
|
|
288
|
+
}): boolean;
|
|
289
|
+
/**
|
|
290
|
+
* Create p-table spec and handle given ui table state
|
|
291
|
+
*
|
|
292
|
+
* @param ctx context
|
|
293
|
+
* @param columns column list
|
|
294
|
+
* @param tableState table ui state
|
|
295
|
+
* @returns PlAgDataTableV2 table source
|
|
296
|
+
*/
|
|
297
|
+
export declare function createPlDataTableV2<A, U>(ctx: RenderCtx<A, U>, columns: PColumn<TreeNodeAccessor | PColumnValues | DataInfo<TreeNodeAccessor>>[], mainColumnPredicate: (spec: PColumnSpec) => boolean, tableState: PlDataTableState | undefined, ops?: CreatePlDataTableOps): PlDataTableModel | undefined;
|
|
264
298
|
/** Create sheet entries for PlDataTable */
|
|
265
299
|
export declare function createPlDataTableSheet<A, U>(ctx: RenderCtx<A, U>, axis: AxisSpec, values: (string | number)[]): PlDataTableSheet;
|
|
266
300
|
//# sourceMappingURL=PlDataTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlDataTable.d.ts","sourceRoot":"","sources":["../../src/components/PlDataTable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,aAAa,
|
|
1
|
+
{"version":3,"file":"PlDataTable.d.ts","sourceRoot":"","sources":["../../src/components/PlDataTable.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var We=Object.defineProperty;var qe=(t,e,n)=>e in t?We(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var R=(t,e,n)=>qe(t,typeof e!="symbol"?e+"":e,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@milaboratories/pl-model-common"),be=require("canonicalize"),K=require("zod"),ge=require("@milaboratories/pl-error-like");class Ae extends Error{constructor(e,n){super(`${e.length}${n?"+":""} errors, first error: `+e[0].message),this.errors=e,this.moreErrors=n}}function Pe(t){if(!t.ok)throw new Ae(t.errors,t.moreErrors);return t.value}function He(t){return new Proxy(t,{get(e,n){return Pe(e[n])}})}function x(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||t===null?W(t):t}function U(t){return{type:"GetFromCtx",variable:t}}function ze(t){return{type:"Isolate",cfg:t}}const Ye=U("$args"),Xe=U("$it"),Qe=U("$prod"),Ze=U("$staging"),et=U("$ui");function W(t){return{type:"Immediate",value:t}}function fe(t){const e={};for(const[n,r]of Object.entries(t))e[n]=x(r);return{type:"MakeObject",template:e}}function tt(...t){const e=[];for(const n of t)e.push(x(n));return{type:"MakeArray",template:e}}function H(t,e){return{type:"GetJsonField",source:x(t),field:x(e)}}function nt(t,e,n="$it"){return{type:"MapRecordValues",source:t,mapping:e,itVar:n}}function rt(t,e,n="$it"){return{type:"MapArrayValues",source:t,mapping:e,itVar:n}}function it(t){return{type:"Flatten",source:t}}function st(t){return{type:"IsEmpty",arg:t}}function ot(t){return{type:"Not",operand:t}}function at(t,e){return{type:"And",operand1:t,operand2:e}}function lt(t,e){return{type:"Or",operand1:t,operand2:e}}function ut(t,e){return{type:"GetResourceField",source:x(t),field:x(e)}}function ct(){return function(t){return{type:"GetResourceValueAsJson",source:x(t)}}}function dt(t,e,n="$it"){return{type:"MapResourceFields",source:t,mapping:e,itVar:n}}function pt(t){return{type:"GetBlobContent",source:x(t)}}function ft(t){return{type:"GetBlobContentAsString",source:x(t)}}function ht(){return function(t){return{type:"GetBlobContentAsJson",source:x(t)}}}function gt(t){return{type:"GetDownloadedBlobContent",source:x(t)}}function mt(t){return{type:"GetOnDemandBlobContent",source:x(t)}}function yt(t,e){return{type:"ExtractArchiveAndGetURL",format:e,source:x(t)}}function vt(t){return{type:"GetImportProgress",source:x(t)}}function bt(t,e){return{type:"GetLastLogs",source:x(t),lines:e}}function At(t,e){return{type:"GetProgressLog",source:x(t),patternToSearch:e}}function Pt(t,e){return{type:"GetProgressLogWithInfo",source:x(t),patternToSearch:e}}function wt(t){return{type:"GetLogHandle",source:x(t)}}function St(){return typeof globalThis.getPlatforma<"u"||typeof globalThis.platforma<"u"}function we(t){if(t&&typeof globalThis.getPlatforma=="function")return globalThis.getPlatforma(t);if(typeof globalThis.platforma<"u")return globalThis.platforma;throw new Error("Can't get platforma instance.")}function xt(){if(typeof globalThis.cfgRenderCtx<"u")return globalThis.cfgRenderCtx}function y(){if(typeof globalThis.cfgRenderCtx<"u")return globalThis.cfgRenderCtx;throw new Error("Not in config rendering context")}function te(t,e){const n=xt();if(n===void 0)return!1;if(t in n.callbackRegistry)throw new Error(`Callback with key ${t} already registered.`);return n.callbackRegistry[t]=e,!0}const ae=new Map;function It(t,e){t in y().callbackRegistry||(y().callbackRegistry[t]=n=>{for(const r of ae.get(t))r(n)},ae.set(t,[])),ae.get(t).push(e)}class C{constructor(e,n=r=>r){R(this,"isResolved",!1);R(this,"resolvedValue");this.handle=e,this.postProcess=n,It(e,r=>{this.resolvedValue=n(r),this.isResolved=!0})}map(e){return new C(this.handle,n=>e(this.postProcess(n)))}mapDefined(e){return new C(this.handle,n=>{const r=this.postProcess(n);return r?e(r):void 0})}toJSON(){return this.isResolved?this.resolvedValue:{__awaited_futures__:[this.handle]}}}function re(t,e){return t===void 0?void 0:e(t)}class _{constructor(e,n){this.handle=e,this.resolvePath=n}resolve(...e){const n=e.map(r=>({assertFieldType:"Input",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveOutput(...e){const n=e.map(r=>({assertFieldType:"Output",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveInput(...e){const n=e.map(r=>({assertFieldType:"Input",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveAny(...e){return this.resolveWithCommon({},...e)}resolveWithCommon(e,...n){const r=[...this.resolvePath,...n.map(i=>typeof i=="string"?i:i.field)];return re(y().resolveWithCommon(this.handle,e,...n),i=>new _(i,r))}get resourceType(){return y().getResourceType(this.handle)}getInputsLocked(){return y().getInputsLocked(this.handle)}getOutputsLocked(){return y().getOutputsLocked(this.handle)}getIsReadyOrError(){return y().getIsReadyOrError(this.handle)}getIsFinal(){return y().getIsFinal(this.handle)}getError(){const e=[...this.resolvePath,"error"];return re(y().getError(this.handle),n=>new _(n,e))}listInputFields(){return y().listInputFields(this.handle)}listOutputFields(){return y().listOutputFields(this.handle)}listDynamicFields(){return y().listDynamicFields(this.handle)}getKeyValueBase64(e){return y().getKeyValueBase64(this.handle,e)}getKeyValueAsString(e){return y().getKeyValueAsString(this.handle,e)}getKeyValueAsJson(e){const n=this.getKeyValueAsString(e);if(n==null)throw new Error("Resource has no content.");return JSON.parse(n)}getDataBase64(){return y().getDataBase64(this.handle)}getDataAsString(){return y().getDataAsString(this.handle)}getDataAsJson(){const e=this.getDataAsString();if(e==null)throw new Error("Resource has no content.");return JSON.parse(e)}getPColumns(e=!1,n=""){const r=this.parsePObjectCollection(e,n);return r===void 0?void 0:Object.entries(r).map(([,s])=>{if(!u.isPColumn(s))throw new Error(`not a PColumn (kind = ${s.spec.kind})`);return s})}parsePObjectCollection(e=!1,n=""){const r=y().parsePObjectCollection(this.handle,e,n,...this.resolvePath);if(r===void 0)return;const i={};for(const[s,o]of Object.entries(r)){const a=[...this.resolvePath,s];i[s]=u.mapPObjectData(o,l=>new _(l,a))}return i}getFileContentAsBase64(){return new C(y().getBlobContentAsBase64(this.handle))}getFileContentAsString(){return new C(y().getBlobContentAsString(this.handle))}getFileContentAsJson(){return new C(y().getBlobContentAsString(this.handle)).mapDefined(e=>JSON.parse(e))}getBlobContentAsBase64(){return this.getFileContentAsBase64()}getBlobContentAsString(){return this.getFileContentAsString()}getFileHandle(){return new C(y().getDownloadedBlobContentHandle(this.handle))}getDownloadedBlobHandle(){return this.getFileHandle()}getRemoteFileHandle(){return new C(y().getOnDemandBlobContentHandle(this.handle))}getOnDemandBlobHandle(){return this.getRemoteFileHandle()}extractArchiveAndGetURL(e){return new C(y().extractArchiveAndGetURL(this.handle,e))}getImportProgress(){return new C(y().getImportProgress(this.handle))}getLastLogs(e){return new C(y().getLastLogs(this.handle,e))}getProgressLog(e){return new C(y().getProgressLog(this.handle,e))}getProgressLogWithInfo(e){return new C(y().getProgressLogWithInfo(this.handle,e))}getLogHandle(){return new C(y().getLogHandle(this.handle))}allFieldsResolved(e="Input"){switch(e){case"Input":return this.getInputsLocked()&&this.listInputFields().every(n=>this.resolve({field:n,assertFieldType:"Input"})!==void 0);case"Output":return this.getOutputsLocked()&&this.listOutputFields().every(n=>this.resolve({field:n,assertFieldType:"Output"})!==void 0)}}mapFields(e,n){const{fieldType:r,requireLocked:i,skipUnresolved:s}={fieldType:"Input",requireLocked:!0,skipUnresolved:!1,...n},o=e;if(i&&(r==="Input"&&!this.getInputsLocked()||r==="Output"&&!this.getOutputsLocked()))return;let l=(r==="Input"?this.listInputFields():r==="Output"?this.listOutputFields():this.listDynamicFields()).map(c=>[c,this.resolve({field:c,assertFieldType:r})]);return s&&(l=l.filter(c=>c[1]!==void 0)),l.map(([c,S])=>o(c,S))}}const Se="staging",xe="main",Ct={explicitColumnsSupport:!0,inlineColumnsSupport:!0,activeArgs:!0};function Ie(t){return typeof t=="object"&&t!==null&&"__awaited_futures__"in t}function ue(t,e,n){if(e.has(n))return;if(e.add(n),typeof n==="object")if(Ie(n))n.__awaited_futures__.forEach(i=>t.add(i));else if(Array.isArray(n))for(const i of n)ue(t,e,i);else for(const[,i]of Object.entries(n))i!==n&&ue(t,e,i)}function _t(t){const e=new Set;return ue(e,new Set,t),e}const Lt=Object.freeze(Object.defineProperty({__proto__:null,GlobalCfgRenderCtxFeatureFlags:Ct,MainAccessorName:xe,StagingAccessorName:Se,getAllFutureAwaits:_t,isFutureAwait:Ie},Symbol.toStringTag,{value:"Module"})),Ce="pl7.app/label",_e="pl7.app/trace",Le=K.z.object({type:K.z.string(),importance:K.z.number().optional(),id:K.z.string().optional(),label:K.z.string()}),Te=K.z.array(Le),Tt=.001,Rt="__LABEL__",me="__LABEL__@1";function he(t,e,n={}){const r=new Map,i=new Map,s=t.map(p=>{var Z,O;const d=e(p);let g,w,v;"spec"in d&&typeof d.spec=="object"?(g=d.spec,w=d.prefixTrace,v=d.suffixTrace):g=d;const b=(Z=g.annotations)==null?void 0:Z[Ce],m=(O=g.annotations)==null?void 0:O[_e],I=(m?Te.safeParse(JSON.parse(m)).data:void 0)??[],A=[...w??[],...I,...v??[]];if(b){const T={label:b,type:Rt,importance:-2};n.addLabelAsSuffix?A.push(T):A.splice(0,0,T)}const E=[],J=new Map;for(let T=A.length-1;T>=0;--T){const{type:k}=A[T],se=A[T].importance??0,B=(J.get(k)??0)+1;J.set(k,B);const P=`${k}@${B}`;i.set(P,(i.get(P)??0)+1),r.set(P,Math.max(r.get(P)??Number.NEGATIVE_INFINITY,se-(A.length-T)*Tt)),E.push({...A[T],fullType:P,occurenceIndex:B})}return E.reverse(),{value:p,spec:g,label:b,fullTrace:E}}),o=[],a=[],l=[...r];l.sort(([,p],[,d])=>d-p);for(const[p]of l)p.endsWith("@1")||i.get(p)===t.length?o.push(p):a.push(p);const c=p=>{const d=[];for(let g=0;g<s.length;g++){const w=s[g],v=w.fullTrace.filter(I=>p.has(I.fullType));if(v.length===0)return;const b=v.map(I=>I.label),m=n.separator??" / ";d.push({label:b.join(m),value:w.value})}return d};if(o.length===0){if(a.length!==0)throw new Error("Assertion error.");const p=c(new Set(me));if(p===void 0)throw new Error("Assertion error.");return p}let S=0,f=0;for(;S<o.length;){const p=new Set;n.includeNativeLabel&&p.add(me);for(let g=0;g<S;++g)p.add(o[g]);p.add(o[f]);const d=c(p);if(d!==void 0&&new Set(d.map(g=>g.label)).size===t.length)return d;f++,f>=o.length&&(S++,f=S)}const h=c(new Set([...o,...a]));if(h===void 0)throw new Error("Assertion error.");return h}const Q="PColumnData/",z=Q+"ResourceMap",Y=Q+"Partitioned/ResourceMap",N=Q+"JsonPartitioned",F=Q+"BinaryPartitioned",Re=Q+"Partitioned/",X=Re+"JsonPartitioned",$=Re+"BinaryPartitioned";function Oe(t,e,n,r=[],i){if(t===void 0)return!1;switch(t.resourceType.name){case z:{let s=t.getInputsLocked();for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"}),l=[...r,...JSON.parse(o)],c=a===void 0?void 0:e(a);c===void 0&&(s=!1),(c!==void 0||i)&&n.push({key:l,value:c})}return s}case Y:{let s=t.getInputsLocked();for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)s=!1;else{const l=[...r,...JSON.parse(o)],c=Oe(a,e,n,l,i);s=s&&c}}return s}default:throw new Error(`Unknown resource type: ${t.resourceType.name}`)}}function Ot(t,e,n=!1){const r=[];return{isComplete:Oe(t,e,r,[],n),data:r}}const ce=t=>{if(t.endsWith(".index"))return{baseKey:t.substring(0,t.length-6),type:"index"};if(t.endsWith(".values"))return{baseKey:t.substring(0,t.length-7),type:"values"};throw new Error(`key must ends on .index/.values for binary p-column, got: ${t}`)};function Ee(t){if(!t)return;const e=t.resourceType.name,n=t.getDataAsJson(),r=[];let i=0;switch(e){case z:i=n.keyLength;break;case Y:i=n.partitionKeyLength+n.keyLength;break;case N:case F:i=n.partitionKeyLength;break;case $:case X:i=n.superPartitionKeyLength+n.partitionKeyLength;break}switch(e){case z:case N:case F:for(let s of t.listInputFields()){e===F&&(s=ce(s).baseKey);const o=[...JSON.parse(s)];r.push(o)}break;case Y:case $:case X:for(const s of t.listInputFields()){const o=[...JSON.parse(s)],a=t.resolve({field:s,assertFieldType:"Input"});if(a!==void 0)for(let l of a.listInputFields()){e===$&&(l=ce(l).baseKey);const c=[...o,...JSON.parse(l)];r.push(c)}}break}return{data:r,keyLength:i}}function Et(t){if(t.type!=="JsonPartitioned"&&t.type!=="BinaryPartitioned")throw new Error(`Splitting requires Partitioned DataInfoEntries, got ${t.type}`);const{parts:e,partitionKeyLength:n}=t,r=[];for(let i=0;i<n;++i)r.push(new Set);for(const i of e){const s=i.key;if(s.length!==n)throw new Error(`Key length (${s.length}) does not match partition length (${n}) for key: ${JSON.stringify(s)}`);for(let o=0;o<n;++o)r[o].add(s[o])}return r.map(i=>Array.from(i.values()))}function De(t){if(t===void 0)return;if(u.isDataInfoEntries(t))return Et(t);const e=Ee(t);if(!e)return;const{data:n,keyLength:r}=e,i=[];for(let s=0;s<r;++s)i.push(new Set);for(const s of n){if(s.length!==r)throw new Error("key length does not match partition length");for(let o=0;o<r;++o)i[o].add(s[o])}return i.map(s=>Array.from(s.values()))}function ie(t,e=[]){if(t===void 0||!t.getIsReadyOrError())return;const n=t.resourceType.name,r=t.getDataAsJson();if(e.length>0&&(n===X||n===$))throw new Error(`Unexpected nested super-partitioned resource: ${n}`);switch(n){case z:case Y:throw new Error(`Only data columns are supported, got: ${n}`);case N:{if(typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing partitionKeyLength in metadata for ${n}`);const i=[];for(const s of t.listInputFields()){const o=t.resolve({field:s,assertFieldType:"Input"});if(o===void 0)return;const a=[...e,...JSON.parse(s)];i.push({key:a,value:o})}return{type:"JsonPartitioned",partitionKeyLength:r.partitionKeyLength,parts:i}}case F:{if(typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing partitionKeyLength in metadata for ${n}`);const i=[],s=new Map;for(const o of t.listInputFields()){const a=ce(o),l=t.resolve({field:o,assertFieldType:"Input"});if(l===void 0)return;let c=s.get(a.baseKey);c||(c={},s.set(a.baseKey,c)),a.type==="index"?c.index=l:c.values=l}for(const[o,a]of s.entries()){if(!a.index||!a.values)return;const l=[...e,...JSON.parse(o)];i.push({key:l,value:{index:a.index,values:a.values}})}return{type:"BinaryPartitioned",partitionKeyLength:r.partitionKeyLength,parts:i}}case X:{if(typeof(r==null?void 0:r.superPartitionKeyLength)!="number"||typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);const i=r.superPartitionKeyLength+r.partitionKeyLength,s=[];for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)return;if(a.resourceType.name!==N)throw new Error(`Expected ${N} inside ${n}, but got ${a.resourceType.name}`);const l=ie(a,JSON.parse(o));if(l===void 0)return;if(l.type!=="JsonPartitioned")throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);s.push(...l.parts)}return{type:"JsonPartitioned",partitionKeyLength:i,parts:s}}case $:{if(typeof(r==null?void 0:r.superPartitionKeyLength)!="number"||typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);const i=r.superPartitionKeyLength+r.partitionKeyLength,s=[];for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)return;if(a.resourceType.name!==F)throw new Error(`Expected ${F} inside ${n}, but got ${a.resourceType.name}`);const l=ie(a,JSON.parse(o));if(l===void 0)return;if(l.type!=="BinaryPartitioned")throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);s.push(...l.parts)}return{type:"BinaryPartitioned",partitionKeyLength:i,parts:s}}default:throw new Error(`Unknown resource type: ${n}`)}}function Fe(t){if(t!==void 0){if(u.isDataInfoEntries(t))return t;if(u.isDataInfo(t))return u.dataInfoToEntries(t);if(t instanceof _)return ie(t);throw new Error(`Unexpected input type: ${typeof t}`)}}function ke(t,e){const n=[...e].sort((s,o)=>o[0]-s[0]);if(t.type==="JsonPartitioned"||t.type==="BinaryPartitioned"){const{partitionKeyLength:s}=t;for(const[o]of e)if(o>=s)throw new Error(`Can't filter on non-partitioned axis ${o}. Must be >= ${s}`)}else if(t.type==="Json"){const{keyLength:s}=t;for(const[o]of e)if(o>=s)throw new Error(`Can't filter on non-data axis ${o}. Must be >= ${s}`)}const r=s=>{for(const[o,a]of n)if(s[o]!==a)return!1;return!0},i=s=>{const o=[...s];for(const[a]of n)o.splice(a,1);return o};switch(t.type){case"Json":{const s=t.data.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"Json",keyLength:t.keyLength-e.length,data:s}}case"JsonPartitioned":{const s=t.parts.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"JsonPartitioned",partitionKeyLength:t.partitionKeyLength-e.length,parts:s}}case"BinaryPartitioned":{const s=t.parts.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"BinaryPartitioned",partitionKeyLength:t.partitionKeyLength-e.length,parts:s}}}}class Dt{constructor(e){this.columns=e}selectColumns(e){const n=typeof e=="function"?e:u.selectorsToPredicate(e);return this.columns.filter(r=>n(r.spec))}}function Ft(t){if(t)return t.map(e=>({type:`split:${u.canonicalizeAxisId(e.axisId)}`,label:e.label,importance:1e6}))}function kt(t){if(t)return t.map(e=>[e.axisIdx,e.value])}function jt(t,e){if(!e||e.length===0)return t;const n=[...e].sort((r,i)=>r[0]-i[0]);return be({id:t,axisFilters:n})}function Vt(t){if(!t||typeof t!="object")return!1;const e=t,n=e.domain&&typeof e.domain=="object"&&Object.values(e.domain).some(i=>typeof i=="object"&&i!==null&&"anchor"in i),r=e.axes&&Array.isArray(e.axes)&&e.axes.some(i=>typeof i=="object"&&i!==null&&"anchor"in i);return!!e.domainAnchor||n||r}function Kt(t){if(typeof t!="object"||!("axes"in t)||t.axes===void 0)return[];const e=t.axes.map((n,r)=>typeof n=="object"&&"split"in n&&n.split===!0?r:-1).filter(n=>n!==-1);if(e.length>0&&t.partialAxesMatch!==void 0)throw new Error("Axis splitting is not supported when `partialAxesMatch` is defined.");return e.sort((n,r)=>n-r),e}class de{constructor(){R(this,"defaultProviderStore",[]);R(this,"providers",[new Dt(this.defaultProviderStore)]);R(this,"axisLabelProviders",[])}addColumnProvider(e){return this.providers.push(e),this}addAxisLabelProvider(e){return this.axisLabelProviders.push(e),this}addColumns(e){return this.defaultProviderStore.push(...e),this}addColumn(e){return this.defaultProviderStore.push(e),this}findLabels(e){for(const n of this.axisLabelProviders){const r=n.findLabels(e);if(r)return r}}getUniversalEntries(e,n){const{anchorCtx:r,labelOps:i,dontWaitAllData:s=!1,overrideLabelAnnotation:o=!1}=n??{},a={...o&&(i==null?void 0:i.includeNativeLabel)!==!1?{includeNativeLabel:!0}:{},...i??{}},l=typeof e=="function"?[e]:Array.isArray(e)?e:[e],c=[];for(const h of l){const p=Vt(h);let d;if(p){if(!r)throw new Error("Anchored selectors require an AnchoredIdDeriver to be provided in options.");d=u.resolveAnchors(r.anchors,h,n)}else d=h;const g=new Set,w=[];for(const m of this.providers){const I=m.selectColumns(d);for(const A of I){if(g.has(A.id))throw new Error(`Duplicate column id ${A.id} in provider ${m.constructor.name}`);g.add(A.id),w.push(A)}}if(w.length===0)continue;const v=Kt(h),b=v.length>0;for(const m of w){if(!u.isPColumnSpec(m.spec))continue;const I=m.spec;if(b){const A=Fe(m.data);if(!A){if(s)continue;return}if(!u.isPartitionedDataInfoEntries(A))throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${A.type} for column ${m.id}`);const E=De(A),J=v[v.length-1];if(J>=A.partitionKeyLength)throw new Error(`Not enough partition keys (${A.partitionKeyLength}) for requested split axes (max index ${J}) in column ${I.name}`);const Z=v.map(P=>this.findLabels(u.getAxisId(I.axesSpec[P]))),O=[],T=(P,M)=>{if(M>=v.length){if(O.push([...P]),O.length>1e4)throw new Error("Too many key combinations, aborting.");return}const D=v[M];if(D>=E.length)throw new Error(`Axis index ${D} out of bounds for unique keys array (length ${E.length}) during split key generation for column ${m.id}`);const j=E[D];if(!j||j.length===0){O.length=0;return}for(const ee of j)P.push(ee),T(P,M+1),P.pop()};if(T([],0),O.length===0)continue;const k=[...I.axesSpec],se=v.map(P=>P);for(let P=v.length-1;P>=0;P--)k.splice(v[P],1);const B={...I,axesSpec:k};for(const P of O){const M=P.map((D,j)=>{const ee=se[j],Me=u.getAxisId(I.axesSpec[ee]),oe=Z[j],Ge=(oe==null?void 0:oe[D])??String(D);return{axisIdx:ee,axisId:Me,value:D,label:Ge}});c.push({type:"split",originalColumn:m,spec:I,adjustedSpec:B,dataEntries:A,axisFilters:M})}}else c.push({type:"direct",originalColumn:m,spec:I,adjustedSpec:I})}}if(c.length===0)return[];const S=he(c,h=>({spec:h.spec,suffixTrace:h.type==="split"?Ft(h.axisFilters):void 0}),a),f=[];for(const{value:h,label:p}of S){const{originalColumn:d,spec:g}=h,w=h.type==="split"?h.axisFilters:void 0,v=kt(w);let b;r?b=r.deriveS(g,v):b=jt(d.id,v);let m={...h.adjustedSpec};o&&(m={...m,annotations:{...m.annotations??{},"pl7.app/label":p}}),f.push({id:b,spec:m,data:()=>h.type==="split"?u.entriesToDataInfo(ke(h.dataEntries,v)):h.originalColumn.data,label:p})}return f}getColumns(e,n){const r=this.getUniversalEntries(e,{overrideLabelAnnotation:!0,...n??{}});if(!r)return;const i=[];for(const s of r){const o=s.data();if(!o){if(n!=null&&n.dontWaitAllData)continue;return}i.push({id:s.id,spec:s.spec,data:o})}return i}}function le(t,e){if(t===void 0)return e===void 0;if(e===void 0)return!0;for(const n in e)if(t[n]!==e[n])return!1;return!0}function ye(t){return u.mapPObjectData(t,e=>e instanceof _?e.handle:u.isDataInfo(e)?u.mapDataInfo(e,n=>n.handle):e)}class je{constructor(){R(this,"ctx",y())}calculateOptions(e){return this.ctx.calculateOptions(e)}getOptions(e,n){const r=typeof e=="function"?e:u.selectorsToPredicate(e),i=this.getSpecs().entries.filter(s=>r(s.obj));return typeof n=="object"||typeof n>"u"?he(i,s=>s.obj,n??{}).map(({value:{ref:s},label:o})=>({ref:s,label:o})):i.map(s=>({ref:s.ref,label:n(s.obj,s.ref)}))}resolveAnchorCtx(e){if(e instanceof u.AnchoredIdDeriver)return e;const n={};for(const[r,i]of Object.entries(e))if(u.isPlRef(i)){const s=this.getPColumnSpecByRef(i);if(!s)return;n[r]=s}else n[r]=i;return new u.AnchoredIdDeriver(n)}getAnchoredPColumns(e,n,r){const i=this.resolveAnchorCtx(e);if(i)return new de().addColumnProvider(this).addAxisLabelProvider(this).getColumns(n,{...r,anchorCtx:i})}getCanonicalOptions(e,n,r){const i=this.resolveAnchorCtx(e);if(!i)return;const s=new de().addColumnProvider(this).addAxisLabelProvider(this).getUniversalEntries(n,{...r,anchorCtx:i});if(s)return s.map(o=>({value:o.id,label:o.label}))}getDataFromResultPool(){return this.getData()}getData(){const e=this.ctx.getDataFromResultPool();return{isComplete:e.isComplete,entries:e.entries.map(n=>({ref:n.ref,obj:{...n.obj,data:new _(n.obj.data,[n.ref.blockId,n.ref.name])}}))}}getDataWithErrorsFromResultPool(){return this.getDataWithErrors()}getDataWithErrors(){const e=this.ctx.getDataWithErrorsFromResultPool();return{isComplete:e.isComplete,entries:e.entries.map(n=>({ref:n.ref,obj:{...n.obj,data:u.mapValueInVOE(n.obj.data,r=>new _(r,[n.ref.blockId,n.ref.name]))}}))}}getSpecsFromResultPool(){return this.getSpecs()}getSpecs(){return this.ctx.getSpecsFromResultPool()}getDataByRef(e){var r;if(typeof this.ctx.getDataFromResultPoolByRef>"u")return(r=this.getData().entries.find(i=>i.ref.blockId===e.blockId&&i.ref.name===e.name))==null?void 0:r.obj;const n=this.ctx.getDataFromResultPoolByRef(e.blockId,e.name);if(n)return u.mapPObjectData(n,i=>new _(i,[e.blockId,e.name]))}getPColumnByRef(e){const n=this.getDataByRef(e);if(n)return u.ensurePColumn(n)}getPColumnSpecByRef(e){const n=this.getSpecByRef(e);if(n){if(!u.isPColumnSpec(n))throw new Error(`not a PColumn spec (kind = ${n.kind})`);return n}}getSpecByRef(e){return this.ctx.getSpecFromResultPoolByRef(e.blockId,e.name)}findDataWithCompatibleSpec(e){const n=[];e:for(const r of this.getData().entries){if(!u.isPColumnSpec(r.obj.spec))continue;const i=r.obj.spec;if(e.name===i.name&&e.valueType===i.valueType&&e.axesSpec.length===i.axesSpec.length&&le(e.domain,i.domain)){for(let s=0;s<e.axesSpec.length;++s){const o=e.axesSpec[s],a=i.axesSpec[s];if(o.name!==a.name||o.type!==a.type||!le(o.domain,a.domain))continue e}n.push(r.obj)}}return n}findLabels(e){const n=this.getData();for(const r of n.entries){if(!u.isPColumn(r.obj))continue;const i=r.obj.spec;if(i.name==="pl7.app/label"&&i.axesSpec.length===1&&i.axesSpec[0].name===e.name&&i.axesSpec[0].type===e.type&&le(e.domain,i.axesSpec[0].domain)){if(r.obj.data.resourceType.name!=="PColumnData/Json")throw Error(`Expected JSON column for labels, got: ${r.obj.data.resourceType.name}`);return Object.fromEntries(Object.entries(r.obj.data.getDataAsJson().data).map(o=>[JSON.parse(o[0])[0],o[1]]))}}}selectColumns(e){const n=typeof e=="function"?e:u.selectorsToPredicate(e);return this.getSpecs().entries.filter(({obj:i})=>u.isPColumnSpec(i)?n(i):!1).map(({ref:i,obj:s})=>{const o=s;let a=null;const l=this;return{id:be(i),spec:o,get data(){var c;return a!==null||(a=(c=l.getPColumnByRef(i))==null?void 0:c.data),a}}})}findLabelsForColumnAxis(e,n){var s;const r=this.findLabels(e.axesSpec[n]);if(!r)return;const i=(s=e.annotations)==null?void 0:s["pl7.app/axisKeys/"+n];if(i!==void 0){const o=JSON.parse(i);return Object.fromEntries(o.map(a=>[a,r[a]??"Unlabelled"]))}else return r}}class G{constructor(){R(this,"ctx");R(this,"args");R(this,"uiState");R(this,"_activeArgsCache");R(this,"resultPool",new je);this.ctx=y(),this.args=JSON.parse(this.ctx.args),this.uiState=this.ctx.uiState!==void 0?JSON.parse(this.ctx.uiState):{}}get activeArgs(){return this._activeArgsCache===void 0&&(this._activeArgsCache={v:this.ctx.activeArgs?JSON.parse(this.ctx.activeArgs):void 0}),this._activeArgsCache.v}getNamedAccessor(e){return re(this.ctx.getAccessorHandleByName(e),n=>new _(n,[e]))}get prerun(){return this.getNamedAccessor(Se)}get outputs(){return this.getNamedAccessor(xe)}findLabels(e){return this.resultPool.findLabels(e)}verifyInlineAndExplicitColumnsSupport(e){var i;const n=e.some(s=>!(s.data instanceof _)||u.isDataInfo(s.data)),r=((i=this.ctx.featureFlags)==null?void 0:i.inlineColumnsSupport)===!0;if(n&&!r)throw Error("Inline or explicit columns not supported")}createPFrame(e){return this.verifyInlineAndExplicitColumnsSupport(e),this.ctx.createPFrame(e.map(n=>ye(n)))}createPTable(e){let n;return"columns"in e?n={src:{type:"full",entries:e.columns.map(r=>({type:"column",column:r}))},filters:e.filters??[],sorting:e.sorting??[]}:n=e,this.verifyInlineAndExplicitColumnsSupport(u.extractAllColumns(n.src)),this.ctx.createPTable(u.mapPTableDef(n,r=>ye(r)))}getBlockLabel(e){return this.ctx.getBlockLabel(e)}getCurrentUnstableMarker(){if(!(typeof this.ctx.getCurrentUnstableMarker>"u"))return this.ctx.getCurrentUnstableMarker()}}const q="1.29.2";function Ve(t){return t.__renderLambda===!0}function ne(t){if(t!==void 0)return Ve(t)?t.handle:t}function V(t){if(t!==void 0)return typeof t=="string"?{__renderLambda:!0,handle:t,retentive:!1}:t}function Nt(t){if(t.v3!==void 0){const{initialArgs:e,initialUiState:n,inputsValid:r,outputs:i,renderingMode:s,sdkVersion:o,sections:a,title:l}=t.v3,{code:c}=t;return{initialArgs:e,initialUiState:n,inputsValid:r,outputs:i,renderingMode:s,sdkVersion:o,sections:a,title:l,code:c}}else if(t.inputsValid!==void 0){const{sdkVersion:e,renderingMode:n,outputs:r,inputsValid:i,sections:s,initialArgs:o,code:a}=t,l=Object.keys(t);if(e===void 0||n===void 0||r===void 0||i===void 0||s===void 0||o===void 0)throw new Error(`Malformed config v2. SDK version ${e}; Fields = ${l.join(", ")}`);return{sdkVersion:e,renderingMode:n,initialArgs:o,outputs:Object.fromEntries(Object.entries(r).map(([c,S])=>[c,V(S)])),inputsValid:V(i),sections:V(s),initialUiState:void 0,code:a}}else if(t.renderingMode!==void 0){const{sdkVersion:e,canRun:n,renderingMode:r,outputs:i,sections:s,initialArgs:o,code:a}=t,l=Object.keys(t);if(r===void 0||i===void 0||n===void 0||s===void 0||o===void 0)throw new Error(`Malformed config v1. SDK version ${e}; Fields = ${l.join(", ")}`);return{sdkVersion:e??"unknown",renderingMode:r,initialArgs:o,outputs:Object.fromEntries(Object.entries(i).map(([c,S])=>[c,V(S)])),inputsValid:V(n),sections:V(s),initialUiState:void 0,code:a}}else{const{sdkVersion:e}=t,n=Object.keys(t);throw new Error(`Config format not supported: SDK = ${e}; Fields = ${n.join(", ")}`)}}class L{constructor(e,n,r,i,s,o,a){this._renderingMode=e,this._initialArgs=n,this._initialUiState=r,this._outputs=i,this._inputsValid=s,this._sections=o,this._title=a}static create(e="Heavy"){return new L(e,void 0,{},{},W(!0),W([]),void 0)}output(e,n,r={}){if(typeof n=="function"){const i=`output#${e}`;return te(i,()=>n(new G)),new L(this._renderingMode,this._initialArgs,this._initialUiState,{...this._outputs,[e]:{__renderLambda:!0,handle:i,...r}},this._inputsValid,this._sections,this._title)}else return new L(this._renderingMode,this._initialArgs,this._initialUiState,{...this._outputs,[e]:n},this._inputsValid,this._sections,this._title)}retentiveOutput(e,n){return this.output(e,n,{retentive:!0})}argsValid(e){return typeof e=="function"?(te("inputsValid",()=>e(new G)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,{__renderLambda:!0,handle:"inputsValid"},this._sections,this._title)):new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,e,this._sections,this._title)}sections(e){return Array.isArray(e)?this.sections(W(e)):typeof e=="function"?(te("sections",()=>e(new G)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,{__renderLambda:!0,handle:"sections"},this._title)):new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,e,this._title)}title(e){return te("title",()=>e(new G)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,this._sections,{__renderLambda:!0,handle:"title"})}initialArgs(e){return new L(this._renderingMode,e,this._initialUiState,this._outputs,this._inputsValid,this._sections,this._title)}withArgs(e){return new L(this._renderingMode,e,this._initialUiState,this._outputs,this._inputsValid,this._sections,this._title)}withUiState(e){return new L(this._renderingMode,this._initialArgs,e,this._outputs,this._inputsValid,this._sections,this._title)}done(){if(this._initialArgs===void 0)throw new Error("Initial arguments not set.");const e={v3:{sdkVersion:q,renderingMode:this._renderingMode,initialArgs:this._initialArgs,initialUiState:this._initialUiState,inputsValid:this._inputsValid,sections:this._sections,title:this._title,outputs:this._outputs},sdkVersion:q,renderingMode:this._renderingMode,initialArgs:this._initialArgs,inputsValid:ne(this._inputsValid),sections:ne(this._sections),outputs:Object.fromEntries(Object.entries(this._outputs).map(([n,r])=>[n,ne(r)]))};return St()?we({sdkVersion:q}):{config:e}}}function $t(t,e,n,r){var c,S;Array.isArray(r)&&(r={filters:r});const i=t.resultPool.getData().entries.map(f=>f.obj).filter(u.isPColumn).filter(f=>f.spec.name==="pl7.app/label"&&f.spec.axesSpec.length===1),s=(f,h)=>{let p=f.toString();if(h)for(const d in h)p+=d,p+=h[d];return p},o=new Map;for(const f of e)for(const h of f.spec.axesSpec){const p=u.getAxisId(h);for(const d of i){const g=d.spec.axesSpec[0],w=u.getAxisId(d.spec.axesSpec[0]);if(u.matchAxisId(p,w)){const v=Object.keys(p.domain??{}).length,b=Object.keys(w.domain??{}).length;if(v>b){const m=s(d.id,p.domain);o.set(m,{id:m,spec:{...d.spec,axesSpec:[{...p,annotations:g.annotations}]},data:d.data})}else o.set(s(d.id),d)}}}if([...e,...o.values()].some(f=>f.data instanceof _&&!f.data.getIsReadyOrError()))return;let a=e;const l=[];if(r!=null&&r.coreColumnPredicate){a=[];for(const f of e)r.coreColumnPredicate(f.spec)?a.push(f):l.push(f)}return l.push(...o.values()),t.createPTable({src:{type:"outer",primary:{type:(r==null?void 0:r.coreJoinType)??"full",entries:a.map(f=>({type:"column",column:f}))},secondary:l.map(f=>({type:"column",column:f}))},filters:[...(r==null?void 0:r.filters)??[],...((c=n==null?void 0:n.pTableParams)==null?void 0:c.filters)??[]],sorting:((S=n==null?void 0:n.pTableParams)==null?void 0:S.sorting)??[]})}function Ut(t,e,n){const r=t.resultPool.findLabels(e);return{axis:e,options:n.map(i=>({value:i,label:(r==null?void 0:r[i])??i.toString()})),defaultValue:n[0]}}const Jt=(t,e)=>{let n=t.toString();return e==null||e.forEach(r=>{if(r)for(const[i,s]of Object.entries(r))n+=i,n+=s}),n};function Bt(t){if(!t.length)return[];let e=[[]];return t.forEach(n=>{const r=[];n.forEach(i=>{r.push(...e.map(s=>[...s,i]))}),e=r}),e}function Mt(t,e){const n=t.spec.axesSpec.map(u.getAxisId);return e.spec.axesSpec.map(u.getAxisId).every(i=>n.some(s=>u.matchAxisId(s,i)&&u.matchAxisId(i,s)))}function Ke(t,e){const n=t.spec.axesSpec.map(u.getAxisId);return e.spec.axesSpec.map(u.getAxisId).every(i=>n.some(s=>u.matchAxisId(s,i)))}const Ne="pl7.app/graph/isVirtual",pe="pl7.app/label";function ve(t,e){const n=t.spec.axesSpec.map(u.getAxisId),r=e.spec.axesSpec.map(u.getAxisId);if(Mt(t,e))return[];if(!Ke(t,e))return[];const o=r.map(f=>n.filter(h=>u.matchAxisId(h,f))),a=Bt(o),l=new Set,c=new Set,S=a.map(f=>{const h=new Set;return f.map((p,d)=>{const g=e.spec.axesSpec[d].domain,w=p.domain;return Object.entries(w??{}).forEach(([v,b])=>{if((g==null?void 0:g[v])===void 0){const m=JSON.stringify([v,b]);h.add(m),l.add(m)}}),{...p,annotations:e.spec.axesSpec[d].annotations}}),h});return[...l].forEach(f=>{S.some(h=>!h.has(f))&&c.add(f)}),a.map((f,h)=>{var v;const p=Jt(e.id,f.map(b=>b.domain)),d=((v=e.spec.annotations)==null?void 0:v[pe])??"",g=[...S[h]].filter(b=>c.has(b)).sort().map(b=>{var m;return(m=JSON.parse(b))==null?void 0:m[1]}).join(" / "),w={...e.spec.annotations,[Ne]:"true"};return(d||g)&&(w[pe]=d&&g?d+" / "+g:d+g),{id:p,spec:{...e.spec,axesSpec:f.map((b,m)=>({...b,annotations:e.spec.axesSpec[m].annotations})),annotations:w},data:e.data}})}function $e(t){const e=[];for(let n=0;n<t.length;n++)for(let r=n+1;r<t.length;r++){const i=t[n],s=t[r];e.push(...ve(i,s),...ve(s,i))}return e}function Ue(t,e){const n=[...t];for(const r of e)for(const i of t){if(i.id===r.id)break;if(Ke(i,r)){n.push(r);break}}return n}const Gt=["Int","Long","Float","Double","String","Bytes"];function Wt(t,e){if(e===void 0)return;const n=t.resultPool.getData().entries.map(s=>s.obj).filter(u.isPColumn).filter(s=>Gt.includes(s.spec.valueType)),r=Ue(e,n),i=[...r,...$e(r)];if(!i.some(s=>s.data instanceof _&&!s.data.getIsReadyOrError()))return t.createPFrame(i)}class qt{constructor(e){this.handle=e}async findColumns(e){return await platforma.pFrameDriver.findColumns(this.handle,e)}async getColumnSpec(e){return await platforma.pFrameDriver.getColumnSpec(this.handle,e)}async listColumns(){return await platforma.pFrameDriver.listColumns(this.handle)}async calculateTableData(e){return await platforma.pFrameDriver.calculateTableData(this.handle,e)}async getUniqueValues(e){return await platforma.pFrameDriver.getUniqueValues(this.handle,e)}}function Je(t){return fe({__isRef:!0,blockId:H(t,"blockId"),name:H(t,"name")})}function Ht(t){return fe({ref:Je(H(t,"ref")),label:H(t,"label")})}const zt={sdkVersion:q};function Be(){return we({sdkVersion:q})}function Yt(t){try{return Be()}catch{return t}}function Xt(t){if(typeof globalThis.getEnvironmentValue=="function")return globalThis.getEnvironmentValue(t)}exports.Args=Ye;exports.BlockModel=L;exports.CurrentSdkInfo=zt;exports.FutureRef=C;exports.IS_VIRTUAL_COLUMN=Ne;exports.It=Xe;exports.JsRenderInternal=Lt;exports.LABEL_ANNOTATION=pe;exports.MainOutputs=Qe;exports.OutputError=Ae;exports.PAnnotationLabel=Ce;exports.PAnnotationTrace=_e;exports.PColumnCollection=de;exports.PFrameImpl=qt;exports.RT_BINARY_PARTITIONED=F;exports.RT_BINARY_SUPER_PARTITIONED=$;exports.RT_JSON_PARTITIONED=N;exports.RT_JSON_SUPER_PARTITIONED=X;exports.RT_RESOURCE_MAP=z;exports.RT_RESOURCE_MAP_PARTITIONED=Y;exports.RenderCtx=G;exports.ResultPool=je;exports.StagingOutputs=Ze;exports.Trace=Te;exports.TraceEntry=Le;exports.TreeNodeAccessor=_;exports.UiState=et;exports.and=at;exports.convertOrParsePColumnData=Fe;exports.createPFrameForGraphs=Wt;exports.createPlDataTable=$t;exports.createPlDataTableSheet=Ut;exports.deriveLabels=he;exports.downgradeCfgOrLambda=ne;exports.enrichColumnsWithCompatible=Ue;exports.extractArchiveAndGetURL=yt;exports.extractConfig=Nt;exports.filterDataInfoEntries=ke;exports.flatten=it;exports.fromPlOption=Ht;exports.fromPlRef=Je;exports.getAdditionalColumns=$e;exports.getBlobContent=pt;exports.getBlobContentAsJson=ht;exports.getBlobContentAsString=ft;exports.getDownloadedBlobContent=gt;exports.getEnvironmentValue=Xt;exports.getFromCfg=U;exports.getImmediate=W;exports.getImportProgress=vt;exports.getJsonField=H;exports.getLastLogs=bt;exports.getLogHandle=wt;exports.getOnDemandBlobContent=mt;exports.getPartitionKeysList=Ee;exports.getPlatformaOrDefault=Yt;exports.getProgressLog=At;exports.getProgressLogWithInfo=Pt;exports.getRawPlatformaInstance=Be;exports.getResourceField=ut;exports.getResourceValueAsJson=ct;exports.getUniquePartitionKeys=De;exports.ifDef=re;exports.isConfigLambda=Ve;exports.isEmpty=st;exports.isolate=ze;exports.makeArray=tt;exports.makeObject=fe;exports.mapArrayValues=rt;exports.mapRecordValues=nt;exports.mapResourceFields=dt;exports.not=ot;exports.or=lt;exports.parsePColumnData=ie;exports.parseResourceMap=Ot;exports.readOutput=Pe;exports.wrapOutputs=He;Object.keys(u).forEach(t=>{t!=="default"&&!Object.prototype.hasOwnProperty.call(exports,t)&&Object.defineProperty(exports,t,{enumerable:!0,get:()=>u[t]})});Object.keys(ge).forEach(t=>{t!=="default"&&!Object.prototype.hasOwnProperty.call(exports,t)&&Object.defineProperty(exports,t,{enumerable:!0,get:()=>ge[t]})});
|
|
1
|
+
"use strict";var Qe=Object.defineProperty;var Ze=(t,e,n)=>e in t?Qe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var O=(t,e,n)=>Ze(t,typeof e!="symbol"?e+"":e,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@milaboratories/pl-model-common"),Ce=require("canonicalize"),K=require("zod"),ve=require("@milaboratories/pl-error-like");class we extends Error{constructor(e,n){super(`${e.length}${n?"+":""} errors, first error: `+e[0].message),this.errors=e,this.moreErrors=n}}function Ie(t){if(!t.ok)throw new we(t.errors,t.moreErrors);return t.value}function et(t){return new Proxy(t,{get(e,n){return Ie(e[n])}})}function x(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||t===null?G(t):t}function $(t){return{type:"GetFromCtx",variable:t}}function tt(t){return{type:"Isolate",cfg:t}}const nt=$("$args"),rt=$("$it"),it=$("$prod"),st=$("$staging"),ot=$("$ui");function G(t){return{type:"Immediate",value:t}}function fe(t){const e={};for(const[n,r]of Object.entries(t))e[n]=x(r);return{type:"MakeObject",template:e}}function at(...t){const e=[];for(const n of t)e.push(x(n));return{type:"MakeArray",template:e}}function H(t,e){return{type:"GetJsonField",source:x(t),field:x(e)}}function lt(t,e,n="$it"){return{type:"MapRecordValues",source:t,mapping:e,itVar:n}}function ut(t,e,n="$it"){return{type:"MapArrayValues",source:t,mapping:e,itVar:n}}function ct(t){return{type:"Flatten",source:t}}function dt(t){return{type:"IsEmpty",arg:t}}function pt(t){return{type:"Not",operand:t}}function ft(t,e){return{type:"And",operand1:t,operand2:e}}function ht(t,e){return{type:"Or",operand1:t,operand2:e}}function gt(t,e){return{type:"GetResourceField",source:x(t),field:x(e)}}function mt(){return function(t){return{type:"GetResourceValueAsJson",source:x(t)}}}function yt(t,e,n="$it"){return{type:"MapResourceFields",source:t,mapping:e,itVar:n}}function vt(t){return{type:"GetBlobContent",source:x(t)}}function bt(t){return{type:"GetBlobContentAsString",source:x(t)}}function At(){return function(t){return{type:"GetBlobContentAsJson",source:x(t)}}}function Pt(t){return{type:"GetDownloadedBlobContent",source:x(t)}}function Ct(t){return{type:"GetOnDemandBlobContent",source:x(t)}}function wt(t,e){return{type:"ExtractArchiveAndGetURL",format:e,source:x(t)}}function It(t){return{type:"GetImportProgress",source:x(t)}}function xt(t,e){return{type:"GetLastLogs",source:x(t),lines:e}}function St(t,e){return{type:"GetProgressLog",source:x(t),patternToSearch:e}}function _t(t,e){return{type:"GetProgressLogWithInfo",source:x(t),patternToSearch:e}}function Lt(t){return{type:"GetLogHandle",source:x(t)}}function Tt(){return typeof globalThis.getPlatforma<"u"||typeof globalThis.platforma<"u"}function xe(t){if(t&&typeof globalThis.getPlatforma=="function")return globalThis.getPlatforma(t);if(typeof globalThis.platforma<"u")return globalThis.platforma;throw new Error("Can't get platforma instance.")}function Ot(){if(typeof globalThis.cfgRenderCtx<"u")return globalThis.cfgRenderCtx}function y(){if(typeof globalThis.cfgRenderCtx<"u")return globalThis.cfgRenderCtx;throw new Error("Not in config rendering context")}function te(t,e){const n=Ot();if(n===void 0)return!1;if(t in n.callbackRegistry)throw new Error(`Callback with key ${t} already registered.`);return n.callbackRegistry[t]=e,!0}const le=new Map;function Et(t,e){t in y().callbackRegistry||(y().callbackRegistry[t]=n=>{for(const r of le.get(t))r(n)},le.set(t,[])),le.get(t).push(e)}class S{constructor(e,n=r=>r){O(this,"isResolved",!1);O(this,"resolvedValue");this.handle=e,this.postProcess=n,Et(e,r=>{this.resolvedValue=n(r),this.isResolved=!0})}map(e){return new S(this.handle,n=>e(this.postProcess(n)))}mapDefined(e){return new S(this.handle,n=>{const r=this.postProcess(n);return r?e(r):void 0})}toJSON(){return this.isResolved?this.resolvedValue:{__awaited_futures__:[this.handle]}}}function re(t,e){return t===void 0?void 0:e(t)}class _{constructor(e,n){this.handle=e,this.resolvePath=n}resolve(...e){const n=e.map(r=>({assertFieldType:"Input",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveOutput(...e){const n=e.map(r=>({assertFieldType:"Output",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveInput(...e){const n=e.map(r=>({assertFieldType:"Input",...typeof r=="string"?{field:r}:r}));return this.resolveWithCommon({},...n)}resolveAny(...e){return this.resolveWithCommon({},...e)}resolveWithCommon(e,...n){const r=[...this.resolvePath,...n.map(i=>typeof i=="string"?i:i.field)];return re(y().resolveWithCommon(this.handle,e,...n),i=>new _(i,r))}get resourceType(){return y().getResourceType(this.handle)}getInputsLocked(){return y().getInputsLocked(this.handle)}getOutputsLocked(){return y().getOutputsLocked(this.handle)}getIsReadyOrError(){return y().getIsReadyOrError(this.handle)}getIsFinal(){return y().getIsFinal(this.handle)}getError(){const e=[...this.resolvePath,"error"];return re(y().getError(this.handle),n=>new _(n,e))}listInputFields(){return y().listInputFields(this.handle)}listOutputFields(){return y().listOutputFields(this.handle)}listDynamicFields(){return y().listDynamicFields(this.handle)}getKeyValueBase64(e){return y().getKeyValueBase64(this.handle,e)}getKeyValueAsString(e){return y().getKeyValueAsString(this.handle,e)}getKeyValueAsJson(e){const n=this.getKeyValueAsString(e);if(n==null)throw new Error("Resource has no content.");return JSON.parse(n)}getDataBase64(){return y().getDataBase64(this.handle)}getDataAsString(){return y().getDataAsString(this.handle)}getDataAsJson(){const e=this.getDataAsString();if(e==null)throw new Error("Resource has no content.");return JSON.parse(e)}getPColumns(e=!1,n=""){const r=this.parsePObjectCollection(e,n);return r===void 0?void 0:Object.entries(r).map(([,s])=>{if(!u.isPColumn(s))throw new Error(`not a PColumn (kind = ${s.spec.kind})`);return s})}parsePObjectCollection(e=!1,n=""){const r=y().parsePObjectCollection(this.handle,e,n,...this.resolvePath);if(r===void 0)return;const i={};for(const[s,o]of Object.entries(r)){const a=[...this.resolvePath,s];i[s]=u.mapPObjectData(o,l=>new _(l,a))}return i}getFileContentAsBase64(){return new S(y().getBlobContentAsBase64(this.handle))}getFileContentAsString(){return new S(y().getBlobContentAsString(this.handle))}getFileContentAsJson(){return new S(y().getBlobContentAsString(this.handle)).mapDefined(e=>JSON.parse(e))}getBlobContentAsBase64(){return this.getFileContentAsBase64()}getBlobContentAsString(){return this.getFileContentAsString()}getFileHandle(){return new S(y().getDownloadedBlobContentHandle(this.handle))}getDownloadedBlobHandle(){return this.getFileHandle()}getRemoteFileHandle(){return new S(y().getOnDemandBlobContentHandle(this.handle))}getOnDemandBlobHandle(){return this.getRemoteFileHandle()}extractArchiveAndGetURL(e){return new S(y().extractArchiveAndGetURL(this.handle,e))}getImportProgress(){return new S(y().getImportProgress(this.handle))}getLastLogs(e){return new S(y().getLastLogs(this.handle,e))}getProgressLog(e){return new S(y().getProgressLog(this.handle,e))}getProgressLogWithInfo(e){return new S(y().getProgressLogWithInfo(this.handle,e))}getLogHandle(){return new S(y().getLogHandle(this.handle))}allFieldsResolved(e="Input"){switch(e){case"Input":return this.getInputsLocked()&&this.listInputFields().every(n=>this.resolve({field:n,assertFieldType:"Input"})!==void 0);case"Output":return this.getOutputsLocked()&&this.listOutputFields().every(n=>this.resolve({field:n,assertFieldType:"Output"})!==void 0)}}mapFields(e,n){const{fieldType:r,requireLocked:i,skipUnresolved:s}={fieldType:"Input",requireLocked:!0,skipUnresolved:!1,...n},o=e;if(i&&(r==="Input"&&!this.getInputsLocked()||r==="Output"&&!this.getOutputsLocked()))return;let l=(r==="Input"?this.listInputFields():r==="Output"?this.listOutputFields():this.listDynamicFields()).map(c=>[c,this.resolve({field:c,assertFieldType:r})]);return s&&(l=l.filter(c=>c[1]!==void 0)),l.map(([c,P])=>o(c,P))}}const Se="staging",_e="main",Rt={explicitColumnsSupport:!0,inlineColumnsSupport:!0,activeArgs:!0};function Le(t){return typeof t=="object"&&t!==null&&"__awaited_futures__"in t}function ce(t,e,n){if(e.has(n))return;if(e.add(n),typeof n==="object")if(Le(n))n.__awaited_futures__.forEach(i=>t.add(i));else if(Array.isArray(n))for(const i of n)ce(t,e,i);else for(const[,i]of Object.entries(n))i!==n&&ce(t,e,i)}function Dt(t){const e=new Set;return ce(e,new Set,t),e}const Ft=Object.freeze(Object.defineProperty({__proto__:null,GlobalCfgRenderCtxFeatureFlags:Rt,MainAccessorName:_e,StagingAccessorName:Se,getAllFutureAwaits:Dt,isFutureAwait:Le},Symbol.toStringTag,{value:"Module"})),Te="pl7.app/label",Oe="pl7.app/trace",Ee=K.z.object({type:K.z.string(),importance:K.z.number().optional(),id:K.z.string().optional(),label:K.z.string()}),Re=K.z.array(Ee),kt=.001,jt="__LABEL__",be="__LABEL__@1";function he(t,e,n={}){const r=new Map,i=new Map,s=t.map(f=>{var Z,E;const g=e(f);let h,I,d;"spec"in g&&typeof g.spec=="object"?(h=g.spec,I=g.prefixTrace,d=g.suffixTrace):h=g;const v=(Z=h.annotations)==null?void 0:Z[Te],m=(E=h.annotations)==null?void 0:E[Oe],b=(m?Re.safeParse(JSON.parse(m)).data:void 0)??[],C=[...I??[],...b,...d??[]];if(v){const T={label:v,type:jt,importance:-2};n.addLabelAsSuffix?C.push(T):C.splice(0,0,T)}const R=[],B=new Map;for(let T=C.length-1;T>=0;--T){const{type:k}=C[T],oe=C[T].importance??0,U=(B.get(k)??0)+1;B.set(k,U);const w=`${k}@${U}`;i.set(w,(i.get(w)??0)+1),r.set(w,Math.max(r.get(w)??Number.NEGATIVE_INFINITY,oe-(C.length-T)*kt)),R.push({...C[T],fullType:w,occurenceIndex:U})}return R.reverse(),{value:f,spec:h,label:v,fullTrace:R}}),o=[],a=[],l=[...r];l.sort(([,f],[,g])=>g-f);for(const[f]of l)f.endsWith("@1")||i.get(f)===t.length?o.push(f):a.push(f);const c=f=>{const g=[];for(let h=0;h<s.length;h++){const I=s[h],d=I.fullTrace.filter(b=>f.has(b.fullType));if(d.length===0)return;const v=d.map(b=>b.label),m=n.separator??" / ";g.push({label:v.join(m),value:I.value})}return g};if(o.length===0){if(a.length!==0)throw new Error("Assertion error.");const f=c(new Set(be));if(f===void 0)throw new Error("Assertion error.");return f}let P=0,A=0;for(;P<o.length;){const f=new Set;n.includeNativeLabel&&f.add(be);for(let h=0;h<P;++h)f.add(o[h]);f.add(o[A]);const g=c(f);if(g!==void 0&&new Set(g.map(h=>h.label)).size===t.length)return g;A++,A>=o.length&&(P++,A=P)}const p=c(new Set([...o,...a]));if(p===void 0)throw new Error("Assertion error.");return p}const Q="PColumnData/",q=Q+"ResourceMap",Y=Q+"Partitioned/ResourceMap",J=Q+"JsonPartitioned",F=Q+"BinaryPartitioned",De=Q+"Partitioned/",X=De+"JsonPartitioned",N=De+"BinaryPartitioned";function Fe(t,e,n,r=[],i){if(t===void 0)return!1;switch(t.resourceType.name){case q:{let s=t.getInputsLocked();for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"}),l=[...r,...JSON.parse(o)],c=a===void 0?void 0:e(a);c===void 0&&(s=!1),(c!==void 0||i)&&n.push({key:l,value:c})}return s}case Y:{let s=t.getInputsLocked();for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)s=!1;else{const l=[...r,...JSON.parse(o)],c=Fe(a,e,n,l,i);s=s&&c}}return s}default:throw new Error(`Unknown resource type: ${t.resourceType.name}`)}}function Vt(t,e,n=!1){const r=[];return{isComplete:Fe(t,e,r,[],n),data:r}}const de=t=>{if(t.endsWith(".index"))return{baseKey:t.substring(0,t.length-6),type:"index"};if(t.endsWith(".values"))return{baseKey:t.substring(0,t.length-7),type:"values"};throw new Error(`key must ends on .index/.values for binary p-column, got: ${t}`)};function ke(t){if(!t)return;const e=t.resourceType.name,n=t.getDataAsJson(),r=[];let i=0;switch(e){case q:i=n.keyLength;break;case Y:i=n.partitionKeyLength+n.keyLength;break;case J:case F:i=n.partitionKeyLength;break;case N:case X:i=n.superPartitionKeyLength+n.partitionKeyLength;break}switch(e){case q:case J:case F:for(let s of t.listInputFields()){e===F&&(s=de(s).baseKey);const o=[...JSON.parse(s)];r.push(o)}break;case Y:case N:case X:for(const s of t.listInputFields()){const o=[...JSON.parse(s)],a=t.resolve({field:s,assertFieldType:"Input"});if(a!==void 0)for(let l of a.listInputFields()){e===N&&(l=de(l).baseKey);const c=[...o,...JSON.parse(l)];r.push(c)}}break}return{data:r,keyLength:i}}function Kt(t){if(t.type!=="JsonPartitioned"&&t.type!=="BinaryPartitioned")throw new Error(`Splitting requires Partitioned DataInfoEntries, got ${t.type}`);const{parts:e,partitionKeyLength:n}=t,r=[];for(let i=0;i<n;++i)r.push(new Set);for(const i of e){const s=i.key;if(s.length!==n)throw new Error(`Key length (${s.length}) does not match partition length (${n}) for key: ${JSON.stringify(s)}`);for(let o=0;o<n;++o)r[o].add(s[o])}return r.map(i=>Array.from(i.values()))}function je(t){if(t===void 0)return;if(u.isDataInfoEntries(t))return Kt(t);const e=ke(t);if(!e)return;const{data:n,keyLength:r}=e,i=[];for(let s=0;s<r;++s)i.push(new Set);for(const s of n){if(s.length!==r)throw new Error("key length does not match partition length");for(let o=0;o<r;++o)i[o].add(s[o])}return i.map(s=>Array.from(s.values()))}function ie(t,e=[]){if(t===void 0||!t.getIsReadyOrError())return;const n=t.resourceType.name,r=t.getDataAsJson();if(e.length>0&&(n===X||n===N))throw new Error(`Unexpected nested super-partitioned resource: ${n}`);switch(n){case q:case Y:throw new Error(`Only data columns are supported, got: ${n}`);case J:{if(typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing partitionKeyLength in metadata for ${n}`);const i=[];for(const s of t.listInputFields()){const o=t.resolve({field:s,assertFieldType:"Input"});if(o===void 0)return;const a=[...e,...JSON.parse(s)];i.push({key:a,value:o})}return{type:"JsonPartitioned",partitionKeyLength:r.partitionKeyLength,parts:i}}case F:{if(typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing partitionKeyLength in metadata for ${n}`);const i=[],s=new Map;for(const o of t.listInputFields()){const a=de(o),l=t.resolve({field:o,assertFieldType:"Input"});if(l===void 0)return;let c=s.get(a.baseKey);c||(c={},s.set(a.baseKey,c)),a.type==="index"?c.index=l:c.values=l}for(const[o,a]of s.entries()){if(!a.index||!a.values)return;const l=[...e,...JSON.parse(o)];i.push({key:l,value:{index:a.index,values:a.values}})}return{type:"BinaryPartitioned",partitionKeyLength:r.partitionKeyLength,parts:i}}case X:{if(typeof(r==null?void 0:r.superPartitionKeyLength)!="number"||typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);const i=r.superPartitionKeyLength+r.partitionKeyLength,s=[];for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)return;if(a.resourceType.name!==J)throw new Error(`Expected ${J} inside ${n}, but got ${a.resourceType.name}`);const l=ie(a,JSON.parse(o));if(l===void 0)return;if(l.type!=="JsonPartitioned")throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);s.push(...l.parts)}return{type:"JsonPartitioned",partitionKeyLength:i,parts:s}}case N:{if(typeof(r==null?void 0:r.superPartitionKeyLength)!="number"||typeof(r==null?void 0:r.partitionKeyLength)!="number")throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${n}`);const i=r.superPartitionKeyLength+r.partitionKeyLength,s=[];for(const o of t.listInputFields()){const a=t.resolve({field:o,assertFieldType:"Input"});if(a===void 0)return;if(a.resourceType.name!==F)throw new Error(`Expected ${F} inside ${n}, but got ${a.resourceType.name}`);const l=ie(a,JSON.parse(o));if(l===void 0)return;if(l.type!=="BinaryPartitioned")throw new Error(`Unexpected inner result type for ${n}: ${l.type}`);s.push(...l.parts)}return{type:"BinaryPartitioned",partitionKeyLength:i,parts:s}}default:throw new Error(`Unknown resource type: ${n}`)}}function Ve(t){if(t!==void 0){if(u.isDataInfoEntries(t))return t;if(u.isDataInfo(t))return u.dataInfoToEntries(t);if(t instanceof _)return ie(t);throw new Error(`Unexpected input type: ${typeof t}`)}}function Ke(t,e){const n=[...e].sort((s,o)=>o[0]-s[0]);if(t.type==="JsonPartitioned"||t.type==="BinaryPartitioned"){const{partitionKeyLength:s}=t;for(const[o]of e)if(o>=s)throw new Error(`Can't filter on non-partitioned axis ${o}. Must be >= ${s}`)}else if(t.type==="Json"){const{keyLength:s}=t;for(const[o]of e)if(o>=s)throw new Error(`Can't filter on non-data axis ${o}. Must be >= ${s}`)}const r=s=>{for(const[o,a]of n)if(s[o]!==a)return!1;return!0},i=s=>{const o=[...s];for(const[a]of n)o.splice(a,1);return o};switch(t.type){case"Json":{const s=t.data.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"Json",keyLength:t.keyLength-e.length,data:s}}case"JsonPartitioned":{const s=t.parts.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"JsonPartitioned",partitionKeyLength:t.partitionKeyLength-e.length,parts:s}}case"BinaryPartitioned":{const s=t.parts.filter(o=>r(o.key)).map(o=>({key:i(o.key),value:o.value}));return{type:"BinaryPartitioned",partitionKeyLength:t.partitionKeyLength-e.length,parts:s}}}}class Jt{constructor(e){this.columns=e}selectColumns(e){const n=typeof e=="function"?e:u.selectorsToPredicate(e);return this.columns.filter(r=>n(r.spec))}}function Nt(t){if(t)return t.map(e=>({type:`split:${u.canonicalizeAxisId(e.axisId)}`,label:e.label,importance:1e6}))}function $t(t){if(t)return t.map(e=>[e.axisIdx,e.value])}function Bt(t,e){if(!e||e.length===0)return t;const n=[...e].sort((r,i)=>r[0]-i[0]);return Ce({id:t,axisFilters:n})}function Ut(t){if(!t||typeof t!="object")return!1;const e=t,n=e.domain&&typeof e.domain=="object"&&Object.values(e.domain).some(i=>typeof i=="object"&&i!==null&&"anchor"in i),r=e.axes&&Array.isArray(e.axes)&&e.axes.some(i=>typeof i=="object"&&i!==null&&"anchor"in i);return!!e.domainAnchor||n||r}function Mt(t){if(typeof t!="object"||!("axes"in t)||t.axes===void 0)return[];const e=t.axes.map((n,r)=>typeof n=="object"&&"split"in n&&n.split===!0?r:-1).filter(n=>n!==-1);if(e.length>0&&t.partialAxesMatch!==void 0)throw new Error("Axis splitting is not supported when `partialAxesMatch` is defined.");return e.sort((n,r)=>n-r),e}class se{constructor(){O(this,"defaultProviderStore",[]);O(this,"providers",[new Jt(this.defaultProviderStore)]);O(this,"axisLabelProviders",[])}addColumnProvider(e){return this.providers.push(e),this}addAxisLabelProvider(e){return this.axisLabelProviders.push(e),this}addColumns(e){return this.defaultProviderStore.push(...e),this}addColumn(e){return this.defaultProviderStore.push(e),this}findLabels(e){for(const n of this.axisLabelProviders){const r=n.findLabels(e);if(r)return r}}getUniversalEntries(e,n){const{anchorCtx:r,labelOps:i,dontWaitAllData:s=!1,overrideLabelAnnotation:o=!1}=n??{},a={...o&&(i==null?void 0:i.includeNativeLabel)!==!1?{includeNativeLabel:!0}:{},...i??{}},l=typeof e=="function"?[e]:Array.isArray(e)?e:[e],c=[];for(const p of l){const f=Ut(p);let g;if(f){if(!r)throw new Error("Anchored selectors require an AnchoredIdDeriver to be provided in options.");g=u.resolveAnchors(r.anchors,p,n)}else g=p;const h=new Set,I=[];for(const m of this.providers){const b=m.selectColumns(g);for(const C of b){if(h.has(C.id))throw new Error(`Duplicate column id ${C.id} in provider ${m.constructor.name}`);h.add(C.id),I.push(C)}}if(I.length===0)continue;const d=Mt(p),v=d.length>0;for(const m of I){if(!u.isPColumnSpec(m.spec))continue;const b=m.spec;if(v){const C=Ve(m.data);if(!C){if(s)continue;return}if(!u.isPartitionedDataInfoEntries(C))throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${C.type} for column ${m.id}`);const R=je(C),B=d[d.length-1];if(B>=C.partitionKeyLength)throw new Error(`Not enough partition keys (${C.partitionKeyLength}) for requested split axes (max index ${B}) in column ${b.name}`);const Z=d.map(w=>this.findLabels(u.getAxisId(b.axesSpec[w]))),E=[],T=(w,M)=>{if(M>=d.length){if(E.push([...w]),E.length>1e4)throw new Error("Too many key combinations, aborting.");return}const D=d[M];if(D>=R.length)throw new Error(`Axis index ${D} out of bounds for unique keys array (length ${R.length}) during split key generation for column ${m.id}`);const j=R[D];if(!j||j.length===0){E.length=0;return}for(const ee of j)w.push(ee),T(w,M+1),w.pop()};if(T([],0),E.length===0)continue;const k=[...b.axesSpec],oe=d.map(w=>w);for(let w=d.length-1;w>=0;w--)k.splice(d[w],1);const U={...b,axesSpec:k};for(const w of E){const M=w.map((D,j)=>{const ee=oe[j],Ye=u.getAxisId(b.axesSpec[ee]),ae=Z[j],Xe=(ae==null?void 0:ae[D])??String(D);return{axisIdx:ee,axisId:Ye,value:D,label:Xe}});c.push({type:"split",originalColumn:m,spec:b,adjustedSpec:U,dataEntries:C,axisFilters:M})}}else c.push({type:"direct",originalColumn:m,spec:b,adjustedSpec:b})}}if(c.length===0)return[];const P=he(c,p=>({spec:p.spec,suffixTrace:p.type==="split"?Nt(p.axisFilters):void 0}),a),A=[];for(const{value:p,label:f}of P){const{originalColumn:g,spec:h}=p,I=p.type==="split"?p.axisFilters:void 0,d=$t(I);let v;r?v=r.deriveS(h,d):v=Bt(g.id,d);let m={...p.adjustedSpec};o&&(m={...m,annotations:{...m.annotations??{},"pl7.app/label":f}}),A.push({id:v,spec:m,data:()=>p.type==="split"?u.entriesToDataInfo(Ke(p.dataEntries,d)):p.originalColumn.data,label:f})}return A}getColumns(e,n){const r=this.getUniversalEntries(e,{overrideLabelAnnotation:!0,...n??{}});if(!r)return;const i=[];for(const s of r){const o=s.data();if(!o){if(n!=null&&n.dontWaitAllData)continue;return}i.push({id:s.id,spec:s.spec,data:o})}return i}}function ue(t,e){if(t===void 0)return e===void 0;if(e===void 0)return!0;for(const n in e)if(t[n]!==e[n])return!1;return!0}function Ae(t){return u.mapPObjectData(t,e=>e instanceof _?e.handle:u.isDataInfo(e)?u.mapDataInfo(e,n=>n.handle):e)}class Je{constructor(){O(this,"ctx",y())}calculateOptions(e){return this.ctx.calculateOptions(e)}getOptions(e,n){const r=typeof e=="function"?e:u.selectorsToPredicate(e),i=this.getSpecs().entries.filter(s=>r(s.obj));return typeof n=="object"||typeof n>"u"?he(i,s=>s.obj,n??{}).map(({value:{ref:s},label:o})=>({ref:s,label:o})):i.map(s=>({ref:s.ref,label:n(s.obj,s.ref)}))}resolveAnchorCtx(e){if(e instanceof u.AnchoredIdDeriver)return e;const n={};for(const[r,i]of Object.entries(e))if(u.isPlRef(i)){const s=this.getPColumnSpecByRef(i);if(!s)return;n[r]=s}else n[r]=i;return new u.AnchoredIdDeriver(n)}getAnchoredPColumns(e,n,r){const i=this.resolveAnchorCtx(e);if(i)return new se().addColumnProvider(this).addAxisLabelProvider(this).getColumns(n,{...r,anchorCtx:i})}getCanonicalOptions(e,n,r){const i=this.resolveAnchorCtx(e);if(!i)return;const s=new se().addColumnProvider(this).addAxisLabelProvider(this).getUniversalEntries(n,{...r,anchorCtx:i});if(s)return s.map(o=>({value:o.id,label:o.label}))}getDataFromResultPool(){return this.getData()}getData(){const e=this.ctx.getDataFromResultPool();return{isComplete:e.isComplete,entries:e.entries.map(n=>({ref:n.ref,obj:{...n.obj,data:new _(n.obj.data,[n.ref.blockId,n.ref.name])}}))}}getDataWithErrorsFromResultPool(){return this.getDataWithErrors()}getDataWithErrors(){const e=this.ctx.getDataWithErrorsFromResultPool();return{isComplete:e.isComplete,entries:e.entries.map(n=>({ref:n.ref,obj:{...n.obj,data:u.mapValueInVOE(n.obj.data,r=>new _(r,[n.ref.blockId,n.ref.name]))}}))}}getSpecsFromResultPool(){return this.getSpecs()}getSpecs(){return this.ctx.getSpecsFromResultPool()}getDataByRef(e){var r;if(typeof this.ctx.getDataFromResultPoolByRef>"u")return(r=this.getData().entries.find(i=>i.ref.blockId===e.blockId&&i.ref.name===e.name))==null?void 0:r.obj;const n=this.ctx.getDataFromResultPoolByRef(e.blockId,e.name);if(n)return u.mapPObjectData(n,i=>new _(i,[e.blockId,e.name]))}getPColumnByRef(e){const n=this.getDataByRef(e);if(n)return u.ensurePColumn(n)}getPColumnSpecByRef(e){const n=this.getSpecByRef(e);if(n){if(!u.isPColumnSpec(n))throw new Error(`not a PColumn spec (kind = ${n.kind})`);return n}}getSpecByRef(e){return this.ctx.getSpecFromResultPoolByRef(e.blockId,e.name)}findDataWithCompatibleSpec(e){const n=[];e:for(const r of this.getData().entries){if(!u.isPColumnSpec(r.obj.spec))continue;const i=r.obj.spec;if(e.name===i.name&&e.valueType===i.valueType&&e.axesSpec.length===i.axesSpec.length&&ue(e.domain,i.domain)){for(let s=0;s<e.axesSpec.length;++s){const o=e.axesSpec[s],a=i.axesSpec[s];if(o.name!==a.name||o.type!==a.type||!ue(o.domain,a.domain))continue e}n.push(r.obj)}}return n}findLabels(e){const n=this.getData();for(const r of n.entries){if(!u.isPColumn(r.obj))continue;const i=r.obj.spec;if(i.name==="pl7.app/label"&&i.axesSpec.length===1&&i.axesSpec[0].name===e.name&&i.axesSpec[0].type===e.type&&ue(e.domain,i.axesSpec[0].domain)){if(r.obj.data.resourceType.name!=="PColumnData/Json")throw Error(`Expected JSON column for labels, got: ${r.obj.data.resourceType.name}`);return Object.fromEntries(Object.entries(r.obj.data.getDataAsJson().data).map(o=>[JSON.parse(o[0])[0],o[1]]))}}}selectColumns(e){const n=typeof e=="function"?e:u.selectorsToPredicate(e);return this.getSpecs().entries.filter(({obj:i})=>u.isPColumnSpec(i)?n(i):!1).map(({ref:i,obj:s})=>{const o=s;let a=null;const l=this;return{id:Ce(i),spec:o,get data(){var c;return a!==null||(a=(c=l.getPColumnByRef(i))==null?void 0:c.data),a}}})}findLabelsForColumnAxis(e,n){var s;const r=this.findLabels(e.axesSpec[n]);if(!r)return;const i=(s=e.annotations)==null?void 0:s["pl7.app/axisKeys/"+n];if(i!==void 0){const o=JSON.parse(i);return Object.fromEntries(o.map(a=>[a,r[a]??"Unlabelled"]))}else return r}}class W{constructor(){O(this,"ctx");O(this,"args");O(this,"uiState");O(this,"_activeArgsCache");O(this,"resultPool",new Je);this.ctx=y(),this.args=JSON.parse(this.ctx.args),this.uiState=this.ctx.uiState!==void 0?JSON.parse(this.ctx.uiState):{}}get activeArgs(){return this._activeArgsCache===void 0&&(this._activeArgsCache={v:this.ctx.activeArgs?JSON.parse(this.ctx.activeArgs):void 0}),this._activeArgsCache.v}getNamedAccessor(e){return re(this.ctx.getAccessorHandleByName(e),n=>new _(n,[e]))}get prerun(){return this.getNamedAccessor(Se)}get outputs(){return this.getNamedAccessor(_e)}findLabels(e){return this.resultPool.findLabels(e)}verifyInlineAndExplicitColumnsSupport(e){var i;const n=e.some(s=>!(s.data instanceof _)||u.isDataInfo(s.data)),r=((i=this.ctx.featureFlags)==null?void 0:i.inlineColumnsSupport)===!0;if(n&&!r)throw Error("Inline or explicit columns not supported")}createPFrame(e){return this.verifyInlineAndExplicitColumnsSupport(e),this.ctx.createPFrame(e.map(n=>Ae(n)))}createPTable(e){let n;return"columns"in e?n={src:{type:"full",entries:e.columns.map(r=>({type:"column",column:r}))},filters:e.filters??[],sorting:e.sorting??[]}:n=e,this.verifyInlineAndExplicitColumnsSupport(u.extractAllColumns(n.src)),this.ctx.createPTable(u.mapPTableDef(n,r=>Ae(r)))}getBlockLabel(e){return this.ctx.getBlockLabel(e)}getCurrentUnstableMarker(){if(!(typeof this.ctx.getCurrentUnstableMarker>"u"))return this.ctx.getCurrentUnstableMarker()}}const z="1.29.13";function Ne(t){return t.__renderLambda===!0}function ne(t){if(t!==void 0)return Ne(t)?t.handle:t}function V(t){if(t!==void 0)return typeof t=="string"?{__renderLambda:!0,handle:t,retentive:!1}:t}function Wt(t){if(t.v3!==void 0){const{initialArgs:e,initialUiState:n,inputsValid:r,outputs:i,renderingMode:s,sdkVersion:o,sections:a,title:l}=t.v3,{code:c}=t;return{initialArgs:e,initialUiState:n,inputsValid:r,outputs:i,renderingMode:s,sdkVersion:o,sections:a,title:l,code:c}}else if(t.inputsValid!==void 0){const{sdkVersion:e,renderingMode:n,outputs:r,inputsValid:i,sections:s,initialArgs:o,code:a}=t,l=Object.keys(t);if(e===void 0||n===void 0||r===void 0||i===void 0||s===void 0||o===void 0)throw new Error(`Malformed config v2. SDK version ${e}; Fields = ${l.join(", ")}`);return{sdkVersion:e,renderingMode:n,initialArgs:o,outputs:Object.fromEntries(Object.entries(r).map(([c,P])=>[c,V(P)])),inputsValid:V(i),sections:V(s),initialUiState:void 0,code:a}}else if(t.renderingMode!==void 0){const{sdkVersion:e,canRun:n,renderingMode:r,outputs:i,sections:s,initialArgs:o,code:a}=t,l=Object.keys(t);if(r===void 0||i===void 0||n===void 0||s===void 0||o===void 0)throw new Error(`Malformed config v1. SDK version ${e}; Fields = ${l.join(", ")}`);return{sdkVersion:e??"unknown",renderingMode:r,initialArgs:o,outputs:Object.fromEntries(Object.entries(i).map(([c,P])=>[c,V(P)])),inputsValid:V(n),sections:V(s),initialUiState:void 0,code:a}}else{const{sdkVersion:e}=t,n=Object.keys(t);throw new Error(`Config format not supported: SDK = ${e}; Fields = ${n.join(", ")}`)}}class L{constructor(e,n,r,i,s,o,a){this._renderingMode=e,this._initialArgs=n,this._initialUiState=r,this._outputs=i,this._inputsValid=s,this._sections=o,this._title=a}static create(e="Heavy"){return new L(e,void 0,{},{},G(!0),G([]),void 0)}output(e,n,r={}){if(typeof n=="function"){const i=`output#${e}`;return te(i,()=>n(new W)),new L(this._renderingMode,this._initialArgs,this._initialUiState,{...this._outputs,[e]:{__renderLambda:!0,handle:i,...r}},this._inputsValid,this._sections,this._title)}else return new L(this._renderingMode,this._initialArgs,this._initialUiState,{...this._outputs,[e]:n},this._inputsValid,this._sections,this._title)}retentiveOutput(e,n){return this.output(e,n,{retentive:!0})}argsValid(e){return typeof e=="function"?(te("inputsValid",()=>e(new W)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,{__renderLambda:!0,handle:"inputsValid"},this._sections,this._title)):new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,e,this._sections,this._title)}sections(e){return Array.isArray(e)?this.sections(G(e)):typeof e=="function"?(te("sections",()=>e(new W)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,{__renderLambda:!0,handle:"sections"},this._title)):new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,e,this._title)}title(e){return te("title",()=>e(new W)),new L(this._renderingMode,this._initialArgs,this._initialUiState,this._outputs,this._inputsValid,this._sections,{__renderLambda:!0,handle:"title"})}initialArgs(e){return new L(this._renderingMode,e,this._initialUiState,this._outputs,this._inputsValid,this._sections,this._title)}withArgs(e){return new L(this._renderingMode,e,this._initialUiState,this._outputs,this._inputsValid,this._sections,this._title)}withUiState(e){return new L(this._renderingMode,this._initialArgs,e,this._outputs,this._inputsValid,this._sections,this._title)}done(){if(this._initialArgs===void 0)throw new Error("Initial arguments not set.");const e={v3:{sdkVersion:z,renderingMode:this._renderingMode,initialArgs:this._initialArgs,initialUiState:this._initialUiState,inputsValid:this._inputsValid,sections:this._sections,title:this._title,outputs:this._outputs},sdkVersion:z,renderingMode:this._renderingMode,initialArgs:this._initialArgs,inputsValid:ne(this._inputsValid),sections:ne(this._sections),outputs:Object.fromEntries(Object.entries(this._outputs).map(([n,r])=>[n,ne(r)]))};return Tt()?xe({sdkVersion:z}):{config:e}}}function Gt(t){const e=t.type;switch(e){case"axis":return u.canonicalizeJson(t);case"column":return u.canonicalizeJson(t);default:throw Error(`unsupported column type: ${e}`)}}function $e(t){return JSON.parse(t)}function zt(t){return t.axesSpec.length===1&&t.name==="pl7.app/label"}function ge(t){return new se().addAxisLabelProvider(t).addColumnProvider(t).getColumns({name:"pl7.app/label",axes:[{}]},{dontWaitAllData:!0})}function me(t,e){const n=(i,s)=>{let o=i.toString();if(s)for(const a in s)o+=a,o+=s[a];return o},r=new Map;for(const i of t)for(const s of i.spec.axesSpec){const o=u.getAxisId(s);for(const a of e){const l=a.spec.axesSpec[0],c=u.getAxisId(a.spec.axesSpec[0]);if(u.matchAxisId(o,c)){const P=Object.keys(o.domain??{}).length,A=Object.keys(c.domain??{}).length;if(P>A){const p=n(a.id,o.domain);r.set(p,{id:p,spec:{...a.spec,axesSpec:[{...o,annotations:l.annotations}]},data:a.data})}else r.set(n(a.id),a)}}}return[...r.values()]}function ye(t){const e=i=>Array.isArray(i),n=i=>i instanceof _,r=i=>typeof i=="object"&&"type"in i;return t.map(i=>i.data).every(i=>{if(e(i))return!0;if(n(i))return i.getIsReadyOrError();if(r(i))switch(i.type){case"Json":return!0;case"JsonPartitioned":return Object.values(i.parts).every(o=>o.getIsReadyOrError());case"BinaryPartitioned":return Object.values(i.parts).every(o=>o.index.getIsReadyOrError()&&o.values.getIsReadyOrError())}else throw Error(`unsupported column data type: ${i}`)})}function Be(t,e,n,r,i,s){let o=t;const a=[];if(s){o=[];for(const l of t)s(l.spec)?o.push(l):a.push(l)}return a.push(...e),{src:{type:"outer",primary:{type:n,entries:o.map(l=>({type:"column",column:l}))},secondary:a.map(l=>({type:"column",column:l}))},filters:r,sorting:i}}function Ht(t,e,n,r){var c,P;Array.isArray(r)&&(r={filters:r});const i=(r==null?void 0:r.coreJoinType)??"full",s=[...(r==null?void 0:r.filters)??[],...((c=n==null?void 0:n.pTableParams)==null?void 0:c.filters)??[]],o=((P=n==null?void 0:n.pTableParams)==null?void 0:P.sorting)??[],a=ge(t.resultPool);if(!a)return;const l=me(e.map(u.getColumnIdAndSpec),a);if(ye([...e,...l]))return t.createPTable(Be(e,l,i,s,o,r==null?void 0:r.coreColumnPredicate))}function Ue(t){var e;return((e=t.annotations)==null?void 0:e["pl7.app/table/visibility"])==="optional"}function qt(t,e,n,r,i){var h,I;const s=(i==null?void 0:i.coreJoinType)??"full",o=[...(i==null?void 0:i.filters)??[],...((h=r==null?void 0:r.pTableParams)==null?void 0:h.filters)??[]],a=((I=r==null?void 0:r.pTableParams)==null?void 0:I.sorting)??[],l=e.find(d=>n(d.spec));if(!l)return;const c=ge(t.resultPool);if(!c)return;const P=[...l.spec.axesSpec.map(d=>({type:"axis",id:u.getAxisId(d),spec:d})),...[...e,...c].map(d=>({type:"column",id:d.id,spec:d.spec}))],A=new Set((()=>{var v,m;if(s==="inner")return[];const d=(m=(v=r==null?void 0:r.gridState.columnVisibility)==null?void 0:v.hiddenColIds)==null?void 0:m.map($e).filter(b=>b.type==="column").map(b=>b.id);return d||e.filter(b=>Ue(b.spec)).map(b=>b.id)})());A.delete(l.id),[...o.map(d=>d.column),...a.map(d=>d.column)].filter(d=>d.type==="column").map(d=>A.delete(d.id));const p=e.filter(d=>!A.has(d.id)),f=me(p.map(u.getColumnIdAndSpec),c);if(!ye([...p,...f]))return;const g=t.createPTable(Be(e,f,s,o,a,i==null?void 0:i.coreColumnPredicate));return{tableSpec:P,tableHandle:g}}function Yt(t,e,n){const r=t.resultPool.findLabels(e);return{axis:e,options:n.map(i=>({value:i,label:(r==null?void 0:r[i])??i.toString()})),defaultValue:n[0]}}const Xt=(t,e)=>{let n=t.toString();return e==null||e.forEach(r=>{if(r)for(const[i,s]of Object.entries(r))n+=i,n+=s}),n};function Qt(t){if(!t.length)return[];let e=[[]];return t.forEach(n=>{const r=[];n.forEach(i=>{r.push(...e.map(s=>[...s,i]))}),e=r}),e}function Zt(t,e){const n=t.spec.axesSpec.map(u.getAxisId);return e.spec.axesSpec.map(u.getAxisId).every(i=>n.some(s=>u.matchAxisId(s,i)&&u.matchAxisId(i,s)))}function Me(t,e){const n=t.spec.axesSpec.map(u.getAxisId);return e.spec.axesSpec.map(u.getAxisId).every(i=>n.some(s=>u.matchAxisId(s,i)))}const We="pl7.app/graph/isVirtual",pe="pl7.app/label";function Pe(t,e){const n=t.spec.axesSpec.map(u.getAxisId),r=e.spec.axesSpec.map(u.getAxisId);if(Zt(t,e))return[];if(!Me(t,e))return[];const o=r.map(A=>n.filter(p=>u.matchAxisId(p,A))),a=Qt(o),l=new Set,c=new Set,P=a.map(A=>{const p=new Set;return A.map((f,g)=>{const h=e.spec.axesSpec[g].domain,I=f.domain;return Object.entries(I??{}).forEach(([d,v])=>{if((h==null?void 0:h[d])===void 0){const m=JSON.stringify([d,v]);p.add(m),l.add(m)}}),{...f,annotations:e.spec.axesSpec[g].annotations}}),p});return[...l].forEach(A=>{P.some(p=>!p.has(A))&&c.add(A)}),a.map((A,p)=>{var d;const f=Xt(e.id,A.map(v=>v.domain)),g=((d=e.spec.annotations)==null?void 0:d[pe])??"",h=[...P[p]].filter(v=>c.has(v)).sort().map(v=>{var m;return(m=JSON.parse(v))==null?void 0:m[1]}).join(" / "),I={...e.spec.annotations,[We]:"true"};return(g||h)&&(I[pe]=g&&h?g+" / "+h:g+h),{id:f,spec:{...e.spec,axesSpec:A.map((v,m)=>({...v,annotations:e.spec.axesSpec[m].annotations})),annotations:I},data:e.data}})}function Ge(t){const e=[];for(let n=0;n<t.length;n++)for(let r=n+1;r<t.length;r++){const i=t[n],s=t[r];e.push(...Pe(i,s),...Pe(s,i))}return e}function ze(t,e){const n=new Set,r=new Map;t.forEach(s=>{n.add(s.id),r.set(u.canonicalizeJson(u.getPColumnSpecId(s.spec)),s)});const i=new Map;for(const s of e){if(n.has(s.id))continue;const o=u.canonicalizeJson(u.getPColumnSpecId(s.spec));if(!r.has(o)){for(const a of r.values())if(Me(a,s)){i.set(o,s);break}}}return[...r.values(),...i.values()]}const en=["Int","Long","Float","Double","String","Bytes"];function tn(t,e){if(e===void 0)return;const n=t.resultPool.getData().entries.map(s=>s.obj).filter(u.isPColumn).filter(s=>en.includes(s.spec.valueType)),r=ze(e,n),i=[...r,...Ge(r)];if(!i.some(s=>s.data instanceof _&&!s.data.getIsReadyOrError()))return t.createPFrame(i)}class nn{constructor(e){this.handle=e}async findColumns(e){return await platforma.pFrameDriver.findColumns(this.handle,e)}async getColumnSpec(e){return await platforma.pFrameDriver.getColumnSpec(this.handle,e)}async listColumns(){return await platforma.pFrameDriver.listColumns(this.handle)}async calculateTableData(e){return await platforma.pFrameDriver.calculateTableData(this.handle,e)}async getUniqueValues(e){return await platforma.pFrameDriver.getUniqueValues(this.handle,e)}}function He(t){return fe({__isRef:!0,blockId:H(t,"blockId"),name:H(t,"name")})}function rn(t){return fe({ref:He(H(t,"ref")),label:H(t,"label")})}const sn={sdkVersion:z};function qe(){return xe({sdkVersion:z})}function on(t){try{return qe()}catch{return t}}function an(t){if(typeof globalThis.getEnvironmentValue=="function")return globalThis.getEnvironmentValue(t)}exports.Args=nt;exports.BlockModel=L;exports.CurrentSdkInfo=sn;exports.FutureRef=S;exports.IS_VIRTUAL_COLUMN=We;exports.It=rt;exports.JsRenderInternal=Ft;exports.LABEL_ANNOTATION=pe;exports.MainOutputs=it;exports.OutputError=we;exports.PAnnotationLabel=Te;exports.PAnnotationTrace=Oe;exports.PColumnCollection=se;exports.PFrameImpl=nn;exports.RT_BINARY_PARTITIONED=F;exports.RT_BINARY_SUPER_PARTITIONED=N;exports.RT_JSON_PARTITIONED=J;exports.RT_JSON_SUPER_PARTITIONED=X;exports.RT_RESOURCE_MAP=q;exports.RT_RESOURCE_MAP_PARTITIONED=Y;exports.RenderCtx=W;exports.ResultPool=Je;exports.StagingOutputs=st;exports.Trace=Re;exports.TraceEntry=Ee;exports.TreeNodeAccessor=_;exports.UiState=ot;exports.allColumnsComputed=ye;exports.and=ft;exports.convertOrParsePColumnData=Ve;exports.createPFrameForGraphs=tn;exports.createPlDataTable=Ht;exports.createPlDataTableSheet=Yt;exports.createPlDataTableV2=qt;exports.deriveLabels=he;exports.downgradeCfgOrLambda=ne;exports.enrichColumnsWithCompatible=ze;exports.extractArchiveAndGetURL=wt;exports.extractConfig=Wt;exports.filterDataInfoEntries=Ke;exports.flatten=ct;exports.fromPlOption=rn;exports.fromPlRef=He;exports.getAdditionalColumns=Ge;exports.getAllLabelColumns=ge;exports.getBlobContent=vt;exports.getBlobContentAsJson=At;exports.getBlobContentAsString=bt;exports.getDownloadedBlobContent=Pt;exports.getEnvironmentValue=an;exports.getFromCfg=$;exports.getImmediate=G;exports.getImportProgress=It;exports.getJsonField=H;exports.getLastLogs=xt;exports.getLogHandle=Lt;exports.getMatchingLabelColumns=me;exports.getOnDemandBlobContent=Ct;exports.getPartitionKeysList=ke;exports.getPlatformaOrDefault=on;exports.getProgressLog=St;exports.getProgressLogWithInfo=_t;exports.getRawPlatformaInstance=qe;exports.getResourceField=gt;exports.getResourceValueAsJson=mt;exports.getUniquePartitionKeys=je;exports.ifDef=re;exports.isColumnOptional=Ue;exports.isConfigLambda=Ne;exports.isEmpty=dt;exports.isLabelColumn=zt;exports.isolate=tt;exports.makeArray=at;exports.makeObject=fe;exports.mapArrayValues=ut;exports.mapRecordValues=lt;exports.mapResourceFields=yt;exports.not=pt;exports.or=ht;exports.parsePColumnData=ie;exports.parsePTableColumnId=$e;exports.parseResourceMap=Vt;exports.readOutput=Ie;exports.strinfigyPTableColumnId=Gt;exports.wrapOutputs=et;Object.keys(u).forEach(t=>{t!=="default"&&!Object.prototype.hasOwnProperty.call(exports,t)&&Object.defineProperty(exports,t,{enumerable:!0,get:()=>u[t]})});Object.keys(ve).forEach(t=>{t!=="default"&&!Object.prototype.hasOwnProperty.call(exports,t)&&Object.defineProperty(exports,t,{enumerable:!0,get:()=>ve[t]})});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|