ng-virtual-list 18.3.2 → 18.4.0
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/README.md +9 -8
- package/esm2022/lib/components/ng-virtual-list-item.component.mjs +2 -2
- package/esm2022/lib/const/index.mjs +3 -2
- package/esm2022/lib/ng-virtual-list.component.mjs +35 -9
- package/esm2022/lib/utils/buffer-interpolation.mjs +27 -0
- package/esm2022/lib/utils/trackBox.mjs +49 -10
- package/fesm2022/ng-virtual-list.mjs +111 -19
- package/fesm2022/ng-virtual-list.mjs.map +1 -1
- package/lib/const/index.d.ts +2 -1
- package/lib/ng-virtual-list.component.d.ts +14 -1
- package/lib/utils/buffer-interpolation.d.ts +5 -0
- package/lib/utils/trackBox.d.ts +16 -1
- package/package.json +1 -1
package/lib/const/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { SnappingMethods } from "../enums";
|
|
2
2
|
import { Directions } from "../enums/directions";
|
|
3
3
|
export declare const DEFAULT_ITEM_SIZE = 24;
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const DEFAULT_BUFFER_SIZE = 2;
|
|
5
|
+
export declare const DEFAULT_MAX_BUFFER_SIZE = 100;
|
|
5
6
|
export declare const DEFAULT_LIST_SIZE = 400;
|
|
6
7
|
export declare const DEFAULT_SNAP = false;
|
|
7
8
|
export declare const DEFAULT_ENABLED_BUFFER_OPTIMIZATION = false;
|
|
@@ -75,10 +75,23 @@ export declare class NgVirtualListComponent implements AfterViewInit, OnInit, On
|
|
|
75
75
|
* Determines the direction in which elements are placed. Default value is "vertical".
|
|
76
76
|
*/
|
|
77
77
|
direction: import("@angular/core").InputSignal<Direction>;
|
|
78
|
+
private _itemOffsetTransform;
|
|
78
79
|
/**
|
|
79
80
|
* Number of elements outside the scope of visibility. Default value is 2.
|
|
81
|
+
* @deprecated "itemOffset" parameter is deprecated. Use "bufferSize" and "maxBufferSize".
|
|
80
82
|
*/
|
|
81
83
|
itemsOffset: import("@angular/core").InputSignal<number>;
|
|
84
|
+
/**
|
|
85
|
+
* Number of elements outside the scope of visibility. Default value is 2.
|
|
86
|
+
*/
|
|
87
|
+
bufferSize: import("@angular/core").InputSignal<number>;
|
|
88
|
+
private _maxBufferSizeTransform;
|
|
89
|
+
/**
|
|
90
|
+
* Maximum number of elements outside the scope of visibility. Default value is 100.
|
|
91
|
+
* If maxBufferSize is set to be greater than bufferSize, then adaptive buffer mode is enabled.
|
|
92
|
+
* The greater the scroll size, the more elements are allocated for rendering.
|
|
93
|
+
*/
|
|
94
|
+
maxBufferSize: import("@angular/core").InputSignal<number>;
|
|
82
95
|
/**
|
|
83
96
|
* Snapping method.
|
|
84
97
|
* 'default' - Normal group rendering.
|
|
@@ -154,5 +167,5 @@ export declare class NgVirtualListComponent implements AfterViewInit, OnInit, On
|
|
|
154
167
|
protected afterViewInit(): void;
|
|
155
168
|
protected dispose(): void;
|
|
156
169
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgVirtualListComponent, never>;
|
|
157
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NgVirtualListComponent, "ng-virtual-list", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "snap": { "alias": "snap"; "required": false; "isSignal": true; }; "enabledBufferOptimization": { "alias": "enabledBufferOptimization"; "required": false; "isSignal": true; }; "itemRenderer": { "alias": "itemRenderer"; "required": true; "isSignal": true; }; "stickyMap": { "alias": "stickyMap"; "required": false; "isSignal": true; }; "itemSize": { "alias": "itemSize"; "required": false; "isSignal": true; }; "dynamicSize": { "alias": "dynamicSize"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "itemsOffset": { "alias": "itemsOffset"; "required": false; "isSignal": true; }; "snappingMethod": { "alias": "snappingMethod"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, { "onScroll": "onScroll"; "onScrollEnd": "onScrollEnd"; }, never, never, false, never>;
|
|
170
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgVirtualListComponent, "ng-virtual-list", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "snap": { "alias": "snap"; "required": false; "isSignal": true; }; "enabledBufferOptimization": { "alias": "enabledBufferOptimization"; "required": false; "isSignal": true; }; "itemRenderer": { "alias": "itemRenderer"; "required": true; "isSignal": true; }; "stickyMap": { "alias": "stickyMap"; "required": false; "isSignal": true; }; "itemSize": { "alias": "itemSize"; "required": false; "isSignal": true; }; "dynamicSize": { "alias": "dynamicSize"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "itemsOffset": { "alias": "itemsOffset"; "required": false; "isSignal": true; }; "bufferSize": { "alias": "bufferSize"; "required": false; "isSignal": true; }; "maxBufferSize": { "alias": "maxBufferSize"; "required": false; "isSignal": true; }; "snappingMethod": { "alias": "snappingMethod"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, { "onScroll": "onScroll"; "onScrollEnd": "onScrollEnd"; }, never, never, false, never>;
|
|
158
171
|
}
|
package/lib/utils/trackBox.d.ts
CHANGED
|
@@ -46,7 +46,8 @@ export interface IRecalculateMetricsOptions<I extends {
|
|
|
46
46
|
collection: C;
|
|
47
47
|
isVertical: boolean;
|
|
48
48
|
itemSize: number;
|
|
49
|
-
|
|
49
|
+
bufferSize: number;
|
|
50
|
+
maxBufferSize: number;
|
|
50
51
|
dynamicSize: boolean;
|
|
51
52
|
scrollSize: number;
|
|
52
53
|
snap: boolean;
|
|
@@ -117,6 +118,16 @@ export declare class TrackBox<C extends BaseVirtualListItemComponent = any> exte
|
|
|
117
118
|
protected _previousTotalSize: number;
|
|
118
119
|
protected _scrollDelta: number;
|
|
119
120
|
get scrollDelta(): number;
|
|
121
|
+
isAdaptiveBuffer: boolean;
|
|
122
|
+
protected _bufferSequenceExtraThreshold: number;
|
|
123
|
+
protected _maxBufferSequenceLength: number;
|
|
124
|
+
protected _bufferSizeSequence: Array<number>;
|
|
125
|
+
protected _bufferSize: number;
|
|
126
|
+
get bufferSize(): number;
|
|
127
|
+
protected _defaultBufferSize: number;
|
|
128
|
+
protected _maxBufferSize: number;
|
|
129
|
+
protected _resetBufferSizeTimeout: number;
|
|
130
|
+
protected _resetBufferSizeTimer: number | undefined;
|
|
120
131
|
protected lifeCircle(): void;
|
|
121
132
|
/**
|
|
122
133
|
* Scans the collection for deleted items and flushes the deleted item cache.
|
|
@@ -148,6 +159,10 @@ export declare class TrackBox<C extends BaseVirtualListItemComponent = any> exte
|
|
|
148
159
|
getNearestItem<I extends {
|
|
149
160
|
id: Id;
|
|
150
161
|
}, C extends Array<I>>(scrollSize: number, items: C, itemSize: number, isVertical: boolean): I | undefined;
|
|
162
|
+
protected _previousScrollSize: number;
|
|
163
|
+
protected updateAdaptiveBufferParams(metrics: IMetrics, totalItemsLength: number): void;
|
|
164
|
+
protected startResetBufferSizeTimer(): void;
|
|
165
|
+
protected disposeClearBufferSizeTimer(): void;
|
|
151
166
|
/**
|
|
152
167
|
* Calculates the position of an element based on the given scrollSize
|
|
153
168
|
*/
|