@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
129 lines (128 loc) • 4.89 kB
TypeScript
import { ChangeDetectorRef, Injector, OnDestroy, OnInit } from '@angular/core';
import { ChartData } from 'chart.js';
import { ChartComponent } from '../chart/chart.component';
import { CoreBaseComponent } from '../common/base.component';
import { LegendEntryData } from '../legend/legend-entry/legend-entry.component';
import { LegendPosition } from './legend-position';
import * as i0 from "@angular/core";
/**
*
* @smeDoc {@label Doughnut Chart @id sme-doughnut-chart-component}
*
* @overview
* @file {@filepath ./examples/doughnut-chart-overview.md}
*
* @example {@label Doughnut Chart @id doughnut-chart}
* @file {@filename component.html @filepath ./examples/doughnut-chart-example.component.html}
* @file {@filename component.ts @filepath ./examples/doughnut-chart-example.component.ts}
*
* @example {@label Capacity Doughnut Chart @id capacity-doughnut-chart}
* @file {@filename component.html @filepath ./examples/capacity-doughnut-chart-example.component.html}
* @file {@filename component.ts @filepath ./examples/doughnut-chart-example.component.ts}
*/
export interface DoughnutChartData {
/**
* The label for the data segment
*/
label: string;
/**
* The value of the data segment
*/
value: number;
/**
* The display value to show in legends and tool tips
* example: value = 80 but displayValue = "80%"
* If not specified, value field will be used for labeling
*/
displayValue?: string;
/**
* The color to use for the data segment
*/
color: string;
/**
* True to show legend
*/
showLegend?: boolean;
}
export declare class DoughnutChartComponent extends CoreBaseComponent implements OnInit, OnDestroy {
private changeDetectorRef;
/**
* The source name to use for logging
*/
protected get logSourceName(): string;
/**
* Whether or not to use a generated legend
* If legendData is specified, a legend will be shown regardless of showLegend value
*/
showLegend: boolean;
/**
* The legend data to put into the legend
* If legend is not specified, it will automatically be generated
*/
legendData: LegendEntryData[];
/**
* List of data to be shown on the chart
*/
doughnutChartData: DoughnutChartData[];
/**
* Title shown for the chart
*/
chartTitle: string;
/**
* Whether to display the chart title
* Defaults to true
*/
showTitle: boolean;
/**
* Text in the center of the doughnut chart
*/
centerChartText: string;
/**
* Subtext in the center of the doughnut chart
*/
centerChartSubtext: string;
/**
* Text that can be provided to give additional optional information about the doughnut chart
*/
tooltipTitle: string;
/**
* Sets the width of the chart. Can be any valid css width value. Defaults to 180px
*/
width: string;
/**
* A string explaining the how often the chart refreshes, if applicable
* Expect strings like "3 minutes" and "30 seconds"
* Used for aria-label of chart in sentence "Chart refreshes every <refreshIntervalString>"
*/
refreshIntervalString?: string;
/**
* A string explaining the current state of the chart, if applicable
* Expect strings like "Critical State" and "Warning State"
* Used for aria-label of chart to describe state
*/
stateString?: string;
/**
* The position of the legend relative to the chart.
*/
legendPosition?: LegendPosition.Bindable;
chart: ChartComponent;
options: any;
data: ChartData;
legendIsGenerated: boolean;
constructor(changeDetectorRef: ChangeDetectorRef, injector: Injector);
private validateLegendPosition;
ngOnInit(): void;
updateChartData(): void;
/**
* refreshed the chart data
*/
refresh(): void;
ngOnDestroy(): void;
/**
* Creates the idBag used by this component to store unique element ids.
* id values will be assigned be the @see BaseComponent super class.
*/
protected createIdBag(): MsftSme.StringMap<string>;
static ɵfac: i0.ɵɵFactoryDeclaration<DoughnutChartComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DoughnutChartComponent, "sme-doughnut-chart", never, { "showLegend": "showLegend"; "legendData": "legendData"; "doughnutChartData": "doughnutChartData"; "chartTitle": "chartTitle"; "showTitle": "showTitle"; "centerChartText": "centerChartText"; "centerChartSubtext": "centerChartSubtext"; "tooltipTitle": "tooltipTitle"; "width": "width"; "refreshIntervalString": "refreshIntervalString"; "stateString": "stateString"; "legendPosition": "legendPosition"; }, {}, never, never, false, never>;
}