UNPKG

veritatisquam

Version:
61 lines (54 loc) 1.51 kB
// Internal Imports import { AxisChart } from '../axis-chart'; import * as Configuration from '../configuration'; import { ChartConfig, LollipopChartOptions } from '../interfaces/index'; import { Tools } from '../tools'; import { Skeletons } from '../interfaces/enums'; // Components import { Grid, Ruler, Scatter, Lollipop, TwoDimensionalAxes, // the imports below are needed because of typescript bug (error TS4029) Tooltip, Legend, LayoutComponent, Skeleton, } from '../components/index'; export class LollipopChart extends AxisChart { constructor( holder: Element, chartConfigs: ChartConfig<LollipopChartOptions> ) { super(holder, chartConfigs); // Merge the default options for this chart // With the user provided options this.model.setOptions( Tools.mergeDefaultChartOptions( Configuration.options.lollipopChart, chartConfigs.options ) ); // Initialize data, services, components etc. this.init(holder, chartConfigs); } getComponents() { // Specify what to render inside the graph-frame const graphFrameComponents: any[] = [ new TwoDimensionalAxes(this.model, this.services), new Grid(this.model, this.services), new Ruler(this.model, this.services), new Lollipop(this.model, this.services), new Scatter(this.model, this.services), new Skeleton(this.model, this.services, { skeleton: Skeletons.GRID, }), ]; const components: any[] = this.getAxisChartComponents( graphFrameComponents ); return components; } }