@milaboratories/miplots4 1.0.132 → 1.0.134

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 (61) hide show
  1. package/dist/AbstractChart.d.ts +2 -0
  2. package/dist/AbstractChart.d.ts.map +1 -1
  3. package/dist/AbstractChart.js +5 -4
  4. package/dist/AbstractChart.js.map +1 -1
  5. package/dist/MiPlots.d.ts +1 -0
  6. package/dist/MiPlots.d.ts.map +1 -1
  7. package/dist/MiPlots.js +3 -0
  8. package/dist/MiPlots.js.map +1 -1
  9. package/dist/bubble/index.d.ts.map +1 -1
  10. package/dist/bubble/index.js +22 -22
  11. package/dist/bubble/index.js.map +1 -1
  12. package/dist/common/Error.d.ts +1 -1
  13. package/dist/common/Error.d.ts.map +1 -1
  14. package/dist/common/Error.js +4 -22
  15. package/dist/common/Error.js.map +1 -1
  16. package/dist/dendro/index.d.ts.map +1 -1
  17. package/dist/dendro/index.js +25 -25
  18. package/dist/dendro/index.js.map +1 -1
  19. package/dist/discrete/DiscreteSettingsImpl.d.ts +17 -2
  20. package/dist/discrete/DiscreteSettingsImpl.d.ts.map +1 -1
  21. package/dist/discrete/DiscreteSettingsImpl.js +93 -67
  22. package/dist/discrete/DiscreteSettingsImpl.js.map +1 -1
  23. package/dist/discrete/components/Chart.d.ts.map +1 -1
  24. package/dist/discrete/components/Chart.js +152 -135
  25. package/dist/discrete/components/Chart.js.map +1 -1
  26. package/dist/discrete/components/layers/StackedAreaElement.d.ts +24 -0
  27. package/dist/discrete/components/layers/StackedAreaElement.d.ts.map +1 -0
  28. package/dist/discrete/components/layers/StackedAreaElement.js +105 -0
  29. package/dist/discrete/components/layers/StackedAreaElement.js.map +1 -0
  30. package/dist/discrete/components/layers/StackedBarElement.d.ts +3 -1
  31. package/dist/discrete/components/layers/StackedBarElement.d.ts.map +1 -1
  32. package/dist/discrete/components/layers/StackedBarElement.js +67 -60
  33. package/dist/discrete/components/layers/StackedBarElement.js.map +1 -1
  34. package/dist/discrete/index.d.ts.map +1 -1
  35. package/dist/discrete/index.js +87 -84
  36. package/dist/discrete/index.js.map +1 -1
  37. package/dist/discrete/layers/index.d.ts +1 -0
  38. package/dist/discrete/layers/index.d.ts.map +1 -1
  39. package/dist/discrete/layers/stackedArea.d.ts +10 -0
  40. package/dist/discrete/layers/stackedArea.d.ts.map +1 -0
  41. package/dist/discrete/layers/stackedArea.js +17 -0
  42. package/dist/discrete/layers/stackedArea.js.map +1 -0
  43. package/dist/discrete/layers/types.d.ts +12 -1
  44. package/dist/discrete/layers/types.d.ts.map +1 -1
  45. package/dist/heatmap/index.d.ts.map +1 -1
  46. package/dist/heatmap/index.js +18 -18
  47. package/dist/heatmap/index.js.map +1 -1
  48. package/dist/histogram/index.d.ts.map +1 -1
  49. package/dist/histogram/index.js +22 -22
  50. package/dist/histogram/index.js.map +1 -1
  51. package/dist/scatterplot/index.d.ts.map +1 -1
  52. package/dist/scatterplot/index.js +33 -33
  53. package/dist/scatterplot/index.js.map +1 -1
  54. package/dist/scatterplot-umap/index.d.ts.map +1 -1
  55. package/dist/scatterplot-umap/index.js +16 -16
  56. package/dist/scatterplot-umap/index.js.map +1 -1
  57. package/dist/types/discrete.d.ts +268 -0
  58. package/dist/types/discrete.d.ts.map +1 -1
  59. package/dist/types/discrete.js +24 -9
  60. package/dist/types/discrete.js.map +1 -1
  61. package/package.json +1 -1
@@ -5,10 +5,10 @@ import { AbstractChart as A } from "../AbstractChart.js";
5
5
  import { createLegendInfo as R, addPalettesToAesMapping as I } from "../scatterplot/utils/createLegendInfo.js";
6
6
  import { formatColumnValue as T } from "../scatterplot/utils/formatColumnValue.js";
7
7
  import { sortDotsByGrouping as P } from "../scatterplot/utils/sortDotsByGrouping.js";
8
- import { arraysAreDifferent as D } from "../utils/arraysAreDifferent.js";
8
+ import { arraysAreDifferent as v } from "../utils/arraysAreDifferent.js";
9
9
  import B from "./ChartRenderer.js";
10
10
  import { SCATTERPLOT_LASSO_EVENTS as f } from "./constants.js";
11
- import { ScatterplotUmapSettingsImpl as E } from "./SettingsImpl.js";
11
+ import { ScatterplotUmapSettingsImpl as D } from "./SettingsImpl.js";
12
12
  import { format as V } from "../node_modules/d3-format/src/defaultLocale.js";
13
13
  function X(d) {
14
14
  return typeof d == "object" && "type" in d && d.type === "grouping";
@@ -26,13 +26,13 @@ class N extends A {
26
26
  g(this, "onLassoControlsStateUpdate", () => {
27
27
  });
28
28
  g(this, "calculatedData", null);
29
- this.settings = new E(a), this.chartRenderer = new B(), e && (this.onPolygonUpdate = e.onPolygonUpdate, this.onTooltipHintSwitch = e.onTooltipHintSwitch, this.onLassoControlsStateUpdate = e.onLassoControlsStateUpdate);
29
+ this.settings = new D(a), this.chartRenderer = new B(), e && (this.onPolygonUpdate = e.onPolygonUpdate, this.onTooltipHintSwitch = e.onTooltipHintSwitch, this.onLassoControlsStateUpdate = e.onLassoControlsStateUpdate);
30
30
  }
31
31
  mount(t) {
32
32
  try {
33
- this.chartRenderer.init(t), this._updateData(), this._updateChart();
33
+ this.chartRenderer.init(t), this._updateData(), this._updateChart(), this.hasError = !1;
34
34
  } catch (a) {
35
- console.error(a), a instanceof Error && (this.chartRenderer.renderError(a.message), console.error(a));
35
+ this.hasError = !0, console.error(a), a instanceof Error && (this.chartRenderer.renderError(a.message), console.error(a));
36
36
  }
37
37
  }
38
38
  unmount() {
@@ -41,11 +41,11 @@ class N extends A {
41
41
  updateSettingsAndData(t, a) {
42
42
  try {
43
43
  const e = this.settings, n = this.data;
44
- this.settings = new E(a), this.data = t, this._needUpdateCalculatedDataBySettings(e, this.settings) || this._needUpdateCalculatedDataByData(n, this.data) ? this._updateData() : this._updateAesInData();
44
+ this.settings = new D(a), this.data = t, this._needUpdateCalculatedDataBySettings(e, this.settings) || this._needUpdateCalculatedDataByData(n, this.data) ? this._updateData() : this._updateAesInData();
45
45
  const s = e.layers.find((o) => o.type === "dots"), r = this.settings.layers.find((o) => o.type === "dots");
46
- s && r && s.aes.dotSize !== r.aes.dotSize && typeof s.aes.dotSize == "number" && typeof r.aes.dotSize == "number" && this.chartRenderer.updatePointSize(), this._updateChart();
46
+ s && r && s.aes.dotSize !== r.aes.dotSize && typeof s.aes.dotSize == "number" && typeof r.aes.dotSize == "number" && this.chartRenderer.updatePointSize(), this._updateChart(), this.hasError = !1;
47
47
  } catch (e) {
48
- e instanceof Error && (this.chartRenderer.renderError(e.message), console.error(e));
48
+ this.hasError = !0, e instanceof Error && (this.chartRenderer.renderError(e.message), console.error(e));
49
49
  }
50
50
  }
51
51
  updateChartState(t, a) {
@@ -71,12 +71,12 @@ class N extends A {
71
71
  }
72
72
  _needUpdateCalculatedDataBySettings(t, a) {
73
73
  var e, n, s, r;
74
- return D(
74
+ return v(
75
75
  t.grouping.map((o) => o.columnName.value),
76
76
  a.grouping.map((o) => o.columnName.value)
77
77
  ) || t.grouping.some((o, l) => {
78
78
  var h;
79
- return D(o.order, (h = a.grouping) == null ? void 0 : h[l].order);
79
+ return v(o.order, (h = a.grouping) == null ? void 0 : h[l].order);
80
80
  }) || t.layers.length !== a.layers.length || t.layers.some((o, l) => o.type !== a.layers[l].type) || (((e = t.label) == null ? void 0 : e.value) || ((n = a.label) == null ? void 0 : n.value)) && ((s = t.label) == null ? void 0 : s.value) !== ((r = a.label) == null ? void 0 : r.value);
81
81
  }
82
82
  _needUpdateCalculatedDataByData(t, a) {
@@ -98,7 +98,7 @@ class N extends A {
98
98
  if (typeof p != "number" || typeof m != "number")
99
99
  continue;
100
100
  p < o.minX && (o.minX = p), p > o.maxX && (o.maxX = p), m < o.minY && (o.minY = m), m > o.maxY && (o.maxY = m);
101
- const w = n ? !this.data.getColumnValue(n.value, i) : !1, v = {
101
+ const w = n ? !this.data.getColumnValue(n.value, i) : !1, S = {
102
102
  x: p,
103
103
  y: m,
104
104
  idx: i,
@@ -107,19 +107,19 @@ class N extends A {
107
107
  };
108
108
  if (l) {
109
109
  const y = s.map(({ columnName: _ }) => this.data.getColumnValue(_.value, i)).join("_");
110
- h.add(y), c[y] || (c[y] = []), c[y].push(v);
110
+ h.add(y), c[y] || (c[y] = []), c[y].push(S);
111
111
  }
112
- C.push(v);
112
+ C.push(S);
113
113
  }
114
- const S = [...h];
115
- l && S.forEach((i) => {
114
+ const E = [...h];
115
+ l && E.forEach((i) => {
116
116
  c[i].sort((p, m) => p.x - m.x);
117
117
  }), P(this.data, C, s, n);
118
118
  const x = R(this.data, s, r);
119
119
  this.calculatedData = {
120
120
  dots: C,
121
121
  dotsByGrouping: c,
122
- groupingKeys: S,
122
+ groupingKeys: E,
123
123
  dotsExtents: o,
124
124
  legendLabels: x
125
125
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/scatterplot-umap/index.ts"],"sourcesContent":["import {format} from 'd3-format';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport { addPalettesToAesMapping, createLegendInfo } from '../scatterplot/utils/createLegendInfo';\nimport {formatColumnValue} from '../scatterplot/utils/formatColumnValue';\nimport {sortDotsByGrouping} from '../scatterplot/utils/sortDotsByGrouping';\nimport type { AesItem, ContinuousAesFromColumn, InheritAesScatterplot, ScatterplotEventHandlers } from '../types';\nimport type { ScatterplotUmapLegendInfo, ScatterplotUmapSettings } from '../types/scatterplot-umap';\nimport {arraysAreDifferent} from '../utils/arraysAreDifferent';\nimport ChartRenderer from './ChartRenderer';\nimport { SCATTERPLOT_LASSO_EVENTS } from './constants';\nimport type { DotsLayer } from './SettingsImpl';\nimport { ScatterplotUmapSettingsImpl } from './SettingsImpl';\nimport type { Dot, DotsExtents, LassoControlsState, LassoMode, Polygon } from './types';\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\n\nexport class ChartScatterplotUmap extends AbstractChart {\n settings: ScatterplotUmapSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onPolygonUpdate: (data: number[], polygons: Polygon[]) => void = () => undefined; // dots indexes from input data\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n onLassoControlsStateUpdate: (v: LassoControlsState) => void = () => undefined;\n\n calculatedData: {\n dots: Dot[],\n groupingKeys: string[],\n dotsByGrouping: Record<string, Dot[]>,\n dotsExtents: DotsExtents,\n legendLabels: ScatterplotUmapLegendInfo\n } | null = null;\n\n constructor(data: DataFrame, settings: ScatterplotUmapSettings, eventHandlers?: ScatterplotEventHandlers) {\n super(data, settings);\n\n this.settings = new ScatterplotUmapSettingsImpl(settings);\n this.chartRenderer = new ChartRenderer();\n\n if (eventHandlers) {\n this.onPolygonUpdate = eventHandlers.onPolygonUpdate;\n this.onTooltipHintSwitch = eventHandlers.onTooltipHintSwitch;\n this.onLassoControlsStateUpdate = eventHandlers.onLassoControlsStateUpdate;\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n } catch (err) {\n console.error(err);\n if (err instanceof Error) {\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: ScatterplotUmapSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new ScatterplotUmapSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n\n // for some reason it's not enough for size updating to do like with fillColor\n const prevLayer = previousSettings.layers.find(l => l.type === 'dots') as DotsLayer;\n const currentLayer = this.settings.layers.find(l => l.type === 'dots') as DotsLayer;\n if (prevLayer && currentLayer && prevLayer.aes.dotSize !== currentLayer.aes.dotSize\n && typeof prevLayer.aes.dotSize === 'number' && typeof currentLayer.aes.dotSize === 'number') {\n this.chartRenderer.updatePointSize();\n }\n this._updateChart();\n } catch (err) {\n if (err instanceof Error) {\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(field: string, value: unknown) {\n if (field === 'polygon') {\n this.chartRenderer.polygons = value as Polygon[];\n this._updateChart();\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.delete) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.delete);\n document.dispatchEvent(event);\n }}\n if (field === SCATTERPLOT_LASSO_EVENTS.selectMode) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.selectMode, {detail: value as LassoMode});\n document.dispatchEvent(event);\n }\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.forward) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.forward);\n document.dispatchEvent(event);\n }\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.back) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.back);\n document.dispatchEvent(event);\n }\n }\n }\n\n export(): string {\n console.warn('export not implemented');\n return '';\n // this._updateChart();\n // return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: ScatterplotUmapSettingsImpl, settings: ScatterplotUmapSettingsImpl) {\n return (\n arraysAreDifferent(\n prevSettings.grouping.map(v => v.columnName.value),\n settings.grouping.map(v => v.columnName.value),\n ) ||\n prevSettings.grouping.some((v, idx) => arraysAreDifferent(v.order, settings.grouping?.[idx].order)) ||\n prevSettings.layers.length !== settings.layers.length ||\n prevSettings.layers.some((l, idx) => l.type !== settings.layers[idx].type) ||\n (prevSettings.label?.value || settings.label?.value) && prevSettings.label?.value !== settings.label?.value\n );\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {x, y, label, highlight, grouping, layers} = this.settings;\n\n const dotsExtents = {\n minX: Infinity,\n maxX: -Infinity,\n minY: Infinity,\n maxY: -Infinity,\n };\n\n const hasCurve = layers.some(layer => layer.type === 'curve');\n const groupingKeysSet = new Set<string>();\n const dotsByGrouping:Record<string, Dot[]> = {};\n\n const dots: Dot[] = [];\n const labelFormatter = label?.format ? format(label.format) : undefined;\n\n for (let idx = 0; idx < this.data.rowsCount; idx++) {\n const xv = this.data.getColumnValue(x.value, idx);\n const yv = this.data.getColumnValue(y.value, idx);\n\n if (typeof xv !== 'number' || typeof yv !== 'number') {\n continue;\n }\n\n if (xv < dotsExtents.minX) {\n dotsExtents.minX = xv;\n }\n if (xv > dotsExtents.maxX) {\n dotsExtents.maxX = xv;\n }\n if (yv < dotsExtents.minY) {\n dotsExtents.minY = yv;\n }\n if (yv > dotsExtents.maxY) {\n dotsExtents.maxY = yv;\n }\n\n const dimmed = highlight ? !this.data.getColumnValue(highlight.value, idx) : false;\n const dot: Dot = {\n x: xv,\n y: yv,\n idx,\n label: formatColumnValue(this.data, idx, label, labelFormatter),\n dimmed\n };\n if (hasCurve) {\n const groupingKey = grouping.map(({columnName}) => this.data.getColumnValue(columnName.value, idx)).join('_');\n groupingKeysSet.add(groupingKey);\n if (!dotsByGrouping[groupingKey]) {\n dotsByGrouping[groupingKey] = [];\n }\n dotsByGrouping[groupingKey].push(dot);\n }\n dots.push(dot);\n }\n\n const groupingKeys = [...groupingKeysSet];\n if (hasCurve) {\n groupingKeys.forEach(key => {\n dotsByGrouping[key].sort((a, b) => a.x - b.x);\n });\n }\n sortDotsByGrouping(this.data, dots, grouping, highlight);\n const legendLabels = createLegendInfo(this.data, grouping, layers);\n\n this.calculatedData = {\n dots,\n dotsByGrouping,\n groupingKeys,\n dotsExtents,\n legendLabels,\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n const {layers, grouping} = this.settings;\n grouping.forEach(({columnName, inheritedAes}) => {\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === columnName.value)) return;\n usedAes.add(key as keyof AesItem);\n if (value.palette) {\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n }\n });\n });\n\n calculated.legendLabels[columnName.value].usedAes = [...usedAes];\n calculated.legendLabels[columnName.value].aesMap = addPalettesToAesMapping(columnName, usedAesFromPalettes, inheritedAes);\n });\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {id, chartSettings, keyColumn, layers, grouping} = this.settings;\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n keyColumn,\n this.calculatedData.dots,\n this.calculatedData.dotsExtents,\n this.calculatedData.dotsByGrouping,\n layers,\n this.calculatedData.legendLabels,\n grouping.map(v => v.columnName),\n this.onPolygonUpdate,\n this.onTooltipHintSwitch,\n this.onLassoControlsStateUpdate\n );\n }\n}\n"],"names":["isInheritMapping","value","ChartScatterplotUmap","AbstractChart","data","settings","eventHandlers","__publicField","ScatterplotUmapSettingsImpl","ChartRenderer","node","err","previousSettings","previousData","prevLayer","l","currentLayer","field","SCATTERPLOT_LASSO_EVENTS","event","prevSettings","arraysAreDifferent","v","idx","_a","_b","_c","_d","prevData","prevKeys","keys","key","x","y","label","highlight","grouping","layers","dotsExtents","hasCurve","layer","groupingKeysSet","dotsByGrouping","dots","labelFormatter","format","xv","yv","dimmed","dot","formatColumnValue","groupingKey","columnName","groupingKeys","a","b","sortDotsByGrouping","legendLabels","createLegendInfo","calculated","inheritedAes","usedAes","usedAesFromPalettes","addPalettesToAesMapping","id","chartSettings","keyColumn"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/scatterplot-umap/index.ts"],"sourcesContent":["import {format} from 'd3-format';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport { addPalettesToAesMapping, createLegendInfo } from '../scatterplot/utils/createLegendInfo';\nimport {formatColumnValue} from '../scatterplot/utils/formatColumnValue';\nimport {sortDotsByGrouping} from '../scatterplot/utils/sortDotsByGrouping';\nimport type { AesItem, ContinuousAesFromColumn, InheritAesScatterplot, ScatterplotEventHandlers } from '../types';\nimport type { ScatterplotUmapLegendInfo, ScatterplotUmapSettings } from '../types/scatterplot-umap';\nimport {arraysAreDifferent} from '../utils/arraysAreDifferent';\nimport ChartRenderer from './ChartRenderer';\nimport { SCATTERPLOT_LASSO_EVENTS } from './constants';\nimport type { DotsLayer } from './SettingsImpl';\nimport { ScatterplotUmapSettingsImpl } from './SettingsImpl';\nimport type { Dot, DotsExtents, LassoControlsState, LassoMode, Polygon } from './types';\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\n\nexport class ChartScatterplotUmap extends AbstractChart {\n settings: ScatterplotUmapSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onPolygonUpdate: (data: number[], polygons: Polygon[]) => void = () => undefined; // dots indexes from input data\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n onLassoControlsStateUpdate: (v: LassoControlsState) => void = () => undefined;\n\n calculatedData: {\n dots: Dot[],\n groupingKeys: string[],\n dotsByGrouping: Record<string, Dot[]>,\n dotsExtents: DotsExtents,\n legendLabels: ScatterplotUmapLegendInfo\n } | null = null;\n\n constructor(data: DataFrame, settings: ScatterplotUmapSettings, eventHandlers?: ScatterplotEventHandlers) {\n super(data, settings);\n\n this.settings = new ScatterplotUmapSettingsImpl(settings);\n this.chartRenderer = new ChartRenderer();\n\n if (eventHandlers) {\n this.onPolygonUpdate = eventHandlers.onPolygonUpdate;\n this.onTooltipHintSwitch = eventHandlers.onTooltipHintSwitch;\n this.onLassoControlsStateUpdate = eventHandlers.onLassoControlsStateUpdate;\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n this.hasError = false;\n } catch (err) {\n this.hasError = true;\n console.error(err);\n if (err instanceof Error) {\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: ScatterplotUmapSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new ScatterplotUmapSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n\n // for some reason it's not enough for size updating to do like with fillColor\n const prevLayer = previousSettings.layers.find(l => l.type === 'dots') as DotsLayer;\n const currentLayer = this.settings.layers.find(l => l.type === 'dots') as DotsLayer;\n if (prevLayer && currentLayer && prevLayer.aes.dotSize !== currentLayer.aes.dotSize\n && typeof prevLayer.aes.dotSize === 'number' && typeof currentLayer.aes.dotSize === 'number') {\n this.chartRenderer.updatePointSize();\n }\n this._updateChart();\n this.hasError = false;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(field: string, value: unknown) {\n if (field === 'polygon') {\n this.chartRenderer.polygons = value as Polygon[];\n this._updateChart();\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.delete) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.delete);\n document.dispatchEvent(event);\n }}\n if (field === SCATTERPLOT_LASSO_EVENTS.selectMode) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.selectMode, {detail: value as LassoMode});\n document.dispatchEvent(event);\n }\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.forward) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.forward);\n document.dispatchEvent(event);\n }\n }\n if (field === SCATTERPLOT_LASSO_EVENTS.back) {\n if (document) {\n const event = new CustomEvent(SCATTERPLOT_LASSO_EVENTS.back);\n document.dispatchEvent(event);\n }\n }\n }\n\n export(): string {\n console.warn('export not implemented');\n return '';\n // this._updateChart();\n // return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: ScatterplotUmapSettingsImpl, settings: ScatterplotUmapSettingsImpl) {\n return (\n arraysAreDifferent(\n prevSettings.grouping.map(v => v.columnName.value),\n settings.grouping.map(v => v.columnName.value),\n ) ||\n prevSettings.grouping.some((v, idx) => arraysAreDifferent(v.order, settings.grouping?.[idx].order)) ||\n prevSettings.layers.length !== settings.layers.length ||\n prevSettings.layers.some((l, idx) => l.type !== settings.layers[idx].type) ||\n (prevSettings.label?.value || settings.label?.value) && prevSettings.label?.value !== settings.label?.value\n );\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {x, y, label, highlight, grouping, layers} = this.settings;\n\n const dotsExtents = {\n minX: Infinity,\n maxX: -Infinity,\n minY: Infinity,\n maxY: -Infinity,\n };\n\n const hasCurve = layers.some(layer => layer.type === 'curve');\n const groupingKeysSet = new Set<string>();\n const dotsByGrouping:Record<string, Dot[]> = {};\n\n const dots: Dot[] = [];\n const labelFormatter = label?.format ? format(label.format) : undefined;\n\n for (let idx = 0; idx < this.data.rowsCount; idx++) {\n const xv = this.data.getColumnValue(x.value, idx);\n const yv = this.data.getColumnValue(y.value, idx);\n\n if (typeof xv !== 'number' || typeof yv !== 'number') {\n continue;\n }\n\n if (xv < dotsExtents.minX) {\n dotsExtents.minX = xv;\n }\n if (xv > dotsExtents.maxX) {\n dotsExtents.maxX = xv;\n }\n if (yv < dotsExtents.minY) {\n dotsExtents.minY = yv;\n }\n if (yv > dotsExtents.maxY) {\n dotsExtents.maxY = yv;\n }\n\n const dimmed = highlight ? !this.data.getColumnValue(highlight.value, idx) : false;\n const dot: Dot = {\n x: xv,\n y: yv,\n idx,\n label: formatColumnValue(this.data, idx, label, labelFormatter),\n dimmed\n };\n if (hasCurve) {\n const groupingKey = grouping.map(({columnName}) => this.data.getColumnValue(columnName.value, idx)).join('_');\n groupingKeysSet.add(groupingKey);\n if (!dotsByGrouping[groupingKey]) {\n dotsByGrouping[groupingKey] = [];\n }\n dotsByGrouping[groupingKey].push(dot);\n }\n dots.push(dot);\n }\n\n const groupingKeys = [...groupingKeysSet];\n if (hasCurve) {\n groupingKeys.forEach(key => {\n dotsByGrouping[key].sort((a, b) => a.x - b.x);\n });\n }\n sortDotsByGrouping(this.data, dots, grouping, highlight);\n const legendLabels = createLegendInfo(this.data, grouping, layers);\n\n this.calculatedData = {\n dots,\n dotsByGrouping,\n groupingKeys,\n dotsExtents,\n legendLabels,\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n const {layers, grouping} = this.settings;\n grouping.forEach(({columnName, inheritedAes}) => {\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === columnName.value)) return;\n usedAes.add(key as keyof AesItem);\n if (value.palette) {\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n }\n });\n });\n\n calculated.legendLabels[columnName.value].usedAes = [...usedAes];\n calculated.legendLabels[columnName.value].aesMap = addPalettesToAesMapping(columnName, usedAesFromPalettes, inheritedAes);\n });\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {id, chartSettings, keyColumn, layers, grouping} = this.settings;\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n keyColumn,\n this.calculatedData.dots,\n this.calculatedData.dotsExtents,\n this.calculatedData.dotsByGrouping,\n layers,\n this.calculatedData.legendLabels,\n grouping.map(v => v.columnName),\n this.onPolygonUpdate,\n this.onTooltipHintSwitch,\n this.onLassoControlsStateUpdate\n );\n }\n}\n"],"names":["isInheritMapping","value","ChartScatterplotUmap","AbstractChart","data","settings","eventHandlers","__publicField","ScatterplotUmapSettingsImpl","ChartRenderer","node","err","previousSettings","previousData","prevLayer","l","currentLayer","field","SCATTERPLOT_LASSO_EVENTS","event","prevSettings","arraysAreDifferent","v","idx","_a","_b","_c","_d","prevData","prevKeys","keys","key","x","y","label","highlight","grouping","layers","dotsExtents","hasCurve","layer","groupingKeysSet","dotsByGrouping","dots","labelFormatter","format","xv","yv","dimmed","dot","formatColumnValue","groupingKey","columnName","groupingKeys","a","b","sortDotsByGrouping","legendLabels","createLegendInfo","calculated","inheritedAes","usedAes","usedAesFromPalettes","addPalettesToAesMapping","id","chartSettings","keyColumn"],"mappings":"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"}
@@ -1077,6 +1077,86 @@ declare const LogoPlotLayerSchema: z.ZodObject<{
1077
1077
  normalize?: boolean | undefined;
1078
1078
  }>;
1079
1079
  export type LogoPlotLayer = z.infer<typeof LogoPlotLayerSchema>;
1080
+ declare const StackedAreaLayerSchema: z.ZodObject<{
1081
+ type: z.ZodLiteral<"stackedArea">;
1082
+ normalize: z.ZodOptional<z.ZodBoolean>;
1083
+ showBars: z.ZodOptional<z.ZodBoolean>;
1084
+ aes: z.ZodOptional<z.ZodObject<{
1085
+ barWidth: z.ZodOptional<z.ZodNumber>;
1086
+ lineColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
1087
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
1088
+ }, "strip", z.ZodTypeAny, {
1089
+ type: "primaryGrouping" | "secondaryGrouping";
1090
+ }, {
1091
+ type: "primaryGrouping" | "secondaryGrouping";
1092
+ }>, z.ZodString]>>;
1093
+ fillColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
1094
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
1095
+ }, "strip", z.ZodTypeAny, {
1096
+ type: "primaryGrouping" | "secondaryGrouping";
1097
+ }, {
1098
+ type: "primaryGrouping" | "secondaryGrouping";
1099
+ }>, z.ZodString]>>;
1100
+ lineWidth: z.ZodOptional<z.ZodNumber>;
1101
+ barsOpacity: z.ZodOptional<z.ZodNumber>;
1102
+ areaOpacity: z.ZodOptional<z.ZodNumber>;
1103
+ }, "strip", z.ZodTypeAny, {
1104
+ lineWidth?: number | undefined;
1105
+ lineColor?: string | {
1106
+ type: "primaryGrouping" | "secondaryGrouping";
1107
+ } | undefined;
1108
+ fillColor?: string | {
1109
+ type: "primaryGrouping" | "secondaryGrouping";
1110
+ } | undefined;
1111
+ barWidth?: number | undefined;
1112
+ barsOpacity?: number | undefined;
1113
+ areaOpacity?: number | undefined;
1114
+ }, {
1115
+ lineWidth?: number | undefined;
1116
+ lineColor?: string | {
1117
+ type: "primaryGrouping" | "secondaryGrouping";
1118
+ } | undefined;
1119
+ fillColor?: string | {
1120
+ type: "primaryGrouping" | "secondaryGrouping";
1121
+ } | undefined;
1122
+ barWidth?: number | undefined;
1123
+ barsOpacity?: number | undefined;
1124
+ areaOpacity?: number | undefined;
1125
+ }>>;
1126
+ }, "strip", z.ZodTypeAny, {
1127
+ type: "stackedArea";
1128
+ aes?: {
1129
+ lineWidth?: number | undefined;
1130
+ lineColor?: string | {
1131
+ type: "primaryGrouping" | "secondaryGrouping";
1132
+ } | undefined;
1133
+ fillColor?: string | {
1134
+ type: "primaryGrouping" | "secondaryGrouping";
1135
+ } | undefined;
1136
+ barWidth?: number | undefined;
1137
+ barsOpacity?: number | undefined;
1138
+ areaOpacity?: number | undefined;
1139
+ } | undefined;
1140
+ normalize?: boolean | undefined;
1141
+ showBars?: boolean | undefined;
1142
+ }, {
1143
+ type: "stackedArea";
1144
+ aes?: {
1145
+ lineWidth?: number | undefined;
1146
+ lineColor?: string | {
1147
+ type: "primaryGrouping" | "secondaryGrouping";
1148
+ } | undefined;
1149
+ fillColor?: string | {
1150
+ type: "primaryGrouping" | "secondaryGrouping";
1151
+ } | undefined;
1152
+ barWidth?: number | undefined;
1153
+ barsOpacity?: number | undefined;
1154
+ areaOpacity?: number | undefined;
1155
+ } | undefined;
1156
+ normalize?: boolean | undefined;
1157
+ showBars?: boolean | undefined;
1158
+ }>;
1159
+ export type StackedAreaLayer = z.infer<typeof StackedAreaLayerSchema>;
1080
1160
  declare const StatTestMethodSchema: z.ZodEnum<["ttest", "anova", "wilcoxon", "kruskalWallis"]>;
1081
1161
  declare const PValueCorrectionMethodSchema: z.ZodEnum<["BenjaminiHochberg", "BenjaminiYekutieli", "Bonferroni", "Hochberg", "Holm", "Hommel"]>;
1082
1162
  declare const SignificanceLevelsSchema: z.ZodObject<{
@@ -2195,6 +2275,84 @@ declare const DiscreteLayerSchema: z.ZodUnion<[z.ZodObject<{
2195
2275
  fillColor?: string | Record<string, string> | undefined;
2196
2276
  } | undefined;
2197
2277
  normalize?: boolean | undefined;
2278
+ }>, z.ZodObject<{
2279
+ type: z.ZodLiteral<"stackedArea">;
2280
+ normalize: z.ZodOptional<z.ZodBoolean>;
2281
+ showBars: z.ZodOptional<z.ZodBoolean>;
2282
+ aes: z.ZodOptional<z.ZodObject<{
2283
+ barWidth: z.ZodOptional<z.ZodNumber>;
2284
+ lineColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
2285
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
2286
+ }, "strip", z.ZodTypeAny, {
2287
+ type: "primaryGrouping" | "secondaryGrouping";
2288
+ }, {
2289
+ type: "primaryGrouping" | "secondaryGrouping";
2290
+ }>, z.ZodString]>>;
2291
+ fillColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
2292
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
2293
+ }, "strip", z.ZodTypeAny, {
2294
+ type: "primaryGrouping" | "secondaryGrouping";
2295
+ }, {
2296
+ type: "primaryGrouping" | "secondaryGrouping";
2297
+ }>, z.ZodString]>>;
2298
+ lineWidth: z.ZodOptional<z.ZodNumber>;
2299
+ barsOpacity: z.ZodOptional<z.ZodNumber>;
2300
+ areaOpacity: z.ZodOptional<z.ZodNumber>;
2301
+ }, "strip", z.ZodTypeAny, {
2302
+ lineWidth?: number | undefined;
2303
+ lineColor?: string | {
2304
+ type: "primaryGrouping" | "secondaryGrouping";
2305
+ } | undefined;
2306
+ fillColor?: string | {
2307
+ type: "primaryGrouping" | "secondaryGrouping";
2308
+ } | undefined;
2309
+ barWidth?: number | undefined;
2310
+ barsOpacity?: number | undefined;
2311
+ areaOpacity?: number | undefined;
2312
+ }, {
2313
+ lineWidth?: number | undefined;
2314
+ lineColor?: string | {
2315
+ type: "primaryGrouping" | "secondaryGrouping";
2316
+ } | undefined;
2317
+ fillColor?: string | {
2318
+ type: "primaryGrouping" | "secondaryGrouping";
2319
+ } | undefined;
2320
+ barWidth?: number | undefined;
2321
+ barsOpacity?: number | undefined;
2322
+ areaOpacity?: number | undefined;
2323
+ }>>;
2324
+ }, "strip", z.ZodTypeAny, {
2325
+ type: "stackedArea";
2326
+ aes?: {
2327
+ lineWidth?: number | undefined;
2328
+ lineColor?: string | {
2329
+ type: "primaryGrouping" | "secondaryGrouping";
2330
+ } | undefined;
2331
+ fillColor?: string | {
2332
+ type: "primaryGrouping" | "secondaryGrouping";
2333
+ } | undefined;
2334
+ barWidth?: number | undefined;
2335
+ barsOpacity?: number | undefined;
2336
+ areaOpacity?: number | undefined;
2337
+ } | undefined;
2338
+ normalize?: boolean | undefined;
2339
+ showBars?: boolean | undefined;
2340
+ }, {
2341
+ type: "stackedArea";
2342
+ aes?: {
2343
+ lineWidth?: number | undefined;
2344
+ lineColor?: string | {
2345
+ type: "primaryGrouping" | "secondaryGrouping";
2346
+ } | undefined;
2347
+ fillColor?: string | {
2348
+ type: "primaryGrouping" | "secondaryGrouping";
2349
+ } | undefined;
2350
+ barWidth?: number | undefined;
2351
+ barsOpacity?: number | undefined;
2352
+ areaOpacity?: number | undefined;
2353
+ } | undefined;
2354
+ normalize?: boolean | undefined;
2355
+ showBars?: boolean | undefined;
2198
2356
  }>, z.ZodObject<{
2199
2357
  type: z.ZodLiteral<"stat">;
2200
2358
  statType: z.ZodEnum<["overall", "referenceGroup", "pairwise"]>;
@@ -3871,6 +4029,84 @@ export declare const DiscreteSettingsSchema: z.ZodObject<{
3871
4029
  fillColor?: string | Record<string, string> | undefined;
3872
4030
  } | undefined;
3873
4031
  normalize?: boolean | undefined;
4032
+ }>, z.ZodObject<{
4033
+ type: z.ZodLiteral<"stackedArea">;
4034
+ normalize: z.ZodOptional<z.ZodBoolean>;
4035
+ showBars: z.ZodOptional<z.ZodBoolean>;
4036
+ aes: z.ZodOptional<z.ZodObject<{
4037
+ barWidth: z.ZodOptional<z.ZodNumber>;
4038
+ lineColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
4039
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
4040
+ }, "strip", z.ZodTypeAny, {
4041
+ type: "primaryGrouping" | "secondaryGrouping";
4042
+ }, {
4043
+ type: "primaryGrouping" | "secondaryGrouping";
4044
+ }>, z.ZodString]>>;
4045
+ fillColor: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
4046
+ type: z.ZodEnum<["primaryGrouping", "secondaryGrouping"]>;
4047
+ }, "strip", z.ZodTypeAny, {
4048
+ type: "primaryGrouping" | "secondaryGrouping";
4049
+ }, {
4050
+ type: "primaryGrouping" | "secondaryGrouping";
4051
+ }>, z.ZodString]>>;
4052
+ lineWidth: z.ZodOptional<z.ZodNumber>;
4053
+ barsOpacity: z.ZodOptional<z.ZodNumber>;
4054
+ areaOpacity: z.ZodOptional<z.ZodNumber>;
4055
+ }, "strip", z.ZodTypeAny, {
4056
+ lineWidth?: number | undefined;
4057
+ lineColor?: string | {
4058
+ type: "primaryGrouping" | "secondaryGrouping";
4059
+ } | undefined;
4060
+ fillColor?: string | {
4061
+ type: "primaryGrouping" | "secondaryGrouping";
4062
+ } | undefined;
4063
+ barWidth?: number | undefined;
4064
+ barsOpacity?: number | undefined;
4065
+ areaOpacity?: number | undefined;
4066
+ }, {
4067
+ lineWidth?: number | undefined;
4068
+ lineColor?: string | {
4069
+ type: "primaryGrouping" | "secondaryGrouping";
4070
+ } | undefined;
4071
+ fillColor?: string | {
4072
+ type: "primaryGrouping" | "secondaryGrouping";
4073
+ } | undefined;
4074
+ barWidth?: number | undefined;
4075
+ barsOpacity?: number | undefined;
4076
+ areaOpacity?: number | undefined;
4077
+ }>>;
4078
+ }, "strip", z.ZodTypeAny, {
4079
+ type: "stackedArea";
4080
+ aes?: {
4081
+ lineWidth?: number | undefined;
4082
+ lineColor?: string | {
4083
+ type: "primaryGrouping" | "secondaryGrouping";
4084
+ } | undefined;
4085
+ fillColor?: string | {
4086
+ type: "primaryGrouping" | "secondaryGrouping";
4087
+ } | undefined;
4088
+ barWidth?: number | undefined;
4089
+ barsOpacity?: number | undefined;
4090
+ areaOpacity?: number | undefined;
4091
+ } | undefined;
4092
+ normalize?: boolean | undefined;
4093
+ showBars?: boolean | undefined;
4094
+ }, {
4095
+ type: "stackedArea";
4096
+ aes?: {
4097
+ lineWidth?: number | undefined;
4098
+ lineColor?: string | {
4099
+ type: "primaryGrouping" | "secondaryGrouping";
4100
+ } | undefined;
4101
+ fillColor?: string | {
4102
+ type: "primaryGrouping" | "secondaryGrouping";
4103
+ } | undefined;
4104
+ barWidth?: number | undefined;
4105
+ barsOpacity?: number | undefined;
4106
+ areaOpacity?: number | undefined;
4107
+ } | undefined;
4108
+ normalize?: boolean | undefined;
4109
+ showBars?: boolean | undefined;
3874
4110
  }>, z.ZodObject<{
3875
4111
  type: z.ZodLiteral<"stat">;
3876
4112
  statType: z.ZodEnum<["overall", "referenceGroup", "pairwise"]>;
@@ -4142,6 +4378,22 @@ export declare const DiscreteSettingsSchema: z.ZodObject<{
4142
4378
  fillColor?: string | Record<string, string> | undefined;
4143
4379
  } | undefined;
4144
4380
  normalize?: boolean | undefined;
4381
+ } | {
4382
+ type: "stackedArea";
4383
+ aes?: {
4384
+ lineWidth?: number | undefined;
4385
+ lineColor?: string | {
4386
+ type: "primaryGrouping" | "secondaryGrouping";
4387
+ } | undefined;
4388
+ fillColor?: string | {
4389
+ type: "primaryGrouping" | "secondaryGrouping";
4390
+ } | undefined;
4391
+ barWidth?: number | undefined;
4392
+ barsOpacity?: number | undefined;
4393
+ areaOpacity?: number | undefined;
4394
+ } | undefined;
4395
+ normalize?: boolean | undefined;
4396
+ showBars?: boolean | undefined;
4145
4397
  } | {
4146
4398
  type: "stat";
4147
4399
  statType: "overall" | "referenceGroup" | "pairwise";
@@ -4525,6 +4777,22 @@ export declare const DiscreteSettingsSchema: z.ZodObject<{
4525
4777
  fillColor?: string | Record<string, string> | undefined;
4526
4778
  } | undefined;
4527
4779
  normalize?: boolean | undefined;
4780
+ } | {
4781
+ type: "stackedArea";
4782
+ aes?: {
4783
+ lineWidth?: number | undefined;
4784
+ lineColor?: string | {
4785
+ type: "primaryGrouping" | "secondaryGrouping";
4786
+ } | undefined;
4787
+ fillColor?: string | {
4788
+ type: "primaryGrouping" | "secondaryGrouping";
4789
+ } | undefined;
4790
+ barWidth?: number | undefined;
4791
+ barsOpacity?: number | undefined;
4792
+ areaOpacity?: number | undefined;
4793
+ } | undefined;
4794
+ normalize?: boolean | undefined;
4795
+ showBars?: boolean | undefined;
4528
4796
  } | {
4529
4797
  type: "stat";
4530
4798
  statType: "overall" | "referenceGroup" | "pairwise";
@@ -1 +1 @@
1
- {"version":3,"file":"discrete.d.ts","sourceRoot":"","sources":["../../src/types/discrete.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG,IAAI,CAAA;CACvD,CAAA"}
1
+ {"version":3,"file":"discrete.d.ts","sourceRoot":"","sources":["../../src/types/discrete.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG,IAAI,CAAA;CACvD,CAAA"}
@@ -166,23 +166,37 @@ const n = o.object({ type: o.enum(["primaryGrouping", "secondaryGrouping"]) }),
166
166
  opacity: o.optional(o.number().min(0).max(1))
167
167
  })
168
168
  )
169
- }), A = ["ttest", "anova", "wilcoxon", "kruskalWallis"], T = [
169
+ }), A = o.object({
170
+ type: o.literal("stackedArea"),
171
+ normalize: o.optional(o.boolean()),
172
+ showBars: o.optional(o.boolean()),
173
+ aes: o.optional(
174
+ o.object({
175
+ barWidth: o.optional(o.number()),
176
+ lineColor: o.optional(o.union([n, o.string()])),
177
+ fillColor: o.optional(o.union([n, o.string()])),
178
+ lineWidth: o.optional(o.number()),
179
+ barsOpacity: o.optional(o.number().min(0).max(1)),
180
+ areaOpacity: o.optional(o.number().min(0).max(1))
181
+ })
182
+ )
183
+ }), k = ["ttest", "anova", "wilcoxon", "kruskalWallis"], z = [
170
184
  "BenjaminiHochberg",
171
185
  "BenjaminiYekutieli",
172
186
  "Bonferroni",
173
187
  "Hochberg",
174
188
  "Holm",
175
189
  "Hommel"
176
- ], z = o.enum(A), B = o.enum(T), P = o.object({ one: o.number(), two: o.number(), three: o.number() }), k = o.object({
190
+ ], B = o.enum(k), T = o.enum(z), W = o.object({ one: o.number(), two: o.number(), three: o.number() }), P = o.object({
177
191
  type: o.literal("stat"),
178
192
  statType: o.enum(["overall", "referenceGroup", "pairwise"]),
179
- testMethod: z,
193
+ testMethod: B,
180
194
  paired: o.optional(o.boolean()),
181
195
  ns: o.optional(o.boolean()),
182
196
  format: o.optional(o.enum(["significance", "pValue"])),
183
197
  referenceGroup: o.optional(a),
184
- correctionMethod: o.optional(B),
185
- significanceLevels: o.optional(P)
198
+ correctionMethod: o.optional(T),
199
+ significanceLevels: o.optional(W)
186
200
  }), E = o.union([
187
201
  b,
188
202
  u,
@@ -195,8 +209,9 @@ const n = o.object({ type: o.enum(["primaryGrouping", "secondaryGrouping"]) }),
195
209
  f,
196
210
  L,
197
211
  O,
198
- k
199
- ]), R = ["horizontal", "vertical"], W = o.enum(R), M = o.object({
212
+ A,
213
+ P
214
+ ]), R = ["horizontal", "vertical"], D = o.enum(R), V = o.object({
200
215
  type: o.literal("discrete"),
201
216
  title: o.object({
202
217
  name: o.string(),
@@ -233,7 +248,7 @@ const n = o.object({ type: o.enum(["primaryGrouping", "secondaryGrouping"]) }),
233
248
  })
234
249
  ),
235
250
  frame: o.optional(o.object({ type: o.optional(s) })),
236
- orientation: o.optional(W),
251
+ orientation: o.optional(D),
237
252
  keyColumn: o.optional(t),
238
253
  primaryGrouping: o.optional(
239
254
  o.object({
@@ -267,6 +282,6 @@ const n = o.object({ type: o.enum(["primaryGrouping", "secondaryGrouping"]) }),
267
282
  layers: o.array(E)
268
283
  });
269
284
  export {
270
- M as DiscreteSettingsSchema
285
+ V as DiscreteSettingsSchema
271
286
  };
272
287
  //# sourceMappingURL=discrete.js.map