@vitessce/vit-s 3.8.9 → 3.8.13

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
@@ -8616,11 +8616,6 @@ const { tss } = createTss({
8616
8616
  "usePlugin": useMuiThemeStyleOverridesPlugin
8617
8617
  });
8618
8618
  const useStyles$5 = tss.create({});
8619
- function chainPropTypes(propType1, propType2) {
8620
- return function validate(...args) {
8621
- return propType1(...args) || propType2(...args);
8622
- };
8623
- }
8624
8619
  function GlobalStyles(props) {
8625
8620
  return /* @__PURE__ */ jsxRuntimeExports.jsx(GlobalStyles$1, {
8626
8621
  ...props,
@@ -8672,6 +8667,365 @@ const memoTheme = unstable_memoTheme;
8672
8667
  function useDefaultProps(params) {
8673
8668
  return useDefaultProps$1(params);
8674
8669
  }
8670
+ function getSvgIconUtilityClass(slot) {
8671
+ return generateUtilityClass("MuiSvgIcon", slot);
8672
+ }
8673
+ generateUtilityClasses("MuiSvgIcon", ["root", "colorPrimary", "colorSecondary", "colorAction", "colorError", "colorDisabled", "fontSizeInherit", "fontSizeSmall", "fontSizeMedium", "fontSizeLarge"]);
8674
+ const useUtilityClasses$j = (ownerState) => {
8675
+ const {
8676
+ color: color2,
8677
+ fontSize,
8678
+ classes
8679
+ } = ownerState;
8680
+ const slots = {
8681
+ root: ["root", color2 !== "inherit" && `color${capitalize$1(color2)}`, `fontSize${capitalize$1(fontSize)}`]
8682
+ };
8683
+ return composeClasses(slots, getSvgIconUtilityClass, classes);
8684
+ };
8685
+ const SvgIconRoot = styled("svg", {
8686
+ name: "MuiSvgIcon",
8687
+ slot: "Root",
8688
+ overridesResolver: (props, styles2) => {
8689
+ const {
8690
+ ownerState
8691
+ } = props;
8692
+ return [styles2.root, ownerState.color !== "inherit" && styles2[`color${capitalize$1(ownerState.color)}`], styles2[`fontSize${capitalize$1(ownerState.fontSize)}`]];
8693
+ }
8694
+ })(memoTheme(({
8695
+ theme
8696
+ }) => {
8697
+ var _a3, _b2, _c2, _d2, _e2, _f2, _g2, _h2, _i2, _j2, _k2, _l, _m, _n;
8698
+ return {
8699
+ userSelect: "none",
8700
+ width: "1em",
8701
+ height: "1em",
8702
+ display: "inline-block",
8703
+ flexShrink: 0,
8704
+ transition: (_d2 = (_a3 = theme.transitions) == null ? void 0 : _a3.create) == null ? void 0 : _d2.call(_a3, "fill", {
8705
+ duration: (_c2 = (_b2 = (theme.vars ?? theme).transitions) == null ? void 0 : _b2.duration) == null ? void 0 : _c2.shorter
8706
+ }),
8707
+ variants: [
8708
+ {
8709
+ props: (props) => !props.hasSvgAsChild,
8710
+ style: {
8711
+ // the <svg> will define the property that has `currentColor`
8712
+ // for example heroicons uses fill="none" and stroke="currentColor"
8713
+ fill: "currentColor"
8714
+ }
8715
+ },
8716
+ {
8717
+ props: {
8718
+ fontSize: "inherit"
8719
+ },
8720
+ style: {
8721
+ fontSize: "inherit"
8722
+ }
8723
+ },
8724
+ {
8725
+ props: {
8726
+ fontSize: "small"
8727
+ },
8728
+ style: {
8729
+ fontSize: ((_f2 = (_e2 = theme.typography) == null ? void 0 : _e2.pxToRem) == null ? void 0 : _f2.call(_e2, 20)) || "1.25rem"
8730
+ }
8731
+ },
8732
+ {
8733
+ props: {
8734
+ fontSize: "medium"
8735
+ },
8736
+ style: {
8737
+ fontSize: ((_h2 = (_g2 = theme.typography) == null ? void 0 : _g2.pxToRem) == null ? void 0 : _h2.call(_g2, 24)) || "1.5rem"
8738
+ }
8739
+ },
8740
+ {
8741
+ props: {
8742
+ fontSize: "large"
8743
+ },
8744
+ style: {
8745
+ fontSize: ((_j2 = (_i2 = theme.typography) == null ? void 0 : _i2.pxToRem) == null ? void 0 : _j2.call(_i2, 35)) || "2.1875rem"
8746
+ }
8747
+ },
8748
+ // TODO v5 deprecate color prop, v6 remove for sx
8749
+ ...Object.entries((theme.vars ?? theme).palette).filter(([, value]) => value && value.main).map(([color2]) => {
8750
+ var _a4, _b3;
8751
+ return {
8752
+ props: {
8753
+ color: color2
8754
+ },
8755
+ style: {
8756
+ color: (_b3 = (_a4 = (theme.vars ?? theme).palette) == null ? void 0 : _a4[color2]) == null ? void 0 : _b3.main
8757
+ }
8758
+ };
8759
+ }),
8760
+ {
8761
+ props: {
8762
+ color: "action"
8763
+ },
8764
+ style: {
8765
+ color: (_l = (_k2 = (theme.vars ?? theme).palette) == null ? void 0 : _k2.action) == null ? void 0 : _l.active
8766
+ }
8767
+ },
8768
+ {
8769
+ props: {
8770
+ color: "disabled"
8771
+ },
8772
+ style: {
8773
+ color: (_n = (_m = (theme.vars ?? theme).palette) == null ? void 0 : _m.action) == null ? void 0 : _n.disabled
8774
+ }
8775
+ },
8776
+ {
8777
+ props: {
8778
+ color: "inherit"
8779
+ },
8780
+ style: {
8781
+ color: void 0
8782
+ }
8783
+ }
8784
+ ]
8785
+ };
8786
+ }));
8787
+ const SvgIcon = /* @__PURE__ */ React$1.forwardRef(function SvgIcon2(inProps, ref) {
8788
+ const props = useDefaultProps({
8789
+ props: inProps,
8790
+ name: "MuiSvgIcon"
8791
+ });
8792
+ const {
8793
+ children,
8794
+ className,
8795
+ color: color2 = "inherit",
8796
+ component = "svg",
8797
+ fontSize = "medium",
8798
+ htmlColor,
8799
+ inheritViewBox = false,
8800
+ titleAccess,
8801
+ viewBox = "0 0 24 24",
8802
+ ...other
8803
+ } = props;
8804
+ const hasSvgAsChild = /* @__PURE__ */ React$1.isValidElement(children) && children.type === "svg";
8805
+ const ownerState = {
8806
+ ...props,
8807
+ color: color2,
8808
+ component,
8809
+ fontSize,
8810
+ instanceFontSize: inProps.fontSize,
8811
+ inheritViewBox,
8812
+ viewBox,
8813
+ hasSvgAsChild
8814
+ };
8815
+ const more = {};
8816
+ if (!inheritViewBox) {
8817
+ more.viewBox = viewBox;
8818
+ }
8819
+ const classes = useUtilityClasses$j(ownerState);
8820
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(SvgIconRoot, {
8821
+ as: component,
8822
+ className: clsx$1(classes.root, className),
8823
+ focusable: "false",
8824
+ color: htmlColor,
8825
+ "aria-hidden": titleAccess ? void 0 : true,
8826
+ role: titleAccess ? "img" : void 0,
8827
+ ref,
8828
+ ...more,
8829
+ ...other,
8830
+ ...hasSvgAsChild && children.props,
8831
+ ownerState,
8832
+ children: [hasSvgAsChild ? children.props.children : children, titleAccess ? /* @__PURE__ */ jsxRuntimeExports.jsx("title", {
8833
+ children: titleAccess
8834
+ }) : null]
8835
+ });
8836
+ });
8837
+ SvgIcon.propTypes = {
8838
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
8839
+ // │ These PropTypes are generated from the TypeScript type definitions. │
8840
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
8841
+ // └─────────────────────────────────────────────────────────────────────┘
8842
+ /**
8843
+ * Node passed into the SVG element.
8844
+ */
8845
+ children: PropTypes.node,
8846
+ /**
8847
+ * Override or extend the styles applied to the component.
8848
+ */
8849
+ classes: PropTypes.object,
8850
+ /**
8851
+ * @ignore
8852
+ */
8853
+ className: PropTypes.string,
8854
+ /**
8855
+ * The color of the component.
8856
+ * It supports both default and custom theme colors, which can be added as shown in the
8857
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
8858
+ * You can use the `htmlColor` prop to apply a color attribute to the SVG element.
8859
+ * @default 'inherit'
8860
+ */
8861
+ color: PropTypes.oneOfType([PropTypes.oneOf(["inherit", "action", "disabled", "primary", "secondary", "error", "info", "success", "warning"]), PropTypes.string]),
8862
+ /**
8863
+ * The component used for the root node.
8864
+ * Either a string to use a HTML element or a component.
8865
+ */
8866
+ component: PropTypes.elementType,
8867
+ /**
8868
+ * The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.
8869
+ * @default 'medium'
8870
+ */
8871
+ fontSize: PropTypes.oneOfType([PropTypes.oneOf(["inherit", "large", "medium", "small"]), PropTypes.string]),
8872
+ /**
8873
+ * Applies a color attribute to the SVG element.
8874
+ */
8875
+ htmlColor: PropTypes.string,
8876
+ /**
8877
+ * If `true`, the root node will inherit the custom `component`'s viewBox and the `viewBox`
8878
+ * prop will be ignored.
8879
+ * Useful when you want to reference a custom `component` and have `SvgIcon` pass that
8880
+ * `component`'s viewBox to the root node.
8881
+ * @default false
8882
+ */
8883
+ inheritViewBox: PropTypes.bool,
8884
+ /**
8885
+ * The shape-rendering attribute. The behavior of the different options is described on the
8886
+ * [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Attribute/shape-rendering).
8887
+ * If you are having issues with blurry icons you should investigate this prop.
8888
+ */
8889
+ shapeRendering: PropTypes.string,
8890
+ /**
8891
+ * The system prop that allows defining system overrides as well as additional CSS styles.
8892
+ */
8893
+ sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
8894
+ /**
8895
+ * Provides a human-readable title for the element that contains it.
8896
+ * https://www.w3.org/TR/SVG-access/#Equivalent
8897
+ */
8898
+ titleAccess: PropTypes.string,
8899
+ /**
8900
+ * Allows you to redefine what the coordinates without units mean inside an SVG element.
8901
+ * For example, if the SVG element is 500 (width) by 200 (height),
8902
+ * and you pass viewBox="0 0 50 20",
8903
+ * this means that the coordinates inside the SVG will go from the top left corner (0,0)
8904
+ * to bottom right (50,20) and each unit will be worth 10px.
8905
+ * @default '0 0 24 24'
8906
+ */
8907
+ viewBox: PropTypes.string
8908
+ };
8909
+ SvgIcon.muiName = "SvgIcon";
8910
+ function createSvgIcon(path, displayName) {
8911
+ function Component2(props, ref) {
8912
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(SvgIcon, {
8913
+ "data-testid": `${displayName}Icon`,
8914
+ ref,
8915
+ ...props,
8916
+ children: path
8917
+ });
8918
+ }
8919
+ {
8920
+ Component2.displayName = `${displayName}Icon`;
8921
+ }
8922
+ Component2.muiName = SvgIcon.muiName;
8923
+ return /* @__PURE__ */ React$1.memo(/* @__PURE__ */ React$1.forwardRef(Component2));
8924
+ }
8925
+ function debounce$3(func, wait = 166) {
8926
+ let timeout2;
8927
+ function debounced(...args) {
8928
+ const later = () => {
8929
+ func.apply(this, args);
8930
+ };
8931
+ clearTimeout(timeout2);
8932
+ timeout2 = setTimeout(later, wait);
8933
+ }
8934
+ debounced.clear = () => {
8935
+ clearTimeout(timeout2);
8936
+ };
8937
+ return debounced;
8938
+ }
8939
+ function ownerDocument(node2) {
8940
+ return node2 && node2.ownerDocument || document;
8941
+ }
8942
+ function ownerWindow(node2) {
8943
+ const doc = ownerDocument(node2);
8944
+ return doc.defaultView || window;
8945
+ }
8946
+ function setRef$1(ref, value) {
8947
+ if (typeof ref === "function") {
8948
+ ref(value);
8949
+ } else if (ref) {
8950
+ ref.current = value;
8951
+ }
8952
+ }
8953
+ let globalId = 0;
8954
+ function useGlobalId(idOverride) {
8955
+ const [defaultId, setDefaultId] = React$1.useState(idOverride);
8956
+ const id = idOverride || defaultId;
8957
+ React$1.useEffect(() => {
8958
+ if (defaultId == null) {
8959
+ globalId += 1;
8960
+ setDefaultId(`mui-${globalId}`);
8961
+ }
8962
+ }, [defaultId]);
8963
+ return id;
8964
+ }
8965
+ const safeReact = {
8966
+ ...React$1
8967
+ };
8968
+ const maybeReactUseId = safeReact.useId;
8969
+ function useId(idOverride) {
8970
+ if (maybeReactUseId !== void 0) {
8971
+ const reactId = maybeReactUseId();
8972
+ return idOverride ?? reactId;
8973
+ }
8974
+ return useGlobalId(idOverride);
8975
+ }
8976
+ function useEventCallback(fn2) {
8977
+ const ref = React$1.useRef(fn2);
8978
+ useEnhancedEffect$1(() => {
8979
+ ref.current = fn2;
8980
+ });
8981
+ return React$1.useRef((...args) => (
8982
+ // @ts-expect-error hide `this`
8983
+ (0, ref.current)(...args)
8984
+ )).current;
8985
+ }
8986
+ function useForkRef$1(...refs) {
8987
+ const cleanupRef = React$1.useRef(void 0);
8988
+ const refEffect = React$1.useCallback((instance) => {
8989
+ const cleanups = refs.map((ref) => {
8990
+ if (ref == null) {
8991
+ return null;
8992
+ }
8993
+ if (typeof ref === "function") {
8994
+ const refCallback = ref;
8995
+ const refCleanup = refCallback(instance);
8996
+ return typeof refCleanup === "function" ? refCleanup : () => {
8997
+ refCallback(null);
8998
+ };
8999
+ }
9000
+ ref.current = instance;
9001
+ return () => {
9002
+ ref.current = null;
9003
+ };
9004
+ });
9005
+ return () => {
9006
+ cleanups.forEach((refCleanup) => refCleanup == null ? void 0 : refCleanup());
9007
+ };
9008
+ }, refs);
9009
+ return React$1.useMemo(() => {
9010
+ if (refs.every((ref) => ref == null)) {
9011
+ return null;
9012
+ }
9013
+ return (value) => {
9014
+ if (cleanupRef.current) {
9015
+ cleanupRef.current();
9016
+ cleanupRef.current = void 0;
9017
+ }
9018
+ if (value != null) {
9019
+ cleanupRef.current = refEffect(value);
9020
+ }
9021
+ };
9022
+ }, refs);
9023
+ }
9024
+ function chainPropTypes(propType1, propType2) {
9025
+ return function validate(...args) {
9026
+ return propType1(...args) || propType2(...args);
9027
+ };
9028
+ }
8675
9029
  function _extends$1() {
8676
9030
  return _extends$1 = Object.assign ? Object.assign.bind() : function(n2) {
8677
9031
  for (var e2 = 1; e2 < arguments.length; e2++) {
@@ -9456,360 +9810,6 @@ function getTransitionProps(props, options) {
9456
9810
  delay: style2.transitionDelay
9457
9811
  };
9458
9812
  }
9459
- function getSvgIconUtilityClass(slot) {
9460
- return generateUtilityClass("MuiSvgIcon", slot);
9461
- }
9462
- generateUtilityClasses("MuiSvgIcon", ["root", "colorPrimary", "colorSecondary", "colorAction", "colorError", "colorDisabled", "fontSizeInherit", "fontSizeSmall", "fontSizeMedium", "fontSizeLarge"]);
9463
- const useUtilityClasses$j = (ownerState) => {
9464
- const {
9465
- color: color2,
9466
- fontSize,
9467
- classes
9468
- } = ownerState;
9469
- const slots = {
9470
- root: ["root", color2 !== "inherit" && `color${capitalize$1(color2)}`, `fontSize${capitalize$1(fontSize)}`]
9471
- };
9472
- return composeClasses(slots, getSvgIconUtilityClass, classes);
9473
- };
9474
- const SvgIconRoot = styled("svg", {
9475
- name: "MuiSvgIcon",
9476
- slot: "Root",
9477
- overridesResolver: (props, styles2) => {
9478
- const {
9479
- ownerState
9480
- } = props;
9481
- return [styles2.root, ownerState.color !== "inherit" && styles2[`color${capitalize$1(ownerState.color)}`], styles2[`fontSize${capitalize$1(ownerState.fontSize)}`]];
9482
- }
9483
- })(memoTheme(({
9484
- theme
9485
- }) => {
9486
- var _a3, _b2, _c2, _d2, _e2, _f2, _g2, _h2, _i2, _j2, _k2, _l, _m, _n;
9487
- return {
9488
- userSelect: "none",
9489
- width: "1em",
9490
- height: "1em",
9491
- display: "inline-block",
9492
- flexShrink: 0,
9493
- transition: (_d2 = (_a3 = theme.transitions) == null ? void 0 : _a3.create) == null ? void 0 : _d2.call(_a3, "fill", {
9494
- duration: (_c2 = (_b2 = (theme.vars ?? theme).transitions) == null ? void 0 : _b2.duration) == null ? void 0 : _c2.shorter
9495
- }),
9496
- variants: [
9497
- {
9498
- props: (props) => !props.hasSvgAsChild,
9499
- style: {
9500
- // the <svg> will define the property that has `currentColor`
9501
- // for example heroicons uses fill="none" and stroke="currentColor"
9502
- fill: "currentColor"
9503
- }
9504
- },
9505
- {
9506
- props: {
9507
- fontSize: "inherit"
9508
- },
9509
- style: {
9510
- fontSize: "inherit"
9511
- }
9512
- },
9513
- {
9514
- props: {
9515
- fontSize: "small"
9516
- },
9517
- style: {
9518
- fontSize: ((_f2 = (_e2 = theme.typography) == null ? void 0 : _e2.pxToRem) == null ? void 0 : _f2.call(_e2, 20)) || "1.25rem"
9519
- }
9520
- },
9521
- {
9522
- props: {
9523
- fontSize: "medium"
9524
- },
9525
- style: {
9526
- fontSize: ((_h2 = (_g2 = theme.typography) == null ? void 0 : _g2.pxToRem) == null ? void 0 : _h2.call(_g2, 24)) || "1.5rem"
9527
- }
9528
- },
9529
- {
9530
- props: {
9531
- fontSize: "large"
9532
- },
9533
- style: {
9534
- fontSize: ((_j2 = (_i2 = theme.typography) == null ? void 0 : _i2.pxToRem) == null ? void 0 : _j2.call(_i2, 35)) || "2.1875rem"
9535
- }
9536
- },
9537
- // TODO v5 deprecate color prop, v6 remove for sx
9538
- ...Object.entries((theme.vars ?? theme).palette).filter(([, value]) => value && value.main).map(([color2]) => {
9539
- var _a4, _b3;
9540
- return {
9541
- props: {
9542
- color: color2
9543
- },
9544
- style: {
9545
- color: (_b3 = (_a4 = (theme.vars ?? theme).palette) == null ? void 0 : _a4[color2]) == null ? void 0 : _b3.main
9546
- }
9547
- };
9548
- }),
9549
- {
9550
- props: {
9551
- color: "action"
9552
- },
9553
- style: {
9554
- color: (_l = (_k2 = (theme.vars ?? theme).palette) == null ? void 0 : _k2.action) == null ? void 0 : _l.active
9555
- }
9556
- },
9557
- {
9558
- props: {
9559
- color: "disabled"
9560
- },
9561
- style: {
9562
- color: (_n = (_m = (theme.vars ?? theme).palette) == null ? void 0 : _m.action) == null ? void 0 : _n.disabled
9563
- }
9564
- },
9565
- {
9566
- props: {
9567
- color: "inherit"
9568
- },
9569
- style: {
9570
- color: void 0
9571
- }
9572
- }
9573
- ]
9574
- };
9575
- }));
9576
- const SvgIcon = /* @__PURE__ */ React$1.forwardRef(function SvgIcon2(inProps, ref) {
9577
- const props = useDefaultProps({
9578
- props: inProps,
9579
- name: "MuiSvgIcon"
9580
- });
9581
- const {
9582
- children,
9583
- className,
9584
- color: color2 = "inherit",
9585
- component = "svg",
9586
- fontSize = "medium",
9587
- htmlColor,
9588
- inheritViewBox = false,
9589
- titleAccess,
9590
- viewBox = "0 0 24 24",
9591
- ...other
9592
- } = props;
9593
- const hasSvgAsChild = /* @__PURE__ */ React$1.isValidElement(children) && children.type === "svg";
9594
- const ownerState = {
9595
- ...props,
9596
- color: color2,
9597
- component,
9598
- fontSize,
9599
- instanceFontSize: inProps.fontSize,
9600
- inheritViewBox,
9601
- viewBox,
9602
- hasSvgAsChild
9603
- };
9604
- const more = {};
9605
- if (!inheritViewBox) {
9606
- more.viewBox = viewBox;
9607
- }
9608
- const classes = useUtilityClasses$j(ownerState);
9609
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(SvgIconRoot, {
9610
- as: component,
9611
- className: clsx$1(classes.root, className),
9612
- focusable: "false",
9613
- color: htmlColor,
9614
- "aria-hidden": titleAccess ? void 0 : true,
9615
- role: titleAccess ? "img" : void 0,
9616
- ref,
9617
- ...more,
9618
- ...other,
9619
- ...hasSvgAsChild && children.props,
9620
- ownerState,
9621
- children: [hasSvgAsChild ? children.props.children : children, titleAccess ? /* @__PURE__ */ jsxRuntimeExports.jsx("title", {
9622
- children: titleAccess
9623
- }) : null]
9624
- });
9625
- });
9626
- SvgIcon.propTypes = {
9627
- // ┌────────────────────────────── Warning ──────────────────────────────┐
9628
- // │ These PropTypes are generated from the TypeScript type definitions. │
9629
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
9630
- // └─────────────────────────────────────────────────────────────────────┘
9631
- /**
9632
- * Node passed into the SVG element.
9633
- */
9634
- children: PropTypes.node,
9635
- /**
9636
- * Override or extend the styles applied to the component.
9637
- */
9638
- classes: PropTypes.object,
9639
- /**
9640
- * @ignore
9641
- */
9642
- className: PropTypes.string,
9643
- /**
9644
- * The color of the component.
9645
- * It supports both default and custom theme colors, which can be added as shown in the
9646
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
9647
- * You can use the `htmlColor` prop to apply a color attribute to the SVG element.
9648
- * @default 'inherit'
9649
- */
9650
- color: PropTypes.oneOfType([PropTypes.oneOf(["inherit", "action", "disabled", "primary", "secondary", "error", "info", "success", "warning"]), PropTypes.string]),
9651
- /**
9652
- * The component used for the root node.
9653
- * Either a string to use a HTML element or a component.
9654
- */
9655
- component: PropTypes.elementType,
9656
- /**
9657
- * The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.
9658
- * @default 'medium'
9659
- */
9660
- fontSize: PropTypes.oneOfType([PropTypes.oneOf(["inherit", "large", "medium", "small"]), PropTypes.string]),
9661
- /**
9662
- * Applies a color attribute to the SVG element.
9663
- */
9664
- htmlColor: PropTypes.string,
9665
- /**
9666
- * If `true`, the root node will inherit the custom `component`'s viewBox and the `viewBox`
9667
- * prop will be ignored.
9668
- * Useful when you want to reference a custom `component` and have `SvgIcon` pass that
9669
- * `component`'s viewBox to the root node.
9670
- * @default false
9671
- */
9672
- inheritViewBox: PropTypes.bool,
9673
- /**
9674
- * The shape-rendering attribute. The behavior of the different options is described on the
9675
- * [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Attribute/shape-rendering).
9676
- * If you are having issues with blurry icons you should investigate this prop.
9677
- */
9678
- shapeRendering: PropTypes.string,
9679
- /**
9680
- * The system prop that allows defining system overrides as well as additional CSS styles.
9681
- */
9682
- sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
9683
- /**
9684
- * Provides a human-readable title for the element that contains it.
9685
- * https://www.w3.org/TR/SVG-access/#Equivalent
9686
- */
9687
- titleAccess: PropTypes.string,
9688
- /**
9689
- * Allows you to redefine what the coordinates without units mean inside an SVG element.
9690
- * For example, if the SVG element is 500 (width) by 200 (height),
9691
- * and you pass viewBox="0 0 50 20",
9692
- * this means that the coordinates inside the SVG will go from the top left corner (0,0)
9693
- * to bottom right (50,20) and each unit will be worth 10px.
9694
- * @default '0 0 24 24'
9695
- */
9696
- viewBox: PropTypes.string
9697
- };
9698
- SvgIcon.muiName = "SvgIcon";
9699
- function createSvgIcon(path, displayName) {
9700
- function Component2(props, ref) {
9701
- return /* @__PURE__ */ jsxRuntimeExports.jsx(SvgIcon, {
9702
- "data-testid": `${displayName}Icon`,
9703
- ref,
9704
- ...props,
9705
- children: path
9706
- });
9707
- }
9708
- {
9709
- Component2.displayName = `${displayName}Icon`;
9710
- }
9711
- Component2.muiName = SvgIcon.muiName;
9712
- return /* @__PURE__ */ React$1.memo(/* @__PURE__ */ React$1.forwardRef(Component2));
9713
- }
9714
- function debounce$3(func, wait = 166) {
9715
- let timeout2;
9716
- function debounced(...args) {
9717
- const later = () => {
9718
- func.apply(this, args);
9719
- };
9720
- clearTimeout(timeout2);
9721
- timeout2 = setTimeout(later, wait);
9722
- }
9723
- debounced.clear = () => {
9724
- clearTimeout(timeout2);
9725
- };
9726
- return debounced;
9727
- }
9728
- function ownerDocument(node2) {
9729
- return node2 && node2.ownerDocument || document;
9730
- }
9731
- function ownerWindow(node2) {
9732
- const doc = ownerDocument(node2);
9733
- return doc.defaultView || window;
9734
- }
9735
- function setRef$1(ref, value) {
9736
- if (typeof ref === "function") {
9737
- ref(value);
9738
- } else if (ref) {
9739
- ref.current = value;
9740
- }
9741
- }
9742
- let globalId = 0;
9743
- function useGlobalId(idOverride) {
9744
- const [defaultId, setDefaultId] = React$1.useState(idOverride);
9745
- const id = idOverride || defaultId;
9746
- React$1.useEffect(() => {
9747
- if (defaultId == null) {
9748
- globalId += 1;
9749
- setDefaultId(`mui-${globalId}`);
9750
- }
9751
- }, [defaultId]);
9752
- return id;
9753
- }
9754
- const safeReact = {
9755
- ...React$1
9756
- };
9757
- const maybeReactUseId = safeReact.useId;
9758
- function useId(idOverride) {
9759
- if (maybeReactUseId !== void 0) {
9760
- const reactId = maybeReactUseId();
9761
- return idOverride ?? reactId;
9762
- }
9763
- return useGlobalId(idOverride);
9764
- }
9765
- function useEventCallback(fn2) {
9766
- const ref = React$1.useRef(fn2);
9767
- useEnhancedEffect$1(() => {
9768
- ref.current = fn2;
9769
- });
9770
- return React$1.useRef((...args) => (
9771
- // @ts-expect-error hide `this`
9772
- (0, ref.current)(...args)
9773
- )).current;
9774
- }
9775
- function useForkRef$1(...refs) {
9776
- const cleanupRef = React$1.useRef(void 0);
9777
- const refEffect = React$1.useCallback((instance) => {
9778
- const cleanups = refs.map((ref) => {
9779
- if (ref == null) {
9780
- return null;
9781
- }
9782
- if (typeof ref === "function") {
9783
- const refCallback = ref;
9784
- const refCleanup = refCallback(instance);
9785
- return typeof refCleanup === "function" ? refCleanup : () => {
9786
- refCallback(null);
9787
- };
9788
- }
9789
- ref.current = instance;
9790
- return () => {
9791
- ref.current = null;
9792
- };
9793
- });
9794
- return () => {
9795
- cleanups.forEach((refCleanup) => refCleanup == null ? void 0 : refCleanup());
9796
- };
9797
- }, refs);
9798
- return React$1.useMemo(() => {
9799
- if (refs.every((ref) => ref == null)) {
9800
- return null;
9801
- }
9802
- return (value) => {
9803
- if (cleanupRef.current) {
9804
- cleanupRef.current();
9805
- cleanupRef.current = void 0;
9806
- }
9807
- if (value != null) {
9808
- cleanupRef.current = refEffect(value);
9809
- }
9810
- };
9811
- }, refs);
9812
- }
9813
9813
  function getTypeByValue(value) {
9814
9814
  const valueType = typeof value;
9815
9815
  switch (valueType) {
@@ -22313,8 +22313,8 @@ function useQuery(options, queryClient) {
22313
22313
  }
22314
22314
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
22315
22315
  var freeSelf = typeof self == "object" && self && self.Object === Object && self;
22316
- var root$1 = freeGlobal || freeSelf || Function("return this")();
22317
- var Symbol$1 = root$1.Symbol;
22316
+ var root = freeGlobal || freeSelf || Function("return this")();
22317
+ var Symbol$1 = root.Symbol;
22318
22318
  var objectProto$d = Object.prototype;
22319
22319
  var hasOwnProperty$a = objectProto$d.hasOwnProperty;
22320
22320
  var nativeObjectToString$1 = objectProto$d.toString;
@@ -22439,7 +22439,7 @@ function isFunction(value) {
22439
22439
  var tag = baseGetTag(value);
22440
22440
  return tag == funcTag$2 || tag == genTag$1 || tag == asyncTag || tag == proxyTag;
22441
22441
  }
22442
- var coreJsData = root$1["__core-js_shared__"];
22442
+ var coreJsData = root["__core-js_shared__"];
22443
22443
  var maskSrcKey = function() {
22444
22444
  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || "");
22445
22445
  return uid ? "Symbol(src)_1." + uid : "";
@@ -22484,7 +22484,7 @@ function getNative(object, key) {
22484
22484
  var value = getValue(object, key);
22485
22485
  return baseIsNative(value) ? value : void 0;
22486
22486
  }
22487
- var WeakMap$1 = getNative(root$1, "WeakMap");
22487
+ var WeakMap$1 = getNative(root, "WeakMap");
22488
22488
  var objectCreate = Object.create;
22489
22489
  var baseCreate = /* @__PURE__ */ function() {
22490
22490
  function object() {
@@ -22657,7 +22657,7 @@ function stubFalse() {
22657
22657
  var freeExports$2 = typeof exports == "object" && exports && !exports.nodeType && exports;
22658
22658
  var freeModule$2 = freeExports$2 && typeof module == "object" && module && !module.nodeType && module;
22659
22659
  var moduleExports$2 = freeModule$2 && freeModule$2.exports === freeExports$2;
22660
- var Buffer$1 = moduleExports$2 ? root$1.Buffer : void 0;
22660
+ var Buffer$1 = moduleExports$2 ? root.Buffer : void 0;
22661
22661
  var nativeIsBuffer = Buffer$1 ? Buffer$1.isBuffer : void 0;
22662
22662
  var isBuffer$1 = nativeIsBuffer || stubFalse;
22663
22663
  var argsTag$2 = "[object Arguments]", arrayTag$2 = "[object Array]", boolTag$3 = "[object Boolean]", dateTag$3 = "[object Date]", errorTag$2 = "[object Error]", funcTag$1 = "[object Function]", mapTag$5 = "[object Map]", numberTag$3 = "[object Number]", objectTag$3 = "[object Object]", regexpTag$3 = "[object RegExp]", setTag$5 = "[object Set]", stringTag$3 = "[object String]", weakMapTag$2 = "[object WeakMap]";
@@ -22844,7 +22844,7 @@ ListCache.prototype["delete"] = listCacheDelete;
22844
22844
  ListCache.prototype.get = listCacheGet;
22845
22845
  ListCache.prototype.has = listCacheHas;
22846
22846
  ListCache.prototype.set = listCacheSet;
22847
- var Map$1 = getNative(root$1, "Map");
22847
+ var Map$1 = getNative(root, "Map");
22848
22848
  function mapCacheClear() {
22849
22849
  this.size = 0;
22850
22850
  this.__data__ = {
@@ -23038,7 +23038,7 @@ Stack.prototype.set = stackSet;
23038
23038
  var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
23039
23039
  var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
23040
23040
  var moduleExports = freeModule && freeModule.exports === freeExports;
23041
- var Buffer2 = moduleExports ? root$1.Buffer : void 0;
23041
+ var Buffer2 = moduleExports ? root.Buffer : void 0;
23042
23042
  Buffer2 ? Buffer2.allocUnsafe : void 0;
23043
23043
  function cloneBuffer(buffer, isDeep) {
23044
23044
  {
@@ -23077,9 +23077,9 @@ function baseGetAllKeys(object, keysFunc, symbolsFunc) {
23077
23077
  function getAllKeys(object) {
23078
23078
  return baseGetAllKeys(object, keys, getSymbols);
23079
23079
  }
23080
- var DataView$1 = getNative(root$1, "DataView");
23081
- var Promise$1 = getNative(root$1, "Promise");
23082
- var Set$1 = getNative(root$1, "Set");
23080
+ var DataView$1 = getNative(root, "DataView");
23081
+ var Promise$1 = getNative(root, "Promise");
23082
+ var Set$1 = getNative(root, "Set");
23083
23083
  var mapTag$4 = "[object Map]", objectTag$2 = "[object Object]", promiseTag = "[object Promise]", setTag$4 = "[object Set]", weakMapTag$1 = "[object WeakMap]";
23084
23084
  var dataViewTag$3 = "[object DataView]";
23085
23085
  var dataViewCtorString = toSource(DataView$1), mapCtorString = toSource(Map$1), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set$1), weakMapCtorString = toSource(WeakMap$1);
@@ -23114,7 +23114,7 @@ function initCloneArray(array) {
23114
23114
  }
23115
23115
  return result;
23116
23116
  }
23117
- var Uint8Array$1 = root$1.Uint8Array;
23117
+ var Uint8Array$1 = root.Uint8Array;
23118
23118
  function cloneArrayBuffer(arrayBuffer) {
23119
23119
  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
23120
23120
  new Uint8Array$1(result).set(new Uint8Array$1(arrayBuffer));
@@ -23624,7 +23624,7 @@ function createBaseEach(eachFunc, fromRight) {
23624
23624
  }
23625
23625
  var baseEach = createBaseEach(baseForOwn);
23626
23626
  var now = function() {
23627
- return root$1.Date.now();
23627
+ return root.Date.now();
23628
23628
  };
23629
23629
  var FUNC_ERROR_TEXT = "Expected a function";
23630
23630
  var nativeMax$1 = Math.max, nativeMin = Math.min;
@@ -28516,6 +28516,23 @@ function atLeastLogLevel(someLevel) {
28516
28516
  const numericTarget = OrderedLogLevels.indexOf(someLevel);
28517
28517
  return currLevel <= numericTarget;
28518
28518
  }
28519
+ function extent(values2, valueof) {
28520
+ let min2;
28521
+ let max2;
28522
+ {
28523
+ for (const value of values2) {
28524
+ if (value != null) {
28525
+ if (min2 === void 0) {
28526
+ if (value >= value) min2 = max2 = value;
28527
+ } else {
28528
+ if (min2 > value) min2 = value;
28529
+ if (max2 < value) max2 = value;
28530
+ }
28531
+ }
28532
+ }
28533
+ }
28534
+ return [min2, max2];
28535
+ }
28519
28536
  configSchema1_0_0.shape.coordinationSpace.unwrap();
28520
28537
  configSchema1_0_0.shape.layout.element.shape.coordinationScopes.unwrap();
28521
28538
  function upgradeReplaceViewProp(prefix2, view, coordinationSpace) {
@@ -31296,6 +31313,8 @@ const CoordinationType$1 = {
31296
31313
  // Per-spatial-layer
31297
31314
  SPATIAL_MAX_RESOLUTION: "spatialMaxResolution",
31298
31315
  // Per-image-channel (for spatial-accelerated)
31316
+ SPATIAL_LOD_FACTOR: "spatialLodFactor",
31317
+ // LOD factor for 3D volume rendering
31299
31318
  // For clipping plane sliders
31300
31319
  SPATIAL_SLICE_X: "spatialSliceX",
31301
31320
  SPATIAL_SLICE_Y: "spatialSliceY",
@@ -32251,7 +32270,7 @@ const AUTO_INDEPENDENT_COORDINATION_TYPES = [
32251
32270
  CoordinationType$1.HIERARCHY_LEVELS
32252
32271
  ]
32253
32272
  });
32254
- const version = "3.8.9";
32273
+ const version = "3.8.13";
32255
32274
  const META_VERSION = {
32256
32275
  version
32257
32276
  };
@@ -34899,9 +34918,6 @@ class Location {
34899
34918
  return new Location(this.store, decodeURIComponent(new URL(path, root2).pathname));
34900
34919
  }
34901
34920
  }
34902
- function root(store) {
34903
- return new Location(store ?? /* @__PURE__ */ new Map());
34904
- }
34905
34921
  class Group extends Location {
34906
34922
  constructor(store, path, metadata) {
34907
34923
  super(store, path);
@@ -36087,7 +36103,7 @@ class SpatialDataAutoConfig extends AbstractAutoConfig {
36087
36103
  return relPath.match(/^(tables|table|images|labels|shapes|points)\/([^/]*)$/);
36088
36104
  });
36089
36105
  availableElements.forEach(({ path, attrs }) => {
36090
- var _a3, _b2, _c2, _d2, _e2, _f2;
36106
+ var _a3, _b2, _c2, _d2, _e2;
36091
36107
  const relPath = path.substring(1);
36092
36108
  const firstCoordinateSystem = (_e2 = (_d2 = (_c2 = (_b2 = (_a3 = attrs == null ? void 0 : attrs.multiscales) == null ? void 0 : _a3[0]) == null ? void 0 : _b2.coordinateTransformations) == null ? void 0 : _c2[0]) == null ? void 0 : _d2.output) == null ? void 0 : _e2.name;
36093
36109
  if (relPath.match(/^(images)\/([^/]*)$/)) {
@@ -36105,13 +36121,7 @@ class SpatialDataAutoConfig extends AbstractAutoConfig {
36105
36121
  };
36106
36122
  }
36107
36123
  if (relPath.match(/^(shapes)\/([^/]*)$/)) {
36108
- options.obsSpots = {
36109
- path: relPath,
36110
- coordinateSystem: firstCoordinateSystem
36111
- };
36112
- }
36113
- if (relPath.match(/^(points)\/([^/]*)$/)) {
36114
- options.obsPoints = {
36124
+ options.obsSegmentations = {
36115
36125
  path: relPath,
36116
36126
  coordinateSystem: firstCoordinateSystem
36117
36127
  };
@@ -36125,21 +36135,6 @@ class SpatialDataAutoConfig extends AbstractAutoConfig {
36125
36135
  // region: null,
36126
36136
  };
36127
36137
  }
36128
- const hasObs = tableEls.find((el) => el.path === `${path}/obs`);
36129
- if (hasObs) {
36130
- const columnOrder = (_f2 = hasObs.attrs) == null ? void 0 : _f2["column-order"];
36131
- options.obsSets = {
36132
- // region: null,
36133
- tablePath: relPath,
36134
- obsSets: columnOrder.map((c) => ({
36135
- // TODO: determine whether this column is string/categorical.
36136
- // TODO: determine whether this column contains too many
36137
- // categories to make sense to consider a cell set.
36138
- path: `${hasObs.path.substring(1)}/${c}`,
36139
- name: c
36140
- }))
36141
- };
36142
- }
36143
36138
  }
36144
36139
  });
36145
36140
  return options;
@@ -36294,8 +36289,16 @@ async function parsedUrlToZmetadata(parsedUrl) {
36294
36289
  store = await withConsolidated(initialStore, { metadataKey: "zmetadata" });
36295
36290
  }
36296
36291
  const contents = store.contents();
36292
+ const consolidatedRoot = await open(store, { kind: "group" });
36297
36293
  promises = contents.map(async (value) => {
36298
- const item = await open(root(store).resolve(value.path));
36294
+ let item;
36295
+ try {
36296
+ item = await open(consolidatedRoot.resolve(value.path), { kind: value.kind });
36297
+ } catch {
36298
+ item = {
36299
+ attrs: {}
36300
+ };
36301
+ }
36299
36302
  return {
36300
36303
  ...value,
36301
36304
  attrs: item.attrs
@@ -36326,9 +36329,10 @@ async function parsedUrlToZmetadata(parsedUrl) {
36326
36329
  // Note: For spatialData, we assume the store is always consolidated.
36327
36330
  // TODO: throw error if spatialdata + not consolidated?
36328
36331
  ];
36332
+ const storeRoot = await open(store, { kind: "group" });
36329
36333
  promises = keysToTry.map(async (k) => {
36330
36334
  try {
36331
- const item = await open(root(store).resolve(k));
36335
+ const item = await open(storeRoot.resolve(k));
36332
36336
  return {
36333
36337
  path: k,
36334
36338
  kind: item.kind,
@@ -37289,7 +37293,9 @@ function useMultiDatasetCoordination(parameters, coordinationScopes, coordinatio
37289
37293
  }
37290
37294
  const AUXILIARY_COORDINATION_TYPES_MAP = {
37291
37295
  spatialImageLayer: ["imageLayerCallbacks", "areLoadingImageChannels"],
37292
- spatialSegmentationLayer: ["segmentationLayerCallbacks", "areLoadingSegmentationChannels"]
37296
+ spatialSegmentationLayer: ["segmentationLayerCallbacks", "areLoadingSegmentationChannels"],
37297
+ spatialAcceleratedVolumeLoadingProgress: ["volumeLoadingProgress"],
37298
+ layerControllerBeta: ["volumeLoadingProgress"]
37293
37299
  };
37294
37300
  const mapCoordinationScopes = (coordinationScopes) => {
37295
37301
  const newCoordinationScopes = {};
@@ -44348,23 +44354,6 @@ function createLoaders(datasets, configDescription, fileTypes, coordinationTypes
44348
44354
  });
44349
44355
  return result;
44350
44356
  }
44351
- function extent(values2, valueof) {
44352
- let min2;
44353
- let max2;
44354
- {
44355
- for (const value of values2) {
44356
- if (value != null) {
44357
- if (min2 === void 0) {
44358
- if (value >= value) min2 = max2 = value;
44359
- } else {
44360
- if (min2 > value) min2 = value;
44361
- if (max2 < value) max2 = value;
44362
- }
44363
- }
44364
- }
44365
- }
44366
- return [min2, max2];
44367
- }
44368
44357
  function getWindowDimensions() {
44369
44358
  const { innerWidth: width2, innerHeight: height2 } = window;
44370
44359
  return {
@@ -45563,7 +45552,10 @@ function LoadingIndicator() {
45563
45552
  const useStyles$2 = makeStyles()(() => ({
45564
45553
  paper: {
45565
45554
  maxHeight: 200,
45566
- overflow: "auto"
45555
+ overflowX: "hidden",
45556
+ overflowY: "auto",
45557
+ paddingLeft: "4px",
45558
+ paddingRight: "4px"
45567
45559
  },
45568
45560
  container: {
45569
45561
  position: "relative",
@@ -47055,7 +47047,7 @@ function useSpotMultiFeatureSelection(coordinationScopes, coordinationScopesBy,
47055
47047
  [
47056
47048
  coordinationScopes,
47057
47049
  coordinationScopesBy,
47058
- ...Object.values(featureSelectionCoordination[0] || {}).flatMap((layerVal) => layerVal.featureSelection)
47050
+ JSON.stringify(Object.values(featureSelectionCoordination[0] || {}).flatMap((layerVal) => layerVal.featureSelection))
47059
47051
  ]
47060
47052
  );
47061
47053
  const [
@@ -70,8 +70,8 @@ export function useSpotMultiFeatureSelection(coordinationScopes, coordinationSco
70
70
  ]))),
71
71
  // Need to execute this more frequently, whenever the featureSelections update.
72
72
  [coordinationScopes, coordinationScopesBy,
73
- ...Object.values(featureSelectionCoordination[0] || {})
74
- .flatMap(layerVal => layerVal.featureSelection),
73
+ JSON.stringify(Object.values(featureSelectionCoordination[0] || {})
74
+ .flatMap(layerVal => layerVal.featureSelection)),
75
75
  ]);
76
76
  const [featureData, loadedSelections, extents, normData, featureStatus, errors,] = useFeatureSelectionMultiLevel(loaders, dataset, false, matchOnObj, selections, 1);
77
77
  return [featureData, loadedSelections, extents, normData, featureStatus, errors];
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/shared-mui/components.js"],"names":[],"mappings":"AAyBA,oDAkEC"}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/shared-mui/components.js"],"names":[],"mappings":"AA4BA,oDAkEC"}
@@ -6,7 +6,10 @@ import { useVitessceContainer } from '../hooks.js';
6
6
  const useStyles = makeStyles()(() => ({
7
7
  paper: {
8
8
  maxHeight: 200,
9
- overflow: 'auto',
9
+ overflowX: 'hidden',
10
+ overflowY: 'auto',
11
+ paddingLeft: '4px',
12
+ paddingRight: '4px',
10
13
  },
11
14
  container: {
12
15
  position: 'relative',
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/state/hooks.js"],"names":[],"mappings":"AA8BA,4DAiBC;AAED,6CAMC;AACD,uDAOC;AAED,8DAEC;AAGD,2DAiBC;AAED,4CAMC;AACD,sDAOC;AAED,6DAEC;AAID;;;;;;GAMG;AACH,8CAJW,GAAC,mBAEC,MAAM,GAAC,SAAS,CA4B5B;AAED;;;;;;;GAOG;AACH,gDALW,GAAC,wBACD,GAAC,qBAEC,MAAM,GAAC,SAAS,CA0C5B;AAED;;;;;GAKG;AACH,6CAJW,MAAM,sBACN,GAAC,GACC,MAAM,GAAC,SAAS,CAI5B;AAED;;;;;;GAMG;AACH,+CALW,MAAM,mDACN,GAAC,wBACD,GAAC,GACC,MAAM,GAAC,SAAS,CAc5B;AAySD;;;;;;;;;GASG;AACH,mDALW,MAAM,EAAE,sBACR,MAAM,GAEJ,MAAM,CAclB;AAED;;;;;;;;;;;;;;;GAeG;AACH,4CATW,MAAM,EAAE,sBACR,MAAM,GAEJ,KAAK,CAmCjB;AAED,yFAKC;AAED,gGAqBC;AAED,0IA4BC;AAED,iJAkEC;AAED,yFAmBC;AAED;;;;GAIG;AACH,mDAHW,MAAM,GACJ,MAAM,CAIlB;AAED;;;;;;;;;;;;;GAaG;AACH,mDAXW,MAAM,EAAE,sBACR,MAAM,wBACN,MAAM,UAEN,MAAM,GAEJ,KAAK,CA2EjB;AAED;;;;;GAKG;AACH,0DAHW,MAAM,GACJ,MAAM,CAiBlB;AAED;;;;;;GAMG;AACH,4DAJW,MAAM,wBACN,MAAM,GACJ,MAAM,CAgBlB;AAED;;;;;;;GAOG;AACH,4DANW,MAAM,EAAE,iDACR,MAAM,eACN,MAAM,iBACN,MAAM,SAuEhB;AAGD;;;;;;;;;;;GAWG;AACH,wDATW,MAAM,EAAE,sBACR,MAAM,wBACN,MAAM,GAEJ,KAAK,CAUjB;AA6BD;;;;;;;;;;;;;;;GAeG;AACH,qDATW,MAAM,EAAE,sBACR,MAAM,GAEJ,KAAK,CAgCjB;AAED;;;;;GAKG;AACH,8BAHa,MAAM,CAKlB;AAGD;;;;;;;;;;;;GAYG;AACH,2CARW,MAAM,WACN,MAAM,YACN,MAAM,0BACN,MAAM,OAoBhB;AAED;;;;;;;;;;;;GAYG;AACH,2CARW,MAAM,WACN,MAAM,YACN,MAAM,0BACN,MAAM,OAShB;AAED;;;;;GAKG;AACH,6BAHa,MAAM,EAAE,CAKpB;AAED;;;;;GAKG;AACH,+CAEC;AAED;;;;;GAKG;AACH,0EAEC;AAED;;;;;GAKG;AACH,uEAEC;AAED;;;;;GAKG;AACH,4CAEC;AAED;;;;;GAKG;AACH,0CAEC;AAED;;;;;GAKG;AACH,iDAEC;AAED;;;;;GAKG;AACH,iCAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,oEAIC;AAGD;;;;;GAKG;AACH,qCAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,iDAEC;AAED;;;;;GAKG;AACH,8BAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,0CAEC;AAED;;;;;GAKG;AACH,iDAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,6DAOC;AAED;;;;GAIG;AACH,iCAFa,MAAM,CAIlB;AAED;;;;;GAKG;AACH,8CAEC;AAzhCM,yFA4LH;AAOG,0FAFM,MAAM,CAOlB;AAcM,iDAUJ"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/state/hooks.js"],"names":[],"mappings":"AA8BA,4DAiBC;AAED,6CAMC;AACD,uDAOC;AAED,8DAEC;AAGD,2DAiBC;AAED,4CAMC;AACD,sDAOC;AAED,6DAEC;AAID;;;;;;GAMG;AACH,8CAJW,GAAC,mBAEC,MAAM,GAAC,SAAS,CA4B5B;AAED;;;;;;;GAOG;AACH,gDALW,GAAC,wBACD,GAAC,qBAEC,MAAM,GAAC,SAAS,CA0C5B;AAED;;;;;GAKG;AACH,6CAJW,MAAM,sBACN,GAAC,GACC,MAAM,GAAC,SAAS,CAI5B;AAED;;;;;;GAMG;AACH,+CALW,MAAM,mDACN,GAAC,wBACD,GAAC,GACC,MAAM,GAAC,SAAS,CAc5B;AAySD;;;;;;;;;GASG;AACH,mDALW,MAAM,EAAE,sBACR,MAAM,GAEJ,MAAM,CAclB;AAED;;;;;;;;;;;;;;;GAeG;AACH,4CATW,MAAM,EAAE,sBACR,MAAM,GAEJ,KAAK,CAmCjB;AAED,yFAKC;AAED,gGAqBC;AAED,0IA4BC;AAED,iJAkEC;AAED,yFAmBC;AAED;;;;GAIG;AACH,mDAHW,MAAM,GACJ,MAAM,CAIlB;AAED;;;;;;;;;;;;;GAaG;AACH,mDAXW,MAAM,EAAE,sBACR,MAAM,wBACN,MAAM,UAEN,MAAM,GAEJ,KAAK,CA2EjB;AAED;;;;;GAKG;AACH,0DAHW,MAAM,GACJ,MAAM,CAiBlB;AAED;;;;;;GAMG;AACH,4DAJW,MAAM,wBACN,MAAM,GACJ,MAAM,CAgBlB;AAED;;;;;;;GAOG;AACH,4DANW,MAAM,EAAE,iDACR,MAAM,eACN,MAAM,iBACN,MAAM,SAuEhB;AAGD;;;;;;;;;;;GAWG;AACH,wDATW,MAAM,EAAE,sBACR,MAAM,wBACN,MAAM,GAEJ,KAAK,CAUjB;AA+BD;;;;;;;;;;;;;;;GAeG;AACH,qDATW,MAAM,EAAE,sBACR,MAAM,GAEJ,KAAK,CAiCjB;AAED;;;;;GAKG;AACH,8BAHa,MAAM,CAKlB;AAGD;;;;;;;;;;;;GAYG;AACH,2CARW,MAAM,WACN,MAAM,YACN,MAAM,0BACN,MAAM,OAoBhB;AAED;;;;;;;;;;;;GAYG;AACH,2CARW,MAAM,WACN,MAAM,YACN,MAAM,0BACN,MAAM,OAShB;AAED;;;;;GAKG;AACH,6BAHa,MAAM,EAAE,CAKpB;AAED;;;;;GAKG;AACH,+CAEC;AAED;;;;;GAKG;AACH,0EAEC;AAED;;;;;GAKG;AACH,uEAEC;AAED;;;;;GAKG;AACH,4CAEC;AAED;;;;;GAKG;AACH,0CAEC;AAED;;;;;GAKG;AACH,iDAEC;AAED;;;;;GAKG;AACH,iCAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,oEAIC;AAGD;;;;;GAKG;AACH,qCAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,iDAEC;AAED;;;;;GAKG;AACH,8BAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,0CAEC;AAED;;;;;GAKG;AACH,iDAHa,MAAM,CAKlB;AAED;;;;;GAKG;AACH,6DAOC;AAED;;;;GAIG;AACH,iCAFa,MAAM,CAIlB;AAED;;;;;GAKG;AACH,8CAEC;AA5hCM,yFA4LH;AAOG,0FAFM,MAAM,CAOlB;AAcM,iDAUJ"}
@@ -861,6 +861,8 @@ export function useMultiDatasetCoordination(parameters, coordinationScopes, coor
861
861
  const AUXILIARY_COORDINATION_TYPES_MAP = {
862
862
  spatialImageLayer: ['imageLayerCallbacks', 'areLoadingImageChannels'],
863
863
  spatialSegmentationLayer: ['segmentationLayerCallbacks', 'areLoadingSegmentationChannels'],
864
+ spatialAcceleratedVolumeLoadingProgress: ['volumeLoadingProgress'],
865
+ layerControllerBeta: ['volumeLoadingProgress'],
864
866
  };
865
867
  /**
866
868
  * The maps the coordination types of incoming scopes to new types
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitessce/vit-s",
3
- "version": "3.8.9",
3
+ "version": "3.8.13",
4
4
  "author": "HIDIVE Lab at HMS",
5
5
  "homepage": "http://vitessce.io",
6
6
  "repository": {
@@ -30,16 +30,16 @@
30
30
  "react-error-boundary": "^5.0.0",
31
31
  "@placemarkio/flat-drop-files": "^1.0.2",
32
32
  "zarrita": "0.5.4",
33
- "@vitessce/styles": "3.8.9",
34
- "@vitessce/abstract": "3.8.9",
35
- "@vitessce/error": "3.8.9",
36
- "@vitessce/constants-internal": "3.8.9",
37
- "@vitessce/plugins": "3.8.9",
38
- "@vitessce/schemas": "3.8.9",
39
- "@vitessce/utils": "3.8.9",
40
- "@vitessce/sets-utils": "3.8.9",
41
- "@vitessce/config": "3.8.9",
42
- "@vitessce/globals": "3.8.9"
33
+ "@vitessce/styles": "3.8.13",
34
+ "@vitessce/abstract": "3.8.13",
35
+ "@vitessce/error": "3.8.13",
36
+ "@vitessce/constants-internal": "3.8.13",
37
+ "@vitessce/schemas": "3.8.13",
38
+ "@vitessce/plugins": "3.8.13",
39
+ "@vitessce/utils": "3.8.13",
40
+ "@vitessce/sets-utils": "3.8.13",
41
+ "@vitessce/globals": "3.8.13",
42
+ "@vitessce/config": "3.8.13"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@testing-library/jest-dom": "^6.6.3",
@@ -48,7 +48,7 @@
48
48
  "react-dom": "18.3.1",
49
49
  "vite": "^7.0.0",
50
50
  "vitest": "^3.1.4",
51
- "@vitessce/types": "3.8.9"
51
+ "@vitessce/types": "3.8.13"
52
52
  },
53
53
  "peerDependencies": {
54
54
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -118,8 +118,8 @@ export function useSpotMultiFeatureSelection(
118
118
  ),
119
119
  // Need to execute this more frequently, whenever the featureSelections update.
120
120
  [coordinationScopes, coordinationScopesBy,
121
- ...Object.values(featureSelectionCoordination[0] || {})
122
- .flatMap(layerVal => layerVal.featureSelection),
121
+ JSON.stringify(Object.values(featureSelectionCoordination[0] || {})
122
+ .flatMap(layerVal => layerVal.featureSelection)),
123
123
  ]);
124
124
  const [
125
125
  featureData, loadedSelections, extents, normData, featureStatus, errors,
@@ -14,7 +14,10 @@ import { useVitessceContainer } from '../hooks.js';
14
14
  const useStyles = makeStyles()(() => ({
15
15
  paper: {
16
16
  maxHeight: 200,
17
- overflow: 'auto',
17
+ overflowX: 'hidden',
18
+ overflowY: 'auto',
19
+ paddingLeft: '4px',
20
+ paddingRight: '4px',
18
21
  },
19
22
  container: {
20
23
  position: 'relative',
@@ -982,6 +982,8 @@ export function useMultiDatasetCoordination(parameters, coordinationScopes, coor
982
982
  const AUXILIARY_COORDINATION_TYPES_MAP = {
983
983
  spatialImageLayer: ['imageLayerCallbacks', 'areLoadingImageChannels'],
984
984
  spatialSegmentationLayer: ['segmentationLayerCallbacks', 'areLoadingSegmentationChannels'],
985
+ spatialAcceleratedVolumeLoadingProgress: ['volumeLoadingProgress'],
986
+ layerControllerBeta: ['volumeLoadingProgress'],
985
987
  };
986
988
 
987
989
  /**
@@ -1047,6 +1049,7 @@ export function useAuxiliaryCoordination(parameters, coordinationScopes) {
1047
1049
  // eslint-disable-next-line react-hooks/exhaustive-deps
1048
1050
  })), [parameters, coordinationScopes]);
1049
1051
 
1052
+
1050
1053
  return [values, setters];
1051
1054
  }
1052
1055