@sjcrh/proteinpaint-types 2.95.0 → 2.96.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21,7 +21,7 @@ var boxplotPayload = {
21
21
  var validBoxPlotRequest = (input) => {
22
22
  const errors = [];
23
23
  const __is = (input2) => {
24
- const $io0 = (input3) => "string" === typeof input3.genome && "string" === typeof input3.dslabel && true && true && true;
24
+ const $io0 = (input3) => "string" === typeof input3.genome && "string" === typeof input3.dslabel && "boolean" === typeof input3.orderByMedian && true && true && true;
25
25
  return "object" === typeof input2 && null !== input2 && $io0(input2);
26
26
  };
27
27
  if (false === __is(input)) {
@@ -35,6 +35,10 @@ var validBoxPlotRequest = (input) => {
35
35
  path: _path2 + ".dslabel",
36
36
  expected: "string",
37
37
  value: input3.dslabel
38
+ }), "boolean" === typeof input3.orderByMedian || $report(_exceptionable2, {
39
+ path: _path2 + ".orderByMedian",
40
+ expected: "boolean",
41
+ value: input3.orderByMedian
38
42
  }), true, true, true].every((flag) => flag);
39
43
  return ("object" === typeof input2 && null !== input2 || $report(true, {
40
44
  path: _path + "",
package/dist/index.js CHANGED
@@ -132,7 +132,7 @@ import {
132
132
  boxplotPayload,
133
133
  validBoxPlotRequest,
134
134
  validBoxPlotResponse
135
- } from "./chunk-BY2JABTF.js";
135
+ } from "./chunk-RIJYASPK.js";
136
136
  import {
137
137
  gdcTopMutatedGenePayload,
138
138
  validGdcTopMutatedGeneRequest,
@@ -2,7 +2,7 @@ import {
2
2
  boxplotPayload,
3
3
  validBoxPlotRequest,
4
4
  validBoxPlotResponse
5
- } from "./chunk-BY2JABTF.js";
5
+ } from "./chunk-RIJYASPK.js";
6
6
  import "./chunk-Z6B6IQIY.js";
7
7
  export {
8
8
  boxplotPayload,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sjcrh/proteinpaint-types",
3
- "version": "2.95.0",
3
+ "version": "2.96.1",
4
4
  "type": "module",
5
5
  "description": "Shared type definitions between ProteinPaint server and client code",
6
6
  "main": "src/index.ts",
package/src/dataset.ts CHANGED
@@ -243,6 +243,72 @@ type Population = {
243
243
  sets: PopulationINFOset[]
244
244
  }
245
245
 
246
+ /** primarily for prebuilding germline genetic association for survivorship portal
247
+ accessible to client via termdb.js?for=mds3queryDetails
248
+ part of state of genomeBrowser plot
249
+ allowing for user modification
250
+ */
251
+ type SnvindelComputeDetails = {
252
+ /** in each element, type corresponds to same key in groups[]
253
+ used for rendering choices in group data types; but content is read-only and should not be part of state
254
+ */
255
+ groupTypes: {
256
+ type: string
257
+ name: string
258
+ }[]
259
+ /** a type of computing decides numeric values for each variant displayed in tk
260
+ computing type is also determined by number of groups
261
+ if only 1 group:
262
+ type=info: use numeric info field
263
+ type=filter: use AF
264
+ type=population: use AF
265
+ if there're two groups:
266
+ both types are "filter": allow AF diff or fisher
267
+ "filter" and "population": allow AF diff or fisher
268
+ else: value difference
269
+ */
270
+ groups: (SnvindelComputeGroup_filter | SnvindelComputeGroup_population | SnvindelComputeGroup_info)[]
271
+ /** define lists of group-comparison methods to compute one numerical value per variant
272
+ */
273
+ groupTestMethods: {
274
+ /** method name. used both for display and identifier. cannot supply hardcoded values here as breaks tsc */
275
+ name: string
276
+ /** optional custom text to put on mds3 tk y axis */
277
+ axisLabel?: string
278
+ }[]
279
+ /** array index of groupTestMethods[] */
280
+ groupTestMethodsIdx: number
281
+ }
282
+ /** supplies a pp filter (or filter by cohort) to restrict to a subset of samples from which to compute AF for each variant.
283
+ the filter will be user-modifiable
284
+ */
285
+ type SnvindelComputeGroup_filter = {
286
+ // FIXME type value can only be 'filter' but breaks tsc
287
+ type: string //'filter'
288
+ /** a given filter applied to all cohorts */
289
+ //filter?: object
290
+ /** filter per cohort. use either filter or filterByCohort */
291
+ filterByCohort?: { [key: string]: object }
292
+ }
293
+ /** a choice from snvindel.populations[]
294
+ */
295
+ type SnvindelComputeGroup_population = {
296
+ type: string //'population'
297
+ /** used to identify corresponding population element */
298
+ key: string
299
+ /** redundant, should be copied over from snvindel.populations[] */
300
+ label: string
301
+ /** if true, can adjust race. may copy over instead of duplicating? */
302
+ allowto_adjust_race: boolean
303
+ /** if true, race adjustion is being applied */
304
+ adjust_race: boolean
305
+ }
306
+ type SnvindelComputeGroup_info = {
307
+ type: string //'info'
308
+ /** numerical INFO field name from bcf, allows to retrieve numeric values for each variant in tk */
309
+ infoKey: string
310
+ }
311
+
246
312
  /** a data type under ds.queries{} */
247
313
  type SnvIndelQuery = {
248
314
  forTrack?: boolean
@@ -269,7 +335,7 @@ so that it can work for a termdb-less ds, e.g. clinvar, where termdbConfig canno
269
335
  }
270
336
  allowSNPs?: boolean
271
337
  vcfid4skewerName?: boolean
272
- details?: any
338
+ details?: SnvindelComputeDetails
273
339
  }
274
340
 
275
341
  type SvFusion = {
@@ -517,32 +583,30 @@ export type SingleCellGeneExpressionGdc = {
517
583
 
518
584
  export type SingleCellSamplesNative = {
519
585
  src: 'native'
520
-
521
- /** logic to decide sample table columns (the one shown on singlecell app ui, displaying a table of samples with sc data)
522
- a sample table will always have a sample column, to show sample.sample value
523
- firstColumnName allow to change name of 1st column from "Sample" to different, e.g. "Case" for gdc
524
- the other two properties allow to declare additional columns to be shown in table, that are for display only
525
- when sample.experiments[] are used, a last column of experiment id will be auto added
526
- */
586
+ /** kept to prevent tsc err */
527
587
  firstColumnName?: string
528
-
529
- /** do not use for native ds! gdc-only property. kept as optional to avoid tsc err */
530
- experimentColumns?: string
531
-
532
- /** any other columns to be added to sample table. each is a term id */
588
+ /** any columns to be added to sample table. each is a term id */
533
589
  sampleColumns?: { termid: string }[]
534
-
535
- /** dynamically added getter */
590
+ /** used on client but not on ds */
591
+ experimentColumns?: { label: string }[]
536
592
  get?: (q: any) => any
537
593
  }
538
594
 
539
595
  export type SingleCellSamplesGdc = {
540
596
  src: 'gdcapi'
541
- get?: (q: any) => any
542
597
  /** if missing refer to the samples as 'sample', this provides override e.g. 'case' */
598
+ /** logic to decide sample table columns (the one shown on singlecell app ui, displaying a table of samples with sc data)
599
+ a sample table will always have a sample column, to show sample.sample value
600
+ firstColumnName allow to change name of 1st column from "Sample" to different, e.g. "Case" for gdc
601
+ the other two properties allow to declare additional columns to be shown in table, that are for display only
602
+ when sample.experiments[] are used, a last column of experiment id will be auto added
603
+ */
543
604
  firstColumnName?: string
605
+ /** same as SingleCellSamplesNative */
544
606
  sampleColumns?: { termid: string }[]
607
+ /** used on client but not on ds */
545
608
  experimentColumns?: { label: string }[]
609
+ get?: (q: any) => any
546
610
  }
547
611
 
548
612
  export type SingleCellDataGdc = {
@@ -881,6 +945,10 @@ type SortPriorityEntry = {
881
945
  type SurvivalSettings = {
882
946
  /** The max time-to-event to be displayed in plot, hide all the samples with Time-to-Event longer than this maxTimeToEvent */
883
947
  maxTimeToEvent?: number
948
+ /** The time unit (months, years, etc) displayed in the x-axis of survival plot */
949
+ timeUnit?: string
950
+ /** the customized x-axis tick values of survival plot */
951
+ xTickValues?: number[]
884
952
  }
885
953
 
886
954
  type MatrixSettings = {
@@ -944,6 +1012,8 @@ type NumericDictTermCluster = {
944
1012
  settings?: NumericDictTermClusterSettings
945
1013
  /** list of numeric term ids that will be excluded from the numeric dictionary term cluster, add to usecase.detail to exclude terms*/
946
1014
  exclude?: string[]
1015
+ /** list of pre-built numericDictTermcluster plots */
1016
+ plots?: NumericDictTermClusterPlotsEntry[]
947
1017
  }
948
1018
 
949
1019
  type Survival = {
@@ -960,6 +1030,16 @@ type MatrixPlotsEntry = {
960
1030
  getConfig?: (f: any) => void
961
1031
  }
962
1032
 
1033
+ type NumericDictTermClusterPlotsEntry = {
1034
+ name: string
1035
+ file: string
1036
+ settings?: {
1037
+ [key: string]: any
1038
+ }
1039
+ /** helper function to get plot config from saved session file */
1040
+ getConfig?: (f: any) => void
1041
+ }
1042
+
963
1043
  type MatrixPlots = {
964
1044
  plots: MatrixPlotsEntry[]
965
1045
  }
@@ -1211,9 +1291,6 @@ export type Cohort = {
1211
1291
 
1212
1292
  /** Customizations specific to the mass nav component */
1213
1293
  type MassNav = {
1214
- /** optional title of this ds, if missing use ds.label. shown on mass nav header.
1215
- * use blank string to not to show a label*/
1216
- title?: Title
1217
1294
  /** Customization for the tabs*/
1218
1295
  tabs?: {
1219
1296
  /** supported keys: about, charts, groups, filter
@@ -1,11 +1,14 @@
1
1
  import type { RoutePayload } from './routeApi.js'
2
2
 
3
+ /**Args set in Termdb vocab and from mass box plot */
3
4
  export type BoxPlotRequest = {
4
5
  /** Args set in TermVocab */
5
6
  /** term1 or term */
6
7
  tw: any
7
8
  genome: string
8
9
  dslabel: string
10
+ /** sort plots by median value */
11
+ orderByMedian: boolean
9
12
  /** term2 */
10
13
  overlayTw?: any
11
14
  filter: any