@ngu/carousel
Version:
Angular Universal carousel
121 lines (120 loc) • 4.67 kB
TypeScript
import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, IterableChanges, IterableDiffer, IterableDiffers, OnDestroy, OnInit, Renderer2, TrackByFunction } from '@angular/core';
import { Subscription } from 'rxjs';
import { NguCarouselOutlet } from './../ngu-carousel.directive';
import { NguCarouselStore } from './ngu-carousel';
export declare class NguCarousel<T> extends NguCarouselStore implements OnInit, AfterContentInit, AfterViewInit, OnDestroy, DoCheck {
private _el;
private _renderer;
private _differs;
private platformId;
private cdr;
_dataSubscription: Subscription;
_dataSource: any;
_dataDiffer: IterableDiffer<{}>;
styleid: string;
private directionSym;
private carouselCssNode;
private pointIndex;
private withAnim;
activePoint: number;
isHovered: boolean;
private inputs;
private carouselLoad;
private onMove;
arrayChanges: IterableChanges<{}>;
carouselInt: Subscription;
listener1: () => void;
listener2: () => void;
listener3: () => void;
listener4: () => void;
get dataSource(): any;
set dataSource(data: any);
private _defaultNodeDef;
private _defDirec;
_nodeOutlet: NguCarouselOutlet;
/** The setter is used to catch the button if the button has ngIf
* issue id #91
*/
set nextBtn(btn: ElementRef);
/** The setter is used to catch the button if the button has ngIf
* issue id #91
*/
set prevBtn(btn: ElementRef);
private carouselMain1;
private nguItemsContainer;
private touchContainer;
private _intervalController$;
private carousel;
private onResize;
private onScrolling;
pointNumbers: Array<any>;
/**
* Tracking function that will be used to check the differences in data changes. Used similarly
* to `ngFor` `trackBy` function. Optimize Items operations by identifying a Items based on its data
* relative to the function to know if a Items should be added/removed/moved.
* Accepts a function that takes two parameters, `index` and `item`.
*/
get trackBy(): TrackByFunction<T>;
set trackBy(fn: TrackByFunction<T>);
private _trackByFn;
constructor(_el: ElementRef, _renderer: Renderer2, _differs: IterableDiffers, platformId: object, cdr: ChangeDetectorRef);
ngOnInit(): void;
ngDoCheck(): void;
private _switchDataSource;
private _observeRenderChanges;
private renderNodeChanges;
/**
* Updates the index-related context for each row to reflect any changes in the index of the rows,
* e.g. first/last/even/odd.
*/
private _updateItemIndexContext;
private _getNodeDef;
ngAfterViewInit(): void;
ngAfterContentInit(): void;
private _inputValidation;
ngOnDestroy(): void;
private _onResizing;
/** Get Touch input */
private _touch;
/** handle touch input */
private _touchHandling;
private _setTouchTransfrom;
private _setTransformFromTouch;
/** this fn used to disable the interval when it is not on the viewport */
private _onWindowScrolling;
/** store data based on width of the screen for the carousel */
private _storeCarouselData;
/** Used to reset the carousel */
reset(withOutAnimation?: boolean): void;
/** Init carousel point */
private _carouselPoint;
/** change the active point in carousel */
private _carouselPointActiver;
/** this function is used to scoll the carousel when point is clicked */
moveTo(slide: number, withOutAnimation?: boolean): void;
/** set the style of the carousel based the inputs data */
private _carouselSize;
/** logic to scroll the carousel step 1 */
private _carouselScrollOne;
/** logic to scroll the carousel step 2 */
private _carouselScrollTwo;
/** boolean function for making isFirst and isLast */
private _btnBoolean;
private _transformString;
/** set the transform style to scroll the carousel */
private _transformStyle;
/** this will trigger the carousel to load the items */
private _carouselLoadTrigger;
/** generate Class for each carousel to set specific style */
private _generateID;
/** handle the auto slide */
private _carouselInterval;
private _updateItemIndexContextAni;
/** animate the carousel items */
private _carouselAnimator;
private _removeAnimations;
/** Short form for setElementStyle */
private _setStyle;
/** For generating style tag */
private _createStyleElem;
}