UNPKG

flipbook-vue2

Version:

3D page flip effect for Vue.js; support Vue Version 2

95 lines (92 loc) 2.94 kB
import Vue from 'vue' export type Direction = 'left' | 'right' export type Face = 'front' | 'back' export interface ZoomAt { pageX: number pageY: number } export type ImageLoadCallback = () => unknown export interface SlotScope { canFlipLeft: boolean canFlipRight: boolean canZoomIn: boolean canZoomOut: boolean page: number numPages: number flipLeft(): void flipRight(): void zoomIn(zoomAt?: ZoomAt): void zoomOut(zoomAt?: ZoomAt): void } declare const component: Vue.DefineComponent< { pages: string[] pagesHiRes?: string[] flipDuration?: number zoomDuration?: number zooms?: number[] perspective?: number nPolygons?: number ambient?: number gloss?: number swipeMin?: number singlePage?: boolean forwardDirection?: 'left' | 'right' centering?: boolean startPage?: number loadingImage?: string clickToZoom?: boolean dragToFlip?: boolean wheel?: 'scroll' | 'zoom' }, {}, {}, Vue.ComputedOptions, { onResize(): number | undefined fixFirstPage(): number | undefined pageUrl(page: number): string | null pageUrlLoading(page: number, hiRes?: boolean): string | null flipLeft(): number flipRight(): number makePolygonArray(face: Face): [id: string, image: string, lighting: string, bgPos: string, matrix: string, z: number][] computeLighting(rotate: number, dRotate: number): string flipStart(direction: Direction): number flipAuto(ease: boolean): number flipRevert(): number onImageLoad(trigger: number, cb: ImageLoadCallback): ImageLoadCallback didLoadImage(ev: Event): undefined | null zoomIn(zoomAt?: ZoomAt): number zoomOut(zoomAt?: ZoomZt): number zoomTo(zoom: number, zoomAt?: ZoomAt): number zoomAt(touch: ZoomAt): number swipeStart(touch: TouchInit): 'grab' | 'all-scroll' swipeMove(touch: TouchInit): true | undefined swipeEnd(touch: TouchInit): null | undefined onTouchStart(ev: TouchEvent): 'grab' | 'all-scroll' onTouchMove(ev: TouchEvent): void onTouchEnd(ev: TouchEvent): null | undefined onPointerDown(ev: PointerEvent): 'grab' | 'all-scroll' onPointerMove(ev: PointerEvent): true | undefined onPointerUp(ev: PointerEvent): void onMouseDown(ev: MouseEvent): 'grab' | 'all-scroll' onMouseMove(ev: MouseEvent): true | undefined onMouseUp(ev: MouseEvent): void dragScroll(x: number, y: number): number onWheel(ev: WheelEvent): void preloadImages(hiRes?: boolean): void goToPage(page: number): number loadImage(url: string): string }, Vue.ComponentOptionsMixin, Vue.ComponentOptionsMixin, { 'zoom-start': (zoom: number) => void 'zoom-end': (zoom: number) => void 'flip-left-start': (page: number) => void 'flip-left-end': (page: number) => void 'flip-right-start': (page: number) => void 'flip-right-end': (page: number) => void } > export default component