UNPKG

@ux-aspects/ux-aspects

Version:

Open source user interface framework for building modern, responsive, mobile big data applications

50 lines (49 loc) 2.66 kB
import { AfterContentInit, AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, QueryList } from '@angular/core'; import { ResizeDimensions } from '../../directives/resize/resize.service'; import { DashboardLayoutData, DashboardService } from './dashboard.service'; import { DashboardGrabHandleDirective } from './grab-handle/grab-handle.directive'; import { DashboardWidgetComponent } from './widget/dashboard-widget.component'; import * as i0 from "@angular/core"; export declare class DashboardComponent implements AfterViewInit, AfterContentInit, OnDestroy, OnChanges { readonly dashboardService: DashboardService; private readonly _changeDetector; isGrabbing: boolean; customAriaLabel: (widgets: DashboardWidgetComponent[], options: DashboardOptions) => string | string; /** If defined or changed this will set the positions of the widgets within the dashboard. This is a two way binding that will be updated with the current layout when it changes. */ set layout(layout: DashboardLayoutData[]); /** Configures the options for the dashboard, if an option is not specified the default value will be used. */ set options(options: DashboardOptions); /** Emits when layout has been changed. */ layoutChange: EventEmitter<DashboardLayoutData[]>; ariaLabel: string; role: string; dashboardElement: ElementRef; /** Find all grab handles used in the dashboard */ handles: QueryList<DashboardGrabHandleDirective>; /** Ensure we unsubscribe from all observables */ private readonly _onDestroy; constructor(); /** * Set the initial dimensions */ ngAfterViewInit(): void; ngAfterContentInit(): void; ngOnChanges(): void; ngOnDestroy(): void; onResize(event: ResizeDimensions): void; getAriaLabel(): string; /** Shift widgets up where possible to fill any available space to optimize the dashboard layout */ refreshLayout(): void; private getDefaultAriaLabel; private getWidgetAriaLabel; static ɵfac: i0.ɵɵFactoryDeclaration<DashboardComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DashboardComponent, "ux-dashboard", never, { "customAriaLabel": { "alias": "aria-label"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "options": { "alias": "options"; "required": false; }; "role": { "alias": "role"; "required": false; }; }, { "layoutChange": "layoutChange"; }, ["handles"], ["*"], false, never>; } export interface DashboardOptions { columns?: number; padding?: number; minWidth?: number; minHeight?: number; rowHeight?: number; emptyRow?: boolean; }