import React from "react";
import { inject, observer } from "mobx-react";
import { DashboardLayoutComponent, PanelsDirective, PanelDirective } from '@syncfusion/ej2-react-layouts';
import {
AxisModel,
ChartComponent,
ColumnSeries,
Inject,
Legend,
SeriesCollectionDirective,
SeriesDirective,
Tooltip,
TooltipSettingsModel } from "@syncfusion/ej2-react-charts";
const TestDiv = () => {
return (
<div style={{height: "100%", width: "100%"}}>
<div style={{height: "50%", width: "50%", backgroundColor: "blue"}} />
div>
)
}
const TestChart = (props: any) => {
const { name, id } = props;
const primaryxAxis: AxisModel = { valueType: "Double" },
primaryyAxis: AxisModel = { labelFormat: "P", minimum: 0, maximum: 1 },
legendSettings: AxisModel = { visible: true },
tooltip: TooltipSettingsModel = { enable: true, shared: false };
const data = [
{t: 0, Y: 1},
{t: 1, Y: 3},
{t: 2, Y: 2},
{t: 3, Y: 4},
]
return (
<div className = "e-card" style={{ width: "100%", height: "100%" }}>
<div className = "e-card-content">
<ChartComponent
id={name}
primaryXAxis={primaryxAxis}
primaryYAxis={primaryyAxis}
title={id}
description={id}
legendSettings={legendSettings}
tooltip={tooltip}
width="50%"
height="50%"
>
<Inject services={[ColumnSeries, Tooltip, Legend]}/>
<SeriesCollectionDirective>
<SeriesDirective dataSource={data} xName="t" yName="Y" name="Mortality Rate" type="Column" /*marker={marker} */ />
<SeriesDirective dataSource={data} xName="t" yName="Y" name="Survivors" type="Column" /* marker={marker} */ />
SeriesCollectionDirective>
ChartComponent>
div>
div>
)
}
const TestDashboard = () => {
const cellSpacing = [10, 10];
return (
<div>
<DashboardLayoutComponent id="dashboard_default" columns={6} cellSpacing={cellSpacing} allowResizing={false}>
<PanelsDirective>
<PanelDirective sizeX={4} sizeY={1} row={0} col={0} content={() => <TestDiv />} />
<PanelDirective sizeX={2} sizeY={1} row={0} col={5} content={() => <TestDiv />} />
<PanelDirective sizeX={2} sizeY={1} row={1} col={0} content={() => <TestDiv />} />
<PanelDirective sizeX={4} sizeY={1} row={1} col={3} content={() => <TestDiv />} />
<PanelDirective sizeX={4} sizeY={1} row={0} col={0} content={() => <TestChart name="Chart1" id="1" />} />
<PanelDirective sizeX={2} sizeY={1} row={0} col={5} content={() => <TestChart name="Chart2" id="2" />} />
<PanelDirective sizeX={2} sizeY={1} row={1} col={0} content={() => <TestChart name="Chart3" id="3" />} />
<PanelDirective sizeX={4} sizeY={1} row={1} col={3} content={() => <TestChart name="Chart4" id="4" />} />
PanelsDirective>
DashboardLayoutComponent>
div>
)
};
export default TestDashboard;
