import { OnInit, DoCheck, EventEmitter, ElementRef, KeyValueDiffers } from '@angular/core'; import { CfCoreComponent } from '../core/core.component'; import { GaugeModel } from '../../models/gauge/gauge.model'; import { GaugeStylingModel } from '../../models/gauge/gauge-styling.model'; import { TemplateService } from '../../services/template-service/template.service'; /** *
Gauge component is a modification of * Angular gauge * with added label, prefix and suffix elements.
*
*
* import {{'{'}} GaugeModel {{'}'}} from 'cedrus-fusion'
* import {{'{'}} GaugeStylingModel {{'}'}} from 'cedrus-fusion'
* <cf-gauge></cf-gauge>
*
*
*/
export declare class CfGaugeComponent extends CfCoreComponent implements OnInit, DoCheck {
elementRef: ElementRef;
/** @hidden
* Object to register element state and compute differences.
*/
differ: any;
/** @hidden
* It is a clone of gauge value to work with calculated effect during gauge animation time.
* It is using only inside component functionality.
*/
_animatedValue: number;
_tickInterval: number;
_animationValueDirection: string;
/** @hidden
* It is number of ticks between previous and current gauge value.
*/
_ticks: number;
/**
* {{'{'}}
* display: boolean, // Default: true.
* disable: boolean, // Default: false.
* max: number, // Maximum integer value of gauge. Default: 100.
* type: string, // Type value of gauge. Can be: full, arch, semi. Default: full.
* size: number, // Aanimation duration of gauge in seconds. Default: 150.
* value: number, // Current integer value of gauge. Default: 0.
* label: string, // Label of gauge. Empty string by default.
* prefix: string, // Prefix of gauge. Empty string by default.
* suffix: string, // Suffix of gauge. Empty string by default.
* inputValue: boolean, // Able gauge to input it value. Default: true.
* animationDuration: number, // Size for width/height of gauge. It means number of pixels. Default: 1.
* {{'}'}}
*/
properties: GaugeModel;
/**
*dynamicClass: function() -> string, // Function that returns name of the class
*class: string // Name of the css class selector
*
* {{'{'}}
* // Component container
* container: {{'{'}} class, dynamicClass {{'}'}},
* // Gauge svg element
* gauge: {{'{'}} class, dynamicClass {{'}'}},
* // Value styling
* value: {{'{'}} class, dynamicClass {{'}'}},
* // Prefix styling
* prefix: {{'{'}} class, dynamicClass {{'}'}},
* // Suffix styling
* suffix: {{'{'}} class, dynamicClass {{'}'}},
* // Label styling
* label: {{'{'}} class, dynamicClass {{'}'}},
*
*/
styling: GaugeStylingModel;
/**
* Maximum integer value of gauge. Default: 100.
*/
max: number;
/**
* Type value of gauge. Can be: full, arch, semi. Default is full.
*/
type: string;
/**
* Size for width/height of gauge. It means number of pixels. Default: 150.
*/
size: number;
/** @hidden
* Helper property for set value before ngOnInit and change after
*/
withInputValue: boolean;
/** @hidden
* Helper property check for first value set
*/
firstValueChange: boolean;
/**
* Current integer value of gauge. Default: 0.
*/
/** @hidden
* Setter for the gauge value
*/
value: number;
/**
* Label of gauge. Empty string by default.
*/
label: string;
/**
* Prefix of gauge. Empty string by default.
*/
prefix: string;
/**
* Suffix of gauge. Empty string by default.
*/
suffix: string;
/**
* Able gauge to input it value. Default: true.
*/
inputValue: boolean;
/**
* Aanimation duration of gauge in seconds. Default: 1.
*/
animationDuration: number;
/** @hidden
* Event emiter for updating value input property
*/
valueChange: EventEmitter<{}>;
/**
* Event emited on value change and output value with type number
*/ onChange: EventEmitterUpdate the properties object with the changes on the component inner properties to keep the component dynamic.
*/ ngDoCheck(): void; }