@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
95 lines • 5.03 kB
TypeScript
import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { IAlarm, IResultList } from '@c8y/client';
import { ContextRouteService, DynamicComponentAlertAggregator, ListItemComponent, LoadMoreMode } from '@c8y/ngx-components';
import { BehaviorSubject, Observable } from 'rxjs';
import { AlarmsViewService } from './alarms-view.service';
import { AlarmNavigationOptions } from './alarms.model';
import { AlarmDetails } from '@c8y/ngx-components/alarm-event-selector';
import * as i0 from "@angular/core";
export declare class AlarmsListComponent implements OnChanges, AfterViewInit, OnDestroy {
private activatedRoute;
private alarmsViewService;
private contextRouteService;
private router;
readonly alarmBadgeTooltip: "Number of occurrences`number of occurrences of alarm`. First occurrence {{ alarmFirstOccurrenceTime }} (device time).";
readonly alarmLastOccurrenceLabel: "Last occurrence of this alarm (device time).";
/**
* Input property for receiving a list of alarms.
*/
alarms: IResultList<IAlarm & {
link?: string;
}>;
hasPermissions: boolean;
/**
* Input property for the currently applied type filters.
*/
typeFilters: AlarmDetails[];
/**
* Input property for receiving load more mode.
*/
loadMoreMode: LoadMoreMode;
/**
* Defines options, how the alarm list should be navigated if a user
* clicks on an alarm.
*/
navigationOptions: AlarmNavigationOptions;
/**
* Controls the visibility of the loading bar
* When set to `false`, the alarm list is displayed. When set to `true`, the opacity of alarms list is changed and a loading bar is shown.
*/
isInitialLoading: boolean;
/**
* Controls the visibility and functionality of some components
* When set to `true`, means the list is displayed in a split view layout:
* the list on the first column and the selected record detail on the second column (the cockpit
* alarms view for example)
* When set to false, the list is displayed as a standalone component, opening the detail will
* redirect to the alarms
*/
splitView: boolean;
/**
* Emits an instance of a selected alarm when one is chosen from the list.
*/
onSelectedAlarm: EventEmitter<IAlarm>;
/**
* Emits a boolean value indicating the scrolling state: true when the user starts scrolling, and false when the user reaches the top of the list.
*/
onScrollingStateChange: EventEmitter<boolean>;
/**
* Current alarm or last alarm marked as active by the routerLinkActive directive.
*/
activeAlarm$: BehaviorSubject<IAlarm>;
activeChildParam$: Observable<string>;
innerScrollWrapper: ElementRef;
isScrolling: boolean;
/**
* Determines whether the c8y-loading component should be displayed.
* The loading component is shown when no alarms are displayed in the view or when the request is initial,
* as we don't want to see empty space on alarm list during loading.
*/
isEmptyListLoading: boolean;
alertAggregator: DynamicComponentAlertAggregator;
mapAlarmLink: import("rxjs").UnaryFunction<Observable<IAlarm[]>, Observable<IAlarm[]>>;
private destroy$;
private HIDE_INTERVAL_COUNTDOWN_SCROLL;
constructor(activatedRoute: ActivatedRoute, alarmsViewService: AlarmsViewService, contextRouteService: ContextRouteService, router: Router);
/**
* Handles the change of the active route.
*
* @param isActive - A boolean indicating whether the route is active or not.
* @param scrollAnchor - The ListItemComponent used as a scroll anchor.
* @param alarm - The IAlarm object representing the active alarm.
*/
activeRouteChanged(isActive: boolean, scrollAnchor: ListItemComponent, alarm: IAlarm): void;
ngOnChanges(changes: SimpleChanges): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
onAlarmOpen(alarm: IAlarm): void;
getRouterLink(alarm: IAlarm): string;
private shouldCountdownIntervalBeHidden;
private verifyIfFiltersMatchingAlarm;
static ɵfac: i0.ɵɵFactoryDeclaration<AlarmsListComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<AlarmsListComponent, "c8y-alarms-list", never, { "alarms": { "alias": "alarms"; "required": false; }; "hasPermissions": { "alias": "hasPermissions"; "required": false; }; "typeFilters": { "alias": "typeFilters"; "required": false; }; "loadMoreMode": { "alias": "loadMoreMode"; "required": false; }; "navigationOptions": { "alias": "navigationOptions"; "required": false; }; "isInitialLoading": { "alias": "isInitialLoading"; "required": false; }; "splitView": { "alias": "splitView"; "required": false; }; }, { "onSelectedAlarm": "onSelectedAlarm"; "onScrollingStateChange": "onScrollingStateChange"; }, never, ["*"], true, never>;
}
//# sourceMappingURL=alarms-list.component.d.ts.map