UNPKG

ionic-framework

Version:

An advanced HTML5 mobile app framework built on Angular2

258 lines (257 loc) 5.22 kB
import { ElementRef, EventEmitter } from 'angular2/core'; import { Ion } from '../ion'; import { Swiper } from './swiper-widget'; /** * @name Slides * @description * Slides is a slide box implementation based on Swiper.js * * @usage * ```ts * @Page({ * template: ` * <ion-slides pager (change)="onSlideChanged($event)" (move)="onSlideMove($event)" loop="true" autoplay="true"> * <ion-slide> * <h3>Thank you for choosing the Awesome App!</h3> * <p> * The number one app for everything awesome. * </p> * </ion-slide> * <ion-slide> * <h3>Using Awesome</h3> * <div id="list"> * <h5>Just three steps:</h5> * <ol> * <li>Be awesome</li> * <li>Stay awesome</li> * <li>There is no step 3</li> * </ol> * </div> * </ion-slide> * <ion-slide> * <h3>Any questions?</h3> * </ion-slide> * </ion-slides> * ` *}) * *``` * @demo /docs/v2/demos/slides/ * @see {@link /docs/v2/components#slides Slides Component Docs} * * Swiper.js: * The most modern mobile touch slider and framework with hardware accelerated transitions * * http://www.idangero.us/swiper/ * * Copyright 2015, Vladimir Kharlampidi * The iDangero.us * http://www.idangero.us/ * * Licensed under MIT */ export declare class Slides extends Ion { /** * @private */ rapidUpdate: Function; /** * @private */ private showPager; /** * @private */ private slider; /** * @private */ private maxScale; /** * @private */ private zoomElement; /** * @private */ private zoomGesture; /** * @private */ private scale; /** * @private */ private zoomLastPosX; /** * @private */ private zoomLastPosY; /** * @private */ private viewportWidth; /** * @private */ private viewportHeight; /** * @private */ private enableZoom; /** * @private */ private touch; /** * @input {boolean} Whether the slide should show the pager or not */ pager: any; /** * @input {any} Any slider options you want to configure, see swiper parameters: http://www.idangero.us/swiper/api/ */ options: any; /** * @input {number} Whether or not the slider can zoom in or out */ zoom: any; /** * @input {number} how long it should take to zoom a slide */ zoomDuration: any; /** * @input {number} the max scale an slide can be zoomed */ zoomMax: any; /** * @output {any} expression to evaluate when a slide has been changed */ change: EventEmitter<any>; /** * @output {any} expression to evaluate when a slide change starts */ slideChangeStart: EventEmitter<any>; /** * @output {any} expression to evaluate when a slide moves */ move: EventEmitter<any>; /** * @private * @param {ElementRef} elementRef TODO */ constructor(elementRef: ElementRef); /** * @private */ ngOnInit(): void; /** * @private */ onTap(swiper: any, e: any): void; /** * @private */ onClick(swiper: any, e: any): void; /** * @private */ onDoubleTap(swiper: any, e: any): void; /** * @private */ onLazyImageLoad(swiper: any, slide: any, img: any): void; /** * @private */ onLazyImageReady(swiper: any, slide: any, img: any): void; /** * @private */ initZoom(): void; /** * @private */ resetZoom(): void; /** * @private */ toggleZoom(swiper: any, e: any): void; /** * @private */ onTransitionStart(swiper: any, e: any): void; /** * @private */ onTransitionEnd(swiper: any, e: any): void; /** * @private */ onTouchStart(e: any): void; /** * @private */ onTouchMove(e: any): boolean; /** * @private */ onTouchEnd(e: any): void; /** * @private * Update the underlying slider implementation. Call this if you've added or removed * child slides. */ update(): void; /** * @private */ next(): void; /** * @private */ prev(): void; /** * @private */ getIndex(): number; /** * @private */ getNumSlides(): number; /** * @private */ isAtEnd(): boolean; /** * @private */ isAtBeginning(): boolean; /** * @private */ getSliderWidget(): Swiper; } /** * @name Slide * @description * `ion-slide` is a child component of `ion-slides` and is where all your individule slide content will be rendered too. * * @demo /docs/v2/demos/slides/ * @see {@link /docs/v2/api/components/slides/Slides/ Slides API Docs} */ export declare class Slide { /** * @private */ private ele; /** * @private */ zoom: any; constructor(elementRef: ElementRef, slides: Slides); } /** * @private */ export declare class SlideLazy { }