@vitessce/constants-internal 2.0.3 → 3.0.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.
@@ -26,7 +26,9 @@ const DataType = {
26
26
  GENOMIC_PROFILES: "genomic-profiles"
27
27
  };
28
28
  const FileType = {
29
+ // Joint file types
29
30
  ANNDATA_ZARR: "anndata.zarr",
31
+ // Atomic file types
30
32
  OBS_EMBEDDING_CSV: "obsEmbedding.csv",
31
33
  OBS_LOCATIONS_CSV: "obsLocations.csv",
32
34
  OBS_LABELS_CSV: "obsLabels.csv",
@@ -36,6 +38,7 @@ const FileType = {
36
38
  OBS_SETS_CSV: "obsSets.csv",
37
39
  OBS_SETS_JSON: "obsSets.json",
38
40
  IMAGE_OME_ZARR: "image.ome-zarr",
41
+ // AnnData
39
42
  OBS_FEATURE_MATRIX_ANNDATA_ZARR: "obsFeatureMatrix.anndata.zarr",
40
43
  OBS_SETS_ANNDATA_ZARR: "obsSets.anndata.zarr",
41
44
  OBS_EMBEDDING_ANNDATA_ZARR: "obsEmbedding.anndata.zarr",
@@ -43,6 +46,7 @@ const FileType = {
43
46
  OBS_SEGMENTATIONS_ANNDATA_ZARR: "obsSegmentations.anndata.zarr",
44
47
  OBS_LABELS_ANNDATA_ZARR: "obsLabels.anndata.zarr",
45
48
  FEATURE_LABELS_ANNDATA_ZARR: "featureLabels.anndata.zarr",
49
+ // MuData
46
50
  OBS_FEATURE_MATRIX_MUDATA_ZARR: "obsFeatureMatrix.mudata.zarr",
47
51
  OBS_SETS_MUDATA_ZARR: "obsSets.mudata.zarr",
48
52
  OBS_EMBEDDING_MUDATA_ZARR: "obsEmbedding.mudata.zarr",
@@ -52,18 +56,30 @@ const FileType = {
52
56
  FEATURE_LABELS_MUDATA_ZARR: "featureLabels.mudata.zarr",
53
57
  GENOMIC_PROFILES_ZARR: "genomic-profiles.zarr",
54
58
  NEIGHBORHOODS_JSON: "neighborhoods.json",
59
+ // OME-TIFF
60
+ IMAGE_OME_TIFF: "image.ome-tiff",
61
+ OBS_SEGMENTATIONS_OME_TIFF: "obsSegmentations.ome-tiff",
62
+ // New file types to support old file types:
63
+ // - cells.json
55
64
  OBS_EMBEDDING_CELLS_JSON: "obsEmbedding.cells.json",
56
65
  OBS_SEGMENTATIONS_CELLS_JSON: "obsSegmentations.cells.json",
57
66
  OBS_LOCATIONS_CELLS_JSON: "obsLocations.cells.json",
58
67
  OBS_LABELS_CELLS_JSON: "obsLabels.cells.json",
68
+ // - cell-sets.json
59
69
  OBS_SETS_CELL_SETS_JSON: "obsSets.cell-sets.json",
70
+ // - genes.json
60
71
  OBS_FEATURE_MATRIX_GENES_JSON: "obsFeatureMatrix.genes.json",
72
+ // - clusters.json
61
73
  OBS_FEATURE_MATRIX_CLUSTERS_JSON: "obsFeatureMatrix.clusters.json",
74
+ // - expression-matrix.zarr
62
75
  OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR: "obsFeatureMatrix.expression-matrix.zarr",
76
+ // - raster.json
63
77
  IMAGE_RASTER_JSON: "image.raster.json",
64
78
  OBS_SEGMENTATIONS_RASTER_JSON: "obsSegmentations.raster.json",
79
+ // - molecules.json
65
80
  OBS_LOCATIONS_MOLECULES_JSON: "obsLocations.molecules.json",
66
81
  OBS_LABELS_MOLECULES_JSON: "obsLabels.molecules.json",
82
+ // Legacy joint file types
67
83
  CELLS_JSON: "cells.json",
68
84
  CELL_SETS_JSON: "cell-sets.json",
69
85
  ANNDATA_CELL_SETS_ZARR: "anndata-cell-sets.zarr",
@@ -78,10 +94,12 @@ const FileType = {
78
94
  };
79
95
  const CoordinationType = {
80
96
  DATASET: "dataset",
97
+ // Entity types
81
98
  OBS_TYPE: "obsType",
82
99
  FEATURE_TYPE: "featureType",
83
100
  FEATURE_VALUE_TYPE: "featureValueType",
84
101
  OBS_LABELS_TYPE: "obsLabelsType",
102
+ // Other types
85
103
  EMBEDDING_TYPE: "embeddingType",
86
104
  EMBEDDING_ZOOM: "embeddingZoom",
87
105
  EMBEDDING_ROTATION: "embeddingRotation",
@@ -114,6 +132,7 @@ const CoordinationType = {
114
132
  OBS_HIGHLIGHT: "obsHighlight",
115
133
  OBS_SET_SELECTION: "obsSetSelection",
116
134
  OBS_SET_HIGHLIGHT: "obsSetHighlight",
135
+ OBS_SET_EXPANSION: "obsSetExpansion",
117
136
  OBS_SET_COLOR: "obsSetColor",
118
137
  FEATURE_FILTER: "featureFilter",
119
138
  FEATURE_HIGHLIGHT: "featureHighlight",
@@ -131,10 +150,12 @@ const CoordinationType = {
131
150
  GENOMIC_TARGET_X: "genomicTargetX",
132
151
  GENOMIC_TARGET_Y: "genomicTargetY",
133
152
  ADDITIONAL_OBS_SETS: "additionalObsSets",
153
+ // TODO: use obsHighlight rather than moleculeHighlight.
134
154
  MOLECULE_HIGHLIGHT: "moleculeHighlight",
135
155
  GATING_FEATURE_SELECTION_X: "gatingFeatureSelectionX",
136
156
  GATING_FEATURE_SELECTION_Y: "gatingFeatureSelectionY",
137
- FEATURE_VALUE_TRANSFORM_COEFFICIENT: "featureValueTransformCoefficient"
157
+ FEATURE_VALUE_TRANSFORM_COEFFICIENT: "featureValueTransformCoefficient",
158
+ TOOLTIPS_VISIBLE: "tooltipsVisible"
138
159
  };
139
160
  const STATUS = {
140
161
  LOADING: "loading",
@@ -142,6 +163,7 @@ const STATUS = {
142
163
  ERROR: "error"
143
164
  };
144
165
  const FILE_TYPE_DATA_TYPE_MAPPING = {
166
+ // For new file types
145
167
  [FileType.OBS_EMBEDDING_CSV]: DataType.OBS_EMBEDDING,
146
168
  [FileType.OBS_LOCATIONS_CSV]: DataType.OBS_LOCATIONS,
147
169
  [FileType.OBS_LABELS_CSV]: DataType.OBS_LABELS,
@@ -158,6 +180,8 @@ const FILE_TYPE_DATA_TYPE_MAPPING = {
158
180
  [FileType.OBS_SEGMENTATIONS_ANNDATA_ZARR]: DataType.OBS_SEGMENTATIONS,
159
181
  [FileType.OBS_LABELS_ANNDATA_ZARR]: DataType.OBS_LABELS,
160
182
  [FileType.FEATURE_LABELS_ANNDATA_ZARR]: DataType.FEATURE_LABELS,
183
+ [FileType.IMAGE_OME_TIFF]: DataType.IMAGE,
184
+ [FileType.OBS_SEGMENTATIONS_OME_TIFF]: DataType.OBS_SEGMENTATIONS,
161
185
  [FileType.OBS_FEATURE_MATRIX_MUDATA_ZARR]: DataType.OBS_FEATURE_MATRIX,
162
186
  [FileType.OBS_SETS_MUDATA_ZARR]: DataType.OBS_SETS,
163
187
  [FileType.OBS_EMBEDDING_MUDATA_ZARR]: DataType.OBS_EMBEDDING,
@@ -165,6 +189,7 @@ const FILE_TYPE_DATA_TYPE_MAPPING = {
165
189
  [FileType.OBS_SEGMENTATIONS_MUDATA_ZARR]: DataType.OBS_SEGMENTATIONS,
166
190
  [FileType.OBS_LABELS_MUDATA_ZARR]: DataType.OBS_LABELS,
167
191
  [FileType.FEATURE_LABELS_MUDATA_ZARR]: DataType.FEATURE_LABELS,
192
+ // For new file types to support old file types
168
193
  [FileType.OBS_EMBEDDING_CELLS_JSON]: DataType.OBS_EMBEDDING,
169
194
  [FileType.OBS_LOCATIONS_CELLS_JSON]: DataType.OBS_LOCATIONS,
170
195
  [FileType.OBS_SEGMENTATIONS_CELLS_JSON]: DataType.OBS_SEGMENTATIONS,
@@ -177,6 +202,7 @@ const FILE_TYPE_DATA_TYPE_MAPPING = {
177
202
  [FileType.OBS_SEGMENTATIONS_RASTER_JSON]: DataType.OBS_SEGMENTATIONS,
178
203
  [FileType.OBS_LOCATIONS_MOLECULES_JSON]: DataType.OBS_LOCATIONS,
179
204
  [FileType.OBS_LABELS_MOLECULES_JSON]: DataType.OBS_LABELS,
205
+ // For old file types
180
206
  [FileType.GENOMIC_PROFILES_ZARR]: DataType.GENOMIC_PROFILES,
181
207
  [FileType.NEIGHBORHOODS_JSON]: DataType.NEIGHBORHOODS
182
208
  };
@@ -210,64 +236,6 @@ const DATA_TYPE_COORDINATION_VALUE_USAGE = {
210
236
  [DataType.IMAGE]: [],
211
237
  [DataType.NEIGHBORHOODS]: []
212
238
  };
213
- const DEFAULT_COORDINATION_VALUES = {
214
- [CoordinationType.OBS_TYPE]: "cell",
215
- [CoordinationType.FEATURE_TYPE]: "gene",
216
- [CoordinationType.FEATURE_VALUE_TYPE]: "expression",
217
- [CoordinationType.OBS_LABELS_TYPE]: null,
218
- [CoordinationType.EMBEDDING_ZOOM]: null,
219
- [CoordinationType.EMBEDDING_ROTATION]: 0,
220
- [CoordinationType.EMBEDDING_TARGET_X]: null,
221
- [CoordinationType.EMBEDDING_TARGET_Y]: null,
222
- [CoordinationType.EMBEDDING_TARGET_Z]: 0,
223
- [CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE]: false,
224
- [CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE]: false,
225
- [CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE]: 14,
226
- [CoordinationType.EMBEDDING_OBS_RADIUS]: 1,
227
- [CoordinationType.EMBEDDING_OBS_RADIUS_MODE]: "auto",
228
- [CoordinationType.EMBEDDING_OBS_OPACITY]: 1,
229
- [CoordinationType.EMBEDDING_OBS_OPACITY_MODE]: "auto",
230
- [CoordinationType.SPATIAL_ZOOM]: null,
231
- [CoordinationType.SPATIAL_ROTATION]: 0,
232
- [CoordinationType.SPATIAL_TARGET_X]: null,
233
- [CoordinationType.SPATIAL_TARGET_Y]: null,
234
- [CoordinationType.SPATIAL_TARGET_Z]: null,
235
- [CoordinationType.SPATIAL_ROTATION_X]: null,
236
- [CoordinationType.SPATIAL_ROTATION_Y]: null,
237
- [CoordinationType.SPATIAL_ROTATION_Z]: null,
238
- [CoordinationType.SPATIAL_AXIS_FIXED]: false,
239
- [CoordinationType.SPATIAL_ROTATION_ORBIT]: 0,
240
- [CoordinationType.SPATIAL_ORBIT_AXIS]: "Y",
241
- [CoordinationType.SPATIAL_IMAGE_LAYER]: null,
242
- [CoordinationType.SPATIAL_SEGMENTATION_LAYER]: null,
243
- [CoordinationType.SPATIAL_POINT_LAYER]: null,
244
- [CoordinationType.SPATIAL_NEIGHBORHOOD_LAYER]: null,
245
- [CoordinationType.HEATMAP_ZOOM_X]: 0,
246
- [CoordinationType.HEATMAP_ZOOM_Y]: 0,
247
- [CoordinationType.HEATMAP_TARGET_X]: 0,
248
- [CoordinationType.HEATMAP_TARGET_Y]: 0,
249
- [CoordinationType.FEATURE_VALUE_COLORMAP]: "plasma",
250
- [CoordinationType.FEATURE_VALUE_COLORMAP_RANGE]: [0, 1],
251
- [CoordinationType.FEATURE_VALUE_TRANSFORM]: null,
252
- [CoordinationType.FEATURE_VALUE_TRANSFORM_COEFFICIENT]: 1,
253
- [CoordinationType.FEATURE_FILTER]: null,
254
- [CoordinationType.FEATURE_HIGHLIGHT]: null,
255
- [CoordinationType.FEATURE_SELECTION]: null,
256
- [CoordinationType.OBS_FILTER]: null,
257
- [CoordinationType.OBS_HIGHLIGHT]: null,
258
- [CoordinationType.OBS_SET_SELECTION]: null,
259
- [CoordinationType.OBS_SET_HIGHLIGHT]: null,
260
- [CoordinationType.OBS_SET_COLOR]: null,
261
- [CoordinationType.OBS_COLOR_ENCODING]: "cellSetSelection",
262
- [CoordinationType.GENOMIC_ZOOM_X]: 0,
263
- [CoordinationType.GENOMIC_ZOOM_Y]: 0,
264
- [CoordinationType.GENOMIC_TARGET_X]: 15499999995e-1,
265
- [CoordinationType.GENOMIC_TARGET_Y]: 15499999995e-1,
266
- [CoordinationType.ADDITIONAL_OBS_SETS]: null,
267
- [CoordinationType.MOLECULE_HIGHLIGHT]: null,
268
- [CoordinationType.GATING_FEATURE_SELECTION_X]: null,
269
- [CoordinationType.GATING_FEATURE_SELECTION_Y]: null
270
- };
271
239
  const AUTO_INDEPENDENT_COORDINATION_TYPES = [
272
240
  CoordinationType.HEATMAP_ZOOM_X,
273
241
  CoordinationType.HEATMAP_ZOOM_Y,
@@ -313,7 +281,8 @@ const COMPONENT_COORDINATION_TYPES = {
313
281
  CoordinationType.FEATURE_VALUE_COLORMAP,
314
282
  CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
315
283
  CoordinationType.OBS_COLOR_ENCODING,
316
- CoordinationType.ADDITIONAL_OBS_SETS
284
+ CoordinationType.ADDITIONAL_OBS_SETS,
285
+ CoordinationType.TOOLTIPS_VISIBLE
317
286
  ],
318
287
  [ViewType.GATING]: [
319
288
  CoordinationType.DATASET,
@@ -381,7 +350,8 @@ const COMPONENT_COORDINATION_TYPES = {
381
350
  CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
382
351
  CoordinationType.OBS_COLOR_ENCODING,
383
352
  CoordinationType.ADDITIONAL_OBS_SETS,
384
- CoordinationType.MOLECULE_HIGHLIGHT
353
+ CoordinationType.MOLECULE_HIGHLIGHT,
354
+ CoordinationType.TOOLTIPS_VISIBLE
385
355
  ],
386
356
  [ViewType.HEATMAP]: [
387
357
  CoordinationType.DATASET,
@@ -404,12 +374,14 @@ const COMPONENT_COORDINATION_TYPES = {
404
374
  CoordinationType.FEATURE_VALUE_COLORMAP,
405
375
  CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
406
376
  CoordinationType.OBS_COLOR_ENCODING,
407
- CoordinationType.ADDITIONAL_OBS_SETS
377
+ CoordinationType.ADDITIONAL_OBS_SETS,
378
+ CoordinationType.TOOLTIPS_VISIBLE
408
379
  ],
409
380
  [ViewType.OBS_SETS]: [
410
381
  CoordinationType.DATASET,
411
382
  CoordinationType.OBS_TYPE,
412
383
  CoordinationType.OBS_SET_SELECTION,
384
+ CoordinationType.OBS_SET_EXPANSION,
413
385
  CoordinationType.OBS_SET_HIGHLIGHT,
414
386
  CoordinationType.OBS_SET_COLOR,
415
387
  CoordinationType.OBS_COLOR_ENCODING,
@@ -420,6 +392,7 @@ const COMPONENT_COORDINATION_TYPES = {
420
392
  CoordinationType.DATASET,
421
393
  CoordinationType.OBS_TYPE,
422
394
  CoordinationType.OBS_SET_SELECTION,
395
+ CoordinationType.OBS_SET_EXPANSION,
423
396
  CoordinationType.OBS_SET_HIGHLIGHT,
424
397
  CoordinationType.OBS_SET_COLOR,
425
398
  CoordinationType.ADDITIONAL_OBS_SETS
@@ -460,7 +433,11 @@ const COMPONENT_COORDINATION_TYPES = {
460
433
  CoordinationType.OBS_TYPE,
461
434
  CoordinationType.FEATURE_TYPE,
462
435
  CoordinationType.FEATURE_VALUE_TYPE,
463
- CoordinationType.FEATURE_SELECTION
436
+ CoordinationType.FEATURE_SELECTION,
437
+ CoordinationType.ADDITIONAL_OBS_SETS,
438
+ CoordinationType.OBS_SET_COLOR,
439
+ CoordinationType.OBS_COLOR_ENCODING,
440
+ CoordinationType.OBS_SET_SELECTION
464
441
  ],
465
442
  [ViewType.LAYER_CONTROLLER]: [
466
443
  CoordinationType.DATASET,
@@ -514,10 +491,10 @@ const COMPONENT_COORDINATION_TYPES = {
514
491
  ]
515
492
  };
516
493
  const note = "This file is regenerated by push-demo.sh.";
517
- const version = "2.0.3";
518
- const branch = "release-v2.0.3";
519
- const date = "2023-02-07";
520
- const hash = "ca9494c3";
494
+ const version = "3.0.0";
495
+ const branch = "release-v3.0.0";
496
+ const date = "2023-06-05";
497
+ const hash = "74d01aab";
521
498
  const version$1 = {
522
499
  note,
523
500
  version,
@@ -530,7 +507,6 @@ export {
530
507
  COMPONENT_COORDINATION_TYPES,
531
508
  CoordinationType,
532
509
  DATA_TYPE_COORDINATION_VALUE_USAGE,
533
- DEFAULT_COORDINATION_VALUES,
534
510
  DataType,
535
511
  FILE_TYPE_DATA_TYPE_MAPPING,
536
512
  FileType,
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Mapping from file types to data types. Each file type
3
+ * should correspond to one data type. Multiple file types
4
+ * can map onto the same data type.
5
+ */
6
+ export const FILE_TYPE_DATA_TYPE_MAPPING: {
7
+ [x: string]: string;
8
+ };
9
+ /**
10
+ * Store a mapping from data types to the coordination types used
11
+ * for matching using the coordinationValues field of file definitions.
12
+ * This enables inferring default values, simplifying view config writing.
13
+ */
14
+ export const DATA_TYPE_COORDINATION_VALUE_USAGE: {
15
+ [x: string]: string[];
16
+ };
17
+ //# sourceMappingURL=constant-relationships.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant-relationships.d.ts","sourceRoot":"","sources":["../src/constant-relationships.js"],"names":[],"mappings":"AAEA;;;;GAIG;AACH;;EA2CE;AAEF;;;;GAIG;AACH;;EA6BE"}
@@ -0,0 +1,85 @@
1
+ import { FileType, DataType, CoordinationType } from './constants.js';
2
+ /**
3
+ * Mapping from file types to data types. Each file type
4
+ * should correspond to one data type. Multiple file types
5
+ * can map onto the same data type.
6
+ */
7
+ export const FILE_TYPE_DATA_TYPE_MAPPING = {
8
+ // For new file types
9
+ [FileType.OBS_EMBEDDING_CSV]: DataType.OBS_EMBEDDING,
10
+ [FileType.OBS_LOCATIONS_CSV]: DataType.OBS_LOCATIONS,
11
+ [FileType.OBS_LABELS_CSV]: DataType.OBS_LABELS,
12
+ [FileType.FEATURE_LABELS_CSV]: DataType.FEATURE_LABELS,
13
+ [FileType.OBS_FEATURE_MATRIX_CSV]: DataType.OBS_FEATURE_MATRIX,
14
+ [FileType.OBS_SEGMENTATIONS_JSON]: DataType.OBS_SEGMENTATIONS,
15
+ [FileType.OBS_SETS_CSV]: DataType.OBS_SETS,
16
+ [FileType.OBS_SETS_JSON]: DataType.OBS_SETS,
17
+ [FileType.IMAGE_OME_ZARR]: DataType.IMAGE,
18
+ [FileType.OBS_FEATURE_MATRIX_ANNDATA_ZARR]: DataType.OBS_FEATURE_MATRIX,
19
+ [FileType.OBS_SETS_ANNDATA_ZARR]: DataType.OBS_SETS,
20
+ [FileType.OBS_EMBEDDING_ANNDATA_ZARR]: DataType.OBS_EMBEDDING,
21
+ [FileType.OBS_LOCATIONS_ANNDATA_ZARR]: DataType.OBS_LOCATIONS,
22
+ [FileType.OBS_SEGMENTATIONS_ANNDATA_ZARR]: DataType.OBS_SEGMENTATIONS,
23
+ [FileType.OBS_LABELS_ANNDATA_ZARR]: DataType.OBS_LABELS,
24
+ [FileType.FEATURE_LABELS_ANNDATA_ZARR]: DataType.FEATURE_LABELS,
25
+ [FileType.IMAGE_OME_TIFF]: DataType.IMAGE,
26
+ [FileType.OBS_SEGMENTATIONS_OME_TIFF]: DataType.OBS_SEGMENTATIONS,
27
+ [FileType.OBS_FEATURE_MATRIX_MUDATA_ZARR]: DataType.OBS_FEATURE_MATRIX,
28
+ [FileType.OBS_SETS_MUDATA_ZARR]: DataType.OBS_SETS,
29
+ [FileType.OBS_EMBEDDING_MUDATA_ZARR]: DataType.OBS_EMBEDDING,
30
+ [FileType.OBS_LOCATIONS_MUDATA_ZARR]: DataType.OBS_LOCATIONS,
31
+ [FileType.OBS_SEGMENTATIONS_MUDATA_ZARR]: DataType.OBS_SEGMENTATIONS,
32
+ [FileType.OBS_LABELS_MUDATA_ZARR]: DataType.OBS_LABELS,
33
+ [FileType.FEATURE_LABELS_MUDATA_ZARR]: DataType.FEATURE_LABELS,
34
+ // For new file types to support old file types
35
+ [FileType.OBS_EMBEDDING_CELLS_JSON]: DataType.OBS_EMBEDDING,
36
+ [FileType.OBS_LOCATIONS_CELLS_JSON]: DataType.OBS_LOCATIONS,
37
+ [FileType.OBS_SEGMENTATIONS_CELLS_JSON]: DataType.OBS_SEGMENTATIONS,
38
+ [FileType.OBS_LABELS_CELLS_JSON]: DataType.OBS_LABELS,
39
+ [FileType.OBS_SETS_CELL_SETS_JSON]: DataType.OBS_SETS,
40
+ [FileType.OBS_FEATURE_MATRIX_GENES_JSON]: DataType.OBS_FEATURE_MATRIX,
41
+ [FileType.OBS_FEATURE_MATRIX_CLUSTERS_JSON]: DataType.OBS_FEATURE_MATRIX,
42
+ [FileType.OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR]: DataType.OBS_FEATURE_MATRIX,
43
+ [FileType.IMAGE_RASTER_JSON]: DataType.IMAGE,
44
+ [FileType.OBS_SEGMENTATIONS_RASTER_JSON]: DataType.OBS_SEGMENTATIONS,
45
+ [FileType.OBS_LOCATIONS_MOLECULES_JSON]: DataType.OBS_LOCATIONS,
46
+ [FileType.OBS_LABELS_MOLECULES_JSON]: DataType.OBS_LABELS,
47
+ // For old file types
48
+ [FileType.GENOMIC_PROFILES_ZARR]: DataType.GENOMIC_PROFILES,
49
+ [FileType.NEIGHBORHOODS_JSON]: DataType.NEIGHBORHOODS,
50
+ };
51
+ /**
52
+ * Store a mapping from data types to the coordination types used
53
+ * for matching using the coordinationValues field of file definitions.
54
+ * This enables inferring default values, simplifying view config writing.
55
+ */
56
+ export const DATA_TYPE_COORDINATION_VALUE_USAGE = {
57
+ [DataType.OBS_SEGMENTATIONS]: [
58
+ CoordinationType.OBS_TYPE,
59
+ ],
60
+ [DataType.OBS_EMBEDDING]: [
61
+ CoordinationType.OBS_TYPE,
62
+ CoordinationType.EMBEDDING_TYPE,
63
+ ],
64
+ [DataType.OBS_LOCATIONS]: [
65
+ CoordinationType.OBS_TYPE,
66
+ ],
67
+ [DataType.OBS_LABELS]: [
68
+ CoordinationType.OBS_TYPE,
69
+ CoordinationType.OBS_LABELS_TYPE,
70
+ ],
71
+ [DataType.FEATURE_LABELS]: [
72
+ CoordinationType.FEATURE_TYPE,
73
+ ],
74
+ [DataType.OBS_SETS]: [
75
+ CoordinationType.OBS_TYPE,
76
+ ],
77
+ [DataType.OBS_FEATURE_MATRIX]: [
78
+ CoordinationType.OBS_TYPE,
79
+ CoordinationType.FEATURE_TYPE,
80
+ CoordinationType.FEATURE_VALUE_TYPE,
81
+ ],
82
+ [DataType.GENOMIC_PROFILES]: [],
83
+ [DataType.IMAGE]: [],
84
+ [DataType.NEIGHBORHOODS]: [],
85
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=constant-relationships.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constant-relationships.test.d.ts","sourceRoot":"","sources":["../src/constant-relationships.test.js"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { DataType } from './constants.js';
2
+ import { DATA_TYPE_COORDINATION_VALUE_USAGE, } from './constant-relationships.js';
3
+ describe('src/app/constant-relationships.js', () => {
4
+ describe('DataType-to-CoordinationType usage mapping', () => {
5
+ it('every data type is mapped to an array of coordination types', () => {
6
+ const dataTypes = Object.values(DataType).sort();
7
+ const mappedDataTypes = Object.keys(DATA_TYPE_COORDINATION_VALUE_USAGE).sort();
8
+ expect(dataTypes.length).toEqual(mappedDataTypes.length);
9
+ });
10
+ });
11
+ });
@@ -0,0 +1,150 @@
1
+ export namespace ViewType {
2
+ const DESCRIPTION: string;
3
+ const STATUS: string;
4
+ const SCATTERPLOT: string;
5
+ const SPATIAL: string;
6
+ const HEATMAP: string;
7
+ const LAYER_CONTROLLER: string;
8
+ const GENOMIC_PROFILES: string;
9
+ const GATING: string;
10
+ const FEATURE_LIST: string;
11
+ const OBS_SETS: string;
12
+ const OBS_SET_SIZES: string;
13
+ const OBS_SET_FEATURE_VALUE_DISTRIBUTION: string;
14
+ const FEATURE_VALUE_HISTOGRAM: string;
15
+ }
16
+ export namespace DataType {
17
+ export const OBS_LABELS: string;
18
+ export const OBS_EMBEDDING: string;
19
+ export const OBS_LOCATIONS: string;
20
+ export const OBS_FEATURE_MATRIX: string;
21
+ const OBS_SETS_1: string;
22
+ export { OBS_SETS_1 as OBS_SETS };
23
+ export const FEATURE_LABELS: string;
24
+ export const IMAGE: string;
25
+ export const OBS_SEGMENTATIONS: string;
26
+ export const NEIGHBORHOODS: string;
27
+ const GENOMIC_PROFILES_1: string;
28
+ export { GENOMIC_PROFILES_1 as GENOMIC_PROFILES };
29
+ }
30
+ export namespace FileType {
31
+ const ANNDATA_ZARR: string;
32
+ const OBS_EMBEDDING_CSV: string;
33
+ const OBS_LOCATIONS_CSV: string;
34
+ const OBS_LABELS_CSV: string;
35
+ const FEATURE_LABELS_CSV: string;
36
+ const OBS_FEATURE_MATRIX_CSV: string;
37
+ const OBS_SEGMENTATIONS_JSON: string;
38
+ const OBS_SETS_CSV: string;
39
+ const OBS_SETS_JSON: string;
40
+ const IMAGE_OME_ZARR: string;
41
+ const OBS_FEATURE_MATRIX_ANNDATA_ZARR: string;
42
+ const OBS_SETS_ANNDATA_ZARR: string;
43
+ const OBS_EMBEDDING_ANNDATA_ZARR: string;
44
+ const OBS_LOCATIONS_ANNDATA_ZARR: string;
45
+ const OBS_SEGMENTATIONS_ANNDATA_ZARR: string;
46
+ const OBS_LABELS_ANNDATA_ZARR: string;
47
+ const FEATURE_LABELS_ANNDATA_ZARR: string;
48
+ const OBS_FEATURE_MATRIX_MUDATA_ZARR: string;
49
+ const OBS_SETS_MUDATA_ZARR: string;
50
+ const OBS_EMBEDDING_MUDATA_ZARR: string;
51
+ const OBS_LOCATIONS_MUDATA_ZARR: string;
52
+ const OBS_SEGMENTATIONS_MUDATA_ZARR: string;
53
+ const OBS_LABELS_MUDATA_ZARR: string;
54
+ const FEATURE_LABELS_MUDATA_ZARR: string;
55
+ const GENOMIC_PROFILES_ZARR: string;
56
+ const NEIGHBORHOODS_JSON: string;
57
+ const IMAGE_OME_TIFF: string;
58
+ const OBS_SEGMENTATIONS_OME_TIFF: string;
59
+ const OBS_EMBEDDING_CELLS_JSON: string;
60
+ const OBS_SEGMENTATIONS_CELLS_JSON: string;
61
+ const OBS_LOCATIONS_CELLS_JSON: string;
62
+ const OBS_LABELS_CELLS_JSON: string;
63
+ const OBS_SETS_CELL_SETS_JSON: string;
64
+ const OBS_FEATURE_MATRIX_GENES_JSON: string;
65
+ const OBS_FEATURE_MATRIX_CLUSTERS_JSON: string;
66
+ const OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR: string;
67
+ const IMAGE_RASTER_JSON: string;
68
+ const OBS_SEGMENTATIONS_RASTER_JSON: string;
69
+ const OBS_LOCATIONS_MOLECULES_JSON: string;
70
+ const OBS_LABELS_MOLECULES_JSON: string;
71
+ const CELLS_JSON: string;
72
+ const CELL_SETS_JSON: string;
73
+ const ANNDATA_CELL_SETS_ZARR: string;
74
+ const ANNDATA_CELLS_ZARR: string;
75
+ const EXPRESSION_MATRIX_ZARR: string;
76
+ const MOLECULES_JSON: string;
77
+ const RASTER_JSON: string;
78
+ const RASTER_OME_ZARR: string;
79
+ const CLUSTERS_JSON: string;
80
+ const GENES_JSON: string;
81
+ const ANNDATA_EXPRESSION_MATRIX_ZARR: string;
82
+ }
83
+ export namespace CoordinationType {
84
+ const DATASET: string;
85
+ const OBS_TYPE: string;
86
+ const FEATURE_TYPE: string;
87
+ const FEATURE_VALUE_TYPE: string;
88
+ const OBS_LABELS_TYPE: string;
89
+ const EMBEDDING_TYPE: string;
90
+ const EMBEDDING_ZOOM: string;
91
+ const EMBEDDING_ROTATION: string;
92
+ const EMBEDDING_TARGET_X: string;
93
+ const EMBEDDING_TARGET_Y: string;
94
+ const EMBEDDING_TARGET_Z: string;
95
+ const EMBEDDING_OBS_SET_POLYGONS_VISIBLE: string;
96
+ const EMBEDDING_OBS_SET_LABELS_VISIBLE: string;
97
+ const EMBEDDING_OBS_SET_LABEL_SIZE: string;
98
+ const EMBEDDING_OBS_RADIUS: string;
99
+ const EMBEDDING_OBS_RADIUS_MODE: string;
100
+ const EMBEDDING_OBS_OPACITY: string;
101
+ const EMBEDDING_OBS_OPACITY_MODE: string;
102
+ const SPATIAL_ZOOM: string;
103
+ const SPATIAL_ROTATION: string;
104
+ const SPATIAL_TARGET_X: string;
105
+ const SPATIAL_TARGET_Y: string;
106
+ const SPATIAL_TARGET_Z: string;
107
+ const SPATIAL_ROTATION_X: string;
108
+ const SPATIAL_ROTATION_Y: string;
109
+ const SPATIAL_ROTATION_Z: string;
110
+ const SPATIAL_ROTATION_ORBIT: string;
111
+ const SPATIAL_ORBIT_AXIS: string;
112
+ const SPATIAL_AXIS_FIXED: string;
113
+ const HEATMAP_ZOOM_X: string;
114
+ const HEATMAP_ZOOM_Y: string;
115
+ const HEATMAP_TARGET_X: string;
116
+ const HEATMAP_TARGET_Y: string;
117
+ const OBS_FILTER: string;
118
+ const OBS_HIGHLIGHT: string;
119
+ const OBS_SET_SELECTION: string;
120
+ const OBS_SET_HIGHLIGHT: string;
121
+ const OBS_SET_EXPANSION: string;
122
+ const OBS_SET_COLOR: string;
123
+ const FEATURE_FILTER: string;
124
+ const FEATURE_HIGHLIGHT: string;
125
+ const FEATURE_SELECTION: string;
126
+ const FEATURE_VALUE_COLORMAP: string;
127
+ const FEATURE_VALUE_TRANSFORM: string;
128
+ const FEATURE_VALUE_COLORMAP_RANGE: string;
129
+ const OBS_COLOR_ENCODING: string;
130
+ const SPATIAL_IMAGE_LAYER: string;
131
+ const SPATIAL_SEGMENTATION_LAYER: string;
132
+ const SPATIAL_POINT_LAYER: string;
133
+ const SPATIAL_NEIGHBORHOOD_LAYER: string;
134
+ const GENOMIC_ZOOM_X: string;
135
+ const GENOMIC_ZOOM_Y: string;
136
+ const GENOMIC_TARGET_X: string;
137
+ const GENOMIC_TARGET_Y: string;
138
+ const ADDITIONAL_OBS_SETS: string;
139
+ const MOLECULE_HIGHLIGHT: string;
140
+ const GATING_FEATURE_SELECTION_X: string;
141
+ const GATING_FEATURE_SELECTION_Y: string;
142
+ const FEATURE_VALUE_TRANSFORM_COEFFICIENT: string;
143
+ const TOOLTIPS_VISIBLE: string;
144
+ }
145
+ export namespace STATUS {
146
+ const LOADING: string;
147
+ const SUCCESS: string;
148
+ const ERROR: string;
149
+ }
150
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.js"],"names":[],"mappings":""}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * This file defines the current constant values.
3
+ * To deprecate a value, add it to ./constants-old.js
4
+ * with a corresponding log message.
5
+ */
6
+ export const ViewType = {
7
+ DESCRIPTION: 'description',
8
+ STATUS: 'status',
9
+ SCATTERPLOT: 'scatterplot',
10
+ SPATIAL: 'spatial',
11
+ HEATMAP: 'heatmap',
12
+ LAYER_CONTROLLER: 'layerController',
13
+ GENOMIC_PROFILES: 'genomicProfiles',
14
+ GATING: 'gating',
15
+ FEATURE_LIST: 'featureList',
16
+ OBS_SETS: 'obsSets',
17
+ OBS_SET_SIZES: 'obsSetSizes',
18
+ OBS_SET_FEATURE_VALUE_DISTRIBUTION: 'obsSetFeatureValueDistribution',
19
+ FEATURE_VALUE_HISTOGRAM: 'featureValueHistogram',
20
+ };
21
+ export const DataType = {
22
+ OBS_LABELS: 'obsLabels',
23
+ OBS_EMBEDDING: 'obsEmbedding',
24
+ OBS_LOCATIONS: 'obsLocations',
25
+ OBS_FEATURE_MATRIX: 'obsFeatureMatrix',
26
+ OBS_SETS: 'obsSets',
27
+ FEATURE_LABELS: 'featureLabels',
28
+ IMAGE: 'image',
29
+ OBS_SEGMENTATIONS: 'obsSegmentations',
30
+ NEIGHBORHOODS: 'neighborhoods',
31
+ GENOMIC_PROFILES: 'genomic-profiles',
32
+ };
33
+ export const FileType = {
34
+ // Joint file types
35
+ ANNDATA_ZARR: 'anndata.zarr',
36
+ // Atomic file types
37
+ OBS_EMBEDDING_CSV: 'obsEmbedding.csv',
38
+ OBS_LOCATIONS_CSV: 'obsLocations.csv',
39
+ OBS_LABELS_CSV: 'obsLabels.csv',
40
+ FEATURE_LABELS_CSV: 'featureLabels.csv',
41
+ OBS_FEATURE_MATRIX_CSV: 'obsFeatureMatrix.csv',
42
+ OBS_SEGMENTATIONS_JSON: 'obsSegmentations.json',
43
+ OBS_SETS_CSV: 'obsSets.csv',
44
+ OBS_SETS_JSON: 'obsSets.json',
45
+ IMAGE_OME_ZARR: 'image.ome-zarr',
46
+ // AnnData
47
+ OBS_FEATURE_MATRIX_ANNDATA_ZARR: 'obsFeatureMatrix.anndata.zarr',
48
+ OBS_SETS_ANNDATA_ZARR: 'obsSets.anndata.zarr',
49
+ OBS_EMBEDDING_ANNDATA_ZARR: 'obsEmbedding.anndata.zarr',
50
+ OBS_LOCATIONS_ANNDATA_ZARR: 'obsLocations.anndata.zarr',
51
+ OBS_SEGMENTATIONS_ANNDATA_ZARR: 'obsSegmentations.anndata.zarr',
52
+ OBS_LABELS_ANNDATA_ZARR: 'obsLabels.anndata.zarr',
53
+ FEATURE_LABELS_ANNDATA_ZARR: 'featureLabels.anndata.zarr',
54
+ // MuData
55
+ OBS_FEATURE_MATRIX_MUDATA_ZARR: 'obsFeatureMatrix.mudata.zarr',
56
+ OBS_SETS_MUDATA_ZARR: 'obsSets.mudata.zarr',
57
+ OBS_EMBEDDING_MUDATA_ZARR: 'obsEmbedding.mudata.zarr',
58
+ OBS_LOCATIONS_MUDATA_ZARR: 'obsLocations.mudata.zarr',
59
+ OBS_SEGMENTATIONS_MUDATA_ZARR: 'obsSegmentations.mudata.zarr',
60
+ OBS_LABELS_MUDATA_ZARR: 'obsLabels.mudata.zarr',
61
+ FEATURE_LABELS_MUDATA_ZARR: 'featureLabels.mudata.zarr',
62
+ GENOMIC_PROFILES_ZARR: 'genomic-profiles.zarr',
63
+ NEIGHBORHOODS_JSON: 'neighborhoods.json',
64
+ // OME-TIFF
65
+ IMAGE_OME_TIFF: 'image.ome-tiff',
66
+ OBS_SEGMENTATIONS_OME_TIFF: 'obsSegmentations.ome-tiff',
67
+ // New file types to support old file types:
68
+ // - cells.json
69
+ OBS_EMBEDDING_CELLS_JSON: 'obsEmbedding.cells.json',
70
+ OBS_SEGMENTATIONS_CELLS_JSON: 'obsSegmentations.cells.json',
71
+ OBS_LOCATIONS_CELLS_JSON: 'obsLocations.cells.json',
72
+ OBS_LABELS_CELLS_JSON: 'obsLabels.cells.json',
73
+ // - cell-sets.json
74
+ OBS_SETS_CELL_SETS_JSON: 'obsSets.cell-sets.json',
75
+ // - genes.json
76
+ OBS_FEATURE_MATRIX_GENES_JSON: 'obsFeatureMatrix.genes.json',
77
+ // - clusters.json
78
+ OBS_FEATURE_MATRIX_CLUSTERS_JSON: 'obsFeatureMatrix.clusters.json',
79
+ // - expression-matrix.zarr
80
+ OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR: 'obsFeatureMatrix.expression-matrix.zarr',
81
+ // - raster.json
82
+ IMAGE_RASTER_JSON: 'image.raster.json',
83
+ OBS_SEGMENTATIONS_RASTER_JSON: 'obsSegmentations.raster.json',
84
+ // - molecules.json
85
+ OBS_LOCATIONS_MOLECULES_JSON: 'obsLocations.molecules.json',
86
+ OBS_LABELS_MOLECULES_JSON: 'obsLabels.molecules.json',
87
+ // Legacy joint file types
88
+ CELLS_JSON: 'cells.json',
89
+ CELL_SETS_JSON: 'cell-sets.json',
90
+ ANNDATA_CELL_SETS_ZARR: 'anndata-cell-sets.zarr',
91
+ ANNDATA_CELLS_ZARR: 'anndata-cells.zarr',
92
+ EXPRESSION_MATRIX_ZARR: 'expression-matrix.zarr',
93
+ MOLECULES_JSON: 'molecules.json',
94
+ RASTER_JSON: 'raster.json',
95
+ RASTER_OME_ZARR: 'raster.ome-zarr',
96
+ CLUSTERS_JSON: 'clusters.json',
97
+ GENES_JSON: 'genes.json',
98
+ ANNDATA_EXPRESSION_MATRIX_ZARR: 'anndata-expression-matrix.zarr',
99
+ };
100
+ /**
101
+ * Constants representing names of coordination types,
102
+ * to help prevent typos.
103
+ */
104
+ export const CoordinationType = {
105
+ DATASET: 'dataset',
106
+ // Entity types
107
+ OBS_TYPE: 'obsType',
108
+ FEATURE_TYPE: 'featureType',
109
+ FEATURE_VALUE_TYPE: 'featureValueType',
110
+ OBS_LABELS_TYPE: 'obsLabelsType',
111
+ // Other types
112
+ EMBEDDING_TYPE: 'embeddingType',
113
+ EMBEDDING_ZOOM: 'embeddingZoom',
114
+ EMBEDDING_ROTATION: 'embeddingRotation',
115
+ EMBEDDING_TARGET_X: 'embeddingTargetX',
116
+ EMBEDDING_TARGET_Y: 'embeddingTargetY',
117
+ EMBEDDING_TARGET_Z: 'embeddingTargetZ',
118
+ EMBEDDING_OBS_SET_POLYGONS_VISIBLE: 'embeddingObsSetPolygonsVisible',
119
+ EMBEDDING_OBS_SET_LABELS_VISIBLE: 'embeddingObsSetLabelsVisible',
120
+ EMBEDDING_OBS_SET_LABEL_SIZE: 'embeddingObsSetLabelSize',
121
+ EMBEDDING_OBS_RADIUS: 'embeddingObsRadius',
122
+ EMBEDDING_OBS_RADIUS_MODE: 'embeddingObsRadiusMode',
123
+ EMBEDDING_OBS_OPACITY: 'embeddingObsOpacity',
124
+ EMBEDDING_OBS_OPACITY_MODE: 'embeddingObsOpacityMode',
125
+ SPATIAL_ZOOM: 'spatialZoom',
126
+ SPATIAL_ROTATION: 'spatialRotation',
127
+ SPATIAL_TARGET_X: 'spatialTargetX',
128
+ SPATIAL_TARGET_Y: 'spatialTargetY',
129
+ SPATIAL_TARGET_Z: 'spatialTargetZ',
130
+ SPATIAL_ROTATION_X: 'spatialRotationX',
131
+ SPATIAL_ROTATION_Y: 'spatialRotationY',
132
+ SPATIAL_ROTATION_Z: 'spatialRotationZ',
133
+ SPATIAL_ROTATION_ORBIT: 'spatialRotationOrbit',
134
+ SPATIAL_ORBIT_AXIS: 'spatialOrbitAxis',
135
+ SPATIAL_AXIS_FIXED: 'spatialAxisFixed',
136
+ HEATMAP_ZOOM_X: 'heatmapZoomX',
137
+ HEATMAP_ZOOM_Y: 'heatmapZoomY',
138
+ HEATMAP_TARGET_X: 'heatmapTargetX',
139
+ HEATMAP_TARGET_Y: 'heatmapTargetY',
140
+ OBS_FILTER: 'obsFilter',
141
+ OBS_HIGHLIGHT: 'obsHighlight',
142
+ OBS_SET_SELECTION: 'obsSetSelection',
143
+ OBS_SET_HIGHLIGHT: 'obsSetHighlight',
144
+ OBS_SET_EXPANSION: 'obsSetExpansion',
145
+ OBS_SET_COLOR: 'obsSetColor',
146
+ FEATURE_FILTER: 'featureFilter',
147
+ FEATURE_HIGHLIGHT: 'featureHighlight',
148
+ FEATURE_SELECTION: 'featureSelection',
149
+ FEATURE_VALUE_COLORMAP: 'featureValueColormap',
150
+ FEATURE_VALUE_TRANSFORM: 'featureValueTransform',
151
+ FEATURE_VALUE_COLORMAP_RANGE: 'featureValueColormapRange',
152
+ OBS_COLOR_ENCODING: 'obsColorEncoding',
153
+ SPATIAL_IMAGE_LAYER: 'spatialImageLayer',
154
+ SPATIAL_SEGMENTATION_LAYER: 'spatialSegmentationLayer',
155
+ SPATIAL_POINT_LAYER: 'spatialPointLayer',
156
+ SPATIAL_NEIGHBORHOOD_LAYER: 'spatialNeighborhoodLayer',
157
+ GENOMIC_ZOOM_X: 'genomicZoomX',
158
+ GENOMIC_ZOOM_Y: 'genomicZoomY',
159
+ GENOMIC_TARGET_X: 'genomicTargetX',
160
+ GENOMIC_TARGET_Y: 'genomicTargetY',
161
+ ADDITIONAL_OBS_SETS: 'additionalObsSets',
162
+ // TODO: use obsHighlight rather than moleculeHighlight.
163
+ MOLECULE_HIGHLIGHT: 'moleculeHighlight',
164
+ GATING_FEATURE_SELECTION_X: 'gatingFeatureSelectionX',
165
+ GATING_FEATURE_SELECTION_Y: 'gatingFeatureSelectionY',
166
+ FEATURE_VALUE_TRANSFORM_COEFFICIENT: 'featureValueTransformCoefficient',
167
+ TOOLTIPS_VISIBLE: 'tooltipsVisible',
168
+ };
169
+ export const STATUS = {
170
+ LOADING: 'loading',
171
+ SUCCESS: 'success',
172
+ ERROR: 'error',
173
+ };
@@ -0,0 +1,14 @@
1
+ export const AUTO_INDEPENDENT_COORDINATION_TYPES: string[];
2
+ /**
3
+ * Mapping from component type to
4
+ * supported coordination object types.
5
+ * This mapping can be used to determine
6
+ * which pieces of state that a component will
7
+ * need to get/set.
8
+ * Keys here are the component registry keys.
9
+ */
10
+ export const COMPONENT_COORDINATION_TYPES: {
11
+ [x: string]: string[];
12
+ higlass: string[];
13
+ };
14
+ //# sourceMappingURL=coordination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordination.d.ts","sourceRoot":"","sources":["../src/coordination.js"],"names":[],"mappings":"AASA,2DAcE;AAEF;;;;;;;KAOK;AACL;;;EA8OE"}
@@ -0,0 +1,270 @@
1
+ import { CoordinationType, ViewType } from './constants.js';
2
+ // The following coordination types should be
3
+ // initialized to independent scopes when
4
+ // initialized automatically.
5
+ // These make the resulting view config
6
+ // (after auto-initialization) behave
7
+ // like "legacy" Vitessce (pre-coordination model).
8
+ // TODO: delegate to PluginCoordinationType class
9
+ export const AUTO_INDEPENDENT_COORDINATION_TYPES = [
10
+ CoordinationType.HEATMAP_ZOOM_X,
11
+ CoordinationType.HEATMAP_ZOOM_Y,
12
+ CoordinationType.HEATMAP_TARGET_X,
13
+ CoordinationType.HEATMAP_TARGET_Y,
14
+ CoordinationType.EMBEDDING_ZOOM,
15
+ CoordinationType.EMBEDDING_TARGET_X,
16
+ CoordinationType.EMBEDDING_TARGET_Y,
17
+ CoordinationType.EMBEDDING_TARGET_Z,
18
+ CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE,
19
+ CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE,
20
+ CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE,
21
+ CoordinationType.EMBEDDING_OBS_RADIUS,
22
+ CoordinationType.EMBEDDING_OBS_OPACITY,
23
+ ];
24
+ /**
25
+ * Mapping from component type to
26
+ * supported coordination object types.
27
+ * This mapping can be used to determine
28
+ * which pieces of state that a component will
29
+ * need to get/set.
30
+ * Keys here are the component registry keys.
31
+ */
32
+ export const COMPONENT_COORDINATION_TYPES = {
33
+ [ViewType.SCATTERPLOT]: [
34
+ CoordinationType.DATASET,
35
+ CoordinationType.OBS_TYPE,
36
+ CoordinationType.FEATURE_TYPE,
37
+ CoordinationType.FEATURE_VALUE_TYPE,
38
+ CoordinationType.OBS_LABELS_TYPE,
39
+ CoordinationType.EMBEDDING_TYPE,
40
+ CoordinationType.EMBEDDING_ZOOM,
41
+ CoordinationType.EMBEDDING_ROTATION,
42
+ CoordinationType.EMBEDDING_TARGET_X,
43
+ CoordinationType.EMBEDDING_TARGET_Y,
44
+ CoordinationType.EMBEDDING_TARGET_Z,
45
+ CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE,
46
+ CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE,
47
+ CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE,
48
+ CoordinationType.EMBEDDING_OBS_RADIUS,
49
+ CoordinationType.EMBEDDING_OBS_RADIUS_MODE,
50
+ CoordinationType.EMBEDDING_OBS_OPACITY,
51
+ CoordinationType.EMBEDDING_OBS_OPACITY_MODE,
52
+ CoordinationType.OBS_FILTER,
53
+ CoordinationType.OBS_HIGHLIGHT,
54
+ CoordinationType.OBS_SET_SELECTION,
55
+ CoordinationType.OBS_SET_HIGHLIGHT,
56
+ CoordinationType.OBS_SET_COLOR,
57
+ CoordinationType.FEATURE_HIGHLIGHT,
58
+ CoordinationType.FEATURE_SELECTION,
59
+ CoordinationType.FEATURE_VALUE_COLORMAP,
60
+ CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
61
+ CoordinationType.OBS_COLOR_ENCODING,
62
+ CoordinationType.ADDITIONAL_OBS_SETS,
63
+ CoordinationType.TOOLTIPS_VISIBLE,
64
+ ],
65
+ [ViewType.GATING]: [
66
+ CoordinationType.DATASET,
67
+ CoordinationType.OBS_TYPE,
68
+ CoordinationType.FEATURE_TYPE,
69
+ CoordinationType.FEATURE_VALUE_TYPE,
70
+ CoordinationType.EMBEDDING_TYPE,
71
+ CoordinationType.EMBEDDING_ZOOM,
72
+ CoordinationType.EMBEDDING_ROTATION,
73
+ CoordinationType.EMBEDDING_TARGET_X,
74
+ CoordinationType.EMBEDDING_TARGET_Y,
75
+ CoordinationType.EMBEDDING_TARGET_Z,
76
+ CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE,
77
+ CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE,
78
+ CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE,
79
+ CoordinationType.EMBEDDING_OBS_RADIUS,
80
+ CoordinationType.EMBEDDING_OBS_RADIUS_MODE,
81
+ CoordinationType.EMBEDDING_OBS_OPACITY,
82
+ CoordinationType.EMBEDDING_OBS_OPACITY_MODE,
83
+ CoordinationType.OBS_FILTER,
84
+ CoordinationType.OBS_HIGHLIGHT,
85
+ CoordinationType.OBS_SET_SELECTION,
86
+ CoordinationType.OBS_SET_HIGHLIGHT,
87
+ CoordinationType.OBS_SET_COLOR,
88
+ CoordinationType.FEATURE_HIGHLIGHT,
89
+ CoordinationType.FEATURE_SELECTION,
90
+ CoordinationType.FEATURE_VALUE_COLORMAP,
91
+ CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
92
+ CoordinationType.OBS_COLOR_ENCODING,
93
+ CoordinationType.ADDITIONAL_OBS_SETS,
94
+ CoordinationType.FEATURE_VALUE_TRANSFORM,
95
+ CoordinationType.FEATURE_VALUE_TRANSFORM_COEFFICIENT,
96
+ CoordinationType.GATING_FEATURE_SELECTION_X,
97
+ CoordinationType.GATING_FEATURE_SELECTION_Y,
98
+ ],
99
+ [ViewType.SPATIAL]: [
100
+ CoordinationType.DATASET,
101
+ CoordinationType.OBS_TYPE,
102
+ CoordinationType.OBS_LABELS_TYPE,
103
+ CoordinationType.FEATURE_TYPE,
104
+ CoordinationType.FEATURE_VALUE_TYPE,
105
+ CoordinationType.SPATIAL_ZOOM,
106
+ CoordinationType.SPATIAL_ROTATION,
107
+ CoordinationType.SPATIAL_IMAGE_LAYER,
108
+ CoordinationType.SPATIAL_SEGMENTATION_LAYER,
109
+ CoordinationType.SPATIAL_POINT_LAYER,
110
+ CoordinationType.SPATIAL_NEIGHBORHOOD_LAYER,
111
+ CoordinationType.SPATIAL_TARGET_X,
112
+ CoordinationType.SPATIAL_TARGET_Y,
113
+ CoordinationType.SPATIAL_TARGET_Z,
114
+ CoordinationType.SPATIAL_ROTATION_X,
115
+ CoordinationType.SPATIAL_ROTATION_Y,
116
+ CoordinationType.SPATIAL_ROTATION_Z,
117
+ CoordinationType.SPATIAL_ROTATION_ORBIT,
118
+ CoordinationType.SPATIAL_ORBIT_AXIS,
119
+ CoordinationType.SPATIAL_AXIS_FIXED,
120
+ CoordinationType.OBS_FILTER,
121
+ CoordinationType.OBS_HIGHLIGHT,
122
+ CoordinationType.OBS_SET_SELECTION,
123
+ CoordinationType.OBS_SET_HIGHLIGHT,
124
+ CoordinationType.OBS_SET_COLOR,
125
+ CoordinationType.FEATURE_HIGHLIGHT,
126
+ CoordinationType.FEATURE_SELECTION,
127
+ CoordinationType.FEATURE_VALUE_COLORMAP,
128
+ CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
129
+ CoordinationType.OBS_COLOR_ENCODING,
130
+ CoordinationType.ADDITIONAL_OBS_SETS,
131
+ CoordinationType.MOLECULE_HIGHLIGHT,
132
+ CoordinationType.TOOLTIPS_VISIBLE,
133
+ ],
134
+ [ViewType.HEATMAP]: [
135
+ CoordinationType.DATASET,
136
+ CoordinationType.OBS_TYPE,
137
+ CoordinationType.OBS_LABELS_TYPE,
138
+ CoordinationType.FEATURE_TYPE,
139
+ CoordinationType.FEATURE_VALUE_TYPE,
140
+ CoordinationType.HEATMAP_ZOOM_X,
141
+ CoordinationType.HEATMAP_ZOOM_Y,
142
+ CoordinationType.HEATMAP_TARGET_X,
143
+ CoordinationType.HEATMAP_TARGET_Y,
144
+ CoordinationType.OBS_FILTER,
145
+ CoordinationType.OBS_HIGHLIGHT,
146
+ CoordinationType.OBS_SET_SELECTION,
147
+ CoordinationType.OBS_SET_HIGHLIGHT,
148
+ CoordinationType.OBS_SET_COLOR,
149
+ CoordinationType.FEATURE_FILTER,
150
+ CoordinationType.FEATURE_HIGHLIGHT,
151
+ CoordinationType.FEATURE_SELECTION,
152
+ CoordinationType.FEATURE_VALUE_COLORMAP,
153
+ CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
154
+ CoordinationType.OBS_COLOR_ENCODING,
155
+ CoordinationType.ADDITIONAL_OBS_SETS,
156
+ CoordinationType.TOOLTIPS_VISIBLE,
157
+ ],
158
+ [ViewType.OBS_SETS]: [
159
+ CoordinationType.DATASET,
160
+ CoordinationType.OBS_TYPE,
161
+ CoordinationType.OBS_SET_SELECTION,
162
+ CoordinationType.OBS_SET_EXPANSION,
163
+ CoordinationType.OBS_SET_HIGHLIGHT,
164
+ CoordinationType.OBS_SET_COLOR,
165
+ CoordinationType.OBS_COLOR_ENCODING,
166
+ CoordinationType.ADDITIONAL_OBS_SETS,
167
+ CoordinationType.FEATURE_SELECTION,
168
+ ],
169
+ [ViewType.OBS_SET_SIZES]: [
170
+ CoordinationType.DATASET,
171
+ CoordinationType.OBS_TYPE,
172
+ CoordinationType.OBS_SET_SELECTION,
173
+ CoordinationType.OBS_SET_EXPANSION,
174
+ CoordinationType.OBS_SET_HIGHLIGHT,
175
+ CoordinationType.OBS_SET_COLOR,
176
+ CoordinationType.ADDITIONAL_OBS_SETS,
177
+ ],
178
+ [ViewType.STATUS]: [
179
+ CoordinationType.DATASET,
180
+ CoordinationType.OBS_HIGHLIGHT,
181
+ CoordinationType.FEATURE_HIGHLIGHT,
182
+ CoordinationType.OBS_SET_HIGHLIGHT,
183
+ CoordinationType.MOLECULE_HIGHLIGHT,
184
+ ],
185
+ [ViewType.FEATURE_LIST]: [
186
+ CoordinationType.DATASET,
187
+ CoordinationType.OBS_TYPE,
188
+ CoordinationType.FEATURE_TYPE,
189
+ CoordinationType.FEATURE_VALUE_TYPE,
190
+ CoordinationType.FEATURE_FILTER,
191
+ CoordinationType.FEATURE_HIGHLIGHT,
192
+ CoordinationType.FEATURE_SELECTION,
193
+ CoordinationType.OBS_COLOR_ENCODING,
194
+ CoordinationType.OBS_SET_SELECTION,
195
+ ],
196
+ [ViewType.OBS_SET_FEATURE_VALUE_DISTRIBUTION]: [
197
+ CoordinationType.DATASET,
198
+ CoordinationType.OBS_TYPE,
199
+ CoordinationType.FEATURE_TYPE,
200
+ CoordinationType.FEATURE_VALUE_TYPE,
201
+ CoordinationType.FEATURE_SELECTION,
202
+ CoordinationType.FEATURE_VALUE_TRANSFORM,
203
+ CoordinationType.FEATURE_VALUE_TRANSFORM_COEFFICIENT,
204
+ CoordinationType.OBS_SET_SELECTION,
205
+ CoordinationType.OBS_SET_HIGHLIGHT,
206
+ CoordinationType.OBS_SET_COLOR,
207
+ CoordinationType.ADDITIONAL_OBS_SETS,
208
+ ],
209
+ [ViewType.FEATURE_VALUE_HISTOGRAM]: [
210
+ CoordinationType.DATASET,
211
+ CoordinationType.OBS_TYPE,
212
+ CoordinationType.FEATURE_TYPE,
213
+ CoordinationType.FEATURE_VALUE_TYPE,
214
+ CoordinationType.FEATURE_SELECTION,
215
+ CoordinationType.ADDITIONAL_OBS_SETS,
216
+ CoordinationType.OBS_SET_COLOR,
217
+ CoordinationType.OBS_COLOR_ENCODING,
218
+ CoordinationType.OBS_SET_SELECTION,
219
+ ],
220
+ [ViewType.LAYER_CONTROLLER]: [
221
+ CoordinationType.DATASET,
222
+ CoordinationType.OBS_TYPE,
223
+ CoordinationType.FEATURE_TYPE,
224
+ CoordinationType.FEATURE_VALUE_TYPE,
225
+ CoordinationType.SPATIAL_IMAGE_LAYER,
226
+ CoordinationType.SPATIAL_SEGMENTATION_LAYER,
227
+ CoordinationType.SPATIAL_POINT_LAYER,
228
+ CoordinationType.SPATIAL_NEIGHBORHOOD_LAYER,
229
+ CoordinationType.SPATIAL_ZOOM,
230
+ CoordinationType.SPATIAL_TARGET_X,
231
+ CoordinationType.SPATIAL_TARGET_Y,
232
+ CoordinationType.SPATIAL_TARGET_Z,
233
+ CoordinationType.SPATIAL_ROTATION_X,
234
+ CoordinationType.SPATIAL_ROTATION_Y,
235
+ CoordinationType.SPATIAL_ROTATION_Z,
236
+ CoordinationType.SPATIAL_ROTATION_ORBIT,
237
+ CoordinationType.SPATIAL_ORBIT_AXIS,
238
+ ],
239
+ [ViewType.GENOMIC_PROFILES]: [
240
+ CoordinationType.DATASET,
241
+ CoordinationType.OBS_TYPE,
242
+ CoordinationType.FEATURE_TYPE,
243
+ CoordinationType.FEATURE_VALUE_TYPE,
244
+ CoordinationType.GENOMIC_ZOOM_X,
245
+ CoordinationType.GENOMIC_ZOOM_Y,
246
+ CoordinationType.GENOMIC_TARGET_X,
247
+ CoordinationType.GENOMIC_TARGET_Y,
248
+ CoordinationType.FEATURE_FILTER,
249
+ CoordinationType.FEATURE_HIGHLIGHT,
250
+ CoordinationType.FEATURE_SELECTION,
251
+ CoordinationType.OBS_SET_SELECTION,
252
+ CoordinationType.OBS_SET_HIGHLIGHT,
253
+ CoordinationType.OBS_SET_COLOR,
254
+ CoordinationType.ADDITIONAL_OBS_SETS,
255
+ ],
256
+ [ViewType.DESCRIPTION]: [
257
+ CoordinationType.DATASET,
258
+ CoordinationType.SPATIAL_IMAGE_LAYER,
259
+ ],
260
+ higlass: [
261
+ CoordinationType.DATASET,
262
+ CoordinationType.GENOMIC_ZOOM_X,
263
+ CoordinationType.GENOMIC_ZOOM_Y,
264
+ CoordinationType.GENOMIC_TARGET_X,
265
+ CoordinationType.GENOMIC_TARGET_Y,
266
+ CoordinationType.FEATURE_FILTER,
267
+ CoordinationType.FEATURE_HIGHLIGHT,
268
+ CoordinationType.FEATURE_SELECTION,
269
+ ],
270
+ };
@@ -0,0 +1,4 @@
1
+ export { ViewType, DataType, FileType, CoordinationType, STATUS } from "./constants.js";
2
+ export { FILE_TYPE_DATA_TYPE_MAPPING, DATA_TYPE_COORDINATION_VALUE_USAGE } from "./constant-relationships.js";
3
+ export { AUTO_INDEPENDENT_COORDINATION_TYPES, COMPONENT_COORDINATION_TYPES } from "./coordination.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":""}
package/dist-tsc/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { ViewType, DataType, FileType, CoordinationType, STATUS, } from './constants';
2
- export { FILE_TYPE_DATA_TYPE_MAPPING, DATA_TYPE_COORDINATION_VALUE_USAGE } from './constant-relationships';
3
- export { DEFAULT_COORDINATION_VALUES, AUTO_INDEPENDENT_COORDINATION_TYPES, COMPONENT_COORDINATION_TYPES } from './coordination';
1
+ export { ViewType, DataType, FileType, CoordinationType, STATUS, } from './constants.js';
2
+ export { FILE_TYPE_DATA_TYPE_MAPPING, DATA_TYPE_COORDINATION_VALUE_USAGE } from './constant-relationships.js';
3
+ export { AUTO_INDEPENDENT_COORDINATION_TYPES, COMPONENT_COORDINATION_TYPES } from './coordination.js';
4
4
  export { default as META_VERSION } from './version.json';
@@ -0,0 +1,7 @@
1
+ {
2
+ "note": "This file is regenerated by push-demo.sh.",
3
+ "version": "3.0.0",
4
+ "branch": "release-v3.0.0",
5
+ "date": "2023-06-05",
6
+ "hash": "74d01aab"
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitessce/constants-internal",
3
- "version": "2.0.3",
3
+ "version": "3.0.0",
4
4
  "author": "Gehlenborg Lab",
5
5
  "homepage": "http://vitessce.io",
6
6
  "repository": {
@@ -8,17 +8,26 @@
8
8
  "url": "git+https://github.com/vitessce/vitessce.git"
9
9
  },
10
10
  "license": "MIT",
11
- "main": "dist/index.mjs",
11
+ "type": "module",
12
+ "main": "dist/index.js",
12
13
  "files": [
14
+ "src",
13
15
  "dist",
14
- "src"
16
+ "dist-tsc"
15
17
  ],
16
18
  "devDependencies": {
17
- "vite": "^3.0.0",
19
+ "vite": "^4.3.0",
18
20
  "vitest": "^0.23.4"
19
21
  },
20
22
  "scripts": {
21
23
  "bundle": "pnpm exec vite build -c ../../scripts/vite.config.js",
22
24
  "test": "pnpm exec vitest --run -r ../../ --dir ."
25
+ },
26
+ "module": "dist/index.js",
27
+ "exports": {
28
+ ".": {
29
+ "types": "./dist-tsc/index.d.ts",
30
+ "import": "./dist/index.js"
31
+ }
23
32
  }
24
33
  }
@@ -1,4 +1,4 @@
1
- import { FileType, DataType, CoordinationType } from './constants';
1
+ import { FileType, DataType, CoordinationType } from './constants.js';
2
2
 
3
3
  /**
4
4
  * Mapping from file types to data types. Each file type
@@ -23,6 +23,8 @@ export const FILE_TYPE_DATA_TYPE_MAPPING = {
23
23
  [FileType.OBS_SEGMENTATIONS_ANNDATA_ZARR]: DataType.OBS_SEGMENTATIONS,
24
24
  [FileType.OBS_LABELS_ANNDATA_ZARR]: DataType.OBS_LABELS,
25
25
  [FileType.FEATURE_LABELS_ANNDATA_ZARR]: DataType.FEATURE_LABELS,
26
+ [FileType.IMAGE_OME_TIFF]: DataType.IMAGE,
27
+ [FileType.OBS_SEGMENTATIONS_OME_TIFF]: DataType.OBS_SEGMENTATIONS,
26
28
  [FileType.OBS_FEATURE_MATRIX_MUDATA_ZARR]: DataType.OBS_FEATURE_MATRIX,
27
29
  [FileType.OBS_SETS_MUDATA_ZARR]: DataType.OBS_SETS,
28
30
  [FileType.OBS_EMBEDDING_MUDATA_ZARR]: DataType.OBS_EMBEDDING,
@@ -1,7 +1,7 @@
1
- import { DataType } from './constants';
1
+ import { DataType } from './constants.js';
2
2
  import {
3
3
  DATA_TYPE_COORDINATION_VALUE_USAGE,
4
- } from './constant-relationships';
4
+ } from './constant-relationships.js';
5
5
 
6
6
  describe('src/app/constant-relationships.js', () => {
7
7
  describe('DataType-to-CoordinationType usage mapping', () => {
package/src/constants.js CHANGED
@@ -64,6 +64,9 @@ export const FileType = {
64
64
  FEATURE_LABELS_MUDATA_ZARR: 'featureLabels.mudata.zarr',
65
65
  GENOMIC_PROFILES_ZARR: 'genomic-profiles.zarr',
66
66
  NEIGHBORHOODS_JSON: 'neighborhoods.json',
67
+ // OME-TIFF
68
+ IMAGE_OME_TIFF: 'image.ome-tiff',
69
+ OBS_SEGMENTATIONS_OME_TIFF: 'obsSegmentations.ome-tiff',
67
70
  // New file types to support old file types:
68
71
  // - cells.json
69
72
  OBS_EMBEDDING_CELLS_JSON: 'obsEmbedding.cells.json',
@@ -142,6 +145,7 @@ export const CoordinationType = {
142
145
  OBS_HIGHLIGHT: 'obsHighlight',
143
146
  OBS_SET_SELECTION: 'obsSetSelection',
144
147
  OBS_SET_HIGHLIGHT: 'obsSetHighlight',
148
+ OBS_SET_EXPANSION: 'obsSetExpansion',
145
149
  OBS_SET_COLOR: 'obsSetColor',
146
150
  FEATURE_FILTER: 'featureFilter',
147
151
  FEATURE_HIGHLIGHT: 'featureHighlight',
@@ -164,6 +168,7 @@ export const CoordinationType = {
164
168
  GATING_FEATURE_SELECTION_X: 'gatingFeatureSelectionX',
165
169
  GATING_FEATURE_SELECTION_Y: 'gatingFeatureSelectionY',
166
170
  FEATURE_VALUE_TRANSFORM_COEFFICIENT: 'featureValueTransformCoefficient',
171
+ TOOLTIPS_VISIBLE: 'tooltipsVisible',
167
172
  };
168
173
 
169
174
  export const STATUS = {
@@ -1,68 +1,4 @@
1
- import { CoordinationType, ViewType } from './constants';
2
-
3
- /**
4
- * Coordination types may have default values,
5
- * which can be defined here, and used by the
6
- * auto initialization strategy.
7
- */
8
- export const DEFAULT_COORDINATION_VALUES = {
9
- [CoordinationType.OBS_TYPE]: 'cell',
10
- [CoordinationType.FEATURE_TYPE]: 'gene',
11
- [CoordinationType.FEATURE_VALUE_TYPE]: 'expression',
12
- [CoordinationType.OBS_LABELS_TYPE]: null,
13
- [CoordinationType.EMBEDDING_ZOOM]: null,
14
- [CoordinationType.EMBEDDING_ROTATION]: 0,
15
- [CoordinationType.EMBEDDING_TARGET_X]: null,
16
- [CoordinationType.EMBEDDING_TARGET_Y]: null,
17
- [CoordinationType.EMBEDDING_TARGET_Z]: 0,
18
- [CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE]: false,
19
- [CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE]: false,
20
- [CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE]: 14,
21
- [CoordinationType.EMBEDDING_OBS_RADIUS]: 1,
22
- [CoordinationType.EMBEDDING_OBS_RADIUS_MODE]: 'auto',
23
- [CoordinationType.EMBEDDING_OBS_OPACITY]: 1,
24
- [CoordinationType.EMBEDDING_OBS_OPACITY_MODE]: 'auto',
25
- [CoordinationType.SPATIAL_ZOOM]: null,
26
- [CoordinationType.SPATIAL_ROTATION]: 0,
27
- [CoordinationType.SPATIAL_TARGET_X]: null,
28
- [CoordinationType.SPATIAL_TARGET_Y]: null,
29
- [CoordinationType.SPATIAL_TARGET_Z]: null,
30
- [CoordinationType.SPATIAL_ROTATION_X]: null,
31
- [CoordinationType.SPATIAL_ROTATION_Y]: null,
32
- [CoordinationType.SPATIAL_ROTATION_Z]: null,
33
- [CoordinationType.SPATIAL_AXIS_FIXED]: false,
34
- [CoordinationType.SPATIAL_ROTATION_ORBIT]: 0,
35
- [CoordinationType.SPATIAL_ORBIT_AXIS]: 'Y',
36
- [CoordinationType.SPATIAL_IMAGE_LAYER]: null,
37
- [CoordinationType.SPATIAL_SEGMENTATION_LAYER]: null,
38
- [CoordinationType.SPATIAL_POINT_LAYER]: null,
39
- [CoordinationType.SPATIAL_NEIGHBORHOOD_LAYER]: null,
40
- [CoordinationType.HEATMAP_ZOOM_X]: 0,
41
- [CoordinationType.HEATMAP_ZOOM_Y]: 0,
42
- [CoordinationType.HEATMAP_TARGET_X]: 0,
43
- [CoordinationType.HEATMAP_TARGET_Y]: 0,
44
- [CoordinationType.FEATURE_VALUE_COLORMAP]: 'plasma',
45
- [CoordinationType.FEATURE_VALUE_COLORMAP_RANGE]: [0.0, 1.0],
46
- [CoordinationType.FEATURE_VALUE_TRANSFORM]: null,
47
- [CoordinationType.FEATURE_VALUE_TRANSFORM_COEFFICIENT]: 1,
48
- [CoordinationType.FEATURE_FILTER]: null,
49
- [CoordinationType.FEATURE_HIGHLIGHT]: null,
50
- [CoordinationType.FEATURE_SELECTION]: null,
51
- [CoordinationType.OBS_FILTER]: null,
52
- [CoordinationType.OBS_HIGHLIGHT]: null,
53
- [CoordinationType.OBS_SET_SELECTION]: null,
54
- [CoordinationType.OBS_SET_HIGHLIGHT]: null,
55
- [CoordinationType.OBS_SET_COLOR]: null,
56
- [CoordinationType.OBS_COLOR_ENCODING]: 'cellSetSelection',
57
- [CoordinationType.GENOMIC_ZOOM_X]: 0,
58
- [CoordinationType.GENOMIC_ZOOM_Y]: 0,
59
- [CoordinationType.GENOMIC_TARGET_X]: 1549999999.5,
60
- [CoordinationType.GENOMIC_TARGET_Y]: 1549999999.5,
61
- [CoordinationType.ADDITIONAL_OBS_SETS]: null,
62
- [CoordinationType.MOLECULE_HIGHLIGHT]: null,
63
- [CoordinationType.GATING_FEATURE_SELECTION_X]: null,
64
- [CoordinationType.GATING_FEATURE_SELECTION_Y]: null,
65
- };
1
+ import { CoordinationType, ViewType } from './constants.js';
66
2
 
67
3
  // The following coordination types should be
68
4
  // initialized to independent scopes when
@@ -70,6 +6,7 @@ export const DEFAULT_COORDINATION_VALUES = {
70
6
  // These make the resulting view config
71
7
  // (after auto-initialization) behave
72
8
  // like "legacy" Vitessce (pre-coordination model).
9
+ // TODO: delegate to PluginCoordinationType class
73
10
  export const AUTO_INDEPENDENT_COORDINATION_TYPES = [
74
11
  CoordinationType.HEATMAP_ZOOM_X,
75
12
  CoordinationType.HEATMAP_ZOOM_Y,
@@ -125,6 +62,7 @@ export const COMPONENT_COORDINATION_TYPES = {
125
62
  CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
126
63
  CoordinationType.OBS_COLOR_ENCODING,
127
64
  CoordinationType.ADDITIONAL_OBS_SETS,
65
+ CoordinationType.TOOLTIPS_VISIBLE,
128
66
  ],
129
67
  [ViewType.GATING]: [
130
68
  CoordinationType.DATASET,
@@ -193,6 +131,7 @@ export const COMPONENT_COORDINATION_TYPES = {
193
131
  CoordinationType.OBS_COLOR_ENCODING,
194
132
  CoordinationType.ADDITIONAL_OBS_SETS,
195
133
  CoordinationType.MOLECULE_HIGHLIGHT,
134
+ CoordinationType.TOOLTIPS_VISIBLE,
196
135
  ],
197
136
  [ViewType.HEATMAP]: [
198
137
  CoordinationType.DATASET,
@@ -216,11 +155,13 @@ export const COMPONENT_COORDINATION_TYPES = {
216
155
  CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
217
156
  CoordinationType.OBS_COLOR_ENCODING,
218
157
  CoordinationType.ADDITIONAL_OBS_SETS,
158
+ CoordinationType.TOOLTIPS_VISIBLE,
219
159
  ],
220
160
  [ViewType.OBS_SETS]: [
221
161
  CoordinationType.DATASET,
222
162
  CoordinationType.OBS_TYPE,
223
163
  CoordinationType.OBS_SET_SELECTION,
164
+ CoordinationType.OBS_SET_EXPANSION,
224
165
  CoordinationType.OBS_SET_HIGHLIGHT,
225
166
  CoordinationType.OBS_SET_COLOR,
226
167
  CoordinationType.OBS_COLOR_ENCODING,
@@ -231,6 +172,7 @@ export const COMPONENT_COORDINATION_TYPES = {
231
172
  CoordinationType.DATASET,
232
173
  CoordinationType.OBS_TYPE,
233
174
  CoordinationType.OBS_SET_SELECTION,
175
+ CoordinationType.OBS_SET_EXPANSION,
234
176
  CoordinationType.OBS_SET_HIGHLIGHT,
235
177
  CoordinationType.OBS_SET_COLOR,
236
178
  CoordinationType.ADDITIONAL_OBS_SETS,
@@ -272,6 +214,10 @@ export const COMPONENT_COORDINATION_TYPES = {
272
214
  CoordinationType.FEATURE_TYPE,
273
215
  CoordinationType.FEATURE_VALUE_TYPE,
274
216
  CoordinationType.FEATURE_SELECTION,
217
+ CoordinationType.ADDITIONAL_OBS_SETS,
218
+ CoordinationType.OBS_SET_COLOR,
219
+ CoordinationType.OBS_COLOR_ENCODING,
220
+ CoordinationType.OBS_SET_SELECTION,
275
221
  ],
276
222
  [ViewType.LAYER_CONTROLLER]: [
277
223
  CoordinationType.DATASET,
package/src/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export {
2
2
  ViewType, DataType, FileType, CoordinationType, STATUS,
3
- } from './constants';
4
- export { FILE_TYPE_DATA_TYPE_MAPPING, DATA_TYPE_COORDINATION_VALUE_USAGE } from './constant-relationships';
5
- export { DEFAULT_COORDINATION_VALUES, AUTO_INDEPENDENT_COORDINATION_TYPES, COMPONENT_COORDINATION_TYPES } from './coordination';
3
+ } from './constants.js';
4
+ export { FILE_TYPE_DATA_TYPE_MAPPING, DATA_TYPE_COORDINATION_VALUE_USAGE } from './constant-relationships.js';
5
+ export { AUTO_INDEPENDENT_COORDINATION_TYPES, COMPONENT_COORDINATION_TYPES } from './coordination.js';
6
6
  export { default as META_VERSION } from './version.json';
package/src/version.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "note": "This file is regenerated by push-demo.sh.",
3
- "version": "2.0.3",
4
- "branch": "release-v2.0.3",
5
- "date": "2023-02-07",
6
- "hash": "ca9494c3"
3
+ "version": "3.0.0",
4
+ "branch": "release-v3.0.0",
5
+ "date": "2023-06-05",
6
+ "hash": "74d01aab"
7
7
  }