@platforma-open/milaboratories.mixcr-clonotyping-2 2.20.0 → 2.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -21,14 +21,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
21
21
  enumerable: true
22
22
  }) : target, mod));
23
23
  //#endregion
24
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/plugin_handle.js
24
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/plugin_handle.js
25
25
  const PLUGIN_OUTPUT_PREFIX = "plugin-output#";
26
26
  /** Construct the output key for a plugin output in the block outputs map. */
27
27
  function pluginOutputKey(handle, outputKey) {
28
28
  return `${PLUGIN_OUTPUT_PREFIX}${handle}#${outputKey}`;
29
29
  }
30
30
  //#endregion
31
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/block_storage.js
31
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/block_storage.js
32
32
  /**
33
33
  * Discriminator key for BlockStorage format detection.
34
34
  * This unique hash-based key identifies data as BlockStorage vs legacy formats.
@@ -270,7 +270,7 @@ function getPluginData(rawStorage, handle) {
270
270
  return pluginEntry.__data;
271
271
  }
272
272
  //#endregion
273
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/block_migrations.js
273
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/block_migrations.js
274
274
  /** Create a DataVersioned wrapper with correct shape */
275
275
  function makeVersionedData(version, data) {
276
276
  return {
@@ -765,7 +765,7 @@ var DataModel = class DataModel {
765
765
  }
766
766
  };
767
767
  //#endregion
768
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/internal.js
768
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/internal.js
769
769
  /** Utility code helping to identify whether the code is running in actual UI environment */
770
770
  function isInUI() {
771
771
  return typeof globalThis.getPlatforma !== "undefined" || typeof globalThis.platforma !== "undefined";
@@ -835,7 +835,7 @@ function registerFutureAwait(handle, onResolve) {
835
835
  futureResolves.get(handle).push(onResolve);
836
836
  }
837
837
  //#endregion
838
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/block_storage_facade.js
838
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/block_storage_facade.js
839
839
  /**
840
840
  * All facade callback names as constants.
841
841
  * These are the source of truth - the interface is derived from these.
@@ -870,7 +870,7 @@ function registerFacadeCallbacks(callbacks) {
870
870
  for (const key of Object.values(BlockStorageFacadeCallbacks)) tryRegisterCallback(key, callbacks[key]);
871
871
  }
872
872
  //#endregion
873
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/future.js
873
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/future.js
874
874
  var FutureRef = class FutureRef {
875
875
  handle;
876
876
  postProcess;
@@ -4465,11 +4465,13 @@ objectType({
4465
4465
  content: stringType()
4466
4466
  });
4467
4467
  objectType({
4468
+ /** Included left border. */
4468
4469
  from: numberType().min(0),
4470
+ /** Excluded right border. */
4469
4471
  to: numberType().min(1)
4470
4472
  });
4471
4473
  //#endregion
4472
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/util.js
4474
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/util.js
4473
4475
  function assertNever(x) {
4474
4476
  throw new Error("Unexpected object: " + x);
4475
4477
  }
@@ -4481,7 +4483,7 @@ function uniqueBy(array, makeId) {
4481
4483
  return [...new Map(array.map((e) => [makeId(e), e])).values()];
4482
4484
  }
4483
4485
  //#endregion
4484
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/data_info.js
4486
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/data_info.js
4485
4487
  /**
4486
4488
  * Type guard function that checks if the given value is a valid DataInfo.
4487
4489
  *
@@ -4672,7 +4674,7 @@ function entriesToDataInfo(dataInfoEntries) {
4672
4674
  }
4673
4675
  }
4674
4676
  //#endregion
4675
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/errors.js
4677
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/errors.js
4676
4678
  var ServiceError = class extends Error {
4677
4679
  name = "ServiceError";
4678
4680
  };
@@ -4696,7 +4698,7 @@ function ensureError(value) {
4696
4698
  return new Error(stringifyValue(value));
4697
4699
  }
4698
4700
  //#endregion
4699
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/json.js
4701
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/json.js
4700
4702
  var import_canonicalize = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
4701
4703
  module.exports = function serialize(object) {
4702
4704
  if (typeof object === "number" && isNaN(object)) throw new Error("NaN is not allowed");
@@ -4729,7 +4731,7 @@ function parseJsonSafely(value, fallback) {
4729
4731
  }
4730
4732
  }
4731
4733
  //#endregion
4732
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/spec.js
4734
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/spec.js
4733
4735
  function readMetadata(metadata, key) {
4734
4736
  return metadata?.[key];
4735
4737
  }
@@ -5021,7 +5023,7 @@ function matchAxisId(query, target) {
5021
5023
  return query.name === target.name && matchDomain$1(query.domain, target.domain) && matchDomain$1(query.contextDomain, target.contextDomain);
5022
5024
  }
5023
5025
  //#endregion
5024
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/query/utils.js
5026
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/query/utils.js
5025
5027
  const BOOLEAN_TYPES = /* @__PURE__ */ new Set([
5026
5028
  "numericComparison",
5027
5029
  "stringEquals",
@@ -5114,7 +5116,7 @@ function mapSpecQueryColumns(query, cb) {
5114
5116
  return traverseQuerySpec(query, { column: cb });
5115
5117
  }
5116
5118
  //#endregion
5117
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/table_calculate.js
5119
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/table_calculate.js
5118
5120
  function mapPTableDef(def, cb) {
5119
5121
  return {
5120
5122
  ...def,
@@ -5157,7 +5159,7 @@ function mapJoinEntry(entry, cb) {
5157
5159
  }
5158
5160
  }
5159
5161
  //#endregion
5160
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/table_common.js
5162
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/table_common.js
5161
5163
  function getPTableColumnId(spec) {
5162
5164
  switch (spec.type) {
5163
5165
  case "axis": return {
@@ -5171,7 +5173,7 @@ function getPTableColumnId(spec) {
5171
5173
  }
5172
5174
  }
5173
5175
  //#endregion
5174
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/ids.js
5176
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/ids.js
5175
5177
  /**
5176
5178
  * Canonically serializes a {@link UniversalPColumnId} to a string.
5177
5179
  * @param id - The column identifier to serialize
@@ -5181,7 +5183,7 @@ function stringifyColumnId(id) {
5181
5183
  return (0, import_canonicalize.default)(id);
5182
5184
  }
5183
5185
  //#endregion
5184
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/anchored.js
5186
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/anchored.js
5185
5187
  function axisKey(axis) {
5186
5188
  return (0, import_canonicalize.default)(getAxisId(axis));
5187
5189
  }
@@ -5193,6 +5195,7 @@ function domainKey(key, value) {
5193
5195
  * Maintains maps of known domain values and axes that can be referenced by anchors
5194
5196
  */
5195
5197
  var AnchoredIdDeriver = class {
5198
+ anchors;
5196
5199
  axes = /* @__PURE__ */ new Map();
5197
5200
  domains = /* @__PURE__ */ new Map();
5198
5201
  contextDomains = /* @__PURE__ */ new Map();
@@ -5426,7 +5429,7 @@ function isAnchorAxisRef(value) {
5426
5429
  return typeof value === "object" && "anchor" in value;
5427
5430
  }
5428
5431
  //#endregion
5429
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/pool/spec.js
5432
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/pool/spec.js
5430
5433
  function isPColumnSpec(spec) {
5431
5434
  return spec.kind === "PColumn";
5432
5435
  }
@@ -5472,7 +5475,7 @@ function extractAllColumns(entry) {
5472
5475
  return [...columns.values()];
5473
5476
  }
5474
5477
  //#endregion
5475
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/selectors.js
5478
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/selectors.js
5476
5479
  /**
5477
5480
  * Determines if an axis ID matches an axis selector.
5478
5481
  *
@@ -5553,7 +5556,7 @@ function legacyColumnSelectorsToPredicate(predicateOrSelectors) {
5553
5556
  else return (spec) => isPColumnSpec(spec) && matchPColumn(spec, predicateOrSelectors);
5554
5557
  }
5555
5558
  //#endregion
5556
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/native_id.js
5559
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/spec/native_id.js
5557
5560
  function deriveNativeId(spec) {
5558
5561
  const result = {
5559
5562
  kind: spec.kind,
@@ -5565,19 +5568,19 @@ function deriveNativeId(spec) {
5565
5568
  return (0, import_canonicalize.default)(result);
5566
5569
  }
5567
5570
  //#endregion
5568
- //#region ../node_modules/.pnpm/@milaboratories+helpers@1.14.2/node_modules/@milaboratories/helpers/dist/utils.js
5571
+ //#region ../node_modules/.pnpm/@milaboratories+helpers@1.14.3/node_modules/@milaboratories/helpers/dist/utils.js
5569
5572
  function isNil$1(v) {
5570
5573
  return v === null || v === void 0;
5571
5574
  }
5572
5575
  Array.isArray;
5573
5576
  //#endregion
5574
- //#region ../node_modules/.pnpm/@milaboratories+helpers@1.14.2/node_modules/@milaboratories/helpers/dist/error.js
5577
+ //#region ../node_modules/.pnpm/@milaboratories+helpers@1.14.3/node_modules/@milaboratories/helpers/dist/error.js
5575
5578
  function throwError(v) {
5576
5579
  if (typeof v === "string") throw new Error(v);
5577
5580
  else throw v;
5578
5581
  }
5579
5582
  //#endregion
5580
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/linker_columns.js
5583
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/drivers/pframe/linker_columns.js
5581
5584
  var LinkerMap = class LinkerMap {
5582
5585
  /** Graph of linkers connected by axes (single or grouped by parents) */
5583
5586
  data;
@@ -5755,7 +5758,7 @@ var LinkerMap = class LinkerMap {
5755
5758
  }
5756
5759
  };
5757
5760
  //#endregion
5758
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/flags/block_flags.js
5761
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/flags/block_flags.js
5759
5762
  /**
5760
5763
  * Required PFrames version. Bump this in lockstep with the `@milaboratories/pframes-rs-*`
5761
5764
  * version in `pnpm-workspace.yaml` so blocks built against the new SDK refuse to load on
@@ -5764,7 +5767,7 @@ var LinkerMap = class LinkerMap {
5764
5767
  const REQUIRES_PFRAMES_VERSION = 1001031;
5765
5768
  stringType().length(24).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
5766
5769
  //#endregion
5767
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/ref.js
5770
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/ref.js
5768
5771
  const PlRef = objectType({
5769
5772
  __isRef: literalType(true).describe("Crucial marker for the block dependency tree reconstruction"),
5770
5773
  blockId: stringType().describe("Upstream block id"),
@@ -5800,7 +5803,7 @@ function withEnrichments(ref, requireEnrichments = true) {
5800
5803
  }
5801
5804
  }
5802
5805
  //#endregion
5803
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/value_or_error.js
5806
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/value_or_error.js
5804
5807
  function mapValueInVOE(voe, cb) {
5805
5808
  return voe.ok ? {
5806
5809
  ok: true,
@@ -5808,7 +5811,7 @@ function mapValueInVOE(voe, cb) {
5808
5811
  } : voe;
5809
5812
  }
5810
5813
  //#endregion
5811
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/services/service_types.js
5814
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/services/service_types.js
5812
5815
  const SERVICE_ID_PATTERN = /^[a-zA-Z][a-zA-Z0-9]*$/;
5813
5816
  const { service, isNodeService, isWasmService, isMainService, getServiceKind, getServiceModelMethods, getServiceUiMethods } = (() => {
5814
5817
  const typeMap = /* @__PURE__ */ new Map();
@@ -5847,7 +5850,7 @@ const { service, isNodeService, isWasmService, isMainService, getServiceKind, ge
5847
5850
  };
5848
5851
  })();
5849
5852
  //#endregion
5850
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/services/service_declarations.js
5853
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/services/service_declarations.js
5851
5854
  const Services = {
5852
5855
  PFrameSpec: service()({
5853
5856
  type: "wasm",
@@ -5919,7 +5922,7 @@ function resolveRequiredServices(flags) {
5919
5922
  }
5920
5923
  Object.fromEntries(Object.keys(Services).map((key) => [`requires${key}`, true]));
5921
5924
  //#endregion
5922
- //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.2/node_modules/@milaboratories/pl-model-common/dist/services/service_injectors.js
5925
+ //#region ../node_modules/.pnpm/@milaboratories+pl-model-common@1.46.4/node_modules/@milaboratories/pl-model-common/dist/services/service_injectors.js
5923
5926
  function buildMethodMap(pick) {
5924
5927
  const result = {};
5925
5928
  for (const id of Object.values(Services)) result[id] = [...pick(id)];
@@ -5928,7 +5931,7 @@ function buildMethodMap(pick) {
5928
5931
  buildMethodMap(getServiceUiMethods);
5929
5932
  buildMethodMap(getServiceModelMethods);
5930
5933
  //#endregion
5931
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/accessor.js
5934
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/accessor.js
5932
5935
  function ifDef(value, cb) {
5933
5936
  return value === void 0 ? void 0 : cb(value);
5934
5937
  }
@@ -6179,11 +6182,11 @@ var TreeNodeAccessor = class TreeNodeAccessor {
6179
6182
  }
6180
6183
  };
6181
6184
  //#endregion
6182
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/internal.js
6185
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/internal.js
6183
6186
  const StagingAccessorName = "staging";
6184
6187
  const MainAccessorName = "main";
6185
6188
  //#endregion
6186
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/util/axis_filtering.js
6189
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/util/axis_filtering.js
6187
6190
  function filterDataInfoEntries(dataInfoEntries, axisFilters) {
6188
6191
  const sortedFilters = [...axisFilters].sort((a, b) => b[0] - a[0]);
6189
6192
  const { type } = dataInfoEntries;
@@ -6262,7 +6265,7 @@ function isNil(x) {
6262
6265
  return x == null;
6263
6266
  }
6264
6267
  //#endregion
6265
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/labels/derive_distinct_labels.js
6268
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/labels/derive_distinct_labels.js
6266
6269
  const DISTANCE_PENALTY = .001;
6267
6270
  const LABEL_TYPE = "__LABEL__";
6268
6271
  const LABEL_TYPE_FULL = "__LABEL__@1";
@@ -6528,7 +6531,7 @@ function minimizeTypeSet(typeSet, records, stats, forceTraceElements, forcedSet,
6528
6531
  return result;
6529
6532
  }
6530
6533
  //#endregion
6531
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/util/label.js
6534
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/util/label.js
6532
6535
  /** @deprecated Use deriveDistinctLabels */
6533
6536
  function deriveLabels(values, getSpec, options = {}) {
6534
6537
  return deriveDistinctLabels(values.map(getSpec), options).map((label, i) => ({
@@ -6537,7 +6540,7 @@ function deriveLabels(values, getSpec, options = {}) {
6537
6540
  }));
6538
6541
  }
6539
6542
  //#endregion
6540
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/util/pcolumn_data.js
6543
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/util/pcolumn_data.js
6541
6544
  const RT_RESOURCE_MAP = "PColumnData/ResourceMap";
6542
6545
  const RT_RESOURCE_MAP_PARTITIONED = "PColumnData/Partitioned/ResourceMap";
6543
6546
  const RT_JSON_PARTITIONED = "PColumnData/JsonPartitioned";
@@ -6880,7 +6883,7 @@ function allPColumnsReady(columns) {
6880
6883
  return columns.every(isPColumnReady);
6881
6884
  }
6882
6885
  //#endregion
6883
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/util/column_collection.js
6886
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/util/column_collection.js
6884
6887
  function isPColumnValues(value) {
6885
6888
  if (!Array.isArray(value)) return false;
6886
6889
  if (value.length === 0) return true;
@@ -7156,7 +7159,7 @@ var PColumnCollection = class {
7156
7159
  }
7157
7160
  };
7158
7161
  //#endregion
7159
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/services/block_services.js
7162
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/services/block_services.js
7160
7163
  /**
7161
7164
  * Services required by all V3 blocks by default.
7162
7165
  * Edit this when a new service should be available to all blocks.
@@ -7171,7 +7174,7 @@ const BLOCK_SERVICE_FLAGS = {
7171
7174
  };
7172
7175
  resolveRequiredServices(BLOCK_SERVICE_FLAGS);
7173
7176
  //#endregion
7174
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/services/service_bridge.js
7177
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/services/service_bridge.js
7175
7178
  /**
7176
7179
  * Builds a ServiceProxy from a ServiceDispatch.
7177
7180
  * Each service method call is forwarded to dispatch.callServiceMethod.
@@ -7180,7 +7183,7 @@ function createServiceProxy(dispatch) {
7180
7183
  return ((serviceId) => Object.freeze(Object.fromEntries(dispatch.getServiceMethods(serviceId).map((method) => [method, (...args) => dispatch.callServiceMethod(serviceId, method, ...args)]))));
7181
7184
  }
7182
7185
  //#endregion
7183
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/services/get_services.js
7186
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/services/get_services.js
7184
7187
  const cachedServices = /* @__PURE__ */ new WeakMap();
7185
7188
  function getService(name) {
7186
7189
  const ctx = getCfgRenderCtx();
@@ -7194,7 +7197,7 @@ function getService(name) {
7194
7197
  })();
7195
7198
  }
7196
7199
  //#endregion
7197
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/util/pframe_upgraders.js
7200
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/util/pframe_upgraders.js
7198
7201
  function patchInSetFilters(filters) {
7199
7202
  const inSetToOrEqual = (predicate) => {
7200
7203
  if (predicate.operator !== "InSet") return predicate;
@@ -7232,7 +7235,7 @@ function patchInSetFilters(filters) {
7232
7235
  return filters.map((filter) => mapFilter(filter, inSetToOrEqual));
7233
7236
  }
7234
7237
  //#endregion
7235
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/render/api.js
7238
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/render/api.js
7236
7239
  /**
7237
7240
  * Helper function to match domain objects
7238
7241
  * @param query Optional domain to match against
@@ -7686,27 +7689,27 @@ var PluginRenderCtx = class extends RenderCtxBase {
7686
7689
  }
7687
7690
  };
7688
7691
  //#endregion
7689
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/version.js
7690
- const PlatformaSDKVersion = "1.79.20";
7692
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/version.js
7693
+ const PlatformaSDKVersion = "1.79.27";
7691
7694
  //#endregion
7692
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/bconfig/types.js
7695
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/bconfig/types.js
7693
7696
  function isConfigLambda(cfgOrFh) {
7694
7697
  return cfgOrFh.__renderLambda === true;
7695
7698
  }
7696
7699
  //#endregion
7697
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/bconfig/normalization.js
7700
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/bconfig/normalization.js
7698
7701
  function downgradeCfgOrLambda(data) {
7699
7702
  if (data === void 0) return void 0;
7700
7703
  if (isConfigLambda(data)) return data.handle;
7701
7704
  return data;
7702
7705
  }
7703
7706
  //#endregion
7704
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/plugin_model.js
7707
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/plugin_model.js
7705
7708
  /** Internal plugin↔block handshake. `Symbol.for` (not `Symbol`) so it stays
7706
7709
  * identical across multiple `@platforma-sdk/model` copies in one process. */
7707
7710
  const CREATE_PLUGIN_MODEL = Symbol.for("@platforma-sdk/model:createPluginModel");
7708
7711
  //#endregion
7709
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/block_storage_callbacks.js
7712
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/block_storage_callbacks.js
7710
7713
  /**
7711
7714
  * BlockStorage Callback Implementations - wired to facade callbacks in BlockModelV3.done().
7712
7715
  *
@@ -7883,7 +7886,7 @@ function derivePrerunArgsFromStorage(storageJson, argsFunction, prerunArgsFuncti
7883
7886
  }
7884
7887
  }
7885
7888
  //#endregion
7886
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/block_model.js
7889
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/block_model.js
7887
7890
  /**
7888
7891
  * Merges two feature flag objects with type-aware logic:
7889
7892
  * - `supports*` (boolean): OR — `true` if either side is `true`
@@ -8195,7 +8198,7 @@ var BlockModelV3 = class BlockModelV3 {
8195
8198
  }
8196
8199
  };
8197
8200
  //#endregion
8198
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/filters/traverse.js
8201
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/filters/traverse.js
8199
8202
  /**
8200
8203
  * Recursively traverses a FilterSpec tree bottom-up, applying visitor callbacks.
8201
8204
  *
@@ -8234,7 +8237,7 @@ function collectFilterSpecColumns(filter) {
8234
8237
  });
8235
8238
  }
8236
8239
  //#endregion
8237
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/filters/converters/filterToQuery.js
8240
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/filters/converters/filterToQuery.js
8238
8241
  /** Parses a CanonicalizedJson<PTableColumnId> string into a SpecQueryExpression reference. */
8239
8242
  function resolveColumnRef(columnStr) {
8240
8243
  const parsed = JSON.parse(columnStr);
@@ -8563,7 +8566,7 @@ function isEmpty(value) {
8563
8566
  return true;
8564
8567
  }
8565
8568
  //#endregion
8566
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/filters/distill.js
8569
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/filters/distill.js
8567
8570
  /**
8568
8571
  * Strips non-FilterSpec metadata (whitelist approach) and removes
8569
8572
  * unfilled leaves (type is undefined or any required field is undefined).
@@ -8668,7 +8671,7 @@ const REQUIRED_KEYS_BY_TYPE = {
8668
8671
  greaterThanColumnOrEqual: ["column", "rhs"]
8669
8672
  };
8670
8673
  //#endregion
8671
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/state-migration.js
8674
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/state-migration.js
8672
8675
  /** Upgrade PlDataTableStateV2 to the latest version */
8673
8676
  function upgradePlDataTableStateV2(state) {
8674
8677
  if (!state) return createPlDataTableStateV2();
@@ -8929,13 +8932,13 @@ function createPlDataTableStateV2() {
8929
8932
  };
8930
8933
  }
8931
8934
  //#endregion
8932
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/utils.js
8935
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/utils.js
8933
8936
  /** Check if column is hidden by default */
8934
8937
  function isColumnOptional(spec) {
8935
8938
  return readAnnotation(spec, Annotation.Table.Visibility) === "optional";
8936
8939
  }
8937
8940
  //#endregion
8938
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/labels.js
8941
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/labels.js
8939
8942
  /** Get label columns matching the provided columns from the result pool */
8940
8943
  function getMatchingLabelColumns(columns, allLabelColumns) {
8941
8944
  const inputLabelColumns = [];
@@ -8989,7 +8992,7 @@ function getMatchingLabelColumns(columns, allLabelColumns) {
8989
8992
  return labelColumns;
8990
8993
  }
8991
8994
  //#endregion
8992
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPTableDefV3.js
8995
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPTableDefV3.js
8993
8996
  function createPTableDefV3(params) {
8994
8997
  let query = {
8995
8998
  type: params.primaryJoinType === "inner" ? "innerJoin" : "fullJoin",
@@ -9060,7 +9063,7 @@ function toJoinEntry(e) {
9060
9063
  };
9061
9064
  }
9062
9065
  //#endregion
9063
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPTableDefV2.js
9066
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPTableDefV2.js
9064
9067
  function createPTableDefV2(params) {
9065
9068
  let coreColumns = params.columns;
9066
9069
  const secondaryColumns = [];
@@ -9079,7 +9082,7 @@ function createPTableDefV2(params) {
9079
9082
  });
9080
9083
  }
9081
9084
  //#endregion
9082
- //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.20/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPlDataTableV2.js
9085
+ //#region ../node_modules/.pnpm/@platforma-sdk+model@1.79.27/node_modules/@platforma-sdk/model/dist/components/PlDataTable/createPlDataTable/createPlDataTableV2.js
9083
9086
  /**
9084
9087
  * Create p-table spec and handle given ui table state
9085
9088
  *
@@ -9278,6 +9281,7 @@ const BlockArgsValidBase = objectType({
9278
9281
  presetCommonName: stringType().optional(),
9279
9282
  isGenericPreset: booleanType().optional(),
9280
9283
  chains: arrayType(stringType()).optional(),
9284
+ scHeavyOnly: booleanType().optional(),
9281
9285
  exportMinQuality: booleanType().optional(),
9282
9286
  stopCodonTypes: arrayType(StopCodonType).optional(),
9283
9287
  stopCodonReplacements: StopCodonReplacements
@@ -9484,6 +9488,7 @@ const platforma$1 = BlockModelV3.create(dataModel).prerunArgs((data) => ({
9484
9488
  if (!data.input) throw new Error("Input dataset is required");
9485
9489
  if (!data.preset) throw new Error("Preset is required");
9486
9490
  if (!data.chains || data.chains.length === 0) throw new Error("Chains selection is required");
9491
+ if (data.scHeavyOnly && !(data.chains.length === 1 && data.chains[0] === "IG")) throw new Error("Heavy-chain only (VHH) mode requires selecting only the IG receptor");
9487
9492
  if (data.runMode === "dry" && data.limitInput == null) throw new Error("Read limit is required for Preview mode");
9488
9493
  if (!BlockArgsValid.safeParse(data).success) return void 0;
9489
9494
  return {
@@ -9492,6 +9497,7 @@ const platforma$1 = BlockModelV3.create(dataModel).prerunArgs((data) => ({
9492
9497
  input: data.input,
9493
9498
  preset: data.preset,
9494
9499
  chains: data.chains,
9500
+ scHeavyOnly: data.scHeavyOnly,
9495
9501
  inputLibrary: data.inputLibrary,
9496
9502
  libraryFile: data.libraryFile,
9497
9503
  isLibraryFileGzipped: data.isLibraryFileGzipped,