@vitessce/all 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.
Files changed (48) hide show
  1. package/dist/{deflate.8ace1ac4.mjs → deflate-f57b3163.js} +2 -2
  2. package/dist/hglib-1422f224.js +138925 -0
  3. package/dist/{index.7dac8670.mjs → index-3f1c1764.js} +67100 -52955
  4. package/dist/index.js +12 -0
  5. package/dist/{jpeg.c8011e3a.mjs → jpeg-e740c9a5.js} +1 -1
  6. package/dist/{lerc.ccda5eb2.mjs → lerc-01e6c4d8.js} +76 -5
  7. package/dist/{lzw.39876143.mjs → lzw-865bd058.js} +1 -1
  8. package/dist/{packbits.9e95d117.mjs → packbits-d4191efd.js} +1 -1
  9. package/dist/{pako.esm.4b234125.mjs → pako.esm-68f84e2a.js} +97 -15
  10. package/dist/{raw.0279d74b.mjs → raw-3c693341.js} +1 -1
  11. package/dist/{webimage.5ac7ce95.mjs → webimage-83da2258.js} +1 -1
  12. package/dist-tsc/Vitessce.d.ts +2 -0
  13. package/dist-tsc/Vitessce.d.ts.map +1 -0
  14. package/dist-tsc/Vitessce.js +41 -0
  15. package/dist-tsc/base-plugins.d.ts +854 -0
  16. package/dist-tsc/base-plugins.d.ts.map +1 -0
  17. package/dist-tsc/base-plugins.js +191 -0
  18. package/dist-tsc/index.d.ts +4 -0
  19. package/dist-tsc/index.d.ts.map +1 -0
  20. package/dist-tsc/index.js +3 -2
  21. package/dist-tsc/joint-file-types-legacy.d.ts +226 -0
  22. package/dist-tsc/joint-file-types-legacy.d.ts.map +1 -0
  23. package/dist-tsc/joint-file-types-legacy.js +266 -0
  24. package/dist-tsc/joint-file-types-legacy.test.d.ts +2 -0
  25. package/dist-tsc/joint-file-types-legacy.test.d.ts.map +1 -0
  26. package/dist-tsc/joint-file-types-legacy.test.js +401 -0
  27. package/dist-tsc/joint-file-types.d.ts +4 -0
  28. package/dist-tsc/joint-file-types.d.ts.map +1 -0
  29. package/dist-tsc/joint-file-types.js +127 -0
  30. package/dist-tsc/joint-file-types.test.d.ts +2 -0
  31. package/dist-tsc/joint-file-types.test.d.ts.map +1 -0
  32. package/dist-tsc/joint-file-types.test.js +128 -0
  33. package/dist-tsc/latest-config-schema.test.d.ts +2 -0
  34. package/dist-tsc/latest-config-schema.test.d.ts.map +1 -0
  35. package/dist-tsc/latest-config-schema.test.js +19 -0
  36. package/package.json +37 -21
  37. package/src/Vitessce.tsx +74 -0
  38. package/src/base-plugins.ts +362 -0
  39. package/src/index.ts +8 -0
  40. package/src/joint-file-types-legacy.test.ts +413 -0
  41. package/src/joint-file-types-legacy.ts +284 -0
  42. package/src/joint-file-types.test.ts +132 -0
  43. package/src/joint-file-types.ts +142 -0
  44. package/src/latest-config-schema.test.ts +26 -0
  45. package/dist/hglib.1f1ea875.mjs +0 -130303
  46. package/dist/index.mjs +0 -11
  47. package/src/index.js +0 -7
  48. package/src/setup.js +0 -143
@@ -0,0 +1,362 @@
1
+ /* eslint-disable max-len */
2
+ import type { ComponentType } from 'react';
3
+ import {
4
+ FileType,
5
+ DataType,
6
+ ViewType,
7
+ CoordinationType,
8
+ COMPONENT_COORDINATION_TYPES,
9
+ } from '@vitessce/constants-internal';
10
+ import {
11
+ PluginFileType,
12
+ PluginJointFileType,
13
+ PluginViewType,
14
+ PluginCoordinationType,
15
+ } from '@vitessce/plugins';
16
+ import type {
17
+ DataLoader,
18
+ DataSource,
19
+ } from '@vitessce/plugins';
20
+ import {
21
+ z,
22
+ obsEmbeddingCsvSchema,
23
+ obsSetsCsvSchema,
24
+ obsLocationsCsvSchema,
25
+ obsLabelsCsvSchema,
26
+ featureLabelsCsvSchema,
27
+ obsSetsAnndataSchema,
28
+ obsEmbeddingAnndataSchema,
29
+ obsLocationsAnndataSchema,
30
+ obsLabelsAnndataSchema,
31
+ obsFeatureMatrixAnndataSchema,
32
+ obsSegmentationsAnndataSchema,
33
+ featureLabelsAnndataSchema,
34
+ rasterJsonSchema,
35
+ anndataZarrSchema,
36
+ anndataCellsZarrSchema,
37
+ anndataCellSetsZarrSchema,
38
+ anndataExpressionMatrixZarrSchema,
39
+ cellsJsonSchema,
40
+ imageOmeZarrSchema,
41
+ imageOmeTiffSchema,
42
+ obsSetPath,
43
+ rgbArray,
44
+ obsSetsSchema,
45
+ imageLayerObj,
46
+ cellsLayerObj,
47
+ neighborhoodsLayerObj,
48
+ moleculesLayerObj,
49
+ } from '@vitessce/schemas';
50
+
51
+ // Register view type plugins
52
+ import { DescriptionSubscriber } from '@vitessce/description';
53
+ import { ObsSetsManagerSubscriber } from '@vitessce/obs-sets-manager';
54
+ import { EmbeddingScatterplotSubscriber } from '@vitessce/scatterplot-embedding';
55
+ import { GatingSubscriber } from '@vitessce/scatterplot-gating';
56
+ import { SpatialSubscriber } from '@vitessce/spatial';
57
+ import { HeatmapSubscriber } from '@vitessce/heatmap';
58
+ import { FeatureListSubscriber } from '@vitessce/feature-list';
59
+ import { LayerControllerSubscriber } from '@vitessce/layer-controller';
60
+ import { StatusSubscriber } from '@vitessce/status';
61
+ import { HiGlassSubscriber, GenomicProfilesSubscriber } from '@vitessce/genomic-profiles';
62
+ import {
63
+ CellSetExpressionPlotSubscriber,
64
+ CellSetSizesPlotSubscriber,
65
+ ExpressionHistogramSubscriber,
66
+ } from '@vitessce/statistical-plots';
67
+
68
+ // Register file type plugins
69
+ import {
70
+ // CSV
71
+ CsvSource,
72
+ ObsSetsCsvLoader,
73
+ ObsEmbeddingCsvLoader,
74
+ ObsLocationsCsvLoader,
75
+ ObsLabelsCsvLoader,
76
+ ObsFeatureMatrixCsvLoader,
77
+ FeatureLabelsCsvLoader,
78
+ } from '@vitessce/csv';
79
+ import {
80
+ // JSON
81
+ JsonSource,
82
+ JsonLoader,
83
+ ObsSegmentationsJsonLoader,
84
+ ObsSetsJsonLoader,
85
+ // Legacy
86
+ RasterJsonAsImageLoader,
87
+ RasterJsonAsObsSegmentationsLoader,
88
+ ClustersJsonAsObsFeatureMatrixLoader,
89
+ GenesJsonAsObsFeatureMatrixLoader,
90
+ CellsJsonAsObsLabelsLoader,
91
+ CellsJsonAsObsEmbeddingLoader,
92
+ CellsJsonAsObsLocationsLoader,
93
+ CellsJsonAsObsSegmentationsLoader,
94
+ MoleculesJsonAsObsLocationsLoader,
95
+ MoleculesJsonAsObsLabelsLoader,
96
+ } from '@vitessce/json';
97
+ import {
98
+ // AnnData
99
+ AnnDataSource,
100
+ ObsFeatureMatrixAnndataLoader,
101
+ ObsEmbeddingAnndataLoader,
102
+ ObsLocationsAnndataLoader,
103
+ ObsSegmentationsAnndataLoader,
104
+ ObsSetsAnndataLoader,
105
+ ObsLabelsAnndataLoader,
106
+ FeatureLabelsAnndataLoader,
107
+ // MuData
108
+ MuDataSource,
109
+ // OME
110
+ OmeZarrLoader,
111
+ // Legacy
112
+ ZarrDataSource,
113
+ MatrixZarrAsObsFeatureMatrixLoader,
114
+ GenomicProfilesZarrLoader,
115
+ } from '@vitessce/zarr';
116
+ import {
117
+ OmeTiffAsObsSegmentationsLoader,
118
+ OmeTiffLoader,
119
+ OmeTiffSource,
120
+ } from '@vitessce/ome-tiff';
121
+
122
+ // Joint file types
123
+ import {
124
+ expandAnndataZarr,
125
+ } from './joint-file-types.js';
126
+ import {
127
+ expandAnndataCellSetsZarr,
128
+ expandAnndataCellsZarr,
129
+ expandAnndataExpressionMatrixZarr,
130
+ expandCellSetsJson,
131
+ expandCellsJson,
132
+ expandClustersJson,
133
+ expandExpressionMatrixZarr,
134
+ expandGenesJson,
135
+ expandMoleculesJson,
136
+ expandRasterJson,
137
+ expandRasterOmeZarr,
138
+ } from './joint-file-types-legacy.js';
139
+
140
+ // Helper function to use COMPONENT_COORDINATION_TYPES.
141
+ function makeViewType(name: string, component: any) {
142
+ return new PluginViewType(name, component as ComponentType, COMPONENT_COORDINATION_TYPES[name]);
143
+ }
144
+
145
+ function makeFileType<T1 extends DataLoader, T2 extends DataSource>(name: string, dataType: string, dataLoaderClass: any, dataSourceClass: any, optionsSchema: z.ZodTypeAny) {
146
+ return new PluginFileType(name, dataType, dataLoaderClass as T1, dataSourceClass as T2, optionsSchema);
147
+ }
148
+
149
+ export const baseViewTypes = [
150
+ makeViewType(ViewType.DESCRIPTION, DescriptionSubscriber),
151
+ makeViewType(ViewType.OBS_SETS, ObsSetsManagerSubscriber),
152
+ makeViewType(ViewType.SCATTERPLOT, EmbeddingScatterplotSubscriber),
153
+ makeViewType(ViewType.GATING, GatingSubscriber),
154
+ makeViewType(ViewType.SPATIAL, SpatialSubscriber),
155
+ makeViewType(ViewType.HEATMAP, HeatmapSubscriber),
156
+ makeViewType(ViewType.FEATURE_LIST, FeatureListSubscriber),
157
+ makeViewType(ViewType.LAYER_CONTROLLER, LayerControllerSubscriber),
158
+ makeViewType(ViewType.STATUS, StatusSubscriber),
159
+ makeViewType(ViewType.OBS_SET_FEATURE_VALUE_DISTRIBUTION, CellSetExpressionPlotSubscriber),
160
+ makeViewType(ViewType.OBS_SET_SIZES, CellSetSizesPlotSubscriber),
161
+ makeViewType(ViewType.FEATURE_VALUE_HISTOGRAM, ExpressionHistogramSubscriber),
162
+ makeViewType('higlass', HiGlassSubscriber),
163
+ makeViewType(ViewType.GENOMIC_PROFILES, GenomicProfilesSubscriber),
164
+ ];
165
+
166
+ export const baseFileTypes = [
167
+ // All CSV file types
168
+ makeFileType(FileType.OBS_SETS_CSV, DataType.OBS_SETS, ObsSetsCsvLoader, CsvSource, obsSetsCsvSchema),
169
+ makeFileType(FileType.OBS_EMBEDDING_CSV, DataType.OBS_EMBEDDING, ObsEmbeddingCsvLoader, CsvSource, obsEmbeddingCsvSchema),
170
+ makeFileType(FileType.OBS_LOCATIONS_CSV, DataType.OBS_LOCATIONS, ObsLocationsCsvLoader, CsvSource, obsLocationsCsvSchema),
171
+ makeFileType(FileType.OBS_LABELS_CSV, DataType.OBS_LABELS, ObsLabelsCsvLoader, CsvSource, obsLabelsCsvSchema),
172
+ makeFileType(FileType.OBS_FEATURE_MATRIX_CSV, DataType.OBS_FEATURE_MATRIX, ObsFeatureMatrixCsvLoader, CsvSource, z.null()),
173
+ makeFileType(FileType.FEATURE_LABELS_CSV, DataType.FEATURE_LABELS, FeatureLabelsCsvLoader, CsvSource, featureLabelsCsvSchema),
174
+ // All JSON file types
175
+ makeFileType(FileType.OBS_SEGMENTATIONS_JSON, DataType.OBS_SEGMENTATIONS, ObsSegmentationsJsonLoader, JsonSource, z.null()),
176
+ makeFileType(FileType.OBS_SETS_JSON, DataType.OBS_SETS, ObsSetsJsonLoader, JsonSource, z.null()),
177
+ // All AnnData file types
178
+ makeFileType(FileType.OBS_SETS_ANNDATA_ZARR, DataType.OBS_SETS, ObsSetsAnndataLoader, AnnDataSource, obsSetsAnndataSchema),
179
+ makeFileType(FileType.OBS_EMBEDDING_ANNDATA_ZARR, DataType.OBS_EMBEDDING, ObsEmbeddingAnndataLoader, AnnDataSource, obsEmbeddingAnndataSchema),
180
+ makeFileType(FileType.OBS_LOCATIONS_ANNDATA_ZARR, DataType.OBS_LOCATIONS, ObsLocationsAnndataLoader, AnnDataSource, obsLocationsAnndataSchema),
181
+ makeFileType(FileType.OBS_LABELS_ANNDATA_ZARR, DataType.OBS_LABELS, ObsLabelsAnndataLoader, AnnDataSource, obsLabelsAnndataSchema),
182
+ makeFileType(FileType.OBS_FEATURE_MATRIX_ANNDATA_ZARR, DataType.OBS_FEATURE_MATRIX, ObsFeatureMatrixAnndataLoader, AnnDataSource, obsFeatureMatrixAnndataSchema),
183
+ makeFileType(FileType.OBS_SEGMENTATIONS_ANNDATA_ZARR, DataType.OBS_SEGMENTATIONS, ObsSegmentationsAnndataLoader, AnnDataSource, obsSegmentationsAnndataSchema),
184
+ makeFileType(FileType.FEATURE_LABELS_ANNDATA_ZARR, DataType.FEATURE_LABELS, FeatureLabelsAnndataLoader, AnnDataSource, featureLabelsAnndataSchema),
185
+ // All MuData file types
186
+ makeFileType(FileType.OBS_SETS_MUDATA_ZARR, DataType.OBS_SETS, ObsSetsAnndataLoader, MuDataSource, obsSetsAnndataSchema),
187
+ makeFileType(FileType.OBS_EMBEDDING_MUDATA_ZARR, DataType.OBS_EMBEDDING, ObsEmbeddingAnndataLoader, MuDataSource, obsEmbeddingAnndataSchema),
188
+ makeFileType(FileType.OBS_LOCATIONS_MUDATA_ZARR, DataType.OBS_LOCATIONS, ObsLocationsAnndataLoader, MuDataSource, obsLocationsAnndataSchema),
189
+ makeFileType(FileType.OBS_LABELS_MUDATA_ZARR, DataType.OBS_LABELS, ObsLabelsAnndataLoader, MuDataSource, obsLabelsAnndataSchema),
190
+ makeFileType(FileType.OBS_FEATURE_MATRIX_MUDATA_ZARR, DataType.OBS_FEATURE_MATRIX, ObsFeatureMatrixAnndataLoader, MuDataSource, obsFeatureMatrixAnndataSchema),
191
+ makeFileType(FileType.OBS_SEGMENTATIONS_MUDATA_ZARR, DataType.OBS_SEGMENTATIONS, ObsSegmentationsAnndataLoader, MuDataSource, obsSegmentationsAnndataSchema),
192
+ makeFileType(FileType.FEATURE_LABELS_MUDATA_ZARR, DataType.FEATURE_LABELS, FeatureLabelsAnndataLoader, MuDataSource, featureLabelsAnndataSchema),
193
+ // All OME file types
194
+ makeFileType(FileType.IMAGE_OME_ZARR, DataType.IMAGE, OmeZarrLoader, ZarrDataSource, imageOmeZarrSchema),
195
+ makeFileType(FileType.IMAGE_OME_TIFF, DataType.IMAGE, OmeTiffLoader, OmeTiffSource, imageOmeTiffSchema),
196
+ makeFileType(FileType.OBS_SEGMENTATIONS_OME_TIFF, DataType.OBS_SEGMENTATIONS, OmeTiffAsObsSegmentationsLoader, OmeTiffSource, imageOmeZarrSchema),
197
+ // All legacy file types
198
+ makeFileType(FileType.OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR, DataType.OBS_FEATURE_MATRIX, MatrixZarrAsObsFeatureMatrixLoader, ZarrDataSource, z.null()),
199
+ makeFileType(FileType.IMAGE_RASTER_JSON, DataType.IMAGE, RasterJsonAsImageLoader, JsonSource, rasterJsonSchema),
200
+ makeFileType(FileType.OBS_SEGMENTATIONS_RASTER_JSON, DataType.OBS_SEGMENTATIONS, RasterJsonAsObsSegmentationsLoader, JsonSource, rasterJsonSchema),
201
+ makeFileType(FileType.OBS_SETS_CELL_SETS_JSON, DataType.OBS_SETS, ObsSetsJsonLoader, JsonSource, z.null()),
202
+ makeFileType(FileType.OBS_FEATURE_MATRIX_CLUSTERS_JSON, DataType.OBS_FEATURE_MATRIX, ClustersJsonAsObsFeatureMatrixLoader, JsonSource, z.null()),
203
+ makeFileType(FileType.OBS_FEATURE_MATRIX_GENES_JSON, DataType.OBS_FEATURE_MATRIX, GenesJsonAsObsFeatureMatrixLoader, JsonSource, z.null()),
204
+ makeFileType(FileType.OBS_LABELS_CELLS_JSON, DataType.OBS_LABELS, CellsJsonAsObsLabelsLoader, JsonSource, z.null()),
205
+ makeFileType(FileType.OBS_EMBEDDING_CELLS_JSON, DataType.OBS_EMBEDDING, CellsJsonAsObsEmbeddingLoader, JsonSource, z.null()),
206
+ makeFileType(FileType.OBS_LOCATIONS_CELLS_JSON, DataType.OBS_LOCATIONS, CellsJsonAsObsLocationsLoader, JsonSource, z.null()),
207
+ makeFileType(FileType.OBS_SEGMENTATIONS_CELLS_JSON, DataType.OBS_SEGMENTATIONS, CellsJsonAsObsSegmentationsLoader, JsonSource, z.null()),
208
+ makeFileType(FileType.OBS_LOCATIONS_MOLECULES_JSON, DataType.OBS_LOCATIONS, MoleculesJsonAsObsLocationsLoader, JsonSource, z.null()),
209
+ makeFileType(FileType.OBS_LABELS_MOLECULES_JSON, DataType.OBS_LABELS, MoleculesJsonAsObsLabelsLoader, JsonSource, z.null()),
210
+ makeFileType(FileType.NEIGHBORHOODS_JSON, DataType.NEIGHBORHOODS, JsonLoader, JsonSource, z.null()),
211
+ makeFileType(FileType.GENOMIC_PROFILES_ZARR, DataType.GENOMIC_PROFILES, GenomicProfilesZarrLoader, ZarrDataSource, z.null()),
212
+ ];
213
+
214
+ export const baseJointFileTypes = [
215
+ new PluginJointFileType(FileType.ANNDATA_ZARR, expandAnndataZarr, anndataZarrSchema),
216
+ // For legacy file types:
217
+ new PluginJointFileType(FileType.ANNDATA_CELLS_ZARR, expandAnndataCellsZarr, anndataCellsZarrSchema),
218
+ new PluginJointFileType(FileType.ANNDATA_CELL_SETS_ZARR, expandAnndataCellSetsZarr, anndataCellSetsZarrSchema),
219
+ new PluginJointFileType(FileType.ANNDATA_EXPRESSION_MATRIX_ZARR, expandAnndataExpressionMatrixZarr, anndataExpressionMatrixZarrSchema),
220
+ new PluginJointFileType(FileType.EXPRESSION_MATRIX_ZARR, expandExpressionMatrixZarr, z.null()),
221
+ new PluginJointFileType(FileType.RASTER_JSON, expandRasterJson, rasterJsonSchema),
222
+ new PluginJointFileType(FileType.RASTER_OME_ZARR, expandRasterOmeZarr, z.null()),
223
+ new PluginJointFileType(FileType.CELL_SETS_JSON, expandCellSetsJson, z.null()),
224
+ new PluginJointFileType(FileType.CLUSTERS_JSON, expandClustersJson, z.null()),
225
+ new PluginJointFileType(FileType.GENES_JSON, expandGenesJson, z.null()),
226
+ new PluginJointFileType(FileType.CELLS_JSON, expandCellsJson, cellsJsonSchema),
227
+ new PluginJointFileType(FileType.MOLECULES_JSON, expandMoleculesJson, z.null()),
228
+ ];
229
+
230
+ // TODO: should these schemas be imported from a common location in package/ rather than here in packages/main/?
231
+ // That would allow view implementations to depend on them for type checking and their default values.
232
+ export const baseCoordinationTypes = [
233
+ new PluginCoordinationType(CoordinationType.DATASET, null, z.string().nullable()),
234
+ new PluginCoordinationType(CoordinationType.OBS_TYPE, 'cell', z.string()),
235
+ new PluginCoordinationType(CoordinationType.FEATURE_TYPE, 'gene', z.string()),
236
+ new PluginCoordinationType(CoordinationType.FEATURE_VALUE_TYPE, 'expression', z.string()),
237
+ new PluginCoordinationType(CoordinationType.OBS_LABELS_TYPE, null, z.string().nullable()),
238
+ new PluginCoordinationType(CoordinationType.EMBEDDING_ZOOM, null, z.number().nullable()),
239
+ new PluginCoordinationType(CoordinationType.EMBEDDING_ROTATION, 0, z.number().nullable()),
240
+ new PluginCoordinationType(CoordinationType.EMBEDDING_TARGET_X, null, z.number().nullable()),
241
+ new PluginCoordinationType(CoordinationType.EMBEDDING_TARGET_Y, null, z.number().nullable()),
242
+ new PluginCoordinationType(CoordinationType.EMBEDDING_TARGET_Z, 0, z.number().nullable()),
243
+ new PluginCoordinationType(CoordinationType.EMBEDDING_TYPE, null, z.string().nullable()),
244
+ new PluginCoordinationType(
245
+ CoordinationType.EMBEDDING_OBS_SET_POLYGONS_VISIBLE,
246
+ false,
247
+ z.boolean(),
248
+ ),
249
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_SET_LABELS_VISIBLE, false, z.boolean()),
250
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_SET_LABEL_SIZE, 14, z.number()),
251
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_RADIUS, 1, z.number()),
252
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_OPACITY, 1, z.number()),
253
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_RADIUS_MODE, 'auto', z.enum(['manual', 'auto'])),
254
+ new PluginCoordinationType(CoordinationType.EMBEDDING_OBS_OPACITY_MODE, 'auto', z.enum(['manual', 'auto'])),
255
+ new PluginCoordinationType(CoordinationType.SPATIAL_ZOOM, null, z.number().nullable()),
256
+ new PluginCoordinationType(CoordinationType.SPATIAL_ROTATION, 0, z.number().nullable()),
257
+ new PluginCoordinationType(CoordinationType.SPATIAL_TARGET_X, null, z.number().nullable()),
258
+ new PluginCoordinationType(CoordinationType.SPATIAL_TARGET_Y, null, z.number().nullable()),
259
+ new PluginCoordinationType(CoordinationType.SPATIAL_TARGET_Z, null, z.number().nullable()),
260
+ new PluginCoordinationType(CoordinationType.SPATIAL_ROTATION_X, null, z.number().nullable()),
261
+ new PluginCoordinationType(CoordinationType.SPATIAL_ROTATION_Y, null, z.number().nullable()),
262
+ new PluginCoordinationType(CoordinationType.SPATIAL_ROTATION_Z, null, z.number().nullable()),
263
+ new PluginCoordinationType(CoordinationType.SPATIAL_ROTATION_ORBIT, 0, z.number().nullable()),
264
+ new PluginCoordinationType(CoordinationType.SPATIAL_ORBIT_AXIS, 'Y', z.string().nullable()),
265
+ new PluginCoordinationType(CoordinationType.SPATIAL_AXIS_FIXED, false, z.boolean().nullable()),
266
+ new PluginCoordinationType(CoordinationType.SPATIAL_IMAGE_LAYER, null, imageLayerObj.nullable()),
267
+ new PluginCoordinationType(
268
+ CoordinationType.SPATIAL_SEGMENTATION_LAYER,
269
+ null,
270
+ z.union([
271
+ cellsLayerObj, imageLayerObj,
272
+ ]).nullable(),
273
+ ),
274
+ new PluginCoordinationType(
275
+ CoordinationType.SPATIAL_NEIGHBORHOOD_LAYER,
276
+ null,
277
+ neighborhoodsLayerObj.nullable(),
278
+ ),
279
+ new PluginCoordinationType(
280
+ CoordinationType.SPATIAL_POINT_LAYER,
281
+ null,
282
+ moleculesLayerObj.nullable(),
283
+ ),
284
+ new PluginCoordinationType(CoordinationType.HEATMAP_ZOOM_X, 0, z.number()),
285
+ new PluginCoordinationType(CoordinationType.HEATMAP_ZOOM_Y, 0, z.number()),
286
+ new PluginCoordinationType(CoordinationType.HEATMAP_TARGET_X, 0, z.number()),
287
+ new PluginCoordinationType(CoordinationType.HEATMAP_TARGET_Y, 0, z.number()),
288
+ new PluginCoordinationType(CoordinationType.OBS_FILTER, null, z.array(z.string()).nullable()),
289
+ new PluginCoordinationType(CoordinationType.OBS_HIGHLIGHT, null, z.string().nullable()),
290
+ new PluginCoordinationType(
291
+ CoordinationType.OBS_SET_SELECTION,
292
+ null,
293
+ z.array(obsSetPath).nullable(),
294
+ ),
295
+ new PluginCoordinationType(
296
+ CoordinationType.OBS_SET_EXPANSION,
297
+ null,
298
+ z.array(obsSetPath).nullable(),
299
+ ),
300
+ new PluginCoordinationType(CoordinationType.OBS_SET_HIGHLIGHT, null, obsSetPath.nullable()),
301
+ new PluginCoordinationType(
302
+ CoordinationType.OBS_SET_COLOR,
303
+ null,
304
+ z.array(z.object({
305
+ path: obsSetPath,
306
+ color: rgbArray,
307
+ })).nullable(),
308
+ ),
309
+ new PluginCoordinationType(
310
+ CoordinationType.OBS_COLOR_ENCODING,
311
+ 'cellSetSelection',
312
+ z.enum(['geneSelection', 'cellSetSelection']),
313
+ ),
314
+ new PluginCoordinationType(CoordinationType.FEATURE_FILTER, null, z.array(z.string()).nullable()),
315
+ new PluginCoordinationType(CoordinationType.FEATURE_HIGHLIGHT, null, z.string().nullable()),
316
+ new PluginCoordinationType(
317
+ CoordinationType.FEATURE_SELECTION,
318
+ null,
319
+ z.array(z.string()).nullable(),
320
+ ),
321
+ new PluginCoordinationType(
322
+ CoordinationType.FEATURE_VALUE_TRANSFORM,
323
+ null,
324
+ z.enum(['log1p', 'arcsinh']).nullable(),
325
+ ),
326
+ new PluginCoordinationType(
327
+ CoordinationType.FEATURE_VALUE_TRANSFORM_COEFFICIENT,
328
+ 1,
329
+ z.number(),
330
+ ),
331
+ new PluginCoordinationType(
332
+ CoordinationType.TOOLTIPS_VISIBLE,
333
+ true,
334
+ z.boolean(),
335
+ ),
336
+ new PluginCoordinationType(
337
+ CoordinationType.FEATURE_VALUE_COLORMAP,
338
+ 'plasma',
339
+ z.string().nullable(),
340
+ ),
341
+ new PluginCoordinationType(
342
+ CoordinationType.FEATURE_VALUE_COLORMAP_RANGE,
343
+ [0.0, 1.0],
344
+ z.array(z.number()).length(2),
345
+ ),
346
+ new PluginCoordinationType(
347
+ CoordinationType.GATING_FEATURE_SELECTION_X,
348
+ null,
349
+ z.string().nullable(),
350
+ ),
351
+ new PluginCoordinationType(
352
+ CoordinationType.GATING_FEATURE_SELECTION_Y,
353
+ null,
354
+ z.string().nullable(),
355
+ ),
356
+ new PluginCoordinationType(CoordinationType.GENOMIC_ZOOM_X, 0, z.number()),
357
+ new PluginCoordinationType(CoordinationType.GENOMIC_ZOOM_Y, 0, z.number()),
358
+ new PluginCoordinationType(CoordinationType.GENOMIC_TARGET_X, 1549999999.5, z.number()),
359
+ new PluginCoordinationType(CoordinationType.GENOMIC_TARGET_Y, 1549999999.5, z.number()),
360
+ new PluginCoordinationType(CoordinationType.ADDITIONAL_OBS_SETS, null, obsSetsSchema.nullable()),
361
+ new PluginCoordinationType(CoordinationType.MOLECULE_HIGHLIGHT, null, z.string().nullable()),
362
+ ];
package/src/index.ts ADDED
@@ -0,0 +1,8 @@
1
+ export { Vitessce } from './Vitessce.js';
2
+ export {
3
+ PluginFileType,
4
+ PluginViewType,
5
+ PluginCoordinationType,
6
+ PluginJointFileType,
7
+ } from '@vitessce/plugins';
8
+ export { z } from '@vitessce/schemas';