aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/nodes/DataVizBox/ChartInterface.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views/nodes/DataVizBox/ChartInterface.ts')
-rw-r--r--src/client/views/nodes/DataVizBox/ChartInterface.ts36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/client/views/nodes/DataVizBox/ChartInterface.ts b/src/client/views/nodes/DataVizBox/ChartInterface.ts
new file mode 100644
index 000000000..494242ac5
--- /dev/null
+++ b/src/client/views/nodes/DataVizBox/ChartInterface.ts
@@ -0,0 +1,36 @@
+import { Doc } from '../../../../fields/Doc';
+import { DataPoint } from './ChartBox';
+import { LineChart } from './components/LineChart';
+
+export interface Chart {
+ tooltipContent: (data: DataPoint) => string;
+ drawChart: () => void;
+ height: number;
+ width: number;
+ // TODO: nda - probably want to get rid of this to keep charts more generic
+ _getAnchor: () => Doc;
+ setCurrSelected: (x: number, y: number) => void;
+}
+
+export interface ChartProps {
+ chartData: ChartData;
+ width: number;
+ height: number;
+ dataDoc: Doc;
+ fieldKey: string;
+ // returns linechart component but should be generic chart
+ setCurrChart: (chart: Chart) => void;
+ getAnchor: () => Doc;
+ margin: {
+ top: number;
+ right: number;
+ bottom: number;
+ left: number;
+ };
+}
+
+export interface ChartData {
+ xLabel: string;
+ yLabel: string;
+ data: DataPoint[][];
+}