@vitessce/scatterplot-embedding 3.2.0 → 3.2.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/{deflate-c642ec70.js → deflate-49eb8bd8.js} +1 -1
- package/dist/{index-b19aa9df.js → index-c4323615.js} +246 -30
- package/dist/index.js +1 -1
- package/dist/{jpeg-a05285b9.js → jpeg-0c6f4d5b.js} +1 -1
- package/dist/{lerc-59152b4a.js → lerc-157806a7.js} +1 -1
- package/dist/{lzw-1258bf90.js → lzw-0659de0e.js} +1 -1
- package/dist/{packbits-b526be77.js → packbits-f0484b5e.js} +1 -1
- package/dist/{raw-42eaa5bd.js → raw-562e7d1c.js} +1 -1
- package/dist/{webimage-49ce920f.js → webimage-ab07cd7f.js} +1 -1
- package/dist-tsc/EmbeddingScatterplotOptions.d.ts.map +1 -1
- package/dist-tsc/EmbeddingScatterplotOptions.js +2 -1
- package/package.json +8 -7
- package/src/EmbeddingScatterplotOptions.js +2 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import React__default, { useLayoutEffect, useEffect, cloneElement, createElement, forwardRef, useState, useRef, useMemo, useImperativeHandle, Children, isValidElement, PureComponent,
|
|
2
|
+
import React__default, { useLayoutEffect, useEffect, cloneElement, createElement, forwardRef, useState, useRef, useMemo, useImperativeHandle, Children, isValidElement, PureComponent, useContext, useCallback } from "react";
|
|
3
3
|
import { usePlotOptionsStyles, OptionsContainer, CellColorEncodingOption, OptionSelect, useVitessceContainer, useComponentHover, useComponentViewInfo, useLoaders, useSetComponentHover, useSetComponentViewInfo, useCoordination, useInitialCoordination, useDeckCanvasSize, useMultiObsLabels, useObsEmbeddingData, useObsSetsData, useFeatureSelection, useObsFeatureMatrixIndices, useFeatureLabelsData, useReady, useUrls, useGetObsInfo, useUint8FeatureSelection, useExpressionValueGetter, TitleInfo } from "@vitessce/vit-s";
|
|
4
4
|
import * as ReactDOM from "react-dom";
|
|
5
5
|
function _mergeNamespaces(n2, m2) {
|
|
@@ -121180,16 +121180,16 @@ function addDecoder(cases, importFn) {
|
|
|
121180
121180
|
}
|
|
121181
121181
|
cases.forEach((c2) => registry$1.set(c2, importFn));
|
|
121182
121182
|
}
|
|
121183
|
-
addDecoder([void 0, 1], () => import("./raw-
|
|
121184
|
-
addDecoder(5, () => import("./lzw-
|
|
121183
|
+
addDecoder([void 0, 1], () => import("./raw-562e7d1c.js").then((m2) => m2.default));
|
|
121184
|
+
addDecoder(5, () => import("./lzw-0659de0e.js").then((m2) => m2.default));
|
|
121185
121185
|
addDecoder(6, () => {
|
|
121186
121186
|
throw new Error("old style JPEG compression is not supported.");
|
|
121187
121187
|
});
|
|
121188
|
-
addDecoder(7, () => import("./jpeg-
|
|
121189
|
-
addDecoder([8, 32946], () => import("./deflate-
|
|
121190
|
-
addDecoder(32773, () => import("./packbits-
|
|
121191
|
-
addDecoder(34887, () => import("./lerc-
|
|
121192
|
-
addDecoder(50001, () => import("./webimage-
|
|
121188
|
+
addDecoder(7, () => import("./jpeg-0c6f4d5b.js").then((m2) => m2.default));
|
|
121189
|
+
addDecoder([8, 32946], () => import("./deflate-49eb8bd8.js").then((m2) => m2.default));
|
|
121190
|
+
addDecoder(32773, () => import("./packbits-f0484b5e.js").then((m2) => m2.default));
|
|
121191
|
+
addDecoder(34887, () => import("./lerc-157806a7.js").then((m2) => m2.default));
|
|
121192
|
+
addDecoder(50001, () => import("./webimage-ab07cd7f.js").then((m2) => m2.default));
|
|
121193
121193
|
function decodeRowAcc(row, stride) {
|
|
121194
121194
|
let length2 = row.length - stride;
|
|
121195
121195
|
let offset5 = 0;
|
|
@@ -130089,6 +130089,67 @@ function makeBoundingBox(viewState) {
|
|
|
130089
130089
|
viewport.unproject([0, viewport.height])
|
|
130090
130090
|
];
|
|
130091
130091
|
}
|
|
130092
|
+
const TARGETS = [1, 2, 3, 4, 5, 10, 20, 25, 50, 100, 200, 250, 500, 1e3];
|
|
130093
|
+
const MIN_TARGET = TARGETS[0];
|
|
130094
|
+
const MAX_TARGET = TARGETS[TARGETS.length - 1];
|
|
130095
|
+
const SI_PREFIXES = [
|
|
130096
|
+
{ symbol: "Y", exponent: 24 },
|
|
130097
|
+
{ symbol: "Z", exponent: 21 },
|
|
130098
|
+
{ symbol: "E", exponent: 18 },
|
|
130099
|
+
{ symbol: "P", exponent: 15 },
|
|
130100
|
+
{ symbol: "T", exponent: 12 },
|
|
130101
|
+
{ symbol: "G", exponent: 9 },
|
|
130102
|
+
{ symbol: "M", exponent: 6 },
|
|
130103
|
+
{ symbol: "k", exponent: 3 },
|
|
130104
|
+
{ symbol: "h", exponent: 2 },
|
|
130105
|
+
{ symbol: "da", exponent: 1 },
|
|
130106
|
+
{ symbol: "", exponent: 0 },
|
|
130107
|
+
{ symbol: "d", exponent: -1 },
|
|
130108
|
+
{ symbol: "c", exponent: -2 },
|
|
130109
|
+
{ symbol: "m", exponent: -3 },
|
|
130110
|
+
{ symbol: "µ", exponent: -6 },
|
|
130111
|
+
{ symbol: "n", exponent: -9 },
|
|
130112
|
+
{ symbol: "p", exponent: -12 },
|
|
130113
|
+
{ symbol: "f", exponent: -15 },
|
|
130114
|
+
{ symbol: "a", exponent: -18 },
|
|
130115
|
+
{ symbol: "z", exponent: -21 },
|
|
130116
|
+
{ symbol: "y", exponent: -24 }
|
|
130117
|
+
];
|
|
130118
|
+
function sizeToMeters(size, unit2) {
|
|
130119
|
+
if (!unit2 || unit2 === "m") {
|
|
130120
|
+
return size;
|
|
130121
|
+
}
|
|
130122
|
+
if (unit2.length > 1) {
|
|
130123
|
+
let unitPrefix = unit2.substring(0, unit2.length - 1);
|
|
130124
|
+
if (unitPrefix === "u") {
|
|
130125
|
+
unitPrefix = "µ";
|
|
130126
|
+
}
|
|
130127
|
+
const unitObj = SI_PREFIXES.find((p) => p.symbol === unitPrefix);
|
|
130128
|
+
if (unitObj) {
|
|
130129
|
+
return size * 10 ** unitObj.exponent;
|
|
130130
|
+
}
|
|
130131
|
+
}
|
|
130132
|
+
throw new Error("Received unknown unit");
|
|
130133
|
+
}
|
|
130134
|
+
function snapValue(value) {
|
|
130135
|
+
let magnitude = 0;
|
|
130136
|
+
if (value < MIN_TARGET || value > MAX_TARGET) {
|
|
130137
|
+
magnitude = Math.floor(Math.log10(value));
|
|
130138
|
+
}
|
|
130139
|
+
let snappedUnit = SI_PREFIXES.find(
|
|
130140
|
+
(p) => p.exponent % 3 === 0 && p.exponent <= magnitude
|
|
130141
|
+
);
|
|
130142
|
+
let adjustedValue = value / 10 ** snappedUnit.exponent;
|
|
130143
|
+
if (adjustedValue > 500 && adjustedValue <= 1e3) {
|
|
130144
|
+
snappedUnit = SI_PREFIXES.find(
|
|
130145
|
+
(p) => p.exponent % 3 === 0 && p.exponent <= magnitude + 3
|
|
130146
|
+
);
|
|
130147
|
+
adjustedValue = value / 10 ** snappedUnit.exponent;
|
|
130148
|
+
}
|
|
130149
|
+
const targetNewUnits = TARGETS.find((t2) => t2 > adjustedValue);
|
|
130150
|
+
const targetOrigUnits = targetNewUnits * 10 ** snappedUnit.exponent;
|
|
130151
|
+
return [targetOrigUnits, targetNewUnits, snappedUnit.symbol];
|
|
130152
|
+
}
|
|
130092
130153
|
const fs$1$1 = `#define SHADER_NAME xr-layer-fragment-shader
|
|
130093
130154
|
|
|
130094
130155
|
precision highp float;
|
|
@@ -130856,26 +130917,27 @@ const OverviewLayer = class extends CompositeLayer {
|
|
|
130856
130917
|
OverviewLayer.layerName = "OverviewLayer";
|
|
130857
130918
|
OverviewLayer.defaultProps = defaultProps$3;
|
|
130858
130919
|
function getPosition$1(boundingBox, position, length2) {
|
|
130859
|
-
const
|
|
130920
|
+
const viewWidth = boundingBox[2][0] - boundingBox[0][0];
|
|
130921
|
+
const viewHeight = boundingBox[2][1] - boundingBox[0][1];
|
|
130860
130922
|
switch (position) {
|
|
130861
130923
|
case "bottom-right": {
|
|
130862
|
-
const yCoord = boundingBox[2][1] -
|
|
130863
|
-
const xLeftCoord = boundingBox[2][0] -
|
|
130924
|
+
const yCoord = boundingBox[2][1] - viewHeight * length2;
|
|
130925
|
+
const xLeftCoord = boundingBox[2][0] - viewWidth * length2;
|
|
130864
130926
|
return [yCoord, xLeftCoord];
|
|
130865
130927
|
}
|
|
130866
130928
|
case "top-right": {
|
|
130867
|
-
const yCoord =
|
|
130868
|
-
const xLeftCoord = boundingBox[2][0] -
|
|
130929
|
+
const yCoord = boundingBox[0][1] + viewHeight * length2;
|
|
130930
|
+
const xLeftCoord = boundingBox[2][0] - viewWidth * length2;
|
|
130869
130931
|
return [yCoord, xLeftCoord];
|
|
130870
130932
|
}
|
|
130871
130933
|
case "top-left": {
|
|
130872
|
-
const yCoord =
|
|
130873
|
-
const xLeftCoord =
|
|
130934
|
+
const yCoord = boundingBox[0][1] + viewHeight * length2;
|
|
130935
|
+
const xLeftCoord = boundingBox[0][0] + viewWidth * length2;
|
|
130874
130936
|
return [yCoord, xLeftCoord];
|
|
130875
130937
|
}
|
|
130876
130938
|
case "bottom-left": {
|
|
130877
|
-
const yCoord = boundingBox[2][1] -
|
|
130878
|
-
const xLeftCoord =
|
|
130939
|
+
const yCoord = boundingBox[2][1] - viewHeight * length2;
|
|
130940
|
+
const xLeftCoord = boundingBox[0][0] + viewWidth * length2;
|
|
130879
130941
|
return [yCoord, xLeftCoord];
|
|
130880
130942
|
}
|
|
130881
130943
|
default: {
|
|
@@ -130893,11 +130955,12 @@ const defaultProps$2$1 = {
|
|
|
130893
130955
|
unit: { type: "string", value: "", compare: true },
|
|
130894
130956
|
size: { type: "number", value: 1, compare: true },
|
|
130895
130957
|
position: { type: "string", value: "bottom-right", compare: true },
|
|
130896
|
-
length: { type: "number", value: 0.085, compare: true }
|
|
130958
|
+
length: { type: "number", value: 0.085, compare: true },
|
|
130959
|
+
snap: { type: "boolean", value: false, compare: true }
|
|
130897
130960
|
};
|
|
130898
130961
|
const ScaleBarLayer = class extends CompositeLayer {
|
|
130899
130962
|
renderLayers() {
|
|
130900
|
-
const { id, unit: unit2, size, position, viewState, length: length2 } = this.props;
|
|
130963
|
+
const { id, unit: unit2, size, position, viewState, length: length2, snap } = this.props;
|
|
130901
130964
|
const boundingBox = makeBoundingBox(viewState);
|
|
130902
130965
|
const { zoom } = viewState;
|
|
130903
130966
|
const viewLength = boundingBox[2][0] - boundingBox[0][0];
|
|
@@ -130906,15 +130969,27 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
130906
130969
|
2 ** (-zoom + 1.5),
|
|
130907
130970
|
(boundingBox[2][1] - boundingBox[0][1]) * 7e-3
|
|
130908
130971
|
);
|
|
130909
|
-
|
|
130972
|
+
let adjustedBarLength = barLength;
|
|
130973
|
+
let displayNumber = (barLength * size).toPrecision(5);
|
|
130974
|
+
let displayUnit = unit2;
|
|
130975
|
+
if (snap) {
|
|
130976
|
+
const meterSize = sizeToMeters(size, unit2);
|
|
130977
|
+
const numUnits = barLength * meterSize;
|
|
130978
|
+
const [snappedOrigUnits, snappedNewUnits, snappedUnitPrefix] = snapValue(numUnits);
|
|
130979
|
+
adjustedBarLength = snappedOrigUnits / meterSize;
|
|
130980
|
+
displayNumber = snappedNewUnits;
|
|
130981
|
+
displayUnit = `${snappedUnitPrefix}m`;
|
|
130982
|
+
}
|
|
130910
130983
|
const [yCoord, xLeftCoord] = getPosition$1(boundingBox, position, length2);
|
|
130984
|
+
const xRightCoord = xLeftCoord + barLength;
|
|
130985
|
+
const isLeft = position.endsWith("-left");
|
|
130911
130986
|
const lengthBar = new LineLayer({
|
|
130912
130987
|
id: `scale-bar-length-${id}`,
|
|
130913
130988
|
coordinateSystem: COORDINATE_SYSTEM.CARTESIAN,
|
|
130914
130989
|
data: [
|
|
130915
130990
|
[
|
|
130916
|
-
[xLeftCoord, yCoord],
|
|
130917
|
-
[xLeftCoord +
|
|
130991
|
+
[isLeft ? xLeftCoord : xRightCoord - adjustedBarLength, yCoord],
|
|
130992
|
+
[isLeft ? xLeftCoord + adjustedBarLength : xRightCoord, yCoord]
|
|
130918
130993
|
]
|
|
130919
130994
|
],
|
|
130920
130995
|
getSourcePosition: (d) => d[0],
|
|
@@ -130927,8 +131002,14 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
130927
131002
|
coordinateSystem: COORDINATE_SYSTEM.CARTESIAN,
|
|
130928
131003
|
data: [
|
|
130929
131004
|
[
|
|
130930
|
-
[
|
|
130931
|
-
|
|
131005
|
+
[
|
|
131006
|
+
isLeft ? xLeftCoord : xRightCoord - adjustedBarLength,
|
|
131007
|
+
yCoord - barHeight
|
|
131008
|
+
],
|
|
131009
|
+
[
|
|
131010
|
+
isLeft ? xLeftCoord : xRightCoord - adjustedBarLength,
|
|
131011
|
+
yCoord + barHeight
|
|
131012
|
+
]
|
|
130932
131013
|
]
|
|
130933
131014
|
],
|
|
130934
131015
|
getSourcePosition: (d) => d[0],
|
|
@@ -130941,8 +131022,14 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
130941
131022
|
coordinateSystem: COORDINATE_SYSTEM.CARTESIAN,
|
|
130942
131023
|
data: [
|
|
130943
131024
|
[
|
|
130944
|
-
[
|
|
130945
|
-
|
|
131025
|
+
[
|
|
131026
|
+
isLeft ? xLeftCoord + adjustedBarLength : xRightCoord,
|
|
131027
|
+
yCoord - barHeight
|
|
131028
|
+
],
|
|
131029
|
+
[
|
|
131030
|
+
isLeft ? xLeftCoord + adjustedBarLength : xRightCoord,
|
|
131031
|
+
yCoord + barHeight
|
|
131032
|
+
]
|
|
130946
131033
|
]
|
|
130947
131034
|
],
|
|
130948
131035
|
getSourcePosition: (d) => d[0],
|
|
@@ -130955,8 +131042,11 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
130955
131042
|
coordinateSystem: COORDINATE_SYSTEM.CARTESIAN,
|
|
130956
131043
|
data: [
|
|
130957
131044
|
{
|
|
130958
|
-
text:
|
|
130959
|
-
position: [
|
|
131045
|
+
text: `${displayNumber}${displayUnit}`,
|
|
131046
|
+
position: [
|
|
131047
|
+
isLeft ? xLeftCoord + barLength * 0.5 : xRightCoord - barLength * 0.5,
|
|
131048
|
+
yCoord + barHeight * 4
|
|
131049
|
+
]
|
|
130960
131050
|
}
|
|
130961
131051
|
],
|
|
130962
131052
|
getColor: [220, 220, 220, 255],
|
|
@@ -130965,7 +131055,7 @@ const ScaleBarLayer = class extends CompositeLayer {
|
|
|
130965
131055
|
sizeUnits: "meters",
|
|
130966
131056
|
sizeScale: 2 ** -zoom,
|
|
130967
131057
|
characterSet: [
|
|
130968
|
-
...
|
|
131058
|
+
...displayUnit.split(""),
|
|
130969
131059
|
...range(10).map((i2) => String(i2)),
|
|
130970
131060
|
".",
|
|
130971
131061
|
"e",
|
|
@@ -143154,9 +143244,135 @@ class Scatterplot extends AbstractSpatialOrScatterplot {
|
|
|
143154
143244
|
}
|
|
143155
143245
|
const ScatterplotWrapper = forwardRef((props2, deckRef) => jsxRuntimeExports.jsx(Scatterplot, { ...props2, deckRef }));
|
|
143156
143246
|
ScatterplotWrapper.displayName = "ScatterplotWrapper";
|
|
143247
|
+
const $b5e257d569688ac6$var$defaultContext = {
|
|
143248
|
+
prefix: String(Math.round(Math.random() * 1e10)),
|
|
143249
|
+
current: 0
|
|
143250
|
+
};
|
|
143251
|
+
const $b5e257d569688ac6$var$SSRContext = /* @__PURE__ */ React__default.createContext($b5e257d569688ac6$var$defaultContext);
|
|
143252
|
+
const $b5e257d569688ac6$var$IsSSRContext = /* @__PURE__ */ React__default.createContext(false);
|
|
143253
|
+
let $b5e257d569688ac6$var$canUseDOM = Boolean(typeof window !== "undefined" && window.document && window.document.createElement);
|
|
143254
|
+
let $b5e257d569688ac6$var$componentIds = /* @__PURE__ */ new WeakMap();
|
|
143255
|
+
function $b5e257d569688ac6$var$useCounter(isDisabled = false) {
|
|
143256
|
+
let ctx = useContext($b5e257d569688ac6$var$SSRContext);
|
|
143257
|
+
let ref = useRef(null);
|
|
143258
|
+
if (ref.current === null && !isDisabled) {
|
|
143259
|
+
var _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner;
|
|
143260
|
+
let currentOwner = (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = React__default.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED === void 0 ? void 0 : (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner = _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner === void 0 ? void 0 : _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner.current;
|
|
143261
|
+
if (currentOwner) {
|
|
143262
|
+
let prevComponentValue = $b5e257d569688ac6$var$componentIds.get(currentOwner);
|
|
143263
|
+
if (prevComponentValue == null)
|
|
143264
|
+
$b5e257d569688ac6$var$componentIds.set(currentOwner, {
|
|
143265
|
+
id: ctx.current,
|
|
143266
|
+
state: currentOwner.memoizedState
|
|
143267
|
+
});
|
|
143268
|
+
else if (currentOwner.memoizedState !== prevComponentValue.state) {
|
|
143269
|
+
ctx.current = prevComponentValue.id;
|
|
143270
|
+
$b5e257d569688ac6$var$componentIds.delete(currentOwner);
|
|
143271
|
+
}
|
|
143272
|
+
}
|
|
143273
|
+
ref.current = ++ctx.current;
|
|
143274
|
+
}
|
|
143275
|
+
return ref.current;
|
|
143276
|
+
}
|
|
143277
|
+
function $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {
|
|
143278
|
+
let ctx = useContext($b5e257d569688ac6$var$SSRContext);
|
|
143279
|
+
if (ctx === $b5e257d569688ac6$var$defaultContext && !$b5e257d569688ac6$var$canUseDOM)
|
|
143280
|
+
console.warn("When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.");
|
|
143281
|
+
let counter2 = $b5e257d569688ac6$var$useCounter(!!defaultId);
|
|
143282
|
+
let prefix2 = ctx === $b5e257d569688ac6$var$defaultContext && false ? "react-aria" : `react-aria${ctx.prefix}`;
|
|
143283
|
+
return defaultId || `${prefix2}-${counter2}`;
|
|
143284
|
+
}
|
|
143285
|
+
function $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {
|
|
143286
|
+
let id = React__default.useId();
|
|
143287
|
+
let [didSSR] = useState($b5e257d569688ac6$export$535bd6ca7f90a273());
|
|
143288
|
+
let prefix2 = didSSR || false ? "react-aria" : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;
|
|
143289
|
+
return defaultId || `${prefix2}-${id}`;
|
|
143290
|
+
}
|
|
143291
|
+
const $b5e257d569688ac6$export$619500959fc48b26 = typeof React__default["useId"] === "function" ? $b5e257d569688ac6$var$useModernSSRSafeId : $b5e257d569688ac6$var$useLegacySSRSafeId;
|
|
143292
|
+
function $b5e257d569688ac6$var$getSnapshot() {
|
|
143293
|
+
return false;
|
|
143294
|
+
}
|
|
143295
|
+
function $b5e257d569688ac6$var$getServerSnapshot() {
|
|
143296
|
+
return true;
|
|
143297
|
+
}
|
|
143298
|
+
function $b5e257d569688ac6$var$subscribe(onStoreChange) {
|
|
143299
|
+
return () => {
|
|
143300
|
+
};
|
|
143301
|
+
}
|
|
143302
|
+
function $b5e257d569688ac6$export$535bd6ca7f90a273() {
|
|
143303
|
+
if (typeof React__default["useSyncExternalStore"] === "function")
|
|
143304
|
+
return React__default["useSyncExternalStore"]($b5e257d569688ac6$var$subscribe, $b5e257d569688ac6$var$getSnapshot, $b5e257d569688ac6$var$getServerSnapshot);
|
|
143305
|
+
return useContext($b5e257d569688ac6$var$IsSSRContext);
|
|
143306
|
+
}
|
|
143307
|
+
const $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof document !== "undefined" ? React__default.useLayoutEffect : () => {
|
|
143308
|
+
};
|
|
143309
|
+
let $bdb11010cef70236$var$idsUpdaterMap = /* @__PURE__ */ new Map();
|
|
143310
|
+
function $bdb11010cef70236$export$f680877a34711e37(defaultId) {
|
|
143311
|
+
let [value, setValue] = useState(defaultId);
|
|
143312
|
+
let nextId = useRef(null);
|
|
143313
|
+
let res = $b5e257d569688ac6$export$619500959fc48b26(value);
|
|
143314
|
+
let updateValue = useCallback((val) => {
|
|
143315
|
+
nextId.current = val;
|
|
143316
|
+
}, []);
|
|
143317
|
+
$bdb11010cef70236$var$idsUpdaterMap.set(res, updateValue);
|
|
143318
|
+
$f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(() => {
|
|
143319
|
+
let r2 = res;
|
|
143320
|
+
return () => {
|
|
143321
|
+
$bdb11010cef70236$var$idsUpdaterMap.delete(r2);
|
|
143322
|
+
};
|
|
143323
|
+
}, [
|
|
143324
|
+
res
|
|
143325
|
+
]);
|
|
143326
|
+
useEffect(() => {
|
|
143327
|
+
let newId = nextId.current;
|
|
143328
|
+
if (newId) {
|
|
143329
|
+
nextId.current = null;
|
|
143330
|
+
setValue(newId);
|
|
143331
|
+
}
|
|
143332
|
+
});
|
|
143333
|
+
return res;
|
|
143334
|
+
}
|
|
143335
|
+
let $bbed8b41f857bcc0$var$transitionsByElement = /* @__PURE__ */ new Map();
|
|
143336
|
+
let $bbed8b41f857bcc0$var$transitionCallbacks = /* @__PURE__ */ new Set();
|
|
143337
|
+
function $bbed8b41f857bcc0$var$setupGlobalEvents() {
|
|
143338
|
+
if (typeof window === "undefined")
|
|
143339
|
+
return;
|
|
143340
|
+
let onTransitionStart = (e3) => {
|
|
143341
|
+
let transitions2 = $bbed8b41f857bcc0$var$transitionsByElement.get(e3.target);
|
|
143342
|
+
if (!transitions2) {
|
|
143343
|
+
transitions2 = /* @__PURE__ */ new Set();
|
|
143344
|
+
$bbed8b41f857bcc0$var$transitionsByElement.set(e3.target, transitions2);
|
|
143345
|
+
e3.target.addEventListener("transitioncancel", onTransitionEnd);
|
|
143346
|
+
}
|
|
143347
|
+
transitions2.add(e3.propertyName);
|
|
143348
|
+
};
|
|
143349
|
+
let onTransitionEnd = (e3) => {
|
|
143350
|
+
let properties = $bbed8b41f857bcc0$var$transitionsByElement.get(e3.target);
|
|
143351
|
+
if (!properties)
|
|
143352
|
+
return;
|
|
143353
|
+
properties.delete(e3.propertyName);
|
|
143354
|
+
if (properties.size === 0) {
|
|
143355
|
+
e3.target.removeEventListener("transitioncancel", onTransitionEnd);
|
|
143356
|
+
$bbed8b41f857bcc0$var$transitionsByElement.delete(e3.target);
|
|
143357
|
+
}
|
|
143358
|
+
if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) {
|
|
143359
|
+
for (let cb of $bbed8b41f857bcc0$var$transitionCallbacks)
|
|
143360
|
+
cb();
|
|
143361
|
+
$bbed8b41f857bcc0$var$transitionCallbacks.clear();
|
|
143362
|
+
}
|
|
143363
|
+
};
|
|
143364
|
+
document.body.addEventListener("transitionrun", onTransitionStart);
|
|
143365
|
+
document.body.addEventListener("transitionend", onTransitionEnd);
|
|
143366
|
+
}
|
|
143367
|
+
if (typeof document !== "undefined") {
|
|
143368
|
+
if (document.readyState !== "loading")
|
|
143369
|
+
$bbed8b41f857bcc0$var$setupGlobalEvents();
|
|
143370
|
+
else
|
|
143371
|
+
document.addEventListener("DOMContentLoaded", $bbed8b41f857bcc0$var$setupGlobalEvents);
|
|
143372
|
+
}
|
|
143157
143373
|
function ScatterplotOptions(props2) {
|
|
143158
143374
|
const { children: children2, observationsLabel, cellRadius, setCellRadius, cellRadiusMode, setCellRadiusMode, cellOpacity, setCellOpacity, cellOpacityMode, setCellOpacityMode, cellSetLabelsVisible, setCellSetLabelsVisible, tooltipsVisible, setTooltipsVisible, cellSetLabelSize, setCellSetLabelSize, cellSetPolygonsVisible, setCellSetPolygonsVisible, cellColorEncoding, setCellColorEncoding, geneExpressionColormap, setGeneExpressionColormap, geneExpressionColormapRange, setGeneExpressionColormapRange } = props2;
|
|
143159
|
-
const scatterplotOptionsId =
|
|
143375
|
+
const scatterplotOptionsId = $bdb11010cef70236$export$f680877a34711e37();
|
|
143160
143376
|
const observationsLabelNice = capitalize$1(observationsLabel);
|
|
143161
143377
|
const classes = usePlotOptionsStyles();
|
|
143162
143378
|
function handleCellRadiusModeChange(event) {
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as inflate_1 } from "./pako.esm-68f84e2a.js";
|
|
2
|
-
import { g as getDefaultExportFromCjs, B as BaseDecoder } from "./index-
|
|
2
|
+
import { g as getDefaultExportFromCjs, B as BaseDecoder } from "./index-c4323615.js";
|
|
3
3
|
import "react";
|
|
4
4
|
import "@vitessce/vit-s";
|
|
5
5
|
import "react-dom";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddingScatterplotOptions.d.ts","sourceRoot":"","sources":["../src/EmbeddingScatterplotOptions.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EmbeddingScatterplotOptions.d.ts","sourceRoot":"","sources":["../src/EmbeddingScatterplotOptions.js"],"names":[],"mappings":"AAKA,oFA8CC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import React
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { useId } from 'react-aria';
|
|
3
4
|
import { TableCell, TableRow } from '@material-ui/core';
|
|
4
5
|
import { usePlotOptionsStyles, OptionSelect } from '@vitessce/vit-s';
|
|
5
6
|
export default function EmbeddingScatterplotOptions(props) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vitessce/scatterplot-embedding",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.2",
|
|
4
4
|
"author": "Gehlenborg Lab",
|
|
5
5
|
"homepage": "http://vitessce.io",
|
|
6
6
|
"repository": {
|
|
@@ -19,12 +19,13 @@
|
|
|
19
19
|
"@material-ui/core": "~4.12.3",
|
|
20
20
|
"d3-array": "^2.4.0",
|
|
21
21
|
"lodash-es": "^4.17.21",
|
|
22
|
-
"
|
|
23
|
-
"@vitessce/
|
|
24
|
-
"@vitessce/
|
|
25
|
-
"@vitessce/
|
|
26
|
-
"@vitessce/utils": "3.2.
|
|
27
|
-
"@vitessce/
|
|
22
|
+
"react-aria": "^3.28.0",
|
|
23
|
+
"@vitessce/constants-internal": "3.2.2",
|
|
24
|
+
"@vitessce/legend": "3.2.2",
|
|
25
|
+
"@vitessce/scatterplot": "3.2.2",
|
|
26
|
+
"@vitessce/sets-utils": "3.2.2",
|
|
27
|
+
"@vitessce/utils": "3.2.2",
|
|
28
|
+
"@vitessce/vit-s": "3.2.2"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
30
31
|
"react": "^18.0.0",
|