@vitessce/all 3.9.4 → 3.9.6

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.
@@ -1,6 +1,6 @@
1
- import { aw as log, ax as isEqual, ar as Data3DTexture, as as RedFormat, ay as UnsignedByteType, l as LinearFilter, az as RedIntegerFormat, aA as UnsignedIntType, m as NearestFilter, e as Vector3, V as Vector2, ag as Vector4, ae as UniformsUtils, aq as CoordinationType, aB as WebGLMultipleRenderTargets, aC as RGBAFormat, av as Scene, W as OrthographicCamera, ad as ShaderMaterial, z as Mesh, aD as PlaneGeometry, aE as useEventCallback, ao as jsxRuntimeExports, aF as GLSL3, am as BackSide } from "./index-DMwHBnRb.js";
1
+ import { aw as log, ax as isEqual, ar as Data3DTexture, as as RedFormat, ay as UnsignedByteType, l as LinearFilter, az as RedIntegerFormat, aA as UnsignedIntType, m as NearestFilter, e as Vector3, V as Vector2, ag as Vector4, ae as UniformsUtils, aq as CoordinationType, aB as WebGLMultipleRenderTargets, aC as RGBAFormat, av as Scene, W as OrthographicCamera, ad as ShaderMaterial, z as Mesh, aD as PlaneGeometry, aE as useEventCallback, ao as jsxRuntimeExports, aF as GLSL3, am as BackSide } from "./index-B1IhEdcb.js";
2
2
  import { useRef, useState, useMemo, useEffect, Suspense } from "react";
3
- import { u as useThree, a as useFrame, O as OrbitControls, C as Canvas } from "./OrbitControls-COiSfwgZ.js";
3
+ import { u as useThree, a as useFrame, O as OrbitControls, C as Canvas } from "./OrbitControls-BGcAu271.js";
4
4
  const LogLevel = {
5
5
  INFO: "info",
6
6
  WARN: "warn",
@@ -197,9 +197,17 @@ function _ptToZarr(ptx, pty, ptz, ptInfo) {
197
197
  z
198
198
  };
199
199
  }
200
- function _requestBufferToRequestObjects(buffer, k) {
200
+ const DEFAULT_SIGMA_NORMALIZED = 0.25;
201
+ function _requestBufferToRequestObjects(buffer, k, optsForWeighting) {
201
202
  const counts = /* @__PURE__ */ new Map();
202
- for (let i = 0; i < buffer.length; i += 4) {
203
+ const { width, height, sigmaNormalized } = optsForWeighting;
204
+ const useWeighting = Number.isInteger(width) && Number.isInteger(height) && width > 0 && height > 0 && typeof sigmaNormalized === "number";
205
+ if (!useWeighting) {
206
+ log.warn("_requestBufferToRequestObjects: proceeding without weighting");
207
+ }
208
+ const maxPixels = Math.floor(buffer.length / 4);
209
+ for (let pix = 0; pix < maxPixels; pix += 1) {
210
+ const i = pix * 4;
203
211
  const r = buffer[i];
204
212
  const g = buffer[i + 1];
205
213
  const b = buffer[i + 2];
@@ -208,7 +216,17 @@ function _requestBufferToRequestObjects(buffer, k) {
208
216
  continue;
209
217
  }
210
218
  const packed = (r << 24 | g << 16 | b << 8 | a) >>> 0;
211
- counts.set(packed, (counts.get(packed) || 0) + 1);
219
+ let weight = 1;
220
+ if (useWeighting) {
221
+ const x = pix % width;
222
+ const y = Math.floor(pix / width);
223
+ const dx = x - width / 2;
224
+ const dy = y - height / 2;
225
+ const nd = Math.sqrt(dx * dx / (width * width) + dy * dy / (height * height));
226
+ const norm = nd / sigmaNormalized;
227
+ weight = Math.exp(-0.5 * norm * norm);
228
+ }
229
+ counts.set(packed, (counts.get(packed) || 0) + weight);
212
230
  }
213
231
  const requests = [...counts.entries()].sort((a, b) => b[1] - a[1]).slice(0, k).map(([packed]) => ({
214
232
  x: packed >> 22 & 1023,
@@ -865,7 +883,19 @@ class VolumeDataManager {
865
883
  }
866
884
  return chunkEntry.data;
867
885
  }
868
- async processRequestData(buffer) {
886
+ /**
887
+ * Process the buffer of brick requests from the shader, turning them into
888
+ * actual Promises for Zarr chunks on the JS side.
889
+ * @param {Uint8Array} buffer The bufRequest (of length width*height*4)
890
+ * containing the brick requests from the shader.
891
+ * @param {object} optsForWeighting
892
+ * @param {number} optsForWeighting.width The width of the render target.
893
+ * @param {number} optsForWeighting.height The height of the render target.
894
+ * @param {number} optsForWeighting.sigmaNormalized The normalized sigma value
895
+ * to use for weighting the brick requests based on their distance from
896
+ * the center of the render target.
897
+ */
898
+ async processRequestData(buffer, optsForWeighting) {
869
899
  if (this.isBusy) {
870
900
  log.debug("processRequestData: already busy, skipping");
871
901
  return;
@@ -880,7 +910,7 @@ class VolumeDataManager {
880
910
  }
881
911
  this.isBusy = true;
882
912
  this.triggerRequest = false;
883
- const { requests, origRequestCount } = _requestBufferToRequestObjects(buffer, this.k);
913
+ const { requests, origRequestCount } = _requestBufferToRequestObjects(buffer, this.k, optsForWeighting);
884
914
  if (requests.length === 0) {
885
915
  this.noNewRequests = true;
886
916
  }
@@ -3443,7 +3473,14 @@ function handleRequests(_gl, { frameRef, dataManager, mrtRef, bufRequest, bufUsa
3443
3473
  ctx.bindFramebuffer(ctx.READ_FRAMEBUFFER, framebufferFor(_gl, mrtRef.current));
3444
3474
  ctx.readBuffer(ctx.COLOR_ATTACHMENT1);
3445
3475
  ctx.readPixels(0, 0, mrtRef.current.width, mrtRef.current.height, ctx.RGBA, ctx.UNSIGNED_BYTE, bufRequest.current);
3446
- dataManager.processRequestData(bufRequest.current);
3476
+ dataManager.processRequestData(bufRequest.current, {
3477
+ // If width/height are not yet available,
3478
+ // processRequestData will proceed without weighting.
3479
+ width: mrtRef?.current?.width,
3480
+ height: mrtRef?.current?.height,
3481
+ // Default sigmaNormalized = 0.25; can be tuned
3482
+ sigmaNormalized: DEFAULT_SIGMA_NORMALIZED
3483
+ });
3447
3484
  } else if (dataManager.triggerUsage === true && dataManager.noNewRequests === false) {
3448
3485
  ctx.bindFramebuffer(ctx.READ_FRAMEBUFFER, framebufferFor(_gl, mrtRef.current));
3449
3486
  ctx.readBuffer(ctx.COLOR_ATTACHMENT2);
@@ -1,7 +1,7 @@
1
- import { G as Group, M as Matrix4, T as TrianglesDrawMode, a as TriangleFanDrawMode, b as TriangleStripDrawMode, R as REVISION, L as Loader, c as LoaderUtils, F as FileLoader, d as MeshPhysicalMaterial, V as Vector2, C as Color, S as SpotLight, P as PointLight, D as DirectionalLight, e as Vector3, I as InstancedMesh, Q as Quaternion, O as Object3D, f as TextureLoader, g as ImageBitmapLoader, B as BufferAttribute, h as InterleavedBuffer, i as LinearMipmapLinearFilter, N as NearestMipmapLinearFilter, j as LinearMipmapNearestFilter, k as NearestMipmapNearestFilter, l as LinearFilter, m as NearestFilter, n as RepeatWrapping, o as MirroredRepeatWrapping, p as ClampToEdgeWrapping, q as PointsMaterial, r as Material, s as LineBasicMaterial, t as MeshStandardMaterial, u as DoubleSide, v as MeshBasicMaterial, w as PropertyBinding, x as BufferGeometry, y as SkinnedMesh, z as Mesh, A as LineSegments, E as Line$1, H as LineLoop, J as Points, K as PerspectiveCamera, U as MathUtils, W as OrthographicCamera, X as Skeleton, Y as InterpolateDiscrete, Z as InterpolateLinear, _ as AnimationClip, $ as Bone, a0 as InterleavedBufferAttribute, a1 as Texture, a2 as VectorKeyframeTrack, a3 as QuaternionKeyframeTrack, a4 as NumberKeyframeTrack, a5 as FrontSide, a6 as Interpolant, a7 as Box3, a8 as Sphere, a9 as InstancedBufferGeometry, aa as Float32BufferAttribute, ab as InstancedInterleavedBuffer, ac as WireframeGeometry, ad as ShaderMaterial, ae as UniformsUtils, af as UniformsLib, ag as Vector4, ah as Line3, ai as SphereGeometry, aj as _extends, ak as Plane, al as Triangle, am as BackSide, an as Ray$1, ao as jsxRuntimeExports, ap as Matrix3, aq as CoordinationType, ar as Data3DTexture, as as RedFormat, at as FloatType, au as getImageSize, av as Scene } from "./index-DMwHBnRb.js";
1
+ import { G as Group, M as Matrix4, T as TrianglesDrawMode, a as TriangleFanDrawMode, b as TriangleStripDrawMode, R as REVISION, L as Loader, c as LoaderUtils, F as FileLoader, d as MeshPhysicalMaterial, V as Vector2, C as Color, S as SpotLight, P as PointLight, D as DirectionalLight, e as Vector3, I as InstancedMesh, Q as Quaternion, O as Object3D, f as TextureLoader, g as ImageBitmapLoader, B as BufferAttribute, h as InterleavedBuffer, i as LinearMipmapLinearFilter, N as NearestMipmapLinearFilter, j as LinearMipmapNearestFilter, k as NearestMipmapNearestFilter, l as LinearFilter, m as NearestFilter, n as RepeatWrapping, o as MirroredRepeatWrapping, p as ClampToEdgeWrapping, q as PointsMaterial, r as Material, s as LineBasicMaterial, t as MeshStandardMaterial, u as DoubleSide, v as MeshBasicMaterial, w as PropertyBinding, x as BufferGeometry, y as SkinnedMesh, z as Mesh, A as LineSegments, E as Line$1, H as LineLoop, J as Points, K as PerspectiveCamera, U as MathUtils, W as OrthographicCamera, X as Skeleton, Y as InterpolateDiscrete, Z as InterpolateLinear, _ as AnimationClip, $ as Bone, a0 as InterleavedBufferAttribute, a1 as Texture, a2 as VectorKeyframeTrack, a3 as QuaternionKeyframeTrack, a4 as NumberKeyframeTrack, a5 as FrontSide, a6 as Interpolant, a7 as Box3, a8 as Sphere, a9 as InstancedBufferGeometry, aa as Float32BufferAttribute, ab as InstancedInterleavedBuffer, ac as WireframeGeometry, ad as ShaderMaterial, ae as UniformsUtils, af as UniformsLib, ag as Vector4, ah as Line3, ai as SphereGeometry, aj as _extends, ak as Plane, al as Triangle, am as BackSide, an as Ray$1, ao as jsxRuntimeExports, ap as Matrix3, aq as CoordinationType, ar as Data3DTexture, as as RedFormat, at as FloatType, au as getImageSize, av as Scene } from "./index-B1IhEdcb.js";
2
2
  import * as React from "react";
3
3
  import { useRef, useEffect, useState, forwardRef } from "react";
4
- import { u as useThree, a as useFrame, c as create, e as extend, b as createPortal, O as OrbitControls, C as Canvas } from "./OrbitControls-COiSfwgZ.js";
4
+ import { u as useThree, a as useFrame, c as create, e as extend, b as createPortal, O as OrbitControls, C as Canvas } from "./OrbitControls-BGcAu271.js";
5
5
  const isPromise = (promise) => typeof promise === "object" && typeof promise.then === "function";
6
6
  const globalCache = [];
7
7
  function shallowEqualArrays(arrA, arrB, equal = (a, b) => a === b) {
@@ -5027,7 +5027,7 @@ const Text = /* @__PURE__ */ React.forwardRef(({
5027
5027
  const {
5028
5028
  Text: TextMeshImpl,
5029
5029
  preloadFont
5030
- } = suspend(async () => import("./troika-three-text.esm-BX5BPsT5.js"), []);
5030
+ } = suspend(async () => import("./troika-three-text.esm-BKSLyjBY.js"), []);
5031
5031
  const invalidate = useThree(({
5032
5032
  invalidate: invalidate2
5033
5033
  }) => invalidate2);
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { bR, bP, bN, bQ, bO, bM, bS } from "./index-DMwHBnRb.js";
1
+ import { bR, bP, bN, bQ, bO, bM, bS } from "./index-B1IhEdcb.js";
2
2
  import { useComplexCoordination, useComplexCoordinationSecondary, useCoordination, useCoordinationScopes, useCoordinationScopesBy, useGridItemSize, useMultiCoordinationScopesNonNull, useMultiCoordinationScopesSecondaryNonNull, usePageModeView } from "@vitessce/vit-s";
3
3
  export {
4
4
  bR as PluginAsyncFunction,
@@ -1,4 +1,4 @@
1
- import { aX as BaseDecoder } from "./index-DMwHBnRb.js";
1
+ import { aX as BaseDecoder } from "./index-B1IhEdcb.js";
2
2
  const dctZigZag = new Int32Array([
3
3
  0,
4
4
  1,
@@ -1,5 +1,5 @@
1
1
  import { i as inflate_1 } from "./pako.esm-SxljTded.js";
2
- import { aG as getDefaultExportFromCjs, aX as BaseDecoder, aY as LercParameters, aZ as LercAddCompression } from "./index-DMwHBnRb.js";
2
+ import { aG as getDefaultExportFromCjs, aX as BaseDecoder, aY as LercParameters, aZ as LercAddCompression } from "./index-B1IhEdcb.js";
3
3
  var LercDecode = { exports: {} };
4
4
  var hasRequiredLercDecode;
5
5
  function requireLercDecode() {
@@ -1,4 +1,4 @@
1
- import { aX as BaseDecoder } from "./index-DMwHBnRb.js";
1
+ import { aX as BaseDecoder } from "./index-B1IhEdcb.js";
2
2
  const MIN_BITS = 9;
3
3
  const CLEAR_CODE = 256;
4
4
  const EOI_CODE = 257;
@@ -1,4 +1,4 @@
1
- import { aX as BaseDecoder } from "./index-DMwHBnRb.js";
1
+ import { aX as BaseDecoder } from "./index-B1IhEdcb.js";
2
2
  class PackbitsDecoder extends BaseDecoder {
3
3
  decodeBlock(buffer) {
4
4
  const dataView = new DataView(buffer);
@@ -1,4 +1,4 @@
1
- import { aX as BaseDecoder } from "./index-DMwHBnRb.js";
1
+ import { aX as BaseDecoder } from "./index-B1IhEdcb.js";
2
2
  class RawDecoder extends BaseDecoder {
3
3
  decodeBlock(buffer) {
4
4
  return buffer;
@@ -1,4 +1,4 @@
1
- import { bH as MeshDistanceMaterial, bI as MeshDepthMaterial, bJ as RGBADepthPacking, ae as UniformsUtils, bK as ShaderChunk, a9 as InstancedBufferGeometry, a8 as Sphere, a7 as Box3, am as BackSide, u as DoubleSide, z as Mesh, a5 as FrontSide, v as MeshBasicMaterial, C as Color, e as Vector3, M as Matrix4, V as Vector2, ap as Matrix3, ag as Vector4, a1 as Texture, l as LinearFilter, aD as PlaneGeometry, x as BufferGeometry, aa as Float32BufferAttribute, bL as InstancedBufferAttribute } from "./index-DMwHBnRb.js";
1
+ import { bH as MeshDistanceMaterial, bI as MeshDepthMaterial, bJ as RGBADepthPacking, ae as UniformsUtils, bK as ShaderChunk, a9 as InstancedBufferGeometry, a8 as Sphere, a7 as Box3, am as BackSide, u as DoubleSide, z as Mesh, a5 as FrontSide, v as MeshBasicMaterial, C as Color, e as Vector3, M as Matrix4, V as Vector2, ap as Matrix3, ag as Vector4, a1 as Texture, l as LinearFilter, aD as PlaneGeometry, x as BufferGeometry, aa as Float32BufferAttribute, bL as InstancedBufferAttribute } from "./index-B1IhEdcb.js";
2
2
  function workerBootstrap() {
3
3
  var modules = /* @__PURE__ */ Object.create(null);
4
4
  function registerModule(ref, callback) {
@@ -1,4 +1,4 @@
1
- import { aX as BaseDecoder } from "./index-DMwHBnRb.js";
1
+ import { aX as BaseDecoder } from "./index-B1IhEdcb.js";
2
2
  class WebImageDecoder extends BaseDecoder {
3
3
  constructor() {
4
4
  super();
@@ -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,6 +1,6 @@
1
1
  import { FileType, DataType, ViewType, CoordinationType, AsyncFunctionType, COMPONENT_COORDINATION_TYPES, ALT_ZARR_STORE_TYPES, } from '@vitessce/constants-internal';
2
2
  import { PluginFileType, PluginJointFileType, PluginViewType, PluginCoordinationType, PluginAsyncFunction, } from '@vitessce/plugins';
3
- import { z, obsEmbeddingCsvSchema, obsSetsCsvSchema, obsSpotsCsvSchema, obsPointsCsvSchema, obsLocationsCsvSchema, obsLabelsCsvSchema, featureLabelsCsvSchema, sampleSetsCsvSchema, obsSetsAnndataSchema, sampleSetsAnndataSchema, obsEmbeddingAnndataSchema, obsSpotsAnndataSchema, obsPointsAnndataSchema, obsLocationsAnndataSchema, obsLabelsAnndataSchema, obsFeatureMatrixAnndataSchema, obsFeatureColumnsAnndataSchema, obsSegmentationsAnndataSchema, featureLabelsAnndataSchema, sampleEdgesAnndataSchema, comparisonMetadataAnndataSchema, featureStatsAnndataSchema, featureSetStatsAnndataSchema, obsSetStatsAnndataSchema, rasterJsonSchema, anndataZarrSchema, anndataH5adSchema, spatialdataZarrSchema, anndataCellsZarrSchema, anndataCellSetsZarrSchema, anndataExpressionMatrixZarrSchema, cellsJsonSchema, imageOmeZarrSchema, imageOmeTiffSchema, imageSpatialdataSchema, obsSegmentationsOmeTiffSchema, obsSegmentationsOmeZarrSchema, obsSegmentationsSpatialdataSchema, obsFeatureMatrixSpatialdataSchema, obsSpotsSpatialdataSchema, obsPointsSpatialdataSchema, obsSetsSpatialdataSchema, obsEmbeddingSpatialdataSchema, obsSetPath, rgbArray, obsSetsSchema, imageLayerObj, cellsLayerObj, neighborhoodsLayerObj, moleculesLayerObj, meshGlbSchema, ngSchema, } from '@vitessce/schemas';
3
+ import { z, obsEmbeddingCsvSchema, obsSetsCsvSchema, obsSpotsCsvSchema, obsPointsCsvSchema, obsLocationsCsvSchema, obsLabelsCsvSchema, featureLabelsCsvSchema, sampleSetsCsvSchema, obsSetsAnndataSchema, sampleSetsAnndataSchema, obsEmbeddingAnndataSchema, obsSpotsAnndataSchema, obsPointsAnndataSchema, obsLocationsAnndataSchema, obsLabelsAnndataSchema, obsFeatureMatrixAnndataSchema, obsFeatureColumnsAnndataSchema, obsSegmentationsAnndataSchema, featureLabelsAnndataSchema, sampleEdgesAnndataSchema, comparisonMetadataAnndataSchema, featureStatsAnndataSchema, featureSetStatsAnndataSchema, obsSetStatsAnndataSchema, rasterJsonSchema, anndataZarrSchema, anndataH5adSchema, spatialdataZarrSchema, anndataCellsZarrSchema, anndataCellSetsZarrSchema, anndataExpressionMatrixZarrSchema, cellsJsonSchema, imageOmeZarrSchema, imageOmeTiffSchema, imageSpatialdataSchema, obsSegmentationsOmeTiffSchema, obsSegmentationsOmeZarrSchema, obsSegmentationsSpatialdataSchema, obsFeatureMatrixSpatialdataSchema, obsSpotsSpatialdataSchema, obsPointsSpatialdataSchema, obsSetsSpatialdataSchema, obsEmbeddingSpatialdataSchema, obsSetPath, rgbArray, obsSetsSchema, imageLayerObj, cellsLayerObj, neighborhoodsLayerObj, moleculesLayerObj, meshGlbSchema, ngPrecomputedMeshSchema, ngPointAnnotationSchema, } from '@vitessce/schemas';
4
4
  // Register view type plugins
5
5
  import { DescriptionSubscriber } from '@vitessce/description';
6
6
  import { ObsSetsManagerSubscriber } from '@vitessce/obs-sets-manager';
@@ -39,7 +39,7 @@ OmeZarrLoader, OmeZarrAsObsSegmentationsLoader,
39
39
  // SpatialData
40
40
  SpatialDataTableSource, SpatialDataShapesSource, SpatialDataPointsSource, SpatialDataImageLoader, SpatialDataLabelsLoader, SpatialDataObsSpotsLoader, SpatialDataObsPointsLoader, SpatialDataObsSegmentationsLoader, SpatialDataObsSetsLoader, SpatialDataObsEmbeddingLoader, SpatialDataFeatureLabelsLoader,
41
41
  // NG precomputed
42
- NgPrecomputedMeshSource, NgPrecomputedMeshLoader, } from '@vitessce/spatial-zarr';
42
+ NgPassthroughSource, NgPrecomputedMeshLoader, NgAnnotationPointsLoader, } from '@vitessce/spatial-zarr';
43
43
  import { OmeTiffAsObsSegmentationsLoader, OmeTiffLoader, OmeTiffSource, } from '@vitessce/ome-tiff';
44
44
  import { GlbSource, GlbLoader, } from '@vitessce/glb';
45
45
  // Joint file types
@@ -160,7 +160,8 @@ export const baseFileTypes = [
160
160
  ...makeZarrFileTypes(FileType.OBS_EMBEDDING_SPATIALDATA_ZARR, DataType.OBS_EMBEDDING, SpatialDataObsEmbeddingLoader, SpatialDataTableSource, obsEmbeddingSpatialdataSchema),
161
161
  ...makeZarrFileTypes(FileType.FEATURE_LABELS_SPATIALDATA_ZARR, DataType.FEATURE_LABELS, SpatialDataFeatureLabelsLoader, SpatialDataTableSource, featureLabelsAnndataSchema),
162
162
  makeFileType(FileType.OBS_SEGMENTATIONS_GLB, DataType.OBS_SEGMENTATIONS, GlbLoader, GlbSource, meshGlbSchema),
163
- makeFileType(FileType.OBS_SEGMENTATIONS_NG_PRECOMPUTED, DataType.OBS_SEGMENTATIONS, NgPrecomputedMeshLoader, NgPrecomputedMeshSource, ngSchema),
163
+ makeFileType(FileType.OBS_SEGMENTATIONS_NG_PRECOMPUTED, DataType.OBS_SEGMENTATIONS, NgPrecomputedMeshLoader, NgPassthroughSource, ngPrecomputedMeshSchema),
164
+ makeFileType(FileType.OBS_POINTS_NG_ANNOTATIONS, DataType.OBS_POINTS, NgAnnotationPointsLoader, NgPassthroughSource, ngPointAnnotationSchema),
164
165
  // All legacy file types
165
166
  makeFileType(FileType.OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR, DataType.OBS_FEATURE_MATRIX, MatrixZarrAsObsFeatureMatrixLoader, ZarrDataSource, z.null()),
166
167
  makeFileType(FileType.IMAGE_RASTER_JSON, DataType.IMAGE, RasterJsonAsImageLoader, JsonSource, rasterJsonSchema),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitessce/all",
3
- "version": "3.9.4",
3
+ "version": "3.9.6",
4
4
  "author": "HIDIVE Lab at HMS",
5
5
  "homepage": "http://vitessce.io",
6
6
  "repository": {
@@ -17,38 +17,38 @@
17
17
  ],
18
18
  "dependencies": {
19
19
  "zod": "^3.21.4",
20
- "@vitessce/styles": "3.9.4",
21
- "@vitessce/constants-internal": "3.9.4",
22
- "@vitessce/abstract": "3.9.4",
23
- "@vitessce/error": "3.9.4",
24
- "@vitessce/csv": "3.9.4",
25
- "@vitessce/description": "3.9.4",
26
- "@vitessce/feature-list": "3.9.4",
27
- "@vitessce/heatmap": "3.9.4",
28
- "@vitessce/genomic-profiles": "3.9.4",
29
- "@vitessce/glb": "3.9.4",
30
- "@vitessce/json": "3.9.4",
31
- "@vitessce/layer-controller-beta": "3.9.4",
32
- "@vitessce/layer-controller": "3.9.4",
33
- "@vitessce/link-controller": "3.9.4",
34
- "@vitessce/obs-sets-manager": "3.9.4",
35
- "@vitessce/ome-tiff": "3.9.4",
36
- "@vitessce/plugins": "3.9.4",
37
- "@vitessce/scatterplot-gating": "3.9.4",
38
- "@vitessce/scatterplot-embedding": "3.9.4",
39
- "@vitessce/schemas": "3.9.4",
40
- "@vitessce/spatial": "3.9.4",
41
- "@vitessce/spatial-beta": "3.9.4",
42
- "@vitessce/statistical-plots": "3.9.4",
43
- "@vitessce/status": "3.9.4",
44
- "@vitessce/vit-s": "3.9.4",
45
- "@vitessce/globals": "3.9.4",
46
- "@vitessce/zarr": "3.9.4",
47
- "@vitessce/spatial-zarr": "3.9.4",
48
- "@vitessce/spatial-three": "3.9.4",
49
- "@vitessce/neuroglancer": "3.9.4",
50
- "@vitessce/biomarker-select": "3.9.4",
51
- "@vitessce/spatial-accelerated": "3.9.4"
20
+ "@vitessce/styles": "3.9.6",
21
+ "@vitessce/constants-internal": "3.9.6",
22
+ "@vitessce/abstract": "3.9.6",
23
+ "@vitessce/error": "3.9.6",
24
+ "@vitessce/description": "3.9.6",
25
+ "@vitessce/csv": "3.9.6",
26
+ "@vitessce/feature-list": "3.9.6",
27
+ "@vitessce/heatmap": "3.9.6",
28
+ "@vitessce/genomic-profiles": "3.9.6",
29
+ "@vitessce/glb": "3.9.6",
30
+ "@vitessce/json": "3.9.6",
31
+ "@vitessce/layer-controller-beta": "3.9.6",
32
+ "@vitessce/layer-controller": "3.9.6",
33
+ "@vitessce/link-controller": "3.9.6",
34
+ "@vitessce/scatterplot-gating": "3.9.6",
35
+ "@vitessce/plugins": "3.9.6",
36
+ "@vitessce/scatterplot-embedding": "3.9.6",
37
+ "@vitessce/schemas": "3.9.6",
38
+ "@vitessce/obs-sets-manager": "3.9.6",
39
+ "@vitessce/spatial": "3.9.6",
40
+ "@vitessce/spatial-beta": "3.9.6",
41
+ "@vitessce/statistical-plots": "3.9.6",
42
+ "@vitessce/status": "3.9.6",
43
+ "@vitessce/zarr": "3.9.6",
44
+ "@vitessce/vit-s": "3.9.6",
45
+ "@vitessce/globals": "3.9.6",
46
+ "@vitessce/spatial-zarr": "3.9.6",
47
+ "@vitessce/spatial-three": "3.9.6",
48
+ "@vitessce/biomarker-select": "3.9.6",
49
+ "@vitessce/spatial-accelerated": "3.9.6",
50
+ "@vitessce/ome-tiff": "3.9.6",
51
+ "@vitessce/neuroglancer": "3.9.6"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/react": "^18.0.28",
@@ -73,7 +73,8 @@ import {
73
73
  neighborhoodsLayerObj,
74
74
  moleculesLayerObj,
75
75
  meshGlbSchema,
76
- ngSchema,
76
+ ngPrecomputedMeshSchema,
77
+ ngPointAnnotationSchema,
77
78
  } from '@vitessce/schemas';
78
79
 
79
80
  // Register view type plugins
@@ -183,8 +184,9 @@ import {
183
184
  SpatialDataObsEmbeddingLoader,
184
185
  SpatialDataFeatureLabelsLoader,
185
186
  // NG precomputed
186
- NgPrecomputedMeshSource,
187
+ NgPassthroughSource,
187
188
  NgPrecomputedMeshLoader,
189
+ NgAnnotationPointsLoader,
188
190
  } from '@vitessce/spatial-zarr';
189
191
 
190
192
  import {
@@ -346,7 +348,9 @@ export const baseFileTypes = [
346
348
  ...makeZarrFileTypes(FileType.FEATURE_LABELS_SPATIALDATA_ZARR, DataType.FEATURE_LABELS, SpatialDataFeatureLabelsLoader, SpatialDataTableSource, featureLabelsAnndataSchema),
347
349
 
348
350
  makeFileType(FileType.OBS_SEGMENTATIONS_GLB, DataType.OBS_SEGMENTATIONS, GlbLoader, GlbSource, meshGlbSchema),
349
- makeFileType(FileType.OBS_SEGMENTATIONS_NG_PRECOMPUTED, DataType.OBS_SEGMENTATIONS, NgPrecomputedMeshLoader, NgPrecomputedMeshSource, ngSchema),
351
+ makeFileType(FileType.OBS_SEGMENTATIONS_NG_PRECOMPUTED, DataType.OBS_SEGMENTATIONS, NgPrecomputedMeshLoader, NgPassthroughSource, ngPrecomputedMeshSchema),
352
+ makeFileType(FileType.OBS_POINTS_NG_ANNOTATIONS, DataType.OBS_POINTS, NgAnnotationPointsLoader, NgPassthroughSource, ngPointAnnotationSchema),
353
+
350
354
  // All legacy file types
351
355
  makeFileType(FileType.OBS_FEATURE_MATRIX_EXPRESSION_MATRIX_ZARR, DataType.OBS_FEATURE_MATRIX, MatrixZarrAsObsFeatureMatrixLoader, ZarrDataSource, z.null()),
352
356
  makeFileType(FileType.IMAGE_RASTER_JSON, DataType.IMAGE, RasterJsonAsImageLoader, JsonSource, rasterJsonSchema),