@milaboratories/pl-model-common 1.13.8 → 1.14.1
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/drivers/pframe/table_calculate.d.ts +10 -1
- package/dist/drivers/pframe/table_calculate.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +301 -271
- package/dist/index.mjs.map +1 -1
- package/dist/pool/spec.d.ts.map +1 -1
- package/dist/ref.d.ts +33 -2
- package/dist/ref.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/drivers/pframe/table_calculate.ts +14 -0
- package/src/pool/spec.ts +2 -0
- package/src/ref.ts +53 -5
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { PTableColumnId, PTableColumnSpec } from './table_common';
|
|
2
2
|
import { PTableVector } from './data_types';
|
|
3
3
|
import { PObjectId } from '../../pool';
|
|
4
|
+
import { PColumn } from './spec/spec';
|
|
5
|
+
import { PColumnValues } from './data_info';
|
|
4
6
|
/** Defines a terminal column node in the join request tree */
|
|
5
7
|
export interface ColumnJoinEntry<Col> {
|
|
6
8
|
/** Node type discriminator */
|
|
@@ -31,6 +33,13 @@ export interface SlicedColumnJoinEntry<Col> {
|
|
|
31
33
|
/** Non-empty list of axis filters */
|
|
32
34
|
readonly axisFilters: ConstantAxisFilter[];
|
|
33
35
|
}
|
|
36
|
+
/** Defines a terminal column node in the join request tree */
|
|
37
|
+
export interface InlineColumnJoinEntry {
|
|
38
|
+
/** Node type discriminator */
|
|
39
|
+
readonly type: 'inlineColumn';
|
|
40
|
+
/** Column definition */
|
|
41
|
+
readonly column: PColumn<PColumnValues>;
|
|
42
|
+
}
|
|
34
43
|
/**
|
|
35
44
|
* Defines a join request tree node that will output only records present in
|
|
36
45
|
* all child nodes ({@link entries}).
|
|
@@ -79,7 +88,7 @@ export interface OuterJoin<Col> {
|
|
|
79
88
|
* the PColumns. Common axis are those axis which have equal {@link AxisId} derived
|
|
80
89
|
* from the columns axes spec.
|
|
81
90
|
* */
|
|
82
|
-
export type JoinEntry<Col> = ColumnJoinEntry<Col> | SlicedColumnJoinEntry<Col> | InnerJoin<Col> | FullJoin<Col> | OuterJoin<Col>;
|
|
91
|
+
export type JoinEntry<Col> = ColumnJoinEntry<Col> | SlicedColumnJoinEntry<Col> | InlineColumnJoinEntry | InnerJoin<Col> | FullJoin<Col> | OuterJoin<Col>;
|
|
83
92
|
/** Container representing whole data stored in specific PTable column. */
|
|
84
93
|
export interface FullPTableColumnData {
|
|
85
94
|
/** Unified spec */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table_calculate.d.ts","sourceRoot":"","sources":["../../../src/drivers/pframe/table_calculate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"table_calculate.d.ts","sourceRoot":"","sources":["../../../src/drivers/pframe/table_calculate.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var G=Object.defineProperty;var Q=(n,e,t)=>e in n?G(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var p=(n,e,t)=>Q(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("canonicalize"),m=require("zod");function Y(n){return n!==void 0&&n.startsWith("log+live://log/")}function x(n){throw new Error("Unexpected object: "+n)}const C="upload://upload/",V="index://index/";function E(n){return n.startsWith(C)}function J(n){return n.startsWith(V)}function D(n){if(J(n)){const e=n.slice(V.length);return JSON.parse(decodeURIComponent(e)).path}else if(E(n)){const e=n.slice(C.length);return JSON.parse(decodeURIComponent(e)).localPath}x(n)}function Z(n){return n.replace(/^.*[\\/]/,"")}function nn(n){return Z(D(n))}function en(n){if(!n||typeof n!="object")return!1;const e=n;if(!("type"in e))return!1;switch(e.type){case"Json":return typeof e.keyLength=="number"&&e.data!==void 0&&typeof e.data=="object";case"JsonPartitioned":return typeof e.partitionKeyLength=="number"&&e.parts!==void 0&&typeof e.parts=="object";case"BinaryPartitioned":return typeof e.partitionKeyLength=="number"&&e.parts!==void 0&&typeof e.parts=="object";default:return!1}}function tn(n,e){if(n!==void 0)switch(n.type){case"Json":return n;case"JsonPartitioned":{const t={};for(const[r,o]of Object.entries(n.parts))t[r]=e(o);return{...n,parts:t}}case"BinaryPartitioned":{const t={};for(const[r,o]of Object.entries(n.parts))t[r]={index:e(o.index),values:e(o.values)};return{...n,parts:t}}}}function O(n){if(!n||typeof n!="object")return!1;const e=n;if(!("type"in e))return!1;switch(e.type){case"Json":return typeof e.keyLength=="number"&&Array.isArray(e.data);case"JsonPartitioned":return typeof e.partitionKeyLength=="number"&&Array.isArray(e.parts);case"BinaryPartitioned":return typeof e.partitionKeyLength=="number"&&Array.isArray(e.parts);default:return!1}}function rn(n){return O(n)?n.type==="JsonPartitioned"||n.type==="BinaryPartitioned":!1}function on(n){switch(n.type){case"Json":{const e=Object.entries(n.data).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"Json",keyLength:n.keyLength,data:e}}case"JsonPartitioned":{const e=Object.entries(n.parts).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"JsonPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}case"BinaryPartitioned":{const e=Object.entries(n.parts).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"BinaryPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}}}function an(n){switch(n.type){case"Json":{const e={};for(const t of n.data)e[JSON.stringify(t.key)]=t.value;return{type:"Json",keyLength:n.keyLength,data:e}}case"JsonPartitioned":{const e={};for(const t of n.parts)e[JSON.stringify(t.key)]=t.value;return{type:"JsonPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}case"BinaryPartitioned":{const e={};for(const t of n.parts)e[JSON.stringify(t.key)]=t.value;return{type:"BinaryPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}}}function sn(n,e){if(n!==void 0)switch(n.type){case"Json":return n;case"JsonPartitioned":{const t=n.parts.map(r=>({key:r.key,value:e(r.value)}));return{...n,parts:t}}case"BinaryPartitioned":{const t=n.parts.map(r=>({key:r.key,value:{index:e(r.value.index),values:e(r.value.values)}}));return{...n,parts:t}}}}const L=-2147483648,P=-9007199254740991n,un=NaN,cn=NaN,F=null,$=null;function h(n,e){switch(e){case"Int":return n===L;case"Long":return n===Number(P)||n===P;case"Float":return Number.isNaN(n);case"Double":return Number.isNaN(n);case"String":return n===F;case"Bytes":return n===$;default:throw Error(`unsupported data type: ${e}`)}}function fn(n){if(!B(n))throw new Error(`Expected not-NA PValue, got ${n}`);return n}function B(n,e){if(!e)return typeof n=="string"||typeof n=="number"&&isFinite(n)||typeof n=="bigint";if(h(n,e))return!1;switch(e){case"Int":return typeof n=="number";case"Long":return typeof n=="number"||typeof n=="bigint";case"Float":return typeof n=="number";case"Double":return typeof n=="number";case"String":return typeof n=="string";case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${e}`)}}function j(n,e){if(!e)return n===null||typeof n=="string"||typeof n=="number"||typeof n=="bigint";if(h(n,e))return!0;switch(e){case"Int":return typeof n=="number";case"Long":return typeof n=="number"||typeof n=="bigint";case"Float":return typeof n=="number";case"Double":return typeof n=="number";case"String":return typeof n=="string";case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${e}`)}}function dn(n){if(n===null||typeof n=="string"||typeof n=="number")return n;if(typeof n=="bigint")return{bigint:n.toString()};throw new Error(`Type ${typeof n} (value ${n}) not yet supported.`)}function T(n,e){if(n===null||typeof n=="string"||typeof n=="number"||typeof n=="bigint"){if(e&&!h(n,e)&&!j(n,e))throw new Error(`Unexpected value type, got ${typeof n}, expected ${e}`);return n}if(typeof n=="object"&&n!==null&&"bigint"in n&&typeof n.bigint=="string"){if(e&&e!=="Long")throw new Error(`Unexpected value type, got serialized bigint, expected ${e}`);return BigInt(n.bigint)}throw new Error(`Unsupported type ${typeof n} (value ${n}).`)}function ln(n){if(n=U(n),n===null)throw new Error("Value is null");return n}function U(n){if(n=T(n),n===null)return null;if(typeof n=="string")return n;if(typeof n=="number"){if(!isFinite(n))throw new Error(`Value is not finite (${n})`);return n}if(typeof n=="bigint")return Number(n);throw new Error(`Unexpected value type: ${typeof n}`)}function K(n,e){const t=Math.floor(e/8),r=1<<7-e%8;return(n[t]&r)>0}const R={type:"absent"},v=null;function pn(n){return typeof n=="object"&&n!==null&&n.type==="absent"}function mn(n,e,t={}){if(K(n.absent,e))return t.absent===void 0?R:t.absent;const r=n.data[e],o=n.type;if(h(r,o))return t.na===void 0?v:t.na;switch(o){case"Int":return r;case"Long":return Number(r);case"Float":return r;case"Double":return r;case"String":return r;case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${o}`)}}function yn(n){return{kind:n.kind,valueType:n.valueType,name:n.name,domain:n.domain,parentAxes:n.parentAxes,axesId:H(n.axesSpec)}}function hn(n){return{columnId:n.id,spec:n.spec}}function l(n){const{type:e,name:t,domain:r}=n;return{type:e,name:t,...r&&{domain:r}}}function H(n){return n.map(l)}function gn(n){return b(l(n))}function bn(n,e){if(n===void 0)return e===void 0;if(e===void 0)return!0;for(const t in e)if(n[t]!==e[t])return!1;return!0}function M(n,e){return n.name===e.name&&bn(n.domain,e.domain)}function Pn(n,e){return{...n,src:y(n.src,e)}}function y(n,e){switch(n.type){case"column":return{type:"column",column:e(n.column)};case"slicedColumn":return{type:"slicedColumn",column:e(n.column),newId:n.newId,axisFilters:n.axisFilters};case"inner":case"full":return{type:n.type,entries:n.entries.map(t=>y(t,e))};case"outer":return{type:"outer",primary:y(n.primary,e),secondary:n.secondary.map(t=>y(t,e))};default:x(n)}}function z(n){return b(n)}function wn(n){return JSON.parse(n)}function I(n){return b(l(n))}function S(n,e){return JSON.stringify([n,e])}class An{constructor(e){p(this,"domains",new Map);p(this,"axes",new Map);p(this,"domainPacks",[]);p(this,"domainPackToAnchor",new Map);this.anchors=e;const t=Object.entries(e);t.sort((r,o)=>r[0].localeCompare(o[0]));for(const[r,o]of t){for(let a=0;a<o.axesSpec.length;a++){const s=o.axesSpec[a],i=I(s);this.axes.set(i,{anchor:r,idx:a})}if(o.domain!==void 0){const a=Object.entries(o.domain);a.sort((s,i)=>s[0].localeCompare(i[0])),this.domainPackToAnchor.set(JSON.stringify(a),r),this.domainPacks.push(a.map(([s])=>s));for(const[s,i]of a){const u=S(s,i);this.domains.set(u,r)}}}}derive(e,t){const r={name:e.name,axes:[]};let o;if(e.domain!==void 0)n:for(const s of this.domainPacks){const i=[];for(const c of s){const d=e.domain[c];if(d!==void 0)i.push([c,d]);else break n}const u=this.domainPackToAnchor.get(JSON.stringify(i));if(u!==void 0){r.domainAnchor=u,o=new Set(s);break}}for(const[s,i]of Object.entries(e.domain??{})){if(o!==void 0&&o.has(s))continue;const u=S(s,i),c=this.domains.get(u);r.domain??(r.domain={}),r.domain[s]=c?{anchor:c}:i}if(r.axes=e.axesSpec.map(s=>{const i=I(s),u=this.axes.get(i);return u===void 0?l(s):u}),!t||t.length===0)return r;const a=[];for(const s of t){const[i,u]=s;if(typeof i=="number"){if(i<0||i>=e.axesSpec.length)throw new Error(`Axis index ${i} is out of bounds (0-${e.axesSpec.length-1})`);a.push([i,u])}else{const c=e.axesSpec.findIndex(d=>d.name===i);if(c===-1)throw new Error(`Axis with name "${i}" not found in the column specification`);a.push([c,u])}}return a.sort((s,i)=>s[0]-i[0]),{source:r,axisFilters:a}}deriveS(e,t){return z(this.derive(e,t))}}function xn(n,e,t){const r={...e},o=(t==null?void 0:t.ignoreMissingDomains)??!1;if(r.domainAnchor!==void 0){const a=n[r.domainAnchor];if(!a)throw new Error(`Anchor "${r.domainAnchor}" not found`);const s=a.domain||{};r.domain={...s,...r.domain},delete r.domainAnchor}if(r.domain){const a={};for(const[s,i]of Object.entries(r.domain))if(typeof i=="string")a[s]=i;else{const u=n[i.anchor];if(!u)throw new Error(`Anchor "${i.anchor}" not found for domain key "${s}"`);if(!u.domain||u.domain[s]===void 0){if(!o)throw new Error(`Domain key "${s}" not found in anchor "${i.anchor}"`);continue}a[s]=u.domain[s]}r.domain=a}return r.axes&&(r.axes=r.axes.map(a=>Nn(n,a))),r}function Nn(n,e){if(!kn(e))return e;const t=e.anchor,r=n[t];if(!r)throw new Error(`Anchor "${t}" not found for axis reference`);if("idx"in e){if(e.idx<0||e.idx>=r.axesSpec.length)throw new Error(`Axis index ${e.idx} out of bounds for anchor "${t}"`);return r.axesSpec[e.idx]}else if("name"in e){const o=r.axesSpec.filter(a=>a.name===e.name);if(o.length>1)throw new Error(`Multiple axes with name "${e.name}" found in anchor "${t}"`);if(o.length===0)throw new Error(`Axis with name "${e.name}" not found in anchor "${t}"`);return o[0]}else if("id"in e){const o=r.axesSpec.filter(a=>M(e.id,l(a)));if(o.length>1)throw new Error(`Multiple matching axes found for matcher in anchor "${t}"`);if(o.length===0)throw new Error(`No matching axis found for matcher in anchor "${t}"`);return o[0]}throw new Error("Unsupported axis reference type")}function kn(n){return typeof n=="object"&&"anchor"in n}function In(n){return typeof n=="object"&&n!==null&&"source"in n&&"axisFilters"in n}function f(n){return n.kind==="PColumn"}function _(n){return f(n.spec)}function Sn(n){return f(n.obj)}function Cn(n){return f(n.obj.spec)}function Vn(n){if(!_(n))throw new Error(`not a PColumn (kind = ${n.spec.kind})`);return n}function En(n,e){return n===void 0?void 0:{...n,data:e(n.data)}}function Jn(n){const e=new Map,t=r=>{switch(r.type){case"column":e.set(r.column.id,r.column);return;case"slicedColumn":e.set(r.column.id,r.column);return;case"full":case"inner":for(const o of r.entries)t(o);return;case"outer":t(r.primary);for(const o of r.secondary)t(o);return;default:x(r)}};return t(n),[...e.values()]}function Dn(n){throw new Error("Unexpected object: "+n)}function g(n,e){switch(n.type){case"and":for(const t of n.operands)if(!g(t,e))return!1;return!0;case"or":for(const t of n.operands)if(g(t,e))return!0;return!1;case"not":return!g(n.operand,e);case"name":return f(e)&&e.name===n.name;case"name_pattern":return f(e)&&!!e.name.match(n.pattern);case"annotation":return f(e)&&e.annotations!==void 0&&e.annotations[n.annotation]===n.value;case"annotation_pattern":return f(e)&&e.annotations!==void 0&&e.annotations[n.annotation]!==void 0&&!!e.annotations[n.annotation].match(n.pattern);case"has_axes":return f(e)&&n.axes.every(t=>e.axesSpec.some(r=>(t.type===void 0||t.type===r.type)&&(t.name===void 0||t.name===r.name)&&(t.domain===void 0||Object.keys(t.domain).length===0||r.domain!==void 0&&Object.entries(t.domain).every(([o,a])=>r.domain[o]===a))));default:Dn(n)}}function w(n,e){if(n.name!==void 0&&n.name!==e.name)return!1;if(n.type!==void 0){if(Array.isArray(n.type)){if(!n.type.includes(e.type))return!1}else if(n.type!==e.type)return!1}if(n.domain!==void 0){const t=e.domain||{};for(const[r,o]of Object.entries(n.domain))if(t[r]!==o)return!1}return!0}function A(n,e){if(e.name!==void 0&&n.name!==e.name||e.namePattern!==void 0&&!new RegExp(e.namePattern).test(n.name))return!1;if(e.type!==void 0){if(Array.isArray(e.type)){if(!e.type.includes(n.valueType))return!1}else if(e.type!==n.valueType)return!1}if(e.domain!==void 0){const t=n.domain||{};for(const[r,o]of Object.entries(e.domain))if(t[r]!==o)return!1}if(e.axes!==void 0){const t=n.axesSpec.map(l);if(e.partialAxesMatch){for(const r of e.axes)if(!t.some(o=>w(r,o)))return!1}else{if(t.length!==e.axes.length)return!1;for(let r=0;r<e.axes.length;r++)if(!w(e.axes[r],t[r]))return!1}}if(e.annotations!==void 0){const t=n.annotations||{};for(const[r,o]of Object.entries(e.annotations))if(t[r]!==o)return!1}if(e.annotationPatterns!==void 0){const t=n.annotations||{};for(const[r,o]of Object.entries(e.annotationPatterns)){const a=t[r];if(a===void 0||!new RegExp(o).test(a))return!1}}return!0}function On(n){return Array.isArray(n)?e=>n.some(t=>f(e)&&A(e,t)):e=>f(e)&&A(e,n)}const Ln={href:"/"},Fn=m.z.object({__isRef:m.z.literal(!0).describe("Crucial marker for the block dependency tree reconstruction"),blockId:m.z.string().describe("Upstream block id"),name:m.z.string().describe("Name of the output provided to the upstream block's output context")}).describe("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.").strict().readonly();function $n(n){return typeof n=="object"&&n!==null&&"__isRef"in n&&n.__isRef===!0&&"blockId"in n&&"name"in n}function Bn(n,e){return n.blockId===e.blockId&&n.name===e.name}function jn(n,e){return n.ok?{ok:!0,value:e(n.value)}:n}function Tn(n){if(n instanceof Int8Array||n instanceof Uint8Array||n instanceof Uint8ClampedArray)return new DataView(n.buffer,n.byteOffset,n.byteLength);if(n instanceof ArrayBuffer)return new DataView(n);throw new TypeError("Expected `data` to be an ArrayBuffer, Buffer, Int8Array, Uint8Array or Uint8ClampedArray")}const Un="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",Kn="0123456789ABCDEFGHIJKLMNOPQRSTUV",Rn="0123456789ABCDEFGHJKMNPQRSTVWXYZ";function W(n,e,t){t=t||{};let r,o;switch(e){case"RFC3548":case"RFC4648":r=Un,o=!0;break;case"RFC4648-HEX":r=Kn,o=!0;break;case"Crockford":r=Rn,o=!1;break;default:throw new Error("Unknown base32 variant: "+String(e))}const a=t.padding!==void 0?t.padding:o,s=Tn(n);let i=0,u=0,c="";for(let d=0;d<s.byteLength;d++)for(u=u<<8|s.getUint8(d),i+=8;i>=5;)c+=r[u>>>i-5&31],i-=5;if(i>0&&(c+=r[u<<5-i&31]),a)for(;c.length%8!==0;)c+="=";return c}const N=15,q=24,k=m.z.string().length(q).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");function vn(){const n=new Uint8Array(N);return crypto.getRandomValues(n),k.parse(W(n,"RFC4648"))}function X(n){if(n.length!==N)throw new Error(`Wrong number of bytes: ${n.length}`);return k.parse(W(n,"RFC4648"))}async function Hn(n){const e=new TextEncoder,t=await crypto.subtle.digest("SHA-256",e.encode(n));return X(new Uint8Array(t.slice(0,15)))}function Mn(n){return JSON.stringify(n)}function zn(n){return b(n)}function _n(n){return JSON.parse(n)}exports.AnchoredIdDeriver=An;exports.DefaultNavigationState=Ln;exports.PTableAbsent=R;exports.PTableNA=v;exports.PValueBytesNA=$;exports.PValueDoubleNA=cn;exports.PValueFloatNA=un;exports.PValueIntNA=L;exports.PValueLongNA=P;exports.PValueStringNA=F;exports.PlId=k;exports.PlIdBytes=N;exports.PlIdLength=q;exports.PlRef=Fn;exports.canonicalizeAxisId=gn;exports.canonicalizeJson=zn;exports.dataInfoToEntries=on;exports.digestPlId=Hn;exports.ensureNotNAPValue=fn;exports.ensurePColumn=Vn;exports.entriesToDataInfo=an;exports.executePSpecPredicate=g;exports.extractAllColumns=Jn;exports.getAxesId=H;exports.getAxisId=l;exports.getColumnIdAndSpec=hn;exports.getFileNameFromHandle=nn;exports.getFilePathFromHandle=D;exports.getPColumnSpecId=yn;exports.isDataInfo=en;exports.isDataInfoEntries=O;exports.isFilteredPColumn=In;exports.isImportFileHandleIndex=J;exports.isImportFileHandleUpload=E;exports.isLiveLog=Y;exports.isNotNAPValue=B;exports.isPColumn=_;exports.isPColumnResult=Cn;exports.isPColumnSpec=f;exports.isPColumnSpecResult=Sn;exports.isPTableAbsent=pn;exports.isPValue=j;exports.isPartitionedDataInfoEntries=rn;exports.isPlRef=$n;exports.isValueAbsent=K;exports.isValueNA=h;exports.mapDataInfo=tn;exports.mapDataInfoEntries=sn;exports.mapJoinEntry=y;exports.mapPObjectData=En;exports.mapPTableDef=Pn;exports.mapValueInVOE=jn;exports.matchAxis=w;exports.matchAxisId=M;exports.matchPColumn=A;exports.pTableValue=mn;exports.pValueToStringOrNumber=ln;exports.pValueToStringOrNumberOrNull=U;exports.parseColumnId=wn;exports.parseJson=_n;exports.plId=X;exports.plRefsEqual=Bn;exports.resolveAnchors=xn;exports.safeConvertToPValue=T;exports.selectorsToPredicate=On;exports.stringifyColumnId=z;exports.stringifyJson=Mn;exports.toJsonSafePValue=dn;exports.uniquePlId=vn;
|
|
1
|
+
"use strict";var G=Object.defineProperty;var Q=(n,e,t)=>e in n?G(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var p=(n,e,t)=>Q(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("canonicalize"),m=require("zod");function Y(n){return n!==void 0&&n.startsWith("log+live://log/")}function x(n){throw new Error("Unexpected object: "+n)}const E="upload://upload/",C="index://index/";function V(n){return n.startsWith(E)}function J(n){return n.startsWith(C)}function D(n){if(J(n)){const e=n.slice(C.length);return JSON.parse(decodeURIComponent(e)).path}else if(V(n)){const e=n.slice(E.length);return JSON.parse(decodeURIComponent(e)).localPath}x(n)}function Z(n){return n.replace(/^.*[\\/]/,"")}function nn(n){return Z(D(n))}function en(n){if(!n||typeof n!="object")return!1;const e=n;if(!("type"in e))return!1;switch(e.type){case"Json":return typeof e.keyLength=="number"&&e.data!==void 0&&typeof e.data=="object";case"JsonPartitioned":return typeof e.partitionKeyLength=="number"&&e.parts!==void 0&&typeof e.parts=="object";case"BinaryPartitioned":return typeof e.partitionKeyLength=="number"&&e.parts!==void 0&&typeof e.parts=="object";default:return!1}}function tn(n,e){if(n!==void 0)switch(n.type){case"Json":return n;case"JsonPartitioned":{const t={};for(const[r,o]of Object.entries(n.parts))t[r]=e(o);return{...n,parts:t}}case"BinaryPartitioned":{const t={};for(const[r,o]of Object.entries(n.parts))t[r]={index:e(o.index),values:e(o.values)};return{...n,parts:t}}}}function O(n){if(!n||typeof n!="object")return!1;const e=n;if(!("type"in e))return!1;switch(e.type){case"Json":return typeof e.keyLength=="number"&&Array.isArray(e.data);case"JsonPartitioned":return typeof e.partitionKeyLength=="number"&&Array.isArray(e.parts);case"BinaryPartitioned":return typeof e.partitionKeyLength=="number"&&Array.isArray(e.parts);default:return!1}}function rn(n){return O(n)?n.type==="JsonPartitioned"||n.type==="BinaryPartitioned":!1}function on(n){switch(n.type){case"Json":{const e=Object.entries(n.data).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"Json",keyLength:n.keyLength,data:e}}case"JsonPartitioned":{const e=Object.entries(n.parts).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"JsonPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}case"BinaryPartitioned":{const e=Object.entries(n.parts).map(([t,r])=>({key:JSON.parse(t),value:r}));return{type:"BinaryPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}}}function an(n){switch(n.type){case"Json":{const e={};for(const t of n.data)e[JSON.stringify(t.key)]=t.value;return{type:"Json",keyLength:n.keyLength,data:e}}case"JsonPartitioned":{const e={};for(const t of n.parts)e[JSON.stringify(t.key)]=t.value;return{type:"JsonPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}case"BinaryPartitioned":{const e={};for(const t of n.parts)e[JSON.stringify(t.key)]=t.value;return{type:"BinaryPartitioned",partitionKeyLength:n.partitionKeyLength,parts:e}}}}function sn(n,e){if(n!==void 0)switch(n.type){case"Json":return n;case"JsonPartitioned":{const t=n.parts.map(r=>({key:r.key,value:e(r.value)}));return{...n,parts:t}}case"BinaryPartitioned":{const t=n.parts.map(r=>({key:r.key,value:{index:e(r.value.index),values:e(r.value.values)}}));return{...n,parts:t}}}}const L=-2147483648,P=-9007199254740991n,un=NaN,cn=NaN,F=null,$=null;function h(n,e){switch(e){case"Int":return n===L;case"Long":return n===Number(P)||n===P;case"Float":return Number.isNaN(n);case"Double":return Number.isNaN(n);case"String":return n===F;case"Bytes":return n===$;default:throw Error(`unsupported data type: ${e}`)}}function fn(n){if(!B(n))throw new Error(`Expected not-NA PValue, got ${n}`);return n}function B(n,e){if(!e)return typeof n=="string"||typeof n=="number"&&isFinite(n)||typeof n=="bigint";if(h(n,e))return!1;switch(e){case"Int":return typeof n=="number";case"Long":return typeof n=="number"||typeof n=="bigint";case"Float":return typeof n=="number";case"Double":return typeof n=="number";case"String":return typeof n=="string";case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${e}`)}}function j(n,e){if(!e)return n===null||typeof n=="string"||typeof n=="number"||typeof n=="bigint";if(h(n,e))return!0;switch(e){case"Int":return typeof n=="number";case"Long":return typeof n=="number"||typeof n=="bigint";case"Float":return typeof n=="number";case"Double":return typeof n=="number";case"String":return typeof n=="string";case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${e}`)}}function dn(n){if(n===null||typeof n=="string"||typeof n=="number")return n;if(typeof n=="bigint")return{bigint:n.toString()};throw new Error(`Type ${typeof n} (value ${n}) not yet supported.`)}function R(n,e){if(n===null||typeof n=="string"||typeof n=="number"||typeof n=="bigint"){if(e&&!h(n,e)&&!j(n,e))throw new Error(`Unexpected value type, got ${typeof n}, expected ${e}`);return n}if(typeof n=="object"&&n!==null&&"bigint"in n&&typeof n.bigint=="string"){if(e&&e!=="Long")throw new Error(`Unexpected value type, got serialized bigint, expected ${e}`);return BigInt(n.bigint)}throw new Error(`Unsupported type ${typeof n} (value ${n}).`)}function ln(n){if(n=T(n),n===null)throw new Error("Value is null");return n}function T(n){if(n=R(n),n===null)return null;if(typeof n=="string")return n;if(typeof n=="number"){if(!isFinite(n))throw new Error(`Value is not finite (${n})`);return n}if(typeof n=="bigint")return Number(n);throw new Error(`Unexpected value type: ${typeof n}`)}function U(n,e){const t=Math.floor(e/8),r=1<<7-e%8;return(n[t]&r)>0}const K={type:"absent"},v=null;function mn(n){return typeof n=="object"&&n!==null&&n.type==="absent"}function pn(n,e,t={}){if(U(n.absent,e))return t.absent===void 0?K:t.absent;const r=n.data[e],o=n.type;if(h(r,o))return t.na===void 0?v:t.na;switch(o){case"Int":return r;case"Long":return Number(r);case"Float":return r;case"Double":return r;case"String":return r;case"Bytes":throw Error("Bytes not yet supported");default:throw Error(`unsupported data type: ${o}`)}}function yn(n){return{kind:n.kind,valueType:n.valueType,name:n.name,domain:n.domain,parentAxes:n.parentAxes,axesId:_(n.axesSpec)}}function hn(n){return{columnId:n.id,spec:n.spec}}function l(n){const{type:e,name:t,domain:r}=n;return{type:e,name:t,...r&&{domain:r}}}function _(n){return n.map(l)}function gn(n){return b(l(n))}function bn(n,e){if(n===void 0)return e===void 0;if(e===void 0)return!0;for(const t in e)if(n[t]!==e[t])return!1;return!0}function H(n,e){return n.name===e.name&&bn(n.domain,e.domain)}function Pn(n,e){return{...n,src:y(n.src,e)}}function y(n,e){switch(n.type){case"column":return{type:"column",column:e(n.column)};case"slicedColumn":return{type:"slicedColumn",column:e(n.column),newId:n.newId,axisFilters:n.axisFilters};case"inlineColumn":return n;case"inner":case"full":return{type:n.type,entries:n.entries.map(t=>y(t,e))};case"outer":return{type:"outer",primary:y(n.primary,e),secondary:n.secondary.map(t=>y(t,e))};default:x(n)}}function M(n){return b(n)}function wn(n){return JSON.parse(n)}function I(n){return b(l(n))}function S(n,e){return JSON.stringify([n,e])}class An{constructor(e){p(this,"domains",new Map);p(this,"axes",new Map);p(this,"domainPacks",[]);p(this,"domainPackToAnchor",new Map);this.anchors=e;const t=Object.entries(e);t.sort((r,o)=>r[0].localeCompare(o[0]));for(const[r,o]of t){for(let a=0;a<o.axesSpec.length;a++){const s=o.axesSpec[a],i=I(s);this.axes.set(i,{anchor:r,idx:a})}if(o.domain!==void 0){const a=Object.entries(o.domain);a.sort((s,i)=>s[0].localeCompare(i[0])),this.domainPackToAnchor.set(JSON.stringify(a),r),this.domainPacks.push(a.map(([s])=>s));for(const[s,i]of a){const u=S(s,i);this.domains.set(u,r)}}}}derive(e,t){const r={name:e.name,axes:[]};let o;if(e.domain!==void 0)n:for(const s of this.domainPacks){const i=[];for(const c of s){const d=e.domain[c];if(d!==void 0)i.push([c,d]);else break n}const u=this.domainPackToAnchor.get(JSON.stringify(i));if(u!==void 0){r.domainAnchor=u,o=new Set(s);break}}for(const[s,i]of Object.entries(e.domain??{})){if(o!==void 0&&o.has(s))continue;const u=S(s,i),c=this.domains.get(u);r.domain??(r.domain={}),r.domain[s]=c?{anchor:c}:i}if(r.axes=e.axesSpec.map(s=>{const i=I(s),u=this.axes.get(i);return u===void 0?l(s):u}),!t||t.length===0)return r;const a=[];for(const s of t){const[i,u]=s;if(typeof i=="number"){if(i<0||i>=e.axesSpec.length)throw new Error(`Axis index ${i} is out of bounds (0-${e.axesSpec.length-1})`);a.push([i,u])}else{const c=e.axesSpec.findIndex(d=>d.name===i);if(c===-1)throw new Error(`Axis with name "${i}" not found in the column specification`);a.push([c,u])}}return a.sort((s,i)=>s[0]-i[0]),{source:r,axisFilters:a}}deriveS(e,t){return M(this.derive(e,t))}}function xn(n,e,t){const r={...e},o=(t==null?void 0:t.ignoreMissingDomains)??!1;if(r.domainAnchor!==void 0){const a=n[r.domainAnchor];if(!a)throw new Error(`Anchor "${r.domainAnchor}" not found`);const s=a.domain||{};r.domain={...s,...r.domain},delete r.domainAnchor}if(r.domain){const a={};for(const[s,i]of Object.entries(r.domain))if(typeof i=="string")a[s]=i;else{const u=n[i.anchor];if(!u)throw new Error(`Anchor "${i.anchor}" not found for domain key "${s}"`);if(!u.domain||u.domain[s]===void 0){if(!o)throw new Error(`Domain key "${s}" not found in anchor "${i.anchor}"`);continue}a[s]=u.domain[s]}r.domain=a}return r.axes&&(r.axes=r.axes.map(a=>Nn(n,a))),r}function Nn(n,e){if(!kn(e))return e;const t=e.anchor,r=n[t];if(!r)throw new Error(`Anchor "${t}" not found for axis reference`);if("idx"in e){if(e.idx<0||e.idx>=r.axesSpec.length)throw new Error(`Axis index ${e.idx} out of bounds for anchor "${t}"`);return r.axesSpec[e.idx]}else if("name"in e){const o=r.axesSpec.filter(a=>a.name===e.name);if(o.length>1)throw new Error(`Multiple axes with name "${e.name}" found in anchor "${t}"`);if(o.length===0)throw new Error(`Axis with name "${e.name}" not found in anchor "${t}"`);return o[0]}else if("id"in e){const o=r.axesSpec.filter(a=>H(e.id,l(a)));if(o.length>1)throw new Error(`Multiple matching axes found for matcher in anchor "${t}"`);if(o.length===0)throw new Error(`No matching axis found for matcher in anchor "${t}"`);return o[0]}throw new Error("Unsupported axis reference type")}function kn(n){return typeof n=="object"&&"anchor"in n}function In(n){return typeof n=="object"&&n!==null&&"source"in n&&"axisFilters"in n}function f(n){return n.kind==="PColumn"}function z(n){return f(n.spec)}function Sn(n){return f(n.obj)}function En(n){return f(n.obj.spec)}function Cn(n){if(!z(n))throw new Error(`not a PColumn (kind = ${n.spec.kind})`);return n}function Vn(n,e){return n===void 0?void 0:{...n,data:e(n.data)}}function Jn(n){const e=new Map,t=r=>{switch(r.type){case"column":e.set(r.column.id,r.column);return;case"slicedColumn":e.set(r.column.id,r.column);return;case"inlineColumn":return;case"full":case"inner":for(const o of r.entries)t(o);return;case"outer":t(r.primary);for(const o of r.secondary)t(o);return;default:x(r)}};return t(n),[...e.values()]}function Dn(n){throw new Error("Unexpected object: "+n)}function g(n,e){switch(n.type){case"and":for(const t of n.operands)if(!g(t,e))return!1;return!0;case"or":for(const t of n.operands)if(g(t,e))return!0;return!1;case"not":return!g(n.operand,e);case"name":return f(e)&&e.name===n.name;case"name_pattern":return f(e)&&!!e.name.match(n.pattern);case"annotation":return f(e)&&e.annotations!==void 0&&e.annotations[n.annotation]===n.value;case"annotation_pattern":return f(e)&&e.annotations!==void 0&&e.annotations[n.annotation]!==void 0&&!!e.annotations[n.annotation].match(n.pattern);case"has_axes":return f(e)&&n.axes.every(t=>e.axesSpec.some(r=>(t.type===void 0||t.type===r.type)&&(t.name===void 0||t.name===r.name)&&(t.domain===void 0||Object.keys(t.domain).length===0||r.domain!==void 0&&Object.entries(t.domain).every(([o,a])=>r.domain[o]===a))));default:Dn(n)}}function w(n,e){if(n.name!==void 0&&n.name!==e.name)return!1;if(n.type!==void 0){if(Array.isArray(n.type)){if(!n.type.includes(e.type))return!1}else if(n.type!==e.type)return!1}if(n.domain!==void 0){const t=e.domain||{};for(const[r,o]of Object.entries(n.domain))if(t[r]!==o)return!1}return!0}function A(n,e){if(e.name!==void 0&&n.name!==e.name||e.namePattern!==void 0&&!new RegExp(e.namePattern).test(n.name))return!1;if(e.type!==void 0){if(Array.isArray(e.type)){if(!e.type.includes(n.valueType))return!1}else if(e.type!==n.valueType)return!1}if(e.domain!==void 0){const t=n.domain||{};for(const[r,o]of Object.entries(e.domain))if(t[r]!==o)return!1}if(e.axes!==void 0){const t=n.axesSpec.map(l);if(e.partialAxesMatch){for(const r of e.axes)if(!t.some(o=>w(r,o)))return!1}else{if(t.length!==e.axes.length)return!1;for(let r=0;r<e.axes.length;r++)if(!w(e.axes[r],t[r]))return!1}}if(e.annotations!==void 0){const t=n.annotations||{};for(const[r,o]of Object.entries(e.annotations))if(t[r]!==o)return!1}if(e.annotationPatterns!==void 0){const t=n.annotations||{};for(const[r,o]of Object.entries(e.annotationPatterns)){const a=t[r];if(a===void 0||!new RegExp(o).test(a))return!1}}return!0}function On(n){return Array.isArray(n)?e=>n.some(t=>f(e)&&A(e,t)):e=>f(e)&&A(e,n)}const Ln={href:"/"},Fn=m.z.object({__isRef:m.z.literal(!0).describe("Crucial marker for the block dependency tree reconstruction"),blockId:m.z.string().describe("Upstream block id"),name:m.z.string().describe("Name of the output provided to the upstream block's output context"),requireEnrichments:m.z.literal(!0).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")}).describe("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.").readonly();function $n(n){return typeof n=="object"&&n!==null&&"__isRef"in n&&n.__isRef===!0&&"blockId"in n&&"name"in n}function Bn(n,e,t=!1){return t?{__isRef:!0,blockId:n,name:e,requireEnrichments:!0}:{__isRef:!0,blockId:n,name:e}}function jn(n,e=!0){if(e)return{...n,requireEnrichments:!0};{const{requireEnrichments:t,...r}=n;return r}}function Rn(n,e,t=!1){return n.blockId===e.blockId&&n.name===e.name&&(t||n.requireEnrichments===e.requireEnrichments)}function Tn(n,e){return n.ok?{ok:!0,value:e(n.value)}:n}function Un(n){if(n instanceof Int8Array||n instanceof Uint8Array||n instanceof Uint8ClampedArray)return new DataView(n.buffer,n.byteOffset,n.byteLength);if(n instanceof ArrayBuffer)return new DataView(n);throw new TypeError("Expected `data` to be an ArrayBuffer, Buffer, Int8Array, Uint8Array or Uint8ClampedArray")}const Kn="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",vn="0123456789ABCDEFGHIJKLMNOPQRSTUV",_n="0123456789ABCDEFGHJKMNPQRSTVWXYZ";function q(n,e,t){t=t||{};let r,o;switch(e){case"RFC3548":case"RFC4648":r=Kn,o=!0;break;case"RFC4648-HEX":r=vn,o=!0;break;case"Crockford":r=_n,o=!1;break;default:throw new Error("Unknown base32 variant: "+String(e))}const a=t.padding!==void 0?t.padding:o,s=Un(n);let i=0,u=0,c="";for(let d=0;d<s.byteLength;d++)for(u=u<<8|s.getUint8(d),i+=8;i>=5;)c+=r[u>>>i-5&31],i-=5;if(i>0&&(c+=r[u<<5-i&31]),a)for(;c.length%8!==0;)c+="=";return c}const N=15,W=24,k=m.z.string().length(W).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");function Hn(){const n=new Uint8Array(N);return crypto.getRandomValues(n),k.parse(q(n,"RFC4648"))}function X(n){if(n.length!==N)throw new Error(`Wrong number of bytes: ${n.length}`);return k.parse(q(n,"RFC4648"))}async function Mn(n){const e=new TextEncoder,t=await crypto.subtle.digest("SHA-256",e.encode(n));return X(new Uint8Array(t.slice(0,15)))}function zn(n){return JSON.stringify(n)}function qn(n){return b(n)}function Wn(n){return JSON.parse(n)}exports.AnchoredIdDeriver=An;exports.DefaultNavigationState=Ln;exports.PTableAbsent=K;exports.PTableNA=v;exports.PValueBytesNA=$;exports.PValueDoubleNA=cn;exports.PValueFloatNA=un;exports.PValueIntNA=L;exports.PValueLongNA=P;exports.PValueStringNA=F;exports.PlId=k;exports.PlIdBytes=N;exports.PlIdLength=W;exports.PlRef=Fn;exports.canonicalizeAxisId=gn;exports.canonicalizeJson=qn;exports.createPlRef=Bn;exports.dataInfoToEntries=on;exports.digestPlId=Mn;exports.ensureNotNAPValue=fn;exports.ensurePColumn=Cn;exports.entriesToDataInfo=an;exports.executePSpecPredicate=g;exports.extractAllColumns=Jn;exports.getAxesId=_;exports.getAxisId=l;exports.getColumnIdAndSpec=hn;exports.getFileNameFromHandle=nn;exports.getFilePathFromHandle=D;exports.getPColumnSpecId=yn;exports.isDataInfo=en;exports.isDataInfoEntries=O;exports.isFilteredPColumn=In;exports.isImportFileHandleIndex=J;exports.isImportFileHandleUpload=V;exports.isLiveLog=Y;exports.isNotNAPValue=B;exports.isPColumn=z;exports.isPColumnResult=En;exports.isPColumnSpec=f;exports.isPColumnSpecResult=Sn;exports.isPTableAbsent=mn;exports.isPValue=j;exports.isPartitionedDataInfoEntries=rn;exports.isPlRef=$n;exports.isValueAbsent=U;exports.isValueNA=h;exports.mapDataInfo=tn;exports.mapDataInfoEntries=sn;exports.mapJoinEntry=y;exports.mapPObjectData=Vn;exports.mapPTableDef=Pn;exports.mapValueInVOE=Tn;exports.matchAxis=w;exports.matchAxisId=H;exports.matchPColumn=A;exports.pTableValue=pn;exports.pValueToStringOrNumber=ln;exports.pValueToStringOrNumberOrNull=T;exports.parseColumnId=wn;exports.parseJson=Wn;exports.plId=X;exports.plRefsEqual=Rn;exports.resolveAnchors=xn;exports.safeConvertToPValue=R;exports.selectorsToPredicate=On;exports.stringifyColumnId=M;exports.stringifyJson=zn;exports.toJsonSafePValue=dn;exports.uniquePlId=Hn;exports.withEnrichments=jn;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|