UNPKG

@ctodev/cclibrary-typings

Version:

Library typings for use with CLARC INFINITY

162 lines (161 loc) 5.16 kB
import { AfterViewInit, ElementRef, OnDestroy, QueryList, Type, ViewContainerRef } from '@angular/core'; import { TccET_IAM } from '../../../odata/models/iam.model'; import { TccTestForRoleService } from '../../../shared/services/tcc-test-for-role/tcc-test-for-role.service'; import { TccResizeObserverService } from '../../services/tcc-resize-observer/tcc-resize-observer.service'; import { Observable } from 'rxjs'; export declare namespace TccDashboard { export abstract class ITile { dimensions: [number, number]; preventClick: boolean; static tileConfig: TileConfig; headerObs$: Observable<string>; constructor(...args: any[]); } export interface ShowTile { component: string; position?: tilePosition; } export interface GridTile extends tileSize, tilePosition { component: string; } export interface TileConfig extends tileSize { component: string; type: Type<ITile>; requiredRoles: Array<TccET_IAM.UserRoles>; header: string; } export interface internalTileConfig extends TileConfig, tilePosition { dimensions: [number, number]; componentInstance?: ITile; headerObs$?: Observable<string>; } export interface tilePosition { top: number; left: number; } export interface tilePositioning { toppx: number; leftpx: number; heightpx: number; widthpx: number; innerwidth: number; innerheight: number; } export interface drag { positionbefore: TccDashboard.tilePosition; startX: number; startY: number; xStep: number; yStep: number; dragPreviewEle: HTMLDivElement; } interface tileSize { cols: number; rows: number; } export interface tileCoords extends tileSize, tilePosition { } export interface rows { [rownum: number]: { [colnum: number]: GridTile; }; } export interface cols { [colnum: number]: { [rownum: number]: GridTile; }; } export {}; } export declare class TccOccupationGrid { private grid; private shapes; private columncount; private _keys; private get gridkeys(); private _rows; private get rows(); private _cols; private get cols(); constructor(columns: number); private refresh; private extractRowNum; private extractColNum; private generateCoordstr; private _generateRows; get height(): number; private moveShape; private addToGrid; private writeInGrid; /** * returns coords that are in a but not in b * @param a * @param b */ subtractShapes(a: TccDashboard.tileCoords, b: TccDashboard.tileCoords): string[]; createShape(shape: TccDashboard.GridTile): boolean; private getShapeCoords; private isOccupied; private fitInSpace; private getLastShape; private appendShape; moveAllUp(): void; moveSingleUp(element: TccDashboard.GridTile, recursive?: boolean): boolean; private swapLeft; moveRight(element: TccDashboard.GridTile, swap?: boolean): boolean; private swapRight; moveLeft(element: TccDashboard.GridTile, swap?: boolean): boolean; private swapDown; moveUp(element: TccDashboard.GridTile, swap?: boolean): boolean; private swapUp; moveDown(element: TccDashboard.GridTile, swap?: boolean): boolean; private checkCoords; private checkCoord; } export declare class TccDashboardComponent implements AfterViewInit, OnDestroy { private testroles; private resizeService; private resizeSubscription; private columnCount; private sizeRatio; private standardWidth; private columnOffset; private currentDrag; private dashboardChanged; viewStep: number; maxViewStep: number; rowHeight: number; maxRowHeight: number; zoom: number; _customize: boolean; _positions: { [componentName: string]: TccDashboard.tilePositioning; }; createComponents: QueryList<ViewContainerRef>; overviewCard: ElementRef; /** * All Tiles */ private TileList; set TileComponents(components: Array<typeof TccDashboard.ITile>); private occupationGrid; _tiles: Array<TccDashboard.internalTileConfig>; private changeSubscription; constructor(testroles: TccTestForRoleService, resizeService: TccResizeObserverService); ngOnDestroy(): void; ngAfterViewInit(): void; toggleCustomize(on?: boolean): void; saveTiles(): Array<TccDashboard.ShowTile>; private get defaultTiles(); private redraw; showTiles(tiles?: Array<TccDashboard.ShowTile>): void; private addTile; private addTiles; showTile(tile: TccDashboard.ShowTile): void; dragStart(event: DragEvent, tile: TccDashboard.internalTileConfig): void; drag(event: DragEvent, tile: TccDashboard.internalTileConfig): void; dragEnd(event: DragEvent, tile: TccDashboard.internalTileConfig): void; private generateTile; private generateAllDimensions; private generateDimensions; }