@vitessce/scatterplot-gating 3.6.17 → 3.7.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/{deflate-DxHXH5xg.js → deflate-WkvPtv5P.js} +1 -1
- package/dist/{index-DNmU76cL.js → index-wrQf0yLB.js} +54 -28
- package/dist/index.js +1 -1
- package/dist/{jpeg-DVzsG58A.js → jpeg-Di23zXFS.js} +1 -1
- package/dist/{lerc-DDH4E1vF.js → lerc-BxU7w-lS.js} +1 -1
- package/dist/{lzw-DurWd6oh.js → lzw-BPz0RIPM.js} +1 -1
- package/dist/{packbits-Wx1kBQ0B.js → packbits-4y-CZhCi.js} +1 -1
- package/dist/{raw-BVRj2spn.js → raw-g5V-yVQZ.js} +1 -1
- package/dist/{webimage-D9sKJsjg.js → webimage-PnoeEp0u.js} +1 -1
- package/dist-tsc/GatingSubscriber.d.ts.map +1 -1
- package/dist-tsc/GatingSubscriber.js +3 -2
- package/package.json +9 -9
- package/src/GatingSubscriber.js +3 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as inflate_1 } from "./pako.esm-SxljTded.js";
|
|
2
|
-
import { B as BaseDecoder } from "./index-
|
|
2
|
+
import { B as BaseDecoder } from "./index-wrQf0yLB.js";
|
|
3
3
|
class DeflateDecoder extends BaseDecoder {
|
|
4
4
|
decodeBlock(buffer) {
|
|
5
5
|
return inflate_1(new Uint8Array(buffer)).buffer;
|
|
@@ -4,7 +4,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4
4
|
var _a2, _b;
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import React__default, { useLayoutEffect, useEffect, cloneElement, createElement, forwardRef, useState, useRef, useMemo, useImperativeHandle, useContext, createContext, isValidElement, Children, PureComponent, useCallback } from "react";
|
|
7
|
-
import { usePlotOptionsStyles, OptionsContainer, CellColorEncodingOption, OptionSelect, useVitessceContainer, useComponentHover, useComponentViewInfo, useLoaders, useSetComponentHover, useSetComponentViewInfo, useCoordination, useDeckCanvasSize, useObsSetsData, useFeatureSelection, useObsFeatureMatrixIndices, useReady, useUrls, useUint8FeatureSelection, useExpressionValueGetter, TitleInfo } from "@vitessce/vit-s";
|
|
7
|
+
import { usePlotOptionsStyles, OptionsContainer, CellColorEncodingOption, OptionSelect, useVitessceContainer, useComponentHover, useComponentViewInfo, useLoaders, useCoordinationScopes, useSetComponentHover, useSetComponentViewInfo, useCoordination, useDeckCanvasSize, useObsSetsData, useFeatureSelection, useObsFeatureMatrixIndices, useReady, useUrls, useUint8FeatureSelection, useExpressionValueGetter, TitleInfo } from "@vitessce/vit-s";
|
|
8
8
|
import * as ReactDOM from "react-dom";
|
|
9
9
|
import ReactDOM__default from "react-dom";
|
|
10
10
|
function _mergeNamespaces(n2, m2) {
|
|
@@ -122031,6 +122031,8 @@ const PIXELATED_TEXTURE_PARAMETERS = {
|
|
|
122031
122031
|
[GL$1.TEXTURE_WRAP_T]: GL$1.CLAMP_TO_EDGE
|
|
122032
122032
|
};
|
|
122033
122033
|
const GLSL_COLORMAPS = [
|
|
122034
|
+
// NOTE: the ordering of these is important,
|
|
122035
|
+
// as the shader code in bitmask-layer-beta-shaders hardcodes their indices.
|
|
122034
122036
|
"plasma",
|
|
122035
122037
|
"viridis",
|
|
122036
122038
|
"jet",
|
|
@@ -123124,22 +123126,22 @@ function addDecoder(cases, importFn) {
|
|
|
123124
123126
|
}
|
|
123125
123127
|
cases.forEach((c2) => registry$1.set(c2, importFn));
|
|
123126
123128
|
}
|
|
123127
|
-
addDecoder([void 0, 1], () => import("./raw-
|
|
123128
|
-
addDecoder(5, () => import("./lzw-
|
|
123129
|
+
addDecoder([void 0, 1], () => import("./raw-g5V-yVQZ.js").then((m2) => m2.default));
|
|
123130
|
+
addDecoder(5, () => import("./lzw-BPz0RIPM.js").then((m2) => m2.default));
|
|
123129
123131
|
addDecoder(6, () => {
|
|
123130
123132
|
throw new Error("old style JPEG compression is not supported.");
|
|
123131
123133
|
});
|
|
123132
|
-
addDecoder(7, () => import("./jpeg-
|
|
123133
|
-
addDecoder([8, 32946], () => import("./deflate-
|
|
123134
|
-
addDecoder(32773, () => import("./packbits-
|
|
123134
|
+
addDecoder(7, () => import("./jpeg-Di23zXFS.js").then((m2) => m2.default));
|
|
123135
|
+
addDecoder([8, 32946], () => import("./deflate-WkvPtv5P.js").then((m2) => m2.default));
|
|
123136
|
+
addDecoder(32773, () => import("./packbits-4y-CZhCi.js").then((m2) => m2.default));
|
|
123135
123137
|
addDecoder(
|
|
123136
123138
|
34887,
|
|
123137
|
-
() => import("./lerc-
|
|
123139
|
+
() => import("./lerc-BxU7w-lS.js").then(async (m2) => {
|
|
123138
123140
|
await m2.zstd.init();
|
|
123139
123141
|
return m2;
|
|
123140
123142
|
}).then((m2) => m2.default)
|
|
123141
123143
|
);
|
|
123142
|
-
addDecoder(50001, () => import("./webimage-
|
|
123144
|
+
addDecoder(50001, () => import("./webimage-PnoeEp0u.js").then((m2) => m2.default));
|
|
123143
123145
|
function decodeRowAcc(row, stride) {
|
|
123144
123146
|
let length2 = row.length - stride;
|
|
123145
123147
|
let offset2 = 0;
|
|
@@ -132922,7 +132924,7 @@ uniform float channelOpacities[7];
|
|
|
132922
132924
|
uniform bool channelIsStaticColorMode[7]; // TODO: should this be a single float?
|
|
132923
132925
|
uniform bool channelIsSetColorMode[7]; // TODO: should this be a single float?
|
|
132924
132926
|
|
|
132925
|
-
|
|
132927
|
+
uniform int channelColormapFuncIndices[7];
|
|
132926
132928
|
uniform float channelColormapRangeStarts[7];
|
|
132927
132929
|
uniform float channelColormapRangeEnds[7];
|
|
132928
132930
|
|
|
@@ -132988,7 +132990,30 @@ vec3 sampleAndGetData(sampler2D dataTex, vec2 coord, bool isFilled, float stroke
|
|
|
132988
132990
|
return vec3(clampedSampledData * float(isOn), sampledData, float(isEdge));
|
|
132989
132991
|
}
|
|
132990
132992
|
|
|
132991
|
-
|
|
132993
|
+
vec3 colormapFunc(float clampedScaledExpressionValue, int colormapIndex) {
|
|
132994
|
+
// Map indices of GLSL_COLORMAPS array to their function calls.
|
|
132995
|
+
// GLSL_COLORMAPS is defined in ./constants.js and needs to stay manually synced.
|
|
132996
|
+
// 0: 'plasma',
|
|
132997
|
+
// 1: 'viridis',
|
|
132998
|
+
// 2: 'jet',
|
|
132999
|
+
// 3: 'greys',
|
|
133000
|
+
|
|
133001
|
+
if (colormapIndex <= 0) {
|
|
133002
|
+
// This should also match -1, to account for a failed Array.indexOf lookup.
|
|
133003
|
+
return plasma(clampedScaledExpressionValue).rgb;
|
|
133004
|
+
}
|
|
133005
|
+
if (colormapIndex == 1) {
|
|
133006
|
+
return viridis(clampedScaledExpressionValue).rgb;
|
|
133007
|
+
}
|
|
133008
|
+
if (colormapIndex == 2) {
|
|
133009
|
+
return jet(clampedScaledExpressionValue).rgb;
|
|
133010
|
+
}
|
|
133011
|
+
if (colormapIndex == 3) {
|
|
133012
|
+
return greys(clampedScaledExpressionValue).rgb;
|
|
133013
|
+
}
|
|
133014
|
+
}
|
|
133015
|
+
|
|
133016
|
+
vec4 dataToColor(vec3 sampledDataAndIsEdge, bool isStaticColorMode, vec3 channelColor, float channelOpacity, float valueOffset, int colormapFuncIndex, float rangeStart, float rangeEnd, bool isSetColorMode, float setColorOffset) {
|
|
132992
133017
|
float clampedSampledDataAndIsOn = sampledDataAndIsEdge.x;
|
|
132993
133018
|
float sampledData = sampledDataAndIsEdge.y;
|
|
132994
133019
|
float isEdge = sampledDataAndIsEdge.z;
|
|
@@ -133032,7 +133057,7 @@ vec4 dataToColor(vec3 sampledDataAndIsEdge, bool isStaticColorMode, vec3 channel
|
|
|
133032
133057
|
}
|
|
133033
133058
|
|
|
133034
133059
|
|
|
133035
|
-
vec4 sampledColor = (1. - (float(isStaticColorMode) + float(isSetColorMode))) * vec4(
|
|
133060
|
+
vec4 sampledColor = (1. - (float(isStaticColorMode) + float(isSetColorMode))) * vec4(colormapFunc(clamp(scaledExpressionValue, 0.0, 1.0), colormapFuncIndex).rgb, channelOpacity) + float(isStaticColorMode) * vec4(channelColor.rgb, channelOpacity) + float(isSetColorMode) * vec4(setColor, channelOpacity);
|
|
133036
133061
|
// Only return a color if the data is non-zero.
|
|
133037
133062
|
|
|
133038
133063
|
return clampedSampledDataAndIsOn * isEdge * sampledColor;
|
|
@@ -133048,15 +133073,15 @@ void main() {
|
|
|
133048
133073
|
vec3 dat4 = sampleAndGetData(channel4, vTexCoord, channelsFilled[4], channelStrokeWidths[4], channelsVisible[4]);
|
|
133049
133074
|
vec3 dat5 = sampleAndGetData(channel5, vTexCoord, channelsFilled[5], channelStrokeWidths[5], channelsVisible[5]);
|
|
133050
133075
|
vec3 dat6 = sampleAndGetData(channel6, vTexCoord, channelsFilled[6], channelStrokeWidths[6], channelsVisible[6]);
|
|
133051
|
-
|
|
133052
|
-
vec4 val0 = dataToColor(dat0, channelIsStaticColorMode[0], color0, channelOpacities[0], valueTexOffsets[0], channelColormapRangeStarts[0], channelColormapRangeEnds[0], channelIsSetColorMode[0], colorTexOffsets[0]);
|
|
133053
|
-
vec4 val1 = dataToColor(dat1, channelIsStaticColorMode[1], color1, channelOpacities[1], valueTexOffsets[1], channelColormapRangeStarts[1], channelColormapRangeEnds[1], channelIsSetColorMode[1], colorTexOffsets[1]);
|
|
133054
|
-
vec4 val2 = dataToColor(dat2, channelIsStaticColorMode[2], color2, channelOpacities[2], valueTexOffsets[2], channelColormapRangeStarts[2], channelColormapRangeEnds[2], channelIsSetColorMode[2], colorTexOffsets[2]);
|
|
133055
|
-
vec4 val3 = dataToColor(dat3, channelIsStaticColorMode[3], color3, channelOpacities[3], valueTexOffsets[3], channelColormapRangeStarts[3], channelColormapRangeEnds[3], channelIsSetColorMode[3], colorTexOffsets[3]);
|
|
133056
|
-
vec4 val4 = dataToColor(dat4, channelIsStaticColorMode[4], color4, channelOpacities[4], valueTexOffsets[4], channelColormapRangeStarts[4], channelColormapRangeEnds[4], channelIsSetColorMode[4], colorTexOffsets[4]);
|
|
133057
|
-
vec4 val5 = dataToColor(dat5, channelIsStaticColorMode[5], color5, channelOpacities[5], valueTexOffsets[5], channelColormapRangeStarts[5], channelColormapRangeEnds[5], channelIsSetColorMode[5], colorTexOffsets[5]);
|
|
133058
|
-
vec4 val6 = dataToColor(dat6, channelIsStaticColorMode[6], color6, channelOpacities[6], valueTexOffsets[6], channelColormapRangeStarts[6], channelColormapRangeEnds[6], channelIsSetColorMode[6], colorTexOffsets[6]);
|
|
133059
|
-
|
|
133076
|
+
|
|
133077
|
+
vec4 val0 = dataToColor(dat0, channelIsStaticColorMode[0], color0, channelOpacities[0], valueTexOffsets[0], channelColormapFuncIndices[0], channelColormapRangeStarts[0], channelColormapRangeEnds[0], channelIsSetColorMode[0], colorTexOffsets[0]);
|
|
133078
|
+
vec4 val1 = dataToColor(dat1, channelIsStaticColorMode[1], color1, channelOpacities[1], valueTexOffsets[1], channelColormapFuncIndices[1], channelColormapRangeStarts[1], channelColormapRangeEnds[1], channelIsSetColorMode[1], colorTexOffsets[1]);
|
|
133079
|
+
vec4 val2 = dataToColor(dat2, channelIsStaticColorMode[2], color2, channelOpacities[2], valueTexOffsets[2], channelColormapFuncIndices[2], channelColormapRangeStarts[2], channelColormapRangeEnds[2], channelIsSetColorMode[2], colorTexOffsets[2]);
|
|
133080
|
+
vec4 val3 = dataToColor(dat3, channelIsStaticColorMode[3], color3, channelOpacities[3], valueTexOffsets[3], channelColormapFuncIndices[3], channelColormapRangeStarts[3], channelColormapRangeEnds[3], channelIsSetColorMode[3], colorTexOffsets[3]);
|
|
133081
|
+
vec4 val4 = dataToColor(dat4, channelIsStaticColorMode[4], color4, channelOpacities[4], valueTexOffsets[4], channelColormapFuncIndices[4], channelColormapRangeStarts[4], channelColormapRangeEnds[4], channelIsSetColorMode[4], colorTexOffsets[4]);
|
|
133082
|
+
vec4 val5 = dataToColor(dat5, channelIsStaticColorMode[5], color5, channelOpacities[5], valueTexOffsets[5], channelColormapFuncIndices[5], channelColormapRangeStarts[5], channelColormapRangeEnds[5], channelIsSetColorMode[5], colorTexOffsets[5]);
|
|
133083
|
+
vec4 val6 = dataToColor(dat6, channelIsStaticColorMode[6], color6, channelOpacities[6], valueTexOffsets[6], channelColormapFuncIndices[6], channelColormapRangeStarts[6], channelColormapRangeEnds[6], channelIsSetColorMode[6], colorTexOffsets[6]);
|
|
133084
|
+
|
|
133060
133085
|
// If all of the channels are "empty", then discard this pixel so that it is not considered during picking.
|
|
133061
133086
|
float emptyDat = 0.;
|
|
133062
133087
|
if(dat0.x == emptyDat && dat1.x == emptyDat && dat2.x == emptyDat && dat3.x == emptyDat && dat4.x == emptyDat && dat5.x == emptyDat && dat6.x == emptyDat) {
|
|
@@ -133212,14 +133237,10 @@ const defaultProps$2 = {
|
|
|
133212
133237
|
class BitmaskLayer2 extends XRLayer {
|
|
133213
133238
|
// eslint-disable-next-line class-methods-use-this
|
|
133214
133239
|
getShaders() {
|
|
133215
|
-
const { colormap } = this.props;
|
|
133216
133240
|
return {
|
|
133217
133241
|
fs,
|
|
133218
133242
|
vs,
|
|
133219
|
-
modules: [project32, picking]
|
|
133220
|
-
defines: {
|
|
133221
|
-
[COLORMAP_SHADER_PLACEHOLDER]: GLSL_COLORMAPS.includes(colormap) ? colormap : GLSL_COLORMAP_DEFAULT
|
|
133222
|
-
}
|
|
133243
|
+
modules: [project32, picking]
|
|
133223
133244
|
};
|
|
133224
133245
|
}
|
|
133225
133246
|
/**
|
|
@@ -133278,8 +133299,6 @@ class BitmaskLayer2 extends XRLayer {
|
|
|
133278
133299
|
channelOpacities,
|
|
133279
133300
|
channelColors,
|
|
133280
133301
|
channelsVisible,
|
|
133281
|
-
// TODO: use `channelFeatureValueColormaps` in shader,
|
|
133282
|
-
// figure out how to call multiple GLSL colormap functions
|
|
133283
133302
|
channelFeatureValueColormaps,
|
|
133284
133303
|
channelFeatureValueColormapRanges,
|
|
133285
133304
|
channelIsStaticColorMode,
|
|
@@ -133340,6 +133359,12 @@ class BitmaskLayer2 extends XRLayer {
|
|
|
133340
133359
|
// There are six texture entries on the shaders
|
|
133341
133360
|
MAX_CHANNELS - channelStrokeWidths.length
|
|
133342
133361
|
),
|
|
133362
|
+
channelColormapFuncIndices: padWithDefault(
|
|
133363
|
+
channelFeatureValueColormaps.map((d) => GLSL_COLORMAPS.indexOf(d)),
|
|
133364
|
+
0,
|
|
133365
|
+
// There are six texture entries on the shaders
|
|
133366
|
+
MAX_CHANNELS - channelFeatureValueColormaps.length
|
|
133367
|
+
),
|
|
133343
133368
|
channelColormapRangeStarts: padWithDefault(
|
|
133344
133369
|
channelFeatureValueColormapRanges.map((r2) => (r2 == null ? void 0 : r2[0]) || 0),
|
|
133345
133370
|
0,
|
|
@@ -159378,7 +159403,7 @@ function GatingScatterplotOptions(props) {
|
|
|
159378
159403
|
function GatingSubscriber(props) {
|
|
159379
159404
|
const {
|
|
159380
159405
|
uuid,
|
|
159381
|
-
coordinationScopes,
|
|
159406
|
+
coordinationScopes: coordinationScopesRaw,
|
|
159382
159407
|
closeButtonVisible,
|
|
159383
159408
|
downloadButtonVisible,
|
|
159384
159409
|
removeGridComponent,
|
|
@@ -159390,6 +159415,7 @@ function GatingSubscriber(props) {
|
|
|
159390
159415
|
helpText = ViewHelpMapping.GATING
|
|
159391
159416
|
} = props;
|
|
159392
159417
|
const loaders = useLoaders();
|
|
159418
|
+
const coordinationScopes = useCoordinationScopes(coordinationScopesRaw);
|
|
159393
159419
|
const setComponentHover = useSetComponentHover();
|
|
159394
159420
|
const setComponentViewInfo = useSetComponentViewInfo(uuid);
|
|
159395
159421
|
const [{
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as inflate_1 } from "./pako.esm-SxljTded.js";
|
|
2
|
-
import { g as getDefaultExportFromCjs, B as BaseDecoder } from "./index-
|
|
2
|
+
import { g as getDefaultExportFromCjs, B as BaseDecoder } from "./index-wrQf0yLB.js";
|
|
3
3
|
const LercParameters = {
|
|
4
4
|
AddCompression: 1
|
|
5
5
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GatingSubscriber.d.ts","sourceRoot":"","sources":["../src/GatingSubscriber.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GatingSubscriber.d.ts","sourceRoot":"","sources":["../src/GatingSubscriber.js"],"names":[],"mappings":"AAoCA;;;;;;;;;;;;KAYK;AACL,wCAVK;IAAsB,IAAI,EAAlB,MAAM;IACQ,KAAK,EAAnB,MAAM;IACQ,kBAAkB,EAAhC,MAAM;IAES,cAAc,EAA7B,OAAO;IACS,mBAAmB;IAErB,kBAAkB,EAAhC,MAAM;CAEhB,eAobF"}
|
|
@@ -3,7 +3,7 @@ import React, { useState, useEffect, useCallback, useMemo, } from 'react';
|
|
|
3
3
|
import { extent } from 'd3-array';
|
|
4
4
|
import { isEqual } from 'lodash-es';
|
|
5
5
|
import { pluralize as plur, capitalize, commaNumber, getValueTransformFunction, VALUE_TRANSFORM_OPTIONS, } from '@vitessce/utils';
|
|
6
|
-
import { TitleInfo, useDeckCanvasSize, useReady, useUrls, useUint8FeatureSelection, useExpressionValueGetter, useObsSetsData, useFeatureSelection, useObsFeatureMatrixIndices, useCoordination, useLoaders, useSetComponentHover, useSetComponentViewInfo, } from '@vitessce/vit-s';
|
|
6
|
+
import { TitleInfo, useDeckCanvasSize, useReady, useUrls, useUint8FeatureSelection, useExpressionValueGetter, useObsSetsData, useFeatureSelection, useObsFeatureMatrixIndices, useCoordination, useLoaders, useSetComponentHover, useSetComponentViewInfo, useCoordinationScopes, } from '@vitessce/vit-s';
|
|
7
7
|
import { getCellSetPolygons, mergeObsSets, setObsSelection, getCellColors, } from '@vitessce/sets-utils';
|
|
8
8
|
import { Scatterplot, ScatterplotTooltipSubscriber, ScatterplotOptions, getPointSizeDevicePixels, getPointOpacity, EmptyMessage, } from '@vitessce/scatterplot';
|
|
9
9
|
import { ViewType, COMPONENT_COORDINATION_TYPES, ViewHelpMapping } from '@vitessce/constants-internal';
|
|
@@ -22,10 +22,11 @@ import GatingScatterplotOptions from './GatingScatterplotOptions.js';
|
|
|
22
22
|
* when using dynamic opacity mode.
|
|
23
23
|
*/
|
|
24
24
|
export function GatingSubscriber(props) {
|
|
25
|
-
const { uuid, coordinationScopes, closeButtonVisible, downloadButtonVisible, removeGridComponent, theme, disableTooltip = false, title: titleOverride,
|
|
25
|
+
const { uuid, coordinationScopes: coordinationScopesRaw, closeButtonVisible, downloadButtonVisible, removeGridComponent, theme, disableTooltip = false, title: titleOverride,
|
|
26
26
|
// Average fill density for dynamic opacity calculation.
|
|
27
27
|
averageFillDensity, helpText = ViewHelpMapping.GATING, } = props;
|
|
28
28
|
const loaders = useLoaders();
|
|
29
|
+
const coordinationScopes = useCoordinationScopes(coordinationScopesRaw);
|
|
29
30
|
const setComponentHover = useSetComponentHover();
|
|
30
31
|
const setComponentViewInfo = useSetComponentViewInfo(uuid);
|
|
31
32
|
// Get "props" from the coordination space.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vitessce/scatterplot-gating",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.7.0",
|
|
4
4
|
"author": "HIDIVE Lab at HMS",
|
|
5
5
|
"homepage": "http://vitessce.io",
|
|
6
6
|
"repository": {
|
|
@@ -19,24 +19,24 @@
|
|
|
19
19
|
"d3-array": "^2.4.0",
|
|
20
20
|
"lodash-es": "^4.17.21",
|
|
21
21
|
"react-aria": "^3.28.0",
|
|
22
|
-
"@vitessce/styles": "3.
|
|
23
|
-
"@vitessce/constants-internal": "3.
|
|
24
|
-
"@vitessce/scatterplot": "3.
|
|
25
|
-
"@vitessce/sets-utils": "3.
|
|
26
|
-
"@vitessce/utils": "3.
|
|
27
|
-
"@vitessce/vit-s": "3.
|
|
22
|
+
"@vitessce/styles": "3.7.0",
|
|
23
|
+
"@vitessce/constants-internal": "3.7.0",
|
|
24
|
+
"@vitessce/scatterplot": "3.7.0",
|
|
25
|
+
"@vitessce/sets-utils": "3.7.0",
|
|
26
|
+
"@vitessce/utils": "3.7.0",
|
|
27
|
+
"@vitessce/vit-s": "3.7.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"react": "^18.0.0",
|
|
31
31
|
"react-dom": "^18.0.0",
|
|
32
|
-
"vite": "^
|
|
32
|
+
"vite": "^7.0.0",
|
|
33
33
|
"vitest": "^3.1.4"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
|
|
37
37
|
},
|
|
38
38
|
"scripts": {
|
|
39
|
-
"bundle": "pnpm exec vite build -c ../../../scripts/vite.config.
|
|
39
|
+
"bundle": "pnpm exec vite build -c ../../../scripts/vite.config.mjs",
|
|
40
40
|
"test": "pnpm exec vitest --run"
|
|
41
41
|
},
|
|
42
42
|
"module": "dist/index.js",
|
package/src/GatingSubscriber.js
CHANGED
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
useLoaders,
|
|
21
21
|
useSetComponentHover,
|
|
22
22
|
useSetComponentViewInfo,
|
|
23
|
+
useCoordinationScopes,
|
|
23
24
|
} from '@vitessce/vit-s';
|
|
24
25
|
import {
|
|
25
26
|
getCellSetPolygons, mergeObsSets, setObsSelection, getCellColors,
|
|
@@ -49,7 +50,7 @@ import GatingScatterplotOptions from './GatingScatterplotOptions.js';
|
|
|
49
50
|
export function GatingSubscriber(props) {
|
|
50
51
|
const {
|
|
51
52
|
uuid,
|
|
52
|
-
coordinationScopes,
|
|
53
|
+
coordinationScopes: coordinationScopesRaw,
|
|
53
54
|
closeButtonVisible,
|
|
54
55
|
downloadButtonVisible,
|
|
55
56
|
removeGridComponent,
|
|
@@ -62,6 +63,7 @@ export function GatingSubscriber(props) {
|
|
|
62
63
|
} = props;
|
|
63
64
|
|
|
64
65
|
const loaders = useLoaders();
|
|
66
|
+
const coordinationScopes = useCoordinationScopes(coordinationScopesRaw);
|
|
65
67
|
const setComponentHover = useSetComponentHover();
|
|
66
68
|
const setComponentViewInfo = useSetComponentViewInfo(uuid);
|
|
67
69
|
|