@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
60 lines • 3.43 kB
TypeScript
import { CdkDragDrop } from '@angular/cdk/drag-drop';
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { AbstractControl, ControlValueAccessor, FormArray, FormBuilder, ValidationErrors, Validator } from '@angular/forms';
import { IResultList } from '@c8y/client';
import { WidgetConfigComponent } from '@c8y/ngx-components/context-dashboard';
import { Observable } from 'rxjs';
import { DatapointLibraryService } from '../datapoint-library.service';
import { DatapointAction, DatapointAttributesFormConfig, KPIDetails, ManagedObjectKPI } from '../datapoint-selection.model';
import { DatapointSelectorModalOptions } from '../datapoint-selector-modal/datapoint-selector-modal.model';
import { DatapointSelectorService } from '../datapoint-selector.service';
import * as i0 from "@angular/core";
export declare class DatapointSelectionListComponent implements ControlValueAccessor, Validator, OnInit, OnChanges {
private datapointSelector;
private datapointLibrary;
private formBuilder;
private widgetComponent;
actions: DatapointAction[];
/**
* Enable or disable drag and drop functionality.
*/
allowDragAndDrop: boolean;
config: Partial<DatapointSelectorModalOptions>;
defaultFormOptions: Partial<DatapointAttributesFormConfig>;
/**
* Maximum number of active datapoints allowed in the list.
*/
maxActiveCount: number;
/**
* Minimum number of active datapoints required in the list.
*/
minActiveCount: number;
resolveContext: boolean;
listTitle: string;
formArray: FormArray;
datapointLibraryEntries: Observable<IResultList<ManagedObjectKPI>>;
maxActiveCountReached: boolean;
AddButtonTypes: {
readonly none: "none";
readonly addRemove: "add-remove";
readonly select: "select";
};
isValid: Observable<boolean>;
change: Observable<any[]>;
private usedValidators;
constructor(datapointSelector: DatapointSelectorService, datapointLibrary: DatapointLibraryService, formBuilder: FormBuilder, widgetComponent: WidgetConfigComponent);
ngOnChanges(changes: SimpleChanges): void;
registerOnTouched(fn: any): void;
validate(_control: AbstractControl): ValidationErrors;
ngOnInit(): void;
writeValue(obj: KPIDetails[]): void;
registerOnChange(fn: any): void;
add(): void;
onItemRemoved(index: number): void;
drop(event: CdkDragDrop<KPIDetails[]>): void;
private transformValue;
private calculateMaxActiveCount;
static ɵfac: i0.ɵɵFactoryDeclaration<DatapointSelectionListComponent, [null, null, null, { optional: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<DatapointSelectionListComponent, "c8y-datapoint-selection-list", never, { "actions": { "alias": "actions"; "required": false; }; "allowDragAndDrop": { "alias": "allowDragAndDrop"; "required": false; }; "config": { "alias": "config"; "required": false; }; "defaultFormOptions": { "alias": "defaultFormOptions"; "required": false; }; "maxActiveCount": { "alias": "maxActiveCount"; "required": false; }; "minActiveCount": { "alias": "minActiveCount"; "required": false; }; "resolveContext": { "alias": "resolveContext"; "required": false; }; "listTitle": { "alias": "listTitle"; "required": false; }; }, { "isValid": "isValid"; "change": "change"; }, never, [".alert"], true, never>;
}
//# sourceMappingURL=datapoint-selection-list.component.d.ts.map