@deephaven/chart 0.38.1-beta.3 → 0.38.1-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ChartModelFactory.d.ts +7 -4
- package/dist/ChartModelFactory.d.ts.map +1 -1
- package/dist/ChartModelFactory.js +13 -11
- package/dist/ChartModelFactory.js.map +1 -1
- package/dist/ChartUtils.d.ts +157 -154
- package/dist/ChartUtils.d.ts.map +1 -1
- package/dist/ChartUtils.js +669 -607
- package/dist/ChartUtils.js.map +1 -1
- package/dist/FigureChartModel.d.ts +7 -4
- package/dist/FigureChartModel.d.ts.map +1 -1
- package/dist/FigureChartModel.js +28 -12
- package/dist/FigureChartModel.js.map +1 -1
- package/dist/MockChartModel.d.ts +3 -3
- package/dist/MockChartModel.d.ts.map +1 -1
- package/dist/MockChartModel.js +6 -6
- package/dist/MockChartModel.js.map +1 -1
- package/package.json +10 -9
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { Figure, Table } from '@deephaven/jsapi-
|
|
1
|
+
import type { dh as DhType, Figure, Table } from '@deephaven/jsapi-types';
|
|
2
2
|
import { ChartModelSettings } from './ChartUtils';
|
|
3
3
|
import ChartModel from './ChartModel';
|
|
4
4
|
declare class ChartModelFactory {
|
|
5
5
|
/**
|
|
6
6
|
* Creates a model from the settings provided.
|
|
7
7
|
* Tries to create a Figure in the API with it.
|
|
8
|
+
* @param dh JSAPI instance
|
|
8
9
|
* @param settings The chart builder settings
|
|
9
10
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
10
11
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -17,7 +18,7 @@ declare class ChartModelFactory {
|
|
|
17
18
|
* CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel
|
|
18
19
|
* This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel
|
|
19
20
|
*/
|
|
20
|
-
static makeModelFromSettings(settings: ChartModelSettings, table: Table, theme?: Readonly<{
|
|
21
|
+
static makeModelFromSettings(dh: DhType, settings: ChartModelSettings, table: Table, theme?: Readonly<{
|
|
21
22
|
paper_bgcolor: string;
|
|
22
23
|
plot_bgcolor: string;
|
|
23
24
|
title_color: string;
|
|
@@ -38,6 +39,7 @@ declare class ChartModelFactory {
|
|
|
38
39
|
/**
|
|
39
40
|
* Creates a model from the settings provided.
|
|
40
41
|
* Tries to create a Figure in the API with it.
|
|
42
|
+
* @param dh DH JSAPI instance
|
|
41
43
|
* @param settings The chart builder settings
|
|
42
44
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
43
45
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -47,10 +49,11 @@ declare class ChartModelFactory {
|
|
|
47
49
|
* @param table The table to build the model for
|
|
48
50
|
* @returns The Figure created with the settings provided
|
|
49
51
|
*/
|
|
50
|
-
static makeFigureFromSettings(settings: ChartModelSettings, table: Table): Promise<Figure>;
|
|
52
|
+
static makeFigureFromSettings(dh: DhType, settings: ChartModelSettings, table: Table): Promise<Figure>;
|
|
51
53
|
/**
|
|
52
54
|
* Creates a model from the settings provided.
|
|
53
55
|
* Tries to create a Figure in the API with it.
|
|
56
|
+
* @param dh DH JSAPI instance
|
|
54
57
|
* @param settings The chart builder settings
|
|
55
58
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
56
59
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -63,7 +66,7 @@ declare class ChartModelFactory {
|
|
|
63
66
|
* CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel
|
|
64
67
|
* This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel
|
|
65
68
|
*/
|
|
66
|
-
static makeModel(settings: ChartModelSettings | undefined, figure: Figure, theme?: Readonly<{
|
|
69
|
+
static makeModel(dh: DhType, settings: ChartModelSettings | undefined, figure: Figure, theme?: Readonly<{
|
|
67
70
|
paper_bgcolor: string;
|
|
68
71
|
plot_bgcolor: string;
|
|
69
72
|
title_color: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartModelFactory.d.ts","sourceRoot":"","sources":["../src/ChartModelFactory.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"ChartModelFactory.d.ts","sourceRoot":"","sources":["../src/ChartModelFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAmB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,cAAM,iBAAiB;IACrB;;;;;;;;;;;;;;;OAeG;WACU,qBAAqB,CAChC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,KAAK,EACZ,KAAK;;;;;;;;;;;;;;;;;MAAa,GACjB,OAAO,CAAC,UAAU,CAAC;IAStB;;;;;;;;;;;;OAYG;WACU,sBAAsB,CACjC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,MAAM,CAAC;IAelB;;;;;;;;;;;;;;;OAeG;WACU,SAAS,CACpB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,MAAM,EAAE,MAAM,EACd,KAAK;;;;;;;;;;;;;;;;;MAAa,GACjB,OAAO,CAAC,UAAU,CAAC;CAGvB;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
2
2
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
3
|
-
import dh from '@deephaven/jsapi-shim';
|
|
4
3
|
import ChartUtils from "./ChartUtils.js";
|
|
5
4
|
import FigureChartModel from "./FigureChartModel.js";
|
|
6
5
|
import ChartTheme from "./ChartTheme.js";
|
|
@@ -8,6 +7,7 @@ class ChartModelFactory {
|
|
|
8
7
|
/**
|
|
9
8
|
* Creates a model from the settings provided.
|
|
10
9
|
* Tries to create a Figure in the API with it.
|
|
10
|
+
* @param dh JSAPI instance
|
|
11
11
|
* @param settings The chart builder settings
|
|
12
12
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
13
13
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -20,18 +20,19 @@ class ChartModelFactory {
|
|
|
20
20
|
* CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel
|
|
21
21
|
* This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel
|
|
22
22
|
*/
|
|
23
|
-
static makeModelFromSettings(settings, table) {
|
|
23
|
+
static makeModelFromSettings(dh, settings, table) {
|
|
24
24
|
var _arguments = arguments;
|
|
25
25
|
return _asyncToGenerator(function* () {
|
|
26
|
-
var theme = _arguments.length >
|
|
27
|
-
var figure = yield ChartModelFactory.makeFigureFromSettings(settings, table);
|
|
28
|
-
return new FigureChartModel(figure, settings, theme);
|
|
26
|
+
var theme = _arguments.length > 3 && _arguments[3] !== undefined ? _arguments[3] : ChartTheme;
|
|
27
|
+
var figure = yield ChartModelFactory.makeFigureFromSettings(dh, settings, table);
|
|
28
|
+
return new FigureChartModel(dh, figure, settings, theme);
|
|
29
29
|
})();
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
33
|
* Creates a model from the settings provided.
|
|
34
34
|
* Tries to create a Figure in the API with it.
|
|
35
|
+
* @param dh DH JSAPI instance
|
|
35
36
|
* @param settings The chart builder settings
|
|
36
37
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
37
38
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -41,23 +42,24 @@ class ChartModelFactory {
|
|
|
41
42
|
* @param table The table to build the model for
|
|
42
43
|
* @returns The Figure created with the settings provided
|
|
43
44
|
*/
|
|
44
|
-
static makeFigureFromSettings(settings, table) {
|
|
45
|
+
static makeFigureFromSettings(dh, settings, table) {
|
|
45
46
|
return _asyncToGenerator(function* () {
|
|
46
47
|
// Copy the table first and then re-apply the filters from the original table
|
|
47
|
-
// When we add
|
|
48
|
+
// When we add table linking we'll want to listen to the original table and update
|
|
48
49
|
// the copied table with any changes that occur.
|
|
49
50
|
// The table gets owned by the Figure that gets created, which closes the table
|
|
50
51
|
var tableCopy = yield table.copy();
|
|
51
52
|
tableCopy.applyCustomColumns(table.customColumns);
|
|
52
53
|
tableCopy.applyFilter(table.filter);
|
|
53
54
|
tableCopy.applySort(table.sort);
|
|
54
|
-
return dh.plot.Figure.create(ChartUtils.makeFigureSettings(settings, tableCopy));
|
|
55
|
+
return dh.plot.Figure.create(new ChartUtils(dh).makeFigureSettings(settings, tableCopy));
|
|
55
56
|
})();
|
|
56
57
|
}
|
|
57
58
|
|
|
58
59
|
/**
|
|
59
60
|
* Creates a model from the settings provided.
|
|
60
61
|
* Tries to create a Figure in the API with it.
|
|
62
|
+
* @param dh DH JSAPI instance
|
|
61
63
|
* @param settings The chart builder settings
|
|
62
64
|
* @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated
|
|
63
65
|
* @param settings.series The column names to use for creating the series of this chart
|
|
@@ -70,11 +72,11 @@ class ChartModelFactory {
|
|
|
70
72
|
* CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel
|
|
71
73
|
* This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel
|
|
72
74
|
*/
|
|
73
|
-
static makeModel(settings, figure) {
|
|
75
|
+
static makeModel(dh, settings, figure) {
|
|
74
76
|
var _arguments2 = arguments;
|
|
75
77
|
return _asyncToGenerator(function* () {
|
|
76
|
-
var theme = _arguments2.length >
|
|
77
|
-
return new FigureChartModel(figure, settings, theme);
|
|
78
|
+
var theme = _arguments2.length > 3 && _arguments2[3] !== undefined ? _arguments2[3] : ChartTheme;
|
|
79
|
+
return new FigureChartModel(dh, figure, settings, theme);
|
|
78
80
|
})();
|
|
79
81
|
}
|
|
80
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartModelFactory.js","names":["
|
|
1
|
+
{"version":3,"file":"ChartModelFactory.js","names":["ChartUtils","FigureChartModel","ChartTheme","ChartModelFactory","makeModelFromSettings","dh","settings","table","theme","figure","makeFigureFromSettings","tableCopy","copy","applyCustomColumns","customColumns","applyFilter","filter","applySort","sort","plot","Figure","create","makeFigureSettings","makeModel"],"sources":["../src/ChartModelFactory.ts"],"sourcesContent":["import type { dh as DhType, Figure, Table } from '@deephaven/jsapi-types';\nimport ChartUtils, { ChartModelSettings } from './ChartUtils';\nimport FigureChartModel from './FigureChartModel';\nimport ChartTheme from './ChartTheme';\nimport ChartModel from './ChartModel';\n\nclass ChartModelFactory {\n /**\n * Creates a model from the settings provided.\n * Tries to create a Figure in the API with it.\n * @param dh JSAPI instance\n * @param settings The chart builder settings\n * @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated\n * @param settings.series The column names to use for creating the series of this chart\n * @param settings.type Chart builder type, from ChartBuilder.types\n * @param settings.xAxis The column name to use for the x-axis\n * @param [settings.hiddenSeries] Array of hidden series names\n * @param table The table to build the model for\n * @param theme The theme for the figure. Defaults to ChartTheme\n * @returns The ChartModel Promise representing the figure\n * CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel\n * This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel\n */\n static async makeModelFromSettings(\n dh: DhType,\n settings: ChartModelSettings,\n table: Table,\n theme = ChartTheme\n ): Promise<ChartModel> {\n const figure = await ChartModelFactory.makeFigureFromSettings(\n dh,\n settings,\n table\n );\n return new FigureChartModel(dh, figure, settings, theme);\n }\n\n /**\n * Creates a model from the settings provided.\n * Tries to create a Figure in the API with it.\n * @param dh DH JSAPI instance\n * @param settings The chart builder settings\n * @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated\n * @param settings.series The column names to use for creating the series of this chart\n * @param settings.type Chart builder type, from ChartBuilder.types\n * @param settings.xAxis The column name to use for the x-axis\n * @param [settings.hiddenSeries] Array of hidden series names\n * @param table The table to build the model for\n * @returns The Figure created with the settings provided\n */\n static async makeFigureFromSettings(\n dh: DhType,\n settings: ChartModelSettings,\n table: Table\n ): Promise<Figure> {\n // Copy the table first and then re-apply the filters from the original table\n // When we add table linking we'll want to listen to the original table and update\n // the copied table with any changes that occur.\n // The table gets owned by the Figure that gets created, which closes the table\n const tableCopy = await table.copy();\n tableCopy.applyCustomColumns(table.customColumns);\n tableCopy.applyFilter(table.filter);\n tableCopy.applySort(table.sort);\n\n return dh.plot.Figure.create(\n new ChartUtils(dh).makeFigureSettings(settings, tableCopy)\n );\n }\n\n /**\n * Creates a model from the settings provided.\n * Tries to create a Figure in the API with it.\n * @param dh DH JSAPI instance\n * @param settings The chart builder settings\n * @param settings.isLinked Whether the newly created chart should stay linked with the original table, update when filters are updated\n * @param settings.series The column names to use for creating the series of this chart\n * @param settings.type Chart builder type, from ChartBuilder.types\n * @param settings.xAxis The column name to use for the x-axis\n * @param [settings.hiddenSeries] Array of hidden series names\n * @param figure The figure to build the model for\n * @param theme The theme for the figure. Defaults to ChartTheme\n * @returns The FigureChartModel representing the figure\n * CRA sets tsconfig to type check JS based on jsdoc comments. It isn't able to figure out FigureChartModel extends ChartModel\n * This causes TS issues in 1 or 2 spots. Once this is TS it can be returned to just FigureChartModel\n */\n static async makeModel(\n dh: DhType,\n settings: ChartModelSettings | undefined,\n figure: Figure,\n theme = ChartTheme\n ): Promise<ChartModel> {\n return new FigureChartModel(dh, figure, settings, theme);\n }\n}\n\nexport default ChartModelFactory;\n"],"mappings":";;OACOA,UAAU;AAAA,OACVC,gBAAgB;AAAA,OAChBC,UAAU;AAGjB,MAAMC,iBAAiB,CAAC;EACtB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAaC,qBAAqB,CAChCC,EAAU,EACVC,QAA4B,EAC5BC,KAAY,EAES;IAAA;IAAA;MAAA,IADrBC,KAAK,0EAAGN,UAAU;MAElB,IAAMO,MAAM,SAASN,iBAAiB,CAACO,sBAAsB,CAC3DL,EAAE,EACFC,QAAQ,EACRC,KAAK,CACN;MACD,OAAO,IAAIN,gBAAgB,CAACI,EAAE,EAAEI,MAAM,EAAEH,QAAQ,EAAEE,KAAK,CAAC;IAAC;EAC3D;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAaE,sBAAsB,CACjCL,EAAU,EACVC,QAA4B,EAC5BC,KAAY,EACK;IAAA;MACjB;MACA;MACA;MACA;MACA,IAAMI,SAAS,SAASJ,KAAK,CAACK,IAAI,EAAE;MACpCD,SAAS,CAACE,kBAAkB,CAACN,KAAK,CAACO,aAAa,CAAC;MACjDH,SAAS,CAACI,WAAW,CAACR,KAAK,CAACS,MAAM,CAAC;MACnCL,SAAS,CAACM,SAAS,CAACV,KAAK,CAACW,IAAI,CAAC;MAE/B,OAAOb,EAAE,CAACc,IAAI,CAACC,MAAM,CAACC,MAAM,CAC1B,IAAIrB,UAAU,CAACK,EAAE,CAAC,CAACiB,kBAAkB,CAAChB,QAAQ,EAAEK,SAAS,CAAC,CAC3D;IAAC;EACJ;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,OAAaY,SAAS,CACpBlB,EAAU,EACVC,QAAwC,EACxCG,MAAc,EAEO;IAAA;IAAA;MAAA,IADrBD,KAAK,6EAAGN,UAAU;MAElB,OAAO,IAAID,gBAAgB,CAACI,EAAE,EAAEI,MAAM,EAAEH,QAAQ,EAAEE,KAAK,CAAC;IAAC;EAC3D;AACF;AAEA,eAAeL,iBAAiB"}
|
package/dist/ChartUtils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Formatter } from '@deephaven/jsapi-utils';
|
|
2
|
-
import { Axis, AxisPosition, AxisType, Chart, Figure, Holiday, Series, SeriesDataSource, SeriesPlotStyle, SourceType, TableTemplate, TimeZone } from '@deephaven/jsapi-
|
|
2
|
+
import type { Axis, AxisPosition, AxisType, Chart, dh as DhType, Figure, Holiday, Series, SeriesDataSource, SeriesPlotStyle, SourceType, TableTemplate, TimeZone } from '@deephaven/jsapi-types';
|
|
3
3
|
import { Layout, PlotData, PlotType, Axis as PlotlyAxis, ErrorBar, LayoutAxis, MarkerSymbol } from 'plotly.js';
|
|
4
4
|
import { Range } from '@deephaven/utils';
|
|
5
5
|
import ChartTheme from './ChartTheme';
|
|
@@ -77,26 +77,6 @@ declare class ChartUtils {
|
|
|
77
77
|
static DEFAULT_MARKER_SIZE: number;
|
|
78
78
|
static MODE_MARKERS: PlotData['mode'];
|
|
79
79
|
static MODE_LINES: PlotData['mode'];
|
|
80
|
-
/**
|
|
81
|
-
* Converts the Iris plot style into a plotly chart type
|
|
82
|
-
* @param plotStyle The plotStyle to use, see dh.plot.SeriesPlotStyle
|
|
83
|
-
* @param isBusinessTime If the plot is using business time for an axis
|
|
84
|
-
*/
|
|
85
|
-
static getPlotlyChartType(plotStyle: SeriesPlotStyle, isBusinessTime: boolean): PlotType | undefined;
|
|
86
|
-
/**
|
|
87
|
-
* Converts the Iris plot style into a plotly chart mode
|
|
88
|
-
* @param plotStyle The plotStyle to use, see dh.plot.SeriesPlotStyle.*
|
|
89
|
-
* @param areLinesVisible Whether lines are visible or not
|
|
90
|
-
* @param areShapesVisible Whether shapes are visible or not
|
|
91
|
-
*/
|
|
92
|
-
static getPlotlyChartMode(plotStyle: SeriesPlotStyle, areLinesVisible?: boolean, areShapesVisible?: boolean): PlotData['mode'] | undefined;
|
|
93
|
-
/**
|
|
94
|
-
* Get the property to set on the series data for plotly
|
|
95
|
-
* @param plotStyle The plot style of the series
|
|
96
|
-
* @param sourceType The source type for the series
|
|
97
|
-
*/
|
|
98
|
-
static getPlotlyProperty(plotStyle: SeriesPlotStyle, sourceType: SourceType): string;
|
|
99
|
-
static getPlotlySeriesOrientation(series: Series): 'h' | 'v' | undefined;
|
|
100
80
|
/**
|
|
101
81
|
* Generate the plotly error bar data from the passed in data.
|
|
102
82
|
* Iris passes in the values as absolute, plotly needs them as relative.
|
|
@@ -107,15 +87,8 @@ declare class ChartUtils {
|
|
|
107
87
|
* @returns The error_x object required by plotly, or null if none is required
|
|
108
88
|
*/
|
|
109
89
|
static getPlotlyErrorBars(x: number[], xLow: number[], xHigh: number[]): ErrorBar;
|
|
110
|
-
static getPlotlyDateFormat(formatter: Formatter | null, columnType: string, formatPattern: string): Partial<LayoutAxis>;
|
|
111
90
|
static convertNumberPrefix(prefix: string): string;
|
|
112
91
|
static getPlotlyNumberFormat(formatter: Formatter | null, columnType: string, formatPattern: string): Partial<LayoutAxis> | null;
|
|
113
|
-
/**
|
|
114
|
-
* Gets the plotly axis formatting information from the source passed in
|
|
115
|
-
* @param source The Source to get the formatter information from
|
|
116
|
-
* @param formatter The current formatter for formatting data
|
|
117
|
-
*/
|
|
118
|
-
static getPlotlyAxisFormat(source: SeriesDataSource, formatter?: Formatter | null): Partial<PlotlyAxis> | null;
|
|
119
92
|
/**
|
|
120
93
|
* Adds tick spacing for an axis that has gapBetweenMajorTicks defined.
|
|
121
94
|
*
|
|
@@ -150,14 +123,51 @@ declare class ChartUtils {
|
|
|
150
123
|
*/
|
|
151
124
|
static makeSeriesData(type: PlotType | undefined, mode: PlotData['mode'] | undefined, name: string, showLegend: boolean | null, orientation?: 'h' | 'v'): Partial<PlotData>;
|
|
152
125
|
/**
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
-
* @param
|
|
158
|
-
|
|
126
|
+
* Get the Plotly marker symbol for the provided Deephaven shape
|
|
127
|
+
* Deephaven shapes: https://deephaven.io/enterprise/docs/plotting/visual-formatting/#point-formatting
|
|
128
|
+
* Plotly shapes: https://plotly.com/javascript/reference/scattergl/#scattergl-marker-symbol
|
|
129
|
+
* Table of plotly shapes: https://plotly.com/python/marker-style/#custom-marker-symbols
|
|
130
|
+
* @param deephavenShape Deephaven shape to get the marker symbol for
|
|
131
|
+
*/
|
|
132
|
+
static getMarkerSymbol(deephavenShape: string): MarkerSymbol;
|
|
133
|
+
/**
|
|
134
|
+
* Get all axes for a given `Figure`. Iterates through all charts axes and concatenates them.
|
|
135
|
+
* @param figure Figure to get all axes for
|
|
136
|
+
*/
|
|
137
|
+
static getAllAxes(figure: Figure): Axis[];
|
|
138
|
+
/**
|
|
139
|
+
* Retrieve the chart that contains the passed in series from the figure
|
|
140
|
+
* @param figure The figure to retrieve the chart from
|
|
141
|
+
* @param series The series to get the chart for
|
|
142
|
+
*/
|
|
143
|
+
static getChartForSeries(figure: Figure, series: Series): Chart | null;
|
|
144
|
+
/**
|
|
145
|
+
* Get an object mapping axis to their ranges
|
|
146
|
+
* @param layout The plotly layout object to get the ranges from
|
|
147
|
+
* @returns An object mapping the axis name to it's range
|
|
148
|
+
*/
|
|
149
|
+
static getLayoutRanges(layout: Layout): Record<string, Range[]>;
|
|
150
|
+
static getAxisLayoutProperty(axisProperty: 'x' | 'y', axisIndex: number): LayoutAxisKey;
|
|
151
|
+
/**
|
|
152
|
+
* Converts an open or close period to a declimal. e.g '09:30" to 9.5
|
|
153
|
+
*
|
|
154
|
+
* @param period the open or close value of the period
|
|
155
|
+
*/
|
|
156
|
+
static periodToDecimal(period: string): number;
|
|
157
|
+
/**
|
|
158
|
+
* Groups an array and returns a map
|
|
159
|
+
* @param array The object to group
|
|
160
|
+
* @param property The property name to group by
|
|
161
|
+
* @returns A map containing the items grouped by their values for the property
|
|
162
|
+
*/
|
|
163
|
+
static groupArray<T, P extends keyof T>(array: T[], property: P): Map<T[P], T[]>;
|
|
164
|
+
/**
|
|
165
|
+
* Parses the colorway property of a theme and returns an array of colors
|
|
166
|
+
* Theme could have a single string with space separated colors or an array of strings representing the colorway
|
|
167
|
+
* @param theme The theme to get colorway from
|
|
168
|
+
* @returns Colorway array for the theme
|
|
159
169
|
*/
|
|
160
|
-
static
|
|
170
|
+
static getColorwayFromTheme(theme?: Readonly<{
|
|
161
171
|
paper_bgcolor: string;
|
|
162
172
|
plot_bgcolor: string;
|
|
163
173
|
title_color: string;
|
|
@@ -174,17 +184,11 @@ declare class ChartUtils {
|
|
|
174
184
|
error_band_fill_color: string;
|
|
175
185
|
ohlc_increasing: string;
|
|
176
186
|
ohlc_decreasing: string;
|
|
177
|
-
}>):
|
|
178
|
-
static
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
* Deephaven shapes: https://deephaven.io/enterprise/docs/plotting/visual-formatting/#point-formatting
|
|
183
|
-
* Plotly shapes: https://plotly.com/javascript/reference/scattergl/#scattergl-marker-symbol
|
|
184
|
-
* Table of plotly shapes: https://plotly.com/python/marker-style/#custom-marker-symbols
|
|
185
|
-
* @param deephavenShape Deephaven shape to get the marker symbol for
|
|
186
|
-
*/
|
|
187
|
-
static getMarkerSymbol(deephavenShape: string): MarkerSymbol;
|
|
187
|
+
}>): string[];
|
|
188
|
+
static titleFromSettings(settings: ChartModelSettings): string;
|
|
189
|
+
private dh;
|
|
190
|
+
private daysOfWeek;
|
|
191
|
+
constructor(dh: DhType);
|
|
188
192
|
/**
|
|
189
193
|
* Retrieve the axis formats from the provided figure.
|
|
190
194
|
* Currently defaults to just the x/y axes.
|
|
@@ -192,35 +196,66 @@ declare class ChartUtils {
|
|
|
192
196
|
* @param formatter The formatter to use when getting the axis format
|
|
193
197
|
* @returns A map of axis layout property names to axis formats
|
|
194
198
|
*/
|
|
195
|
-
|
|
196
|
-
static getChartType(plotStyle: SeriesPlotStyle, isBusinessTime: boolean): PlotType | undefined;
|
|
199
|
+
getAxisFormats(figure: Figure, formatter: Formatter): Map<LayoutAxisKey, Partial<PlotlyAxis>>;
|
|
197
200
|
/**
|
|
198
|
-
*
|
|
199
|
-
* @param
|
|
201
|
+
* Converts the Iris plot style into a plotly chart type
|
|
202
|
+
* @param plotStyle The plotStyle to use, see dh.plot.SeriesPlotStyle
|
|
203
|
+
* @param isBusinessTime If the plot is using business time for an axis
|
|
200
204
|
*/
|
|
201
|
-
|
|
205
|
+
getPlotlyChartType(plotStyle: SeriesPlotStyle, isBusinessTime: boolean): PlotType | undefined;
|
|
202
206
|
/**
|
|
203
|
-
*
|
|
204
|
-
* @param
|
|
207
|
+
* Converts the Iris plot style into a plotly chart mode
|
|
208
|
+
* @param plotStyle The plotStyle to use, see dh.plot.SeriesPlotStyle.*
|
|
209
|
+
* @param areLinesVisible Whether lines are visible or not
|
|
210
|
+
* @param areShapesVisible Whether shapes are visible or not
|
|
205
211
|
*/
|
|
206
|
-
|
|
212
|
+
getPlotlyChartMode(plotStyle: SeriesPlotStyle, areLinesVisible?: boolean | null, areShapesVisible?: boolean | null): PlotData['mode'] | undefined;
|
|
207
213
|
/**
|
|
208
|
-
* Get
|
|
209
|
-
* @param
|
|
214
|
+
* Get the property to set on the series data for plotly
|
|
215
|
+
* @param plotStyle The plot style of the series
|
|
216
|
+
* @param sourceType The source type for the series
|
|
210
217
|
*/
|
|
211
|
-
|
|
218
|
+
getPlotlyProperty(plotStyle: SeriesPlotStyle, sourceType: SourceType): string;
|
|
219
|
+
getPlotlySeriesOrientation(series: Series): 'h' | 'v' | undefined;
|
|
212
220
|
/**
|
|
213
|
-
*
|
|
214
|
-
* @param
|
|
215
|
-
* @param
|
|
221
|
+
* Create a data series (trace) for use with plotly
|
|
222
|
+
* @param series The series to create the series data with
|
|
223
|
+
* @param axisTypeMap The map of axes grouped by type
|
|
224
|
+
* @param seriesVisibility Visibility setting for the series
|
|
225
|
+
* @param theme The theme properties for the plot. See ChartTheme.js for an example
|
|
226
|
+
* @returns The series data (trace) object for use with plotly.
|
|
216
227
|
*/
|
|
217
|
-
|
|
228
|
+
makeSeriesDataFromSeries(series: Series, axisTypeMap: AxisTypeMap, seriesVisibility: boolean | 'legendonly', showLegend?: boolean | null, theme?: Readonly<{
|
|
229
|
+
paper_bgcolor: string;
|
|
230
|
+
plot_bgcolor: string;
|
|
231
|
+
title_color: string;
|
|
232
|
+
colorway: string;
|
|
233
|
+
gridcolor: string;
|
|
234
|
+
linecolor: string;
|
|
235
|
+
zerolinecolor: string;
|
|
236
|
+
activecolor: string;
|
|
237
|
+
rangebgcolor: string;
|
|
238
|
+
area_color: string;
|
|
239
|
+
trend_color: string;
|
|
240
|
+
line_color: string;
|
|
241
|
+
error_band_line_color: string;
|
|
242
|
+
error_band_fill_color: string;
|
|
243
|
+
ohlc_increasing: string;
|
|
244
|
+
ohlc_decreasing: string;
|
|
245
|
+
}>): Partial<PlotData>;
|
|
246
|
+
addSourcesToSeriesData(seriesDataParam: Partial<PlotData>, plotStyle: SeriesPlotStyle, sources: SeriesDataSource[], axisTypeMap: AxisTypeMap): void;
|
|
247
|
+
addStylingToSeriesData(seriesDataParam: Partial<PlotData>, plotStyle: SeriesPlotStyle, theme?: typeof ChartTheme, lineColor?: string | null, shapeColor?: string | null, shape?: string | null, shapeSize?: number | null, seriesVisibility?: 'legendonly' | boolean | null): void;
|
|
248
|
+
getChartType(plotStyle: SeriesPlotStyle, isBusinessTime: boolean): PlotType | undefined;
|
|
218
249
|
/**
|
|
219
|
-
*
|
|
220
|
-
* @param
|
|
221
|
-
* @returns An object mapping the axis name to it's range
|
|
250
|
+
* Return the plotly axis property name
|
|
251
|
+
* @param axisType The axis type to get the property name for
|
|
222
252
|
*/
|
|
223
|
-
|
|
253
|
+
getAxisPropertyName(axisType: AxisType): 'x' | 'y' | null;
|
|
254
|
+
/**
|
|
255
|
+
* Returns the plotly "side" value for the provided axis position
|
|
256
|
+
* @param axisPosition The Iris AxisPosition of the axis
|
|
257
|
+
*/
|
|
258
|
+
getAxisSide(axisPosition: AxisPosition): LayoutAxis['side'] | undefined;
|
|
224
259
|
/**
|
|
225
260
|
* Update the layout with all the axes information for the provided figure
|
|
226
261
|
* @param figure Figure to update the axes for
|
|
@@ -230,7 +265,7 @@ declare class ChartUtils {
|
|
|
230
265
|
* @param plotHeight Height of the plot in pixels
|
|
231
266
|
* @param theme Theme used for displaying the plot
|
|
232
267
|
*/
|
|
233
|
-
|
|
268
|
+
updateFigureAxes(layoutParam: Partial<Layout>, figure: Figure, chartAxisRangeParser?: ChartAxisRangeParser, plotWidth?: number, plotHeight?: number, theme?: Readonly<{
|
|
234
269
|
paper_bgcolor: string;
|
|
235
270
|
plot_bgcolor: string;
|
|
236
271
|
title_color: string;
|
|
@@ -248,7 +283,14 @@ declare class ChartUtils {
|
|
|
248
283
|
ohlc_increasing: string;
|
|
249
284
|
ohlc_decreasing: string;
|
|
250
285
|
}>): void;
|
|
251
|
-
|
|
286
|
+
getChartBounds(figure: Figure, chart: Chart, plotWidth: number, plotHeight: number): ChartBounds;
|
|
287
|
+
getPlotlyDateFormat(formatter: Formatter | null, columnType: string, formatPattern: string): Partial<LayoutAxis>;
|
|
288
|
+
/**
|
|
289
|
+
* Gets the plotly axis formatting information from the source passed in
|
|
290
|
+
* @param source The Source to get the formatter information from
|
|
291
|
+
* @param formatter The current formatter for formatting data
|
|
292
|
+
*/
|
|
293
|
+
getPlotlyAxisFormat(source: SeriesDataSource, formatter?: Formatter | null): Partial<PlotlyAxis> | null;
|
|
252
294
|
/**
|
|
253
295
|
* Updates the axes positions and sizes in the layout object provided.
|
|
254
296
|
* If the axis did not exist in the layout previously, it is created and added.
|
|
@@ -262,7 +304,7 @@ declare class ChartUtils {
|
|
|
262
304
|
* @param bounds The bounds for this set of axes
|
|
263
305
|
* @param axisRangeParser A function to retrieve the range parser for a given axis
|
|
264
306
|
*/
|
|
265
|
-
|
|
307
|
+
updateLayoutAxes(layoutParam: Partial<Layout>, chartAxes: Axis[], figureAxes: Axis[], plotWidth?: number, plotHeight?: number, bounds?: ChartBounds, axisRangeParser?: AxisRangeParser, theme?: Readonly<{
|
|
266
308
|
paper_bgcolor: string;
|
|
267
309
|
plot_bgcolor: string;
|
|
268
310
|
title_color: string;
|
|
@@ -285,8 +327,7 @@ declare class ChartUtils {
|
|
|
285
327
|
* @param layoutParam Layout object to remove stale axes from
|
|
286
328
|
* @param axes All axes in the figure
|
|
287
329
|
*/
|
|
288
|
-
|
|
289
|
-
static getAxisLayoutProperty(axisProperty: 'x' | 'y', axisIndex: number): LayoutAxisKey;
|
|
330
|
+
removeStaleAxes(layoutParam: Partial<Layout>, axes: Axis[]): void;
|
|
290
331
|
/**
|
|
291
332
|
* Updates the layout axis object in place
|
|
292
333
|
* @param layoutAxisParam The plotly layout axis param
|
|
@@ -296,18 +337,12 @@ declare class ChartUtils {
|
|
|
296
337
|
* @param axisSize The size of each axis in percent
|
|
297
338
|
* @param bounds The bounds of the axes domains
|
|
298
339
|
*/
|
|
299
|
-
|
|
340
|
+
updateLayoutAxis(layoutAxisParam: Partial<LayoutAxis>, axis: Axis, axisIndex: number, axisPositionMap: AxisPositionMap, xAxisSize: number, yAxisSize: number, bounds: {
|
|
300
341
|
left: number;
|
|
301
342
|
bottom: number;
|
|
302
343
|
top: number;
|
|
303
344
|
right: number;
|
|
304
345
|
}): void;
|
|
305
|
-
/**
|
|
306
|
-
* Converts an open or close period to a declimal. e.g '09:30" to 9.5
|
|
307
|
-
*
|
|
308
|
-
* @param period the open or close value of the period
|
|
309
|
-
*/
|
|
310
|
-
static periodToDecimal(period: string): number;
|
|
311
346
|
/**
|
|
312
347
|
* Creates range break bounds for plotly from business days.
|
|
313
348
|
* For example a standard business week of ['MONDAY','TUESDAY','WEDNESDAY','THURSDAY','FRIDAY']
|
|
@@ -316,7 +351,7 @@ declare class ChartUtils {
|
|
|
316
351
|
*
|
|
317
352
|
* @param businessDays the days to display on the x-axis
|
|
318
353
|
*/
|
|
319
|
-
|
|
354
|
+
createBoundsFromDays(businessDays: string[]): Range[];
|
|
320
355
|
/**
|
|
321
356
|
* Creates an array of range breaks for all holidays.
|
|
322
357
|
*
|
|
@@ -324,7 +359,7 @@ declare class ChartUtils {
|
|
|
324
359
|
* @param calendarTimeZone the time zone for the business calendar
|
|
325
360
|
* @param formatterTimeZone the time zone for the formatter
|
|
326
361
|
*/
|
|
327
|
-
|
|
362
|
+
createRangeBreakValuesFromHolidays(holidays: Holiday[], calendarTimeZone: TimeZone, formatterTimeZone?: TimeZone): Rangebreaks[];
|
|
328
363
|
/**
|
|
329
364
|
* Creates the range break value for a full holiday. A full holiday is day that has no business periods.
|
|
330
365
|
*
|
|
@@ -332,7 +367,7 @@ declare class ChartUtils {
|
|
|
332
367
|
* @param calendarTimeZone the time zone for the business calendar
|
|
333
368
|
* @param formatterTimeZone the time zone for the formatter
|
|
334
369
|
*/
|
|
335
|
-
|
|
370
|
+
createFullHoliday(holiday: Holiday, calendarTimeZone: TimeZone, formatterTimeZone?: TimeZone): string;
|
|
336
371
|
/**
|
|
337
372
|
* Creates the range break for a partial holiday. A partial holiday is holiday with business periods
|
|
338
373
|
* that are different than the default business periods.
|
|
@@ -341,7 +376,7 @@ declare class ChartUtils {
|
|
|
341
376
|
* @param calendarTimeZone the time zone for the business calendar
|
|
342
377
|
* @param formatterTimeZone the time zone for the formatter
|
|
343
378
|
*/
|
|
344
|
-
|
|
379
|
+
createPartialHoliday(holiday: Holiday, calendarTimeZone: TimeZone, formatterTimeZone?: TimeZone): {
|
|
345
380
|
values: string[];
|
|
346
381
|
dvalue: number;
|
|
347
382
|
}[];
|
|
@@ -352,27 +387,57 @@ declare class ChartUtils {
|
|
|
352
387
|
* @param calendarTimeZone the time zone for the business calendar
|
|
353
388
|
* @param formatterTimeZone the time zone for the formatter
|
|
354
389
|
*/
|
|
355
|
-
|
|
390
|
+
adjustDateForTimeZone(dateString: string, calendarTimeZone: TimeZone, formatterTimeZone?: TimeZone): string;
|
|
356
391
|
/**
|
|
357
|
-
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
360
|
-
*
|
|
392
|
+
* Creates the Figure settings from the Chart Builder settings
|
|
393
|
+
* This should be deprecated at some point, and have Chart Builder create the figure settings directly.
|
|
394
|
+
* This logic will still need to exist to translate existing charts, but could be part of a migration script
|
|
395
|
+
* to translate the data.
|
|
396
|
+
* Change when we decide to add more functionality to the Chart Builder.
|
|
397
|
+
* @param settings The chart builder settings
|
|
398
|
+
* @param settings.title The title for this figure
|
|
399
|
+
* @param settings.xAxis The name of the column to use for the x-axis
|
|
400
|
+
* @param settings.series The name of the columns to use for the series of this figure
|
|
401
|
+
* @param settings.type The plot style for this figure
|
|
361
402
|
*/
|
|
362
|
-
|
|
403
|
+
makeFigureSettings(settings: ChartModelSettings, table: TableTemplate): {
|
|
404
|
+
charts: {
|
|
405
|
+
chartType: string;
|
|
406
|
+
axes: {
|
|
407
|
+
formatType: string;
|
|
408
|
+
type: string;
|
|
409
|
+
position: string;
|
|
410
|
+
}[];
|
|
411
|
+
series: {
|
|
412
|
+
plotStyle: string;
|
|
413
|
+
name: string;
|
|
414
|
+
dataSources: {
|
|
415
|
+
type: string;
|
|
416
|
+
columnName: string;
|
|
417
|
+
axis: {
|
|
418
|
+
formatType: string;
|
|
419
|
+
type: string;
|
|
420
|
+
position: string;
|
|
421
|
+
};
|
|
422
|
+
table: TableTemplate;
|
|
423
|
+
}[];
|
|
424
|
+
}[];
|
|
425
|
+
}[];
|
|
426
|
+
title: string;
|
|
427
|
+
};
|
|
363
428
|
/**
|
|
364
429
|
* Unwraps a value provided from API to a value plotly can understand
|
|
365
430
|
* Eg. Unwraps DateWrapper, LongWrapper objects.
|
|
366
431
|
*/
|
|
367
|
-
|
|
432
|
+
unwrapValue(value: unknown, timeZone?: TimeZone): unknown;
|
|
368
433
|
/**
|
|
369
434
|
*
|
|
370
435
|
* @param value The value to wrap up
|
|
371
436
|
* @param columnType The type of column this value is from
|
|
372
437
|
* @param timeZone The time zone if applicable
|
|
373
438
|
*/
|
|
374
|
-
|
|
375
|
-
|
|
439
|
+
wrapValue(value: unknown, columnType: string, timeZone?: TimeZone | null): unknown;
|
|
440
|
+
makeLayoutAxis(type: AxisType, theme?: Readonly<{
|
|
376
441
|
paper_bgcolor: string;
|
|
377
442
|
plot_bgcolor: string;
|
|
378
443
|
title_color: string;
|
|
@@ -390,31 +455,7 @@ declare class ChartUtils {
|
|
|
390
455
|
ohlc_increasing: string;
|
|
391
456
|
ohlc_decreasing: string;
|
|
392
457
|
}>): Partial<LayoutAxis>;
|
|
393
|
-
|
|
394
|
-
* Parses the colorway property of a theme and returns an array of colors
|
|
395
|
-
* Theme could have a single string with space separated colors or an array of strings representing the colorway
|
|
396
|
-
* @param theme The theme to get colorway from
|
|
397
|
-
* @returns Colorway array for the theme
|
|
398
|
-
*/
|
|
399
|
-
static getColorwayFromTheme(theme?: Readonly<{
|
|
400
|
-
paper_bgcolor: string;
|
|
401
|
-
plot_bgcolor: string;
|
|
402
|
-
title_color: string;
|
|
403
|
-
colorway: string;
|
|
404
|
-
gridcolor: string;
|
|
405
|
-
linecolor: string;
|
|
406
|
-
zerolinecolor: string;
|
|
407
|
-
activecolor: string;
|
|
408
|
-
rangebgcolor: string;
|
|
409
|
-
area_color: string;
|
|
410
|
-
trend_color: string;
|
|
411
|
-
line_color: string;
|
|
412
|
-
error_band_line_color: string;
|
|
413
|
-
error_band_fill_color: string;
|
|
414
|
-
ohlc_increasing: string;
|
|
415
|
-
ohlc_decreasing: string;
|
|
416
|
-
}>): string[];
|
|
417
|
-
static makeDefaultLayout(theme?: Readonly<{
|
|
458
|
+
makeDefaultLayout(theme?: Readonly<{
|
|
418
459
|
paper_bgcolor: string;
|
|
419
460
|
plot_bgcolor: string;
|
|
420
461
|
title_color: string;
|
|
@@ -436,47 +477,9 @@ declare class ChartUtils {
|
|
|
436
477
|
* Hydrate settings from a JSONable object
|
|
437
478
|
* @param settings Dehydrated settings
|
|
438
479
|
*/
|
|
439
|
-
|
|
480
|
+
hydrateSettings(settings: ChartModelSettings): Omit<ChartModelSettings, 'type'> & {
|
|
440
481
|
type?: SeriesPlotStyle;
|
|
441
482
|
};
|
|
442
|
-
static titleFromSettings(settings: ChartModelSettings): string;
|
|
443
|
-
/**
|
|
444
|
-
* Creates the Figure settings from the Chart Builder settings
|
|
445
|
-
* This should be deprecated at some point, and have Chart Builder create the figure settings directly.
|
|
446
|
-
* This logic will still need to exist to translate existing charts, but could be part of a migration script
|
|
447
|
-
* to translate the data.
|
|
448
|
-
* Change when we decide to add more functionality to the Chart Builder.
|
|
449
|
-
* @param settings The chart builder settings
|
|
450
|
-
* @param settings.title The title for this figure
|
|
451
|
-
* @param settings.xAxis The name of the column to use for the x-axis
|
|
452
|
-
* @param settings.series The name of the columns to use for the series of this figure
|
|
453
|
-
* @param settings.type The plot style for this figure
|
|
454
|
-
*/
|
|
455
|
-
static makeFigureSettings(settings: ChartModelSettings, table: TableTemplate): {
|
|
456
|
-
charts: {
|
|
457
|
-
chartType: string;
|
|
458
|
-
axes: {
|
|
459
|
-
formatType: string;
|
|
460
|
-
type: string;
|
|
461
|
-
position: string;
|
|
462
|
-
}[];
|
|
463
|
-
series: {
|
|
464
|
-
plotStyle: string;
|
|
465
|
-
name: string;
|
|
466
|
-
dataSources: {
|
|
467
|
-
type: string;
|
|
468
|
-
columnName: string;
|
|
469
|
-
axis: {
|
|
470
|
-
formatType: string;
|
|
471
|
-
type: string;
|
|
472
|
-
position: string;
|
|
473
|
-
};
|
|
474
|
-
table: TableTemplate;
|
|
475
|
-
}[];
|
|
476
|
-
}[];
|
|
477
|
-
}[];
|
|
478
|
-
title: string;
|
|
479
|
-
};
|
|
480
483
|
}
|
|
481
484
|
export default ChartUtils;
|
|
482
485
|
//# sourceMappingURL=ChartUtils.d.ts.map
|