@platforma-open/milaboratories.redefine-clonotypes.model 1.0.2 → 1.0.3

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.
@@ -1,6 +1,6 @@
1
1
   WARN  Issue while reading "/home/runner/work/redefine-clonotypes/redefine-clonotypes/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
2
2
 
3
- > @platforma-open/milaboratories.redefine-clonotypes.model@1.0.2 build /home/runner/work/redefine-clonotypes/redefine-clonotypes/model
3
+ > @platforma-open/milaboratories.redefine-clonotypes.model@1.0.3 build /home/runner/work/redefine-clonotypes/redefine-clonotypes/model
4
4
  > vite build && BUILD_UMD=true vite build && block-tools build-model
5
5
 
6
6
  vite v6.3.5 building SSR bundle for production...
@@ -9,23 +9,23 @@ transforming...
9
9
  rendering chunks...
10
10
 
11
11
  [vite:dts] Start generate declaration files...
12
- dist/index.js 2.47 kB │ map: 4.80 kB
12
+ dist/index.js 2.19 kB │ map: 4.23 kB
13
13
  [vite:dts] Start rollup declaration files...
14
14
  Analysis will use the bundled TypeScript version 5.8.2
15
- [vite:dts] Declaration files built in 3407ms.
15
+ [vite:dts] Declaration files built in 3591ms.
16
16
 
17
- dist/index.cjs 2.57 kB │ map: 4.82 kB
18
- ✓ built in 3.48s
17
+ dist/index.cjs 2.28 kB │ map: 4.25 kB
18
+ ✓ built in 3.66s
19
19
  vite v6.3.5 building for production...
20
20
  transforming...
21
- ✓ 69 modules transformed.
21
+ ✓ 77 modules transformed.
22
22
  rendering chunks...
23
23
 
24
24
  [vite:dts] Start generate declaration files...
25
25
  computing gzip size...
26
26
  [vite:dts] Start rollup declaration files...
27
27
  Analysis will use the bundled TypeScript version 5.8.2
28
- dist/bundle.js 219.75 kB │ gzip: 39.07 kB │ map: 445.21 kB
29
- [vite:dts] Declaration files built in 3240ms.
28
+ dist/bundle.js 225.02 kB │ gzip: 39.75 kB │ map: 454.84 kB
29
+ [vite:dts] Declaration files built in 3345ms.
30
30
 
31
- ✓ built in 3.91s
31
+ ✓ built in 4.00s
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @platforma-open/milaboratories.redefine-clonotypes.model
2
2
 
3
+ ## 1.0.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 7359f01: Fix definition options
8
+
3
9
  ## 1.0.2
4
10
 
5
11
  ### Patch Changes
package/dist/bundle.js CHANGED
@@ -3964,11 +3964,15 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
3964
3964
  quotelessJson,
3965
3965
  ZodError
3966
3966
  });
3967
+ z.object({
3968
+ type: z.literal("plain"),
3969
+ content: z.string()
3970
+ });
3967
3971
  z.object({
3968
3972
  /** Included left border. */
3969
- from: z.number(),
3973
+ from: z.number().min(0),
3970
3974
  /** Excluded right border. */
3971
- to: z.number()
3975
+ to: z.number().min(1)
3972
3976
  });
3973
3977
  function assertNever(x) {
3974
3978
  throw new Error("Unexpected object: " + x);
@@ -4034,6 +4038,27 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4034
4038
  }
4035
4039
  }
4036
4040
  }
4041
+ function visitDataInfo(dataInfo, cb) {
4042
+ switch (dataInfo.type) {
4043
+ case "Json":
4044
+ break;
4045
+ case "JsonPartitioned": {
4046
+ Object.values(dataInfo.parts).forEach(cb);
4047
+ break;
4048
+ }
4049
+ case "BinaryPartitioned": {
4050
+ Object.values(dataInfo.parts).forEach((chunk) => {
4051
+ cb(chunk.index);
4052
+ cb(chunk.values);
4053
+ });
4054
+ break;
4055
+ }
4056
+ case "ParquetPartitioned": {
4057
+ Object.values(dataInfo.parts).forEach(cb);
4058
+ break;
4059
+ }
4060
+ }
4061
+ }
4037
4062
  function isDataInfoEntries(value) {
4038
4063
  if (!value || typeof value !== "object") {
4039
4064
  return false;
@@ -4191,13 +4216,27 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4191
4216
  const Annotation = {
4192
4217
  DiscreteValues: "pl7.app/discreteValues",
4193
4218
  Graph: {
4194
- IsVirtual: "pl7.app/graph/isVirtual"
4219
+ Axis: {
4220
+ HighCardinality: "pl7.app/graph/axis/highCardinality",
4221
+ LowerLimit: "pl7.app/graph/axis/lowerLimit",
4222
+ SymmetricRange: "pl7.app/graph/axis/symmetricRange",
4223
+ UpperLimit: "pl7.app/graph/axis/upperLimit"
4224
+ },
4225
+ IsDenseAxis: "pl7.app/graph/isDenseAxis",
4226
+ IsVirtual: "pl7.app/graph/isVirtual",
4227
+ Palette: "pl7.app/graph/palette",
4228
+ Thresholds: "pl7.app/graph/thresholds",
4229
+ TreatAbsentValuesAs: "pl7.app/graph/treatAbsentValuesAs"
4195
4230
  },
4196
4231
  HideDataFromUi: "pl7.app/hideDataFromUi",
4232
+ HideDataFromGraphs: "pl7.app/hideDataFromGraphs",
4233
+ IsDiscreteFilter: "pl7.app/isDiscreteFilter",
4197
4234
  IsLinkerColumn: "pl7.app/isLinkerColumn",
4235
+ IsSubset: "pl7.app/isSubset",
4198
4236
  Label: "pl7.app/label",
4199
4237
  Max: "pl7.app/max",
4200
4238
  Min: "pl7.app/min",
4239
+ MultipliesBy: "pl7.app/multipliesBy",
4201
4240
  Parents: "pl7.app/parents",
4202
4241
  Sequence: {
4203
4242
  Annotation: {
@@ -4210,13 +4249,29 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4210
4249
  },
4211
4250
  Trace: "pl7.app/trace"
4212
4251
  };
4252
+ const ValueTypeSchema = z.enum(["Int", "Long", "Float", "Double", "String"]);
4213
4253
  ({
4214
4254
  [Annotation.DiscreteValues]: z.array(z.string()).or(z.array(z.number())),
4255
+ [Annotation.Graph.Axis.HighCardinality]: z.boolean(),
4256
+ [Annotation.Graph.Axis.LowerLimit]: z.number(),
4257
+ [Annotation.Graph.Axis.UpperLimit]: z.number(),
4258
+ [Annotation.Graph.Axis.SymmetricRange]: z.boolean(),
4259
+ [Annotation.Graph.IsDenseAxis]: z.boolean(),
4260
+ [Annotation.Graph.Palette]: z.object({ mapping: z.record(z.number()), name: z.string() }),
4261
+ [Annotation.Graph.Thresholds]: z.array(z.object({
4262
+ columnId: z.object({ valueType: ValueTypeSchema, name: z.string() }),
4263
+ value: z.number()
4264
+ })),
4265
+ [Annotation.Graph.TreatAbsentValuesAs]: z.number(),
4215
4266
  [Annotation.Graph.IsVirtual]: z.boolean(),
4216
4267
  [Annotation.HideDataFromUi]: z.boolean(),
4268
+ [Annotation.HideDataFromGraphs]: z.boolean(),
4269
+ [Annotation.IsDiscreteFilter]: z.boolean(),
4217
4270
  [Annotation.IsLinkerColumn]: z.boolean(),
4271
+ [Annotation.IsSubset]: z.boolean(),
4218
4272
  [Annotation.Max]: z.number(),
4219
4273
  [Annotation.Min]: z.number(),
4274
+ [Annotation.MultipliesBy]: z.array(z.string()),
4220
4275
  [Annotation.Parents]: z.array(z.string()),
4221
4276
  [Annotation.Sequence.Annotation.Mapping]: z.record(z.string(), z.string()),
4222
4277
  [Annotation.Sequence.IsAnnotation]: z.boolean(),
@@ -4274,6 +4329,13 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4274
4329
  newId: entry.newId,
4275
4330
  axisFilters: entry.axisFilters
4276
4331
  };
4332
+ case "artificialColumn":
4333
+ return {
4334
+ type: "artificialColumn",
4335
+ column: cb(entry.column),
4336
+ newId: entry.newId,
4337
+ axesIndices: entry.axesIndices
4338
+ };
4277
4339
  case "inlineColumn":
4278
4340
  return entry;
4279
4341
  case "inner":
@@ -4510,6 +4572,9 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4510
4572
  case "slicedColumn":
4511
4573
  columns.set(entry2.column.id, entry2.column);
4512
4574
  return;
4575
+ case "artificialColumn":
4576
+ columns.set(entry2.column.id, entry2.column);
4577
+ return;
4513
4578
  case "inlineColumn":
4514
4579
  return;
4515
4580
  case "full":
@@ -4883,6 +4948,80 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4883
4948
  }
4884
4949
  const StagingAccessorName = "staging";
4885
4950
  const MainAccessorName = "main";
4951
+ function filterDataInfoEntries(dataInfoEntries, axisFilters) {
4952
+ const sortedFilters = [...axisFilters].sort((a, b) => b[0] - a[0]);
4953
+ const { type } = dataInfoEntries;
4954
+ switch (type) {
4955
+ case "Json": {
4956
+ const { keyLength } = dataInfoEntries;
4957
+ for (const [axisIdx] of axisFilters)
4958
+ if (axisIdx >= keyLength)
4959
+ throw new Error(`Can't filter on non-data axis ${axisIdx}. Must be >= ${keyLength}`);
4960
+ break;
4961
+ }
4962
+ case "JsonPartitioned":
4963
+ case "BinaryPartitioned":
4964
+ case "ParquetPartitioned": {
4965
+ const { partitionKeyLength } = dataInfoEntries;
4966
+ for (const [axisIdx] of axisFilters)
4967
+ if (axisIdx >= partitionKeyLength)
4968
+ throw new Error(`Can't filter on non-partitioned axis ${axisIdx}. Must be >= ${partitionKeyLength}`);
4969
+ break;
4970
+ }
4971
+ default:
4972
+ throw new Error(`Unsupported data info type: ${type}`);
4973
+ }
4974
+ const keyMatchesFilters = (key) => {
4975
+ for (const [axisIdx, axisValue] of sortedFilters)
4976
+ if (key[axisIdx] !== axisValue)
4977
+ return false;
4978
+ return true;
4979
+ };
4980
+ const removeFilteredAxes = (key) => {
4981
+ const newKey = [...key];
4982
+ for (const [axisIdx] of sortedFilters)
4983
+ newKey.splice(axisIdx, 1);
4984
+ return newKey;
4985
+ };
4986
+ switch (dataInfoEntries.type) {
4987
+ case "Json":
4988
+ return {
4989
+ type: "Json",
4990
+ keyLength: dataInfoEntries.keyLength - axisFilters.length,
4991
+ data: dataInfoEntries.data.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
4992
+ key: removeFilteredAxes(entry.key),
4993
+ value: entry.value
4994
+ }))
4995
+ };
4996
+ case "JsonPartitioned":
4997
+ return {
4998
+ type: "JsonPartitioned",
4999
+ partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5000
+ parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5001
+ key: removeFilteredAxes(entry.key),
5002
+ value: entry.value
5003
+ }))
5004
+ };
5005
+ case "BinaryPartitioned":
5006
+ return {
5007
+ type: "BinaryPartitioned",
5008
+ partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5009
+ parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5010
+ key: removeFilteredAxes(entry.key),
5011
+ value: entry.value
5012
+ }))
5013
+ };
5014
+ case "ParquetPartitioned":
5015
+ return {
5016
+ type: "ParquetPartitioned",
5017
+ partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5018
+ parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5019
+ key: removeFilteredAxes(entry.key),
5020
+ value: entry.value
5021
+ }))
5022
+ };
5023
+ }
5024
+ }
4886
5025
  const TraceEntry = z.object({
4887
5026
  type: z.string(),
4888
5027
  importance: z.number().optional(),
@@ -5008,9 +5147,11 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5008
5147
  const RT_RESOURCE_MAP_PARTITIONED = PCD_PREFIX + "Partitioned/ResourceMap";
5009
5148
  const RT_JSON_PARTITIONED = PCD_PREFIX + "JsonPartitioned";
5010
5149
  const RT_BINARY_PARTITIONED = PCD_PREFIX + "BinaryPartitioned";
5150
+ const RT_PARQUET_PARTITIONED = PCD_PREFIX + "ParquetPartitioned";
5011
5151
  const PCD_SUP_PREFIX = PCD_PREFIX + "Partitioned/";
5012
5152
  const RT_JSON_SUPER_PARTITIONED = PCD_SUP_PREFIX + "JsonPartitioned";
5013
5153
  const RT_BINARY_SUPER_PARTITIONED = PCD_SUP_PREFIX + "BinaryPartitioned";
5154
+ const RT_PARQUET_SUPER_PARTITIONED = PCD_SUP_PREFIX + "ParquetPartitioned";
5014
5155
  const removeIndexSuffix = (keyStr) => {
5015
5156
  if (keyStr.endsWith(".index")) {
5016
5157
  return { baseKey: keyStr.substring(0, keyStr.length - 6), type: "index" };
@@ -5036,10 +5177,12 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5036
5177
  break;
5037
5178
  case RT_JSON_PARTITIONED:
5038
5179
  case RT_BINARY_PARTITIONED:
5180
+ case RT_PARQUET_PARTITIONED:
5039
5181
  keyLength = meta["partitionKeyLength"];
5040
5182
  break;
5041
5183
  case RT_BINARY_SUPER_PARTITIONED:
5042
5184
  case RT_JSON_SUPER_PARTITIONED:
5185
+ case RT_PARQUET_SUPER_PARTITIONED:
5043
5186
  keyLength = meta["superPartitionKeyLength"] + meta["partitionKeyLength"];
5044
5187
  break;
5045
5188
  }
@@ -5047,6 +5190,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5047
5190
  case RT_RESOURCE_MAP:
5048
5191
  case RT_JSON_PARTITIONED:
5049
5192
  case RT_BINARY_PARTITIONED:
5193
+ case RT_PARQUET_PARTITIONED:
5050
5194
  for (let keyStr of acc.listInputFields()) {
5051
5195
  if (rt === RT_BINARY_PARTITIONED) {
5052
5196
  keyStr = removeIndexSuffix(keyStr).baseKey;
@@ -5058,6 +5202,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5058
5202
  case RT_RESOURCE_MAP_PARTITIONED:
5059
5203
  case RT_BINARY_SUPER_PARTITIONED:
5060
5204
  case RT_JSON_SUPER_PARTITIONED:
5205
+ case RT_PARQUET_SUPER_PARTITIONED:
5061
5206
  for (const supKeyStr of acc.listInputFields()) {
5062
5207
  const keyPrefix = [...JSON.parse(supKeyStr)];
5063
5208
  const value = acc.resolve({ field: supKeyStr, assertFieldType: "Input" });
@@ -5076,7 +5221,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5076
5221
  return { data, keyLength };
5077
5222
  }
5078
5223
  function getUniquePartitionKeysForDataEntries(list) {
5079
- if (list.type !== "JsonPartitioned" && list.type !== "BinaryPartitioned")
5224
+ if (list.type !== "JsonPartitioned" && list.type !== "BinaryPartitioned" && list.type !== "ParquetPartitioned")
5080
5225
  throw new Error(`Splitting requires Partitioned DataInfoEntries, got ${list.type}`);
5081
5226
  const { parts, partitionKeyLength } = list;
5082
5227
  const result = [];
@@ -5124,7 +5269,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5124
5269
  return void 0;
5125
5270
  const resourceType = acc.resourceType.name;
5126
5271
  const meta = acc.getDataAsJson();
5127
- if (keyPrefix.length > 0 && (resourceType === RT_JSON_SUPER_PARTITIONED || resourceType === RT_BINARY_SUPER_PARTITIONED)) {
5272
+ if (keyPrefix.length > 0 && (resourceType === RT_JSON_SUPER_PARTITIONED || resourceType === RT_BINARY_SUPER_PARTITIONED || resourceType === RT_PARQUET_SUPER_PARTITIONED)) {
5128
5273
  throw new Error(`Unexpected nested super-partitioned resource: ${resourceType}`);
5129
5274
  }
5130
5275
  switch (resourceType) {
@@ -5189,6 +5334,24 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5189
5334
  parts
5190
5335
  };
5191
5336
  }
5337
+ case RT_PARQUET_PARTITIONED: {
5338
+ if (typeof (meta == null ? void 0 : meta.partitionKeyLength) !== "number") {
5339
+ throw new Error(`Missing partitionKeyLength in metadata for ${resourceType}`);
5340
+ }
5341
+ const parts = [];
5342
+ for (const keyStr of acc.listInputFields()) {
5343
+ const value = acc.resolve({ field: keyStr, assertFieldType: "Input" });
5344
+ if (value === void 0)
5345
+ return void 0;
5346
+ const key = [...keyPrefix, ...JSON.parse(keyStr)];
5347
+ parts.push({ key, value });
5348
+ }
5349
+ return {
5350
+ type: "ParquetPartitioned",
5351
+ partitionKeyLength: meta.partitionKeyLength,
5352
+ parts
5353
+ };
5354
+ }
5192
5355
  case RT_JSON_SUPER_PARTITIONED: {
5193
5356
  if (typeof (meta == null ? void 0 : meta.superPartitionKeyLength) !== "number" || typeof (meta == null ? void 0 : meta.partitionKeyLength) !== "number") {
5194
5357
  throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${resourceType}`);
@@ -5241,6 +5404,32 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5241
5404
  parts
5242
5405
  };
5243
5406
  }
5407
+ case RT_PARQUET_SUPER_PARTITIONED: {
5408
+ if (typeof (meta == null ? void 0 : meta.superPartitionKeyLength) !== "number" || typeof (meta == null ? void 0 : meta.partitionKeyLength) !== "number") {
5409
+ throw new Error(`Missing superPartitionKeyLength or partitionKeyLength in metadata for ${resourceType}`);
5410
+ }
5411
+ const totalKeyLength = meta.superPartitionKeyLength + meta.partitionKeyLength;
5412
+ const parts = [];
5413
+ for (const supKeyStr of acc.listInputFields()) {
5414
+ const superPartition = acc.resolve({ field: supKeyStr, assertFieldType: "Input" });
5415
+ if (superPartition === void 0)
5416
+ return void 0;
5417
+ if (superPartition.resourceType.name !== RT_PARQUET_PARTITIONED) {
5418
+ throw new Error(`Expected ${RT_PARQUET_PARTITIONED} inside ${resourceType}, but got ${superPartition.resourceType.name}`);
5419
+ }
5420
+ const innerResult = parsePColumnData(superPartition, JSON.parse(supKeyStr));
5421
+ if (innerResult === void 0)
5422
+ return void 0;
5423
+ if (innerResult.type !== "ParquetPartitioned")
5424
+ throw new Error(`Unexpected inner result type for ${resourceType}: ${innerResult.type}`);
5425
+ parts.push(...innerResult.parts);
5426
+ }
5427
+ return {
5428
+ type: "ParquetPartitioned",
5429
+ partitionKeyLength: totalKeyLength,
5430
+ parts
5431
+ };
5432
+ }
5244
5433
  default:
5245
5434
  throw new Error(`Unknown resource type: ${resourceType}`);
5246
5435
  }
@@ -5256,79 +5445,21 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5256
5445
  return parsePColumnData(acc);
5257
5446
  throw new Error(`Unexpected input type: ${typeof acc}`);
5258
5447
  }
5259
- function filterDataInfoEntries(dataInfoEntries, axisFilters) {
5260
- const sortedFilters = [...axisFilters].sort((a, b) => b[0] - a[0]);
5261
- const { type } = dataInfoEntries;
5262
- switch (type) {
5263
- case "Json": {
5264
- const { keyLength } = dataInfoEntries;
5265
- for (const [axisIdx] of axisFilters)
5266
- if (axisIdx >= keyLength)
5267
- throw new Error(`Can't filter on non-data axis ${axisIdx}. Must be >= ${keyLength}`);
5268
- break;
5269
- }
5270
- case "JsonPartitioned":
5271
- case "BinaryPartitioned":
5272
- case "ParquetPartitioned": {
5273
- const { partitionKeyLength } = dataInfoEntries;
5274
- for (const [axisIdx] of axisFilters)
5275
- if (axisIdx >= partitionKeyLength)
5276
- throw new Error(`Can't filter on non-partitioned axis ${axisIdx}. Must be >= ${partitionKeyLength}`);
5277
- break;
5278
- }
5279
- default:
5280
- throw new Error(`Unsupported data info type: ${type}`);
5281
- }
5282
- const keyMatchesFilters = (key) => {
5283
- for (const [axisIdx, axisValue] of sortedFilters)
5284
- if (key[axisIdx] !== axisValue)
5285
- return false;
5286
- return true;
5287
- };
5288
- const removeFilteredAxes = (key) => {
5289
- const newKey = [...key];
5290
- for (const [axisIdx] of sortedFilters)
5291
- newKey.splice(axisIdx, 1);
5292
- return newKey;
5293
- };
5294
- switch (dataInfoEntries.type) {
5295
- case "Json":
5296
- return {
5297
- type: "Json",
5298
- keyLength: dataInfoEntries.keyLength - axisFilters.length,
5299
- data: dataInfoEntries.data.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5300
- key: removeFilteredAxes(entry.key),
5301
- value: entry.value
5302
- }))
5303
- };
5304
- case "JsonPartitioned":
5305
- return {
5306
- type: "JsonPartitioned",
5307
- partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5308
- parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5309
- key: removeFilteredAxes(entry.key),
5310
- value: entry.value
5311
- }))
5312
- };
5313
- case "BinaryPartitioned":
5314
- return {
5315
- type: "BinaryPartitioned",
5316
- partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5317
- parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5318
- key: removeFilteredAxes(entry.key),
5319
- value: entry.value
5320
- }))
5321
- };
5322
- case "ParquetPartitioned":
5323
- return {
5324
- type: "ParquetPartitioned",
5325
- partitionKeyLength: dataInfoEntries.partitionKeyLength - axisFilters.length,
5326
- parts: dataInfoEntries.parts.filter((entry) => keyMatchesFilters(entry.key)).map((entry) => ({
5327
- key: removeFilteredAxes(entry.key),
5328
- value: entry.value
5329
- }))
5330
- };
5331
- }
5448
+ function isPColumnReady(c) {
5449
+ const isValues = (d) => Array.isArray(d);
5450
+ const isAccessor = (d) => d instanceof TreeNodeAccessor;
5451
+ let ready = true;
5452
+ if (isAccessor(c.data)) {
5453
+ ready && (ready = c.data.getIsReadyOrError());
5454
+ } else if (isDataInfo(c.data)) {
5455
+ visitDataInfo(c.data, (v) => ready && (ready = v.getIsReadyOrError()));
5456
+ } else if (!isValues(c.data)) {
5457
+ throw Error(`unsupported column data type: ${c.data}`);
5458
+ }
5459
+ return ready;
5460
+ }
5461
+ function allPColumnsReady(columns) {
5462
+ return columns.every(isPColumnReady);
5332
5463
  }
5333
5464
  function isPColumnValues(value) {
5334
5465
  if (!Array.isArray(value))
@@ -6080,6 +6211,8 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
6080
6211
  // TODO remove all non-PColumn fields
6081
6212
  createPFrame(def) {
6082
6213
  this.verifyInlineAndExplicitColumnsSupport(def);
6214
+ if (!allPColumnsReady(def))
6215
+ return void 0;
6083
6216
  return this.ctx.createPFrame(def.map((c) => transformPColumnData(c)));
6084
6217
  }
6085
6218
  createPTable(def) {
@@ -6097,7 +6230,10 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
6097
6230
  } else {
6098
6231
  rawDef = this.patchPTableDef(def);
6099
6232
  }
6100
- this.verifyInlineAndExplicitColumnsSupport(extractAllColumns(rawDef.src));
6233
+ const columns = extractAllColumns(rawDef.src);
6234
+ this.verifyInlineAndExplicitColumnsSupport(columns);
6235
+ if (!allPColumnsReady(columns))
6236
+ return void 0;
6101
6237
  return this.ctx.createPTable(mapPTableDef(rawDef, (po) => transformPColumnData(po)));
6102
6238
  }
6103
6239
  /** @deprecated scheduled for removal from SDK */
@@ -6117,7 +6253,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
6117
6253
  this.ctx.logError(msg);
6118
6254
  }
6119
6255
  }
6120
- var version = "1.42.36";
6256
+ var version = "1.45.30";
6121
6257
  const PlatformaSDKVersion = version;
6122
6258
  function isConfigLambda(cfgOrFh) {
6123
6259
  return cfgOrFh.__renderLambda === true;
@@ -6376,19 +6512,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
6376
6512
  },
6377
6513
  {
6378
6514
  axes: [{ anchor: "main", idx: 1 }],
6379
- name: "pl7.app/vdj/vGene"
6380
- },
6381
- {
6382
- axes: [{ anchor: "main", idx: 1 }],
6383
- name: "pl7.app/vdj/dGene"
6384
- },
6385
- {
6386
- axes: [{ anchor: "main", idx: 1 }],
6387
- name: "pl7.app/vdj/jGene"
6388
- },
6389
- {
6390
- axes: [{ anchor: "main", idx: 1 }],
6391
- name: "pl7.app/vdj/cGene"
6515
+ name: "pl7.app/vdj/geneHit"
6392
6516
  }
6393
6517
  ]
6394
6518
  );