react-virtuoso 2.8.4 → 2.8.5

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 (47) hide show
  1. package/dist/index.d.ts +847 -3
  2. package/dist/index.js +1 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.m.js +1 -1
  5. package/dist/index.m.js.map +1 -1
  6. package/package.json +6 -2
  7. package/dist/AATree.d.ts +0 -40
  8. package/dist/Grid.d.ts +0 -482
  9. package/dist/List.d.ts +0 -6253
  10. package/dist/Table.d.ts +0 -6085
  11. package/dist/alignToBottomSystem.d.ts +0 -549
  12. package/dist/comparators.d.ts +0 -3
  13. package/dist/components.d.ts +0 -503
  14. package/dist/domIOSystem.d.ts +0 -15
  15. package/dist/followOutputSystem.d.ts +0 -378
  16. package/dist/gridSystem.d.ts +0 -281
  17. package/dist/groupedListSystem.d.ts +0 -75
  18. package/dist/hooks/__mocks__/useChangedChildSizes.d.ts +0 -4
  19. package/dist/hooks/__mocks__/useScrollTop.d.ts +0 -7
  20. package/dist/hooks/__mocks__/useSize.d.ts +0 -3
  21. package/dist/hooks/useChangedChildSizes.d.ts +0 -3
  22. package/dist/hooks/useIsomorphicLayoutEffect.d.ts +0 -3
  23. package/dist/hooks/useScrollTop.d.ts +0 -6
  24. package/dist/hooks/useSize.d.ts +0 -6
  25. package/dist/hooks/useWindowViewportRect.d.ts +0 -2
  26. package/dist/initialItemCountSystem.d.ts +0 -542
  27. package/dist/initialScrollTopSystem.d.ts +0 -560
  28. package/dist/initialTopMostItemIndexSystem.d.ts +0 -163
  29. package/dist/interfaces.d.ts +0 -285
  30. package/dist/listStateSystem.d.ts +0 -489
  31. package/dist/listSystem.d.ts +0 -5426
  32. package/dist/loggerSystem.d.ts +0 -17
  33. package/dist/propsReadySystem.d.ts +0 -12
  34. package/dist/scrollIntoViewSystem.d.ts +0 -645
  35. package/dist/scrollSeekSystem.d.ts +0 -57
  36. package/dist/scrollToIndexSystem.d.ts +0 -81
  37. package/dist/sizeRangeSystem.d.ts +0 -50
  38. package/dist/sizeSystem.d.ts +0 -68
  39. package/dist/stateFlagsSystem.d.ts +0 -65
  40. package/dist/topItemCountSystem.d.ts +0 -489
  41. package/dist/totalListHeightSystem.d.ts +0 -517
  42. package/dist/upwardScrollFixSystem.d.ts +0 -614
  43. package/dist/utils/binaryArraySearch.d.ts +0 -6
  44. package/dist/utils/correctItemSize.d.ts +0 -1
  45. package/dist/utils/positionStickyCssValue.d.ts +0 -1
  46. package/dist/utils/simpleMemoize.d.ts +0 -1
  47. package/dist/windowScrollerSystem.d.ts +0 -35
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "react-virtuoso",
3
3
  "author": "Petyo Ivanov",
4
4
  "sideEffects": false,
5
- "version": "2.8.4",
5
+ "version": "2.8.5",
6
6
  "homepage": "https://virtuoso.dev/",
7
7
  "license": "MIT",
8
8
  "source": "src/index.tsx",
@@ -28,7 +28,9 @@
28
28
  ],
29
29
  "scripts": {
30
30
  "start": "microbundle watch --raw --no-sourcemap --strict --no-compress --jsx React.createElement --format=cjs,esm",
31
- "build": "microbundle --strict --jsx React.createElement --format=cjs,esm src/index.tsx",
31
+ "build": "yarn build:microbundle && yarn build:bundle-dts",
32
+ "build:microbundle": "microbundle --strict --jsx React.createElement --format=cjs,esm src/index.tsx",
33
+ "build:bundle-dts": "api-extractor run --local && ./scripts/cleanup-dist.sh",
32
34
  "test": "jest --passWithNoTests",
33
35
  "e2e": "playwright test",
34
36
  "lint": "eslint src test e2e --ext .ts,.tsx",
@@ -49,6 +51,7 @@
49
51
  "@commitlint/config-conventional": "^12.1.4",
50
52
  "@emotion/core": "^10.1.0",
51
53
  "@emotion/styled": "^10.0.27",
54
+ "@microsoft/api-extractor": "^7.19.5",
52
55
  "@playwright/test": "^1.17.1",
53
56
  "@types/faker": "^5.1.4",
54
57
  "@types/jest": "^26.0.20",
@@ -90,6 +93,7 @@
90
93
  "react-dom": "^16.13.1",
91
94
  "react-router-dom": "^5.2.0",
92
95
  "react-test-renderer": "^16.13.1",
96
+ "rollup-plugin-dts": "^4.2.0",
93
97
  "semantic-release": "^17.3.0",
94
98
  "ts-jest": "^26.5.1",
95
99
  "tslib": "^2.0.0",
package/dist/AATree.d.ts DELETED
@@ -1,40 +0,0 @@
1
- interface NilNode {
2
- lvl: 0;
3
- }
4
- interface NodeData<T> {
5
- k: number;
6
- v: T;
7
- }
8
- interface NonNilAANode<T> {
9
- k: number;
10
- v: T;
11
- lvl: number;
12
- l: NonNilAANode<T> | NilNode;
13
- r: NonNilAANode<T> | NilNode;
14
- }
15
- export interface Range<T> {
16
- start: number;
17
- end: number;
18
- value: T;
19
- }
20
- export declare type AANode<T> = NilNode | NonNilAANode<T>;
21
- export declare function empty(node: AANode<any>): node is NilNode;
22
- export declare function newTree<T>(): AANode<T>;
23
- export declare function remove<T>(node: AANode<T>, key: number): AANode<T>;
24
- export declare function find<T>(node: AANode<T>, key: number): T | undefined;
25
- export declare function findMaxKeyValue<T>(node: AANode<T>, value: number, field?: 'k' | 'v'): [number, T | undefined];
26
- export declare function insert<T>(node: AANode<T>, k: number, v: T): NonNilAANode<T>;
27
- export declare function walkWithin<T>(node: AANode<T>, start: number, end: number): NodeData<T>[];
28
- export declare function walk<T>(node: AANode<T>): NodeData<T>[];
29
- export declare function keys(node: AANode<any>): number[];
30
- export declare function ranges<T>(node: AANode<T>): Range<T>[];
31
- export declare function rangesWithin<T>(node: AANode<T>, startIndex: number, endIndex: number): Range<T>[];
32
- export declare function arrayToRanges<T, V>(items: T[], parser: (item: T) => {
33
- index: number;
34
- value: V;
35
- }): Array<{
36
- start: number;
37
- end: number;
38
- value: V;
39
- }>;
40
- export {};
package/dist/Grid.d.ts DELETED
@@ -1,482 +0,0 @@
1
- import { RefHandle } from '@virtuoso.dev/react-urx';
2
- import * as u from '@virtuoso.dev/urx';
3
- import * as React from 'react';
4
- import { GridComponents, GridComputeItemKey, GridItemContent, GridRootProps } from './interfaces';
5
- declare const Grid: React.ForwardRefExoticComponent<{} & {
6
- itemContent?: GridItemContent<any> | undefined;
7
- components?: GridComponents<any> | undefined;
8
- computeItemKey?: GridComputeItemKey | undefined;
9
- itemClassName?: string | undefined;
10
- listClassName?: string | undefined;
11
- scrollerRef?: ((ref: HTMLElement | null) => void) | undefined;
12
- overscan?: import("./sizeRangeSystem").Overscan | undefined;
13
- scrollSeekConfiguration?: false | import("./interfaces").ScrollSeekConfiguration | undefined;
14
- useWindowScroll?: boolean | undefined;
15
- customScrollParent?: HTMLElement | undefined;
16
- totalCount?: number | undefined;
17
- initialItemCount?: number | undefined;
18
- scrollSeek?: any;
19
- item?: GridItemContent<any> | undefined;
20
- ItemContainer?: any;
21
- ScrollContainer?: any;
22
- ListContainer?: any;
23
- } & {
24
- isScrolling?: ((value: boolean) => void) | undefined;
25
- atTopStateChange?: ((value: boolean) => void) | undefined;
26
- atBottomStateChange?: ((value: boolean) => void) | undefined;
27
- startReached?: ((value: number) => void) | undefined;
28
- endReached?: ((value: number) => void) | undefined;
29
- rangeChanged?: ((value: import("./interfaces").ListRange) => void) | undefined;
30
- } & GridRootProps & React.RefAttributes<import("@virtuoso.dev/react-urx").MethodsFromPropMap<u.SystemSpec<[u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[], () => {
31
- scrollContainerState: u.Stream<[number, number]>;
32
- scrollTop: u.Stream<number>;
33
- viewportHeight: u.Stream<number>;
34
- headerHeight: u.StatefulStream<number>;
35
- footerHeight: u.StatefulStream<number>;
36
- scrollHeight: u.Stream<number>;
37
- smoothScrollTargetReached: u.Stream<true>;
38
- scrollTo: u.Stream<ScrollToOptions>;
39
- scrollBy: u.Stream<ScrollToOptions>;
40
- statefulScrollTop: u.StatefulStream<number>;
41
- deviation: u.StatefulStream<number>;
42
- scrollingInProgress: u.StatefulStream<boolean>;
43
- }>], ([{ scrollTop, viewportHeight, deviation, headerHeight }]: [{
44
- scrollContainerState: u.Stream<[number, number]>;
45
- scrollTop: u.Stream<number>;
46
- viewportHeight: u.Stream<number>;
47
- headerHeight: u.StatefulStream<number>;
48
- footerHeight: u.StatefulStream<number>;
49
- scrollHeight: u.Stream<number>;
50
- smoothScrollTargetReached: u.Stream<true>;
51
- scrollTo: u.Stream<ScrollToOptions>;
52
- scrollBy: u.Stream<ScrollToOptions>;
53
- statefulScrollTop: u.StatefulStream<number>;
54
- deviation: u.StatefulStream<number>;
55
- scrollingInProgress: u.StatefulStream<boolean>;
56
- }]) => {
57
- listBoundary: u.Stream<import("./sizeRangeSystem").NumberTuple>;
58
- overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
59
- topListHeight: u.StatefulStream<number>;
60
- fixedHeaderHeight: u.StatefulStream<number>;
61
- increaseViewportBy: u.StatefulStream<import("./sizeRangeSystem").ViewportIncrease>;
62
- visibleRange: u.StatefulStream<import("./sizeRangeSystem").NumberTuple>;
63
- }>, u.SystemSpec<never[], () => {
64
- scrollContainerState: u.Stream<[number, number]>;
65
- scrollTop: u.Stream<number>;
66
- viewportHeight: u.Stream<number>;
67
- headerHeight: u.StatefulStream<number>;
68
- footerHeight: u.StatefulStream<number>;
69
- scrollHeight: u.Stream<number>;
70
- smoothScrollTargetReached: u.Stream<true>;
71
- scrollTo: u.Stream<ScrollToOptions>;
72
- scrollBy: u.Stream<ScrollToOptions>;
73
- statefulScrollTop: u.StatefulStream<number>;
74
- deviation: u.StatefulStream<number>;
75
- scrollingInProgress: u.StatefulStream<boolean>;
76
- }>, u.SystemSpec<[u.SystemSpec<never[], () => {
77
- scrollContainerState: u.Stream<[number, number]>;
78
- scrollTop: u.Stream<number>;
79
- viewportHeight: u.Stream<number>;
80
- headerHeight: u.StatefulStream<number>;
81
- footerHeight: u.StatefulStream<number>;
82
- scrollHeight: u.Stream<number>;
83
- smoothScrollTargetReached: u.Stream<true>;
84
- scrollTo: u.Stream<ScrollToOptions>;
85
- scrollBy: u.Stream<ScrollToOptions>;
86
- statefulScrollTop: u.StatefulStream<number>;
87
- deviation: u.StatefulStream<number>;
88
- scrollingInProgress: u.StatefulStream<boolean>;
89
- }>], ([{ scrollContainerState, scrollTop, viewportHeight, headerHeight, footerHeight, scrollBy }]: [{
90
- scrollContainerState: u.Stream<[number, number]>;
91
- scrollTop: u.Stream<number>;
92
- viewportHeight: u.Stream<number>;
93
- headerHeight: u.StatefulStream<number>;
94
- footerHeight: u.StatefulStream<number>;
95
- scrollHeight: u.Stream<number>;
96
- smoothScrollTargetReached: u.Stream<true>;
97
- scrollTo: u.Stream<ScrollToOptions>;
98
- scrollBy: u.Stream<ScrollToOptions>;
99
- statefulScrollTop: u.StatefulStream<number>;
100
- deviation: u.StatefulStream<number>;
101
- scrollingInProgress: u.StatefulStream<boolean>;
102
- }]) => {
103
- isScrolling: u.Stream<boolean>;
104
- isAtTop: u.StatefulStream<boolean>;
105
- isAtBottom: u.StatefulStream<boolean>;
106
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
107
- atTopStateChange: u.Stream<boolean>;
108
- atBottomStateChange: u.Stream<boolean>;
109
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
110
- atBottomThreshold: u.StatefulStream<number>;
111
- scrollVelocity: u.StatefulStream<number>;
112
- lastJumpDueToItemResize: u.StatefulStream<number>;
113
- }>, u.SystemSpec<[u.SystemSpec<[u.SystemSpec<never[], () => {
114
- scrollContainerState: u.Stream<[number, number]>;
115
- scrollTop: u.Stream<number>;
116
- viewportHeight: u.Stream<number>;
117
- headerHeight: u.StatefulStream<number>;
118
- footerHeight: u.StatefulStream<number>;
119
- scrollHeight: u.Stream<number>;
120
- smoothScrollTargetReached: u.Stream<true>;
121
- scrollTo: u.Stream<ScrollToOptions>;
122
- scrollBy: u.Stream<ScrollToOptions>;
123
- statefulScrollTop: u.StatefulStream<number>;
124
- deviation: u.StatefulStream<number>;
125
- scrollingInProgress: u.StatefulStream<boolean>;
126
- }>], ([{ scrollContainerState, scrollTop, viewportHeight, headerHeight, footerHeight, scrollBy }]: [{
127
- scrollContainerState: u.Stream<[number, number]>;
128
- scrollTop: u.Stream<number>;
129
- viewportHeight: u.Stream<number>;
130
- headerHeight: u.StatefulStream<number>;
131
- footerHeight: u.StatefulStream<number>;
132
- scrollHeight: u.Stream<number>;
133
- smoothScrollTargetReached: u.Stream<true>;
134
- scrollTo: u.Stream<ScrollToOptions>;
135
- scrollBy: u.Stream<ScrollToOptions>;
136
- statefulScrollTop: u.StatefulStream<number>;
137
- deviation: u.StatefulStream<number>;
138
- scrollingInProgress: u.StatefulStream<boolean>;
139
- }]) => {
140
- isScrolling: u.Stream<boolean>;
141
- isAtTop: u.StatefulStream<boolean>;
142
- isAtBottom: u.StatefulStream<boolean>;
143
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
144
- atTopStateChange: u.Stream<boolean>;
145
- atBottomStateChange: u.Stream<boolean>;
146
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
147
- atBottomThreshold: u.StatefulStream<number>;
148
- scrollVelocity: u.StatefulStream<number>;
149
- lastJumpDueToItemResize: u.StatefulStream<number>;
150
- }>], ([{ scrollVelocity }]: [{
151
- isScrolling: u.Stream<boolean>;
152
- isAtTop: u.StatefulStream<boolean>;
153
- isAtBottom: u.StatefulStream<boolean>;
154
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
155
- atTopStateChange: u.Stream<boolean>;
156
- atBottomStateChange: u.Stream<boolean>;
157
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
158
- atBottomThreshold: u.StatefulStream<number>;
159
- scrollVelocity: u.StatefulStream<number>;
160
- lastJumpDueToItemResize: u.StatefulStream<number>;
161
- }]) => {
162
- isSeeking: u.StatefulStream<boolean>;
163
- scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
164
- scrollVelocity: u.StatefulStream<number>;
165
- scrollSeekRangeChanged: u.Stream<import("./interfaces").ListRange>;
166
- }>, u.SystemSpec<[u.SystemSpec<never[], () => {
167
- log: u.StatefulStream<import("./loggerSystem").Log>;
168
- logLevel: u.StatefulStream<import("./loggerSystem").LogLevel>;
169
- }>], ([{ log }]: [{
170
- log: u.StatefulStream<import("./loggerSystem").Log>;
171
- logLevel: u.StatefulStream<import("./loggerSystem").LogLevel>;
172
- }]) => {
173
- propsReady: u.StatefulStream<boolean>;
174
- didMount: u.Stream<boolean>;
175
- }>, u.SystemSpec<[u.SystemSpec<never[], () => {
176
- scrollContainerState: u.Stream<[number, number]>;
177
- scrollTop: u.Stream<number>;
178
- viewportHeight: u.Stream<number>;
179
- headerHeight: u.StatefulStream<number>;
180
- footerHeight: u.StatefulStream<number>;
181
- scrollHeight: u.Stream<number>;
182
- smoothScrollTargetReached: u.Stream<true>;
183
- scrollTo: u.Stream<ScrollToOptions>;
184
- scrollBy: u.Stream<ScrollToOptions>;
185
- statefulScrollTop: u.StatefulStream<number>;
186
- deviation: u.StatefulStream<number>;
187
- scrollingInProgress: u.StatefulStream<boolean>;
188
- }>], ([{ scrollTo, scrollContainerState }]: [{
189
- scrollContainerState: u.Stream<[number, number]>;
190
- scrollTop: u.Stream<number>;
191
- viewportHeight: u.Stream<number>;
192
- headerHeight: u.StatefulStream<number>;
193
- footerHeight: u.StatefulStream<number>;
194
- scrollHeight: u.Stream<number>;
195
- smoothScrollTargetReached: u.Stream<true>;
196
- scrollTo: u.Stream<ScrollToOptions>;
197
- scrollBy: u.Stream<ScrollToOptions>;
198
- statefulScrollTop: u.StatefulStream<number>;
199
- deviation: u.StatefulStream<number>;
200
- scrollingInProgress: u.StatefulStream<boolean>;
201
- }]) => {
202
- useWindowScroll: u.StatefulStream<boolean>;
203
- customScrollParent: u.StatefulStream<HTMLElement | undefined>;
204
- windowScrollContainerState: u.Stream<[number, number]>;
205
- windowViewportRect: u.Stream<import("./interfaces").WindowViewportInfo>;
206
- windowScrollTo: u.Stream<ScrollToOptions>;
207
- }>], ([{ overscan, visibleRange, listBoundary }, { scrollTop, viewportHeight, scrollBy, scrollTo, smoothScrollTargetReached, scrollContainerState }, stateFlags, scrollSeek, { propsReady, didMount }, { windowViewportRect, windowScrollTo, useWindowScroll, customScrollParent, windowScrollContainerState },]: [{
208
- listBoundary: u.Stream<import("./sizeRangeSystem").NumberTuple>;
209
- overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
210
- topListHeight: u.StatefulStream<number>;
211
- fixedHeaderHeight: u.StatefulStream<number>;
212
- increaseViewportBy: u.StatefulStream<import("./sizeRangeSystem").ViewportIncrease>;
213
- visibleRange: u.StatefulStream<import("./sizeRangeSystem").NumberTuple>;
214
- }, {
215
- scrollContainerState: u.Stream<[number, number]>;
216
- scrollTop: u.Stream<number>;
217
- viewportHeight: u.Stream<number>;
218
- headerHeight: u.StatefulStream<number>;
219
- footerHeight: u.StatefulStream<number>;
220
- scrollHeight: u.Stream<number>;
221
- smoothScrollTargetReached: u.Stream<true>;
222
- scrollTo: u.Stream<ScrollToOptions>;
223
- scrollBy: u.Stream<ScrollToOptions>;
224
- statefulScrollTop: u.StatefulStream<number>;
225
- deviation: u.StatefulStream<number>;
226
- scrollingInProgress: u.StatefulStream<boolean>;
227
- }, {
228
- isScrolling: u.Stream<boolean>;
229
- isAtTop: u.StatefulStream<boolean>;
230
- isAtBottom: u.StatefulStream<boolean>;
231
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
232
- atTopStateChange: u.Stream<boolean>;
233
- atBottomStateChange: u.Stream<boolean>;
234
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
235
- atBottomThreshold: u.StatefulStream<number>;
236
- scrollVelocity: u.StatefulStream<number>;
237
- lastJumpDueToItemResize: u.StatefulStream<number>;
238
- }, {
239
- isSeeking: u.StatefulStream<boolean>;
240
- scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
241
- scrollVelocity: u.StatefulStream<number>;
242
- scrollSeekRangeChanged: u.Stream<import("./interfaces").ListRange>;
243
- }, {
244
- propsReady: u.StatefulStream<boolean>;
245
- didMount: u.Stream<boolean>;
246
- }, {
247
- useWindowScroll: u.StatefulStream<boolean>;
248
- customScrollParent: u.StatefulStream<HTMLElement | undefined>;
249
- windowScrollContainerState: u.Stream<[number, number]>;
250
- windowViewportRect: u.Stream<import("./interfaces").WindowViewportInfo>;
251
- windowScrollTo: u.Stream<ScrollToOptions>;
252
- }]) => {
253
- startReached: u.Stream<number>;
254
- endReached: u.Stream<number>;
255
- rangeChanged: u.Stream<import("./interfaces").ListRange>;
256
- propsReady: u.StatefulStream<boolean>;
257
- isScrolling: u.Stream<boolean>;
258
- isAtTop: u.StatefulStream<boolean>;
259
- isAtBottom: u.StatefulStream<boolean>;
260
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
261
- atTopStateChange: u.Stream<boolean>;
262
- atBottomStateChange: u.Stream<boolean>;
263
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
264
- atBottomThreshold: u.StatefulStream<number>;
265
- scrollVelocity: u.StatefulStream<number>;
266
- lastJumpDueToItemResize: u.StatefulStream<number>;
267
- gridState: u.StatefulStream<import("./gridSystem").GridState>;
268
- totalListHeight: u.StatefulStream<number>;
269
- isSeeking: u.StatefulStream<boolean>;
270
- scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
271
- scrollSeekRangeChanged: u.Stream<import("./interfaces").ListRange>;
272
- totalCount: u.StatefulStream<number>;
273
- viewportDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
274
- itemDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
275
- scrollTop: u.Stream<number>;
276
- scrollHeight: u.Stream<number>;
277
- overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
278
- scrollBy: u.Stream<ScrollToOptions>;
279
- scrollTo: u.Stream<ScrollToOptions>;
280
- scrollToIndex: u.Stream<import("./scrollToIndexSystem").IndexLocation>;
281
- smoothScrollTargetReached: u.Stream<true>;
282
- windowViewportRect: u.Stream<import("./interfaces").WindowViewportInfo>;
283
- windowScrollTo: u.Stream<ScrollToOptions>;
284
- useWindowScroll: u.StatefulStream<boolean>;
285
- customScrollParent: u.StatefulStream<HTMLElement | undefined>;
286
- windowScrollContainerState: u.Stream<[number, number]>;
287
- deviation: u.StatefulStream<number>;
288
- scrollContainerState: u.Stream<[number, number]>;
289
- initialItemCount: u.StatefulStream<number>;
290
- }>, u.SystemSpec<u.SystemSpecs, () => {
291
- context: u.StatefulStream<unknown>;
292
- itemContent: u.StatefulStream<GridItemContent<any>>;
293
- components: u.StatefulStream<GridComponents<any>>;
294
- computeItemKey: u.StatefulStream<GridComputeItemKey>;
295
- itemClassName: u.StatefulStream<string>;
296
- listClassName: u.StatefulStream<string>;
297
- scrollerRef: u.StatefulStream<(ref: HTMLElement | null) => void>;
298
- ListComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridListProps & {
299
- context?: any;
300
- }> | null | undefined>;
301
- ItemComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridItem & {
302
- context?: any;
303
- }> | null | undefined>;
304
- ScrollerComponent: u.StatefulStream<"div" | React.ComponentType<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
305
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
306
- }, "ref" | "style" | "tabIndex" | "children"> & {
307
- 'data-test-id'?: string | undefined;
308
- 'data-virtuoso-scroller'?: boolean | undefined;
309
- } & {
310
- context?: any;
311
- }> | null | undefined>;
312
- ScrollSeekPlaceholder: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridScrollSeekPlaceholderProps & {
313
- context?: any;
314
- }> | null | undefined>;
315
- }>], ([gridSystem, gridComponentPropsSystem]: [{
316
- startReached: u.Stream<number>;
317
- endReached: u.Stream<number>;
318
- rangeChanged: u.Stream<import("./interfaces").ListRange>;
319
- propsReady: u.StatefulStream<boolean>;
320
- isScrolling: u.Stream<boolean>;
321
- isAtTop: u.StatefulStream<boolean>;
322
- isAtBottom: u.StatefulStream<boolean>;
323
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
324
- atTopStateChange: u.Stream<boolean>;
325
- atBottomStateChange: u.Stream<boolean>;
326
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
327
- atBottomThreshold: u.StatefulStream<number>;
328
- scrollVelocity: u.StatefulStream<number>;
329
- lastJumpDueToItemResize: u.StatefulStream<number>;
330
- gridState: u.StatefulStream<import("./gridSystem").GridState>;
331
- totalListHeight: u.StatefulStream<number>;
332
- isSeeking: u.StatefulStream<boolean>;
333
- scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
334
- scrollSeekRangeChanged: u.Stream<import("./interfaces").ListRange>;
335
- totalCount: u.StatefulStream<number>;
336
- viewportDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
337
- itemDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
338
- scrollTop: u.Stream<number>;
339
- scrollHeight: u.Stream<number>;
340
- overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
341
- scrollBy: u.Stream<ScrollToOptions>;
342
- scrollTo: u.Stream<ScrollToOptions>;
343
- scrollToIndex: u.Stream<import("./scrollToIndexSystem").IndexLocation>;
344
- smoothScrollTargetReached: u.Stream<true>;
345
- windowViewportRect: u.Stream<import("./interfaces").WindowViewportInfo>;
346
- windowScrollTo: u.Stream<ScrollToOptions>;
347
- useWindowScroll: u.StatefulStream<boolean>;
348
- customScrollParent: u.StatefulStream<HTMLElement | undefined>;
349
- windowScrollContainerState: u.Stream<[number, number]>;
350
- deviation: u.StatefulStream<number>;
351
- scrollContainerState: u.Stream<[number, number]>;
352
- initialItemCount: u.StatefulStream<number>;
353
- }, {
354
- context: u.StatefulStream<unknown>;
355
- itemContent: u.StatefulStream<GridItemContent<any>>;
356
- components: u.StatefulStream<GridComponents<any>>;
357
- computeItemKey: u.StatefulStream<GridComputeItemKey>;
358
- itemClassName: u.StatefulStream<string>;
359
- listClassName: u.StatefulStream<string>;
360
- scrollerRef: u.StatefulStream<(ref: HTMLElement | null) => void>;
361
- ListComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridListProps & {
362
- context?: any;
363
- }> | null | undefined>;
364
- ItemComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridItem & {
365
- context?: any;
366
- }> | null | undefined>;
367
- ScrollerComponent: u.StatefulStream<"div" | React.ComponentType<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
368
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
369
- }, "ref" | "style" | "tabIndex" | "children"> & {
370
- 'data-test-id'?: string | undefined;
371
- 'data-virtuoso-scroller'?: boolean | undefined;
372
- } & {
373
- context?: any;
374
- }> | null | undefined>;
375
- ScrollSeekPlaceholder: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridScrollSeekPlaceholderProps & {
376
- context?: any;
377
- }> | null | undefined>;
378
- }]) => {
379
- item: u.Stream<GridItemContent<any>>;
380
- ItemContainer: u.Stream<any>;
381
- ScrollContainer: u.Stream<any>;
382
- ListContainer: u.Stream<any>;
383
- emptyComponent: u.Stream<any>;
384
- scrollSeek: u.Stream<any>;
385
- context: u.StatefulStream<unknown>;
386
- itemContent: u.StatefulStream<GridItemContent<any>>;
387
- components: u.StatefulStream<GridComponents<any>>;
388
- computeItemKey: u.StatefulStream<GridComputeItemKey>;
389
- itemClassName: u.StatefulStream<string>;
390
- listClassName: u.StatefulStream<string>;
391
- scrollerRef: u.StatefulStream<(ref: HTMLElement | null) => void>;
392
- ListComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridListProps & {
393
- context?: any;
394
- }> | null | undefined>;
395
- ItemComponent: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridItem & {
396
- context?: any;
397
- }> | null | undefined>;
398
- ScrollerComponent: u.StatefulStream<"div" | React.ComponentType<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
399
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
400
- }, "ref" | "style" | "tabIndex" | "children"> & {
401
- 'data-test-id'?: string | undefined;
402
- 'data-virtuoso-scroller'?: boolean | undefined;
403
- } & {
404
- context?: any;
405
- }> | null | undefined>;
406
- ScrollSeekPlaceholder: u.StatefulStream<"div" | React.ComponentType<import("./interfaces").GridScrollSeekPlaceholderProps & {
407
- context?: any;
408
- }> | null | undefined>;
409
- startReached: u.Stream<number>;
410
- endReached: u.Stream<number>;
411
- rangeChanged: u.Stream<import("./interfaces").ListRange>;
412
- propsReady: u.StatefulStream<boolean>;
413
- isScrolling: u.Stream<boolean>;
414
- isAtTop: u.StatefulStream<boolean>;
415
- isAtBottom: u.StatefulStream<boolean>;
416
- atBottomState: u.Stream<import("./stateFlagsSystem").AtBottomState>;
417
- atTopStateChange: u.Stream<boolean>;
418
- atBottomStateChange: u.Stream<boolean>;
419
- scrollDirection: u.StatefulStream<import("./stateFlagsSystem").ScrollDirection>;
420
- atBottomThreshold: u.StatefulStream<number>;
421
- scrollVelocity: u.StatefulStream<number>;
422
- lastJumpDueToItemResize: u.StatefulStream<number>;
423
- gridState: u.StatefulStream<import("./gridSystem").GridState>;
424
- totalListHeight: u.StatefulStream<number>;
425
- isSeeking: u.StatefulStream<boolean>;
426
- scrollSeekConfiguration: u.StatefulStream<false | import("./interfaces").ScrollSeekConfiguration | undefined>;
427
- scrollSeekRangeChanged: u.Stream<import("./interfaces").ListRange>;
428
- totalCount: u.StatefulStream<number>;
429
- viewportDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
430
- itemDimensions: u.StatefulStream<import("./gridSystem").ElementDimensions>;
431
- scrollTop: u.Stream<number>;
432
- scrollHeight: u.Stream<number>;
433
- overscan: u.StatefulStream<import("./sizeRangeSystem").Overscan>;
434
- scrollBy: u.Stream<ScrollToOptions>;
435
- scrollTo: u.Stream<ScrollToOptions>;
436
- scrollToIndex: u.Stream<import("./scrollToIndexSystem").IndexLocation>;
437
- smoothScrollTargetReached: u.Stream<true>;
438
- windowViewportRect: u.Stream<import("./interfaces").WindowViewportInfo>;
439
- windowScrollTo: u.Stream<ScrollToOptions>;
440
- useWindowScroll: u.StatefulStream<boolean>;
441
- customScrollParent: u.StatefulStream<HTMLElement | undefined>;
442
- windowScrollContainerState: u.Stream<[number, number]>;
443
- deviation: u.StatefulStream<number>;
444
- scrollContainerState: u.Stream<[number, number]>;
445
- initialItemCount: u.StatefulStream<number>;
446
- }>, {
447
- optional: {
448
- totalCount: "totalCount";
449
- overscan: "overscan";
450
- itemContent: "itemContent";
451
- components: "components";
452
- computeItemKey: "computeItemKey";
453
- initialItemCount: "initialItemCount";
454
- scrollSeekConfiguration: "scrollSeekConfiguration";
455
- listClassName: "listClassName";
456
- itemClassName: "itemClassName";
457
- useWindowScroll: "useWindowScroll";
458
- customScrollParent: "customScrollParent";
459
- scrollerRef: "scrollerRef";
460
- item: "item";
461
- ItemContainer: "ItemContainer";
462
- ScrollContainer: "ScrollContainer";
463
- ListContainer: "ListContainer";
464
- scrollSeek: "scrollSeek";
465
- };
466
- methods: {
467
- scrollTo: "scrollTo";
468
- scrollBy: "scrollBy";
469
- scrollToIndex: "scrollToIndex";
470
- };
471
- events: {
472
- isScrolling: "isScrolling";
473
- endReached: "endReached";
474
- startReached: "startReached";
475
- rangeChanged: "rangeChanged";
476
- atBottomStateChange: "atBottomStateChange";
477
- atTopStateChange: "atTopStateChange";
478
- };
479
- }>>>;
480
- export declare type foo<T> = T extends React.ForwardRefExoticComponent<React.RefAttributes<infer Handle>> ? Handle : never;
481
- export declare type GridHandle = RefHandle<typeof Grid>;
482
- export { Grid };