import { OnInit, EventEmitter, AfterViewInit, OnDestroy } from '@angular/core'; import { ApexAxisChartSeries, ApexChart, ChartComponent, ApexDataLabels, ApexXAxis, ApexPlotOptions, ApexYAxis, ApexLegend, ApexTitleSubtitle, ApexGrid, ApexNoData } from 'ng-apexcharts'; import { CdkDragDrop } from '@angular/cdk/drag-drop'; import { MatMenuTrigger } from '@angular/material/menu'; import { ResizeEvent } from 'angular-resizable-element'; import { Router } from '@angular/router'; import { ChartProperty } from '../chart/chart-property'; import { CrossFilterDto, ElementsDto } from '../../../../common-dto/elements-dto'; import { FieldsListService } from '../../../../field-list-lib/fields-list.service'; import { IGraphicalReportComponent } from '../igraphical-report.component'; import { BarChart, BarChartOrientation } from './bar-chart'; import { Report } from '../../../../common-utils/report'; import { ReportBuilderMasterService } from '../../report-builder-master.service'; import { SendToDashboardService } from '../../../../dashboard-lib/send-to-dashboard.service'; import { ElementService } from '../../element.service'; import { IChartComponent } from '../ichart-component'; import { CommonService } from '../../../../common.service'; import { AxFilter } from '../../../filters/ax-filter'; import { ScreenType } from '../../../filters/condition-type'; import { Page } from '../page/page'; import { DrillThroughService } from '../../../../drill-through/drill-through.service'; import { DashboardBuilderService } from '../../../../dashboard-lib/dashboard-builder.service'; import { GhostLoaderType } from '../../../../ghost-loader/ghost-loader.component'; import { FiltersService } from '../../../../filters/filters.service'; import * as i0 from "@angular/core"; export declare type BarChartOptions = { series: ApexAxisChartSeries; chart: ApexChart; dataLabels: ApexDataLabels; plotOptions: ApexPlotOptions; xaxis: ApexXAxis; yaxis: ApexYAxis; legend: ApexLegend; grid: ApexGrid; title: ApexTitleSubtitle; noData: ApexNoData; tooltip: ApexTooltip; fill: ApexFill; states: ApexStates; }; export declare class BarChartComponent implements IGraphicalReportComponent, OnInit, AfterViewInit, OnDestroy, IChartComponent { private _fieldsListService; private _reportBuilderMasterService; private _sendToDashboardService; private _elementService; private _commonService; private _drillThroughService; private _dashboardService; private _router; private _filterService; onchartClickedEvent: EventEmitter; onchartRightClickDeleteEvent: EventEmitter; chartRendered: EventEmitter; currentPageId: number; barChartContainer: ChartComponent; /*** * MatMenuTrigger Use for right click on the chart action */ contextMenu: MatMenuTrigger; reportData: BarChart; isEditable: boolean; guid: string; screenType: ScreenType; drillThroughFilterInput: AxFilter; drillThroughParentType: ScreenType; appVersionId: number; ScreenType: typeof ScreenType; ShowFilters: Boolean; titleText: string; report: Report; uniquekey: number; property: ChartProperty; isDirty: boolean; handle: boolean; dataEvent: string; componentRef: IChartComponent; isDataPointSelected: boolean; selectedDataPoints: Array>; selectedSeriesIndexes: Array; contextMenuPosition: { x: string; y: string; }; pages: Array; chart: ApexCharts; chartId: any; highlightedByOtherChart: boolean; isDrillThrough: boolean; yPosition: number; xPosition: number; /**** * Resize chart styles */ reportId: number; barChartOptions: Partial; private _unsubscribeAll; private drillThroughFilter; showGhostLoader: boolean; GhostLoaderType: typeof GhostLoaderType; BarChartOrientation: typeof BarChartOrientation; /*** Constructor * */ constructor(_fieldsListService: FieldsListService, // Used for get matrix data _reportBuilderMasterService: ReportBuilderMasterService, _sendToDashboardService: SendToDashboardService, _elementService: ElementService, _commonService: CommonService, _drillThroughService: DrillThroughService, _dashboardService: DashboardBuilderService, _router: Router, _filterService: FiltersService); get screenTypes(): typeof ScreenType; click(event: any): void; /** * This will get called after the UI render. */ ngAfterViewInit(): void; /** * NgOnInit LifeCycle hook. * This will get called on component initialization. */ ngOnInit(): void; /** * This will initialize bar-chart options.basically did apexChart configuration here. */ initializeBarChartOptions(): void; /** * This will return series color. */ getSeriesColors(): Array; /** * Subscribers for barChart.. */ subscribers(): void; /** * Clone selected data points * * @param dataPoints */ saveSelectDataPoints(dataPoints: Array>): void; /** * Created filter object for cross filtering. * * @param CrossFilterDto */ createCrossFilter(crossFilterData: CrossFilterDto): void; /** * pushed the filter object into basic filter and applied the filter on the data * * @param CrossFilterDto * @param AxFilter */ getCrossFilterData(_filter: AxFilter, crossFilterData: CrossFilterDto): void; /** * set data to chart if entitiesAttribute is not equal to null then this method will call and will highlight the matrix */ highlightSeriesData(indexList: Array): void; /** * Clear the selected data points. */ clearSelectedDataPoint(): void; /** * * Called when we select a bar by a click event * * @param opts */ dataPointSelection(opts: any): void; /** * Reset cross filter and emit reset cross filter event. */ resetCrossFilter(): void; /** * On destroy */ ngOnDestroy(): void; /** * Get data */ getChartData(): void; /** * set data to chart if entitiesAttribute is not equal to null then this method will call */ setDataToChart(entitiesAttribute: ElementsDto): void; /** * attributeDropped * Called when attribute is dragged from left side fields list and dropped on the bar chart * * @param $event */ attributeDropped($event: CdkDragDrop): void; chartSelect(): void; /** * Created filter object for cross filtering. * * @param CrossFilterDto */ createDrillThroughFilter(series: any): void; /*** * On chart context click Function */ onContextMenu(event: MouseEvent, chart: BarChart): void; /*** * Delete chart Function */ openOptionPopUp(): void; onDeleteClick(event: MouseEvent): void; /*** * Pin to Dashboard Function */ sendToDashboard(): void; /**** * chartResizeMinDimensions = this function use Resize min dimensions validation */ chartResizeMinDimensions(event: ResizeEvent): boolean; /**** * onResizing = this function use for resize the chart */ onResizing(event: ResizeEvent): void; /** * Called when resizing ends */ resizeEnd(): void; /** * to set isDirty after changes in bar-chart filter * */ dirtyFlowCheckEvent(): void; /** * call cdk drag start event * * @param $event */ dragStart($event: DragEvent): void; /** * call cdk drag end event * * @param $event */ dragEnd($event: DragEvent): void; /** * Deselecting the selected matrix * */ deselectDataPoints(crossFilterData: CrossFilterDto): void; /** * Called on page name clicked on dropdown options of drill through pages * * @param page */ pageClick(page: Page): void; /** * Navigate to drill through component with page id as route params * Checks the parent URL if it is already exists or not * * @param page */ navigateToDrillThrough(page: Page): void; /** * Apply local filter. */ applyLocalFilter(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }