@ministryofjustice/hmpps-digital-prison-reporting-frontend
Version:
The Digital Prison Reporting Frontend contains templates and code to help display data effectively in UI applications.
53 lines (52 loc) • 1.93 kB
TypeScript
import { DashboardDataResponse } from '../../../types/Metrics';
import { DashboardVisualisationDataSet, VisualisationDefinitionKey, ChartMeasure } from '../../_dashboards/dashboard-visualisation/types';
import { UnitType } from '../../_dashboards/dashboard-visualisation/Validate';
import ChartColoursHelper from './ChartColours';
import ChartLabelsHelper from './ChartLabels';
declare class Chart {
labels: string[];
datasets: DashboardVisualisationDataSet[];
unit: UnitType | undefined;
responseData: DashboardDataResponse[];
backgroundColor: string[][];
borderWidth: number[];
borderColor: string[][];
hexColours: string[];
config: import("./chart-config").ChartOptionsType;
private xAxisColumn;
private yAxisColumn;
private groupedData;
chartColoursHelper: ChartColoursHelper;
chartLabelsHelper: ChartLabelsHelper;
withData: (responseData: DashboardDataResponse[]) => this;
initUnit: (measures: ChartMeasure[]) => void;
initHelpers: () => void;
/**
* Creates chart.js datasets where:
* - where each row is a dataset
* - each column name is an x axis label
*
* @param {ChartMeasure[]} measures
* @param {VisualisationDefinitionKey[]} keys
* @memberof Chart
*/
createDatasets: (measures: ChartMeasure[], keys: VisualisationDefinitionKey[]) => void;
/**
* Creates chart.js datasets where:
* - ecah column is a dataset
* - each value in a column is an x axis label
*
* @param {ChartMeasure[]} measures
* @param {VisualisationDefinitionKey[]} keys
* @memberof Chart
*/
createListDatasets: (measures: ChartMeasure[], keys: VisualisationDefinitionKey[]) => void;
private createDatasetValues;
private setStyles;
setScales: (args?: {
label?: string;
horizontal?: boolean | undefined;
}) => void;
}
export { Chart };
export default Chart;