{"version":3,"file":"primeng-chart.umd.js","sources":["../../src/app/components/chart/chart.ts","../../src/app/components/chart/primeng-chart.ts"],"sourcesContent":["import {NgModule,Component,ElementRef,AfterViewInit,OnDestroy,Input,Output,EventEmitter,ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport * as Chart from 'chart.js';\n\n@Component({\n    selector: 'p-chart',\n    template: `\n        <div style=\"position:relative\" [style.width]=\"responsive && !width ? null : width\" [style.height]=\"responsive && !height ? null : height\">\n            <canvas [attr.width]=\"responsive && !width ? null : width\" [attr.height]=\"responsive && !height ? null : height\" (click)=\"onCanvasClick($event)\"></canvas>\n        </div>\n    `,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None\n})\nexport class UIChart implements AfterViewInit, OnDestroy {\n\n    @Input() type: string;\n\n    @Input() plugins: any[] = [];\n    \n    @Input() width: string;\n    \n    @Input() height: string;\n\n    @Input() responsive: boolean = true;\n    \n    @Output() onDataSelect: EventEmitter<any> = new EventEmitter();\n\n    initialized: boolean;\n    \n    _data: any;\n\n    _options: any = {};\n\n    chart: any;\n\n    constructor(public el: ElementRef) {}\n    \n    @Input() get data(): any {\n        return this._data;\n    }\n\n    set data(val:any) {\n        this._data = val;\n        this.reinit();\n    }\n\n    @Input() get options(): any {\n        return this._options;\n    }\n\n    set options(val:any) {\n        this._options = val;\n        this.reinit();\n    }\n\n    ngAfterViewInit() {\n        this.initChart();\n        this.initialized = true;\n    }\n\n    onCanvasClick(event) {\n        if (this.chart) {\n            let element = this.chart.getElementAtEvent(event);\n            let dataset = this.chart.getDatasetAtEvent(event);\n            if (element && element[0] && dataset) {\n                this.onDataSelect.emit({originalEvent: event, element: element[0], dataset: dataset});\n            }\n        }\n    }\n\n    initChart() {\n        let opts = this.options||{};\n        opts.responsive = this.responsive;\n\n        // allows chart to resize in responsive mode\n        if (opts.responsive&&(this.height||this.width)) {\n            opts.maintainAspectRatio = false;\n        }\n\n        this.chart = new Chart(this.el.nativeElement.children[0].children[0], {\n            type: this.type,\n            data: this.data,\n            options: this.options,\n            plugins: this.plugins\n        });\n    }\n    \n    getCanvas() {\n        return this.el.nativeElement.children[0].children[0];\n    }\n    \n    getBase64Image() {\n        return this.chart.toBase64Image();\n    }\n    \n    generateLegend() {\n        if (this.chart) {\n            return this.chart.generateLegend();\n        }\n    }\n    \n    refresh() {\n        if (this.chart) {\n            this.chart.update();\n        }\n    }\n    \n    reinit() {\n        if (this.chart) {\n            this.chart.destroy();\n            this.initChart();\n        }\n    }\n    \n    ngOnDestroy() {\n        if (this.chart) {\n            this.chart.destroy();\n            this.initialized = false;\n            this.chart = null;\n        }\n    }\n}\n\n@NgModule({\n    imports: [CommonModule],\n    exports: [UIChart],\n    declarations: [UIChart]\n})\nexport class ChartModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["EventEmitter","Chart","Component","ChangeDetectionStrategy","ViewEncapsulation","Input","Output","CommonModule","NgModule"],"mappings":"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"}