{"version":3,"file":"angular-highcharts.mjs","sources":["../../../projects/angular-highcharts/src/lib/chart.ts","../../../projects/angular-highcharts/src/lib/mapchart.ts","../../../projects/angular-highcharts/src/lib/stockchart.ts","../../../projects/angular-highcharts/src/lib/highcharts-gantt.ts","../../../projects/angular-highcharts/src/lib/chart.directive.ts","../../../projects/angular-highcharts/src/lib/chart.service.ts","../../../projects/angular-highcharts/src/lib/chart.module.ts","../../../projects/angular-highcharts/src/public-api.ts","../../../projects/angular-highcharts/src/angular-highcharts.ts"],"sourcesContent":["import { ElementRef } from '@angular/core';\nimport Highcharts from 'highcharts/esm/highcharts.src';\nimport { AsyncSubject, Observable } from 'rxjs';\n\n/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n * @author Felix Itzenplitz\n * @author Timothy A. Perez (contributor)\n */\nexport type Point = number | [number, number] | Highcharts.Point;\n\nexport class Chart {\n  private refSubject: AsyncSubject<Highcharts.Chart> = new AsyncSubject();\n  ref$: Observable<Highcharts.Chart> = this.refSubject.asObservable();\n  /**\n   * @deprecated Deprecated. Please use `ref$`.\n   */\n  ref: Highcharts.Chart | undefined;\n\n  constructor(private options: Highcharts.Options = { series: [] }) {}\n\n  /**\n   * Add Point\n   * @param point         Highcharts.DataPoint, number touple or number\n   * @param serieIndex    Index position of series. This defaults to 0.\n   * @param redraw        Flag whether or not to redraw point. This defaults to true.\n   * @param shift         Shift point to the start of series. This defaults to false.\n   */\n  addPoint(point: Point, serieIndex: number = 0, redraw: boolean = true, shift: boolean = false): void {\n    this.ref$.subscribe(chart => {\n      if (chart.series.length > serieIndex) {\n        chart.series[serieIndex].addPoint(point, redraw, shift);\n      }\n    });\n  }\n\n  /**\n   * Add Series\n   * @param series        Series Configuration\n   * @param redraw        Flag whether or not to redraw series. This defaults to true.\n   * @param animation     Whether to apply animation, and optionally animation configuration. This defaults to false.\n   */\n  addSeries(series: Highcharts.SeriesOptionsType, redraw = true, animation: boolean): void {\n    this.ref$.subscribe(chart => {\n      chart.addSeries(series, redraw, animation);\n    });\n  }\n\n  /**\n   * Remove Point\n   * @param pointIndex    Index of Point\n   * @param serieIndex    Specified Index of Series. Defaults to 0.\n   */\n  removePoint(pointIndex: number, serieIndex = 0): void {\n    this.ref$.subscribe(chart => {\n      if (chart.series.length > serieIndex && chart.series[serieIndex].data.length > pointIndex) {\n        chart.series[serieIndex].removePoint(pointIndex, true);\n      }\n    });\n  }\n\n  /**\n   * Remove Series\n   * @param seriesIndex    Index position of series to remove.\n   */\n  removeSeries(seriesIndex: number): void {\n    this.ref$.subscribe(chart => {\n      if (chart.series.length > seriesIndex) {\n        chart.series[seriesIndex].remove(true);\n      }\n    });\n  }\n\n  init(el: ElementRef): void {\n    if (!this.ref) {\n      Highcharts.chart(el.nativeElement, this.options, chart => {\n        if (!this.ref) { // TODO: workaround for doubled callbacks on exporting charts: issue #238\n          this.refSubject.next(chart);\n          this.ref = chart;\n          this.refSubject.complete();\n        }\n      });\n    }\n  }\n\n  destroy(): void {\n    if (this.ref) {\n      this.options = this.ref.options;\n      this.ref.destroy();\n      this.ref = undefined;\n\n      // new init subject\n      this.refSubject = new AsyncSubject();\n      this.ref$ = this.refSubject.asObservable();\n    }\n  }\n}\n","import { ElementRef } from '@angular/core';\nimport Highmaps from 'highcharts/esm/highmaps.src';\nimport { AsyncSubject, Observable } from 'rxjs';\n\n/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n */\nexport class MapChart {\n  private refSubject: AsyncSubject<Highmaps.Chart> = new AsyncSubject();\n  ref$: Observable<Highmaps.Chart> = this.refSubject.asObservable();\n  /**\n   * @deprecated Deprecated. Please use `ref$`.\n   */\n  ref: Highmaps.Chart | undefined;\n\n  constructor(private options: Highmaps.Options = { series: [] }) {}\n\n  init(el: ElementRef): void {\n    if (!this.ref) {\n      Highmaps.mapChart(el.nativeElement, this.options, chart => {\n        if (!this.ref) { // TODO: workaround for doubled callbacks on exporting charts: issue #238\n          this.refSubject.next(chart);\n          this.ref = chart;\n          this.refSubject.complete();\n        }\n      });\n    }\n  }\n\n  destroy(): void {\n    if (this.ref) {\n      this.options = this.ref.options;\n      this.ref.destroy();\n      this.ref = undefined;\n\n      // new init subject\n      this.refSubject = new AsyncSubject();\n      this.ref$ = this.refSubject.asObservable();\n    }\n  }\n}\n","import { ElementRef } from '@angular/core';\nimport Highstock from 'highcharts/esm/highstock.src';\nimport { AsyncSubject, Observable } from 'rxjs';\n\n\n/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n *\n * @author Felix Itzenplitz\n * @author Timothy A. Perez (contributor)\n */\nexport class StockChart {\n  private refSubject: AsyncSubject<Highstock.Chart> = new AsyncSubject();\n  ref$: Observable<Highstock.Chart> = this.refSubject.asObservable();\n  /**\n   * @deprecated Deprecated. Please use `ref$`.\n   */\n  ref: Highstock.Chart | undefined;\n  constructor(private options: Highstock.Options = { series: [] }) {}\n\n  init(el: ElementRef): void {\n    if (!this.ref) {\n      Highstock.stockChart(el.nativeElement, this.options, chart => {\n        if (!this.ref) { // TODO: workaround for doubled callbacks on exporting charts: issue #238\n          this.refSubject.next(chart);\n          this.ref = chart;\n          this.refSubject.complete();\n        }\n      });\n    }\n  }\n\n  destroy(): void {\n    if (this.ref) {\n      this.options = this.ref.options;\n      this.ref.destroy();\n      this.ref = undefined;\n\n      // new init subject\n      this.refSubject = new AsyncSubject();\n      this.ref$ = this.refSubject.asObservable();\n    }\n  }\n}\n","import { ElementRef } from '@angular/core';\nimport Highcharts from 'highcharts/esm/highcharts-gantt.src';\nimport { AsyncSubject, Observable } from 'rxjs';\n\n/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n */\nexport class HighchartsGantt {\n  private refSubject: AsyncSubject<Highcharts.Chart> = new AsyncSubject();\n  ref$: Observable<Highcharts.Chart> = this.refSubject.asObservable();\n  /**\n   * @deprecated Deprecated. Please use `ref$`.\n   */\n  ref: Highcharts.Chart | undefined;\n\n  constructor(private options: Highcharts.Options = { series: [] }) {}\n\n  init(el: ElementRef): void {\n    if (!this.ref) {\n      Highcharts.ganttChart(el.nativeElement, this.options, chart => {\n        if (!this.ref) { // TODO: workaround for doubled callbacks on exporting charts: issue #238\n          this.refSubject.next(chart);\n          this.ref = chart;\n          this.refSubject.complete();\n        }\n      });\n    }\n  }\n\n  destroy(): void {\n    if (this.ref) {\n      this.options = this.ref.options;\n      this.ref.destroy();\n      this.ref = undefined;\n\n      // new init subject\n      this.refSubject = new AsyncSubject();\n      this.ref$ = this.refSubject.asObservable();\n    }\n  }\n}\n","/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n */\nimport { Directive, ElementRef, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\nimport { Chart } from './chart';\nimport { MapChart } from './mapchart';\nimport { StockChart } from './stockchart';\nimport { HighchartsGantt } from './highcharts-gantt';\n\n@Directive({\n    selector: '[chart]',\n    standalone: false\n})\nexport class ChartDirective implements OnInit, OnDestroy, OnChanges {\n  @Input() chart: Chart | StockChart | MapChart | HighchartsGantt | undefined;\n\n  constructor(private el: ElementRef) {}\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (!changes['chart']?.isFirstChange()) {\n      this.destroy();\n      this.init();\n    }\n  }\n\n  ngOnInit(): void {\n    this.init();\n  }\n\n  ngOnDestroy(): void {\n    this.destroy();\n  }\n\n  private init() {\n    if (this.chart instanceof Chart || this.chart instanceof StockChart || this.chart instanceof MapChart\n      || this.chart instanceof HighchartsGantt) {\n      this.chart.init(this.el);\n    }\n  }\n\n  private destroy() {\n    if (this.chart instanceof Chart || this.chart instanceof StockChart || this.chart instanceof MapChart\n      || this.chart instanceof HighchartsGantt) {\n      this.chart.destroy();\n    }\n  }\n}\n","/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n */\nimport { Inject, Injectable, InjectionToken } from '@angular/core';\nimport Highcharts from 'highcharts/esm/highcharts.src';\nimport Highstock from 'highcharts/esm/highstock.src';\nimport Highmaps from 'highcharts/esm/highmaps.src';\nimport HighchartsGnatt from 'highcharts/esm/highcharts-gantt.src';\n\nexport let HIGHCHARTS_MODULES = new InjectionToken<any[]>('HighchartsModules');\n\n@Injectable()\nexport class ChartService {\n  constructor(@Inject(HIGHCHARTS_MODULES) private chartModules: any[]) { }\n\n  initModules() {\n    this.chartModules.forEach(chartModule => {\n      // Handle both old and new Highcharts module formats\n      const moduleFunc = typeof chartModule === 'function' ? chartModule : chartModule?.default;\n      if (moduleFunc && typeof moduleFunc === 'function') {\n        [Highcharts, Highstock, Highmaps, HighchartsGnatt].forEach(moduleFunc);\n      }\n    });\n  }\n}\n","/**\n * @license\n * Copyright Felix Itzenplitz. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at\n * https://github.com/cebor/angular-highcharts/blob/master/LICENSE\n */\nimport { NgModule } from '@angular/core';\nimport { ChartDirective } from './chart.directive';\nimport { ChartService, HIGHCHARTS_MODULES } from './chart.service';\n\n@NgModule({\n  exports: [ChartDirective],\n  declarations: [ChartDirective],\n  providers: [\n    { provide: HIGHCHARTS_MODULES, useValue: [] },\n    ChartService\n  ]\n})\nexport class ChartModule {\n  constructor(private cs: ChartService) {\n    this.cs.initModules();\n  }\n}\n","/*\n * Public API Surface of angular-highcharts\n */\n\nexport { Chart } from './lib/chart';\nexport { ChartDirective } from './lib/chart.directive';\nexport { ChartModule } from './lib/chart.module';\nexport { HIGHCHARTS_MODULES } from './lib/chart.service';\nexport { MapChart } from './lib/mapchart';\nexport { StockChart } from './lib/stockchart';\nexport { HighchartsGantt } from './lib/highcharts-gantt';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Highcharts","HighchartsGnatt","i1.ChartService"],"mappings":"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"}