@platforma-open/milaboratories.mixcr-shm-trees.workflow 3.3.1 → 3.5.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.
@@ -17,6 +17,7 @@ shmTreeTableOptions := func(dataDescription) {
17
17
  axes := []
18
18
  columns := []
19
19
  cmdArgs := []
20
+ assemblingFeature := dataDescription.assemblingFeature
20
21
 
21
22
  cmdArgs = append(cmdArgs, "-treeId")
22
23
  axes = append(axes, {
@@ -26,7 +27,9 @@ shmTreeTableOptions := func(dataDescription) {
26
27
  type: "Long",
27
28
  domain: { },
28
29
  annotations: {
29
- "pl7.app/label": "Tree id"
30
+ "pl7.app/label": "Tree id",
31
+ "pl7.app/table/visibility": "default",
32
+ "pl7.app/table/orderPriority": "100000"
30
33
  }
31
34
  }
32
35
  })
@@ -40,7 +43,9 @@ shmTreeTableOptions := func(dataDescription) {
40
43
  type: "Long",
41
44
  domain: { },
42
45
  annotations: {
43
- "pl7.app/label": "Subtree id"
46
+ "pl7.app/label": "Chain id",
47
+ "pl7.app/table/visibility": "default",
48
+ "pl7.app/table/orderPriority": "90000"
44
49
  }
45
50
  }
46
51
  })
@@ -56,7 +61,9 @@ shmTreeTableOptions := func(dataDescription) {
56
61
  name: "pl7.app/vdj/uniqueCellCount",
57
62
  valueType: "Long",
58
63
  annotations: {
59
- "pl7.app/label": "Number of cells"
64
+ "pl7.app/label": "Number of cells",
65
+ "pl7.app/table/visibility": "default",
66
+ "pl7.app/table/orderPriority": "70000"
60
67
  }
61
68
  }
62
69
  })
@@ -72,7 +79,9 @@ shmTreeTableOptions := func(dataDescription) {
72
79
  name: "pl7.app/vdj/uniqueMoleculeCount",
73
80
  valueType: "Long",
74
81
  annotations: {
75
- "pl7.app/label": "Number of molecules"
82
+ "pl7.app/label": "Number of molecules",
83
+ "pl7.app/table/visibility": "default",
84
+ "pl7.app/table/orderPriority": "60000"
76
85
  }
77
86
  }
78
87
  })
@@ -87,7 +96,9 @@ shmTreeTableOptions := func(dataDescription) {
87
96
  name: "pl7.app/vdj/numberOfClonesInTree",
88
97
  valueType: "Long",
89
98
  annotations: {
90
- "pl7.app/label": "Number of clones"
99
+ "pl7.app/label": "Number of clones",
100
+ "pl7.app/table/visibility": "default",
101
+ "pl7.app/table/orderPriority": "80000"
91
102
  }
92
103
  }
93
104
  })
@@ -101,7 +112,9 @@ shmTreeTableOptions := func(dataDescription) {
101
112
  name: "pl7.app/vdj/numberOfNodesWithClones",
102
113
  valueType: "Long",
103
114
  annotations: {
104
- "pl7.app/label": "Number of nodes"
115
+ "pl7.app/label": "Number of nodes",
116
+ "pl7.app/table/visibility": "default",
117
+ "pl7.app/table/orderPriority": "90000"
105
118
  }
106
119
  }
107
120
  })
@@ -115,7 +128,9 @@ shmTreeTableOptions := func(dataDescription) {
115
128
  name: "pl7.app/vdj/totalReadsCountInTree",
116
129
  valueType: "Long",
117
130
  annotations: {
118
- "pl7.app/label": "Total reads count"
131
+ "pl7.app/label": "Total reads count",
132
+ "pl7.app/table/visibility": "default",
133
+ "pl7.app/table/orderPriority": "50000"
119
134
  }
120
135
  }
121
136
  })
@@ -133,7 +148,10 @@ shmTreeTableOptions := func(dataDescription) {
133
148
  },
134
149
  annotations: {
135
150
  type: "V gene name",
136
- "pl7.app/label": "V gene"
151
+ "pl7.app/label": "V gene",
152
+ "pl7.app/isDiscreteFilter": "true",
153
+ "pl7.app/table/visibility": "default",
154
+ "pl7.app/table/orderPriority": "30000"
137
155
  }
138
156
  }
139
157
  })
@@ -151,7 +169,10 @@ shmTreeTableOptions := func(dataDescription) {
151
169
  },
152
170
  annotations: {
153
171
  type: "J gene name",
154
- "pl7.app/label": "J gene"
172
+ "pl7.app/label": "J gene",
173
+ "pl7.app/isDiscreteFilter": "true",
174
+ "pl7.app/table/visibility": "default",
175
+ "pl7.app/table/orderPriority": "29000"
155
176
  }
156
177
  }
157
178
  })
@@ -165,51 +186,109 @@ shmTreeTableOptions := func(dataDescription) {
165
186
  valueType: "String",
166
187
  name: "pl7.app/vdj/chain",
167
188
  annotations: {
168
- "pl7.app/label": "Chain"
189
+ "pl7.app/label": "Chain",
190
+ "pl7.app/isDiscreteFilter": "true",
191
+ "pl7.app/discreteValues": "['TRA', 'TRB', 'TRG', 'TRD', 'IGH', 'IGK', 'IGL']",
192
+ "pl7.app/table/visibility": "default",
193
+ "pl7.app/table/orderPriority": "40000"
169
194
  }
170
195
  }
171
196
  })
172
-
197
+ orderPriority := 20000
198
+ visibility := undefined
173
199
  for feature in dataDescription.coveredFeatures {
174
- cmdArgs = append(cmdArgs, "-aaFeature", feature, "mrca")
200
+ cmdArgs = append(cmdArgs, "-nFeature", feature, "mrca")
201
+ if feature == "CDR3" {
202
+ visibility = "default"
203
+ } else {
204
+ visibility = "optional"
205
+ }
175
206
  columns = append(columns, {
176
- column: "aaSeq" + feature + "OfMrca",
177
- id: "aa-seq-" + feature + "-mrca",
207
+ column: "nSeq" + feature + "OfMrca",
208
+ id: "n-seq-" + feature + "-mrca",
178
209
  allowNA: allowNA,
179
210
  spec: {
180
211
  name: "pl7.app/vdj/sequence",
181
212
  valueType: "String",
182
213
  domain: {
183
214
  "pl7.app/vdj/feature": feature,
184
- "pl7.app/alphabet": "aminoacid"
215
+ "pl7.app/alphabet": "nucleotide"
185
216
  },
186
217
  annotations: {
187
218
  "pl7.app/type": "sequence",
188
- "pl7.app/label": feature + " of MRCA aa"
219
+ "pl7.app/label": feature + " of MRCA nt",
220
+ "pl7.app/table/visibility": visibility,
221
+ "pl7.app/table/orderPriority": string(orderPriority)
189
222
  }
190
223
  }
191
224
  })
225
+ orderPriority -= 100
192
226
 
193
- cmdArgs = append(cmdArgs, "-nFeature", feature, "mrca")
227
+ cmdArgs = append(cmdArgs, "-aaFeature", feature, "mrca")
194
228
  columns = append(columns, {
195
- column: "nSeq" + feature + "OfMrca",
196
- id: "n-seq-" + feature + "-mrca",
229
+ column: "aaSeq" + feature + "OfMrca",
230
+ id: "aa-seq-" + feature + "-mrca",
197
231
  allowNA: allowNA,
198
232
  spec: {
199
233
  name: "pl7.app/vdj/sequence",
200
234
  valueType: "String",
201
235
  domain: {
202
236
  "pl7.app/vdj/feature": feature,
203
- "pl7.app/alphabet": "nucleotide"
237
+ "pl7.app/alphabet": "aminoacid"
204
238
  },
205
239
  annotations: {
206
240
  "pl7.app/type": "sequence",
207
- "pl7.app/label": feature + " of MRCA nt"
241
+ "pl7.app/label": feature + " of MRCA aa",
242
+ "pl7.app/table/visibility": visibility,
243
+ "pl7.app/table/orderPriority": string(orderPriority)
208
244
  }
209
245
  }
210
246
  })
247
+ orderPriority -= 100
211
248
  }
212
249
 
250
+ cmdArgs = append(cmdArgs, "-nFeature", assemblingFeature, "mrca")
251
+ columns = append(columns, {
252
+ column: "nSeq" + assemblingFeature + "OfMrca",
253
+ id: "n-seq-" + assemblingFeature + "-mrca",
254
+ allowNA: allowNA,
255
+ spec: {
256
+ name: "pl7.app/vdj/sequence",
257
+ valueType: "String",
258
+ domain: {
259
+ "pl7.app/vdj/feature": assemblingFeature,
260
+ "pl7.app/alphabet": "nucleotide"
261
+ },
262
+ annotations: {
263
+ "pl7.app/type": "sequence",
264
+ "pl7.app/label": assemblingFeature + " of MRCA nt",
265
+ "pl7.app/table/visibility": "default",
266
+ "pl7.app/table/orderPriority": "10000"
267
+ }
268
+ }
269
+ })
270
+
271
+ cmdArgs = append(cmdArgs, "-aaFeature", assemblingFeature, "mrca")
272
+ columns = append(columns, {
273
+ column: "aaSeq" + assemblingFeature + "OfMrca",
274
+ id: "aa-seq-" + assemblingFeature + "-mrca",
275
+ allowNA: allowNA,
276
+ spec: {
277
+ name: "pl7.app/vdj/sequence",
278
+ valueType: "String",
279
+ domain: {
280
+ "pl7.app/vdj/feature": assemblingFeature,
281
+ "pl7.app/alphabet": "aminoacid"
282
+ },
283
+ annotations: {
284
+ "pl7.app/type": "sequence",
285
+ "pl7.app/label": assemblingFeature + " of MRCA aa",
286
+ "pl7.app/table/visibility": "default",
287
+ "pl7.app/table/orderPriority": "9000"
288
+ }
289
+ }
290
+ })
291
+
213
292
  return {
214
293
  pfconvParams: {
215
294
  axes: axes,
@@ -226,6 +305,7 @@ shmTreeNodesTableOptions := func(dataDescription) {
226
305
  axes := []
227
306
  columns := []
228
307
  cmdArgs := []
308
+ assemblingFeature := dataDescription.assemblingFeature
229
309
 
230
310
  cmdArgs = append(cmdArgs, "-treeId")
231
311
  axes = append(axes, {
@@ -235,7 +315,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
235
315
  type: "Long",
236
316
  domain: { },
237
317
  annotations: {
238
- "pl7.app/label": "Tree id"
318
+ "pl7.app/label": "Tree id",
319
+ "pl7.app/table/visibility": "default",
320
+ "pl7.app/table/orderPriority": "100000"
239
321
  }
240
322
  }
241
323
  })
@@ -249,7 +331,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
249
331
  type: "Long",
250
332
  domain: { },
251
333
  annotations: {
252
- "pl7.app/label": "Subtree id"
334
+ "pl7.app/label": "Chain id",
335
+ "pl7.app/table/visibility": "default",
336
+ "pl7.app/table/orderPriority": "90000"
253
337
  }
254
338
  }
255
339
  })
@@ -263,7 +347,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
263
347
  type: "Long",
264
348
  domain: { },
265
349
  annotations: {
266
- "pl7.app/label": "Node id"
350
+ "pl7.app/label": "Node id",
351
+ "pl7.app/table/visibility": "default",
352
+ "pl7.app/table/orderPriority": "80000"
267
353
  }
268
354
  }
269
355
  })
@@ -278,7 +364,11 @@ shmTreeNodesTableOptions := func(dataDescription) {
278
364
  // TODO change to Boolean when it will be supported
279
365
  valueType: "String",
280
366
  annotations: {
281
- "pl7.app/label": "Is observed in data"
367
+ "pl7.app/label": "Is observed in data",
368
+ "pl7.app/isDiscreteFilter": "true",
369
+ "pl7.app/discreteValues": "['true', 'false']",
370
+ "pl7.app/table/visibility": "default",
371
+ "pl7.app/table/orderPriority": "85000"
282
372
  }
283
373
  }
284
374
  })
@@ -293,7 +383,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
293
383
  valueType: "Long",
294
384
  annotations: {
295
385
  "pl7.app/label": "Parent node id",
296
- "pl7.app/dendrogram/isTopology": "true"
386
+ "pl7.app/dendrogram/isTopology": "true",
387
+ "pl7.app/table/visibility": "optional",
388
+ "pl7.app/table/orderPriority": "10000"
297
389
  }
298
390
  }
299
391
  })
@@ -312,7 +404,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
312
404
  annotations: {
313
405
  "pl7.app/label": "Distanse from germline",
314
406
  "pl7.app/dendrogram/distance/from": "germline", // change to domain only, once can be selected in graphmaker
315
- "pl7.app/dendrogram/isDistance": "true"
407
+ "pl7.app/dendrogram/isDistance": "true",
408
+ "pl7.app/table/visibility": "optional",
409
+ "pl7.app/table/orderPriority": "9000"
316
410
  }
317
411
  }
318
412
  })
@@ -331,7 +425,9 @@ shmTreeNodesTableOptions := func(dataDescription) {
331
425
  annotations: {
332
426
  "pl7.app/label": "Distanse from parent",
333
427
  "pl7.app/dendrogram/distance/from": "parent", // change to domain only, once can be selected in graphmaker
334
- "pl7.app/dendrogram/isDistance": "true"
428
+ "pl7.app/dendrogram/isDistance": "true",
429
+ "pl7.app/table/visibility": "optional",
430
+ "pl7.app/table/orderPriority": "8900"
335
431
  }
336
432
  }
337
433
  })
@@ -349,7 +445,221 @@ shmTreeNodesTableOptions := func(dataDescription) {
349
445
  "pl7.app/alphabet": "nucleotide"
350
446
  },
351
447
  annotations: {
352
- "pl7.app/label": "Mutations rate nt"
448
+ "pl7.app/label": "Mutations rate nt",
449
+ "pl7.app/table/visibility": "optional",
450
+ "pl7.app/table/orderPriority": "8800"
451
+ }
452
+ }
453
+ })
454
+
455
+ cmdArgs = append(cmdArgs, "-aaMutationsRate")
456
+ columns = append(columns, {
457
+ column: "aaMutationsRate",
458
+ id: "aa-mutations-rate",
459
+ allowNA: allowNA,
460
+ spec: {
461
+ name: "pl7.app/vdj/mutationsRate",
462
+ valueType: "Double",
463
+ domain: {
464
+ "pl7.app/vdj/features": assemblingFeature,
465
+ "pl7.app/alphabet": "aminoacid"
466
+ },
467
+ annotations: {
468
+ "pl7.app/label": "Mutations rate aa",
469
+ "pl7.app/table/visibility": "optional",
470
+ "pl7.app/table/orderPriority": "8700"
471
+ }
472
+ }
473
+ })
474
+
475
+ cmdArgs = append(cmdArgs, "-vBestIdentityPercent")
476
+ columns = append(columns, {
477
+ column: "vBestIdentityPercent",
478
+ id: "v-best-identity-percent",
479
+ allowNA: allowNA,
480
+ spec: {
481
+ name: "pl7.app/vdj/vIdentityPercent",
482
+ valueType: "Double",
483
+ annotations: {
484
+ "pl7.app/label": "V gene identity",
485
+ "pl7.app/table/visibility": "optional",
486
+ "pl7.app/table/orderPriority": "8600"
487
+ }
488
+ }
489
+ })
490
+
491
+ cmdArgs = append(cmdArgs, "-jBestIdentityPercent")
492
+ columns = append(columns, {
493
+ column: "jBestIdentityPercent",
494
+ id: "j-best-identity-percent",
495
+ allowNA: allowNA,
496
+ spec: {
497
+ name: "pl7.app/vdj/jIdentityPercent",
498
+ valueType: "Double",
499
+ annotations: {
500
+ "pl7.app/label": "J gene identity",
501
+ "pl7.app/table/visibility": "optional",
502
+ "pl7.app/table/orderPriority": "8500"
503
+ }
504
+ }
505
+ })
506
+
507
+ cmdArgs = append(cmdArgs, "-nMutations", assemblingFeature, "mrca")
508
+ columns = append(columns, {
509
+ column: "nMutations"+assemblingFeature+"BasedOnMrca",
510
+ id: "n-mutations-" + assemblingFeature+"-mrca",
511
+ allowNA: allowNA,
512
+ spec: {
513
+ name: "pl7.app/vdj/mutations",
514
+ valueType: "String",
515
+ domain: {
516
+ "pl7.app/vdj/features": assemblingFeature,
517
+ "pl7.app/alphabet": "nucleotide"
518
+ },
519
+ annotations: {
520
+ "pl7.app/label": assemblingFeature+" nt mutations based on MRCA",
521
+ "pl7.app/table/visibility": "optional",
522
+ "pl7.app/table/orderPriority": "8400"
523
+ }
524
+ }
525
+ })
526
+
527
+ cmdArgs = append(cmdArgs, "-aaMutations", assemblingFeature, "mrca")
528
+ columns = append(columns, {
529
+ column: "aaMutations"+assemblingFeature+"BasedOnMrca",
530
+ id: "aa-mutations"+assemblingFeature+"-mrca",
531
+ allowNA: allowNA,
532
+ spec: {
533
+ name: "pl7.app/vdj/mutations",
534
+ valueType: "String",
535
+ domain: {
536
+ "pl7.app/vdj/features": assemblingFeature,
537
+ "pl7.app/alphabet": "aminoacid"
538
+ },
539
+ annotations: {
540
+ "pl7.app/label": assemblingFeature+" aa mutations based on MRCA",
541
+ "pl7.app/table/visibility": "optional",
542
+ "pl7.app/table/orderPriority": "8300"
543
+ }
544
+ }
545
+ })
546
+
547
+ cmdArgs = append(cmdArgs, "-nMutations", assemblingFeature, "germline")
548
+ columns = append(columns, {
549
+ column: "nMutations"+assemblingFeature+"BasedOnGermline",
550
+ id: "n-mutations-" + assemblingFeature+"-germline",
551
+ allowNA: allowNA,
552
+ spec: {
553
+ name: "pl7.app/vdj/mutations",
554
+ valueType: "String",
555
+ domain: {
556
+ "pl7.app/vdj/features": assemblingFeature,
557
+ "pl7.app/alphabet": "nucleotide"
558
+ },
559
+ annotations: {
560
+ "pl7.app/label": assemblingFeature+" nt mutations based on germline",
561
+ "pl7.app/table/visibility": "optional",
562
+ "pl7.app/table/orderPriority": "8200"
563
+ }
564
+ }
565
+ })
566
+
567
+ cmdArgs = append(cmdArgs, "-aaMutations", assemblingFeature, "germline")
568
+ columns = append(columns, {
569
+ column: "aaMutations"+assemblingFeature+"BasedOnGermline",
570
+ id: "aa-mutations"+assemblingFeature+"-germline",
571
+ allowNA: allowNA,
572
+ spec: {
573
+ name: "pl7.app/vdj/mutations",
574
+ valueType: "String",
575
+ domain: {
576
+ "pl7.app/vdj/features": assemblingFeature,
577
+ "pl7.app/alphabet": "aminoacid"
578
+ },
579
+ annotations: {
580
+ "pl7.app/label": assemblingFeature+" aa mutations based on germline",
581
+ "pl7.app/table/visibility": "optional",
582
+ "pl7.app/table/orderPriority": "8100"
583
+ }
584
+ }
585
+ })
586
+
587
+ cmdArgs = append(cmdArgs, "-nMutationsCount", assemblingFeature, "mrca")
588
+ columns = append(columns, {
589
+ column: "nMutationCount"+assemblingFeature+"BasedOnMrca",
590
+ id: "n-mutation-count-"+assemblingFeature+"-mrca",
591
+ allowNA: allowNA,
592
+ spec: {
593
+ name: "pl7.app/vdj/mutationCount",
594
+ valueType: "Long",
595
+ domain: {
596
+ "pl7.app/vdj/features": assemblingFeature,
597
+ "pl7.app/alphabet": "nucleotide"
598
+ },
599
+ annotations: {
600
+ "pl7.app/label": assemblingFeature+" nt mutations count based on MRCA",
601
+ "pl7.app/table/visibility": "optional",
602
+ "pl7.app/table/orderPriority": "8000"
603
+ }
604
+ }
605
+ })
606
+
607
+ cmdArgs = append(cmdArgs, "-aaMutationsCount", assemblingFeature, "mrca")
608
+ columns = append(columns, {
609
+ column: "aaMutationCount"+assemblingFeature+"BasedOnMrca",
610
+ id: "aa-mutation-count-"+assemblingFeature+"-mrca",
611
+ allowNA: allowNA,
612
+ spec: {
613
+ name: "pl7.app/vdj/mutationCount",
614
+ valueType: "Long",
615
+ domain: {
616
+ "pl7.app/vdj/features": assemblingFeature,
617
+ "pl7.app/alphabet": "aminoacid"
618
+ },
619
+ annotations: {
620
+ "pl7.app/label": assemblingFeature+" aa mutations count based on MRCA",
621
+ "pl7.app/table/visibility": "optional",
622
+ "pl7.app/table/orderPriority": "7900"
623
+ }
624
+ }
625
+ })
626
+
627
+ cmdArgs = append(cmdArgs, "-nMutationsCount", assemblingFeature, "germline")
628
+ columns = append(columns, {
629
+ column: "nMutationCount"+assemblingFeature+"BasedOnGermline",
630
+ id: "n-mutation-count-"+assemblingFeature+"-germline",
631
+ allowNA: allowNA,
632
+ spec: {
633
+ name: "pl7.app/vdj/mutationCount",
634
+ valueType: "Long",
635
+ domain: {
636
+ "pl7.app/vdj/features": assemblingFeature,
637
+ "pl7.app/alphabet": "nucleotide"
638
+ },
639
+ annotations: {
640
+ "pl7.app/label": assemblingFeature+" nt mutations count based on germline",
641
+ "pl7.app/table/visibility": "optional",
642
+ "pl7.app/table/orderPriority": "7800"
643
+ }
644
+ }
645
+ })
646
+
647
+ cmdArgs = append(cmdArgs, "-aaMutationsCount", assemblingFeature, "germline")
648
+ columns = append(columns, {
649
+ column: "aaMutationCount"+assemblingFeature+"BasedOnGermline",
650
+ id: "aa-mutation-count-"+assemblingFeature+"-germline",
651
+ allowNA: allowNA,
652
+ spec: {
653
+ name: "pl7.app/vdj/mutationCount",
654
+ valueType: "Long",
655
+ domain: {
656
+ "pl7.app/vdj/features": assemblingFeature,
657
+ "pl7.app/alphabet": "aminoacid"
658
+ },
659
+ annotations: {
660
+ "pl7.app/label": assemblingFeature+" aa mutations count based on germline",
661
+ "pl7.app/table/visibility": "optional",
662
+ "pl7.app/table/orderPriority": "7700"
353
663
  }
354
664
  }
355
665
  })
@@ -367,7 +677,10 @@ shmTreeNodesTableOptions := func(dataDescription) {
367
677
  },
368
678
  annotations: {
369
679
  type: "V gene name",
370
- "pl7.app/label": "V gene"
680
+ "pl7.app/label": "V gene",
681
+ "pl7.app/isDiscreteFilter": "true",
682
+ "pl7.app/table/visibility": "default",
683
+ "pl7.app/table/orderPriority": "49000"
371
684
  }
372
685
  }
373
686
  })
@@ -385,51 +698,108 @@ shmTreeNodesTableOptions := func(dataDescription) {
385
698
  },
386
699
  annotations: {
387
700
  type: "J gene name",
388
- "pl7.app/label": "J gene"
701
+ "pl7.app/label": "J gene",
702
+ "pl7.app/isDiscreteFilter": "true",
703
+ "pl7.app/table/visibility": "default",
704
+ "pl7.app/table/orderPriority": "47000"
389
705
  }
390
706
  }
391
707
  })
392
708
 
709
+ orderPriority := 40000
710
+ visibility := undefined
393
711
  for feature in dataDescription.coveredFeatures {
394
- cmdArgs = append(cmdArgs, "-aaFeature", feature)
712
+ cmdArgs = append(cmdArgs, "-nFeature", feature)
713
+ if feature == "CDR3" {
714
+ visibility = "default"
715
+ } else {
716
+ visibility = "optional"
717
+ }
395
718
  columns = append(columns, {
396
- column: "aaSeq" + feature,
397
- id: "aa-seq-" + feature,
719
+ column: "nSeq" + feature,
720
+ id: "n-seq-" + feature,
398
721
  allowNA: allowNA,
399
722
  spec: {
400
723
  name: "pl7.app/vdj/sequence",
401
724
  valueType: "String",
402
725
  domain: {
403
726
  "pl7.app/vdj/feature": feature,
404
- "pl7.app/alphabet": "aminoacid"
727
+ "pl7.app/alphabet": "nucleotide"
405
728
  },
406
729
  annotations: {
407
730
  "pl7.app/type": "sequence",
408
- "pl7.app/label": feature + " aa"
731
+ "pl7.app/label": feature + " nt",
732
+ "pl7.app/table/visibility": visibility,
733
+ "pl7.app/table/orderPriority": string(orderPriority)
409
734
  }
410
735
  }
411
736
  })
412
-
413
- cmdArgs = append(cmdArgs, "-nFeature", feature)
737
+ orderPriority -= 100
738
+ cmdArgs = append(cmdArgs, "-aaFeature", feature)
414
739
  columns = append(columns, {
415
- column: "nSeq" + feature,
416
- id: "n-seq-" + feature,
740
+ column: "aaSeq" + feature,
741
+ id: "aa-seq-" + feature,
417
742
  allowNA: allowNA,
418
743
  spec: {
419
744
  name: "pl7.app/vdj/sequence",
420
745
  valueType: "String",
421
746
  domain: {
422
747
  "pl7.app/vdj/feature": feature,
423
- "pl7.app/alphabet": "nucleotide"
748
+ "pl7.app/alphabet": "aminoacid"
424
749
  },
425
750
  annotations: {
426
751
  "pl7.app/type": "sequence",
427
- "pl7.app/label": feature + " nt"
752
+ "pl7.app/label": feature + " aa",
753
+ "pl7.app/table/visibility": visibility,
754
+ "pl7.app/table/orderPriority": string(orderPriority)
428
755
  }
429
756
  }
430
757
  })
758
+ orderPriority -= 100
431
759
  }
432
760
 
761
+ cmdArgs = append(cmdArgs, "-nFeature", assemblingFeature)
762
+ columns = append(columns, {
763
+ column: "nSeq" + assemblingFeature,
764
+ id: "n-seq-" + assemblingFeature,
765
+ allowNA: allowNA,
766
+ spec: {
767
+ name: "pl7.app/vdj/sequence",
768
+ valueType: "String",
769
+ domain: {
770
+ "pl7.app/vdj/feature": assemblingFeature,
771
+ "pl7.app/alphabet": "nucleotide"
772
+ },
773
+ annotations: {
774
+ "pl7.app/type": "sequence",
775
+ "pl7.app/label": assemblingFeature + " nt",
776
+ "pl7.app/table/visibility": "default",
777
+ "pl7.app/table/orderPriority": "30000"
778
+ }
779
+ }
780
+ })
781
+
782
+ cmdArgs = append(cmdArgs, "-aaFeature", assemblingFeature)
783
+ columns = append(columns, {
784
+ column: "aaSeq" + assemblingFeature,
785
+ id: "aa-seq-" + assemblingFeature,
786
+ allowNA: allowNA,
787
+ spec: {
788
+ name: "pl7.app/vdj/sequence",
789
+ valueType: "String",
790
+ domain: {
791
+ "pl7.app/vdj/feature": assemblingFeature,
792
+ "pl7.app/alphabet": "aminoacid"
793
+ },
794
+ annotations: {
795
+ "pl7.app/type": "sequence",
796
+ "pl7.app/label": assemblingFeature + " aa",
797
+ "pl7.app/table/visibility": "default",
798
+ "pl7.app/table/orderPriority": "29000"
799
+ }
800
+ }
801
+ })
802
+
433
803
  return {
434
804
  pfconvParams: {
435
805
  axes: axes,
@@ -458,7 +828,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
458
828
  type: "Long",
459
829
  domain: { },
460
830
  annotations: {
461
- "pl7.app/label": "Tree id"
831
+ "pl7.app/label": "Tree id",
832
+ "pl7.app/table/visibility": "default",
833
+ "pl7.app/table/orderPriority": "100000"
462
834
  }
463
835
  }
464
836
  })
@@ -472,7 +844,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
472
844
  type: "Long",
473
845
  domain: { },
474
846
  annotations: {
475
- "pl7.app/label": "Subtree id"
847
+ "pl7.app/label": "Chain id",
848
+ "pl7.app/table/visibility": "default",
849
+ "pl7.app/table/orderPriority": "90000"
476
850
  }
477
851
  }
478
852
  })
@@ -486,7 +860,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
486
860
  type: "Long",
487
861
  domain: { },
488
862
  annotations: {
489
- "pl7.app/label": "Node id"
863
+ "pl7.app/label": "Node id",
864
+ "pl7.app/table/visibility": "default",
865
+ "pl7.app/table/orderPriority": "80000"
490
866
  }
491
867
  }
492
868
  })
@@ -503,7 +879,13 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
503
879
  replacement: "$1"
504
880
  }
505
881
  ],
506
- spec: donorColumnSpec.axesSpec[0]
882
+ spec: donorColumnSpec.axesSpec[0],
883
+ annotations: {
884
+ "pl7.app/label": "Sample name",
885
+ "pl7.app/isDiscreteFilter": "true",
886
+ "pl7.app/table/visibility": "default",
887
+ "pl7.app/table/orderPriority": "110000"
888
+ }
507
889
  })
508
890
 
509
891
  cmdArgs = append(cmdArgs, "-cloneId")
@@ -518,7 +900,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
518
900
  type: "Long",
519
901
  // TODO domain with blockId
520
902
  annotations: {
521
- "pl7.app/label": "Clone id"
903
+ "pl7.app/label": "Clone id",
904
+ "pl7.app/table/visibility": "default",
905
+ "pl7.app/table/orderPriority": "70000"
522
906
  }
523
907
  }
524
908
  })
@@ -533,7 +917,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
533
917
  name: "pl7.app/vdj/uniqueCellCount",
534
918
  valueType: "Long",
535
919
  annotations: {
536
- "pl7.app/label": "Number of cells"
920
+ "pl7.app/label": "Number of cells",
921
+ "pl7.app/table/visibility": "default",
922
+ "pl7.app/table/orderPriority": "60000"
537
923
  }
538
924
  }
539
925
  })
@@ -549,7 +935,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
549
935
  name: "pl7.app/vdj/uniqueMoleculeCount",
550
936
  valueType: "Long",
551
937
  annotations: {
552
- "pl7.app/label": "Number of molecules"
938
+ "pl7.app/label": "Number of molecules",
939
+ "pl7.app/table/visibility": "default",
940
+ "pl7.app/table/orderPriority": "59000"
553
941
  }
554
942
  }
555
943
  })
@@ -564,7 +952,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
564
952
  name: "pl7.app/vdj/readCount",
565
953
  valueType: "Long",
566
954
  annotations: {
567
- "pl7.app/label": "Number of Reads"
955
+ "pl7.app/label": "Number of Reads",
956
+ "pl7.app/table/visibility": "default",
957
+ "pl7.app/table/orderPriority": "58000"
568
958
  }
569
959
  }
570
960
  })
@@ -578,44 +968,9 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
578
968
  name: "pl7.app/vdj/readFraction",
579
969
  valueType: "Double",
580
970
  annotations: {
581
- "pl7.app/label": "Fraction of reads"
582
- }
583
- }
584
- })
585
-
586
- cmdArgs = append(cmdArgs, "-targetSequences")
587
- columns = append(columns, {
588
- column: "targetSequences",
589
- id: "n-seq-clonal-sequences",
590
- allowNA: true,
591
- spec: {
592
- name: "pl7.app/vdj/sequence",
593
- valueType: "String",
594
- domain: {
595
- "pl7.app/vdj/sequence": "clonalSequence",
596
- "pl7.app/alphabet": "nucleotide"
597
- },
598
- annotations: {
599
- "pl7.app/type": "sequence",
600
- "pl7.app/label": "Clonal sequences"
601
- }
602
- }
603
- })
604
-
605
- cmdArgs = append(cmdArgs, "-targetQualities")
606
- columns = append(columns, {
607
- column: "targetQualities",
608
- id: "clonal-qualities",
609
- allowNA: true,
610
- spec: {
611
- name: "pl7.app/vdj/sequenceQuality",
612
- valueType: "String",
613
- domain: {
614
- "pl7.app/vdj/quality": "clonalQuality"
615
- },
616
- annotations: {
617
- type: "quality string",
618
- "pl7.app/label": "Clonal qualities"
971
+ "pl7.app/label": "Fraction of reads",
972
+ "pl7.app/table/visibility": "default",
973
+ "pl7.app/table/orderPriority": "57000"
619
974
  }
620
975
  }
621
976
  })
@@ -633,7 +988,10 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
633
988
  },
634
989
  annotations: {
635
990
  type: "D gene name",
636
- "pl7.app/label": "Best D hit"
991
+ "pl7.app/label": "Best D hit",
992
+ "pl7.app/isDiscreteFilter": "true",
993
+ "pl7.app/table/visibility": "default",
994
+ "pl7.app/table/orderPriority": "48000"
637
995
  }
638
996
  }
639
997
  })
@@ -651,7 +1009,10 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
651
1009
  },
652
1010
  annotations: {
653
1011
  type: "C gene name",
654
- "pl7.app/label": "Best C hit"
1012
+ "pl7.app/label": "Best C hit",
1013
+ "pl7.app/isDiscreteFilter": "true",
1014
+ "pl7.app/table/visibility": "default",
1015
+ "pl7.app/table/orderPriority": "46000"
655
1016
  }
656
1017
  }
657
1018
  })
@@ -665,7 +1026,10 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
665
1026
  valueType: "String",
666
1027
  name: "pl7.app/vdj/isotype",
667
1028
  annotations: {
668
- "pl7.app/label": "IG isotype"
1029
+ "pl7.app/label": "IG isotype",
1030
+ "pl7.app/isDiscreteFilter": "true",
1031
+ "pl7.app/table/visibility": "default",
1032
+ "pl7.app/table/orderPriority": "50000"
669
1033
  }
670
1034
  }
671
1035
  })
@@ -681,9 +1045,100 @@ shmTreeNodesWithClonesTableOptions := func(dataDescription, donorColumn) {
681
1045
  }
682
1046
  }
683
1047
 
1048
+ shmTreeNodesUniqueIsotypeTableOptions := func(dataDescription) {
1049
+
1050
+ axes := []
1051
+ columns := []
1052
+
1053
+ axes = append(axes, {
1054
+ column: "treeId",
1055
+ spec: {
1056
+ name: "pl7.app/dendrogram/treeId",
1057
+ type: "Long",
1058
+ domain: { },
1059
+ annotations: {
1060
+ "pl7.app/label": "Tree id",
1061
+ "pl7.app/table/visibility": "default",
1062
+ "pl7.app/table/orderPriority": "100000"
1063
+ }
1064
+ }
1065
+ })
1066
+
1067
+ if dataDescription.cellsAssembled {
1068
+ axes = append(axes, {
1069
+ column: "subtreeId",
1070
+ spec: {
1071
+ name: "pl7.app/dendrogram/subtreeId",
1072
+ type: "Long",
1073
+ domain: { },
1074
+ annotations: {
1075
+ "pl7.app/label": "Chain id",
1076
+ "pl7.app/table/visibility": "default",
1077
+ "pl7.app/table/orderPriority": "90000"
1078
+ }
1079
+ }
1080
+ })
1081
+ }
1082
+
1083
+ axes = append(axes, {
1084
+ column: "nodeId",
1085
+ spec: {
1086
+ name: "pl7.app/dendrogram/nodeId",
1087
+ type: "Long",
1088
+ domain: { },
1089
+ annotations: {
1090
+ "pl7.app/label": "Node id",
1091
+ "pl7.app/table/visibility": "default",
1092
+ "pl7.app/table/orderPriority": "80000"
1093
+ }
1094
+ }
1095
+ })
1096
+
1097
+ columns = append(columns, {
1098
+ column: "readCount",
1099
+ id: "read-count",
1100
+ allowNA: true,
1101
+ spec: {
1102
+ name: "pl7.app/vdj/readCount",
1103
+ valueType: "Long",
1104
+ annotations: {
1105
+ "pl7.app/label": "Top clone reads number",
1106
+ "pl7.app/table/visibility": "optional",
1107
+ "pl7.app/table/orderPriority": "58000"
1108
+ }
1109
+ }
1110
+ })
1111
+
1112
+ columns = append(columns, {
1113
+ column: "isotype",
1114
+ id: "isotype",
1115
+ allowNA: true,
1116
+ spec: {
1117
+ valueType: "String",
1118
+ name: "pl7.app/vdj/isotype",
1119
+ annotations: {
1120
+ "pl7.app/label": "Top IG isotype",
1121
+ "pl7.app/isDiscreteFilter": "true",
1122
+ "pl7.app/table/visibility": "optional",
1123
+ "pl7.app/table/orderPriority": "50000"
1124
+ }
1125
+ }
1126
+ })
1127
+
1128
+ return {
1129
+ pfconvParams: {
1130
+ axes: axes,
1131
+ columns: columns,
1132
+ storageFormat: "Binary",
1133
+ partitionKeyLength: 0
1134
+ }
1135
+ }
1136
+ }
1137
+
684
1138
  // to use the file as a library, we should explicitly export functions
685
1139
  export ll.toStrict({
686
1140
  shmTreeTableOptions: shmTreeTableOptions,
687
1141
  shmTreeNodesTableOptions: shmTreeNodesTableOptions,
688
- shmTreeNodesWithClonesTableOptions: shmTreeNodesWithClonesTableOptions
1142
+ shmTreeNodesWithClonesTableOptions: shmTreeNodesWithClonesTableOptions,
1143
+ shmTreeNodesUniqueIsotypeTableOptions: shmTreeNodesUniqueIsotypeTableOptions
689
1144
  })