angular-gallery
Version:
Responsive gallery for Angular with touch screen support.
101 lines (100 loc) • 3.47 kB
TypeScript
export interface Properties {
element: HTMLElement;
container: HTMLElement;
images: any;
cellWidth: number;
overflowCellsLimit: number;
visibleWidth: number;
margin: number;
minSwipeDistance: number;
transitionDuration: number;
transitionTimingFunction: 'ease' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'linear';
videoProperties: any;
}
export declare class Carousel {
properties: Properties;
element: HTMLElement;
startX: number;
moveX: number;
direction: 'left' | 'right';
slideLength: number;
distanceAbs: number;
initialPositionX: number;
cells: HTMLCollection;
newContainerPositionIndex: number;
preliminarySlideCounter: number;
slideCounter: number;
previousSlideCounter: number;
isSlideInProgress: boolean;
isMoveInProgress: boolean;
isTransitionInProgress: boolean;
isTouchstart: boolean;
isSlideLengthLimited: boolean;
isContainerPositionCorrection: boolean;
containerInitialPositionX: number;
isContentImages: boolean;
visibleWidth: number;
totalContainerCellsCount: number;
isLazyLoad: boolean;
isContainerLocked: boolean;
alignCells: "left" | "center";
initialContainerPosition: number;
get isFirstCell(): boolean;
get lastCellIndex(): number;
get overflowCellsLimit(): number;
get cellLimit(): number;
get images(): any;
get margin(): number;
get minSwipeDistance(): number;
get transitionDuration(): number;
get transitionTimingFunction(): "linear" | "ease" | "ease-in" | "ease-out" | "ease-in-out";
get fullCellWidth(): number;
get visibleCellsCount(): number;
get lapCounter(): number;
get visibleCellsOverflowContainer(): boolean;
constructor(properties: Properties);
handleTouchstart: (event: any) => void;
handleHorizontalSwipe: (event: any) => void;
handleTouchend: (event: any) => void;
moveContainer(): void;
getMovePositionX(): number;
alignContainer(duration?: number): void;
getContainerPosition(): number;
setInitialContainerPosition(position: any): void;
getContainerPositionCorrection(): number;
quicklyPositionContainer(): void;
getNewContainerPosition(): number;
setContainerWidth(): void;
getContainerWidth(): number;
getFile(cellIndex: any): {
image: any;
imageIndex: any;
};
getFileIndex(cellIndex: number): any;
transformPositionX(value: any, duration?: number): void;
detectSlide(): boolean;
next(): void;
prev(): void;
select(index: number): void;
handleSlide(slideLength?: number): void;
getSlideLength(): number;
limitSlideLength(slideLength: number): number;
detectLastSlide(slideCounter: number): boolean;
isNextArrowDisabled(): boolean;
isPrevArrowDisabled(): boolean;
detectContainerUnlock(): boolean;
handleSlideEnd(): void;
transformSlideEnd(): void;
setSlideCounter(): void;
resetTransition(): void;
getElementPosition(): DOMRect;
getCarouselElementPosition(): DOMRect;
getDistance(): number;
getDistanceAbs(): number;
getDirection(): "left" | "right";
lineUpCells(): void;
getCellPositionX(index: any): number;
getPositionIndex(cellIndex: any): any;
get containerOverflowRightCount(): number;
getCenterPositionIndex(): number;
}