@nativescript-community/ui-pager 13.0.33 → 13.0.36

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 (34) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/angular/esm2020/index.mjs +55 -0
  3. package/angular/{esm2015/nativescript-community-ui-pager-angular.js → esm2020/nativescript-community-ui-pager-angular.mjs} +0 -0
  4. package/angular/esm2020/pager-items-comp.mjs +304 -0
  5. package/angular/fesm2015/nativescript-community-ui-pager-angular.mjs +379 -0
  6. package/angular/fesm2015/nativescript-community-ui-pager-angular.mjs.map +1 -0
  7. package/angular/{fesm2015/nativescript-community-ui-pager-angular.js → fesm2020/nativescript-community-ui-pager-angular.mjs} +15 -24
  8. package/angular/fesm2020/nativescript-community-ui-pager-angular.mjs.map +1 -0
  9. package/angular/package.json +20 -6
  10. package/index.android.js +336 -350
  11. package/index.android.js.map +1 -1
  12. package/index.common.d.ts +1 -4
  13. package/index.common.js +4 -7
  14. package/index.common.js.map +1 -1
  15. package/index.d.ts +1 -1
  16. package/index.ios.d.ts +15 -15
  17. package/index.ios.js +259 -375
  18. package/index.ios.js.map +1 -1
  19. package/package.json +9 -4
  20. package/react/index.d.ts +5 -5
  21. package/react/index.js +4 -2
  22. package/react/index.js.map +1 -1
  23. package/references.d.ts +1 -0
  24. package/svelte/index.js +3 -2
  25. package/svelte/index.js.map +1 -1
  26. package/typings/objc!CHIPageControl.d.ts +197 -0
  27. package/vue/pager.js +15 -15
  28. package/vue/pager.js.map +1 -1
  29. package/.pnpm-debug.log +0 -1
  30. package/angular/bundles/nativescript-community-ui-pager-angular.umd.js +0 -759
  31. package/angular/bundles/nativescript-community-ui-pager-angular.umd.js.map +0 -1
  32. package/angular/esm2015/index.js +0 -55
  33. package/angular/esm2015/pager-items-comp.js +0 -312
  34. package/angular/fesm2015/nativescript-community-ui-pager-angular.js.map +0 -1
@@ -0,0 +1,379 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, ɵisListLikeIterable, TemplateRef, ViewContainerRef, Component, ViewChild, Output, ContentChild, Input, InjectionToken, Directive, Inject, Host, forwardRef, ChangeDetectionStrategy, NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
3
+ import { Pager, PagerItem, PagerLog, PagerError } from '@nativescript-community/ui-pager';
4
+ import { registerElement, extractSingleViewRecursive, isInvisibleNode } from '@nativescript/angular';
5
+ import { isIOS, Trace, LayoutBase } from '@nativescript/core';
6
+ import { ObservableArray } from '@nativescript/core/data/observable-array';
7
+ import { profile } from '@nativescript/core/profiling';
8
+
9
+ const _c0 = ["loader"];
10
+ registerElement('Pager', () => Pager);
11
+ registerElement('PagerItem', () => PagerItem);
12
+ const NG_VIEW = '_ngViewRef';
13
+ class ItemContext {
14
+ constructor($implicit, item, index, even, odd) {
15
+ this.$implicit = $implicit;
16
+ this.item = item;
17
+ this.index = index;
18
+ this.even = even;
19
+ this.odd = odd;
20
+ }
21
+ }
22
+ class TemplatedItemsComponent {
23
+ constructor(_elementRef, _iterableDiffers) {
24
+ this._iterableDiffers = _iterableDiffers;
25
+ this.setupItemView = new EventEmitter();
26
+ this.templatedItemsView = _elementRef.nativeElement;
27
+ this.templatedItemsView.on('itemLoading', this.onItemLoading, this);
28
+ this.templatedItemsView.on('itemDisposing', this.onItemDisposing, this);
29
+ }
30
+ get items() {
31
+ return this._items;
32
+ }
33
+ set items(value) {
34
+ this._items = value;
35
+ let needDiffer = true;
36
+ if (value instanceof ObservableArray) {
37
+ needDiffer = false;
38
+ }
39
+ if (needDiffer && !this._differ && ɵisListLikeIterable(value)) {
40
+ this._differ = this._iterableDiffers.find(this._items).create((_index, item) => item);
41
+ }
42
+ this.templatedItemsView.items = this._items;
43
+ }
44
+ get selectedIndex() {
45
+ return this._selectedIndex;
46
+ }
47
+ set selectedIndex(value) {
48
+ this._selectedIndex = value;
49
+ this.templatedItemsView.selectedIndex = this._selectedIndex;
50
+ }
51
+ ngAfterViewInit() {
52
+ if (!!this._selectedIndex) {
53
+ setTimeout(() => {
54
+ if (isIOS) {
55
+ this.templatedItemsView.scrollToIndexAnimated(this._selectedIndex, false);
56
+ }
57
+ this.templatedItemsView.selectedIndex = this._selectedIndex;
58
+ });
59
+ }
60
+ }
61
+ ngAfterContentInit() {
62
+ if (Trace.isEnabled()) {
63
+ PagerLog('TemplatedItemsView.ngAfterContentInit()');
64
+ }
65
+ this.setItemTemplates();
66
+ }
67
+ ngOnDestroy() {
68
+ this.templatedItemsView.off('itemLoading', this.onItemLoading, this);
69
+ this.templatedItemsView.off('itemDisposing', this.onItemDisposing, this);
70
+ }
71
+ setItemTemplates() {
72
+ if (!this.items)
73
+ return;
74
+ this.itemTemplate = this.itemTemplateQuery;
75
+ if (this._templateMap) {
76
+ if (Trace.isEnabled()) {
77
+ PagerLog('Setting templates');
78
+ }
79
+ const templates = [];
80
+ this._templateMap.forEach((value) => {
81
+ templates.push(value);
82
+ });
83
+ this.templatedItemsView.itemTemplates = templates;
84
+ }
85
+ }
86
+ registerTemplate(key, template) {
87
+ if (Trace.isEnabled()) {
88
+ PagerLog(`registerTemplate for key: ${key}`);
89
+ }
90
+ if (!this._templateMap) {
91
+ this._templateMap = new Map();
92
+ }
93
+ const keyedTemplate = {
94
+ key,
95
+ createView: this.getItemTemplateViewFactory(template)
96
+ };
97
+ this._templateMap.set(key, keyedTemplate);
98
+ }
99
+ onItemLoading(args) {
100
+ if (!args.view && !this.itemTemplate) {
101
+ return;
102
+ }
103
+ if (!this.items)
104
+ return;
105
+ const index = args.index;
106
+ const items = args.object.items;
107
+ const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];
108
+ let viewRef;
109
+ if (args.view) {
110
+ if (Trace.isEnabled()) {
111
+ PagerLog(`onItemLoading: ${index} - Reusing existing view`);
112
+ }
113
+ viewRef = args.view[NG_VIEW];
114
+ if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {
115
+ viewRef = args.view.getChildAt(0)[NG_VIEW];
116
+ }
117
+ if (!viewRef && Trace.isEnabled()) {
118
+ PagerError(`ViewReference not found for item ${index}. View recycling is not working`);
119
+ }
120
+ }
121
+ if (!viewRef) {
122
+ if (Trace.isEnabled()) {
123
+ PagerLog(`onItemLoading: ${index} - Creating view from template`);
124
+ }
125
+ viewRef = this.loader.createEmbeddedView(this.itemTemplate, new ItemContext(), 0);
126
+ args.view = getItemViewRoot(viewRef);
127
+ args.view[NG_VIEW] = viewRef;
128
+ }
129
+ this.setupViewRef(viewRef, currentItem, index);
130
+ this.detectChangesOnChild(viewRef, index);
131
+ }
132
+ onItemDisposing(args) {
133
+ if (!args.view) {
134
+ return;
135
+ }
136
+ let viewRef;
137
+ if (args.view) {
138
+ if (Trace.isEnabled()) {
139
+ PagerLog(`onItemDisposing: ${args.index} - Removing angular view`);
140
+ }
141
+ viewRef = args.view[NG_VIEW];
142
+ if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {
143
+ viewRef = args.view.getChildAt(0)[NG_VIEW];
144
+ }
145
+ if (!viewRef && Trace.isEnabled()) {
146
+ PagerError(`ViewReference not found for item ${args.index}. View disposing is not working`);
147
+ }
148
+ }
149
+ if (viewRef) {
150
+ if (Trace.isEnabled()) {
151
+ PagerLog(`onItemDisposing: ${args.index} - Disposing view reference`);
152
+ }
153
+ viewRef.destroy();
154
+ }
155
+ }
156
+ setupViewRef(viewRef, data, index) {
157
+ const context = viewRef.context;
158
+ context.$implicit = data;
159
+ context.item = data;
160
+ context.index = index;
161
+ context.even = index % 2 === 0;
162
+ context.odd = !context.even;
163
+ this.setupItemView.next({
164
+ view: viewRef,
165
+ data,
166
+ index,
167
+ context
168
+ });
169
+ }
170
+ getItemTemplateViewFactory(template) {
171
+ return () => {
172
+ const viewRef = this.loader.createEmbeddedView(template, new ItemContext(), 0);
173
+ const resultView = getItemViewRoot(viewRef);
174
+ resultView[NG_VIEW] = viewRef;
175
+ return resultView;
176
+ };
177
+ }
178
+ detectChangesOnChild(viewRef, index) {
179
+ if (Trace.isEnabled()) {
180
+ PagerLog(`Manually detect changes in child: ${index}`);
181
+ }
182
+ viewRef.markForCheck();
183
+ viewRef.detectChanges();
184
+ }
185
+ ngDoCheck() {
186
+ if (this._differ) {
187
+ if (Trace.isEnabled()) {
188
+ PagerLog('ngDoCheck() - execute differ');
189
+ }
190
+ const changes = this._differ.diff(this._items);
191
+ if (changes) {
192
+ if (Trace.isEnabled()) {
193
+ PagerLog('ngDoCheck() - refresh');
194
+ }
195
+ this.templatedItemsView.refresh();
196
+ }
197
+ }
198
+ }
199
+ }
200
+ TemplatedItemsComponent.ɵfac = function TemplatedItemsComponent_Factory(t) { return new (t || TemplatedItemsComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.IterableDiffers)); };
201
+ TemplatedItemsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: TemplatedItemsComponent, selectors: [["ng-component"]], contentQueries: function TemplatedItemsComponent_ContentQueries(rf, ctx, dirIndex) {
202
+ if (rf & 1) {
203
+ i0.ɵɵcontentQuery(dirIndex, TemplateRef, 5);
204
+ }
205
+ if (rf & 2) {
206
+ let _t;
207
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.itemTemplateQuery = _t.first);
208
+ }
209
+ }, viewQuery: function TemplatedItemsComponent_Query(rf, ctx) {
210
+ if (rf & 1) {
211
+ i0.ɵɵviewQuery(_c0, 5, ViewContainerRef);
212
+ }
213
+ if (rf & 2) {
214
+ let _t;
215
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.loader = _t.first);
216
+ }
217
+ }, inputs: { items: "items", selectedIndex: "selectedIndex" }, outputs: { setupItemView: "setupItemView" }, decls: 0, vars: 0, template: function TemplatedItemsComponent_Template(rf, ctx) { }, encapsulation: 2 });
218
+ __decorate([
219
+ profile
220
+ ], TemplatedItemsComponent.prototype, "onItemLoading", null);
221
+ __decorate([
222
+ profile
223
+ ], TemplatedItemsComponent.prototype, "onItemDisposing", null);
224
+ __decorate([
225
+ profile
226
+ ], TemplatedItemsComponent.prototype, "detectChangesOnChild", null);
227
+ (function () {
228
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TemplatedItemsComponent, [{
229
+ type: Component,
230
+ args: [{
231
+ template: ''
232
+ }]
233
+ }], function () { return [{ type: i0.ElementRef }, { type: i0.IterableDiffers }]; }, { loader: [{
234
+ type: ViewChild,
235
+ args: ['loader', { read: ViewContainerRef, static: false }]
236
+ }], setupItemView: [{
237
+ type: Output
238
+ }], itemTemplateQuery: [{
239
+ type: ContentChild,
240
+ args: [TemplateRef, { static: false }]
241
+ }], items: [{
242
+ type: Input
243
+ }], selectedIndex: [{
244
+ type: Input
245
+ }], onItemLoading: [], onItemDisposing: [], detectChangesOnChild: [] });
246
+ })();
247
+ function getItemViewRoot(viewRef, rootLocator = extractSingleViewRecursive) {
248
+ return rootLocator(viewRef.rootNodes, 0);
249
+ }
250
+ const TEMPLATED_ITEMS_COMPONENT = new InjectionToken('TemplatedItemsComponent');
251
+ class PagerItemDirective {
252
+ constructor(templateRef, owner, viewContainer) {
253
+ this.templateRef = templateRef;
254
+ this.owner = owner;
255
+ this.viewContainer = viewContainer;
256
+ }
257
+ ensureItem() {
258
+ if (!this.item) {
259
+ this.item = new PagerItem();
260
+ }
261
+ }
262
+ applyConfig() {
263
+ this.ensureItem();
264
+ }
265
+ ngOnInit() {
266
+ this.applyConfig();
267
+ const viewRef = this.viewContainer.createEmbeddedView(this.templateRef);
268
+ const realViews = viewRef.rootNodes.filter((node) => !isInvisibleNode(node));
269
+ if (realViews.length > 0) {
270
+ const view = realViews[0];
271
+ this.item.addChild(view);
272
+ this.owner.nativeElement._addChildFromBuilder('PagerItem', this.item);
273
+ }
274
+ }
275
+ }
276
+ PagerItemDirective.ɵfac = function PagerItemDirective_Factory(t) { return new (t || PagerItemDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(TEMPLATED_ITEMS_COMPONENT, 1), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); };
277
+ PagerItemDirective.ɵdir = i0.ɵɵdefineDirective({ type: PagerItemDirective, selectors: [["", "pagerItem", ""]] });
278
+ (function () {
279
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagerItemDirective, [{
280
+ type: Directive,
281
+ args: [{
282
+ selector: '[pagerItem]'
283
+ }]
284
+ }], function () {
285
+ return [{ type: i0.TemplateRef }, { type: TemplatedItemsComponent, decorators: [{
286
+ type: Inject,
287
+ args: [TEMPLATED_ITEMS_COMPONENT]
288
+ }, {
289
+ type: Host
290
+ }] }, { type: i0.ViewContainerRef }];
291
+ }, null);
292
+ })();
293
+ class TemplateKeyDirective {
294
+ constructor(templateRef, comp) {
295
+ this.templateRef = templateRef;
296
+ this.comp = comp;
297
+ }
298
+ set pagerTemplateKey(value) {
299
+ if (this.comp && this.templateRef) {
300
+ this.comp.registerTemplate(value, this.templateRef);
301
+ }
302
+ }
303
+ }
304
+ TemplateKeyDirective.ɵfac = function TemplateKeyDirective_Factory(t) { return new (t || TemplateKeyDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(TEMPLATED_ITEMS_COMPONENT, 1)); };
305
+ TemplateKeyDirective.ɵdir = i0.ɵɵdefineDirective({ type: TemplateKeyDirective, selectors: [["", "pagerTemplateKey", ""]], inputs: { pagerTemplateKey: "pagerTemplateKey" } });
306
+ (function () {
307
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TemplateKeyDirective, [{
308
+ type: Directive,
309
+ args: [{ selector: '[pagerTemplateKey]' }]
310
+ }], function () {
311
+ return [{ type: i0.TemplateRef }, { type: TemplatedItemsComponent, decorators: [{
312
+ type: Inject,
313
+ args: [TEMPLATED_ITEMS_COMPONENT]
314
+ }, {
315
+ type: Host
316
+ }] }];
317
+ }, { pagerTemplateKey: [{
318
+ type: Input
319
+ }] });
320
+ })();
321
+
322
+ class PagerComponent extends TemplatedItemsComponent {
323
+ constructor(_elementRef, _iterableDiffers) {
324
+ super(_elementRef, _iterableDiffers);
325
+ }
326
+ get nativeElement() {
327
+ return this.templatedItemsView;
328
+ }
329
+ }
330
+ PagerComponent.ɵfac = function PagerComponent_Factory(t) { return new (t || PagerComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.IterableDiffers)); };
331
+ PagerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: PagerComponent, selectors: [["Pager"]], features: [i0.ɵɵProvidersFeature([
332
+ {
333
+ provide: TEMPLATED_ITEMS_COMPONENT,
334
+ useExisting: forwardRef(() => PagerComponent)
335
+ }
336
+ ]), i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 0, consts: [["loader", ""]], template: function PagerComponent_Template(rf, ctx) {
337
+ if (rf & 1) {
338
+ i0.ɵɵelementStart(0, "DetachedContainer");
339
+ i0.ɵɵelement(1, "Placeholder", null, 0);
340
+ i0.ɵɵelementEnd();
341
+ }
342
+ }, encapsulation: 2, changeDetection: 0 });
343
+ (function () {
344
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagerComponent, [{
345
+ type: Component,
346
+ args: [{
347
+ selector: 'Pager',
348
+ template: ` <DetachedContainer>
349
+ <Placeholder #loader></Placeholder>
350
+ </DetachedContainer>`,
351
+ changeDetection: ChangeDetectionStrategy.OnPush,
352
+ providers: [
353
+ {
354
+ provide: TEMPLATED_ITEMS_COMPONENT,
355
+ useExisting: forwardRef(() => PagerComponent)
356
+ }
357
+ ]
358
+ }]
359
+ }], function () { return [{ type: i0.ElementRef }, { type: i0.IterableDiffers }]; }, null);
360
+ })();
361
+ class PagerModule {
362
+ }
363
+ PagerModule.ɵfac = function PagerModule_Factory(t) { return new (t || PagerModule)(); };
364
+ PagerModule.ɵmod = i0.ɵɵdefineNgModule({ type: PagerModule });
365
+ PagerModule.ɵinj = i0.ɵɵdefineInjector({});
366
+ (function () {
367
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagerModule, [{
368
+ type: NgModule,
369
+ args: [{
370
+ declarations: [PagerComponent, TemplateKeyDirective, PagerItemDirective],
371
+ exports: [PagerComponent, TemplateKeyDirective, PagerItemDirective],
372
+ schemas: [NO_ERRORS_SCHEMA]
373
+ }]
374
+ }], null, null);
375
+ })();
376
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(PagerModule, { declarations: [PagerComponent, TemplateKeyDirective, PagerItemDirective], exports: [PagerComponent, TemplateKeyDirective, PagerItemDirective] }); })();
377
+
378
+ export { PagerComponent, PagerItemDirective, PagerModule, TemplateKeyDirective, TemplatedItemsComponent };
379
+ //# sourceMappingURL=nativescript-community-ui-pager-angular.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativescript-community-ui-pager-angular.mjs","sources":["../../../../src/ui-pager/angular/pager-items-comp.ts","../../../../src/ui-pager/angular/index.ts"],"sourcesContent":["import {\n AfterContentInit,\n Component,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Host,\n Inject,\n InjectionToken,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ɵisListLikeIterable as isListLikeIterable\n} from '@angular/core';\nimport { Pager, PagerError, PagerItem, PagerLog } from '@nativescript-community/ui-pager';\nimport { extractSingleViewRecursive, isInvisibleNode, registerElement } from '@nativescript/angular';\nimport { EventData, KeyedTemplate, LayoutBase, Template, Trace, View, isIOS } from '@nativescript/core';\nimport { ObservableArray } from '@nativescript/core/data/observable-array';\nimport { profile } from '@nativescript/core/profiling';\nimport { ItemEventData, ItemsSource } from '@nativescript/core/ui/list-view';\n\nregisterElement('Pager', () => Pager);\nregisterElement('PagerItem', () => PagerItem);\n\nconst NG_VIEW = '_ngViewRef';\n\nexport interface PagerTemplatedItemsView {\n items: any[] | ItemsSource;\n itemTemplate: string | Template;\n itemTemplates?: string | KeyedTemplate[];\n\n refresh(): void;\n\n on(event: 'itemDisposing' | 'itemLoading', callback: (args: ItemEventData) => void, thisArg?: any);\n\n off(event: 'itemLoading' | 'itemDisposing', callback: (args: EventData) => void, thisArg?: any);\n}\n\nexport class ItemContext {\n constructor(public $implicit?: any, public item?: any, public index?: number, public even?: boolean, public odd?: boolean) {}\n}\n\nexport interface SetupItemViewArgs {\n view: EmbeddedViewRef<any>;\n data: any;\n index: number;\n context: ItemContext;\n}\n@Component({\n template: ''\n})\nexport abstract class TemplatedItemsComponent implements DoCheck, OnDestroy, AfterContentInit {\n public abstract get nativeElement(): Pager;\n\n protected templatedItemsView: Pager;\n protected _items: any;\n protected _differ: IterableDiffer<KeyedTemplate>;\n protected _templateMap: Map<string, KeyedTemplate>;\n private _selectedIndex: number;\n @ViewChild('loader', { read: ViewContainerRef, static: false }) loader: ViewContainerRef;\n\n @Output()\n public setupItemView = new EventEmitter<SetupItemViewArgs>();\n\n @ContentChild(TemplateRef, { static: false }) itemTemplateQuery: TemplateRef<ItemContext>;\n\n itemTemplate: TemplateRef<ItemContext>;\n\n @Input()\n get items() {\n return this._items;\n }\n\n set items(value: any) {\n this._items = value;\n let needDiffer = true;\n if (value instanceof ObservableArray) {\n needDiffer = false;\n }\n if (needDiffer && !this._differ && isListLikeIterable(value)) {\n this._differ = this._iterableDiffers.find(this._items).create((_index, item) => item);\n }\n\n this.templatedItemsView.items = this._items;\n }\n\n @Input()\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n set selectedIndex(value) {\n this._selectedIndex = value;\n this.templatedItemsView.selectedIndex = this._selectedIndex;\n }\n\n ngAfterViewInit() {\n if (!!this._selectedIndex) {\n setTimeout(() => {\n if (isIOS) {\n this.templatedItemsView.scrollToIndexAnimated(this._selectedIndex, false);\n }\n this.templatedItemsView.selectedIndex = this._selectedIndex;\n });\n }\n }\n\n constructor(_elementRef: ElementRef, private _iterableDiffers: IterableDiffers) {\n this.templatedItemsView = _elementRef.nativeElement;\n\n this.templatedItemsView.on('itemLoading', this.onItemLoading, this);\n this.templatedItemsView.on('itemDisposing', this.onItemDisposing, this);\n }\n\n ngAfterContentInit() {\n if (Trace.isEnabled()) {\n PagerLog('TemplatedItemsView.ngAfterContentInit()');\n }\n this.setItemTemplates();\n }\n\n ngOnDestroy() {\n this.templatedItemsView.off('itemLoading', this.onItemLoading, this);\n this.templatedItemsView.off('itemDisposing', this.onItemDisposing, this);\n }\n\n private setItemTemplates() {\n if (!this.items) return;\n // The itemTemplateQuery may be changed after list items are added that contain <template> inside,\n // so cache and use only the original template to avoid errors.\n this.itemTemplate = this.itemTemplateQuery;\n\n if (this._templateMap) {\n if (Trace.isEnabled()) {\n PagerLog('Setting templates');\n }\n\n const templates: KeyedTemplate[] = [];\n this._templateMap.forEach((value) => {\n templates.push(value);\n });\n this.templatedItemsView.itemTemplates = templates;\n }\n }\n\n public registerTemplate(key: string, template: TemplateRef<ItemContext>) {\n if (Trace.isEnabled()) {\n PagerLog(`registerTemplate for key: ${key}`);\n }\n\n if (!this._templateMap) {\n this._templateMap = new Map<string, KeyedTemplate>();\n }\n\n const keyedTemplate = {\n key,\n createView: this.getItemTemplateViewFactory(template)\n };\n\n this._templateMap.set(key, keyedTemplate);\n }\n\n @profile\n public onItemLoading(args: ItemEventData) {\n if (!args.view && !this.itemTemplate) {\n return;\n }\n\n if (!this.items) return;\n\n const index = args.index;\n const items = (args.object as any).items;\n const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (args.view) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemLoading: ${index} - Reusing existing view`);\n }\n\n viewRef = args.view[NG_VIEW];\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n viewRef = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (!viewRef && Trace.isEnabled()) {\n PagerError(`ViewReference not found for item ${index}. View recycling is not working`);\n }\n }\n\n if (!viewRef) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemLoading: ${index} - Creating view from template`);\n }\n\n viewRef = this.loader.createEmbeddedView(this.itemTemplate, new ItemContext(), 0);\n args.view = getItemViewRoot(viewRef);\n args.view[NG_VIEW] = viewRef;\n }\n\n this.setupViewRef(viewRef, currentItem, index);\n\n this.detectChangesOnChild(viewRef, index);\n }\n\n @profile\n public onItemDisposing(args: ItemEventData) {\n if (!args.view) {\n return;\n }\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (args.view) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemDisposing: ${args.index} - Removing angular view`);\n }\n\n viewRef = args.view[NG_VIEW];\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n viewRef = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (!viewRef && Trace.isEnabled()) {\n PagerError(`ViewReference not found for item ${args.index}. View disposing is not working`);\n }\n }\n\n if (viewRef) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemDisposing: ${args.index} - Disposing view reference`);\n }\n\n viewRef.destroy();\n }\n }\n\n public setupViewRef(viewRef: EmbeddedViewRef<ItemContext>, data: any, index: number): void {\n const context = viewRef.context;\n context.$implicit = data;\n context.item = data;\n context.index = index;\n context.even = index % 2 === 0;\n context.odd = !context.even;\n\n this.setupItemView.next({\n view: viewRef,\n data,\n index,\n context\n });\n }\n\n protected getItemTemplateViewFactory(template: TemplateRef<ItemContext>): () => View {\n return () => {\n const viewRef = this.loader.createEmbeddedView(template, new ItemContext(), 0);\n const resultView = getItemViewRoot(viewRef);\n resultView[NG_VIEW] = viewRef;\n\n return resultView;\n };\n }\n\n @profile\n private detectChangesOnChild(viewRef: EmbeddedViewRef<ItemContext>, index: number) {\n if (Trace.isEnabled()) {\n PagerLog(`Manually detect changes in child: ${index}`);\n }\n\n viewRef.markForCheck();\n viewRef.detectChanges();\n }\n\n ngDoCheck() {\n if (this._differ) {\n if (Trace.isEnabled()) {\n PagerLog('ngDoCheck() - execute differ');\n }\n\n const changes = this._differ.diff(this._items);\n if (changes) {\n if (Trace.isEnabled()) {\n PagerLog('ngDoCheck() - refresh');\n }\n\n this.templatedItemsView.refresh();\n }\n }\n }\n}\n\nexport interface ComponentView {\n rootNodes: any[];\n\n destroy(): void;\n}\n\nexport type RootLocator = (nodes: any[], nestLevel: number) => View;\n\nexport function getItemViewRoot(viewRef: ComponentView, rootLocator: RootLocator = extractSingleViewRecursive as any): View {\n return rootLocator(viewRef.rootNodes, 0);\n}\n\nexport const TEMPLATED_ITEMS_COMPONENT = new InjectionToken<TemplatedItemsComponent>('TemplatedItemsComponent');\n\n@Directive({\n selector: '[pagerItem]'\n})\nexport class PagerItemDirective implements OnInit {\n private item: PagerItem;\n\n constructor(\n private templateRef: TemplateRef<any>,\n @Inject(TEMPLATED_ITEMS_COMPONENT)\n @Host()\n private owner: TemplatedItemsComponent,\n private viewContainer: ViewContainerRef\n ) {}\n\n private ensureItem() {\n if (!this.item) {\n this.item = new PagerItem();\n }\n }\n\n private applyConfig() {\n this.ensureItem();\n }\n\n ngOnInit() {\n this.applyConfig();\n\n const viewRef = this.viewContainer.createEmbeddedView(this.templateRef);\n // Filter out text nodes and comments\n const realViews = viewRef.rootNodes.filter((node) => !isInvisibleNode(node));\n\n if (realViews.length > 0) {\n const view = realViews[0];\n this.item.addChild(view);\n this.owner.nativeElement._addChildFromBuilder('PagerItem', this.item);\n }\n }\n}\n\n@Directive({ selector: '[pagerTemplateKey]' })\nexport class TemplateKeyDirective {\n constructor(\n private templateRef: TemplateRef<any>,\n @Inject(TEMPLATED_ITEMS_COMPONENT)\n @Host()\n private comp: TemplatedItemsComponent\n ) {}\n\n @Input()\n set pagerTemplateKey(value: any) {\n if (this.comp && this.templateRef) {\n this.comp.registerTemplate(value, this.templateRef);\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, IterableDiffers, NO_ERRORS_SCHEMA, NgModule, forwardRef } from '@angular/core';\n\nimport { Pager } from '@nativescript-community/ui-pager';\nimport { PagerItemDirective, TEMPLATED_ITEMS_COMPONENT, TemplateKeyDirective, TemplatedItemsComponent } from './pager-items-comp';\n\nexport { PagerItemDirective, TemplatedItemsComponent, TemplateKeyDirective } from './pager-items-comp';\n\n@Component({\n selector: 'Pager',\n template: ` <DetachedContainer>\n <Placeholder #loader></Placeholder>\n </DetachedContainer>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TEMPLATED_ITEMS_COMPONENT,\n useExisting: forwardRef(() => PagerComponent)\n }\n ]\n})\nexport class PagerComponent extends TemplatedItemsComponent {\n public get nativeElement(): Pager {\n return this.templatedItemsView;\n }\n\n protected templatedItemsView: Pager;\n\n constructor(_elementRef: ElementRef, _iterableDiffers: IterableDiffers) {\n super(_elementRef, _iterableDiffers);\n }\n}\n\n@NgModule({\n declarations: [PagerComponent, TemplateKeyDirective, PagerItemDirective],\n exports: [PagerComponent, TemplateKeyDirective, PagerItemDirective],\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class PagerModule {}\n"],"names":["isListLikeIterable"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { EventEmitter, ɵisListLikeIterable, TemplateRef, ViewContainerRef, Component, ViewChild, Output, ContentChild, Input, InjectionToken, Directive, Inject, Host, forwardRef, ChangeDetectionStrategy, NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
3
3
  import { Pager, PagerItem, PagerLog, PagerError } from '@nativescript-community/ui-pager';
4
- import { registerElement, getSingleViewRecursive, isInvisibleNode } from '@nativescript/angular';
4
+ import { registerElement, extractSingleViewRecursive, isInvisibleNode } from '@nativescript/angular';
5
5
  import { isIOS, Trace, LayoutBase } from '@nativescript/core';
6
6
  import { ObservableArray } from '@nativescript/core/data/observable-array';
7
7
  import { profile } from '@nativescript/core/profiling';
@@ -37,9 +37,7 @@ class TemplatedItemsComponent {
37
37
  needDiffer = false;
38
38
  }
39
39
  if (needDiffer && !this._differ && ɵisListLikeIterable(value)) {
40
- this._differ = this._iterableDiffers
41
- .find(this._items)
42
- .create((_index, item) => item);
40
+ this._differ = this._iterableDiffers.find(this._items).create((_index, item) => item);
43
41
  }
44
42
  this.templatedItemsView.items = this._items;
45
43
  }
@@ -51,7 +49,7 @@ class TemplatedItemsComponent {
51
49
  this.templatedItemsView.selectedIndex = this._selectedIndex;
52
50
  }
53
51
  ngAfterViewInit() {
54
- if (!!(this._selectedIndex)) {
52
+ if (!!this._selectedIndex) {
55
53
  setTimeout(() => {
56
54
  if (isIOS) {
57
55
  this.templatedItemsView.scrollToIndexAnimated(this._selectedIndex, false);
@@ -94,7 +92,7 @@ class TemplatedItemsComponent {
94
92
  }
95
93
  const keyedTemplate = {
96
94
  key,
97
- createView: this.getItemTemplateViewFactory(template),
95
+ createView: this.getItemTemplateViewFactory(template)
98
96
  };
99
97
  this._templateMap.set(key, keyedTemplate);
100
98
  }
@@ -106,18 +104,14 @@ class TemplatedItemsComponent {
106
104
  return;
107
105
  const index = args.index;
108
106
  const items = args.object.items;
109
- const currentItem = typeof items.getItem === 'function'
110
- ? items.getItem(index)
111
- : items[index];
107
+ const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];
112
108
  let viewRef;
113
109
  if (args.view) {
114
110
  if (Trace.isEnabled()) {
115
111
  PagerLog(`onItemLoading: ${index} - Reusing existing view`);
116
112
  }
117
113
  viewRef = args.view[NG_VIEW];
118
- if (!viewRef &&
119
- args.view instanceof LayoutBase &&
120
- args.view.getChildrenCount() > 0) {
114
+ if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {
121
115
  viewRef = args.view.getChildAt(0)[NG_VIEW];
122
116
  }
123
117
  if (!viewRef && Trace.isEnabled()) {
@@ -145,9 +139,7 @@ class TemplatedItemsComponent {
145
139
  PagerLog(`onItemDisposing: ${args.index} - Removing angular view`);
146
140
  }
147
141
  viewRef = args.view[NG_VIEW];
148
- if (!viewRef &&
149
- args.view instanceof LayoutBase &&
150
- args.view.getChildrenCount() > 0) {
142
+ if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {
151
143
  viewRef = args.view.getChildAt(0)[NG_VIEW];
152
144
  }
153
145
  if (!viewRef && Trace.isEnabled()) {
@@ -172,7 +164,7 @@ class TemplatedItemsComponent {
172
164
  view: viewRef,
173
165
  data,
174
166
  index,
175
- context,
167
+ context
176
168
  });
177
169
  }
178
170
  getItemTemplateViewFactory(template) {
@@ -229,7 +221,7 @@ __decorate([
229
221
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TemplatedItemsComponent, [{
230
222
  type: Component,
231
223
  args: [{
232
- template: '',
224
+ template: ''
233
225
  }]
234
226
  }], function () { return [{ type: i0.ElementRef }, { type: i0.IterableDiffers }]; }, { loader: [{
235
227
  type: ViewChild,
@@ -244,7 +236,7 @@ __decorate([
244
236
  }], selectedIndex: [{
245
237
  type: Input
246
238
  }], onItemLoading: [], onItemDisposing: [], detectChangesOnChild: [] }); })();
247
- function getItemViewRoot(viewRef, rootLocator = getSingleViewRecursive) {
239
+ function getItemViewRoot(viewRef, rootLocator = extractSingleViewRecursive) {
248
240
  return rootLocator(viewRef.rootNodes, 0);
249
241
  }
250
242
  const TEMPLATED_ITEMS_COMPONENT = new InjectionToken('TemplatedItemsComponent');
@@ -278,7 +270,7 @@ PagerItemDirective.ɵdir = i0.ɵɵdefineDirective({ type: PagerItemDirective, se
278
270
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PagerItemDirective, [{
279
271
  type: Directive,
280
272
  args: [{
281
- selector: '[pagerItem]',
273
+ selector: '[pagerItem]'
282
274
  }]
283
275
  }], function () { return [{ type: i0.TemplateRef }, { type: TemplatedItemsComponent, decorators: [{
284
276
  type: Inject,
@@ -334,10 +326,9 @@ PagerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: PagerComponent, selectors:
334
326
  type: Component,
335
327
  args: [{
336
328
  selector: 'Pager',
337
- template: `
338
- <DetachedContainer>
339
- <Placeholder #loader></Placeholder>
340
- </DetachedContainer>`,
329
+ template: ` <DetachedContainer>
330
+ <Placeholder #loader></Placeholder>
331
+ </DetachedContainer>`,
341
332
  changeDetection: ChangeDetectionStrategy.OnPush,
342
333
  providers: [
343
334
  {
@@ -363,4 +354,4 @@ PagerModule.ɵinj = i0.ɵɵdefineInjector({});
363
354
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(PagerModule, { declarations: [PagerComponent, TemplateKeyDirective, PagerItemDirective], exports: [PagerComponent, TemplateKeyDirective, PagerItemDirective] }); })();
364
355
 
365
356
  export { PagerComponent, PagerItemDirective, PagerModule, TemplateKeyDirective, TemplatedItemsComponent };
366
- //# sourceMappingURL=nativescript-community-ui-pager-angular.js.map
357
+ //# sourceMappingURL=nativescript-community-ui-pager-angular.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativescript-community-ui-pager-angular.mjs","sources":["../../../../src/ui-pager/angular/pager-items-comp.ts","../../../../src/ui-pager/angular/index.ts"],"sourcesContent":["import {\n AfterContentInit,\n Component,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Host,\n Inject,\n InjectionToken,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n ɵisListLikeIterable as isListLikeIterable\n} from '@angular/core';\nimport { Pager, PagerError, PagerItem, PagerLog } from '@nativescript-community/ui-pager';\nimport { extractSingleViewRecursive, isInvisibleNode, registerElement } from '@nativescript/angular';\nimport { EventData, KeyedTemplate, LayoutBase, Template, Trace, View, isIOS } from '@nativescript/core';\nimport { ObservableArray } from '@nativescript/core/data/observable-array';\nimport { profile } from '@nativescript/core/profiling';\nimport { ItemEventData, ItemsSource } from '@nativescript/core/ui/list-view';\n\nregisterElement('Pager', () => Pager);\nregisterElement('PagerItem', () => PagerItem);\n\nconst NG_VIEW = '_ngViewRef';\n\nexport interface PagerTemplatedItemsView {\n items: any[] | ItemsSource;\n itemTemplate: string | Template;\n itemTemplates?: string | KeyedTemplate[];\n\n refresh(): void;\n\n on(event: 'itemDisposing' | 'itemLoading', callback: (args: ItemEventData) => void, thisArg?: any);\n\n off(event: 'itemLoading' | 'itemDisposing', callback: (args: EventData) => void, thisArg?: any);\n}\n\nexport class ItemContext {\n constructor(public $implicit?: any, public item?: any, public index?: number, public even?: boolean, public odd?: boolean) {}\n}\n\nexport interface SetupItemViewArgs {\n view: EmbeddedViewRef<any>;\n data: any;\n index: number;\n context: ItemContext;\n}\n@Component({\n template: ''\n})\nexport abstract class TemplatedItemsComponent implements DoCheck, OnDestroy, AfterContentInit {\n public abstract get nativeElement(): Pager;\n\n protected templatedItemsView: Pager;\n protected _items: any;\n protected _differ: IterableDiffer<KeyedTemplate>;\n protected _templateMap: Map<string, KeyedTemplate>;\n private _selectedIndex: number;\n @ViewChild('loader', { read: ViewContainerRef, static: false }) loader: ViewContainerRef;\n\n @Output()\n public setupItemView = new EventEmitter<SetupItemViewArgs>();\n\n @ContentChild(TemplateRef, { static: false }) itemTemplateQuery: TemplateRef<ItemContext>;\n\n itemTemplate: TemplateRef<ItemContext>;\n\n @Input()\n get items() {\n return this._items;\n }\n\n set items(value: any) {\n this._items = value;\n let needDiffer = true;\n if (value instanceof ObservableArray) {\n needDiffer = false;\n }\n if (needDiffer && !this._differ && isListLikeIterable(value)) {\n this._differ = this._iterableDiffers.find(this._items).create((_index, item) => item);\n }\n\n this.templatedItemsView.items = this._items;\n }\n\n @Input()\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n set selectedIndex(value) {\n this._selectedIndex = value;\n this.templatedItemsView.selectedIndex = this._selectedIndex;\n }\n\n ngAfterViewInit() {\n if (!!this._selectedIndex) {\n setTimeout(() => {\n if (isIOS) {\n this.templatedItemsView.scrollToIndexAnimated(this._selectedIndex, false);\n }\n this.templatedItemsView.selectedIndex = this._selectedIndex;\n });\n }\n }\n\n constructor(_elementRef: ElementRef, private _iterableDiffers: IterableDiffers) {\n this.templatedItemsView = _elementRef.nativeElement;\n\n this.templatedItemsView.on('itemLoading', this.onItemLoading, this);\n this.templatedItemsView.on('itemDisposing', this.onItemDisposing, this);\n }\n\n ngAfterContentInit() {\n if (Trace.isEnabled()) {\n PagerLog('TemplatedItemsView.ngAfterContentInit()');\n }\n this.setItemTemplates();\n }\n\n ngOnDestroy() {\n this.templatedItemsView.off('itemLoading', this.onItemLoading, this);\n this.templatedItemsView.off('itemDisposing', this.onItemDisposing, this);\n }\n\n private setItemTemplates() {\n if (!this.items) return;\n // The itemTemplateQuery may be changed after list items are added that contain <template> inside,\n // so cache and use only the original template to avoid errors.\n this.itemTemplate = this.itemTemplateQuery;\n\n if (this._templateMap) {\n if (Trace.isEnabled()) {\n PagerLog('Setting templates');\n }\n\n const templates: KeyedTemplate[] = [];\n this._templateMap.forEach((value) => {\n templates.push(value);\n });\n this.templatedItemsView.itemTemplates = templates;\n }\n }\n\n public registerTemplate(key: string, template: TemplateRef<ItemContext>) {\n if (Trace.isEnabled()) {\n PagerLog(`registerTemplate for key: ${key}`);\n }\n\n if (!this._templateMap) {\n this._templateMap = new Map<string, KeyedTemplate>();\n }\n\n const keyedTemplate = {\n key,\n createView: this.getItemTemplateViewFactory(template)\n };\n\n this._templateMap.set(key, keyedTemplate);\n }\n\n @profile\n public onItemLoading(args: ItemEventData) {\n if (!args.view && !this.itemTemplate) {\n return;\n }\n\n if (!this.items) return;\n\n const index = args.index;\n const items = (args.object as any).items;\n const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (args.view) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemLoading: ${index} - Reusing existing view`);\n }\n\n viewRef = args.view[NG_VIEW];\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n viewRef = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (!viewRef && Trace.isEnabled()) {\n PagerError(`ViewReference not found for item ${index}. View recycling is not working`);\n }\n }\n\n if (!viewRef) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemLoading: ${index} - Creating view from template`);\n }\n\n viewRef = this.loader.createEmbeddedView(this.itemTemplate, new ItemContext(), 0);\n args.view = getItemViewRoot(viewRef);\n args.view[NG_VIEW] = viewRef;\n }\n\n this.setupViewRef(viewRef, currentItem, index);\n\n this.detectChangesOnChild(viewRef, index);\n }\n\n @profile\n public onItemDisposing(args: ItemEventData) {\n if (!args.view) {\n return;\n }\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (args.view) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemDisposing: ${args.index} - Removing angular view`);\n }\n\n viewRef = args.view[NG_VIEW];\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!viewRef && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n viewRef = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (!viewRef && Trace.isEnabled()) {\n PagerError(`ViewReference not found for item ${args.index}. View disposing is not working`);\n }\n }\n\n if (viewRef) {\n if (Trace.isEnabled()) {\n PagerLog(`onItemDisposing: ${args.index} - Disposing view reference`);\n }\n\n viewRef.destroy();\n }\n }\n\n public setupViewRef(viewRef: EmbeddedViewRef<ItemContext>, data: any, index: number): void {\n const context = viewRef.context;\n context.$implicit = data;\n context.item = data;\n context.index = index;\n context.even = index % 2 === 0;\n context.odd = !context.even;\n\n this.setupItemView.next({\n view: viewRef,\n data,\n index,\n context\n });\n }\n\n protected getItemTemplateViewFactory(template: TemplateRef<ItemContext>): () => View {\n return () => {\n const viewRef = this.loader.createEmbeddedView(template, new ItemContext(), 0);\n const resultView = getItemViewRoot(viewRef);\n resultView[NG_VIEW] = viewRef;\n\n return resultView;\n };\n }\n\n @profile\n private detectChangesOnChild(viewRef: EmbeddedViewRef<ItemContext>, index: number) {\n if (Trace.isEnabled()) {\n PagerLog(`Manually detect changes in child: ${index}`);\n }\n\n viewRef.markForCheck();\n viewRef.detectChanges();\n }\n\n ngDoCheck() {\n if (this._differ) {\n if (Trace.isEnabled()) {\n PagerLog('ngDoCheck() - execute differ');\n }\n\n const changes = this._differ.diff(this._items);\n if (changes) {\n if (Trace.isEnabled()) {\n PagerLog('ngDoCheck() - refresh');\n }\n\n this.templatedItemsView.refresh();\n }\n }\n }\n}\n\nexport interface ComponentView {\n rootNodes: any[];\n\n destroy(): void;\n}\n\nexport type RootLocator = (nodes: any[], nestLevel: number) => View;\n\nexport function getItemViewRoot(viewRef: ComponentView, rootLocator: RootLocator = extractSingleViewRecursive as any): View {\n return rootLocator(viewRef.rootNodes, 0);\n}\n\nexport const TEMPLATED_ITEMS_COMPONENT = new InjectionToken<TemplatedItemsComponent>('TemplatedItemsComponent');\n\n@Directive({\n selector: '[pagerItem]'\n})\nexport class PagerItemDirective implements OnInit {\n private item: PagerItem;\n\n constructor(\n private templateRef: TemplateRef<any>,\n @Inject(TEMPLATED_ITEMS_COMPONENT)\n @Host()\n private owner: TemplatedItemsComponent,\n private viewContainer: ViewContainerRef\n ) {}\n\n private ensureItem() {\n if (!this.item) {\n this.item = new PagerItem();\n }\n }\n\n private applyConfig() {\n this.ensureItem();\n }\n\n ngOnInit() {\n this.applyConfig();\n\n const viewRef = this.viewContainer.createEmbeddedView(this.templateRef);\n // Filter out text nodes and comments\n const realViews = viewRef.rootNodes.filter((node) => !isInvisibleNode(node));\n\n if (realViews.length > 0) {\n const view = realViews[0];\n this.item.addChild(view);\n this.owner.nativeElement._addChildFromBuilder('PagerItem', this.item);\n }\n }\n}\n\n@Directive({ selector: '[pagerTemplateKey]' })\nexport class TemplateKeyDirective {\n constructor(\n private templateRef: TemplateRef<any>,\n @Inject(TEMPLATED_ITEMS_COMPONENT)\n @Host()\n private comp: TemplatedItemsComponent\n ) {}\n\n @Input()\n set pagerTemplateKey(value: any) {\n if (this.comp && this.templateRef) {\n this.comp.registerTemplate(value, this.templateRef);\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, IterableDiffers, NO_ERRORS_SCHEMA, NgModule, forwardRef } from '@angular/core';\n\nimport { Pager } from '@nativescript-community/ui-pager';\nimport { PagerItemDirective, TEMPLATED_ITEMS_COMPONENT, TemplateKeyDirective, TemplatedItemsComponent } from './pager-items-comp';\n\nexport { PagerItemDirective, TemplatedItemsComponent, TemplateKeyDirective } from './pager-items-comp';\n\n@Component({\n selector: 'Pager',\n template: ` <DetachedContainer>\n <Placeholder #loader></Placeholder>\n </DetachedContainer>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TEMPLATED_ITEMS_COMPONENT,\n useExisting: forwardRef(() => PagerComponent)\n }\n ]\n})\nexport class PagerComponent extends TemplatedItemsComponent {\n public get nativeElement(): Pager {\n return this.templatedItemsView;\n }\n\n protected templatedItemsView: Pager;\n\n constructor(_elementRef: ElementRef, _iterableDiffers: IterableDiffers) {\n super(_elementRef, _iterableDiffers);\n }\n}\n\n@NgModule({\n declarations: [PagerComponent, TemplateKeyDirective, PagerItemDirective],\n exports: [PagerComponent, TemplateKeyDirective, PagerItemDirective],\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class PagerModule {}\n"],"names":["isListLikeIterable"],"mappings":";;;;;;;;;AA8BA,eAAe,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC;AACtC,eAAe,CAAC,WAAW,EAAE,MAAM,SAAS,CAAC,CAAC;AAE9C,MAAM,OAAO,GAAG,YAAY,CAAC;MAchB,WAAW,CAAA;IACpB,WAAmB,CAAA,SAAe,EAAS,IAAU,EAAS,KAAc,EAAS,IAAc,EAAS,GAAa,EAAA;QAAtG,IAAS,CAAA,SAAA,GAAT,SAAS,CAAM;QAAS,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAM;QAAS,IAAK,CAAA,KAAA,GAAL,KAAK,CAAS;QAAS,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAU;QAAS,IAAG,CAAA,GAAA,GAAH,GAAG,CAAU;KAAI;AAChI,CAAA;MAWqB,uBAAuB,CAAA;IAwDzC,WAAY,CAAA,WAAuB,EAAU,gBAAiC,EAAA;QAAjC,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAiB;AA7CvE,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAqB,CAAC;AA8CzD,QAAA,IAAI,CAAC,kBAAkB,GAAG,WAAW,CAAC,aAAa,CAAC;AAEpD,QAAA,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AACpE,QAAA,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;KAC3E;AA5CD,IAAA,IACI,KAAK,GAAA;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;KACtB;IAED,IAAI,KAAK,CAAC,KAAU,EAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,KAAK,YAAY,eAAe,EAAE;YAClC,UAAU,GAAG,KAAK,CAAC;AACtB,SAAA;QACD,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO,IAAIA,mBAAkB,CAAC,KAAK,CAAC,EAAE;YAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC;AACzF,SAAA;QAED,IAAI,CAAC,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;KAC/C;AAED,IAAA,IACI,aAAa,GAAA;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;KAC9B;IAED,IAAI,aAAa,CAAC,KAAK,EAAA;AACnB,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;KAC/D;IAED,eAAe,GAAA;AACX,QAAA,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE;YACvB,UAAU,CAAC,MAAK;AACZ,gBAAA,IAAI,KAAK,EAAE;oBACP,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;AAC7E,iBAAA;gBACD,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;AAChE,aAAC,CAAC,CAAC;AACN,SAAA;KACJ;IASD,kBAAkB,GAAA;AACd,QAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;YACnB,QAAQ,CAAC,yCAAyC,CAAC,CAAC;AACvD,SAAA;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAED,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AACrE,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;KAC5E;IAEO,gBAAgB,GAAA;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;AAGxB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAE3C,IAAI,IAAI,CAAC,YAAY,EAAE;AACnB,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;gBACnB,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AACjC,aAAA;YAED,MAAM,SAAS,GAAoB,EAAE,CAAC;YACtC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAChC,gBAAA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1B,aAAC,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,kBAAkB,CAAC,aAAa,GAAG,SAAS,CAAC;AACrD,SAAA;KACJ;IAEM,gBAAgB,CAAC,GAAW,EAAE,QAAkC,EAAA;AACnE,QAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,YAAA,QAAQ,CAAC,CAAA,0BAAA,EAA6B,GAAG,CAAA,CAAE,CAAC,CAAC;AAChD,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACpB,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;AACxD,SAAA;AAED,QAAA,MAAM,aAAa,GAAG;YAClB,GAAG;AACH,YAAA,UAAU,EAAE,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC;SACxD,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;KAC7C;AAGM,IAAA,aAAa,CAAC,IAAmB,EAAA;QACpC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YAClC,OAAO;AACV,SAAA;QAED,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;AAExB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;AACzB,QAAA,MAAM,KAAK,GAAI,IAAI,CAAC,MAAc,CAAC,KAAK,CAAC;QACzC,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9F,QAAA,IAAI,OAAqC,CAAC;QAE1C,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,gBAAA,QAAQ,CAAC,CAAA,eAAA,EAAkB,KAAK,CAAA,wBAAA,CAA0B,CAAC,CAAC;AAC/D,aAAA;AAED,YAAA,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAG7B,YAAA,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE;AACjF,gBAAA,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAC9C,aAAA;AAED,YAAA,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AAC/B,gBAAA,UAAU,CAAC,CAAA,iCAAA,EAAoC,KAAK,CAAA,+BAAA,CAAiC,CAAC,CAAC;AAC1F,aAAA;AACJ,SAAA;QAED,IAAI,CAAC,OAAO,EAAE;AACV,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,gBAAA,QAAQ,CAAC,CAAA,eAAA,EAAkB,KAAK,CAAA,8BAAA,CAAgC,CAAC,CAAC;AACrE,aAAA;AAED,YAAA,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;AAClF,YAAA,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;AACrC,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAChC,SAAA;QAED,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAE/C,QAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;KAC7C;AAGM,IAAA,eAAe,CAAC,IAAmB,EAAA;AACtC,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,OAAO;AACV,SAAA;AACD,QAAA,IAAI,OAAqC,CAAC;QAE1C,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,gBAAA,QAAQ,CAAC,CAAoB,iBAAA,EAAA,IAAI,CAAC,KAAK,CAAA,wBAAA,CAA0B,CAAC,CAAC;AACtE,aAAA;AAED,YAAA,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAG7B,YAAA,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,YAAY,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE;AACjF,gBAAA,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAC9C,aAAA;AAED,YAAA,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AAC/B,gBAAA,UAAU,CAAC,CAAoC,iCAAA,EAAA,IAAI,CAAC,KAAK,CAAA,+BAAA,CAAiC,CAAC,CAAC;AAC/F,aAAA;AACJ,SAAA;AAED,QAAA,IAAI,OAAO,EAAE;AACT,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,gBAAA,QAAQ,CAAC,CAAoB,iBAAA,EAAA,IAAI,CAAC,KAAK,CAAA,2BAAA,CAA6B,CAAC,CAAC;AACzE,aAAA;YAED,OAAO,CAAC,OAAO,EAAE,CAAC;AACrB,SAAA;KACJ;AAEM,IAAA,YAAY,CAAC,OAAqC,EAAE,IAAS,EAAE,KAAa,EAAA;AAC/E,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;AAChC,QAAA,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;AACzB,QAAA,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;AACpB,QAAA,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACtB,OAAO,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;AAE5B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;AACpB,YAAA,IAAI,EAAE,OAAO;YACb,IAAI;YACJ,KAAK;YACL,OAAO;AACV,SAAA,CAAC,CAAC;KACN;AAES,IAAA,0BAA0B,CAAC,QAAkC,EAAA;AACnE,QAAA,OAAO,MAAK;AACR,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/E,YAAA,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;AAC5C,YAAA,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAE9B,YAAA,OAAO,UAAU,CAAC;AACtB,SAAC,CAAC;KACL;IAGO,oBAAoB,CAAC,OAAqC,EAAE,KAAa,EAAA;AAC7E,QAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;AACnB,YAAA,QAAQ,CAAC,CAAA,kCAAA,EAAqC,KAAK,CAAA,CAAE,CAAC,CAAC;AAC1D,SAAA;QAED,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,OAAO,CAAC,aAAa,EAAE,CAAC;KAC3B;IAED,SAAS,GAAA;QACL,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;gBACnB,QAAQ,CAAC,8BAA8B,CAAC,CAAC;AAC5C,aAAA;AAED,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/C,YAAA,IAAI,OAAO,EAAE;AACT,gBAAA,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;oBACnB,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AACrC,iBAAA;AAED,gBAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;AACrC,aAAA;AACJ,SAAA;KACJ;;8FAhPiB,uBAAuB,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,eAAA,CAAA,CAAA,CAAA,EAAA,CAAA;4DAAvB,uBAAuB,EAAA,SAAA,EAAA,CAAA,CAAA,cAAA,CAAA,CAAA,EAAA,cAAA,EAAA,SAAA,sCAAA,CAAA,EAAA,EAAA,GAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;oCAa3B,WAAW,EAAA,CAAA,CAAA,CAAA;;;;;+BALI,gBAAgB,CAAA,CAAA;;;;;AAwG7C,UAAA,CAAA;IADC,OAAO;AA2CP,CAAA,EAAA,uBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA,CAAA;AAGD,UAAA,CAAA;IADC,OAAO;AA+BP,CAAA,EAAA,uBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA,CAAA;AA6BD,UAAA,CAAA;IADC,OAAO;AAQP,CAAA,EAAA,uBAAA,CAAA,SAAA,EAAA,sBAAA,EAAA,IAAA,CAAA,CAAA;uFA/NiB,uBAAuB,EAAA,CAAA;cAH5C,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,QAAQ,EAAE,EAAE;AACf,aAAA,CAAA;2FASmE,MAAM,EAAA,CAAA;kBAArE,SAAS;mBAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;YAGvD,aAAa,EAAA,CAAA;kBADnB,MAAM;YAGuC,iBAAiB,EAAA,CAAA;kBAA9D,YAAY;AAAC,YAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;YAKxC,KAAK,EAAA,CAAA;kBADR,KAAK;YAmBF,aAAa,EAAA,CAAA;kBADhB,KAAK;YA6EC,aAAa,EAAA,EAAA,EA6Cb,eAAe,EAAA,EAAA,EA2Dd,oBAAoB,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA,GAAA,CAAA;SAmChB,eAAe,CAAC,OAAsB,EAAE,cAA2B,0BAAiC,EAAA;IAChH,OAAO,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AAEM,MAAM,yBAAyB,GAAG,IAAI,cAAc,CAA0B,yBAAyB,CAAC,CAAC;MAKnG,kBAAkB,CAAA;AAG3B,IAAA,WAAA,CACY,WAA6B,EAG7B,KAA8B,EAC9B,aAA+B,EAAA;QAJ/B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;QAG7B,IAAK,CAAA,KAAA,GAAL,KAAK,CAAyB;QAC9B,IAAa,CAAA,aAAA,GAAb,aAAa,CAAkB;KACvC;IAEI,UAAU,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;AACZ,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;AAC/B,SAAA;KACJ;IAEO,WAAW,GAAA;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;KACrB;IAED,QAAQ,GAAA;QACJ,IAAI,CAAC,WAAW,EAAE,CAAC;AAEnB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAExE,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;AAE7E,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACtB,YAAA,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC1B,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzB,YAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACzE,SAAA;KACJ;;AAjCQ,kBAAA,CAAA,IAAA,GAAA,SAAA,0BAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,kBAAkB,6DAKf,yBAAyB,EAAA,CAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,EAAA,CAAA;uDAL5B,kBAAkB,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA,EAAA,WAAA,EAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA;uFAAlB,kBAAkB,EAAA,CAAA;cAH9B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,QAAQ,EAAE,aAAa;AAC1B,aAAA,CAAA;gEAQsB,uBAAuB,EAAA,UAAA,EAAA,CAAA;sBAFrC,MAAM;uBAAC,yBAAyB,CAAA;;sBAChC,IAAI;;MA+BA,oBAAoB,CAAA;IAC7B,WACY,CAAA,WAA6B,EAG7B,IAA6B,EAAA;QAH7B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;QAG7B,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAyB;KACrC;IAEJ,IACI,gBAAgB,CAAC,KAAU,EAAA;AAC3B,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AACvD,SAAA;KACJ;;AAbQ,oBAAA,CAAA,IAAA,GAAA,SAAA,4BAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,oBAAoB,6DAGjB,yBAAyB,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;yDAH5B,oBAAoB,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,CAAA,CAAA;uFAApB,oBAAoB,EAAA,CAAA;cADhC,SAAS;eAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAA;gEAMvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;sBAFpC,MAAM;uBAAC,yBAAyB,CAAA;;sBAChC,IAAI;wBAKL,gBAAgB,EAAA,CAAA;kBADnB,KAAK;;;ACzVJ,MAAO,cAAe,SAAQ,uBAAuB,CAAA;IAOvD,WAAY,CAAA,WAAuB,EAAE,gBAAiC,EAAA;AAClE,QAAA,KAAK,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;KACxC;AARD,IAAA,IAAW,aAAa,GAAA;QACpB,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAClC;;4EAHQ,cAAc,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,eAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,IAAA,EAAA,cAAc,EAPZ,SAAA,EAAA,CAAA,CAAA,OAAA,CAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,yBAAyB;AAClC,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,cAAc,CAAC;AAChD,aAAA;AACJ,SAAA,CAAA,EAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,QAAA,EAAA,EAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,uBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;QATW,EAAmB,CAAA,cAAA,CAAA,CAAA,EAAA,mBAAA,CAAA,CAAA;QAC3B,EAAmC,CAAA,SAAA,CAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;QACvC,EAAoB,CAAA,YAAA,EAAA,CAAA;;uFASX,cAAc,EAAA,CAAA;cAb1B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACP,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,CAAA;;AAEW,wBAAA,CAAA;gBACrB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,gBAAA,SAAS,EAAE;AACP,oBAAA;AACI,wBAAA,OAAO,EAAE,yBAAyB;AAClC,wBAAA,WAAW,EAAE,UAAU,CAAC,oBAAoB,CAAC;AAChD,qBAAA;AACJ,iBAAA;AACJ,aAAA,CAAA;;MAkBY,WAAW,CAAA;;sEAAX,WAAW,GAAA,CAAA,EAAA,CAAA;+CAAX,WAAW,EAAA,CAAA,CAAA;;uFAAX,WAAW,EAAA,CAAA;cALvB,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACN,gBAAA,YAAY,EAAE,CAAC,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,CAAC;AACxE,gBAAA,OAAO,EAAE,CAAC,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,CAAC;gBACnE,OAAO,EAAE,CAAC,gBAAgB,CAAC;AAC9B,aAAA,CAAA;;wFACY,WAAW,EAAA,EAAA,YAAA,EAAA,CAjBX,cAAc,EAaQ,oBAAoB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAb9D,cAAc,EAcG,oBAAoB,EAAE,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;;;"}
@@ -1,14 +1,28 @@
1
1
  {
2
2
  "name": "@nativescript-community/ui-pager-angular",
3
- "main": "bundles/nativescript-community-ui-pager-angular.umd.js",
4
- "module": "fesm2015/nativescript-community-ui-pager-angular.js",
5
- "es2015": "fesm2015/nativescript-community-ui-pager-angular.js",
6
- "esm2015": "esm2015/nativescript-community-ui-pager-angular.js",
7
- "fesm2015": "fesm2015/nativescript-community-ui-pager-angular.js",
3
+ "main": "index.js",
4
+ "module": "fesm2015/nativescript-community-ui-pager-angular.mjs",
5
+ "es2020": "fesm2020/nativescript-community-ui-pager-angular.mjs",
6
+ "esm2020": "esm2020/nativescript-community-ui-pager-angular.mjs",
7
+ "fesm2020": "fesm2020/nativescript-community-ui-pager-angular.mjs",
8
+ "fesm2015": "fesm2015/nativescript-community-ui-pager-angular.mjs",
8
9
  "typings": "nativescript-community-ui-pager-angular.d.ts",
10
+ "exports": {
11
+ "./package.json": {
12
+ "default": "./package.json"
13
+ },
14
+ ".": {
15
+ "types": "./nativescript-community-ui-pager-angular.d.ts",
16
+ "esm2020": "./esm2020/nativescript-community-ui-pager-angular.mjs",
17
+ "es2020": "./fesm2020/nativescript-community-ui-pager-angular.mjs",
18
+ "es2015": "./fesm2015/nativescript-community-ui-pager-angular.mjs",
19
+ "node": "./fesm2015/nativescript-community-ui-pager-angular.mjs",
20
+ "default": "./fesm2020/nativescript-community-ui-pager-angular.mjs"
21
+ }
22
+ },
9
23
  "sideEffects": false,
10
24
  "dependencies": {
11
- "tslib": "^2.2.0"
25
+ "tslib": "^2.3.0"
12
26
  },
13
27
  "scripts": {
14
28
  "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by Ivy in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with Ivy partial compilation mode, before attempting to publish.\\n')\" && exit 1"