@vitessce/all 3.4.12 → 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.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { b4, b2, b0, b3, b1, a$, b5 } from "./index-8ed3997f.js";
1
+ import { b4, b2, b0, b3, b1, a$, b5 } from "./index-509a394d.js";
2
2
  import { useComplexCoordination, useComplexCoordinationSecondary, useCoordination, useCoordinationScopes, useCoordinationScopesBy, useGridItemSize, useMultiCoordinationScopesNonNull, useMultiCoordinationScopesSecondaryNonNull } from "@vitessce/vit-s";
3
3
  import "react";
4
4
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aP as BaseDecoder } from "./index-8ed3997f.js";
1
+ import { aP as BaseDecoder } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1,5 +1,5 @@
1
1
  import { i as inflate_1 } from "./pako.esm-68f84e2a.js";
2
- import { g as getDefaultExportFromCjs, aP as BaseDecoder, aQ as LercParameters, aR as LercAddCompression } from "./index-8ed3997f.js";
2
+ import { g as getDefaultExportFromCjs, aP as BaseDecoder, aQ as LercParameters, aR as LercAddCompression } from "./index-509a394d.js";
3
3
  import "react";
4
4
  import "@vitessce/vit-s";
5
5
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aP as BaseDecoder } from "./index-8ed3997f.js";
1
+ import { aP as BaseDecoder } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aP as BaseDecoder } from "./index-8ed3997f.js";
1
+ import { aP as BaseDecoder } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aP as BaseDecoder } from "./index-8ed3997f.js";
1
+ import { aP as BaseDecoder } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aB as UniformsUtils, aV as MeshDepthMaterial, aW as RGBADepthPacking, aX as MeshDistanceMaterial, aY as ShaderChunk, T as Texture, Z as LinearFilter, aw as InstancedBufferGeometry, au as Sphere, at as Box3, aH as BackSide, a4 as DoubleSide, aZ as InstancedBufferAttribute, V as Vector2, aD as Vector4, h as Color, aJ as Matrix3, a7 as Mesh, ao as FrontSide, a_ as PlaneGeometry, f as BufferGeometry, ax as Float32BufferAttribute, y as MeshBasicMaterial, k as Matrix4, b as Vector3 } from "./index-8ed3997f.js";
1
+ import { aB as UniformsUtils, aV as MeshDepthMaterial, aW as RGBADepthPacking, aX as MeshDistanceMaterial, aY as ShaderChunk, T as Texture, Z as LinearFilter, aw as InstancedBufferGeometry, au as Sphere, at as Box3, aH as BackSide, a4 as DoubleSide, aZ as InstancedBufferAttribute, V as Vector2, aD as Vector4, h as Color, aJ as Matrix3, a7 as Mesh, ao as FrontSide, a_ as PlaneGeometry, f as BufferGeometry, ax as Float32BufferAttribute, y as MeshBasicMaterial, k as Matrix4, b as Vector3 } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1,4 +1,4 @@
1
- import { aP as BaseDecoder } from "./index-8ed3997f.js";
1
+ import { aP as BaseDecoder } from "./index-509a394d.js";
2
2
  import "react";
3
3
  import "@vitessce/vit-s";
4
4
  import "react-dom";
@@ -1 +1 @@
1
- {"version":3,"file":"Vitessce.d.ts","sourceRoot":"","sources":["../src/Vitessce.tsx"],"names":[],"mappings":"AAgBA,wBAAgB,QAAQ,CAAC,KAAK,EAAE,GAAG,2CAiElC"}
1
+ {"version":3,"file":"Vitessce.d.ts","sourceRoot":"","sources":["../src/Vitessce.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,QAAQ,CAAC,KAAK,EAAE,GAAG,2CAmElC"}
@@ -3,9 +3,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useMemo } from 'react';
4
4
  import { VitS, logConfig, } from '@vitessce/vit-s';
5
5
  import { upgradeAndParse, } from '@vitessce/schemas';
6
- import { baseViewTypes, baseFileTypes, baseJointFileTypes, baseCoordinationTypes, } from './base-plugins.js';
6
+ import { baseViewTypes, baseFileTypes, baseJointFileTypes, baseCoordinationTypes, baseAsyncFunctions, } from './base-plugins.js';
7
7
  export function Vitessce(props) {
8
- const { config, onConfigUpgrade, pluginViewTypes: pluginViewTypesProp, pluginFileTypes: pluginFileTypesProp, pluginCoordinationTypes: pluginCoordinationTypesProp, pluginJointFileTypes: pluginJointFileTypesProp, pluginAsyncFunctions, } = props;
8
+ const { config, onConfigUpgrade, pluginViewTypes: pluginViewTypesProp, pluginFileTypes: pluginFileTypesProp, pluginCoordinationTypes: pluginCoordinationTypesProp, pluginJointFileTypes: pluginJointFileTypesProp, pluginAsyncFunctions: pluginAsyncFunctionsProp, } = props;
9
9
  // If config.uid exists, then use it for hook dependencies to detect changes
10
10
  // (controlled component case). If not, then use the config object itself
11
11
  // and assume the un-controlled component case.
@@ -41,6 +41,8 @@ export function Vitessce(props) {
41
41
  const mergedPluginCoordinationTypes = useMemo(() => ([
42
42
  ...baseCoordinationTypes, ...(pluginCoordinationTypesProp || []),
43
43
  ]), [pluginCoordinationTypesProp]);
44
- // TODO: merge with a set of "base" async functions
45
- return (_jsx(VitS, { ...props, config: configOrWarning, viewTypes: mergedPluginViewTypes, fileTypes: mergedPluginFileTypes, jointFileTypes: mergedPluginJointFileTypes, coordinationTypes: mergedPluginCoordinationTypes, asyncFunctions: pluginAsyncFunctions, warning: (success ? null : configOrWarning) }));
44
+ const mergedPluginAsyncFunctions = useMemo(() => ([
45
+ ...baseAsyncFunctions, ...(pluginAsyncFunctionsProp || []),
46
+ ]), [pluginAsyncFunctionsProp]);
47
+ return (_jsx(VitS, { ...props, config: configOrWarning, viewTypes: mergedPluginViewTypes, fileTypes: mergedPluginFileTypes, jointFileTypes: mergedPluginJointFileTypes, coordinationTypes: mergedPluginCoordinationTypes, asyncFunctions: mergedPluginAsyncFunctions, warning: (success ? null : configOrWarning) }));
46
48
  }
@@ -1,4 +1,4 @@
1
- import { PluginFileType, PluginJointFileType, PluginViewType, PluginCoordinationType } from '@vitessce/plugins';
1
+ import { PluginFileType, PluginJointFileType, PluginViewType, PluginCoordinationType, PluginAsyncFunction } from '@vitessce/plugins';
2
2
  import type { DataLoader, DataSource } from '@vitessce/plugins';
3
3
  import { z } from '@vitessce/schemas';
4
4
  export declare const baseViewTypes: PluginViewType[];
@@ -228,87 +228,59 @@ export declare const baseJointFileTypes: (PluginJointFileType<z.ZodObject<{
228
228
  } | undefined;
229
229
  }>> | PluginJointFileType<z.ZodObject<{
230
230
  image: z.ZodOptional<z.ZodObject<{
231
- coordinateTransformations: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
232
- type: z.ZodLiteral<"identity">;
233
- }, "strip", z.ZodTypeAny, {
234
- type: "identity";
235
- }, {
236
- type: "identity";
237
- }>, z.ZodObject<{
238
- type: z.ZodLiteral<"translation">;
239
- translation: z.ZodArray<z.ZodNumber, "many">;
240
- }, "strip", z.ZodTypeAny, {
241
- type: "translation";
242
- translation: number[];
243
- }, {
244
- type: "translation";
245
- translation: number[];
246
- }>, z.ZodObject<{
247
- type: z.ZodLiteral<"scale">;
248
- scale: z.ZodArray<z.ZodNumber, "many">;
249
- }, "strip", z.ZodTypeAny, {
250
- type: "scale";
251
- scale: number[];
252
- }, {
253
- type: "scale";
254
- scale: number[];
255
- }>]>, "many">>;
256
231
  path: z.ZodString;
232
+ coordinateSystem: z.ZodOptional<z.ZodString>;
257
233
  }, "strip", z.ZodTypeAny, {
258
234
  path: string;
259
- coordinateTransformations?: ({
260
- type: "identity";
261
- } | {
262
- type: "translation";
263
- translation: number[];
264
- } | {
265
- type: "scale";
266
- scale: number[];
267
- })[] | undefined;
235
+ coordinateSystem?: string | undefined;
268
236
  }, {
269
237
  path: string;
270
- coordinateTransformations?: ({
271
- type: "identity";
272
- } | {
273
- type: "translation";
274
- translation: number[];
275
- } | {
276
- type: "scale";
277
- scale: number[];
278
- })[] | undefined;
238
+ coordinateSystem?: string | undefined;
279
239
  }>>;
280
240
  labels: z.ZodOptional<z.ZodObject<{
281
241
  path: z.ZodString;
242
+ tablePath: z.ZodOptional<z.ZodString>;
243
+ coordinateSystem: z.ZodOptional<z.ZodString>;
282
244
  }, "strip", z.ZodTypeAny, {
283
245
  path: string;
246
+ tablePath?: string | undefined;
247
+ coordinateSystem?: string | undefined;
284
248
  }, {
285
249
  path: string;
250
+ tablePath?: string | undefined;
251
+ coordinateSystem?: string | undefined;
286
252
  }>>;
287
253
  obsFeatureMatrix: z.ZodOptional<z.ZodObject<{
288
254
  path: z.ZodString;
289
255
  featureFilterPath: z.ZodOptional<z.ZodString>;
290
256
  initialFeatureFilterPath: z.ZodOptional<z.ZodString>;
291
257
  region: z.ZodOptional<z.ZodString>;
258
+ coordinateSystem: z.ZodOptional<z.ZodString>;
292
259
  }, "strip", z.ZodTypeAny, {
293
260
  path: string;
294
261
  featureFilterPath?: string | undefined;
295
262
  initialFeatureFilterPath?: string | undefined;
296
263
  region?: string | undefined;
264
+ coordinateSystem?: string | undefined;
297
265
  }, {
298
266
  path: string;
299
267
  featureFilterPath?: string | undefined;
300
268
  initialFeatureFilterPath?: string | undefined;
301
269
  region?: string | undefined;
270
+ coordinateSystem?: string | undefined;
302
271
  }>>;
303
272
  obsSpots: z.ZodOptional<z.ZodObject<{
304
273
  path: z.ZodString;
305
274
  tablePath: z.ZodOptional<z.ZodString>;
275
+ coordinateSystem: z.ZodOptional<z.ZodString>;
306
276
  }, "strip", z.ZodTypeAny, {
307
277
  path: string;
308
278
  tablePath?: string | undefined;
279
+ coordinateSystem?: string | undefined;
309
280
  }, {
310
281
  path: string;
311
282
  tablePath?: string | undefined;
283
+ coordinateSystem?: string | undefined;
312
284
  }>>;
313
285
  obsSets: z.ZodOptional<z.ZodObject<{
314
286
  region: z.ZodOptional<z.ZodString>;
@@ -343,31 +315,28 @@ export declare const baseJointFileTypes: (PluginJointFileType<z.ZodObject<{
343
315
  region?: string | undefined;
344
316
  tablePath?: string | undefined;
345
317
  }>>;
318
+ coordinateSystem: z.ZodOptional<z.ZodOptional<z.ZodString>>;
346
319
  }, "strip", z.ZodTypeAny, {
347
320
  image?: {
348
321
  path: string;
349
- coordinateTransformations?: ({
350
- type: "identity";
351
- } | {
352
- type: "translation";
353
- translation: number[];
354
- } | {
355
- type: "scale";
356
- scale: number[];
357
- })[] | undefined;
322
+ coordinateSystem?: string | undefined;
358
323
  } | undefined;
359
324
  labels?: {
360
325
  path: string;
326
+ tablePath?: string | undefined;
327
+ coordinateSystem?: string | undefined;
361
328
  } | undefined;
362
329
  obsFeatureMatrix?: {
363
330
  path: string;
364
331
  featureFilterPath?: string | undefined;
365
332
  initialFeatureFilterPath?: string | undefined;
366
333
  region?: string | undefined;
334
+ coordinateSystem?: string | undefined;
367
335
  } | undefined;
368
336
  obsSpots?: {
369
337
  path: string;
370
338
  tablePath?: string | undefined;
339
+ coordinateSystem?: string | undefined;
371
340
  } | undefined;
372
341
  obsSets?: {
373
342
  obsSets: {
@@ -378,31 +347,28 @@ export declare const baseJointFileTypes: (PluginJointFileType<z.ZodObject<{
378
347
  region?: string | undefined;
379
348
  tablePath?: string | undefined;
380
349
  } | undefined;
350
+ coordinateSystem?: string | undefined;
381
351
  }, {
382
352
  image?: {
383
353
  path: string;
384
- coordinateTransformations?: ({
385
- type: "identity";
386
- } | {
387
- type: "translation";
388
- translation: number[];
389
- } | {
390
- type: "scale";
391
- scale: number[];
392
- })[] | undefined;
354
+ coordinateSystem?: string | undefined;
393
355
  } | undefined;
394
356
  labels?: {
395
357
  path: string;
358
+ tablePath?: string | undefined;
359
+ coordinateSystem?: string | undefined;
396
360
  } | undefined;
397
361
  obsFeatureMatrix?: {
398
362
  path: string;
399
363
  featureFilterPath?: string | undefined;
400
364
  initialFeatureFilterPath?: string | undefined;
401
365
  region?: string | undefined;
366
+ coordinateSystem?: string | undefined;
402
367
  } | undefined;
403
368
  obsSpots?: {
404
369
  path: string;
405
370
  tablePath?: string | undefined;
371
+ coordinateSystem?: string | undefined;
406
372
  } | undefined;
407
373
  obsSets?: {
408
374
  obsSets: {
@@ -413,6 +379,7 @@ export declare const baseJointFileTypes: (PluginJointFileType<z.ZodObject<{
413
379
  region?: string | undefined;
414
380
  tablePath?: string | undefined;
415
381
  } | undefined;
382
+ coordinateSystem?: string | undefined;
416
383
  }>> | PluginJointFileType<z.ZodObject<{
417
384
  xy: z.ZodOptional<z.ZodString>;
418
385
  poly: z.ZodOptional<z.ZodString>;
@@ -1087,4 +1054,5 @@ export declare const baseCoordinationTypes: (PluginCoordinationType<z.ZodNullabl
1087
1054
  }>;
1088
1055
  })[];
1089
1056
  }>>> | PluginCoordinationType<z.ZodNullable<z.ZodUnion<[z.ZodNumber, z.ZodString]>>> | PluginCoordinationType<z.ZodNullable<z.ZodArray<z.ZodNumber, "many">>> | PluginCoordinationType<z.ZodNullable<z.ZodEnum<["BlackIsZero", "RGB"]>>> | PluginCoordinationType<z.ZodNullable<z.ZodEnum<["2D", "3D"]>>> | PluginCoordinationType<z.ZodEnum<["maximumIntensityProjection", "additive"]>> | PluginCoordinationType<z.ZodEnum<["vertical", "horizontal"]>> | PluginCoordinationType<z.ZodEnum<["cellSetSelection", "sampleSetSelection", "contourColor"]>>)[];
1057
+ export declare const baseAsyncFunctions: PluginAsyncFunction[];
1090
1058
  //# sourceMappingURL=base-plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-plugins.d.ts","sourceRoot":"","sources":["../src/base-plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-plugins.d.ts","sourceRoot":"","sources":["../src/base-plugins.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { FileType, DataType, ViewType, CoordinationType, COMPONENT_COORDINATION_TYPES, ALT_ZARR_STORE_TYPES, } from '@vitessce/constants-internal';
2
- import { PluginFileType, PluginJointFileType, PluginViewType, PluginCoordinationType, } from '@vitessce/plugins';
1
+ import { FileType, DataType, ViewType, CoordinationType, AsyncFunctionType, COMPONENT_COORDINATION_TYPES, ALT_ZARR_STORE_TYPES, } from '@vitessce/constants-internal';
2
+ import { PluginFileType, PluginJointFileType, PluginViewType, PluginCoordinationType, PluginAsyncFunction, } from '@vitessce/plugins';
3
3
  import { z, obsEmbeddingCsvSchema, obsSetsCsvSchema, obsSpotsCsvSchema, obsPointsCsvSchema, obsLocationsCsvSchema, obsLabelsCsvSchema, featureLabelsCsvSchema, sampleSetsCsvSchema, obsSetsAnndataSchema, obsEmbeddingAnndataSchema, obsSpotsAnndataSchema, obsPointsAnndataSchema, obsLocationsAnndataSchema, obsLabelsAnndataSchema, obsFeatureMatrixAnndataSchema, obsFeatureColumnsAnndataSchema, obsSegmentationsAnndataSchema, featureLabelsAnndataSchema, sampleEdgesAnndataSchema, rasterJsonSchema, anndataZarrSchema, anndataH5adSchema, spatialdataZarrSchema, anndataCellsZarrSchema, anndataCellSetsZarrSchema, anndataExpressionMatrixZarrSchema, cellsJsonSchema, imageOmeZarrSchema, imageOmeTiffSchema, imageSpatialdataSchema, obsSegmentationsOmeTiffSchema, obsSegmentationsOmeZarrSchema, obsSegmentationsSpatialdataSchema, obsFeatureMatrixSpatialdataSchema, obsSpotsSpatialdataSchema, obsSetsSpatialdataSchema, obsSetPath, rgbArray, obsSetsSchema, imageLayerObj, cellsLayerObj, neighborhoodsLayerObj, moleculesLayerObj, meshGlbSchema, } from '@vitessce/schemas';
4
4
  // Register view type plugins
5
5
  import { DescriptionSubscriber } from '@vitessce/description';
@@ -38,8 +38,10 @@ ZarrDataSource, MatrixZarrAsObsFeatureMatrixLoader, GenomicProfilesZarrLoader, }
38
38
  import { OmeTiffAsObsSegmentationsLoader, OmeTiffLoader, OmeTiffSource, } from '@vitessce/ome-tiff';
39
39
  import { GlbSource, GlbLoader, } from '@vitessce/glb';
40
40
  // Joint file types
41
+ import { BiomarkerSelectSubscriber, autocompleteFeature, transformFeature, } from '@vitessce/biomarker-select';
41
42
  import { expandAnndataZarr, expandSpatialdataZarr, } from './joint-file-types.js';
42
43
  import { expandAnndataCellSetsZarr, expandAnndataCellsZarr, expandAnndataExpressionMatrixZarr, expandCellSetsJson, expandCellsJson, expandClustersJson, expandExpressionMatrixZarr, expandGenesJson, expandMoleculesJson, expandRasterJson, expandRasterOmeZarr, } from './joint-file-types-legacy.js';
44
+ // Biomarker select UI and default async functions.
43
45
  // Helper function to use COMPONENT_COORDINATION_TYPES.
44
46
  function makeViewType(name, component) {
45
47
  return new PluginViewType(name, component, COMPONENT_COORDINATION_TYPES[name]);
@@ -79,6 +81,7 @@ export const baseViewTypes = [
79
81
  makeViewType('higlass', HiGlassSubscriber),
80
82
  makeViewType(ViewType.GENOMIC_PROFILES, GenomicProfilesSubscriber),
81
83
  makeViewType(ViewType.DOT_PLOT, DotPlotSubscriber),
84
+ makeViewType(ViewType.BIOMARKER_SELECT, BiomarkerSelectSubscriber),
82
85
  ];
83
86
  export const baseFileTypes = [
84
87
  // All CSV file types
@@ -117,9 +120,9 @@ export const baseFileTypes = [
117
120
  makeFileType(FileType.OBS_SEGMENTATIONS_MUDATA_ZARR, DataType.OBS_SEGMENTATIONS, ObsSegmentationsAnndataLoader, MuDataSource, obsSegmentationsAnndataSchema),
118
121
  makeFileType(FileType.FEATURE_LABELS_MUDATA_ZARR, DataType.FEATURE_LABELS, FeatureLabelsAnndataLoader, MuDataSource, featureLabelsAnndataSchema),
119
122
  // All OME file types
120
- makeFileType(FileType.IMAGE_OME_ZARR, DataType.IMAGE, OmeZarrLoader, ZarrDataSource, imageOmeZarrSchema),
123
+ ...makeZarrFileTypes(FileType.IMAGE_OME_ZARR, DataType.IMAGE, OmeZarrLoader, ZarrDataSource, imageOmeZarrSchema),
121
124
  makeFileType(FileType.IMAGE_OME_TIFF, DataType.IMAGE, OmeTiffLoader, OmeTiffSource, imageOmeTiffSchema),
122
- makeFileType(FileType.OBS_SEGMENTATIONS_OME_ZARR, DataType.OBS_SEGMENTATIONS, OmeZarrAsObsSegmentationsLoader, ZarrDataSource, obsSegmentationsOmeZarrSchema),
125
+ ...makeZarrFileTypes(FileType.OBS_SEGMENTATIONS_OME_ZARR, DataType.OBS_SEGMENTATIONS, OmeZarrAsObsSegmentationsLoader, ZarrDataSource, obsSegmentationsOmeZarrSchema),
123
126
  makeFileType(FileType.OBS_SEGMENTATIONS_OME_TIFF, DataType.OBS_SEGMENTATIONS, OmeTiffAsObsSegmentationsLoader, OmeTiffSource, obsSegmentationsOmeTiffSchema),
124
127
  // SpatialData file types
125
128
  makeFileType(FileType.IMAGE_SPATIALDATA_ZARR, DataType.IMAGE, SpatialDataImageLoader, ZarrDataSource, imageSpatialdataSchema),
@@ -292,3 +295,7 @@ export const baseCoordinationTypes = [
292
295
  new PluginCoordinationType(CoordinationType.CONTOUR_COLOR_ENCODING, 'cellSetSelection', z.enum(['cellSetSelection', 'sampleSetSelection', 'contourColor'])),
293
296
  new PluginCoordinationType(CoordinationType.CONTOUR_COLOR, null, rgbArray.nullable()),
294
297
  ];
298
+ export const baseAsyncFunctions = [
299
+ new PluginAsyncFunction(AsyncFunctionType.AUTOCOMPLETE_FEATURE, autocompleteFeature),
300
+ new PluginAsyncFunction(AsyncFunctionType.TRANSFORM_FEATURE, transformFeature),
301
+ ];
@@ -1 +1 @@
1
- {"version":3,"file":"joint-file-types.d.ts","sourceRoot":"","sources":["../src/joint-file-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA6B7D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,SAqN7E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC;;;;;;;;UAhP1E,MAAM;kBACE,GAAG;;;;;;;UADX,MAAM;kBACE,GAAG;;;;;;;UADX,MAAM;kBACE,GAAG;KA2TlB"}
1
+ {"version":3,"file":"joint-file-types.d.ts","sourceRoot":"","sources":["../src/joint-file-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA6B7D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,SAqN7E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC;;;;;;;;UAhP1E,MAAM;kBACE,GAAG;;;;;;;UADX,MAAM;kBACE,GAAG;;;;;;;UADX,MAAM;kBACE,GAAG;KA6UlB"}
@@ -242,8 +242,10 @@ export function expandSpatialdataZarr(fileDef) {
242
242
  }
243
243
  });
244
244
  const { options = {} } = fileDef;
245
+ const defaultCoordinateSystem = options.coordinateSystem;
245
246
  return [
246
247
  // obsFeatureMatrix
248
+ // TODO: handle multiple obsFeatureMatrix?
247
249
  ...(options.obsFeatureMatrix ? [{
248
250
  ...baseFileDef,
249
251
  fileType: FileType.OBS_FEATURE_MATRIX_SPATIALDATA_ZARR,
@@ -256,6 +258,7 @@ export function expandSpatialdataZarr(fileDef) {
256
258
  },
257
259
  }] : []),
258
260
  // obsSets
261
+ // TODO: handle multiple obsSets?
259
262
  ...(options.obsSets ? [{
260
263
  ...baseFileDef,
261
264
  fileType: FileType.OBS_SETS_SPATIALDATA_ZARR,
@@ -266,10 +269,14 @@ export function expandSpatialdataZarr(fileDef) {
266
269
  },
267
270
  }] : []),
268
271
  // obsSpots
272
+ // TODO: handle multiple obsSpots?
269
273
  ...(options.obsSpots ? [{
270
274
  ...baseFileDef,
271
275
  fileType: FileType.OBS_SPOTS_SPATIALDATA_ZARR,
272
- options: options.obsSpots,
276
+ options: {
277
+ coordinateSystem: defaultCoordinateSystem,
278
+ ...options.obsSpots,
279
+ },
273
280
  coordinationValues: {
274
281
  ...extraCoordinationValues,
275
282
  obsType: baseFileDef.coordinationValues.obsType,
@@ -277,11 +284,18 @@ export function expandSpatialdataZarr(fileDef) {
277
284
  }] : []),
278
285
  // TODO: obsPoints?
279
286
  // TODO: obsLocations?
287
+ // TODO: obsLabels
288
+ // TODO: featureLabels
289
+ // TODO: obsEmbedding
280
290
  // image
291
+ // TODO: handle multiple images
281
292
  ...(options.image ? [{
282
293
  ...baseFileDef,
283
294
  fileType: FileType.IMAGE_SPATIALDATA_ZARR,
284
- options: options.image,
295
+ options: {
296
+ coordinateSystem: defaultCoordinateSystem,
297
+ ...options.image,
298
+ },
285
299
  coordinationValues: {
286
300
  ...extraCoordinationValues,
287
301
  featureType: baseFileDef.coordinationValues.featureType,
@@ -289,10 +303,14 @@ export function expandSpatialdataZarr(fileDef) {
289
303
  },
290
304
  }] : []),
291
305
  // labels
306
+ // TODO: handle multiple labels?
292
307
  ...(options.labels ? [{
293
308
  ...baseFileDef,
294
309
  fileType: FileType.LABELS_SPATIALDATA_ZARR,
295
- options: options.labels,
310
+ options: {
311
+ coordinateSystem: defaultCoordinateSystem,
312
+ ...options.labels,
313
+ },
296
314
  coordinationValues: {
297
315
  ...extraCoordinationValues,
298
316
  obsType: baseFileDef.coordinationValues.obsType,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vitessce/all",
3
- "version": "3.4.12",
4
- "author": "Gehlenborg Lab",
3
+ "version": "3.5.0",
4
+ "author": "HIDIVE Lab at HMS",
5
5
  "homepage": "http://vitessce.io",
6
6
  "repository": {
7
7
  "type": "git",
@@ -18,29 +18,30 @@
18
18
  "dependencies": {
19
19
  "@material-ui/core": "~4.12.3",
20
20
  "zod": "^3.21.4",
21
- "@vitessce/constants-internal": "3.4.12",
22
- "@vitessce/csv": "3.4.12",
23
- "@vitessce/description": "3.4.12",
24
- "@vitessce/feature-list": "3.4.12",
25
- "@vitessce/genomic-profiles": "3.4.12",
26
- "@vitessce/heatmap": "3.4.12",
27
- "@vitessce/glb": "3.4.12",
28
- "@vitessce/json": "3.4.12",
29
- "@vitessce/layer-controller": "3.4.12",
30
- "@vitessce/layer-controller-beta": "3.4.12",
31
- "@vitessce/obs-sets-manager": "3.4.12",
32
- "@vitessce/ome-tiff": "3.4.12",
33
- "@vitessce/plugins": "3.4.12",
34
- "@vitessce/scatterplot-embedding": "3.4.12",
35
- "@vitessce/scatterplot-gating": "3.4.12",
36
- "@vitessce/schemas": "3.4.12",
37
- "@vitessce/spatial": "3.4.12",
38
- "@vitessce/spatial-beta": "3.4.12",
39
- "@vitessce/statistical-plots": "3.4.12",
40
- "@vitessce/status": "3.4.12",
41
- "@vitessce/vit-s": "3.4.12",
42
- "@vitessce/zarr": "3.4.12",
43
- "@vitessce/spatial-three": "3.4.12"
21
+ "@vitessce/constants-internal": "3.5.0",
22
+ "@vitessce/csv": "3.5.0",
23
+ "@vitessce/description": "3.5.0",
24
+ "@vitessce/feature-list": "3.5.0",
25
+ "@vitessce/genomic-profiles": "3.5.0",
26
+ "@vitessce/heatmap": "3.5.0",
27
+ "@vitessce/glb": "3.5.0",
28
+ "@vitessce/json": "3.5.0",
29
+ "@vitessce/layer-controller": "3.5.0",
30
+ "@vitessce/layer-controller-beta": "3.5.0",
31
+ "@vitessce/obs-sets-manager": "3.5.0",
32
+ "@vitessce/ome-tiff": "3.5.0",
33
+ "@vitessce/plugins": "3.5.0",
34
+ "@vitessce/scatterplot-embedding": "3.5.0",
35
+ "@vitessce/scatterplot-gating": "3.5.0",
36
+ "@vitessce/schemas": "3.5.0",
37
+ "@vitessce/spatial": "3.5.0",
38
+ "@vitessce/spatial-beta": "3.5.0",
39
+ "@vitessce/statistical-plots": "3.5.0",
40
+ "@vitessce/status": "3.5.0",
41
+ "@vitessce/vit-s": "3.5.0",
42
+ "@vitessce/zarr": "3.5.0",
43
+ "@vitessce/spatial-three": "3.5.0",
44
+ "@vitessce/biomarker-select": "3.5.0"
44
45
  },
45
46
  "devDependencies": {
46
47
  "@types/react": "^18.0.28",
package/src/Vitessce.tsx CHANGED
@@ -12,6 +12,7 @@ import {
12
12
  baseFileTypes,
13
13
  baseJointFileTypes,
14
14
  baseCoordinationTypes,
15
+ baseAsyncFunctions,
15
16
  } from './base-plugins.js';
16
17
 
17
18
  export function Vitessce(props: any) {
@@ -22,7 +23,7 @@ export function Vitessce(props: any) {
22
23
  pluginFileTypes: pluginFileTypesProp,
23
24
  pluginCoordinationTypes: pluginCoordinationTypesProp,
24
25
  pluginJointFileTypes: pluginJointFileTypesProp,
25
- pluginAsyncFunctions,
26
+ pluginAsyncFunctions: pluginAsyncFunctionsProp,
26
27
  } = props;
27
28
 
28
29
  // If config.uid exists, then use it for hook dependencies to detect changes
@@ -65,7 +66,9 @@ export function Vitessce(props: any) {
65
66
  ...baseCoordinationTypes, ...(pluginCoordinationTypesProp || []),
66
67
  ]), [pluginCoordinationTypesProp]);
67
68
 
68
- // TODO: merge with a set of "base" async functions
69
+ const mergedPluginAsyncFunctions = useMemo(() => ([
70
+ ...baseAsyncFunctions, ...(pluginAsyncFunctionsProp || []),
71
+ ]), [pluginAsyncFunctionsProp]);
69
72
 
70
73
  return (
71
74
  <VitS
@@ -75,7 +78,7 @@ export function Vitessce(props: any) {
75
78
  fileTypes={mergedPluginFileTypes}
76
79
  jointFileTypes={mergedPluginJointFileTypes}
77
80
  coordinationTypes={mergedPluginCoordinationTypes}
78
- asyncFunctions={pluginAsyncFunctions}
81
+ asyncFunctions={mergedPluginAsyncFunctions}
79
82
  warning={(success ? null : configOrWarning)}
80
83
  />
81
84
  );
@@ -5,6 +5,7 @@ import {
5
5
  DataType,
6
6
  ViewType,
7
7
  CoordinationType,
8
+ AsyncFunctionType,
8
9
  COMPONENT_COORDINATION_TYPES,
9
10
  ALT_ZARR_STORE_TYPES,
10
11
  } from '@vitessce/constants-internal';
@@ -13,6 +14,7 @@ import {
13
14
  PluginJointFileType,
14
15
  PluginViewType,
15
16
  PluginCoordinationType,
17
+ PluginAsyncFunction,
16
18
  } from '@vitessce/plugins';
17
19
  import type {
18
20
  DataLoader,
@@ -161,6 +163,11 @@ import {
161
163
  } from '@vitessce/glb';
162
164
 
163
165
  // Joint file types
166
+ import {
167
+ BiomarkerSelectSubscriber,
168
+ autocompleteFeature,
169
+ transformFeature,
170
+ } from '@vitessce/biomarker-select';
164
171
  import {
165
172
  expandAnndataZarr,
166
173
  expandSpatialdataZarr,
@@ -179,6 +186,8 @@ import {
179
186
  expandRasterOmeZarr,
180
187
  } from './joint-file-types-legacy.js';
181
188
 
189
+ // Biomarker select UI and default async functions.
190
+
182
191
  // Helper function to use COMPONENT_COORDINATION_TYPES.
183
192
  function makeViewType(name: string, component: any) {
184
193
  return new PluginViewType(name, component as ComponentType, COMPONENT_COORDINATION_TYPES[name]);
@@ -220,6 +229,7 @@ export const baseViewTypes = [
220
229
  makeViewType('higlass', HiGlassSubscriber),
221
230
  makeViewType(ViewType.GENOMIC_PROFILES, GenomicProfilesSubscriber),
222
231
  makeViewType(ViewType.DOT_PLOT, DotPlotSubscriber),
232
+ makeViewType(ViewType.BIOMARKER_SELECT, BiomarkerSelectSubscriber),
223
233
  ];
224
234
 
225
235
  export const baseFileTypes = [
@@ -259,9 +269,9 @@ export const baseFileTypes = [
259
269
  makeFileType(FileType.OBS_SEGMENTATIONS_MUDATA_ZARR, DataType.OBS_SEGMENTATIONS, ObsSegmentationsAnndataLoader, MuDataSource, obsSegmentationsAnndataSchema),
260
270
  makeFileType(FileType.FEATURE_LABELS_MUDATA_ZARR, DataType.FEATURE_LABELS, FeatureLabelsAnndataLoader, MuDataSource, featureLabelsAnndataSchema),
261
271
  // All OME file types
262
- makeFileType(FileType.IMAGE_OME_ZARR, DataType.IMAGE, OmeZarrLoader, ZarrDataSource, imageOmeZarrSchema),
272
+ ...makeZarrFileTypes(FileType.IMAGE_OME_ZARR, DataType.IMAGE, OmeZarrLoader, ZarrDataSource, imageOmeZarrSchema),
263
273
  makeFileType(FileType.IMAGE_OME_TIFF, DataType.IMAGE, OmeTiffLoader, OmeTiffSource, imageOmeTiffSchema),
264
- makeFileType(FileType.OBS_SEGMENTATIONS_OME_ZARR, DataType.OBS_SEGMENTATIONS, OmeZarrAsObsSegmentationsLoader, ZarrDataSource, obsSegmentationsOmeZarrSchema),
274
+ ...makeZarrFileTypes(FileType.OBS_SEGMENTATIONS_OME_ZARR, DataType.OBS_SEGMENTATIONS, OmeZarrAsObsSegmentationsLoader, ZarrDataSource, obsSegmentationsOmeZarrSchema),
265
275
  makeFileType(FileType.OBS_SEGMENTATIONS_OME_TIFF, DataType.OBS_SEGMENTATIONS, OmeTiffAsObsSegmentationsLoader, OmeTiffSource, obsSegmentationsOmeTiffSchema),
266
276
  // SpatialData file types
267
277
  makeFileType(FileType.IMAGE_SPATIALDATA_ZARR, DataType.IMAGE, SpatialDataImageLoader, ZarrDataSource, imageSpatialdataSchema),
@@ -517,3 +527,8 @@ export const baseCoordinationTypes = [
517
527
  new PluginCoordinationType(CoordinationType.CONTOUR_COLOR_ENCODING, 'cellSetSelection', z.enum(['cellSetSelection', 'sampleSetSelection', 'contourColor'])),
518
528
  new PluginCoordinationType(CoordinationType.CONTOUR_COLOR, null, rgbArray.nullable()),
519
529
  ];
530
+
531
+ export const baseAsyncFunctions = [
532
+ new PluginAsyncFunction(AsyncFunctionType.AUTOCOMPLETE_FEATURE, autocompleteFeature),
533
+ new PluginAsyncFunction(AsyncFunctionType.TRANSFORM_FEATURE, transformFeature),
534
+ ];