@nativescript-community/ui-pager 13.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/CHANGELOG.md +224 -0
  2. package/LICENSE +201 -0
  3. package/angular/bundles/nativescript-community-ui-pager-angular.umd.js +753 -0
  4. package/angular/bundles/nativescript-community-ui-pager-angular.umd.js.map +1 -0
  5. package/angular/esm2015/index.js +55 -0
  6. package/angular/esm2015/nativescript-community-ui-pager-angular.js +2 -0
  7. package/angular/esm2015/pager-items-comp.js +312 -0
  8. package/angular/fesm2015/nativescript-community-ui-pager-angular.js +366 -0
  9. package/angular/fesm2015/nativescript-community-ui-pager-angular.js.map +1 -0
  10. package/angular/index.d.ts +18 -0
  11. package/angular/nativescript-community-ui-pager-angular.d.ts +2 -0
  12. package/angular/package.json +16 -0
  13. package/angular/pager-items-comp.d.ts +85 -0
  14. package/package.json +55 -0
  15. package/pager.android.d.ts +79 -0
  16. package/pager.android.js +954 -0
  17. package/pager.android.js.map +1 -0
  18. package/pager.common.d.ts +128 -0
  19. package/pager.common.js +393 -0
  20. package/pager.common.js.map +1 -0
  21. package/pager.d.ts +35 -0
  22. package/pager.ios.d.ts +115 -0
  23. package/pager.ios.js +1175 -0
  24. package/pager.ios.js.map +1 -0
  25. package/platforms/android/include.gradle +20 -0
  26. package/platforms/android/native-api-usage.json +10 -0
  27. package/platforms/ios/Podfile +1 -0
  28. package/platforms/ios/native-api-usage.json +7 -0
  29. package/react/index.d.ts +301 -0
  30. package/react/index.js +151 -0
  31. package/react/index.js.map +1 -0
  32. package/references.d.ts +1 -0
  33. package/svelte/index.d.ts +19 -0
  34. package/svelte/index.js +117 -0
  35. package/svelte/index.js.map +1 -0
  36. package/typings/viewpager2.d.ts +470 -0
  37. package/vue/index.d.ts +4 -0
  38. package/vue/index.js +9 -0
  39. package/vue/index.js.map +1 -0
  40. package/vue/pager.d.ts +47 -0
  41. package/vue/pager.js +104 -0
  42. package/vue/pager.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pager.ios.js","sourceRoot":"../src/","sources":["pager.ios.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ repositories {
2
+ maven { url 'https://jitpack.io' }
3
+ }
4
+
5
+ android {
6
+ configurations {
7
+ all*.exclude group:'com.romandanylyk', module:'pageindicatorview'
8
+ }
9
+ }
10
+
11
+ dependencies {
12
+ def androidxVersion = project.hasProperty("androidxVersion") ? project.androidxVersion : "1.1.0"
13
+ def androidxViewPager2Version = project.hasProperty("androidxViewPager2Version") ? project.androidxViewPager2Version : "1.0.0"
14
+
15
+ implementation "androidx.appcompat:appcompat:$androidxVersion"
16
+
17
+ implementation "androidx.viewpager2:viewpager2:$androidxViewPager2Version"
18
+
19
+ implementation 'com.github.adrielcafe:PageIndicatorView:1.0.6'
20
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "uses": [
3
+ "androidx.viewpager2*:*",
4
+ "androidx.recyclerview.widget:RecyclerView*",
5
+ "com.rd*:*",
6
+ "androidx.lifecycle*:*",
7
+ "androidx.core.app*:*"
8
+ ]
9
+ }
10
+
@@ -0,0 +1 @@
1
+ pod 'CHIPageControl', :git => 'https://github.com/triniwiz/CHIPageControl.git'
@@ -0,0 +1,7 @@
1
+ {
2
+ "uses": [
3
+ "CHIPageControl*:*",
4
+ "Dispatch*:*",
5
+ "Darwin*:*"
6
+ ]
7
+ }
@@ -0,0 +1,301 @@
1
+ import * as React from 'react';
2
+ import { View as TNSView } from '@nativescript/core';
3
+ import { ItemsSource, Pager as NativeScriptPager, PagerItem as NativeScriptPagerItem } from '../pager';
4
+ import { Template, Color, CoreTypes, View, KeyedTemplate } from '@nativescript/core';
5
+ import { NSVElement, ViewAttributes, NativeScriptProps, GridLayoutAttributes } from "react-nativescript";
6
+ import { Orientation } from '../pager';
7
+ export declare type PagerAttributes = ViewAttributes & {
8
+ items?: any;
9
+ selectedIndex?: number;
10
+ onItemLoading?: (args: any) => void;
11
+ itemIdGenerator?: (item: any, index: number, items: any) => number;
12
+ itemTemplate?: string | Template;
13
+ itemTemplateSelector?: string | ((item: any, index: number, items: any) => string);
14
+ itemTemplates?: string | KeyedTemplate[];
15
+ canGoRight?: boolean;
16
+ canGoLeft?: boolean;
17
+ spacing?: CoreTypes.PercentLengthType | string;
18
+ peaking?: CoreTypes.PercentLengthType | string;
19
+ perPage?: number;
20
+ orientation?: Orientation;
21
+ transformers?: string;
22
+ loadMoreCount?: number;
23
+ disableSwipe?: boolean;
24
+ indicator?: any;
25
+ showIndicator?: boolean;
26
+ indicatorColor?: Color | string;
27
+ indicatorSelectedColor?: Color | string;
28
+ ios?: any;
29
+ android?: any;
30
+ };
31
+ export declare type CellViewContainer = View;
32
+ declare type CellFactory = (item: any) => React.ReactElement;
33
+ declare type OwnProps = {
34
+ items: ItemsSource | any[];
35
+ cellFactory?: CellFactory;
36
+ cellFactories?: Map<string, {
37
+ placeholderItem: any;
38
+ cellFactory: CellFactory;
39
+ }>;
40
+ onSelectedIndexChange?(args: any): void;
41
+ onSelectedIndexChanged?(args: any): void;
42
+ scroll?(args: any): void;
43
+ swipe?(args: any): void;
44
+ swipeStart?(args: any): void;
45
+ swipeOver?(args: any): void;
46
+ swipeEnd?(args: any): void;
47
+ onLoadMoreItems?: (args: any) => void;
48
+ _debug?: {
49
+ logLevel: "debug" | "info";
50
+ onCellFirstLoad?: (container: CellViewContainer) => void;
51
+ onCellRecycle?: (container: CellViewContainer) => void;
52
+ };
53
+ } & Omit<PagerAttributes, "onItemLoading">;
54
+ declare type Props = OwnProps & {
55
+ forwardedRef?: React.RefObject<NSVElement<NativeScriptPager>>;
56
+ };
57
+ declare type NumberKey = number | string;
58
+ interface State {
59
+ nativeCells: Record<NumberKey, CellViewContainer>;
60
+ nativeCellToItemIndex: Map<CellViewContainer, NumberKey>;
61
+ itemIndexToNativeCell?: Map<NumberKey, CellViewContainer>;
62
+ }
63
+ export declare class _Pager extends React.Component<Props, State> {
64
+ static readonly defaultProps: {
65
+ _debug: {
66
+ logLevel: "info";
67
+ onCellFirstLoad: any;
68
+ onCellRecycle: any;
69
+ };
70
+ };
71
+ constructor(props: Props);
72
+ private readonly myRef;
73
+ private readonly argsViewToRootKeyAndRef;
74
+ private roots;
75
+ private readonly defaultOnItemLoading;
76
+ protected getNativeView(): NativeScriptPager | null;
77
+ private readonly renderNewRoot;
78
+ componentDidMount(): void;
79
+ componentWillUnmount(): void;
80
+ static isItemsSource(arr: any[] | ItemsSource): arr is ItemsSource;
81
+ render(): JSX.Element;
82
+ }
83
+ export declare type PagerItemAttributes = GridLayoutAttributes & {
84
+ forwardedRef?: React.RefObject<NSVElement<NativeScriptPagerItem>>;
85
+ };
86
+ export declare class _PagerItem extends React.Component<PagerItemAttributes, {}> {
87
+ private readonly myRef;
88
+ private readonly item;
89
+ componentDidMount(): void;
90
+ render(): React.ReactElement<{
91
+ ref: React.RefObject<NSVElement<NativeScriptPagerItem>>;
92
+ left?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
93
+ top?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
94
+ iosIgnoreSafeArea?: string | boolean;
95
+ alignSelf?: "auto" | "stretch" | "flex-start" | "flex-end" | "center" | "baseline";
96
+ android?: any;
97
+ bindingContext?: any;
98
+ class?: string;
99
+ className?: string;
100
+ col?: number;
101
+ colSpan?: number;
102
+ column?: string | number;
103
+ columnSpan?: string | number;
104
+ cssClasses?: Set<string>;
105
+ cssPseudoClasses?: Set<string>;
106
+ dock?: "left" | "top" | "right" | "bottom";
107
+ domNode?: import("@nativescript/core/debugger/dom-node").DOMNode;
108
+ effectiveBorderBottomWidth?: number;
109
+ effectiveBorderLeftWidth?: number;
110
+ effectiveBorderRightWidth?: number;
111
+ effectiveBorderTopWidth?: number;
112
+ effectiveHeight?: number;
113
+ effectiveLeft?: number;
114
+ effectiveMarginBottom?: number;
115
+ effectiveMarginLeft?: number;
116
+ effectiveMarginRight?: number;
117
+ effectiveMarginTop?: number;
118
+ effectiveMinHeight?: number;
119
+ effectiveMinWidth?: number;
120
+ effectivePaddingBottom?: number;
121
+ effectivePaddingLeft?: number;
122
+ effectivePaddingRight?: number;
123
+ effectivePaddingTop?: number;
124
+ effectiveTop?: number;
125
+ effectiveWidth?: number;
126
+ flexGrow?: number;
127
+ flexShrink?: number;
128
+ flexWrapBefore?: boolean;
129
+ hidden?: string | boolean;
130
+ id?: string;
131
+ ios?: any;
132
+ isCollapsed?: any;
133
+ isLoaded?: boolean;
134
+ nativeView?: any;
135
+ onBindingContextChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
136
+ onClassNameChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
137
+ onHiddenChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
138
+ onIdChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
139
+ order?: number;
140
+ page?: import("@nativescript/core").Page;
141
+ parent?: import("@nativescript/core").ViewBase;
142
+ parentNode?: import("@nativescript/core").ViewBase;
143
+ recycleNativeView?: "auto" | "always" | "never";
144
+ reusable?: boolean;
145
+ row?: string | number;
146
+ rowSpan?: string | number;
147
+ typeName?: string;
148
+ viewController?: any;
149
+ accessibilityHidden?: string | boolean;
150
+ accessibilityHint?: string;
151
+ accessibilityIdentifier?: string;
152
+ accessibilityIgnoresInvertColors?: string | boolean;
153
+ accessibilityLabel?: string;
154
+ accessibilityLanguage?: string;
155
+ accessibilityLiveRegion?: import("@nativescript/core").AccessibilityLiveRegion;
156
+ accessibilityMediaSession?: string | boolean;
157
+ accessibilityRole?: import("@nativescript/core").AccessibilityRole;
158
+ accessibilityState?: import("@nativescript/core").AccessibilityState;
159
+ accessibilityValue?: string;
160
+ accessible?: string | boolean;
161
+ androidDynamicElevationOffset?: string | number;
162
+ androidElevation?: string | number;
163
+ automationText?: string;
164
+ background?: string;
165
+ backgroundColor?: string | Color;
166
+ backgroundImage?: string | import("@nativescript/core/ui/styling/gradient").LinearGradient;
167
+ backgroundPosition?: string;
168
+ backgroundRepeat?: "repeat" | "repeat-x" | "repeat-y" | "no-repeat";
169
+ backgroundSize?: string;
170
+ borderBottomColor?: string | Color;
171
+ borderBottomLeftRadius?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
172
+ borderBottomRightRadius?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
173
+ borderBottomWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
174
+ borderColor?: string | Color;
175
+ borderLeftColor?: string | Color;
176
+ borderLeftWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
177
+ borderRadius?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
178
+ borderRightColor?: string | Color;
179
+ borderRightWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
180
+ borderTopColor?: string | Color;
181
+ borderTopLeftRadius?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
182
+ borderTopRightRadius?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
183
+ borderTopWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
184
+ borderWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
185
+ boxShadow?: string | import("@nativescript/core/ui/styling/css-shadow").CSSShadow;
186
+ color?: string | Color;
187
+ css?: string;
188
+ cssType?: string;
189
+ height?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
190
+ horizontalAlignment?: "left" | "right" | "stretch" | "center";
191
+ iosOverflowSafeArea?: boolean;
192
+ iosOverflowSafeAreaEnabled?: string | boolean;
193
+ isEnabled?: string | boolean;
194
+ isLayoutRequired?: boolean;
195
+ isLayoutValid?: boolean;
196
+ isUserInteractionEnabled?: string | boolean;
197
+ margin?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
198
+ marginBottom?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
199
+ marginLeft?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
200
+ marginRight?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
201
+ marginTop?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
202
+ minHeight?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
203
+ minWidth?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
204
+ modal?: TNSView;
205
+ onAccessibilityHintChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
206
+ onAccessibilityIdentifierChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
207
+ onAccessibilityIgnoresInvertColorsChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
208
+ onAccessibilityLabelChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
209
+ onAccessibilityValueChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
210
+ onAndroidBackPressed?: (args: import("@nativescript/core").EventData) => void;
211
+ onColumnChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
212
+ onColumnSpanChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
213
+ onDockChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
214
+ onDoubleTap?: (arg: import("@nativescript/core").TapGestureEventData) => any;
215
+ onIosIgnoreSafeAreaChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
216
+ onIosOverflowSafeAreaChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
217
+ onIosOverflowSafeAreaEnabledChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
218
+ onIsEnabledChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
219
+ onIsUserInteractionEnabledChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
220
+ onLeftChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
221
+ onLoaded?: (args: import("@nativescript/core").EventData) => void;
222
+ onLongPress?: (arg: import("@nativescript/core").GestureEventData) => any;
223
+ onOriginXChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
224
+ onOriginYChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
225
+ onPan?: (arg: import("@nativescript/core").PanGestureEventData) => any;
226
+ onPinch?: (arg: import("@nativescript/core").PinchGestureEventData) => any;
227
+ onRotation?: (arg: import("@nativescript/core").RotationGestureEventData) => any;
228
+ onRowChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
229
+ onRowSpanChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
230
+ onShowingModally?: (args: import("@nativescript/core").ShownModallyData) => void;
231
+ onShownModally?: (args: import("@nativescript/core").ShownModallyData) => void;
232
+ onLayoutChanged?: (args: import("@nativescript/core").EventData) => void;
233
+ onSwipe?: (arg: import("@nativescript/core").SwipeGestureEventData) => any;
234
+ onTap?: (arg: import("@nativescript/core").TapGestureEventData) => any;
235
+ onTopChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
236
+ onTouch?: (arg: import("@nativescript/core").TouchGestureEventData) => any;
237
+ onUnloaded?: (args: import("@nativescript/core").EventData) => void;
238
+ opacity?: string | number;
239
+ originX?: string | number;
240
+ originY?: string | number;
241
+ perspective?: string | number;
242
+ rotate?: string | number;
243
+ rotateX?: string | number;
244
+ rotateY?: string | number;
245
+ scaleX?: string | number;
246
+ scaleY?: string | number;
247
+ textTransform?: "none" | "initial" | "capitalize" | "uppercase" | "lowercase";
248
+ translateX?: string | number;
249
+ translateY?: string | number;
250
+ verticalAlignment?: "top" | "bottom" | "stretch" | "middle";
251
+ visibility?: "hidden" | "visible" | "collapse" | "collapsed";
252
+ width?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit | CoreTypes.LengthPercentUnit;
253
+ clipToBounds?: string | boolean;
254
+ isPassThroughParentEnabled?: string | boolean;
255
+ onClipToBoundsChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
256
+ onIsPassThroughParentEnabledChange?: (args: import("@nativescript/core").PropertyChangeData) => void;
257
+ padding?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
258
+ paddingBottom?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
259
+ paddingLeft?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
260
+ paddingRight?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
261
+ paddingTop?: string | number | CoreTypes.LengthDipUnit | CoreTypes.LengthPxUnit;
262
+ columns?: string;
263
+ rows?: string;
264
+ }, string | React.JSXElementConstructor<any>>;
265
+ }
266
+ export declare const Pager: React.ForwardRefExoticComponent<{
267
+ items: ItemsSource | any[];
268
+ cellFactory?: CellFactory;
269
+ cellFactories?: Map<string, {
270
+ placeholderItem: any;
271
+ cellFactory: CellFactory;
272
+ }>;
273
+ onSelectedIndexChange?(args: any): void;
274
+ onSelectedIndexChanged?(args: any): void;
275
+ scroll?(args: any): void;
276
+ swipe?(args: any): void;
277
+ swipeStart?(args: any): void;
278
+ swipeOver?(args: any): void;
279
+ swipeEnd?(args: any): void;
280
+ onLoadMoreItems?: (args: any) => void;
281
+ _debug?: {
282
+ logLevel: "debug" | "info";
283
+ onCellFirstLoad?: (container: CellViewContainer) => void;
284
+ onCellRecycle?: (container: CellViewContainer) => void;
285
+ };
286
+ } & Omit<PagerAttributes, "onItemLoading"> & React.RefAttributes<NSVElement<NativeScriptPager>>>;
287
+ export declare const PagerItem: React.ForwardRefExoticComponent<Omit<import("react-nativescript/dist/lib/react-nativescript-jsx").LayoutBaseAttributes, "columns" | "rows"> & {
288
+ columns?: string;
289
+ rows?: string;
290
+ } & {
291
+ forwardedRef?: React.RefObject<NSVElement<NativeScriptPagerItem>>;
292
+ } & React.RefAttributes<NSVElement<NativeScriptPagerItem>>>;
293
+ declare global {
294
+ module JSX {
295
+ interface IntrinsicElements {
296
+ pager: NativeScriptProps<PagerAttributes, NativeScriptPager>;
297
+ pagerItem: NativeScriptProps<PagerItemAttributes, NativeScriptPagerItem>;
298
+ }
299
+ }
300
+ }
301
+ export {};
package/react/index.js ADDED
@@ -0,0 +1,151 @@
1
+ import * as React from 'react';
2
+ import { PagerItem as NativeScriptPagerItem } from '../pager';
3
+ import { registerElement } from 'react-nativescript';
4
+ import { render as RNSRender, unmountComponentAtNode, NSVRoot } from "react-nativescript";
5
+ registerElement('pager', () => require('../').Pager);
6
+ registerElement('pagerItem', () => require('../').PagerItem);
7
+ export class _Pager extends React.Component {
8
+ constructor(props) {
9
+ super(props);
10
+ this.myRef = React.createRef();
11
+ this.argsViewToRootKeyAndRef = new Map();
12
+ this.roots = new Set();
13
+ this.defaultOnItemLoading = (args) => {
14
+ const { logLevel, onCellRecycle, onCellFirstLoad } = this.props._debug;
15
+ const { items, itemTemplateSelector } = this.props;
16
+ const item = _Pager.isItemsSource(items) ? items.getItem(args.index) : items[args.index];
17
+ const template = itemTemplateSelector
18
+ ? typeof itemTemplateSelector === "string"
19
+ ? itemTemplateSelector
20
+ : itemTemplateSelector(item, args.index, items)
21
+ : null;
22
+ const cellFactory = template === null
23
+ ? this.props.cellFactory
24
+ : this.props.cellFactories
25
+ ? this.props.cellFactories.get(template).cellFactory
26
+ : this.props.cellFactory;
27
+ if (typeof cellFactory === "undefined") {
28
+ console.warn(`Pager: No cell factory found, given template ${template}!`);
29
+ return;
30
+ }
31
+ let view = args.view;
32
+ if (!view) {
33
+ const rootKeyAndRef = this.renderNewRoot(item, cellFactory);
34
+ args.view = rootKeyAndRef.nativeView;
35
+ this.argsViewToRootKeyAndRef.set(args.view, rootKeyAndRef);
36
+ if (onCellFirstLoad)
37
+ onCellFirstLoad(rootKeyAndRef.nativeView);
38
+ }
39
+ else {
40
+ console.log(`[Pager] existing view: `, view);
41
+ if (onCellRecycle)
42
+ onCellRecycle(view);
43
+ const { rootKey, nativeView } = this.argsViewToRootKeyAndRef.get(view);
44
+ if (typeof rootKey === "undefined") {
45
+ console.error(`Unable to find root key that args.view corresponds to!`, view);
46
+ return;
47
+ }
48
+ if (!nativeView) {
49
+ console.error(`Unable to find ref that args.view corresponds to!`, view);
50
+ return;
51
+ }
52
+ RNSRender(cellFactory(item), null, () => {
53
+ }, rootKey);
54
+ }
55
+ };
56
+ this.renderNewRoot = (item, cellFactory) => {
57
+ const node = this.getNativeView();
58
+ if (!node) {
59
+ throw new Error("Unable to get ref to Pager");
60
+ }
61
+ console.log(`[Pager] no existing view.`);
62
+ const rootKey = `Pager-${node._domId}-${this.roots.size.toString()}`;
63
+ const root = new NSVRoot();
64
+ RNSRender(cellFactory(item), root, () => {
65
+ }, rootKey);
66
+ this.roots.add(rootKey);
67
+ return {
68
+ rootKey,
69
+ nativeView: root.baseRef.nativeView
70
+ };
71
+ };
72
+ this.state = {
73
+ nativeCells: {},
74
+ nativeCellToItemIndex: new Map(),
75
+ itemIndexToNativeCell: props._debug.logLevel === "debug" ? new Map() : undefined,
76
+ };
77
+ }
78
+ getNativeView() {
79
+ const ref = (this.props.forwardedRef || this.myRef);
80
+ return ref.current ? ref.current.nativeView : null;
81
+ }
82
+ componentDidMount() {
83
+ const node = this.getNativeView();
84
+ if (!node) {
85
+ console.warn(`React ref to NativeScript View lost, so unable to set item templates.`);
86
+ return;
87
+ }
88
+ if (this.props.cellFactories) {
89
+ const itemTemplates = [];
90
+ this.props.cellFactories.forEach((info, key) => {
91
+ const { placeholderItem, cellFactory } = info;
92
+ itemTemplates.push({
93
+ key,
94
+ createView: () => {
95
+ console.log(`[Pager] item template "${key}"`);
96
+ const rootKeyAndRef = this.renderNewRoot(placeholderItem, cellFactory);
97
+ this.argsViewToRootKeyAndRef.set(rootKeyAndRef.nativeView, rootKeyAndRef);
98
+ return rootKeyAndRef.nativeView;
99
+ },
100
+ });
101
+ });
102
+ node.itemTemplates = itemTemplates;
103
+ }
104
+ }
105
+ componentWillUnmount() {
106
+ this.roots.forEach(root => unmountComponentAtNode(root));
107
+ }
108
+ static isItemsSource(arr) {
109
+ return typeof arr.getItem === "function";
110
+ }
111
+ render() {
112
+ console.log(`Pager's render()`);
113
+ const _a = this.props, { forwardedRef, children, _debug, cellFactories, cellFactory } = _a, rest = __rest(_a, ["forwardedRef", "children", "_debug", "cellFactories", "cellFactory"]);
114
+ return (React.createElement("pager", Object.assign({}, rest, { onItemLoading: this.defaultOnItemLoading, ref: forwardedRef || this.myRef, children: children })));
115
+ }
116
+ }
117
+ _Pager.defaultProps = {
118
+ _debug: {
119
+ logLevel: "info",
120
+ onCellFirstLoad: undefined,
121
+ onCellRecycle: undefined,
122
+ },
123
+ };
124
+ export class _PagerItem extends React.Component {
125
+ constructor() {
126
+ super(...arguments);
127
+ this.myRef = React.createRef();
128
+ this.item = new NativeScriptPagerItem();
129
+ }
130
+ componentDidMount() {
131
+ const { forwardedRef } = this.props;
132
+ const view = (forwardedRef || this.myRef).current.nativeView;
133
+ const parent = view && view.parent ? view.parent : null;
134
+ if (parent) {
135
+ parent._removeView(view);
136
+ this.item.addChild(view);
137
+ parent._addChildFromBuilder('PagerItem', this.item);
138
+ }
139
+ }
140
+ render() {
141
+ const _a = this.props, { forwardedRef, children } = _a, rest = __rest(_a, ["forwardedRef", "children"]);
142
+ return React.createElement('pagerItem', Object.assign(Object.assign({}, rest), { ref: forwardedRef || this.myRef }), children);
143
+ }
144
+ }
145
+ export const Pager = React.forwardRef((props, ref) => {
146
+ return React.createElement(_Pager, Object.assign({}, props, { forwardedRef: ref }));
147
+ });
148
+ export const PagerItem = React.forwardRef((props, ref) => {
149
+ return React.createElement(_PagerItem, Object.assign({}, props, { forwardedRef: ref }));
150
+ });
151
+ //# sourceMappingURL=index.js.map