UNPKG

ag-charts-angular

Version:

<picture><source media="(prefers-color-scheme: dark)" srcset="./.github/banner-dark.png"><source media="(prefers-color-scheme: light)" srcset="./.github/banner-light.png"><img alt="AG Charts canvas-based charting trusted by the community, built for enterp

1 lines 12.8 kB
{"version":3,"file":"ag-charts-angular.mjs","sources":["../../../projects/ag-charts-angular/src/lib/ag-charts-base.ts","../../../projects/ag-charts-angular/src/lib/ag-charts.component.ts","../../../projects/ag-charts-angular/src/lib/ag-financial-charts.component.ts","../../../projects/ag-charts-angular/src/lib/ag-gauge.component.ts","../../../projects/ag-charts-angular/src/lib/ag-charts.module.ts","../../../projects/ag-charts-angular/src/ag-charts-angular.ts"],"sourcesContent":["import { AfterViewInit, Component, EventEmitter, NgZone, OnChanges, OnDestroy } from '@angular/core';\n\nimport { AgBaseChartListeners, AgChartInstance, AgChartLegendListeners, AgSeriesListeners } from 'ag-charts-community';\n\n@Component({\n template: '',\n})\nexport abstract class AgChartsBase<Options extends {}> implements AfterViewInit, OnChanges, OnDestroy {\n public chart?: AgChartInstance;\n public abstract options: Options;\n public abstract onChartReady: EventEmitter<AgChartInstance>;\n\n protected _nativeElement: any;\n protected _initialised = false;\n protected ngZone!: NgZone;\n\n protected abstract createChart(options: Options): any;\n\n ngAfterViewInit(): void {\n const options = this.patchChartOptions(this.options);\n\n this.chart = this.runOutsideAngular(() => this.createChart(options));\n this._initialised = true;\n\n (this.chart as any).chart.waitForUpdate().then(() => {\n this.onChartReady.emit(this.chart);\n });\n }\n\n // noinspection JSUnusedGlobalSymbols,JSUnusedLocalSymbols\n ngOnChanges(_changes: any): void {\n this.runOutsideAngular(() => {\n if (!this._initialised || !this.chart) {\n return;\n }\n this.chart.update(this.patchChartOptions(this.options));\n });\n }\n\n public ngOnDestroy(): void {\n if (this._initialised && this.chart) {\n this.chart.destroy();\n this.chart = undefined;\n this._initialised = false;\n }\n }\n\n private patchChartOptions(propsOptions: any): any {\n const patchListeners = (\n listenerConfig: undefined | AgChartLegendListeners | AgSeriesListeners<any> | AgBaseChartListeners<any>\n ) => {\n const config = listenerConfig ?? ({} as any);\n for (const listenerName of Object.keys(config)) {\n const listener = config[listenerName];\n if (typeof listener !== 'function') continue;\n\n config[listenerName] = (...args: any) => {\n this.runInsideAngular(() => listener(...args));\n };\n }\n };\n\n patchListeners(propsOptions?.legend?.listeners);\n patchListeners(propsOptions?.listeners);\n propsOptions.series?.forEach((series: any) => {\n patchListeners(series.listeners);\n });\n\n if (propsOptions.container) {\n return propsOptions;\n }\n\n return { ...propsOptions, container: this._nativeElement };\n }\n\n private runOutsideAngular<T>(callback: () => T): T {\n return this.ngZone ? this.ngZone.runOutsideAngular(callback) : callback();\n }\n\n private runInsideAngular<T>(callback: () => T): T {\n return this.ngZone ? this.ngZone.run(callback) : callback();\n }\n}\n","import { Component, ElementRef, EventEmitter, Input, NgZone, Output, ViewEncapsulation } from '@angular/core';\n\nimport { AgChartInstance, AgChartOptions, AgCharts as AgChartsAPI } from 'ag-charts-community';\n\nimport { AgChartsBase } from './ag-charts-base';\n\n// noinspection AngularIncorrectTemplateDefinition\n@Component({\n selector: 'ag-charts',\n standalone: true,\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AgCharts extends AgChartsBase<AgChartOptions> {\n @Input()\n public options: AgChartOptions = {};\n\n @Output()\n public onChartReady: EventEmitter<AgChartInstance> = new EventEmitter();\n\n constructor(\n elementDef: ElementRef,\n protected ngZone: NgZone\n ) {\n super();\n this._nativeElement = elementDef.nativeElement;\n }\n\n protected createChart(options: AgChartOptions) {\n return AgChartsAPI.create(options);\n }\n}\n","import { Component, ElementRef, EventEmitter, Input, NgZone, Output, ViewEncapsulation } from '@angular/core';\n\nimport { AgChartInstance, AgCharts as AgChartsAPI, AgFinancialChartOptions } from 'ag-charts-community';\n\nimport { AgChartsBase } from './ag-charts-base';\n\n// noinspection AngularIncorrectTemplateDefinition\n@Component({\n selector: 'ag-financial-charts',\n standalone: true,\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AgFinancialCharts extends AgChartsBase<AgFinancialChartOptions> {\n @Input()\n public options: AgFinancialChartOptions = {};\n\n @Output()\n public onChartReady: EventEmitter<AgChartInstance> = new EventEmitter();\n\n constructor(\n elementDef: ElementRef,\n protected ngZone: NgZone\n ) {\n super();\n this._nativeElement = elementDef.nativeElement;\n }\n\n protected createChart(options: AgFinancialChartOptions) {\n return AgChartsAPI.createFinancialChart(options);\n }\n}\n","import { Component, ElementRef, EventEmitter, Input, NgZone, Output, ViewEncapsulation } from '@angular/core';\n\nimport { AgChartInstance, AgCharts as AgChartsAPI, AgGaugeOptions } from 'ag-charts-community';\n\nimport { AgChartsBase } from './ag-charts-base';\n\n// noinspection AngularIncorrectTemplateDefinition\n@Component({\n selector: 'ag-gauge',\n standalone: true,\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AgGauge extends AgChartsBase<AgGaugeOptions> {\n @Input()\n public options: AgGaugeOptions = { type: 'radial-gauge', value: 0 };\n\n @Output()\n public onChartReady: EventEmitter<AgChartInstance> = new EventEmitter();\n\n constructor(\n elementDef: ElementRef,\n protected ngZone: NgZone\n ) {\n super();\n this._nativeElement = elementDef.nativeElement;\n }\n\n protected createChart(options: AgGaugeOptions) {\n return AgChartsAPI.createGauge(options);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { AgCharts } from './ag-charts.component';\nimport { AgFinancialCharts } from './ag-financial-charts.component';\nimport { AgGauge } from './ag-gauge.component';\n\n@NgModule({\n declarations: [],\n imports: [AgCharts, AgFinancialCharts, AgGauge],\n exports: [AgCharts, AgFinancialCharts, AgGauge],\n})\nexport class AgChartsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["AgChartsAPI"],"mappings":"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"}