@lidorsystems/integralui-web
Version:
IntegralUI Web - Advanced UI Components for Angular
215 lines (214 loc) • 9.27 kB
TypeScript
import { ChangeDetectorRef, ComponentFactoryResolver, ElementRef, EventEmitter, QueryList, Renderer2, ViewContainerRef } from '@angular/core';
import { IntegralUIAnimationType, IntegralUIBaseComponent, IntegralUIBaseService, IntegralUIMoveDirection, IntegralUISpeedMode, IntegralUITabDisplayMode, IntegralUITabScrollMode, IntegralUITabStripPlacement } from './integralui.core';
import { IntegralUICommonService } from '../services/integralui.common.service';
import { IntegralUIDataService } from '../services/integralui.data.service';
import { IntegralUITab } from './integralui.tab';
import * as i0 from "@angular/core";
export declare class IntegralUITabStripToolbarLeft {
static ɵfac: i0.ɵɵFactoryDef<IntegralUITabStripToolbarLeft, never>;
static ɵdir: i0.ɵɵDirectiveDefWithMeta<IntegralUITabStripToolbarLeft, "iui-tabstrip-toolbar-left", never, {}, {}, never>;
}
export declare class IntegralUITabStripToolbarRight {
static ɵfac: i0.ɵɵFactoryDef<IntegralUITabStripToolbarRight, never>;
static ɵdir: i0.ɵɵDirectiveDefWithMeta<IntegralUITabStripToolbarRight, "iui-tabstrip-toolbar-right", never, {}, {}, never>;
}
export declare class IntegralUITabStrip extends IntegralUIBaseComponent {
protected dataService: IntegralUIDataService;
protected elemRef: ElementRef;
protected elemRenderer: Renderer2;
private changeRef;
protected commonService?: IntegralUICommonService;
protected cmpResolver?: ComponentFactoryResolver;
protected baseService?: IntegralUIBaseService;
private animationTimer;
private currentAnimation;
private dataTabs;
private eventList;
private numTabs;
tabList: Array<IntegralUITab>;
reorderTab: any;
protected tabReorderActive: boolean;
protected reorderTabPos: any;
protected reorderTabStartPos: any;
protected reorderTabCurrentPos: any;
protected startTabReorder: boolean;
protected reorderTabIndex: number;
protected reorderNewTabIndex: number;
private orgHeaderList;
private orgReorderTabIndex;
ctrlCursor: string;
protected autoSizeValue: boolean;
blockPos: any;
contentBlockPos: any;
contentBlockSize: any;
protected clientRect: any;
protected currentTabPlacement: IntegralUITabStripPlacement;
private currentDisplayMode;
private emptyTabSpace;
private orgTabHeaderSpace;
private scrollBlockSize;
private scrollButtonSize;
selTabLinePos: any;
selTabLineSize: any;
private tabHeaderRect;
private tabPos;
private tabSize;
tabstripPos: any;
tabStripSize: {
width: number;
height: number;
};
toolbarPos: any;
private updateTimer;
contentList: QueryList<IntegralUITab>;
contentElem: ElementRef;
scrollInBoundElem: ElementRef;
scrollButtonElem: ElementRef;
tabBlock: ElementRef;
tabBlockRef: ViewContainerRef;
tabHeaders: QueryList<ElementRef>;
tabIconElem: ElementRef;
toolbarLeftElem: ElementRef;
toolbarRightElem: ElementRef;
private currentScrollMode;
private isScrollActive;
private isScrollAllowed;
private scrollCount;
private currentScrollPos;
private scrollTimer;
private stopScrolling;
private maxScrollPos;
private currentSelection;
private currentSelectedIndex;
private selectedComponent;
private prevComponent;
private removeIndex;
private tabHeaderClassName;
private tRef;
allowDrag: boolean;
allowDrop: boolean;
set animation(value: IntegralUIAnimationType);
get animation(): IntegralUIAnimationType;
animationSpeed: IntegralUISpeedMode;
set autoSize(value: boolean);
get autoSize(): boolean;
set displayMode(value: IntegralUITabDisplayMode);
get displayMode(): IntegralUITabDisplayMode;
set scrollMode(value: IntegralUITabScrollMode);
get scrollMode(): IntegralUITabScrollMode;
set selectedIndex(value: number);
get selectedIndex(): number;
set selectedTab(value: any);
get selectedTab(): any;
set tabs(value: Array<any>);
get tabs(): Array<any>;
tabSpacing: number;
set tabStripPlacement(value: IntegralUITabStripPlacement);
get tabStripPlacement(): IntegralUITabStripPlacement;
afterSelect: EventEmitter<any>;
beforeSelect: EventEmitter<any>;
change: EventEmitter<any>;
tabAdding: EventEmitter<any>;
tabAdded: EventEmitter<any>;
tabOrderChanged: EventEmitter<any>;
clear: EventEmitter<any>;
tabRemoving: EventEmitter<any>;
tabRemoved: EventEmitter<any>;
scrollPosChanged: EventEmitter<any>;
selectionChanged: EventEmitter<any>;
constructor(dataService: IntegralUIDataService, elemRef: ElementRef, elemRenderer: Renderer2, changeRef: ChangeDetectorRef, commonService?: IntegralUICommonService, cmpResolver?: ComponentFactoryResolver, baseService?: IntegralUIBaseService);
ngOnInit(): void;
protected updateData(): void;
ngAfterViewInit(): void;
ngAfterContentInit(): void;
ngOnDestroy(): void;
ngAfterContentChecked(): void;
addTab(tab: any): void;
clearTabs(): void;
insertTabAt(tab: any, index: number): void;
insertTabBefore(tab: any, refTab: any): void;
insertTabAfter(tab: any, refTab: any): void;
removeTab(tab: any): boolean;
removeTabAt(index: number): boolean;
private callEventAdd;
private callEventRemove;
protected animate(): void;
protected fadeTabContent(): void;
protected getAnimationFactor(): number;
private removeAnimationTimer;
protected slideTabContentHorizontal(): void;
protected slideTabContentVertical(): void;
private attachTabEvents;
private getTabCurrentIndex;
private getTabDataIndex;
private getTabData;
private getTabIndex;
private getComponentData;
private isIndexInRange;
private calcEmptyTabSpace;
private resetLayout;
updateLayout(): void;
private updateTabLine;
private updateTabLayout;
private updateTabHeaders;
tabMouseDown(e: any, cmp: IntegralUITab): void;
tabMouseMove(e: any, cmp: IntegralUITab): void;
tabEnter(e: any, cmp: IntegralUITab): void;
tabLeave(e: any, cmp: IntegralUITab): void;
ctrlMouseMove(e: any): void;
ctrlMouseUp(e: any): void;
protected updateReorderTabPos(): void;
protected resetReorderTabSettings(): void;
getTabOpacity(cmp: IntegralUITab): 1 | 0;
onWindowMouseUp(e: any): void;
protected getLastTabIndex(): number;
getPrevTab(tab: any): any;
getNextTab(tab: any): any;
moveTab(tab: any, direction: IntegralUIMoveDirection, targetTab?: any, position?: number): void;
protected moveTabAt(tab: any, targetTab: any, direction: IntegralUIMoveDirection, position?: number): void;
scrollPos(value?: any): any;
private startScroll;
private stopScroll;
private processScroll;
protected processDragScroll(e: any): void;
private scrollTimerElapsed;
private scrollTabs;
scrollButtonMouseDown(e: any, flag?: boolean): void;
scrollButtonMouseUp(e: any): void;
scrollTo(tab: any): void;
protected clearSelection(cmp: IntegralUITab): void;
private selectComponent;
private selectComponentByIndex;
selectTab(tab: any, skip?: boolean): void;
getScrollBlockClass(): string;
getScrollInBoundStyle(): {
top: string;
right: string;
bottom: string;
left: string;
opacity: string;
padding: string;
width: string;
height: string;
};
getScrollInBoundButtonStyle(): {
'margin-left': string;
'margin-top': string;
};
getScrollOutBoundStyle(type?: number): {
top: string;
right: string;
bottom: string;
left: string;
opacity: string;
padding: string;
width: string;
height: string;
};
getControlStyle(): any;
getTabHeaderClass(cmp: IntegralUITab, flag?: boolean): any;
getReorderTabStyle(): any;
tabTouchStart(e: any, cmp: IntegralUITab): void;
static ɵfac: i0.ɵɵFactoryDef<IntegralUITabStrip, never>;
static ɵcmp: i0.ɵɵComponentDefWithMeta<IntegralUITabStrip, "iui-tabstrip", never, { "controlStyle": "controlStyle"; "data": "data"; "enabled": "enabled"; "name": "name"; "size": "size"; "state": "state"; "allowDrag": "allowDrag"; "allowDrop": "allowDrop"; "animation": "animation"; "animationSpeed": "animationSpeed"; "autoSize": "autoSize"; "displayMode": "displayMode"; "scrollMode": "scrollMode"; "selectedIndex": "selectedIndex"; "selectedTab": "selectedTab"; "tabs": "tabs"; "tabSpacing": "tabSpacing"; "tabStripPlacement": "tabStripPlacement"; }, { "afterSelect": "afterSelect"; "beforeSelect": "beforeSelect"; "change": "change"; "tabAdding": "tabAdding"; "tabAdded": "tabAdded"; "tabOrderChanged": "tabOrderChanged"; "clear": "clear"; "tabRemoving": "tabRemoving"; "tabRemoved": "tabRemoved"; "scrollPosChanged": "scrollPosChanged"; "selectionChanged": "selectionChanged"; }, ["contentList"], ["iui-tabstrip-toolbar-left", "*", "iui-tabstrip-toolbar-right"]>;
}