@platforma-open/milaboratories.sort-seq-analysis.block 1.0.4 → 1.0.6
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/block-pack/CHANGELOG.md +31 -0
- package/block-pack/main.plj.gz +0 -0
- package/block-pack/manifest.json +1 -1
- package/block-pack/model.json +1 -1
- package/block-pack/organization-logo.png +0 -0
- package/block-pack/published.json +1 -1
- package/block-pack/ui.tgz +0 -0
- package/dist/AGENTS.d.ts +181 -88
- package/dist/AGENTS.d.ts.map +1 -1
- package/dist/index.d.ts +181 -88
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +79 -58
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/dist/index.js
CHANGED
|
@@ -14,6 +14,8 @@ const PColumnName$1 = {
|
|
|
14
14
|
MutationCount: "pl7.app/repertoire/mutationCount",
|
|
15
15
|
/** The variant axis's label column — shown as "Variant Id". */
|
|
16
16
|
VariantLabel: "pl7.app/label",
|
|
17
|
+
/** The **sample** axis's label column. Same name as `VariantLabel`; the axis picks one. */
|
|
18
|
+
SampleLabel: "pl7.app/label",
|
|
17
19
|
/** The per-variant mutation list, shown as "Mutations". */
|
|
18
20
|
Mutations: "pl7.app/repertoire/mutations"
|
|
19
21
|
};
|
|
@@ -81,16 +83,28 @@ const metadataSelector = {
|
|
|
81
83
|
}],
|
|
82
84
|
name: PColumnName$1.Metadata
|
|
83
85
|
};
|
|
86
|
+
/**
|
|
87
|
+
* The sample axis's label column. `pl7.app/isLabel` is required alongside the name, which the
|
|
88
|
+
* variant label column shares.
|
|
89
|
+
*/
|
|
90
|
+
const sampleLabelSelector = {
|
|
91
|
+
axes: [{
|
|
92
|
+
anchor: "main",
|
|
93
|
+
idx: 0
|
|
94
|
+
}],
|
|
95
|
+
name: PColumnName$1.SampleLabel,
|
|
96
|
+
annotations: { "pl7.app/isLabel": "true" }
|
|
97
|
+
};
|
|
84
98
|
PColumnName$1.MutationCount;
|
|
85
99
|
//#endregion
|
|
86
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
100
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/plugin_handle.js
|
|
87
101
|
const PLUGIN_OUTPUT_PREFIX = "plugin-output#";
|
|
88
102
|
/** Construct the output key for a plugin output in the block outputs map. */
|
|
89
103
|
function pluginOutputKey(handle, outputKey) {
|
|
90
104
|
return `${PLUGIN_OUTPUT_PREFIX}${handle}#${outputKey}`;
|
|
91
105
|
}
|
|
92
106
|
//#endregion
|
|
93
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
107
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/block_storage.js
|
|
94
108
|
/**
|
|
95
109
|
* Discriminator key for BlockStorage format detection.
|
|
96
110
|
* This unique hash-based key identifies data as BlockStorage vs legacy formats.
|
|
@@ -6408,7 +6422,7 @@ function relocateBlockIds(params, blockIds) {
|
|
|
6408
6422
|
return walk(params);
|
|
6409
6423
|
}
|
|
6410
6424
|
//#endregion
|
|
6411
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
6425
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/block_migrations.js
|
|
6412
6426
|
/** Create a DataVersioned wrapper with correct shape */
|
|
6413
6427
|
function makeVersionedData(version, data) {
|
|
6414
6428
|
return {
|
|
@@ -6986,7 +7000,7 @@ var DataModel = class DataModel {
|
|
|
6986
7000
|
}
|
|
6987
7001
|
};
|
|
6988
7002
|
//#endregion
|
|
6989
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7003
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/internal.js
|
|
6990
7004
|
/** Utility code helping to identify whether the code is running in actual UI environment */
|
|
6991
7005
|
function isInUI() {
|
|
6992
7006
|
return typeof globalThis.getPlatforma !== "undefined" || typeof globalThis.platforma !== "undefined";
|
|
@@ -7056,7 +7070,7 @@ function registerFutureAwait(handle, onResolve) {
|
|
|
7056
7070
|
futureResolves.get(handle).push(onResolve);
|
|
7057
7071
|
}
|
|
7058
7072
|
//#endregion
|
|
7059
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7073
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/block_storage_facade.js
|
|
7060
7074
|
/**
|
|
7061
7075
|
* All facade callback names as constants.
|
|
7062
7076
|
* These are the source of truth - the interface is derived from these.
|
|
@@ -7094,7 +7108,7 @@ function registerFacadeCallbacks(callbacks) {
|
|
|
7094
7108
|
for (const key of Object.values(BlockStorageFacadeCallbacks)) tryRegisterCallback(key, callbacks[key]);
|
|
7095
7109
|
}
|
|
7096
7110
|
//#endregion
|
|
7097
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7111
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/services/block_services.js
|
|
7098
7112
|
/**
|
|
7099
7113
|
* Services required by all V3 blocks by default.
|
|
7100
7114
|
* Edit this when a new service should be available to all blocks.
|
|
@@ -7110,7 +7124,7 @@ const BLOCK_SERVICE_FLAGS = {
|
|
|
7110
7124
|
};
|
|
7111
7125
|
resolveRequiredServices(BLOCK_SERVICE_FLAGS);
|
|
7112
7126
|
//#endregion
|
|
7113
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7127
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/future.js
|
|
7114
7128
|
var FutureRef = class FutureRef {
|
|
7115
7129
|
handle;
|
|
7116
7130
|
postProcess;
|
|
@@ -7138,7 +7152,7 @@ var FutureRef = class FutureRef {
|
|
|
7138
7152
|
}
|
|
7139
7153
|
};
|
|
7140
7154
|
//#endregion
|
|
7141
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7155
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/accessor.js
|
|
7142
7156
|
function ifDef(value, cb) {
|
|
7143
7157
|
return value === void 0 ? void 0 : cb(value);
|
|
7144
7158
|
}
|
|
@@ -7388,11 +7402,11 @@ var TreeNodeAccessor = class TreeNodeAccessor {
|
|
|
7388
7402
|
}
|
|
7389
7403
|
};
|
|
7390
7404
|
//#endregion
|
|
7391
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7405
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/internal.js
|
|
7392
7406
|
const MainAccessorName = "main";
|
|
7393
7407
|
const StagingAccessorName = "staging";
|
|
7394
7408
|
//#endregion
|
|
7395
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7409
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/util/axis_filtering.js
|
|
7396
7410
|
function filterDataInfoEntries(dataInfoEntries, axisFilters) {
|
|
7397
7411
|
const sortedFilters = [...axisFilters].sort((a, b) => b[0] - a[0]);
|
|
7398
7412
|
const { type } = dataInfoEntries;
|
|
@@ -7456,7 +7470,7 @@ function filterDataInfoEntries(dataInfoEntries, axisFilters) {
|
|
|
7456
7470
|
}
|
|
7457
7471
|
}
|
|
7458
7472
|
//#endregion
|
|
7459
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7473
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/labels/linked_column_postfix.js
|
|
7460
7474
|
/**
|
|
7461
7475
|
* Structural postfix derivation for linked columns (phase 2 of `deriveDistinctLabels`).
|
|
7462
7476
|
*
|
|
@@ -7639,7 +7653,7 @@ function derivePostfixes(entries, format = defaultLinkerFormatter) {
|
|
|
7639
7653
|
});
|
|
7640
7654
|
}
|
|
7641
7655
|
//#endregion
|
|
7642
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7656
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/labels/derive_distinct_labels.js
|
|
7643
7657
|
const DISTANCE_PENALTY = .001;
|
|
7644
7658
|
const LABEL_TYPE = "__LABEL__";
|
|
7645
7659
|
const LABEL_TYPE_FULL = "__LABEL__@1";
|
|
@@ -7927,7 +7941,7 @@ function repairBareByPresence(labels, minimized, records, stats, forcedSet, forc
|
|
|
7927
7941
|
return patched;
|
|
7928
7942
|
}
|
|
7929
7943
|
//#endregion
|
|
7930
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7944
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/util/label.js
|
|
7931
7945
|
/** @deprecated Use deriveDistinctLabels */
|
|
7932
7946
|
function deriveLabels(values, getSpec, options = {}) {
|
|
7933
7947
|
return deriveDistinctLabels(values.map(getSpec), options).map((label, i) => ({
|
|
@@ -7936,7 +7950,7 @@ function deriveLabels(values, getSpec, options = {}) {
|
|
|
7936
7950
|
}));
|
|
7937
7951
|
}
|
|
7938
7952
|
//#endregion
|
|
7939
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
7953
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/util/pcolumn_data.js
|
|
7940
7954
|
const RT_RESOURCE_MAP = "PColumnData/ResourceMap";
|
|
7941
7955
|
const RT_RESOURCE_MAP_PARTITIONED = "PColumnData/Partitioned/ResourceMap";
|
|
7942
7956
|
const RT_JSON_PARTITIONED = "PColumnData/JsonPartitioned";
|
|
@@ -8230,7 +8244,7 @@ function allPColumnsReady(columns) {
|
|
|
8230
8244
|
return columns.every(isPColumnReady);
|
|
8231
8245
|
}
|
|
8232
8246
|
//#endregion
|
|
8233
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
8247
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/util/column_collection.js
|
|
8234
8248
|
function isPColumnValues(value) {
|
|
8235
8249
|
if (!Array.isArray(value)) return false;
|
|
8236
8250
|
if (value.length === 0) return true;
|
|
@@ -8508,7 +8522,7 @@ var PColumnCollection = class {
|
|
|
8508
8522
|
}
|
|
8509
8523
|
};
|
|
8510
8524
|
//#endregion
|
|
8511
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
8525
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/services/service_bridge.js
|
|
8512
8526
|
/**
|
|
8513
8527
|
* Builds a ServiceProxy from a ServiceDispatch.
|
|
8514
8528
|
* Each service method call is forwarded to dispatch.callServiceMethod.
|
|
@@ -8517,7 +8531,7 @@ function createServiceProxy(dispatch) {
|
|
|
8517
8531
|
return ((serviceId) => Object.freeze(Object.fromEntries(dispatch.getServiceMethods(serviceId).map((method) => [method, (...args) => dispatch.callServiceMethod(serviceId, method, ...args)]))));
|
|
8518
8532
|
}
|
|
8519
8533
|
//#endregion
|
|
8520
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
8534
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/services/get_services.js
|
|
8521
8535
|
const cachedServices = /* @__PURE__ */ new WeakMap();
|
|
8522
8536
|
function getService(name, deps) {
|
|
8523
8537
|
const ctx = deps?.ctx ?? getCfgRenderCtx();
|
|
@@ -8531,7 +8545,7 @@ function getService(name, deps) {
|
|
|
8531
8545
|
})();
|
|
8532
8546
|
}
|
|
8533
8547
|
//#endregion
|
|
8534
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
8548
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/util/pframe_upgraders.js
|
|
8535
8549
|
function patchInSetFilters(filters) {
|
|
8536
8550
|
const inSetToOrEqual = (predicate) => {
|
|
8537
8551
|
if (predicate.operator !== "InSet") return predicate;
|
|
@@ -8569,7 +8583,7 @@ function patchInSetFilters(filters) {
|
|
|
8569
8583
|
return filters.map((filter) => mapFilter(filter, inSetToOrEqual));
|
|
8570
8584
|
}
|
|
8571
8585
|
//#endregion
|
|
8572
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
8586
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/render/api.js
|
|
8573
8587
|
/**
|
|
8574
8588
|
* Helper function to match domain objects
|
|
8575
8589
|
* @param query Optional domain to match against
|
|
@@ -9018,27 +9032,27 @@ var PluginRenderCtx = class extends RenderCtxBase {
|
|
|
9018
9032
|
}
|
|
9019
9033
|
};
|
|
9020
9034
|
//#endregion
|
|
9021
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9035
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/plugin_model.js
|
|
9022
9036
|
/** Internal plugin↔block handshake. `Symbol.for` (not `Symbol`) so it stays
|
|
9023
9037
|
* identical across multiple `@platforma-sdk/model` copies in one process. */
|
|
9024
9038
|
const CREATE_PLUGIN_MODEL = Symbol.for("@platforma-sdk/model:createPluginModel");
|
|
9025
9039
|
//#endregion
|
|
9026
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9027
|
-
const PlatformaSDKVersion = "1.83.
|
|
9040
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/version.js
|
|
9041
|
+
const PlatformaSDKVersion = "1.83.9";
|
|
9028
9042
|
//#endregion
|
|
9029
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9043
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/bconfig/types.js
|
|
9030
9044
|
function isConfigLambda(cfgOrFh) {
|
|
9031
9045
|
return cfgOrFh.__renderLambda === true;
|
|
9032
9046
|
}
|
|
9033
9047
|
//#endregion
|
|
9034
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9048
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/bconfig/normalization.js
|
|
9035
9049
|
function downgradeCfgOrLambda(data) {
|
|
9036
9050
|
if (data === void 0) return void 0;
|
|
9037
9051
|
if (isConfigLambda(data)) return data.handle;
|
|
9038
9052
|
return data;
|
|
9039
9053
|
}
|
|
9040
9054
|
//#endregion
|
|
9041
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9055
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/block_storage_callbacks.js
|
|
9042
9056
|
/**
|
|
9043
9057
|
* BlockStorage Callback Implementations - wired to facade callbacks in BlockModelV3.done().
|
|
9044
9058
|
*
|
|
@@ -9392,7 +9406,7 @@ function deriveTemplateParamsFromStorage(storageJson, deriveTemplateParams) {
|
|
|
9392
9406
|
}
|
|
9393
9407
|
}
|
|
9394
9408
|
//#endregion
|
|
9395
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9409
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/block_model.js
|
|
9396
9410
|
/**
|
|
9397
9411
|
* Merges two feature flag objects with type-aware logic:
|
|
9398
9412
|
* - `supports*` (boolean): OR — `true` if either side is `true`
|
|
@@ -9758,7 +9772,7 @@ var BlockModelV3 = class BlockModelV3 {
|
|
|
9758
9772
|
}
|
|
9759
9773
|
};
|
|
9760
9774
|
//#endregion
|
|
9761
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9775
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/pframe_utils/axes.js
|
|
9762
9776
|
/** Create id for column copy with added keys in axes domains */
|
|
9763
9777
|
const colId = (id, domains, contextDomains) => {
|
|
9764
9778
|
let wid = id.toString();
|
|
@@ -9864,7 +9878,7 @@ function getAdditionalColumnsForColumn(blockAxes, column) {
|
|
|
9864
9878
|
})];
|
|
9865
9879
|
}
|
|
9866
9880
|
//#endregion
|
|
9867
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
9881
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_recipes/leaf_rebrand.js
|
|
9868
9882
|
/**
|
|
9869
9883
|
* Replace every column leaf whose id equals `fromId` with `toId`, leaving
|
|
9870
9884
|
* other column refs (linkers, sub-anchors) intact. Wrapper recipes
|
|
@@ -10532,7 +10546,7 @@ var U = class d {
|
|
|
10532
10546
|
}
|
|
10533
10547
|
};
|
|
10534
10548
|
//#endregion
|
|
10535
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
10549
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_providers/providers.js
|
|
10536
10550
|
/**
|
|
10537
10551
|
* Unified memoised factory dispatching to the right provider flavour by the
|
|
10538
10552
|
* source shape:
|
|
@@ -10621,7 +10635,7 @@ function hashRawPool(rawPool) {
|
|
|
10621
10635
|
return rawPool.map((b) => `${b.blockId}\x1f${b.prodCtx ?? ""}\x1f${b.stagingCtx ?? ""}\x1f${b.prodIncomplete ? 1 : 0}\x1f${b.stagingIncomplete ? 1 : 0}`).join("");
|
|
10622
10636
|
}
|
|
10623
10637
|
//#endregion
|
|
10624
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
10638
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_providers/index.js
|
|
10625
10639
|
/**
|
|
10626
10640
|
* Build the default set of ColumnsProviders for the ambient render ctx:
|
|
10627
10641
|
* - `AccessorColumnsProvider` over `outputs` (if present)
|
|
@@ -10656,7 +10670,7 @@ function isColumnProvider(source) {
|
|
|
10656
10670
|
return typeof p.getColumns === "function" && typeof p.isFinal === "function";
|
|
10657
10671
|
}
|
|
10658
10672
|
//#endregion
|
|
10659
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
10673
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/data_column.js
|
|
10660
10674
|
/**
|
|
10661
10675
|
* Thrown by leaf-recipe factories when the requested column is provably
|
|
10662
10676
|
* absent in the active render ctx — i.e. every relevant accessor reports
|
|
@@ -10896,7 +10910,7 @@ function memoizeByEntry(fn) {
|
|
|
10896
10910
|
};
|
|
10897
10911
|
}
|
|
10898
10912
|
//#endregion
|
|
10899
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
10913
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_recipes/column_overrided_recipe.js
|
|
10900
10914
|
/**
|
|
10901
10915
|
* Recipe wrapper that overlays {@link SpecOverrides} on top of any other
|
|
10902
10916
|
* recipe. The id is `ColumnOverriddenKey { source: inner.id, specOverrides }`.
|
|
@@ -11034,7 +11048,7 @@ var DataColumnOverriddenRecipe = class extends ColumnOverriddenRecipe {
|
|
|
11034
11048
|
}
|
|
11035
11049
|
};
|
|
11036
11050
|
//#endregion
|
|
11037
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11051
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_recipes/column_filtered_recipe.js
|
|
11038
11052
|
/**
|
|
11039
11053
|
* Recipe wrapper that fixes the values of selected axes of an inner recipe
|
|
11040
11054
|
* (axis slicing). The id is `FilteredPColumnId { source: inner.id,
|
|
@@ -11160,7 +11174,7 @@ function toAxisSelector(axis) {
|
|
|
11160
11174
|
return selector;
|
|
11161
11175
|
}
|
|
11162
11176
|
//#endregion
|
|
11163
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11177
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_recipes/index.js
|
|
11164
11178
|
/**
|
|
11165
11179
|
* Build a `ColumnRecipe` from a stringified id. Dispatches to the matching
|
|
11166
11180
|
* concrete recipe variant based on the id's encoding and recurses on
|
|
@@ -11211,7 +11225,7 @@ function ColumnRecipeGetStatus(id, opts = {}) {
|
|
|
11211
11225
|
}
|
|
11212
11226
|
const ColumnRecipe = Object.assign(ColumnRecipeBuild, { getStatus: ColumnRecipeGetStatus });
|
|
11213
11227
|
//#endregion
|
|
11214
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11228
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column_recipes/column_discovered_recipe.js
|
|
11215
11229
|
/**
|
|
11216
11230
|
* Recipe for columns identified by a {@link ColumnDiscoveredKey}: a base
|
|
11217
11231
|
* column + a `path` of linkers + qualifications.
|
|
@@ -11382,7 +11396,7 @@ function referencedUniIdsOf(key) {
|
|
|
11382
11396
|
return /* @__PURE__ */ new Set([key.column, ...(key.path ?? []).map((item) => item.column)]);
|
|
11383
11397
|
}
|
|
11384
11398
|
//#endregion
|
|
11385
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11399
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/column.js
|
|
11386
11400
|
/**
|
|
11387
11401
|
* Unified entry point — routes between the two top-level dispatchers:
|
|
11388
11402
|
* - string id (`PObjectId` / `ColumnUniversalId`) → {@link ColumnRecipe}
|
|
@@ -11396,7 +11410,7 @@ function Column(source, opts) {
|
|
|
11396
11410
|
return DataColumn(source, opts);
|
|
11397
11411
|
}
|
|
11398
11412
|
//#endregion
|
|
11399
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11413
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/columns_collection.js
|
|
11400
11414
|
/**
|
|
11401
11415
|
* Build a {@link ColumnsCollection} from sandbox-side source descriptors.
|
|
11402
11416
|
* Resolves the `columnsCollection` driver (either from `deps.driver` or via
|
|
@@ -11505,7 +11519,7 @@ function defaultCtxSources(ctx) {
|
|
|
11505
11519
|
return [...currentBlockSources(ctx), { kind: "result_pool" }];
|
|
11506
11520
|
}
|
|
11507
11521
|
//#endregion
|
|
11508
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11522
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/columns/utils.js
|
|
11509
11523
|
/**
|
|
11510
11524
|
* PObjectIds of every non-hit column referenced by `recipe.getQuery()`,
|
|
11511
11525
|
* deduped in traversal order. The hit column is
|
|
@@ -11636,7 +11650,7 @@ function hasSingleDataColumn(recipe) {
|
|
|
11636
11650
|
return recipe.getReferencedIds().length === 1;
|
|
11637
11651
|
}
|
|
11638
11652
|
//#endregion
|
|
11639
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11653
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/pframe_utils/columns.js
|
|
11640
11654
|
function getAllRelatedColumns(ctx, predicate) {
|
|
11641
11655
|
const columns = new PColumnCollection();
|
|
11642
11656
|
columns.addColumnProvider(ctx.resultPool);
|
|
@@ -11712,7 +11726,7 @@ function discoverIntegrableColumnIds(ctx, rootColumns) {
|
|
|
11712
11726
|
}
|
|
11713
11727
|
}
|
|
11714
11728
|
//#endregion
|
|
11715
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11729
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PFrameForGraphs.js
|
|
11716
11730
|
function isHiddenFromGraphColumn(column) {
|
|
11717
11731
|
return !!readAnnotationJson(column, Annotation.HideDataFromGraphs);
|
|
11718
11732
|
}
|
|
@@ -11741,7 +11755,7 @@ function createPFrameForGraphs(ctx, blockColumns) {
|
|
|
11741
11755
|
}));
|
|
11742
11756
|
}
|
|
11743
11757
|
//#endregion
|
|
11744
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11758
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/filters/traverse.js
|
|
11745
11759
|
/**
|
|
11746
11760
|
* Recursively traverses a FilterSpec tree bottom-up, applying visitor callbacks.
|
|
11747
11761
|
*
|
|
@@ -11780,7 +11794,7 @@ function collectFilterSpecColumns(filter) {
|
|
|
11780
11794
|
});
|
|
11781
11795
|
}
|
|
11782
11796
|
//#endregion
|
|
11783
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
11797
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/filters/converters/filterToQuery.js
|
|
11784
11798
|
/** Converts a QueryColumnId object into a SpecQueryExpression reference. */
|
|
11785
11799
|
function resolveColumnRef(col) {
|
|
11786
11800
|
return col.type === "axis" ? {
|
|
@@ -12167,7 +12181,7 @@ function isEmpty(value) {
|
|
|
12167
12181
|
return true;
|
|
12168
12182
|
}
|
|
12169
12183
|
//#endregion
|
|
12170
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12184
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/filters/distill.js
|
|
12171
12185
|
/**
|
|
12172
12186
|
* Strips non-FilterSpec metadata (whitelist approach) and removes
|
|
12173
12187
|
* unfilled leaves (type is undefined or any required field is undefined).
|
|
@@ -12272,7 +12286,7 @@ const REQUIRED_KEYS_BY_TYPE = {
|
|
|
12272
12286
|
greaterThanColumnOrEqual: ["column", "rhs"]
|
|
12273
12287
|
};
|
|
12274
12288
|
//#endregion
|
|
12275
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12289
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/state-migration.js
|
|
12276
12290
|
/** Upgrade PlDataTableStateV2 to the latest version */
|
|
12277
12291
|
function upgradePlDataTableStateV2(state) {
|
|
12278
12292
|
if (!state) return createPlDataTableStateV2();
|
|
@@ -12630,7 +12644,7 @@ function parseLegacyLeafColumn(s) {
|
|
|
12630
12644
|
return parsed;
|
|
12631
12645
|
}
|
|
12632
12646
|
//#endregion
|
|
12633
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12647
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/utils.js
|
|
12634
12648
|
/** Adapt a {@link ColumnRecipe} to the plain {@link RuleColumn} shape. */
|
|
12635
12649
|
function toRuleColumn(col) {
|
|
12636
12650
|
return {
|
|
@@ -12728,7 +12742,7 @@ function deriveAllLabels(options) {
|
|
|
12728
12742
|
})), deriveLabelsOptions).reduce((acc, label, index) => (acc[columns[index].id] = label, acc), {});
|
|
12729
12743
|
}
|
|
12730
12744
|
//#endregion
|
|
12731
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12745
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPTableDefV3.js
|
|
12732
12746
|
/**
|
|
12733
12747
|
* Assemble a ptable def directly from recipes. Each secondary recipe is its own
|
|
12734
12748
|
* outer-joined subtree: `getQuery()` encodes its linker chain, and its
|
|
@@ -12792,8 +12806,8 @@ function columnToJoinEntry(col, qualifications) {
|
|
|
12792
12806
|
};
|
|
12793
12807
|
}
|
|
12794
12808
|
//#endregion
|
|
12795
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12796
|
-
function createColumnResolver(columns
|
|
12809
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/columnResolver.js
|
|
12810
|
+
function createColumnResolver(columns) {
|
|
12797
12811
|
const axisIds = [];
|
|
12798
12812
|
for (const c of columns) for (const ax of c.getSpec().axesSpec) axisIds.push(getAxisId(ax));
|
|
12799
12813
|
const byFullId = /* @__PURE__ */ new Map();
|
|
@@ -12801,9 +12815,7 @@ function createColumnResolver(columns, deps) {
|
|
|
12801
12815
|
for (const c of columns) {
|
|
12802
12816
|
byFullId.set(c.id, c);
|
|
12803
12817
|
const pid = extractPObjectId(c.id);
|
|
12804
|
-
|
|
12805
|
-
if (existing === void 0) byPObjectId.set(pid, c);
|
|
12806
|
-
else if (existing.id !== c.id) deps?.warn?.(`Ambiguous PObjectId ${pid}: recipe ids ${existing.id} and ${c.id} both match — keeping first.`);
|
|
12818
|
+
if (!byPObjectId.has(pid)) byPObjectId.set(pid, c);
|
|
12807
12819
|
}
|
|
12808
12820
|
return (ref) => {
|
|
12809
12821
|
if (ref.type === "axis") return axisIds.some((a) => matchAxisId(ref.id, a)) ? ref : void 0;
|
|
@@ -12816,7 +12828,7 @@ function createColumnResolver(columns, deps) {
|
|
|
12816
12828
|
};
|
|
12817
12829
|
}
|
|
12818
12830
|
//#endregion
|
|
12819
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12831
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/discoverColumns.js
|
|
12820
12832
|
/**
|
|
12821
12833
|
* Discover columns from sources/anchors and split them into primary
|
|
12822
12834
|
* (direct anchor hits — zero-hop, query is a bare column) and secondary
|
|
@@ -12862,7 +12874,7 @@ function discoverLabelColumns(ctx, primary) {
|
|
|
12862
12874
|
}).getColumns();
|
|
12863
12875
|
}
|
|
12864
12876
|
//#endregion
|
|
12865
|
-
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.
|
|
12877
|
+
//#region ../node_modules/.pnpm/@platforma-sdk+model@1.83.9/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPlDataTableV3.js
|
|
12866
12878
|
function createPlDataTableV3(ctx, options) {
|
|
12867
12879
|
const state = upgradePlDataTableStateV2(options.tableState);
|
|
12868
12880
|
const primaryJoinType = options.primaryJoinType ?? "full";
|
|
@@ -12890,7 +12902,7 @@ function createPlDataTableV3(ctx, options) {
|
|
|
12890
12902
|
...primary,
|
|
12891
12903
|
...direct,
|
|
12892
12904
|
...linked.flatMap((lc) => [...collectLinkerColumns(lc), lc])
|
|
12893
|
-
]
|
|
12905
|
+
]);
|
|
12894
12906
|
const remapedDefaultFilters = remapFilterColumnIds(options.filters, resolver);
|
|
12895
12907
|
const filters = filterFilters(concatFilters(state.pTableParams.filters, state.pTableParams.defaultFilters ?? remapedDefaultFilters), resolver);
|
|
12896
12908
|
const sorting = filterSorting(resolveSorting(state.pTableParams.sorting, remapSortingColumnIds(options.sorting, resolver)), resolver);
|
|
@@ -13425,10 +13437,9 @@ const blockDataModel = new DataModelBuilder({ kind }).from("Ver_2026_08_07").ini
|
|
|
13425
13437
|
* Every configuration rule, checked here and **nowhere else**. These six are decidable from the
|
|
13426
13438
|
* arguments and snapshotted column values alone, so they are refused before the run starts.
|
|
13427
13439
|
*
|
|
13428
|
-
* The
|
|
13429
|
-
*
|
|
13430
|
-
*
|
|
13431
|
-
* with a different message.
|
|
13440
|
+
* The one data-value rule — sort fractions — belongs to the computation and is deliberately not
|
|
13441
|
+
* approximated here: a duplicated rule is one that will disagree, and it fails by drifting
|
|
13442
|
+
* looser, so the settings pass and the run fails anyway with a different message.
|
|
13432
13443
|
*/
|
|
13433
13444
|
function settingsIssues(data) {
|
|
13434
13445
|
const issues = [];
|
|
@@ -13519,6 +13530,16 @@ const platforma$1 = BlockModelV3.create({
|
|
|
13519
13530
|
const columns = ctx.resultPool.getAnchoredPColumns({ main: anchor }, [metadataSelector]);
|
|
13520
13531
|
if (!columns || columns.length === 0) return void 0;
|
|
13521
13532
|
return ctx.createPFrame(columns);
|
|
13533
|
+
}).output("sampleLabelPframe", (ctx) => {
|
|
13534
|
+
const anchor = ctx.data.abundanceRef;
|
|
13535
|
+
if (!anchor) return void 0;
|
|
13536
|
+
const columns = ctx.resultPool.getAnchoredPColumns({ main: anchor }, [sampleLabelSelector]);
|
|
13537
|
+
if (!columns || columns.length === 0) return void 0;
|
|
13538
|
+
return ctx.createPFrame(columns);
|
|
13539
|
+
}).output("sampleLabelColumnId", (ctx) => {
|
|
13540
|
+
const anchor = ctx.data.abundanceRef;
|
|
13541
|
+
if (!anchor) return void 0;
|
|
13542
|
+
return ctx.resultPool.getAnchoredPColumns({ main: anchor }, [sampleLabelSelector])?.[0]?.id;
|
|
13522
13543
|
}).outputWithStatus("resultsTable", (ctx) => {
|
|
13523
13544
|
const own = ctx.outputs?.resolve("scoresPf")?.getPColumns();
|
|
13524
13545
|
if (!own) return void 0;
|