@nativescript-community/ui-pager
Version:
A NativeScript Pager / Carousel component that allows the user to swipe left and right through pages of data.
136 lines (135 loc) • 6 kB
TypeScript
import { AddChildFromBuilder, CoercibleProperty, CoreTypes, GridLayout, ItemsSource, KeyedTemplate, ObservableArray, Property, Template, View, ViewBase } from '@nativescript/core';
export type Orientation = 'horizontal' | 'vertical';
export declare namespace knownTemplates {
const itemTemplate = "itemTemplate";
}
export declare namespace knownMultiTemplates {
const itemTemplates = "itemTemplates";
}
export declare namespace knownCollections {
const items = "items";
}
export declare const pagerTraceCategory = "ns-pager";
export declare function PagerLog(message: string): void;
export declare function PagerError(message: string): void;
export { ItemsSource };
export interface ItemEventData {
eventName: string;
object: any;
index: number;
view: View;
android?: any;
ios?: any;
}
export declare enum Transformer {
SCALE = "scale"
}
export declare abstract class PagerBase extends View implements AddChildFromBuilder {
static mRegisteredTransformers: {};
static selectedIndexChangeEvent: string;
static scrollEvent: string;
static swipeEvent: string;
static swipeStartEvent: string;
static swipeOverEvent: string;
static swipeEndEvent: string;
static loadMoreItemsEvent: string;
static itemLoadingEvent: string;
static itemDisposingEvent: string;
static knownFunctions: string[];
items: any[] | ItemsSource;
selectedIndex: number;
itemTemplate: string | Template;
itemTemplates: string | KeyedTemplate[];
canGoRight: boolean;
canGoLeft: boolean;
spacing: CoreTypes.PercentLengthType;
peaking: CoreTypes.PercentLengthType;
perPage: number;
circularMode: boolean;
autoPlayDelay: number;
autoPlay: boolean;
preserveIndexOnItemsChange: boolean;
orientation: Orientation;
transformers: string;
loadMoreCount: number;
disableSwipe: boolean;
abstract readonly _childrenCount: number;
protected _effectiveItemHeight: number;
protected _effectiveItemWidth: number;
_childrenViews: {
view: PagerItem;
type: number;
}[];
protected mObservableArrayInstance: ObservableArray<any>;
get padding(): string | CoreTypes.LengthType;
set padding(value: string | CoreTypes.LengthType);
get paddingTop(): CoreTypes.LengthType;
set paddingTop(value: CoreTypes.LengthType);
get paddingRight(): CoreTypes.LengthType;
set paddingRight(value: CoreTypes.LengthType);
get paddingBottom(): CoreTypes.LengthType;
set paddingBottom(value: CoreTypes.LengthType);
get paddingLeft(): CoreTypes.LengthType;
set paddingLeft(value: CoreTypes.LengthType);
abstract refresh(): void;
static registerTransformer(key: string, transformer: any): void;
indicator: {
setProgress(position: number, progress: number): any;
setSelection(index: number, animated?: boolean): any;
setCount(count: number): any;
withoutAnimation(callback: Function): any;
getCount(): number;
getSelection(): number;
setInteractiveAnimation(animated?: boolean): any;
};
setIndicator(indicator: any): void;
disposeNativeView(): void;
protected abstract _observableArrayHandler(arg: any): void;
setObservableArrayInstance(value: any): void;
getChildView(index: number): View;
_removeView(view: ViewBase): void;
protected _removeChildView(index: number): void;
protected _addChildView(view: any, type: any): void;
_addChildFromBuilder(name: string, value: any): void;
private _itemTemplateSelector;
private _itemTemplateSelectorBindable;
_defaultTemplate: KeyedTemplate;
_itemTemplatesInternal: KeyedTemplate[];
private _itemIdGenerator;
get itemIdGenerator(): (item: any, index: number, items: any) => number;
set itemIdGenerator(generatorFn: (item: any, index: number, items: any) => number);
get itemTemplateSelector(): string | ((item: any, index: number, items: any) => string);
set itemTemplateSelector(value: string | ((item: any, index: number, items: any) => string));
onItemViewLoaderChanged(): void;
_itemViewLoader: Function;
get itemViewLoader(): Function;
set itemViewLoader(value: Function);
_getItemTemplateKey(index: number): string;
_getItemTemplate(index: number): KeyedTemplate;
_prepareItem(item: View, index: number): void;
_getDataItem(index: number): any;
_getDefaultItemContent(index: number): View;
abstract get disableAnimation(): boolean;
abstract set disableAnimation(value: boolean);
abstract itemTemplateUpdated(oldData: any, newData: any): void;
onLayout(left: number, top: number, right: number, bottom: number): void;
convertToSize(length: any): number;
}
export declare class PagerItem extends GridLayout {
}
export declare const circularModeProperty: Property<PagerBase, boolean>;
export declare const selectedIndexProperty: CoercibleProperty<PagerBase, number>;
export declare const spacingProperty: Property<PagerBase, CoreTypes.LengthType>;
export declare const peakingProperty: Property<PagerBase, CoreTypes.LengthType>;
export declare const itemsProperty: Property<PagerBase, any>;
export declare const itemTemplateProperty: Property<PagerBase, string | Template>;
export declare const itemTemplatesProperty: Property<PagerBase, string | KeyedTemplate[]>;
export declare const canGoRightProperty: Property<PagerBase, boolean>;
export declare const canGoLeftProperty: Property<PagerBase, boolean>;
export declare const orientationProperty: Property<PagerBase, Orientation>;
export declare const disableSwipeProperty: Property<PagerBase, boolean>;
export declare const perPageProperty: Property<PagerBase, number>;
export declare const transformersProperty: Property<PagerBase, string>;
export declare const showIndicatorProperty: Property<PagerBase, boolean>;
export declare const autoPlayProperty: Property<PagerBase, boolean>;
export declare const autoplayDelayProperty: Property<PagerBase, number>;