@nativescript-community/ui-collectionview 6.0.13 → 6.0.15

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [6.0.15](https://github.com/nativescript-community/ui-collectionview/compare/v6.0.14...v6.0.15) (2026-02-06)
7
+
8
+ **Note:** Version bump only for package @nativescript-community/ui-collectionview
9
+
10
+ ## [6.0.14](https://github.com/nativescript-community/ui-collectionview/compare/v6.0.13...v6.0.14) (2025-12-03)
11
+
12
+ **Note:** Version bump only for package @nativescript-community/ui-collectionview
13
+
6
14
  ## [6.0.13](https://github.com/nativescript-community/ui-collectionview/compare/v6.0.12...v6.0.13) (2025-10-10)
7
15
 
8
16
  **Note:** Version bump only for package @nativescript-community/ui-collectionview
package/README.md CHANGED
@@ -386,7 +386,7 @@ CollectionViewElement.register();
386
386
  In you component, add the following to import Svelte `Templates` and to create a simple array of objects.
387
387
 
388
388
  ```typescript
389
- import { Template } from 'svelte-native/components';
389
+ import { Template } from '@nativescript-community/svelte-native/components';
390
390
 
391
391
  const items = [
392
392
  { index: 0, name: 'TURQUOISE', color: '#1abc9c' },
@@ -75,8 +75,11 @@ export declare function getItemViewRoot(viewRef: ComponentView, rootLocator?: Ro
75
75
  export declare class TemplateKeyDirective {
76
76
  private templateRef;
77
77
  private collectionView;
78
+ private _templateKey;
79
+ private _rowHeight;
78
80
  constructor(templateRef: TemplateRef<any>, collectionView: CollectionViewComponent);
79
81
  set cvTemplateKey(value: any);
82
+ set cvRowHeight(value: any);
80
83
  static ɵfac: i0.ɵɵFactoryDeclaration<TemplateKeyDirective, [null, { host: true; }]>;
81
- static ɵdir: i0.ɵɵDirectiveDeclaration<TemplateKeyDirective, "[cvTemplateKey]", never, { "cvTemplateKey": { "alias": "cvTemplateKey"; "required": false; }; }, {}, never, never, true, never>;
84
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TemplateKeyDirective, "[cvTemplateKey],[cvRowHeight]", never, { "cvTemplateKey": { "alias": "cvTemplateKey"; "required": false; }; "cvRowHeight": { "alias": "cvRowHeight"; "required": false; }; }, {}, never, never, true, never>;
82
85
  }
@@ -393,6 +393,8 @@ function getItemViewRoot(viewRef, rootLocator = extractSingleViewRecursive) {
393
393
  class TemplateKeyDirective {
394
394
  templateRef;
395
395
  collectionView;
396
+ _templateKey;
397
+ _rowHeight;
396
398
  constructor(templateRef, collectionView) {
397
399
  this.templateRef = templateRef;
398
400
  this.collectionView = collectionView;
@@ -401,20 +403,31 @@ class TemplateKeyDirective {
401
403
  if (Trace.isEnabled()) {
402
404
  CLog(CLogTypes.info, 'cvTemplateKey: ' + value);
403
405
  }
406
+ this._templateKey = value;
404
407
  if (this.collectionView && this.templateRef) {
405
408
  this.collectionView.registerTemplate(value.toLowerCase(), this.templateRef);
409
+ if (this._rowHeight !== undefined) {
410
+ this.collectionView.nativeElement?.setTemplateRowHeight(value, this._rowHeight);
411
+ }
406
412
  }
407
413
  }
414
+ set cvRowHeight(value) {
415
+ this._rowHeight = value;
416
+ const key = this._templateKey || 'default';
417
+ this.collectionView?.nativeElement?.setTemplateRowHeight(key, value);
418
+ }
408
419
  static ɵfac = function TemplateKeyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TemplateKeyDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(CollectionViewComponent, 1)); };
409
- static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TemplateKeyDirective, selectors: [["", "cvTemplateKey", ""]], inputs: { cvTemplateKey: "cvTemplateKey" } });
420
+ static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TemplateKeyDirective, selectors: [["", "cvTemplateKey", ""], ["", "cvRowHeight", ""]], inputs: { cvTemplateKey: "cvTemplateKey", cvRowHeight: "cvRowHeight" } });
410
421
  }
411
422
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TemplateKeyDirective, [{
412
423
  type: Directive,
413
- args: [{ selector: '[cvTemplateKey]' }]
424
+ args: [{ selector: '[cvTemplateKey],[cvRowHeight]' }]
414
425
  }], () => [{ type: i0.TemplateRef }, { type: CollectionViewComponent, decorators: [{
415
426
  type: Host
416
427
  }] }], { cvTemplateKey: [{
417
428
  type: Input
429
+ }], cvRowHeight: [{
430
+ type: Input
418
431
  }] }); })();
419
432
 
420
433
  // External
@@ -1 +1 @@
1
- {"version":3,"file":"nativescript-community-ui-collectionview-angular.mjs","sources":["../../../../src/collectionview/angular/collectionview-comp.ts","../../../../src/collectionview/angular/index.ts","../../../../src/collectionview/angular/nativescript-community-ui-collectionview-angular.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Host,\n HostListener,\n Inject,\n Input,\n IterableDiffer,\n IterableDiffers,\n NO_ERRORS_SCHEMA,\n NgZone,\n OnDestroy,\n Output,\n TemplateRef,\n ViewChild,\n ViewContainerRef\n} from '@angular/core';\nimport { CLog, CLogTypes, CollectionView, CollectionViewItemEventData, ListViewViewTypes } from '@nativescript-community/ui-collectionview';\nimport { DetachedLoader, NativeScriptRendererFactory, extractSingleViewRecursive, isListLikeIterable, registerElement } from '@nativescript/angular';\nimport { KeyedTemplate, LayoutBase, ObservableArray, Trace, View } from '@nativescript/core';\n\nregisterElement('CollectionView', () => CollectionView);\n\nconst NG_VIEW = '_ngViewRef';\n\nexport class ItemContext {\n constructor(\n public $implicit?: any,\n public item?: any,\n public index?: number,\n public even?: boolean,\n public odd?: boolean\n ) {}\n}\n\nexport interface SetupItemViewArgs {\n view: EmbeddedViewRef<any>;\n data: any;\n index: number;\n context: ItemContext;\n}\n\n@Component({\n selector: 'CollectionView',\n template: `\n <DetachedContainer>\n <Placeholder #loader></Placeholder>\n </DetachedContainer>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class CollectionViewComponent implements DoCheck, OnDestroy, AfterContentInit {\n public get nativeElement(): any {\n return this._collectionView;\n }\n public get listView(): any {\n return this._collectionView;\n }\n\n @ViewChild('loader', { read: ViewContainerRef, static: true }) public loader: ViewContainerRef;\n @Output() public setupItemView = new EventEmitter<SetupItemViewArgs>();\n @ContentChild(TemplateRef, { read: TemplateRef, static: true }) public itemTemplateQuery: TemplateRef<ItemContext>;\n\n @Input() autoReuseViews = false;\n\n detachedLoaderFactory() {\n const ref = this.loader.createComponent(DetachedLoader, {\n index: 0\n });\n this.loader.detach(0);\n this._loaders.push(ref);\n return ref;\n }\n\n @Input()\n public get itemTemplate() {\n return this._itemTemplate;\n }\n public set itemTemplate(value: any) {\n this._itemTemplate = value;\n this._collectionView.refresh();\n }\n @Input()\n public get items() {\n return this._items;\n }\n public 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._collectionView.items = this._items;\n }\n\n private _collectionView: CollectionView;\n private _items: any;\n private _differ: IterableDiffer<KeyedTemplate>;\n private _itemTemplate: TemplateRef<ItemContext>;\n private _templateMap: Map<string, KeyedTemplate>;\n private _loaders: ComponentRef<DetachedLoader>[];\n\n constructor(\n @Inject(ElementRef) private _elementRef: ElementRef,\n @Inject(IterableDiffers) private _iterableDiffers: IterableDiffers,\n @Inject(NativeScriptRendererFactory) private _renderer: NativeScriptRendererFactory,\n @Inject(NgZone) private _ngZone: NgZone\n ) {\n this._collectionView = _elementRef.nativeElement;\n\n this._collectionView.on(CollectionView.itemLoadingEvent, this.onItemLoading, this);\n this._collectionView.itemViewLoader = this.itemViewLoader;\n this._loaders = [];\n }\n\n private itemViewLoader = (viewType) =>\n this._ngZone.run(() => {\n switch (viewType) {\n case ListViewViewTypes.ItemView:\n if (this._itemTemplate && this.loader) {\n const typedView = this.getOrCreate(this._itemTemplate);\n return typedView;\n }\n break;\n }\n return null;\n });\n\n public ngAfterContentInit() {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'CollectionView.ngAfterContentInit()');\n }\n this.setItemTemplates();\n }\n\n public ngOnDestroy() {\n this._collectionView.off(CollectionView.itemLoadingEvent, this.onItemLoading, this);\n this._collectionView = null;\n this._loaders.forEach((l) => l.destroy());\n this._loaders = null;\n this.viewToLoader = null;\n this.viewToTemplate = null;\n this.viewPool = null;\n\n this._items = null;\n this._differ = null;\n this._itemTemplate = null;\n if (this._templateMap) {\n this._templateMap.clear();\n }\n this._templateMap = null;\n }\n\n public ngDoCheck() {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - execute differ? ' + this._differ);\n }\n if (this._differ) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - execute differ');\n }\n const changes = this._differ.diff(this._items);\n if (changes) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - refresh');\n }\n this.refresh();\n }\n }\n }\n\n public registerTemplate(key: string, template: TemplateRef<ItemContext>) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'registerTemplate for key: ' + key);\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 @HostListener('itemLoading', ['$event'])\n public onItemLoading(args: CollectionViewItemEventData) {\n if (!args.view && !this.itemTemplate) {\n return;\n }\n if (!this.items) return;\n const index = args.index;\n const items = args.object.items;\n const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `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 if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `ViewReference not found for item ${index}. View recycling is not working`);\n }\n }\n\n if (!viewRef) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `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 @HostListener('itemRecycling', ['$event'])\n public onItemRecyclingInternal(args: any) {\n if (!args.view) {\n return;\n }\n let ngView: EmbeddedViewRef<any> = args.view[NG_VIEW];\n\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!ngView && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n ngView = args.view.getChildAt(0)[NG_VIEW];\n }\n // console.log('recycling', args.view);\n\n if (ngView) {\n ngView.detach();\n }\n }\n\n @HostListener('itemDisposing', ['$event'])\n public onItemDisposingInternal(args: any) {\n if (!args.view) {\n return;\n }\n let ngView: EmbeddedViewRef<any> = args.view[NG_VIEW];\n\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!ngView && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n ngView = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (ngView) {\n ngView.detach();\n this.storeViewRef(ngView);\n }\n }\n\n public setupViewRef(view: EmbeddedViewRef<ItemContext>, data: any, index: number): void {\n const context = view.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 context,\n data,\n index,\n view\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 viewPool = new Map<\n TemplateRef<ItemContext>,\n {\n scrapSize: number;\n scrapHead: Set<EmbeddedViewRef<ItemContext>>;\n }\n >();\n private storeViewRef(viewRef: EmbeddedViewRef<any>) {\n const templateRef = this.viewToTemplate.get(viewRef);\n if (templateRef) {\n const scrap = this.viewPool.get(templateRef);\n if (scrap) {\n if (scrap.scrapHead.size >= scrap.scrapSize) {\n viewRef.destroy();\n this.viewToLoader.get(viewRef)?.destroy();\n } else {\n scrap.scrapHead.add(viewRef);\n }\n }\n }\n }\n viewToTemplate = new WeakMap<EmbeddedViewRef<any>, TemplateRef<any>>();\n viewToLoader = new WeakMap<EmbeddedViewRef<any>, ComponentRef<DetachedLoader>>();\n\n private getOrCreate(templateRef: TemplateRef<ItemContext>) {\n return this._ngZone.run(() => {\n let viewRef = this.getView(templateRef);\n if (!viewRef) {\n const loader = this.detachedLoaderFactory();\n // viewRef = this.loader.createEmbeddedView(templateRef, new ItemContext(), 0);\n viewRef = loader.instance.vc.createEmbeddedView(templateRef, new ItemContext(), 0);\n this.viewToLoader.set(viewRef, loader);\n this.viewToTemplate.set(viewRef, templateRef);\n }\n viewRef.detach();\n const resultView = getItemViewRoot(viewRef);\n resultView[NG_VIEW] = viewRef;\n resultView.reusable = this.autoReuseViews;\n return resultView;\n });\n }\n private getView(templateRef: TemplateRef<ItemContext>) {\n const pool = this.getViewPool(templateRef);\n while (pool.scrapHead.size > 0) {\n const viewRef: EmbeddedViewRef<ItemContext> = pool.scrapHead.values().next().value;\n pool.scrapHead.delete(viewRef);\n if (!viewRef.destroyed) {\n return viewRef;\n }\n }\n return null;\n }\n\n private getViewPool(templateRef: TemplateRef<ItemContext>) {\n if (!this.viewPool.has(templateRef)) {\n this.viewPool.set(templateRef, {\n scrapSize: this.autoReuseViews ? Infinity : 0,\n scrapHead: new Set<EmbeddedViewRef<ItemContext>>()\n });\n }\n return this.viewPool.get(templateRef);\n }\n\n private setItemTemplates() {\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 CLog(CLogTypes.info, 'Setting templates');\n }\n\n const templates: KeyedTemplate[] = [];\n this._templateMap.forEach((value) => {\n templates.push(value);\n });\n this._collectionView.itemTemplates = templates;\n } else {\n // If the map was not initialized this means that there are no named templates, so we register the default one.\n this._collectionView.itemTemplate = this.getItemTemplateViewFactory(this.itemTemplate);\n }\n }\n\n private detectChangesOnChild(viewRef: EmbeddedViewRef<ItemContext>, index: number) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'Manually detect changes in child: ' + index);\n }\n viewRef.markForCheck();\n viewRef.detectChanges();\n }\n\n private refresh() {\n if (this._collectionView) {\n this._collectionView.refresh();\n }\n }\n}\n\nexport interface ComponentView {\n rootNodes: any[];\n destroy(): void;\n}\n\nexport type RootLocator = (nodes: any[], nestLevel: number) => View;\n\nexport function getItemViewRoot(viewRef: ComponentView, rootLocator: RootLocator = extractSingleViewRecursive): View {\n const rootView = rootLocator(viewRef.rootNodes, 0);\n return rootView;\n}\n\n@Directive({ selector: '[cvTemplateKey]' })\nexport class TemplateKeyDirective {\n constructor(\n private templateRef: TemplateRef<any>,\n @Host() private collectionView: CollectionViewComponent\n ) {}\n\n @Input()\n set cvTemplateKey(value: any) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'cvTemplateKey: ' + value);\n }\n if (this.collectionView && this.templateRef) {\n this.collectionView.registerTemplate(value.toLowerCase(), this.templateRef);\n }\n }\n}\n","// External\nimport { NO_ERRORS_SCHEMA, NgModule } from '@angular/core';\n\nimport { CollectionViewComponent, TemplateKeyDirective } from './collectionview-comp';\nexport { CollectionViewComponent, TemplateKeyDirective } from './collectionview-comp';\n\n@NgModule({\n imports: [CollectionViewComponent, TemplateKeyDirective],\n exports: [CollectionViewComponent, TemplateKeyDirective],\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class CollectionViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nativescript-community-ui-collectionview-angular.mjs","sources":["../../../../src/collectionview/angular/collectionview-comp.ts","../../../../src/collectionview/angular/index.ts","../../../../src/collectionview/angular/nativescript-community-ui-collectionview-angular.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n ContentChild,\n Directive,\n DoCheck,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Host,\n HostListener,\n Inject,\n Input,\n IterableDiffer,\n IterableDiffers,\n NO_ERRORS_SCHEMA,\n NgZone,\n OnDestroy,\n Output,\n TemplateRef,\n ViewChild,\n ViewContainerRef\n} from '@angular/core';\nimport { CLog, CLogTypes, CollectionView, CollectionViewItemEventData, ListViewViewTypes } from '@nativescript-community/ui-collectionview';\nimport { DetachedLoader, NativeScriptRendererFactory, extractSingleViewRecursive, isListLikeIterable, registerElement } from '@nativescript/angular';\nimport { KeyedTemplate, LayoutBase, ObservableArray, Trace, View } from '@nativescript/core';\n\nregisterElement('CollectionView', () => CollectionView);\n\nconst NG_VIEW = '_ngViewRef';\n\nexport class ItemContext {\n constructor(\n public $implicit?: any,\n public item?: any,\n public index?: number,\n public even?: boolean,\n public odd?: boolean\n ) {}\n}\n\nexport interface SetupItemViewArgs {\n view: EmbeddedViewRef<any>;\n data: any;\n index: number;\n context: ItemContext;\n}\n\n@Component({\n selector: 'CollectionView',\n template: `\n <DetachedContainer>\n <Placeholder #loader></Placeholder>\n </DetachedContainer>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class CollectionViewComponent implements DoCheck, OnDestroy, AfterContentInit {\n public get nativeElement(): any {\n return this._collectionView;\n }\n public get listView(): any {\n return this._collectionView;\n }\n\n @ViewChild('loader', { read: ViewContainerRef, static: true }) public loader: ViewContainerRef;\n @Output() public setupItemView = new EventEmitter<SetupItemViewArgs>();\n @ContentChild(TemplateRef, { read: TemplateRef, static: true }) public itemTemplateQuery: TemplateRef<ItemContext>;\n\n @Input() autoReuseViews = false;\n\n detachedLoaderFactory() {\n const ref = this.loader.createComponent(DetachedLoader, {\n index: 0\n });\n this.loader.detach(0);\n this._loaders.push(ref);\n return ref;\n }\n\n @Input()\n public get itemTemplate() {\n return this._itemTemplate;\n }\n public set itemTemplate(value: any) {\n this._itemTemplate = value;\n this._collectionView.refresh();\n }\n @Input()\n public get items() {\n return this._items;\n }\n public 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._collectionView.items = this._items;\n }\n\n private _collectionView: CollectionView;\n private _items: any;\n private _differ: IterableDiffer<KeyedTemplate>;\n private _itemTemplate: TemplateRef<ItemContext>;\n private _templateMap: Map<string, KeyedTemplate>;\n private _loaders: ComponentRef<DetachedLoader>[];\n\n constructor(\n @Inject(ElementRef) private _elementRef: ElementRef,\n @Inject(IterableDiffers) private _iterableDiffers: IterableDiffers,\n @Inject(NativeScriptRendererFactory) private _renderer: NativeScriptRendererFactory,\n @Inject(NgZone) private _ngZone: NgZone\n ) {\n this._collectionView = _elementRef.nativeElement;\n\n this._collectionView.on(CollectionView.itemLoadingEvent, this.onItemLoading, this);\n this._collectionView.itemViewLoader = this.itemViewLoader;\n this._loaders = [];\n }\n\n private itemViewLoader = (viewType) =>\n this._ngZone.run(() => {\n switch (viewType) {\n case ListViewViewTypes.ItemView:\n if (this._itemTemplate && this.loader) {\n const typedView = this.getOrCreate(this._itemTemplate);\n return typedView;\n }\n break;\n }\n return null;\n });\n\n public ngAfterContentInit() {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'CollectionView.ngAfterContentInit()');\n }\n this.setItemTemplates();\n }\n\n public ngOnDestroy() {\n this._collectionView.off(CollectionView.itemLoadingEvent, this.onItemLoading, this);\n this._collectionView = null;\n this._loaders.forEach((l) => l.destroy());\n this._loaders = null;\n this.viewToLoader = null;\n this.viewToTemplate = null;\n this.viewPool = null;\n\n this._items = null;\n this._differ = null;\n this._itemTemplate = null;\n if (this._templateMap) {\n this._templateMap.clear();\n }\n this._templateMap = null;\n }\n\n public ngDoCheck() {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - execute differ? ' + this._differ);\n }\n if (this._differ) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - execute differ');\n }\n const changes = this._differ.diff(this._items);\n if (changes) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'ngDoCheck() - refresh');\n }\n this.refresh();\n }\n }\n }\n\n public registerTemplate(key: string, template: TemplateRef<ItemContext>) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'registerTemplate for key: ' + key);\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 @HostListener('itemLoading', ['$event'])\n public onItemLoading(args: CollectionViewItemEventData) {\n if (!args.view && !this.itemTemplate) {\n return;\n }\n if (!this.items) return;\n const index = args.index;\n const items = args.object.items;\n const currentItem = typeof items.getItem === 'function' ? items.getItem(index) : items[index];\n let viewRef: EmbeddedViewRef<ItemContext>;\n\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `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 if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `ViewReference not found for item ${index}. View recycling is not working`);\n }\n }\n\n if (!viewRef) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, `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 @HostListener('itemRecycling', ['$event'])\n public onItemRecyclingInternal(args: any) {\n if (!args.view) {\n return;\n }\n let ngView: EmbeddedViewRef<any> = args.view[NG_VIEW];\n\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!ngView && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n ngView = args.view.getChildAt(0)[NG_VIEW];\n }\n // console.log('recycling', args.view);\n\n if (ngView) {\n ngView.detach();\n }\n }\n\n @HostListener('itemDisposing', ['$event'])\n public onItemDisposingInternal(args: any) {\n if (!args.view) {\n return;\n }\n let ngView: EmbeddedViewRef<any> = args.view[NG_VIEW];\n\n // Getting angular view from original element (in cases when ProxyViewContainer\n // is used NativeScript internally wraps it in a StackLayout)\n if (!ngView && args.view instanceof LayoutBase && args.view.getChildrenCount() > 0) {\n ngView = args.view.getChildAt(0)[NG_VIEW];\n }\n\n if (ngView) {\n ngView.detach();\n this.storeViewRef(ngView);\n }\n }\n\n public setupViewRef(view: EmbeddedViewRef<ItemContext>, data: any, index: number): void {\n const context = view.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 context,\n data,\n index,\n view\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 viewPool = new Map<\n TemplateRef<ItemContext>,\n {\n scrapSize: number;\n scrapHead: Set<EmbeddedViewRef<ItemContext>>;\n }\n >();\n private storeViewRef(viewRef: EmbeddedViewRef<any>) {\n const templateRef = this.viewToTemplate.get(viewRef);\n if (templateRef) {\n const scrap = this.viewPool.get(templateRef);\n if (scrap) {\n if (scrap.scrapHead.size >= scrap.scrapSize) {\n viewRef.destroy();\n this.viewToLoader.get(viewRef)?.destroy();\n } else {\n scrap.scrapHead.add(viewRef);\n }\n }\n }\n }\n viewToTemplate = new WeakMap<EmbeddedViewRef<any>, TemplateRef<any>>();\n viewToLoader = new WeakMap<EmbeddedViewRef<any>, ComponentRef<DetachedLoader>>();\n\n private getOrCreate(templateRef: TemplateRef<ItemContext>) {\n return this._ngZone.run(() => {\n let viewRef = this.getView(templateRef);\n if (!viewRef) {\n const loader = this.detachedLoaderFactory();\n // viewRef = this.loader.createEmbeddedView(templateRef, new ItemContext(), 0);\n viewRef = loader.instance.vc.createEmbeddedView(templateRef, new ItemContext(), 0);\n this.viewToLoader.set(viewRef, loader);\n this.viewToTemplate.set(viewRef, templateRef);\n }\n viewRef.detach();\n const resultView = getItemViewRoot(viewRef);\n resultView[NG_VIEW] = viewRef;\n resultView.reusable = this.autoReuseViews;\n return resultView;\n });\n }\n private getView(templateRef: TemplateRef<ItemContext>) {\n const pool = this.getViewPool(templateRef);\n while (pool.scrapHead.size > 0) {\n const viewRef: EmbeddedViewRef<ItemContext> = pool.scrapHead.values().next().value;\n pool.scrapHead.delete(viewRef);\n if (!viewRef.destroyed) {\n return viewRef;\n }\n }\n return null;\n }\n\n private getViewPool(templateRef: TemplateRef<ItemContext>) {\n if (!this.viewPool.has(templateRef)) {\n this.viewPool.set(templateRef, {\n scrapSize: this.autoReuseViews ? Infinity : 0,\n scrapHead: new Set<EmbeddedViewRef<ItemContext>>()\n });\n }\n return this.viewPool.get(templateRef);\n }\n\n private setItemTemplates() {\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 CLog(CLogTypes.info, 'Setting templates');\n }\n\n const templates: KeyedTemplate[] = [];\n this._templateMap.forEach((value) => {\n templates.push(value);\n });\n this._collectionView.itemTemplates = templates;\n } else {\n // If the map was not initialized this means that there are no named templates, so we register the default one.\n this._collectionView.itemTemplate = this.getItemTemplateViewFactory(this.itemTemplate);\n }\n }\n\n private detectChangesOnChild(viewRef: EmbeddedViewRef<ItemContext>, index: number) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'Manually detect changes in child: ' + index);\n }\n viewRef.markForCheck();\n viewRef.detectChanges();\n }\n\n private refresh() {\n if (this._collectionView) {\n this._collectionView.refresh();\n }\n }\n}\n\nexport interface ComponentView {\n rootNodes: any[];\n destroy(): void;\n}\n\nexport type RootLocator = (nodes: any[], nestLevel: number) => View;\n\nexport function getItemViewRoot(viewRef: ComponentView, rootLocator: RootLocator = extractSingleViewRecursive): View {\n const rootView = rootLocator(viewRef.rootNodes, 0);\n return rootView;\n}\n\n@Directive({ selector: '[cvTemplateKey],[cvRowHeight]' })\nexport class TemplateKeyDirective {\n private _templateKey: string;\n private _rowHeight: any;\n constructor(\n private templateRef: TemplateRef<any>,\n @Host() private collectionView: CollectionViewComponent\n ) {}\n\n @Input()\n set cvTemplateKey(value: any) {\n if (Trace.isEnabled()) {\n CLog(CLogTypes.info, 'cvTemplateKey: ' + value);\n }\n this._templateKey = value;\n if (this.collectionView && this.templateRef) {\n this.collectionView.registerTemplate(value.toLowerCase(), this.templateRef);\n if (this._rowHeight !== undefined) {\n this.collectionView.nativeElement?.setTemplateRowHeight(value, this._rowHeight);\n }\n }\n }\n\n @Input()\n set cvRowHeight(value: any) {\n this._rowHeight = value;\n const key = this._templateKey || 'default';\n this.collectionView?.nativeElement?.setTemplateRowHeight(key, value);\n }\n}\n","// External\nimport { NO_ERRORS_SCHEMA, NgModule } from '@angular/core';\n\nimport { CollectionViewComponent, TemplateKeyDirective } from './collectionview-comp';\nexport { CollectionViewComponent, TemplateKeyDirective } from './collectionview-comp';\n\n@NgModule({\n imports: [CollectionViewComponent, TemplateKeyDirective],\n exports: [CollectionViewComponent, TemplateKeyDirective],\n schemas: [NO_ERRORS_SCHEMA]\n})\nexport class CollectionViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/index-common.d.ts CHANGED
@@ -47,6 +47,7 @@ export declare abstract class CollectionViewBase extends View implements Collect
47
47
  static loadMoreItemsEvent: string;
48
48
  static dataPopulatedEvent: string;
49
49
  static knownFunctions: string[];
50
+ allowCssPropagation: boolean;
50
51
  isBounceEnabled: boolean;
51
52
  isScrollEnabled: boolean;
52
53
  reverseLayout: boolean;
@@ -92,7 +93,10 @@ export declare abstract class CollectionViewBase extends View implements Collect
92
93
  }): void;
93
94
  protected _itemTemplatesInternal: Map<string, KeyedTemplate>;
94
95
  protected _defaultTemplate: KeyedTemplate;
96
+ protected _templateRowHeights: Map<string, CoreTypes.PercentLengthType>;
95
97
  constructor();
98
+ setTemplateRowHeight(key: string, value: any): void;
99
+ getEffectiveRowHeightForIndex(index: number): number;
96
100
  notifyForItemAtIndex(eventName: string, view: View, index: number, bindingContext?: any, native?: any): void;
97
101
  abstract refresh(): any;
98
102
  abstract eachChildAsync(callback: any): any;
@@ -179,5 +183,6 @@ export declare const reorderingEnabledProperty: Property<CollectionViewBase, boo
179
183
  export declare const reorderLongPressEnabledProperty: Property<CollectionViewBase, boolean>;
180
184
  export declare const scrollBarIndicatorVisibleProperty: Property<CollectionViewBase, boolean>;
181
185
  export declare const autoReloadItemOnLayoutProperty: Property<CollectionViewBase, boolean>;
186
+ export declare const allowCssPropagationProperty: Property<CollectionViewBase, boolean>;
182
187
  export declare const itemOverlapProperty: Property<CollectionViewBase, Function>;
183
188
  export {};
package/index-common.js CHANGED
@@ -79,6 +79,7 @@ let CollectionViewBase = CollectionViewBase_1 = class CollectionViewBase extends
79
79
  this.refresh();
80
80
  };
81
81
  this._isDataDirty = false;
82
+ this._templateRowHeights = new Map();
82
83
  this._defaultTemplate = {
83
84
  key: 'default',
84
85
  createView: () => {
@@ -91,6 +92,27 @@ let CollectionViewBase = CollectionViewBase_1 = class CollectionViewBase extends
91
92
  this._itemTemplatesInternal = new Map();
92
93
  this._itemTemplatesInternal.set(this._defaultTemplate.key, this._defaultTemplate);
93
94
  }
95
+ setTemplateRowHeight(key, value) {
96
+ const templateKey = (key || this._defaultTemplate.key).toLowerCase();
97
+ if (value === undefined || value === null || value === '') {
98
+ this._templateRowHeights.delete(templateKey);
99
+ }
100
+ else {
101
+ this._templateRowHeights.set(templateKey, PercentLength.parse(value));
102
+ }
103
+ }
104
+ getEffectiveRowHeightForIndex(index) {
105
+ const selector = this._itemTemplateSelector;
106
+ let templateKey = this._defaultTemplate.key;
107
+ if (selector) {
108
+ templateKey = selector.call(this, this.getItemAtIndex(index), index, this.items);
109
+ }
110
+ const perTemplate = this._templateRowHeights.get((templateKey || this._defaultTemplate.key).toLowerCase());
111
+ if (perTemplate) {
112
+ return toDevicePixels(perTemplate, autoEffectiveRowHeight, this._innerHeight);
113
+ }
114
+ return this._effectiveRowHeight;
115
+ }
94
116
  notifyForItemAtIndex(eventName, view, index, bindingContext, native) {
95
117
  throw new Error('Method not implemented.');
96
118
  }
@@ -634,6 +656,12 @@ export const autoReloadItemOnLayoutProperty = new Property({
634
656
  valueConverter: booleanConverter
635
657
  });
636
658
  autoReloadItemOnLayoutProperty.register(CollectionViewBase);
659
+ export const allowCssPropagationProperty = new Property({
660
+ name: 'allowCssPropagation',
661
+ defaultValue: false,
662
+ valueConverter: booleanConverter
663
+ });
664
+ allowCssPropagationProperty.register(CollectionViewBase);
637
665
  export const itemOverlapProperty = new Property({
638
666
  name: 'itemOverlap',
639
667
  defaultValue: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"index-common.js","sourceRoot":"","sources":["../../src/collectionview/index-common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-common.js","sourceRoot":"","sources":["../../src/collectionview/index-common.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ export declare class CollectionView extends CollectionViewBase {
31
31
  private currentSpanCount;
32
32
  private _viewHolders;
33
33
  private _scrollOrLoadMoreChangeCount;
34
+ private _touchEventsCount;
34
35
  private _nScrollListener;
35
36
  scrolling: boolean;
36
37
  needsScrollStartEvent: boolean;
@@ -86,6 +87,7 @@ export declare class CollectionView extends CollectionViewBase {
86
87
  startViewHolderDragging(index: any, viewHolder: CollectionViewCellHolder): void;
87
88
  onReorderLongPress(motionEvent: android.view.MotionEvent): void;
88
89
  _reorderItemInSource(oldPosition: number, newPosition: number): void;
90
+ _initItemTouchListerner(): void;
89
91
  _longPressGesture: androidx.core.view.GestureDetectorCompat;
90
92
  _itemTouchListerner: androidx.recyclerview.widget.RecyclerView.OnItemTouchListener;
91
93
  onItemViewLoaderChanged(): void;
package/index.android.js CHANGED
@@ -107,6 +107,7 @@ export class CollectionView extends CollectionViewBase {
107
107
  // used to "destroy" cells when possible
108
108
  this._viewHolders = new Set();
109
109
  this._scrollOrLoadMoreChangeCount = 0;
110
+ this._touchEventsCount = 0;
110
111
  this.scrolling = false;
111
112
  this.needsScrollStartEvent = false;
112
113
  this.animateItemUpdate = false;
@@ -216,6 +217,9 @@ export class CollectionView extends CollectionViewBase {
216
217
  onMeasure: (widthMeasureSpec, heightMeasureSpec) => this.onMeasure(widthMeasureSpec, heightMeasureSpec)
217
218
  });
218
219
  this.spanSize = this._getSpanSize;
220
+ if (this.hasListeners('touch')) {
221
+ this._initItemTouchListerner();
222
+ }
219
223
  // const animator = new jp.wasabeef.recyclerview.animators.FadeInAnimator();
220
224
  // // animator.setInterpolator(new android.view.animation.OvershootInterpolator());
221
225
  // animator.setMoveDuration(200);
@@ -243,8 +247,13 @@ export class CollectionView extends CollectionViewBase {
243
247
  this._listViewAdapter = null;
244
248
  this._itemTouchHelper = null;
245
249
  this._simpleItemTouchCallback = null;
250
+ this._longPressGesture = null;
246
251
  this.disposeViewHolderViews();
247
252
  this.clearTemplateTypes();
253
+ if (this._itemTouchListerner) {
254
+ nativeView.removeOnItemTouchListener(this._itemTouchListerner);
255
+ this._itemTouchListerner = null;
256
+ }
248
257
  super.disposeNativeView();
249
258
  }
250
259
  onLoaded() {
@@ -407,6 +416,10 @@ export class CollectionView extends CollectionViewBase {
407
416
  this._scrollOrLoadMoreChangeCount++;
408
417
  this.attachScrollListenerIfNecessary();
409
418
  }
419
+ if (arg === 'touch') {
420
+ this._touchEventsCount++;
421
+ this._initItemTouchListerner();
422
+ }
410
423
  }
411
424
  removeEventListener(arg, callback, thisArg) {
412
425
  super.removeEventListener(arg, callback, thisArg);
@@ -414,6 +427,13 @@ export class CollectionView extends CollectionViewBase {
414
427
  this._scrollOrLoadMoreChangeCount--;
415
428
  this.detachScrollListenerIfNecessary();
416
429
  }
430
+ if (arg === 'touch') {
431
+ this._touchEventsCount--;
432
+ if (this._touchEventsCount === 0 && !this._longPressGesture && this._itemTouchListerner) {
433
+ this.nativeViewProtected.removeOnItemTouchListener(this._itemTouchListerner);
434
+ this._itemTouchListerner = null;
435
+ }
436
+ }
417
437
  }
418
438
  //@ts-ignore
419
439
  get android() {
@@ -606,25 +626,35 @@ export class CollectionView extends CollectionViewBase {
606
626
  // we will call events only at then end
607
627
  super._reorderItemInSource(oldPosition, newPosition, false);
608
628
  }
629
+ _initItemTouchListerner() {
630
+ if (!this._itemTouchListerner) {
631
+ this._itemTouchListerner = new androidx.recyclerview.widget.RecyclerView.OnItemTouchListener({
632
+ onInterceptTouchEvent: (view, event) => {
633
+ const action = event.getAction();
634
+ if (action === 0 /* android.view.MotionEvent.ACTION_DOWN */ || action === 1 /* android.view.MotionEvent.ACTION_UP */) {
635
+ // this event is always ignored and not "transmitted" to the view
636
+ this.handleGestureTouch(event);
637
+ }
638
+ if (this.reorderEnabled && this._longPressGesture) {
639
+ this._longPressGesture.onTouchEvent(event);
640
+ }
641
+ return false;
642
+ },
643
+ onTouchEvent: (param0, param1) => { },
644
+ onRequestDisallowInterceptTouchEvent: (disallowIntercept) => { }
645
+ });
646
+ this.nativeViewProtected.addOnItemTouchListener(this._itemTouchListerner);
647
+ }
648
+ }
609
649
  [_a = reorderLongPressEnabledProperty.setNative](value) {
610
650
  if (value) {
611
651
  if (!this._longPressGesture) {
612
652
  this._longPressGesture = new androidx.core.view.GestureDetectorCompat(this._context, new LongPressGestureListenerImpl(new WeakRef(this)));
613
- this._itemTouchListerner = new androidx.recyclerview.widget.RecyclerView.OnItemTouchListener({
614
- onInterceptTouchEvent: (view, event) => {
615
- if (this.reorderEnabled && this._longPressGesture) {
616
- this._longPressGesture.onTouchEvent(event);
617
- }
618
- return false;
619
- },
620
- onTouchEvent: (param0, param1) => { },
621
- onRequestDisallowInterceptTouchEvent: (disallowIntercept) => { }
622
- });
623
653
  }
624
- this.nativeViewProtected.addOnItemTouchListener(this._itemTouchListerner);
654
+ this._initItemTouchListerner();
625
655
  }
626
656
  else {
627
- if (this._itemTouchListerner) {
657
+ if (this._itemTouchListerner && !this.hasListeners('touch')) {
628
658
  this.nativeViewProtected.removeOnItemTouchListener(this._itemTouchListerner);
629
659
  }
630
660
  }
@@ -1103,11 +1133,15 @@ export class CollectionView extends CollectionViewBase {
1103
1133
  parentView.id = 'collectionViewHolder';
1104
1134
  view = parentView;
1105
1135
  }
1106
- //@ts-ignore
1107
- view.parent = this;
1108
- view._setupAsRootView(this._context);
1109
- view._isAddedToNativeVisualTree = true;
1110
- view.callLoaded();
1136
+ if (this.allowCssPropagation) {
1137
+ this._addView(view);
1138
+ }
1139
+ else {
1140
+ view.parent = this;
1141
+ view._setupAsRootView(this._context);
1142
+ view._isAddedToNativeVisualTree = true;
1143
+ view.callLoaded();
1144
+ }
1111
1145
  if (!CollectionViewCellHolder) {
1112
1146
  CollectionViewCellHolder = com.nativescript.collectionview.CollectionViewCellHolder;
1113
1147
  }
@@ -1141,7 +1175,7 @@ export class CollectionView extends CollectionViewBase {
1141
1175
  return holder;
1142
1176
  }
1143
1177
  notifyForItemAtIndex(eventName, view, index, bindingContext, native) {
1144
- const args = { eventName, object: this, index, view, ios: native, bindingContext };
1178
+ const args = { eventName, object: this, index, view, android: native, bindingContext };
1145
1179
  this.notify(args);
1146
1180
  return args;
1147
1181
  }
@@ -1162,21 +1196,25 @@ export class CollectionView extends CollectionViewBase {
1162
1196
  const args = this.notifyForItemAtIndex(CollectionViewBase.itemLoadingEvent, view, position, bindingContext, holder);
1163
1197
  if (isNonSync && args.view !== view) {
1164
1198
  view = args.view;
1199
+ // Set binding context before adding view to parent to ensure it's available during view loaded event
1200
+ view.bindingContext = bindingContext;
1165
1201
  // the view has been changed on the event handler
1166
- holder.view.content = args.view;
1202
+ holder.view.content = view;
1203
+ }
1204
+ else {
1205
+ view.bindingContext = bindingContext;
1167
1206
  }
1168
- view.bindingContext = bindingContext;
1169
1207
  view.notify({ eventName: CollectionViewBase.bindedEvent });
1170
1208
  let width = this._effectiveColWidth;
1171
- let height = this._effectiveRowHeight;
1209
+ let height = this.getEffectiveRowHeightForIndex(position);
1172
1210
  if (this._getSpanSize) {
1173
1211
  const spanSize = this._getSpanSize(bindingContext, position);
1174
1212
  const horizontal = this.isHorizontal();
1175
1213
  if (horizontal) {
1176
- height *= spanSize;
1214
+ width *= spanSize;
1177
1215
  }
1178
1216
  else {
1179
- width *= spanSize;
1217
+ height *= spanSize;
1180
1218
  }
1181
1219
  }
1182
1220
  if (width || !view.width) {