123 lines
2.7 KiB
TypeScript
123 lines
2.7 KiB
TypeScript
import { TemplateRef } from '@angular/core';
|
|
/**
|
|
* Defines valid templates in MeterGroup.
|
|
* @group Templates
|
|
*/
|
|
export interface MeterGroupTemplates {
|
|
/**
|
|
* Custom label template.
|
|
*/
|
|
label(context: {
|
|
/**
|
|
* Current value of the component.
|
|
*/
|
|
$implicit?: MeterItem;
|
|
/**
|
|
* Total percent of the metergroup items.
|
|
*/
|
|
totalPercent?: number;
|
|
/**
|
|
* Array of sequential sum of values of metergroup items.
|
|
*/
|
|
percentages?: number;
|
|
}): TemplateRef<any>;
|
|
/**
|
|
* Custom meter item template.
|
|
*/
|
|
meter(context: {
|
|
/**
|
|
* Current value of the component.
|
|
*/
|
|
$implicit?: MeterItem;
|
|
/**
|
|
* Current index of the meter item.
|
|
*/
|
|
index?: number;
|
|
/**
|
|
* Style class of the meter item
|
|
*/
|
|
class?: string;
|
|
/**
|
|
* Current orientation of the component.
|
|
*/
|
|
orientation?: string;
|
|
/**
|
|
* Current width of the meter item.
|
|
*/
|
|
size?: string;
|
|
/**
|
|
* Total percent of the metergroup items
|
|
*/
|
|
totalPercent?: number;
|
|
}): TemplateRef<any>;
|
|
/**
|
|
* Custom start template.
|
|
*/
|
|
start(context: {
|
|
/**
|
|
* Current value of the component.
|
|
*/
|
|
$implicit?: MeterItem;
|
|
/**
|
|
* Total percent of the metergroup items.
|
|
*/
|
|
totalPercent?: number;
|
|
/**
|
|
* Array of sequential sum of values of metergroup items.
|
|
*/
|
|
percentages?: number;
|
|
}): TemplateRef<any>;
|
|
/**
|
|
* Custom start template.
|
|
*/
|
|
end(context: {
|
|
/**
|
|
* Current value of the component.
|
|
*/
|
|
$implicit?: MeterItem;
|
|
/**
|
|
* Total percent of the metergroup items.
|
|
*/
|
|
totalPercent?: number;
|
|
/**
|
|
* Array of sequential sum of values of metergroup items.
|
|
*/
|
|
percentages?: number;
|
|
}): TemplateRef<any>;
|
|
/**
|
|
* Custom icon template.
|
|
*/
|
|
icon(context: {
|
|
/**
|
|
* Current value of the component.
|
|
*/
|
|
$implicit?: MeterItem;
|
|
/**
|
|
* Style class of the icon.
|
|
*/
|
|
class?: string;
|
|
}): TemplateRef<any>;
|
|
}
|
|
/**
|
|
* Represents a meter item configuration.
|
|
* @group Interface
|
|
*/
|
|
export interface MeterItem {
|
|
/**
|
|
* Label of the meter item.
|
|
*/
|
|
label?: string;
|
|
/**
|
|
* Value of the meter item.
|
|
*/
|
|
value?: number;
|
|
/**
|
|
* Color of the meter item.
|
|
*/
|
|
color?: string;
|
|
/**
|
|
* Icon of the meter item.
|
|
*/
|
|
icon?: string;
|
|
}
|