@vitessce/all 4.0.0-test.0 → 4.0.0-test.2
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/{GeometryAndMeshXR-Bewsp5O-.js → GeometryAndMeshXR-KXexgmZr.js} +1 -1
- package/dist/{ReactNeuroglancer-CGctZU7S.js → ReactNeuroglancer-D875XL_P.js} +83 -28
- package/dist/{deflate-DACPPK4G.js → deflate-DUJiTyJi.js} +1 -1
- package/dist/{higlass-DPu0XbrS.js → higlass-DdhnNRlZ.js} +9896 -7880
- package/dist/{index-5W6nu-ix.js → index-BYPSbKAg.js} +666 -405
- package/dist/{index-DxpZAn2M.js → index-CNZN2FGp.js} +62 -5
- package/dist/{index-DXuQcXKb.js → index-CoIDzRuL.js} +15 -5
- package/dist/index.js +1 -1
- package/dist/{jpeg-fpomMAyh.js → jpeg-Bo_KSlUd.js} +1 -1
- package/dist/{lerc-5t7sN-sd.js → lerc-CXalC3Iu.js} +1 -1
- package/dist/{lzw-CC_Aw25a.js → lzw-COIaKN_E.js} +1 -1
- package/dist/{packbits-VBSAsHuN.js → packbits-Cg6ncl2O.js} +1 -1
- package/dist/{raw-DK74vK-V.js → raw-4Cprab4h.js} +1 -1
- package/dist/{webimage-BdYU0dUW.js → webimage-DsCsw_bd.js} +1 -1
- package/dist-tsc/base-plugins.d.ts.map +1 -1
- package/dist-tsc/base-plugins.js +1 -0
- package/package.json +34 -33
- package/src/base-plugins.ts +1 -0
|
@@ -3,7 +3,7 @@ import React__default, { useRef, useState, useEffect, Suspense, forwardRef } fro
|
|
|
3
3
|
import { Canvas } from "@react-three/fiber";
|
|
4
4
|
import { Center, Text, Line, Bvh, OrbitControls } from "@react-three/drei";
|
|
5
5
|
import { Matrix3, Matrix4, Vector3, Vector2, UniformsUtils, Data3DTexture, RedFormat, FloatType, LinearFilter, FrontSide, Scene, Group, MeshPhysicalMaterial, MeshBasicMaterial, MeshStandardMaterial, BackSide } from "three";
|
|
6
|
-
import { C as CoordinationType, g as getImageSize } from "./index-
|
|
6
|
+
import { C as CoordinationType, g as getImageSize } from "./index-BYPSbKAg.js";
|
|
7
7
|
function MeasureLine({ currentLine, scale }) {
|
|
8
8
|
const textRef = useRef(null);
|
|
9
9
|
return jsxs("group", { children: [jsx(Center, { bottom: true, right: true, position: [currentLine.midPoint.x, currentLine.midPoint.y, currentLine.midPoint.z], rotation: [0, 0, 0], children: jsx(Text, { color: "gray", scale: 0.05, ref: textRef, children: `${(currentLine.startPoint.distanceTo(currentLine.endPoint) * scale).toFixed(2)} µm` }) }), jsx(Line, {
|
|
@@ -16,19 +16,45 @@ function MeasureLine({ currentLine, scale }) {
|
|
|
16
16
|
}
|
|
17
17
|
class Volume {
|
|
18
18
|
spacing = [1, 1, 1];
|
|
19
|
+
// Offset of the volume in the RAS coordinate system
|
|
19
20
|
offset = [0, 0, 0];
|
|
21
|
+
// The IJK to RAS matrix
|
|
20
22
|
matrix = new Matrix3().identity();
|
|
23
|
+
// The list of all the slices associated to this volume
|
|
21
24
|
sliceList = [];
|
|
25
|
+
/**
|
|
26
|
+
* The voxels with values under this
|
|
27
|
+
* threshold won't appear in the slices.
|
|
28
|
+
* If changed, geometryNeedsUpdate is automatically set to true on all
|
|
29
|
+
* the slices associated to this volume
|
|
30
|
+
*/
|
|
22
31
|
lowerThresholdValue = -Infinity;
|
|
32
|
+
/**
|
|
33
|
+
* The voxels with values over this
|
|
34
|
+
* threshold won't appear in the slices.
|
|
35
|
+
* If changed, geometryNeedsUpdate is automatically set to true on all
|
|
36
|
+
* the slices associated to this volume
|
|
37
|
+
*/
|
|
23
38
|
upperThresholdValue = Infinity;
|
|
39
|
+
// Width of the volume in the IJK coordinate system
|
|
24
40
|
xLength = 1;
|
|
41
|
+
// Height of the volume in the IJK coordinate system
|
|
25
42
|
yLength = 1;
|
|
43
|
+
// Depth of the volume in the IJK coordinate system
|
|
26
44
|
zLength = 1;
|
|
45
|
+
// Data of the volume
|
|
27
46
|
data;
|
|
28
47
|
RASDimensions;
|
|
29
48
|
inverseMatrix;
|
|
30
49
|
min;
|
|
31
50
|
max;
|
|
51
|
+
/**
|
|
52
|
+
* @param {number} xLength Width of the volume
|
|
53
|
+
* @param {number} yLength Length of the volume
|
|
54
|
+
* @param {number} zLength Depth of the volume
|
|
55
|
+
* @param {string} type The type of data (uint8, uint16, ...)
|
|
56
|
+
* @param {ArrayBuffer} arrayBuffer The buffer with volume data
|
|
57
|
+
*/
|
|
32
58
|
constructor(xLength, yLength, zLength, type, arrayBuffer) {
|
|
33
59
|
if (xLength !== void 0) {
|
|
34
60
|
this.xLength = Number(xLength) || 1;
|
|
@@ -128,18 +154,33 @@ class Volume {
|
|
|
128
154
|
slice.geometryNeedsUpdate = true;
|
|
129
155
|
});
|
|
130
156
|
}
|
|
157
|
+
/**
|
|
158
|
+
* Shortcut for data[access(i,j,k)]
|
|
159
|
+
*/
|
|
131
160
|
getData(i, j, k) {
|
|
132
161
|
return this.data[k * this.xLength * this.yLength + j * this.xLength + i];
|
|
133
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Compute the index in the data
|
|
165
|
+
* array corresponding to the given coordinates in IJK system
|
|
166
|
+
*/
|
|
134
167
|
access(i, j, k) {
|
|
135
168
|
return k * this.xLength * this.yLength + j * this.xLength + i;
|
|
136
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Retrieve the IJK coordinates of the voxel
|
|
172
|
+
* corresponding of the given index in the data
|
|
173
|
+
*/
|
|
137
174
|
reverseAccess(index2) {
|
|
138
175
|
const z = Math.floor(index2 / (this.yLength * this.xLength));
|
|
139
176
|
const y = Math.floor((index2 - z * this.yLength * this.xLength) / this.xLength);
|
|
140
177
|
const x = index2 - z * this.yLength * this.xLength - y * this.xLength;
|
|
141
178
|
return [x, y, z];
|
|
142
179
|
}
|
|
180
|
+
/**
|
|
181
|
+
* Apply a function to all the voxels, be careful,
|
|
182
|
+
* the value will be replaced
|
|
183
|
+
*/
|
|
143
184
|
// eslint-disable-next-line max-len
|
|
144
185
|
map(functionToMap, contextParam) {
|
|
145
186
|
const { length } = this.data;
|
|
@@ -149,6 +190,13 @@ class Volume {
|
|
|
149
190
|
}
|
|
150
191
|
return this;
|
|
151
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Compute the orientation
|
|
195
|
+
* of the slice and returns all the information relative to the
|
|
196
|
+
* geometry such as sliceAccess,
|
|
197
|
+
* the plane matrix (orientation and position in RAS coordinate)
|
|
198
|
+
* and the dimensions of the plane in both coordinate system.
|
|
199
|
+
*/
|
|
152
200
|
extractPerpendicularPlane(axis, RASIndex) {
|
|
153
201
|
const planeMatrix = new Matrix4().identity();
|
|
154
202
|
const volume = this;
|
|
@@ -227,6 +275,11 @@ class Volume {
|
|
|
227
275
|
planeHeight
|
|
228
276
|
};
|
|
229
277
|
}
|
|
278
|
+
/**
|
|
279
|
+
* Compute the minimum
|
|
280
|
+
* and the maximum of the data in the volume
|
|
281
|
+
* @returns {Array} [min,max]
|
|
282
|
+
*/
|
|
230
283
|
computeMinMax() {
|
|
231
284
|
let min = Infinity;
|
|
232
285
|
let max = -Infinity;
|
|
@@ -832,7 +885,11 @@ function getData3DTexture(volume) {
|
|
|
832
885
|
}
|
|
833
886
|
function getPhysicalSizeScalingMatrix(loader) {
|
|
834
887
|
const { x, y, z } = loader?.meta?.physicalSizes ?? {};
|
|
835
|
-
return [
|
|
888
|
+
return [
|
|
889
|
+
x ?? { size: 1 },
|
|
890
|
+
y ?? { size: 1 },
|
|
891
|
+
z ?? { size: 1 }
|
|
892
|
+
];
|
|
836
893
|
}
|
|
837
894
|
function minMaxVolume(volume) {
|
|
838
895
|
const [min, max] = volume.computeMinMax();
|
|
@@ -870,10 +927,10 @@ function stringifyLineData(lineData) {
|
|
|
870
927
|
return `${lineData.startPoint.x},${lineData.startPoint.y},${lineData.startPoint.z};${lineData.endPoint.x},${lineData.endPoint.y},${lineData.endPoint.z}`;
|
|
871
928
|
}
|
|
872
929
|
function isValidGeometrySize(size) {
|
|
873
|
-
if (!Array.isArray(size) || size.length !==
|
|
930
|
+
if (!Array.isArray(size) || size.length !== 3) {
|
|
874
931
|
return false;
|
|
875
932
|
}
|
|
876
|
-
return size.every((s) => typeof s === "number"
|
|
933
|
+
return size.every((s) => typeof s === "number" && Number.isFinite(s));
|
|
877
934
|
}
|
|
878
935
|
function GeometryAndMesh(props) {
|
|
879
936
|
const { segmentationGroup, segmentationSettings, segmentationSceneScale, renderingSettings, materialRef, highlightEntity, setObsHighlight } = props;
|
|
@@ -887,7 +944,7 @@ function GeometryAndMesh(props) {
|
|
|
887
944
|
setObsHighlight(e.object.name);
|
|
888
945
|
}, onPointerOut: () => setObsHighlight(null) }) })] }) : null, renderingSettings.uniforms && renderingSettings.shader && renderingSettings.meshScale && renderingSettings.geometrySize ? jsx("group", { children: jsxs("mesh", { scale: renderingSettings.meshScale, ref: materialRef, children: [jsx("boxGeometry", { args: renderingSettings.geometrySize }), jsx("shaderMaterial", { customProgramCacheKey: () => "1", side: FrontSide, uniforms: renderingSettings.uniforms, needsUpdate: true, transparent: true, vertexShader: renderingSettings.shader.vertexShader, fragmentShader: renderingSettings.shader.fragmentShader })] }) }) : null] }), jsx("group", { name: "lines", children: lines.map((object) => jsx(MeasureLine, { currentLine: object, scale: 1 }, stringifyLineData(object))) })] });
|
|
889
946
|
}
|
|
890
|
-
const LazyGeometryAndMeshXR = React__default.lazy(() => import("./GeometryAndMeshXR-
|
|
947
|
+
const LazyGeometryAndMeshXR = React__default.lazy(() => import("./GeometryAndMeshXR-KXexgmZr.js").catch(() => ({ default: GeometryAndMesh })));
|
|
891
948
|
const LazyXRSceneComponents = React__default.lazy(() => import("./XRSceneComponents-DnZLSAJz.js").catch(() => ({ default: () => null })));
|
|
892
949
|
function SpatialThree(props) {
|
|
893
950
|
const materialRef = useRef(null);
|
|
@@ -4,7 +4,7 @@ import { useThree, useFrame, Canvas } from "@react-three/fiber";
|
|
|
4
4
|
import { OrbitControls } from "@react-three/drei";
|
|
5
5
|
import * as THREE from "three";
|
|
6
6
|
import { Data3DTexture, RedFormat, UnsignedByteType, LinearFilter, RedIntegerFormat, UnsignedIntType, NearestFilter, Vector3, Vector2, Vector4, UniformsUtils, WebGLMultipleRenderTargets } from "three";
|
|
7
|
-
import { l as log, i as isEqual, C as CoordinationType, u as useEventCallback } from "./index-
|
|
7
|
+
import { l as log, i as isEqual, C as CoordinationType, u as useEventCallback } from "./index-BYPSbKAg.js";
|
|
8
8
|
const LogLevel = {
|
|
9
9
|
INFO: "info",
|
|
10
10
|
WARN: "warn",
|
|
@@ -232,7 +232,8 @@ function _requestBufferToRequestObjects(buffer, k, optsForWeighting) {
|
|
|
232
232
|
}
|
|
233
233
|
counts.set(packed, (counts.get(packed) || 0) + weight);
|
|
234
234
|
}
|
|
235
|
-
const
|
|
235
|
+
const sorted = Array.from(counts.entries()).toSorted((a, b) => b[1] - a[1]);
|
|
236
|
+
const requests = sorted.slice(0, k).map(([packed]) => ({
|
|
236
237
|
x: packed >> 22 & 1023,
|
|
237
238
|
y: packed >> 12 & 1023,
|
|
238
239
|
z: packed & 4095
|
|
@@ -900,6 +901,10 @@ class VolumeDataManager {
|
|
|
900
901
|
* the center of the render target.
|
|
901
902
|
*/
|
|
902
903
|
async processRequestData(buffer, optsForWeighting) {
|
|
904
|
+
if (this.initStatus !== INIT_STATUS.COMPLETE) {
|
|
905
|
+
log.debug("processRequestData: not yet initialized, skipping");
|
|
906
|
+
return;
|
|
907
|
+
}
|
|
903
908
|
if (this.isBusy) {
|
|
904
909
|
log.debug("processRequestData: already busy, skipping");
|
|
905
910
|
return;
|
|
@@ -3584,6 +3589,7 @@ function VolumeView(props) {
|
|
|
3584
3589
|
geometrySize: [1, 1, 1]
|
|
3585
3590
|
});
|
|
3586
3591
|
const is3D = spatialRenderingMode === "3D";
|
|
3592
|
+
const [dmInitComplete, setDmInitComplete] = useState(false);
|
|
3587
3593
|
const screenSceneRef = useRef(null);
|
|
3588
3594
|
const screenCameraRef = useRef(null);
|
|
3589
3595
|
const screenQuadRef = useRef(null);
|
|
@@ -3656,6 +3662,7 @@ function VolumeView(props) {
|
|
|
3656
3662
|
const initializeDataManager = async () => {
|
|
3657
3663
|
if (dataManager.initStatus === INIT_STATUS.COMPLETE) {
|
|
3658
3664
|
log.debug("dataManager already initialized, skipping");
|
|
3665
|
+
setDmInitComplete(true);
|
|
3659
3666
|
return;
|
|
3660
3667
|
}
|
|
3661
3668
|
dataManager.initImages(images, imageLayerScopes);
|
|
@@ -3668,6 +3675,7 @@ function VolumeView(props) {
|
|
|
3668
3675
|
renderManager.setZarrUniforms(dataManager.zarrStore, dataManager.PT);
|
|
3669
3676
|
renderManager.setChannelMapping(dataManager.channels.colorMappings);
|
|
3670
3677
|
log.debug("rm.uniforms", renderManager.uniforms);
|
|
3678
|
+
setDmInitComplete(true);
|
|
3671
3679
|
invalidate();
|
|
3672
3680
|
};
|
|
3673
3681
|
initializeDataManager();
|
|
@@ -3677,7 +3685,7 @@ function VolumeView(props) {
|
|
|
3677
3685
|
}, [dataManager, renderManager, images, imageLayerScopes]);
|
|
3678
3686
|
useEffect(() => {
|
|
3679
3687
|
const on3D = spatialRenderingMode === "3D";
|
|
3680
|
-
if (on3D && dataManager && renderManager) {
|
|
3688
|
+
if (on3D && dataManager && renderManager && dmInitComplete) {
|
|
3681
3689
|
logWithColor("useEffect spatialRenderingMode");
|
|
3682
3690
|
const propsForRenderManager = {
|
|
3683
3691
|
images,
|
|
@@ -3711,7 +3719,7 @@ function VolumeView(props) {
|
|
|
3711
3719
|
}
|
|
3712
3720
|
}
|
|
3713
3721
|
}
|
|
3714
|
-
}, [dataManager, renderManager, images, imageLayerScopes, imageLayerCoordination, imageChannelScopesByLayer, imageChannelCoordination, spatialRenderingMode]);
|
|
3722
|
+
}, [dataManager, renderManager, images, imageLayerScopes, imageLayerCoordination, imageChannelScopesByLayer, imageChannelCoordination, spatialRenderingMode, dmInitComplete]);
|
|
3715
3723
|
const RENDER_PRIORITY = 1;
|
|
3716
3724
|
useFrame((state, delta, xrFrame) => {
|
|
3717
3725
|
if (!mrtRef.current || !dataManager || !renderManager) {
|
|
@@ -3762,6 +3770,8 @@ function VolumeView(props) {
|
|
|
3762
3770
|
}, 300);
|
|
3763
3771
|
});
|
|
3764
3772
|
useEffect(() => {
|
|
3773
|
+
if (!dmInitComplete)
|
|
3774
|
+
return;
|
|
3765
3775
|
logWithColor("useEffect firstImageLayerChannelCoordination");
|
|
3766
3776
|
setIsInteracting(true);
|
|
3767
3777
|
log.debug("something about channels changed");
|
|
@@ -3771,7 +3781,7 @@ function VolumeView(props) {
|
|
|
3771
3781
|
interactionTimeoutRef.current = setTimeout(() => {
|
|
3772
3782
|
setIsInteracting(false);
|
|
3773
3783
|
}, 300);
|
|
3774
|
-
}, [dataManager, firstImageLayerChannelCoordination, renderManager, setIsInteracting]);
|
|
3784
|
+
}, [dataManager, firstImageLayerChannelCoordination, renderManager, setIsInteracting, dmInitComplete]);
|
|
3775
3785
|
const stopLoading = useEventCallback(() => {
|
|
3776
3786
|
if (dataManager) {
|
|
3777
3787
|
dataManager.stopLoading();
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a5, a3, a1, a4, a2, a0, a6 } from "./index-
|
|
1
|
+
import { a5, a3, a1, a4, a2, a0, a6 } from "./index-BYPSbKAg.js";
|
|
2
2
|
import { useComplexCoordination, useComplexCoordinationSecondary, useCoordination, useCoordinationScopes, useCoordinationScopesBy, useGridItemSize, useMultiCoordinationScopesNonNull, useMultiCoordinationScopesSecondaryNonNull, usePageModeView } from "@vitessce/vit-s";
|
|
3
3
|
export {
|
|
4
4
|
a5 as PluginAsyncFunction,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as inflate_1 } from "./pako.esm-SxljTded.js";
|
|
2
|
-
import { a as getDefaultExportFromCjs, B as BaseDecoder, L as LercParameters, b as LercAddCompression } from "./index-
|
|
2
|
+
import { a as getDefaultExportFromCjs, B as BaseDecoder, L as LercParameters, b as LercAddCompression } from "./index-BYPSbKAg.js";
|
|
3
3
|
var LercDecode = { exports: {} };
|
|
4
4
|
var hasRequiredLercDecode;
|
|
5
5
|
function requireLercDecode() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-plugins.d.ts","sourceRoot":"","sources":["../src/base-plugins.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,CAAC,EAsDF,MAAM,mBAAmB,CAAC;AAqL3B,eAAO,MAAM,aAAa,kBA+BzB,CAAC;AAEF,eAAO,MAAM,aAAa,wDA6EzB,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"base-plugins.d.ts","sourceRoot":"","sources":["../src/base-plugins.ts"],"names":[],"mappings":"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"}
|
package/dist-tsc/base-plugins.js
CHANGED
|
@@ -311,6 +311,7 @@ export const baseCoordinationTypes = [
|
|
|
311
311
|
new PluginCoordinationType(CoordinationType.SPATIAL_CHANNEL_COLOR, [255, 255, 255], z.array(z.number()).length(3).nullable()),
|
|
312
312
|
new PluginCoordinationType(CoordinationType.SPATIAL_SEGMENTATION_FILLED, true, z.boolean()),
|
|
313
313
|
new PluginCoordinationType(CoordinationType.SPATIAL_SEGMENTATION_STROKE_WIDTH, 1.0, z.number()),
|
|
314
|
+
new PluginCoordinationType(CoordinationType.SPATIAL_POINT_STROKE_WIDTH, 0.0, z.number()),
|
|
314
315
|
new PluginCoordinationType(CoordinationType.SPATIAL_LOD_FACTOR, 1.0, z.number()),
|
|
315
316
|
// Reference: https://www.awaresystems.be/imaging/tiff/tifftags/photometricinterpretation.html
|
|
316
317
|
new PluginCoordinationType(CoordinationType.PHOTOMETRIC_INTERPRETATION, null, z.enum(['BlackIsZero', 'RGB']).nullable()),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vitessce/all",
|
|
3
|
-
"version": "4.0.0-test.
|
|
3
|
+
"version": "4.0.0-test.2",
|
|
4
4
|
"author": "HIDIVE Lab at HMS",
|
|
5
5
|
"homepage": "http://vitessce.io",
|
|
6
6
|
"repository": {
|
|
@@ -17,42 +17,43 @@
|
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"zod": "^3.21.4",
|
|
20
|
-
"@vitessce/constants-internal": "4.0.0-test.
|
|
21
|
-
"@vitessce/
|
|
22
|
-
"@vitessce/
|
|
23
|
-
"@vitessce/
|
|
24
|
-
"@vitessce/
|
|
25
|
-
"@vitessce/
|
|
26
|
-
"@vitessce/
|
|
27
|
-
"@vitessce/
|
|
28
|
-
"@vitessce/feature-list": "4.0.0-test.
|
|
29
|
-
"@vitessce/
|
|
30
|
-
"@vitessce/
|
|
31
|
-
"@vitessce/
|
|
32
|
-
"@vitessce/link-controller": "4.0.0-test.
|
|
33
|
-
"@vitessce/
|
|
34
|
-
"@vitessce/
|
|
35
|
-
"@vitessce/
|
|
36
|
-
"@vitessce/
|
|
37
|
-
"@vitessce/
|
|
38
|
-
"@vitessce/
|
|
39
|
-
"@vitessce/
|
|
40
|
-
"@vitessce/
|
|
41
|
-
"@vitessce/
|
|
42
|
-
"@vitessce/
|
|
43
|
-
"@vitessce/
|
|
44
|
-
"@vitessce/
|
|
45
|
-
"@vitessce/
|
|
46
|
-
"@vitessce/
|
|
47
|
-
"@vitessce/zarr": "4.0.0-test.
|
|
48
|
-
"@vitessce/
|
|
49
|
-
"@vitessce/spatial-
|
|
50
|
-
"@vitessce/
|
|
51
|
-
"@vitessce/
|
|
20
|
+
"@vitessce/constants-internal": "4.0.0-test.2",
|
|
21
|
+
"@vitessce/styles": "4.0.0-test.2",
|
|
22
|
+
"@vitessce/genomic-profiles": "4.0.0-test.2",
|
|
23
|
+
"@vitessce/error": "4.0.0-test.2",
|
|
24
|
+
"@vitessce/abstract": "4.0.0-test.2",
|
|
25
|
+
"@vitessce/heatmap": "4.0.0-test.2",
|
|
26
|
+
"@vitessce/description": "4.0.0-test.2",
|
|
27
|
+
"@vitessce/glb": "4.0.0-test.2",
|
|
28
|
+
"@vitessce/feature-list": "4.0.0-test.2",
|
|
29
|
+
"@vitessce/csv": "4.0.0-test.2",
|
|
30
|
+
"@vitessce/layer-controller": "4.0.0-test.2",
|
|
31
|
+
"@vitessce/json": "4.0.0-test.2",
|
|
32
|
+
"@vitessce/link-controller": "4.0.0-test.2",
|
|
33
|
+
"@vitessce/layer-controller-beta": "4.0.0-test.2",
|
|
34
|
+
"@vitessce/obs-sets-manager": "4.0.0-test.2",
|
|
35
|
+
"@vitessce/scatterplot-embedding": "4.0.0-test.2",
|
|
36
|
+
"@vitessce/spatial-beta": "4.0.0-test.2",
|
|
37
|
+
"@vitessce/statistical-plots": "4.0.0-test.2",
|
|
38
|
+
"@vitessce/status": "4.0.0-test.2",
|
|
39
|
+
"@vitessce/vit-s": "4.0.0-test.2",
|
|
40
|
+
"@vitessce/spatial": "4.0.0-test.2",
|
|
41
|
+
"@vitessce/globals": "4.0.0-test.2",
|
|
42
|
+
"@vitessce/spatial-accelerated": "4.0.0-test.2",
|
|
43
|
+
"@vitessce/ome-tiff": "4.0.0-test.2",
|
|
44
|
+
"@vitessce/schemas": "4.0.0-test.2",
|
|
45
|
+
"@vitessce/plugins": "4.0.0-test.2",
|
|
46
|
+
"@vitessce/biomarker-select": "4.0.0-test.2",
|
|
47
|
+
"@vitessce/zarr": "4.0.0-test.2",
|
|
48
|
+
"@vitessce/scatterplot-gating": "4.0.0-test.2",
|
|
49
|
+
"@vitessce/spatial-zarr": "4.0.0-test.2",
|
|
50
|
+
"@vitessce/spatial-three": "4.0.0-test.2",
|
|
51
|
+
"@vitessce/neuroglancer": "4.0.0-test.2"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@types/react": "^19.0.0",
|
|
55
55
|
"react": "19.1.0",
|
|
56
|
+
"react-dom": "19.1.0",
|
|
56
57
|
"vitest": "^3.1.4"
|
|
57
58
|
},
|
|
58
59
|
"peerDependencies": {
|
package/src/base-plugins.ts
CHANGED
|
@@ -594,6 +594,7 @@ export const baseCoordinationTypes = [
|
|
|
594
594
|
new PluginCoordinationType(CoordinationType.SPATIAL_CHANNEL_COLOR, [255, 255, 255], z.array(z.number()).length(3).nullable()),
|
|
595
595
|
new PluginCoordinationType(CoordinationType.SPATIAL_SEGMENTATION_FILLED, true, z.boolean()),
|
|
596
596
|
new PluginCoordinationType(CoordinationType.SPATIAL_SEGMENTATION_STROKE_WIDTH, 1.0, z.number()),
|
|
597
|
+
new PluginCoordinationType(CoordinationType.SPATIAL_POINT_STROKE_WIDTH, 0.0, z.number()),
|
|
597
598
|
new PluginCoordinationType(CoordinationType.SPATIAL_LOD_FACTOR, 1.0, z.number()),
|
|
598
599
|
// Reference: https://www.awaresystems.be/imaging/tiff/tifftags/photometricinterpretation.html
|
|
599
600
|
new PluginCoordinationType(CoordinationType.PHOTOMETRIC_INTERPRETATION, null, z.enum(['BlackIsZero', 'RGB']).nullable()),
|