@haniffalab/cherita-react 1.0.0 → 1.1.0-dev.2025-04-01.1c91bb8b

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.
Files changed (106) hide show
  1. package/LICENSE +1 -1
  2. package/dist/{components → cjs/components}/full-page/FullPage.js +32 -22
  3. package/dist/{components → cjs/components}/full-page/FullPagePseudospatial.js +7 -6
  4. package/dist/{components → cjs/components}/obs-list/ObsItem.js +88 -77
  5. package/dist/{components → cjs/components}/obs-list/ObsList.js +133 -50
  6. package/dist/cjs/components/obs-list/ObsToolbar.js +24 -0
  7. package/dist/{components → cjs/components}/obsm-list/ObsmList.js +8 -5
  8. package/dist/{components → cjs/components}/offcanvas/index.js +24 -20
  9. package/dist/{components → cjs/components}/pseudospatial/Pseudospatial.js +10 -9
  10. package/dist/{components → cjs/components}/pseudospatial/PseudospatialToolbar.js +4 -3
  11. package/dist/{components → cjs/components}/scatterplot/Scatterplot.js +33 -24
  12. package/dist/{components → cjs/components}/scatterplot/SpatialControls.js +43 -42
  13. package/dist/cjs/components/scatterplot/Toolbox.js +62 -0
  14. package/dist/{components → cjs/components}/search-bar/SearchBar.js +24 -7
  15. package/dist/{components → cjs/components}/search-bar/SearchResults.js +13 -17
  16. package/dist/{components → cjs/components}/var-list/VarItem.js +38 -29
  17. package/dist/{components → cjs/components}/var-list/VarList.js +59 -31
  18. package/dist/{components → cjs/components}/var-list/VarListToolbar.js +18 -14
  19. package/dist/{components → cjs/components}/var-list/VarSet.js +24 -20
  20. package/dist/{components → cjs/components}/violin/Violin.js +4 -3
  21. package/dist/{constants → cjs/constants}/constants.js +6 -2
  22. package/dist/{context → cjs/context}/DatasetContext.js +12 -11
  23. package/dist/{context → cjs/context}/FilterContext.js +4 -3
  24. package/dist/{context → cjs/context}/ZarrDataContext.js +4 -3
  25. package/dist/{helpers → cjs/helpers}/color-helper.js +12 -11
  26. package/dist/{helpers → cjs/helpers}/map-helper.js +8 -7
  27. package/dist/{helpers → cjs/helpers}/zarr-helper.js +30 -38
  28. package/dist/{utils → cjs/utils}/Filter.js +1 -1
  29. package/dist/{utils → cjs/utils}/Histogram.js +12 -8
  30. package/dist/{utils → cjs/utils}/ImageViewer.js +6 -5
  31. package/dist/{utils → cjs/utils}/Legend.js +8 -7
  32. package/dist/{utils → cjs/utils}/LoadingIndicators.js +5 -4
  33. package/dist/cjs/utils/Skeleton.js +19 -0
  34. package/dist/{utils → cjs/utils}/VirtualizedList.js +10 -9
  35. package/dist/{utils → cjs/utils}/requests.js +37 -39
  36. package/dist/{utils → cjs/utils}/string.js +9 -4
  37. package/dist/{utils → cjs/utils}/zarrData.js +12 -4
  38. package/dist/css/cherita.css +147 -152
  39. package/dist/css/cherita.css.map +1 -1
  40. package/dist/esm/components/dotplot/Dotplot.js +135 -0
  41. package/dist/esm/components/dotplot/DotplotControls.js +148 -0
  42. package/dist/esm/components/full-page/FullPage.js +143 -0
  43. package/dist/esm/components/full-page/FullPagePseudospatial.js +151 -0
  44. package/dist/esm/components/heatmap/Heatmap.js +105 -0
  45. package/dist/esm/components/heatmap/HeatmapControls.js +23 -0
  46. package/dist/esm/components/matrixplot/Matrixplot.js +107 -0
  47. package/dist/esm/components/matrixplot/MatrixplotControls.js +38 -0
  48. package/dist/esm/components/obs-list/ObsItem.js +484 -0
  49. package/dist/esm/components/obs-list/ObsList.js +338 -0
  50. package/dist/esm/components/obs-list/ObsToolbar.js +17 -0
  51. package/dist/esm/components/obsm-list/ObsmList.js +75 -0
  52. package/dist/esm/components/offcanvas/index.js +67 -0
  53. package/dist/esm/components/pseudospatial/Pseudospatial.js +228 -0
  54. package/dist/esm/components/pseudospatial/PseudospatialToolbar.js +123 -0
  55. package/dist/esm/components/scatterplot/Scatterplot.js +394 -0
  56. package/dist/esm/components/scatterplot/ScatterplotControls.js +71 -0
  57. package/dist/esm/components/scatterplot/SpatialControls.js +140 -0
  58. package/dist/esm/components/scatterplot/Toolbox.js +55 -0
  59. package/dist/esm/components/search-bar/SearchBar.js +90 -0
  60. package/dist/esm/components/search-bar/SearchResults.js +139 -0
  61. package/dist/esm/components/var-list/VarItem.js +254 -0
  62. package/dist/esm/components/var-list/VarList.js +291 -0
  63. package/dist/esm/components/var-list/VarListToolbar.js +87 -0
  64. package/dist/esm/components/var-list/VarSet.js +194 -0
  65. package/dist/esm/components/violin/Violin.js +141 -0
  66. package/dist/esm/components/violin/ViolinControls.js +24 -0
  67. package/dist/esm/constants/colorscales.js +22 -0
  68. package/dist/esm/constants/constants.js +88 -0
  69. package/dist/esm/context/DatasetContext.js +571 -0
  70. package/dist/esm/context/FilterContext.js +48 -0
  71. package/dist/esm/context/ZarrDataContext.js +26 -0
  72. package/dist/esm/helpers/color-helper.js +66 -0
  73. package/dist/esm/helpers/map-helper.js +53 -0
  74. package/dist/esm/helpers/zarr-helper.js +111 -0
  75. package/dist/esm/index.js +22 -0
  76. package/dist/esm/utils/Filter.js +147 -0
  77. package/dist/esm/utils/Histogram.js +44 -0
  78. package/dist/esm/utils/ImageViewer.js +27 -0
  79. package/dist/esm/utils/Legend.js +58 -0
  80. package/dist/esm/utils/LoadingIndicators.js +22 -0
  81. package/dist/esm/utils/Skeleton.js +12 -0
  82. package/dist/esm/utils/VirtualizedList.js +55 -0
  83. package/dist/esm/utils/errors.js +47 -0
  84. package/dist/esm/utils/requests.js +102 -0
  85. package/dist/esm/utils/search.js +39 -0
  86. package/dist/esm/utils/string.js +59 -0
  87. package/dist/esm/utils/zarrData.js +102 -0
  88. package/package.json +22 -9
  89. package/scss/cherita.scss +19 -50
  90. package/scss/components/accordions.scss +32 -0
  91. package/scss/components/layouts.scss +2 -1
  92. package/scss/components/lists.scss +14 -0
  93. package/dist/components/obs-list/ObsToolbar.js +0 -64
  94. package/dist/components/scatterplot/Toolbox.js +0 -31
  95. /package/dist/{components → cjs/components}/dotplot/Dotplot.js +0 -0
  96. /package/dist/{components → cjs/components}/dotplot/DotplotControls.js +0 -0
  97. /package/dist/{components → cjs/components}/heatmap/Heatmap.js +0 -0
  98. /package/dist/{components → cjs/components}/heatmap/HeatmapControls.js +0 -0
  99. /package/dist/{components → cjs/components}/matrixplot/Matrixplot.js +0 -0
  100. /package/dist/{components → cjs/components}/matrixplot/MatrixplotControls.js +0 -0
  101. /package/dist/{components → cjs/components}/scatterplot/ScatterplotControls.js +0 -0
  102. /package/dist/{components → cjs/components}/violin/ViolinControls.js +0 -0
  103. /package/dist/{constants → cjs/constants}/colorscales.js +0 -0
  104. /package/dist/{index.js → cjs/index.js} +0 -0
  105. /package/dist/{utils → cjs/utils}/errors.js +0 -0
  106. /package/dist/{utils → cjs/utils}/search.js +0 -0
@@ -10,10 +10,11 @@ var _zarr = require("zarr");
10
10
  const GET_OPTIONS = exports.GET_OPTIONS = {
11
11
  concurrencyLimit: 10,
12
12
  // max number of concurrent requests (default 10)
13
- progressCallback: ({
14
- progress,
15
- queueSize
16
- }) => {
13
+ progressCallback: _ref => {
14
+ let {
15
+ progress,
16
+ queueSize
17
+ } = _ref;
17
18
  console.debug(`${progress / queueSize * 100}% complete.`);
18
19
  } // callback executed after each request
19
20
  };
@@ -41,29 +42,25 @@ const fetchDataFromZarr = async (url, path, s, opts) => {
41
42
  throw error;
42
43
  }
43
44
  };
44
- const useZarr = ({
45
- url,
46
- path
47
- }, s = null, options = GET_OPTIONS, opts = {}) => {
48
- const {
49
- enabled = true
50
- } = opts;
45
+ const useZarr = function (_ref2) {
46
+ let {
47
+ url,
48
+ path
49
+ } = _ref2;
50
+ let s = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
51
+ let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : GET_OPTIONS;
52
+ let opts = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
51
53
  const {
52
54
  data = null,
53
- isPending = false,
55
+ isLoading: isPending = false,
54
56
  error: serverError = null
55
57
  } = (0, _reactQuery.useQuery)({
56
58
  queryKey: ["zarr", url, path, s],
57
- queryFn: () => {
58
- if (enabled) {
59
- return fetchDataFromZarr(url, path, s, options);
60
- } else {
61
- return;
62
- }
63
- },
64
- retry: (failureCount, {
65
- error
66
- }) => {
59
+ queryFn: () => fetchDataFromZarr(url, path, s, options),
60
+ retry: (failureCount, _ref3) => {
61
+ let {
62
+ error
63
+ } = _ref3;
67
64
  if ([400, 401, 403, 404, 422].includes(error?.status)) return false;
68
65
  return failureCount < 3;
69
66
  },
@@ -84,34 +81,29 @@ const aggregateData = (inputs, data) => {
84
81
  });
85
82
  return dataObject;
86
83
  };
87
- const useMultipleZarr = (inputs, options = GET_OPTIONS, opts = {}, agg = aggregateData) => {
88
- const {
89
- enabled = true
90
- } = opts;
84
+ const useMultipleZarr = function (inputs) {
85
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : GET_OPTIONS;
86
+ let opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
87
+ let agg = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : aggregateData;
91
88
  const combine = (0, _react.useCallback)(results => {
92
89
  return {
93
90
  data: agg(inputs, results.map(result => result.data)),
94
- isPending: results.some(result => result.isPending),
91
+ isLoading: results.some(result => result.isLoading),
95
92
  serverError: results.find(result => result.error)
96
93
  };
97
94
  }, [agg, inputs]);
98
95
  const {
99
96
  data = null,
100
- isPending = false,
97
+ isLoading: isPending = false,
101
98
  serverError = null
102
99
  } = (0, _reactQuery.useQueries)({
103
100
  queries: inputs.map(input => ({
104
101
  queryKey: ["zarr", input.url, input.path, input.s],
105
- queryFn: () => {
106
- if (enabled) {
107
- return fetchDataFromZarr(input.url, input.path, input.s, options);
108
- } else {
109
- return;
110
- }
111
- },
112
- retry: (failureCount, {
113
- error
114
- }) => {
102
+ queryFn: () => fetchDataFromZarr(input.url, input.path, input.s, options),
103
+ retry: (failureCount, _ref4) => {
104
+ let {
105
+ error
106
+ } = _ref4;
115
107
  if ([400, 401, 403, 404, 422].includes(error?.status)) return false;
116
108
  return failureCount < 3;
117
109
  },
@@ -132,7 +132,7 @@ const useFilter = data => {
132
132
  filteredIndices: null,
133
133
  valueMin: _lodash.default.min(obsData.data),
134
134
  valueMax: _lodash.default.max(obsData.data),
135
- slicedLength: obsData.data.length
135
+ slicedLength: obsData.data?.length
136
136
  };
137
137
  }
138
138
  }, [dataset.colorEncoding, isContinuous, isInSlice, isPending, obsData.data, obsmData.data, serverError, xData.data]);
@@ -10,11 +10,12 @@ var _lodash = _interopRequireDefault(require("lodash"));
10
10
  var _LoadingIndicators = require("./LoadingIndicators");
11
11
  var _string = require("./string");
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- function Histogram({
14
- data,
15
- isPending,
16
- altColor = false
17
- }) {
13
+ function Histogram(_ref) {
14
+ let {
15
+ data,
16
+ isPending,
17
+ altColor = false
18
+ } = _ref;
18
19
  return /*#__PURE__*/_react.default.createElement("div", {
19
20
  className: "feature-histogram-container"
20
21
  }, isPending ? /*#__PURE__*/_react.default.createElement(_LoadingIndicators.LoadingLinear, null) : data ? /*#__PURE__*/_react.default.createElement("div", {
@@ -31,9 +32,12 @@ function Histogram({
31
32
  colors: altColor ? _xCharts.mangoFusionPalette : _xCharts.blueberryTwilightPalette,
32
33
  showHighlight: true,
33
34
  showTooltip: true,
34
- valueFormatter: (v, {
35
- dataIndex
36
- }) => `${(0, _string.formatNumerical)(data.hist[dataIndex])}`,
35
+ valueFormatter: (v, _ref2) => {
36
+ let {
37
+ dataIndex
38
+ } = _ref2;
39
+ return `${(0, _string.formatNumerical)(data.hist[dataIndex])}`;
40
+ },
37
41
  xAxis: {
38
42
  data: _lodash.default.range(data.bin_edges?.length) || null,
39
43
  valueFormatter: v => `Bin [${(0, _string.formatNumerical)(data.bin_edges[v][0], _string.FORMATS.EXPONENTIAL)}, ${(0, _string.formatNumerical)(data.bin_edges[v][1], _string.FORMATS.EXPONENTIAL)}${v === data.bin_edges.length - 1 ? "]" : ")"}`
@@ -8,11 +8,12 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactBootstrap = require("react-bootstrap");
9
9
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
10
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- const ImageViewer = ({
12
- src,
13
- alt,
14
- className = "img-fluid"
15
- }) => {
11
+ const ImageViewer = _ref => {
12
+ let {
13
+ src,
14
+ alt,
15
+ className = "img-fluid"
16
+ } = _ref;
16
17
  const [error, setError] = (0, _react.useState)(false);
17
18
  const handleError = () => {
18
19
  console.error("Error loading image from src:", src);
@@ -13,13 +13,14 @@ var _colorHelper = require("../helpers/color-helper");
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
- function Legend({
17
- isCategorical = false,
18
- min = 0,
19
- max = 1,
20
- colorscale = null,
21
- addText = ""
22
- }) {
16
+ function Legend(_ref) {
17
+ let {
18
+ isCategorical = false,
19
+ min = 0,
20
+ max = 1,
21
+ colorscale = null,
22
+ addText = ""
23
+ } = _ref;
23
24
  const dataset = (0, _DatasetContext.useDataset)();
24
25
  const {
25
26
  getColor
@@ -7,10 +7,11 @@ exports.LoadingSpinner = exports.LoadingLinear = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _material = require("@mui/material");
9
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- const LoadingSpinner = ({
11
- text = null,
12
- disableShrink = false
13
- }) => {
10
+ const LoadingSpinner = _ref => {
11
+ let {
12
+ text = null,
13
+ disableShrink = false
14
+ } = _ref;
14
15
  return /*#__PURE__*/_react.default.createElement("div", {
15
16
  className: "loading-spinner"
16
17
  }, /*#__PURE__*/_react.default.createElement(_material.CircularProgress, {
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ObsmKeysListBtn = void 0;
7
+ var _reactBootstrap = require("react-bootstrap");
8
+ const ObsmKeysListBtn = () => {
9
+ return /*#__PURE__*/React.createElement(_reactBootstrap.Placeholder, {
10
+ as: _reactBootstrap.Button,
11
+ animation: "glow"
12
+ }, /*#__PURE__*/React.createElement(_reactBootstrap.Placeholder, {
13
+ xs: 6,
14
+ style: {
15
+ width: "40px"
16
+ }
17
+ }));
18
+ };
19
+ exports.ObsmKeysListBtn = ObsmKeysListBtn;
@@ -9,15 +9,16 @@ var _reactVirtual = require("@tanstack/react-virtual");
9
9
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
10
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
11
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
12
- function VirtualizedList({
13
- getDataAtIndex,
14
- count,
15
- ItemComponent,
16
- estimateSize = 45,
17
- overscan = 25,
18
- maxHeight = "80vh",
19
- ...props
20
- }) {
12
+ function VirtualizedList(_ref) {
13
+ let {
14
+ getDataAtIndex,
15
+ count,
16
+ ItemComponent,
17
+ estimateSize = 45,
18
+ overscan = 25,
19
+ maxHeight = "80vh",
20
+ ...props
21
+ } = _ref;
21
22
  const [parentNode, setParentNode] = (0, _react.useState)(null);
22
23
  const itemVirtualizer = (0, _reactVirtual.useVirtualizer)({
23
24
  count: count,
@@ -8,7 +8,10 @@ exports.useFetch = exports.useDebouncedFetch = void 0;
8
8
  var _reactQuery = require("@tanstack/react-query");
9
9
  var _usehooks = require("@uidotdev/usehooks");
10
10
  var _errors = require("./errors");
11
- async function fetchData(endpoint, params, signal = null, ms = 300000, apiUrl = null) {
11
+ async function fetchData(endpoint, params) {
12
+ let signal = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
13
+ let ms = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 300000;
14
+ let apiUrl = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
12
15
  apiUrl = apiUrl || process.env.REACT_APP_API_URL;
13
16
  const controller = new AbortController();
14
17
  const timeout = setTimeout(() => {
@@ -36,31 +39,28 @@ async function fetchData(endpoint, params, signal = null, ms = 300000, apiUrl =
36
39
  }
37
40
  return await response.json();
38
41
  }
39
- const useFetch = (endpoint, params, opts = {
40
- refetchOnMount: false,
41
- refetchOnWindowFocus: false
42
- }, apiUrl = null) => {
43
- const {
44
- enabled = true
45
- } = opts;
42
+ const useFetch = function (endpoint, params) {
43
+ let opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
44
+ refetchOnMount: false,
45
+ refetchOnWindowFocus: false
46
+ };
47
+ let apiUrl = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
46
48
  const {
47
49
  data: fetchedData = null,
48
- isPending = false,
50
+ isLoading: isPending = false,
49
51
  error: serverError = null
50
52
  } = (0, _reactQuery.useQuery)({
51
53
  queryKey: [endpoint, params],
52
- queryFn: ({
53
- signal
54
- }) => {
55
- if (enabled) {
56
- return fetchData(endpoint, params, signal, apiUrl);
57
- } else {
58
- return;
59
- }
54
+ queryFn: _ref => {
55
+ let {
56
+ signal
57
+ } = _ref;
58
+ return fetchData(endpoint, params, signal, apiUrl);
60
59
  },
61
- retry: (failureCount, {
62
- error
63
- }) => {
60
+ retry: (failureCount, _ref2) => {
61
+ let {
62
+ error
63
+ } = _ref2;
64
64
  if ([400, 401, 403, 404, 422].includes(error?.status)) return false;
65
65
  return failureCount < 3;
66
66
  },
@@ -73,32 +73,30 @@ const useFetch = (endpoint, params, opts = {
73
73
  };
74
74
  };
75
75
  exports.useFetch = useFetch;
76
- const useDebouncedFetch = (endpoint, params, delay = 500, opts = {
77
- refetchOnMount: false,
78
- refetchOnWindowFocus: false
79
- }, apiUrl = null) => {
80
- const {
81
- enabled = true
82
- } = opts;
76
+ const useDebouncedFetch = function (endpoint, params) {
77
+ let delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
78
+ let opts = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {
79
+ refetchOnMount: false,
80
+ refetchOnWindowFocus: false
81
+ };
82
+ let apiUrl = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
83
83
  const debouncedParams = (0, _usehooks.useDebounce)(params, delay);
84
84
  const {
85
85
  data: fetchedData = null,
86
- isPending = false,
86
+ isLoading: isPending = false,
87
87
  error: serverError = null
88
88
  } = (0, _reactQuery.useQuery)({
89
89
  queryKey: [endpoint, debouncedParams],
90
- queryFn: ({
91
- signal
92
- }) => {
93
- if (enabled) {
94
- return fetchData(endpoint, debouncedParams, signal, apiUrl);
95
- } else {
96
- return;
97
- }
90
+ queryFn: _ref3 => {
91
+ let {
92
+ signal
93
+ } = _ref3;
94
+ return fetchData(endpoint, debouncedParams, signal, apiUrl);
98
95
  },
99
- retry: (failureCount, {
100
- error
101
- }) => {
96
+ retry: (failureCount, _ref4) => {
97
+ let {
98
+ error
99
+ } = _ref4;
102
100
  if ([400, 401, 403, 404, 422].includes(error?.status)) return false;
103
101
  return failureCount < 3;
104
102
  },
@@ -13,28 +13,33 @@ const FORMATS = exports.FORMATS = {
13
13
  ABBREVIATION: "abbreviation",
14
14
  THOUSAND: "thousand"
15
15
  };
16
- function formatThousand(n, precision = 3) {
16
+ function formatThousand(n) {
17
+ let precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
17
18
  return (0, _numbro.default)(n).format({
18
19
  thousandSeparated: true,
19
20
  mantissa: precision,
20
21
  trimMantissa: true
21
22
  });
22
23
  }
23
- function formatExponential(n, precision = 3) {
24
+ function formatExponential(n) {
25
+ let precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
24
26
  return (0, _numbro.default)(n).format({
25
27
  exponential: true,
26
28
  mantissa: precision,
27
29
  trimMantissa: true
28
30
  });
29
31
  }
30
- function formatAbbreviation(n, precision = 3) {
32
+ function formatAbbreviation(n) {
33
+ let precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;
31
34
  return (0, _numbro.default)(n).format({
32
35
  average: true,
33
36
  mantissa: precision,
34
37
  trimMantissa: true
35
38
  }).toUpperCase();
36
39
  }
37
- function formatNumerical(n, format = FORMATS.THOUSAND, precision = 3) {
40
+ function formatNumerical(n) {
41
+ let format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : FORMATS.THOUSAND;
42
+ let precision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
38
43
  if (n === 0) {
39
44
  return "0";
40
45
  } else if (!n || n === undefined || isNaN(n)) {
@@ -10,7 +10,8 @@ var _constants = require("../constants/constants");
10
10
  var _DatasetContext = require("../context/DatasetContext");
11
11
  var _zarrHelper = require("../helpers/zarr-helper");
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- const useObsmData = (obsm = null) => {
13
+ const useObsmData = function () {
14
+ let obsm = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
14
15
  const dataset = (0, _DatasetContext.useDataset)();
15
16
  obsm = obsm || dataset.selectedObsm;
16
17
  const [obsmParams, setObsmParams] = (0, _react.useState)({
@@ -29,9 +30,15 @@ const useObsmData = (obsm = null) => {
29
30
  };
30
31
  exports.useObsmData = useObsmData;
31
32
  const meanData = (_i, data) => {
32
- return _lodash.default.zipWith(...data, (...values) => _lodash.default.mean(values));
33
+ return _lodash.default.zipWith(...data, function () {
34
+ for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {
35
+ values[_key] = arguments[_key];
36
+ }
37
+ return _lodash.default.mean(values);
38
+ });
33
39
  };
34
- const useXData = (agg = meanData) => {
40
+ const useXData = function () {
41
+ let agg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : meanData;
35
42
  const dataset = (0, _DatasetContext.useDataset)();
36
43
  const [xParams, setXParams] = (0, _react.useState)(!dataset.selectedVar ? [] : !dataset.selectedVar?.isSet ? [{
37
44
  url: dataset.url,
@@ -62,7 +69,8 @@ const useXData = (agg = meanData) => {
62
69
  }, agg);
63
70
  };
64
71
  exports.useXData = useXData;
65
- const useObsData = (obs = null) => {
72
+ const useObsData = function () {
73
+ let obs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
66
74
  const dataset = (0, _DatasetContext.useDataset)();
67
75
  obs = obs || dataset.selectedObs;
68
76
  const [obsParams, setObsParams] = (0, _react.useState)({