@blackbaud/skyux
Version:
SKY UX built on Angular 2
42 lines (41 loc) • 1.94 kB
TypeScript
import { ComponentRef, EventEmitter, QueryList } from '@angular/core';
import { DragulaService } from 'ng2-dragula/ng2-dragula';
import { SkyMediaQueryService } from '../../media-queries';
import { SkyTileComponent } from '../tile/tile.component';
import { SkyTileDashboardColumnComponent } from '../tile-dashboard-column';
import { SkyTileDashboardConfig, SkyTileDashboardConfigLayoutTile } from '../tile-dashboard-config';
export declare class SkyTileDashboardService {
private dragulaService;
private mediaQuery;
bagId: string;
configChange: EventEmitter<SkyTileDashboardConfig>;
private tileComponents;
private config;
private columns;
private singleColumn;
private mediaSubscription;
constructor(dragulaService: DragulaService, mediaQuery: SkyMediaQueryService);
init(config: SkyTileDashboardConfig, columns?: QueryList<SkyTileDashboardColumnComponent>, singleColumn?: SkyTileDashboardColumnComponent): void;
addTileComponent(tile: SkyTileDashboardConfigLayoutTile, component: ComponentRef<any>): void;
tileIsCollapsed(tile: SkyTileComponent): boolean;
setTileCollapsed(tile: SkyTileComponent, isCollapsed: boolean): void;
getTileComponentType(layoutTile: SkyTileDashboardConfigLayoutTile): any;
changeColumnMode(isSingleColumn: boolean): void;
getTileComponent(tileId: string): ComponentRef<any>;
destroy(): void;
private getTile(layoutTile);
private checkReady();
private loadTiles();
private loadTileIntoColumn(column, layoutTile);
private moveTilesToSingleColumn();
private moveTilesToMultiColumn();
private moveTilesToColumn(column, layoutTiles);
private getConfigForUIState();
private getSingleColumnLayoutForUIState();
private getMultiColumnLayoutForUIState();
private getTilesInEl(el);
private initMediaQueries();
private initDragula();
private getColumnEl(column);
private findTile(tileId);
}