@egjs/flicking
Version:
Everyday 30 million people experience. It's reliable, flexible and extendable carousel.
44 lines (43 loc) • 1.54 kB
TypeScript
import Panel from "./Panel";
import { FlickingOptions } from "../types";
declare class PanelManager {
private cameraElement;
private options;
private panels;
private clones;
private range;
private length;
private lastIndex;
private cloneCount;
constructor(cameraElement: HTMLElement, options: FlickingOptions);
firstPanel(): Panel | undefined;
lastPanel(): Panel | undefined;
allPanels(): ReadonlyArray<Panel>;
originalPanels(): ReadonlyArray<Panel>;
clonedPanels(): ReadonlyArray<Panel[]>;
replacePanels(newPanels: Panel[], newClones: Panel[][]): void;
has(index: number): boolean;
get(index: number): Panel | undefined;
getPanelCount(): number;
getLastIndex(): number;
getRange(): Readonly<{
min: number;
max: number;
}>;
getCloneCount(): number;
setLastIndex(lastIndex: number): void;
setCloneCount(cloneCount: number): void;
insert(index: number, newPanels: Panel[]): number;
replace(index: number, newPanels: Panel[]): Panel[];
remove(index: number, deleteCount?: number): Panel[];
chainAllPanels(): void;
insertClones(cloneIndex: number, index: number, clonedPanels: Panel[], deleteCount?: number): void;
removeClonesAfter(cloneIndex: number): void;
findPanelOf(element: HTMLElement): Panel | undefined;
findFirstPanelFrom(index: number): Panel | undefined;
private addNewClones;
private updateIndex;
private insertNewPanels;
private shouldRender;
}
export default PanelManager;