@haniffalab/cherita-react 1.4.1-dev.2025-10-23.3179e534 → 1.4.1-dev.2025-10-23.55fbe6ff

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 (126) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/controls/Controls.js +4 -4
  3. package/dist/cjs/components/dotplot/Dotplot.js +15 -28
  4. package/dist/cjs/components/dotplot/DotplotControls.js +5 -5
  5. package/dist/cjs/components/full-page/FullPage.js +1 -2
  6. package/dist/cjs/components/full-page/PlotAlert.js +1 -1
  7. package/dist/cjs/components/full-page/PlotTypeSelector.js +13 -13
  8. package/dist/cjs/components/heatmap/Heatmap.js +14 -24
  9. package/dist/cjs/components/icons/DotPlotIcon.js +1 -1
  10. package/dist/cjs/components/icons/HeatmapIcon.js +1 -1
  11. package/dist/cjs/components/icons/MatrixPlotIcon.1.js +1 -1
  12. package/dist/cjs/components/icons/MatrixPlotIcon.js +1 -1
  13. package/dist/cjs/components/icons/ScatterplotIcon.1.js +1 -1
  14. package/dist/cjs/components/icons/ScatterplotIcon.js +1 -1
  15. package/dist/cjs/components/icons/ViolinPlotIcon.js +1 -1
  16. package/dist/cjs/components/matrixplot/Matrixplot.js +15 -26
  17. package/dist/cjs/components/obs-list/ObsItem.js +19 -19
  18. package/dist/cjs/components/obs-list/ObsList.js +17 -17
  19. package/dist/cjs/components/obsm-list/ObsmList.js +7 -7
  20. package/dist/cjs/components/pseudospatial/Pseudospatial.js +16 -16
  21. package/dist/cjs/components/pseudospatial/PseudospatialToolbar.js +10 -10
  22. package/dist/cjs/components/scatterplot/Scatterplot.js +16 -16
  23. package/dist/cjs/components/scatterplot/ScatterplotControls.js +1 -1
  24. package/dist/cjs/components/scatterplot/SpatialControls.js +9 -9
  25. package/dist/cjs/components/scatterplot/Toolbox.js +4 -4
  26. package/dist/cjs/components/search-bar/SearchBar.js +14 -14
  27. package/dist/cjs/components/search-bar/SearchInfo.js +3 -3
  28. package/dist/cjs/components/search-bar/SearchResults.js +2 -2
  29. package/dist/cjs/components/toolbar/Toolbar.js +3 -3
  30. package/dist/cjs/components/var-list/VarItem.js +15 -15
  31. package/dist/cjs/components/var-list/VarList.js +5 -5
  32. package/dist/cjs/components/var-list/VarListToolbar.js +4 -4
  33. package/dist/cjs/components/var-list/VarSet.js +13 -13
  34. package/dist/cjs/components/violin/Violin.js +17 -41
  35. package/dist/cjs/constants/colorscales.js +19 -19
  36. package/dist/cjs/constants/constants.js +47 -47
  37. package/dist/cjs/context/DatasetContext.js +3 -3
  38. package/dist/cjs/context/FilterContext.js +2 -2
  39. package/dist/cjs/context/SettingsContext.js +57 -57
  40. package/dist/cjs/helpers/color-helper.js +2 -2
  41. package/dist/cjs/helpers/zarr-helper.js +3 -3
  42. package/dist/cjs/utils/Filter.js +1 -1
  43. package/dist/cjs/utils/Histogram.js +2 -2
  44. package/dist/cjs/utils/ImageViewer.js +2 -2
  45. package/dist/cjs/utils/Legend.js +1 -1
  46. package/dist/cjs/utils/LoadingIndicators.js +1 -1
  47. package/dist/cjs/utils/Resolver.js +7 -7
  48. package/dist/cjs/utils/Skeleton.js +1 -1
  49. package/dist/cjs/utils/StyledTooltip.js +5 -5
  50. package/dist/cjs/utils/VirtualizedList.js +7 -7
  51. package/dist/cjs/utils/errors.js +15 -15
  52. package/dist/cjs/utils/requests.js +14 -10
  53. package/dist/cjs/utils/search.js +4 -4
  54. package/dist/cjs/utils/string.js +6 -6
  55. package/dist/cjs/utils/zarrData.js +5 -5
  56. package/dist/css/cherita.css +21 -20
  57. package/dist/css/cherita.css.map +1 -1
  58. package/dist/esm/components/controls/Controls.js +9 -9
  59. package/dist/esm/components/dotplot/Dotplot.js +28 -41
  60. package/dist/esm/components/dotplot/DotplotControls.js +9 -9
  61. package/dist/esm/components/full-page/FullPage.js +22 -23
  62. package/dist/esm/components/full-page/PlotAlert.js +5 -5
  63. package/dist/esm/components/full-page/PlotTypeSelector.js +21 -21
  64. package/dist/esm/components/heatmap/Heatmap.js +27 -37
  65. package/dist/esm/components/heatmap/HeatmapControls.js +2 -2
  66. package/dist/esm/components/icons/DotPlotIcon.js +1 -1
  67. package/dist/esm/components/icons/HeatmapIcon.js +1 -1
  68. package/dist/esm/components/icons/MatrixPlotIcon.1.js +1 -1
  69. package/dist/esm/components/icons/MatrixPlotIcon.js +1 -1
  70. package/dist/esm/components/icons/ScatterplotIcon.1.js +1 -1
  71. package/dist/esm/components/icons/ScatterplotIcon.js +1 -1
  72. package/dist/esm/components/icons/ViolinPlotIcon.js +1 -1
  73. package/dist/esm/components/matrixplot/Matrixplot.js +28 -39
  74. package/dist/esm/components/matrixplot/MatrixplotControls.js +2 -2
  75. package/dist/esm/components/obs-list/ObsItem.js +37 -37
  76. package/dist/esm/components/obs-list/ObsList.js +34 -34
  77. package/dist/esm/components/obs-list/ObsToolbar.js +1 -1
  78. package/dist/esm/components/obsm-list/ObsmList.js +15 -15
  79. package/dist/esm/components/offcanvas/index.js +6 -6
  80. package/dist/esm/components/pseudospatial/Pseudospatial.js +31 -31
  81. package/dist/esm/components/pseudospatial/PseudospatialToolbar.js +17 -17
  82. package/dist/esm/components/scatterplot/Scatterplot.js +38 -38
  83. package/dist/esm/components/scatterplot/ScatterplotControls.js +9 -9
  84. package/dist/esm/components/scatterplot/SpatialControls.js +23 -23
  85. package/dist/esm/components/scatterplot/Toolbox.js +7 -7
  86. package/dist/esm/components/search-bar/SearchBar.js +27 -27
  87. package/dist/esm/components/search-bar/SearchInfo.js +14 -14
  88. package/dist/esm/components/search-bar/SearchResults.js +10 -10
  89. package/dist/esm/components/toolbar/Toolbar.js +6 -6
  90. package/dist/esm/components/var-list/VarItem.js +27 -27
  91. package/dist/esm/components/var-list/VarList.js +21 -21
  92. package/dist/esm/components/var-list/VarListToolbar.js +10 -10
  93. package/dist/esm/components/var-list/VarSet.js +22 -22
  94. package/dist/esm/components/violin/Violin.js +33 -57
  95. package/dist/esm/components/violin/ViolinControls.js +2 -2
  96. package/dist/esm/constants/colorscales.js +19 -19
  97. package/dist/esm/constants/constants.js +47 -47
  98. package/dist/esm/context/DatasetContext.js +11 -11
  99. package/dist/esm/context/FilterContext.js +3 -3
  100. package/dist/esm/context/SettingsContext.js +61 -61
  101. package/dist/esm/context/ZarrDataContext.js +3 -3
  102. package/dist/esm/helpers/color-helper.js +5 -5
  103. package/dist/esm/helpers/map-helper.js +2 -2
  104. package/dist/esm/helpers/zarr-helper.js +6 -6
  105. package/dist/esm/index.js +22 -22
  106. package/dist/esm/utils/Filter.js +8 -8
  107. package/dist/esm/utils/Histogram.js +6 -6
  108. package/dist/esm/utils/ImageViewer.js +4 -4
  109. package/dist/esm/utils/Legend.js +9 -9
  110. package/dist/esm/utils/LoadingIndicators.js +2 -2
  111. package/dist/esm/utils/Resolver.js +13 -13
  112. package/dist/esm/utils/Skeleton.js +2 -2
  113. package/dist/esm/utils/StyledTooltip.js +6 -6
  114. package/dist/esm/utils/VirtualizedList.js +9 -9
  115. package/dist/esm/utils/errors.js +15 -15
  116. package/dist/esm/utils/requests.js +17 -13
  117. package/dist/esm/utils/search.js +7 -7
  118. package/dist/esm/utils/string.js +7 -7
  119. package/dist/esm/utils/zarrData.js +13 -13
  120. package/package.json +11 -7
  121. package/scss/cherita-bootstrap.scss +2 -2
  122. package/scss/cherita.scss +24 -17
  123. package/scss/components/accordions.scss +4 -1
  124. package/scss/components/layouts.scss +13 -12
  125. package/scss/components/lists.scss +8 -4
  126. package/scss/components/plotly.scss +1 -0
@@ -39,7 +39,7 @@ function Violin(_ref) {
39
39
  plotType,
40
40
  setPlotType
41
41
  } = _ref;
42
- const ENDPOINT = "violin";
42
+ const ENDPOINT = 'violin';
43
43
  const dataset = (0, _DatasetContext.useDataset)();
44
44
  const settings = (0, _SettingsContext.useSettings)();
45
45
  const {
@@ -52,7 +52,7 @@ function Violin(_ref) {
52
52
  const selectedMultiVar = (0, _Resolver.useSelectedMultiVar)();
53
53
  const selectedVar = (0, _Resolver.useSelectedVar)();
54
54
  const selectedObs = (0, _Resolver.useSelectedObs)();
55
- const [params, setParams] = (0, _react.useState)(_objectSpread({
55
+ const params = (0, _react.useMemo)(() => _objectSpread({
56
56
  url: dataset.url,
57
57
  mode: mode,
58
58
  scale: settings.controls.scale.violinplot,
@@ -74,7 +74,7 @@ function Violin(_ref) {
74
74
  obsValues: !(selectedObs !== null && selectedObs !== void 0 && selectedObs.omit.length) ? null : _lodash.default.difference(selectedObs === null || selectedObs === void 0 ? void 0 : selectedObs.values, selectedObs === null || selectedObs === void 0 ? void 0 : selectedObs.omit),
75
75
  obsIndices: isSliced ? [...(obsIndices || [])] : null
76
76
  }
77
- }[mode]));
77
+ }[mode]), [dataset.url, dataset.varNamesCol, isSliced, mode, obsIndices, selectedMultiVar, selectedObs, selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.index, selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.isSet, selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.name, selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.vars, settings.controls.scale.violinplot]);
78
78
  // @TODO: set default scale
79
79
 
80
80
  (0, _react.useEffect)(() => {
@@ -84,39 +84,12 @@ function Violin(_ref) {
84
84
  } else {
85
85
  setHasSelections(false);
86
86
  }
87
- setParams(p => {
88
- return _objectSpread(_objectSpread({}, p), {}, {
89
- url: dataset.url,
90
- mode: mode,
91
- varKeys: selectedMultiVar.map(i => i.isSet ? {
92
- name: i.name,
93
- indices: i.vars.map(v => v.index)
94
- } : i.index),
95
- scale: settings.controls.scale.violinplot,
96
- varNamesCol: dataset.varNamesCol
97
- });
98
- });
99
87
  } else if (mode === _constants.VIOLIN_MODES.GROUPBY) {
100
88
  if (selectedObs && selectedVar) {
101
89
  setHasSelections(true);
102
90
  } else {
103
91
  setHasSelections(false);
104
92
  }
105
- setParams(p => {
106
- return _objectSpread(_objectSpread({}, p), {}, {
107
- url: dataset.url,
108
- mode: mode,
109
- varKey: selectedVar !== null && selectedVar !== void 0 && selectedVar.isSet ? {
110
- name: selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.name,
111
- indices: selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.vars.map(v => v.index)
112
- } : selectedVar === null || selectedVar === void 0 ? void 0 : selectedVar.index,
113
- obsCol: selectedObs,
114
- obsValues: !(selectedObs !== null && selectedObs !== void 0 && selectedObs.omit.length) ? null : _lodash.default.difference(selectedObs === null || selectedObs === void 0 ? void 0 : selectedObs.values, selectedObs === null || selectedObs === void 0 ? void 0 : selectedObs.omit),
115
- obsIndices: isSliced ? [...(obsIndices || [])] : null,
116
- scale: settings.controls.scale.violinplot,
117
- varNamesCol: dataset.varNamesCol
118
- });
119
- });
120
93
  }
121
94
  }, [settings.controls.scale.violinplot, selectedMultiVar, selectedObs, selectedVar, dataset.url, dataset.varNamesCol, obsIndices, isSliced, mode]);
122
95
  const {
@@ -124,12 +97,15 @@ function Violin(_ref) {
124
97
  isPending,
125
98
  serverError
126
99
  } = (0, _requests.useDebouncedFetch)(ENDPOINT, params, 500, {
127
- enabled: mode === _constants.VIOLIN_MODES.MULTIKEY && (!!params.varKeys.length || !!params.obsKeys.length) || mode === _constants.VIOLIN_MODES.GROUPBY && !!params.varKey && !!params.obsCol
100
+ isEnabled: mode === _constants.VIOLIN_MODES.MULTIKEY && (params => !!params.varKeys.length || !!params.obsKeys.length) || mode === _constants.VIOLIN_MODES.GROUPBY && (params => !!params.varKey && !!params.obsCol)
128
101
  });
129
102
  (0, _react.useEffect)(() => {
130
- if (hasSelections && !isPending && !serverError) {
103
+ if (hasSelections && !!fetchedData && !isPending && !serverError) {
131
104
  setData(fetchedData.data);
132
105
  setLayout(fetchedData.layout);
106
+ } else {
107
+ setData([]);
108
+ setLayout({});
133
109
  }
134
110
  }, [fetchedData, hasSelections, isPending, serverError]);
135
111
  const customModeBarButtons = _lodash.default.compact([showObsBtn && (0, _Toolbar.ObsPlotlyToolbar)({
@@ -149,15 +125,15 @@ function Violin(_ref) {
149
125
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
150
126
  className: "flex-grow-1 position-relative",
151
127
  style: {
152
- minHeight: "0"
128
+ minHeight: '0'
153
129
  },
154
130
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactPlotly.default, {
155
131
  data: data,
156
132
  layout: layout,
157
133
  useResizeHandler: true,
158
134
  style: {
159
- width: "100%",
160
- height: "100%"
135
+ width: '100%',
136
+ height: '100%'
161
137
  },
162
138
  config: {
163
139
  displaylogo: false,
@@ -195,25 +171,25 @@ function Violin(_ref) {
195
171
  setPlotType: setPlotType,
196
172
  children: [mode === _constants.VIOLIN_MODES.MULTIKEY && /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
197
173
  className: "p-0 m-0",
198
- children: ["Select one or more", " ", showVarsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
174
+ children: ["Select one or more", ' ', showVarsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
199
175
  variant: "link",
200
176
  className: "border-0 p-0 align-baseline",
201
177
  onClick: setShowVars,
202
178
  children: "features"
203
- }) : "features", " ", "to display their expression distributions across all observations."]
179
+ }) : 'features', ' ', "to display their expression distributions across all observations."]
204
180
  }), mode === _constants.VIOLIN_MODES.GROUPBY && /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
205
181
  className: "p-0 m-0",
206
- children: ["Select a", " ", showObsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
182
+ children: ["Select a", ' ', showObsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
207
183
  variant: "link",
208
184
  className: "border-0 p-0 align-baseline",
209
185
  onClick: setShowObs,
210
186
  children: "category"
211
- }) : "category", " ", "to group observations, and choose a", " ", showVarsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
187
+ }) : 'category', ' ', "to group observations, and choose a", ' ', showVarsBtn ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
212
188
  variant: "link",
213
189
  className: "border-0 p-0 align-baseline",
214
190
  onClick: setShowVars,
215
191
  children: "feature"
216
- }) : "feature", " ", "to view its distribution within each group."]
192
+ }) : 'feature', ' ', "to view its distribution within each group."]
217
193
  })]
218
194
  });
219
195
  } else {
@@ -222,7 +198,7 @@ function Violin(_ref) {
222
198
  heading: "Error displaying the violin plot",
223
199
  plotType: plotType,
224
200
  setPlotType: setPlotType,
225
- children: serverError.message || "An unexpected error occurred while generating the plot."
201
+ children: serverError.message || 'An unexpected error occurred while generating the plot.'
226
202
  });
227
203
  }
228
204
  }
@@ -6,23 +6,23 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.COLORSCALES = void 0;
7
7
  // From plotly https://github.com/plotly/plotly.js/blob/5bc25b490702e5ed61265207833dbd58e8ab27f1/src/components/colorscale/scales.js
8
8
  const COLORSCALES = exports.COLORSCALES = {
9
- Greys: ["#000000", "#ffffff"],
10
- YlGnBu: ["#081d58", "#253494", "#225ea8", "#1d91c0", "#41b6c4", "#7fcdbb", "#c7e9b4", "#edf8d9", "#ffffd9"],
11
- Greens: ["#00441b", "#006d2c", "#238b45", "#41ab5d", "#74c476", "#a1d9a5", "#c7e9c0", "#e5f5e0", "#f7fcf5"],
12
- YlOrRd: ["#800026", "#bd0026", "#e31a1c", "#fc4e2a", "#fd8d3c", "#feb24c", "#fed976", "#ffed9f", "#ffffcc"],
13
- Bluered: ["#0000ff", "#ff0000"],
14
- RdBu: ["#050aac", "#6a89f7", "#bebebe", "#dcaa84", "#e6915a", "#b20a1c"],
15
- Reds: ["#dcdcdc", "#f5c39d", "#f5a069", "#b20a1c"],
16
- Blues: ["#050aac", "#283cba", "#4664f5", "#5a78f5", "#6a89f7", "#dcdcdc"],
17
- Picnic: ["#0000ff", "#3399ff", "#66ccff", "#99ccff", "#ccccff", "#ffffff", "#ffccff", "#ff99ff", "#ff66cc", "#ff6666", "#ff0000"],
18
- Rainbow: ["#96005a", "#0000c8", "#0019ff", "#0098ff", "#2cff96", "#97ff00", "#ffe600", "#ff6f00", "#ff0000"],
19
- Portland: ["#0c3383", "#0a88ba", "#f2d338", "#f28f38", "#d91e1e"],
20
- Jet: ["#000083", "#003caa", "#05ffff", "#ffff00", "#fa0000", "#800000"],
21
- Hot: ["#000000", "#e60000", "#ffd200", "#ffffff"],
22
- Blackbody: ["#000000", "#e60000", "#e6d200", "#ffffff", "#a0c8ff"],
23
- Earth: ["#000082", "#00b4b4", "#28d228", "#e6e632", "#784614", "#ffffff"],
24
- Electric: ["#000000", "#1e0064", "#780064", "#a05a00", "#e6c800", "#fffadc"],
25
- Viridis: ["#440154", "#48186a", "#472d7b", "#424086", "#3b528b", "#33638d", "#2c728e", "#26828e", "#21918c", "#1fa088", "#28ae80", "#3fbc73", "#5ec962", "#84d44b", "#addc30", "#d8e219", "#fde725"],
26
- Cividis: ["#00204c", "#002a66", "#00346e", "#273f6c", "#3c4a6c", "#4c556b", "#5b5f6d", "#686a70", "#757575", "#838178", "#929c78", "#a19676", "#b0a572", "#c0af6d", "#d1ba65", "#e1c75c", "#f3db4f", "#ffe945"],
27
- Accent: ["#7fc97f", "#beaed4", "#fdc086", "#ffff99", "#386cb0", "#f0027f", "#bf5b17", "#666666"]
9
+ Greys: ['#000000', '#ffffff'],
10
+ YlGnBu: ['#081d58', '#253494', '#225ea8', '#1d91c0', '#41b6c4', '#7fcdbb', '#c7e9b4', '#edf8d9', '#ffffd9'],
11
+ Greens: ['#00441b', '#006d2c', '#238b45', '#41ab5d', '#74c476', '#a1d9a5', '#c7e9c0', '#e5f5e0', '#f7fcf5'],
12
+ YlOrRd: ['#800026', '#bd0026', '#e31a1c', '#fc4e2a', '#fd8d3c', '#feb24c', '#fed976', '#ffed9f', '#ffffcc'],
13
+ Bluered: ['#0000ff', '#ff0000'],
14
+ RdBu: ['#050aac', '#6a89f7', '#bebebe', '#dcaa84', '#e6915a', '#b20a1c'],
15
+ Reds: ['#dcdcdc', '#f5c39d', '#f5a069', '#b20a1c'],
16
+ Blues: ['#050aac', '#283cba', '#4664f5', '#5a78f5', '#6a89f7', '#dcdcdc'],
17
+ Picnic: ['#0000ff', '#3399ff', '#66ccff', '#99ccff', '#ccccff', '#ffffff', '#ffccff', '#ff99ff', '#ff66cc', '#ff6666', '#ff0000'],
18
+ Rainbow: ['#96005a', '#0000c8', '#0019ff', '#0098ff', '#2cff96', '#97ff00', '#ffe600', '#ff6f00', '#ff0000'],
19
+ Portland: ['#0c3383', '#0a88ba', '#f2d338', '#f28f38', '#d91e1e'],
20
+ Jet: ['#000083', '#003caa', '#05ffff', '#ffff00', '#fa0000', '#800000'],
21
+ Hot: ['#000000', '#e60000', '#ffd200', '#ffffff'],
22
+ Blackbody: ['#000000', '#e60000', '#e6d200', '#ffffff', '#a0c8ff'],
23
+ Earth: ['#000082', '#00b4b4', '#28d228', '#e6e632', '#784614', '#ffffff'],
24
+ Electric: ['#000000', '#1e0064', '#780064', '#a05a00', '#e6c800', '#fffadc'],
25
+ Viridis: ['#440154', '#48186a', '#472d7b', '#424086', '#3b528b', '#33638d', '#2c728e', '#26828e', '#21918c', '#1fa088', '#28ae80', '#3fbc73', '#5ec962', '#84d44b', '#addc30', '#d8e219', '#fde725'],
26
+ Cividis: ['#00204c', '#002a66', '#00346e', '#273f6c', '#3c4a6c', '#4c556b', '#5b5f6d', '#686a70', '#757575', '#838178', '#929c78', '#a19676', '#b0a572', '#c0af6d', '#d1ba65', '#e1c75c', '#f3db4f', '#ffe945'],
27
+ Accent: ['#7fc97f', '#beaed4', '#fdc086', '#ffff99', '#386cb0', '#f0027f', '#bf5b17', '#666666']
28
28
  };
@@ -4,106 +4,106 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.VIOLIN_MODES = exports.VIOLINPLOT_SCALES = exports.VAR_SORT_ORDER = exports.VAR_SORT = exports.UNSELECTED_POLYGON_FILLCOLOR = exports.SELECTION_MODES = exports.SELECTED_POLYGON_FILLCOLOR = exports.PSEUDOSPATIAL_PLOT_TYPES = exports.PSEUDOSPATIAL_CATEGORICAL_MODES = exports.PLOT_TYPES = exports.PLOTLY_MODEBAR_BUTTONS = exports.OBS_TYPES = exports.MATRIXPLOT_SCALES = exports.LOCAL_STORAGE_KEY = exports.DOTPLOT_SCALES = exports.DEFAULT_OBS_GROUP = exports.DEFAULT_OBSM_KEYS = exports.COLOR_ENCODINGS = exports.BREAKPOINTS = void 0;
7
- const LOCAL_STORAGE_KEY = exports.LOCAL_STORAGE_KEY = "CHERITA";
7
+ const LOCAL_STORAGE_KEY = exports.LOCAL_STORAGE_KEY = 'CHERITA';
8
8
  const PLOT_TYPES = exports.PLOT_TYPES = {
9
- SCATTERPLOT: "scatterplot",
10
- DOTPLOT: "dotplot",
11
- HEATMAP: "heatmap",
12
- MATRIXPLOT: "matrixplot",
13
- VIOLINPLOT: "violinplot"
9
+ SCATTERPLOT: 'scatterplot',
10
+ DOTPLOT: 'dotplot',
11
+ HEATMAP: 'heatmap',
12
+ MATRIXPLOT: 'matrixplot',
13
+ VIOLINPLOT: 'violinplot'
14
14
  };
15
15
  const COLOR_ENCODINGS = exports.COLOR_ENCODINGS = {
16
- VAR: "var",
17
- OBS: "obs"
16
+ VAR: 'var',
17
+ OBS: 'obs'
18
18
  };
19
19
  const OBS_TYPES = exports.OBS_TYPES = {
20
- CATEGORICAL: "categorical",
21
- DISCRETE: "discrete",
22
- CONTINUOUS: "continuous",
23
- BOOLEAN: "boolean"
20
+ CATEGORICAL: 'categorical',
21
+ DISCRETE: 'discrete',
22
+ CONTINUOUS: 'continuous',
23
+ BOOLEAN: 'boolean'
24
24
  };
25
25
  const VAR_SORT = exports.VAR_SORT = {
26
26
  NONE: null,
27
- NAME: "name",
28
- MATRIX: "matrix"
27
+ NAME: 'name',
28
+ MATRIX: 'matrix'
29
29
  };
30
30
  const VAR_SORT_ORDER = exports.VAR_SORT_ORDER = {
31
- ASC: "asc",
32
- DESC: "desc"
31
+ ASC: 'asc',
32
+ DESC: 'desc'
33
33
  };
34
34
  const SELECTED_POLYGON_FILLCOLOR = exports.SELECTED_POLYGON_FILLCOLOR = [107, 170, 209, 255 / 2];
35
35
  const UNSELECTED_POLYGON_FILLCOLOR = exports.UNSELECTED_POLYGON_FILLCOLOR = [167, 191, 211, 255 / 3];
36
36
  const SELECTION_MODES = exports.SELECTION_MODES = {
37
- SINGLE: "single",
38
- MULTIPLE: "multiple"
37
+ SINGLE: 'single',
38
+ MULTIPLE: 'multiple'
39
39
  };
40
40
  const VIOLIN_MODES = exports.VIOLIN_MODES = {
41
- MULTIKEY: "multikey",
42
- GROUPBY: "groupby"
41
+ MULTIKEY: 'multikey',
42
+ GROUPBY: 'groupby'
43
43
  };
44
44
  const MATRIXPLOT_SCALES = exports.MATRIXPLOT_SCALES = {
45
45
  NONE: {
46
46
  value: null,
47
- name: "None"
47
+ name: 'None'
48
48
  },
49
49
  GROUP: {
50
- value: "group",
51
- name: "Group"
50
+ value: 'group',
51
+ name: 'Group'
52
52
  },
53
53
  VAR: {
54
- value: "var",
55
- name: "Var"
54
+ value: 'var',
55
+ name: 'Var'
56
56
  }
57
57
  };
58
58
  const DOTPLOT_SCALES = exports.DOTPLOT_SCALES = {
59
59
  NONE: {
60
60
  value: null,
61
- name: "None"
61
+ name: 'None'
62
62
  },
63
63
  GROUP: {
64
- value: "group",
65
- name: "Group"
64
+ value: 'group',
65
+ name: 'Group'
66
66
  },
67
67
  VAR: {
68
- value: "var",
69
- name: "Var"
68
+ value: 'var',
69
+ name: 'Var'
70
70
  }
71
71
  };
72
72
  const VIOLINPLOT_SCALES = exports.VIOLINPLOT_SCALES = {
73
73
  WIDTH: {
74
- value: "width",
75
- name: "Width"
74
+ value: 'width',
75
+ name: 'Width'
76
76
  },
77
77
  COUNT: {
78
- value: "count",
79
- name: "Count"
78
+ value: 'count',
79
+ name: 'Count'
80
80
  }
81
81
  };
82
82
  const PSEUDOSPATIAL_PLOT_TYPES = exports.PSEUDOSPATIAL_PLOT_TYPES = {
83
- GENE: "gene",
84
- CATEGORICAL: "categorical",
85
- CONTINUOUS: "continuous",
86
- MASKS: "masks"
83
+ GENE: 'gene',
84
+ CATEGORICAL: 'categorical',
85
+ CONTINUOUS: 'continuous',
86
+ MASKS: 'masks'
87
87
  };
88
88
  const PSEUDOSPATIAL_CATEGORICAL_MODES = exports.PSEUDOSPATIAL_CATEGORICAL_MODES = {
89
89
  ACROSS: {
90
- value: "across",
91
- name: "% across sections"
90
+ value: 'across',
91
+ name: '% across sections'
92
92
  },
93
93
  WITHIN: {
94
- value: "within",
95
- name: "% within section"
94
+ value: 'within',
95
+ name: '% within section'
96
96
  }
97
97
  };
98
98
 
99
99
  // `default` cols to be shown out of accordion, at top of obslist
100
100
  // default values from cellxgene schema
101
- const DEFAULT_OBS_GROUP = exports.DEFAULT_OBS_GROUP = ["assay", "cell_type", "development_stage", "disease", "donor_id", "organism", "self_reported_ethnicity", "sex", "suspension_type", "tissue", "tissue_type"];
102
- const PLOTLY_MODEBAR_BUTTONS = exports.PLOTLY_MODEBAR_BUTTONS = ["toImage", "zoom2d", "pan2d", "zoomIn2d", "zoomOut2d", "autoScale2d", "resetScale2d"];
101
+ const DEFAULT_OBS_GROUP = exports.DEFAULT_OBS_GROUP = ['assay', 'cell_type', 'development_stage', 'disease', 'donor_id', 'organism', 'self_reported_ethnicity', 'sex', 'suspension_type', 'tissue', 'tissue_type'];
102
+ const PLOTLY_MODEBAR_BUTTONS = exports.PLOTLY_MODEBAR_BUTTONS = ['toImage', 'zoom2d', 'pan2d', 'zoomIn2d', 'zoomOut2d', 'autoScale2d', 'resetScale2d'];
103
103
  const BREAKPOINTS = exports.BREAKPOINTS = {
104
- LG: "(max-width: 991.98px)",
105
- XL: "(max-width: 1199.98px)"
104
+ LG: '(max-width: 991.98px)',
105
+ XL: '(max-width: 1199.98px)'
106
106
  };
107
107
 
108
108
  // In order of priority
109
- const DEFAULT_OBSM_KEYS = exports.DEFAULT_OBSM_KEYS = ["x_umap", "x_tsne", "x_scvi", "x_pca"];
109
+ const DEFAULT_OBSM_KEYS = exports.DEFAULT_OBSM_KEYS = ['x_umap', 'x_tsne', 'x_scvi', 'x_pca'];
@@ -43,7 +43,7 @@ const queryClient = new _reactQuery.QueryClient({
43
43
  })
44
44
  });
45
45
  // Type of queries to store responses
46
- const persistKeys = ["obs/cols", "var/names", "obsm/keys", "obs/bins", "obs/distribution"];
46
+ const persistKeys = ['obs/cols', 'var/names', 'obsm/keys', 'obs/bins', 'obs/distribution'];
47
47
  const persistOptions = {
48
48
  persister: (0, _querySyncStoragePersister.createSyncStoragePersister)({
49
49
  storage: window.localStorage
@@ -54,13 +54,13 @@ const persistOptions = {
54
54
  queryKey,
55
55
  state
56
56
  } = _ref;
57
- if (state.status === "success") {
57
+ if (state.status === 'success') {
58
58
  return persistKeys.includes(queryKey === null || queryKey === void 0 ? void 0 : queryKey[0]);
59
59
  }
60
60
  return false;
61
61
  }
62
62
  },
63
- buster: "1.4.1-dev.2025-10-23.3179e534" || "0.0.0"
63
+ buster: "1.4.1-dev.2025-10-23.55fbe6ff" || '0.0.0'
64
64
  // @TODO: add maxAge and api version numbers as buster
65
65
  };
66
66
  const initialDataset = {
@@ -44,7 +44,7 @@ function useFilteredDataDispatch() {
44
44
  }
45
45
  function filterReducer(filteredData, action) {
46
46
  switch (action.type) {
47
- case "set.obs.indices":
47
+ case 'set.obs.indices':
48
48
  {
49
49
  return _objectSpread(_objectSpread({}, filteredData), {}, {
50
50
  obsIndices: action.indices,
@@ -56,7 +56,7 @@ function filterReducer(filteredData, action) {
56
56
  }
57
57
  default:
58
58
  {
59
- throw Error("Unknown action: " + action.type);
59
+ throw Error('Unknown action: ' + action.type);
60
60
  }
61
61
  }
62
62
  }