@shopify/flash-list 2.2.2 → 2.3.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.
Files changed (98) hide show
  1. package/dist/FlashListProps.d.ts +44 -8
  2. package/dist/FlashListProps.d.ts.map +1 -1
  3. package/dist/native/config/PlatformHelper.android.d.ts +10 -0
  4. package/dist/native/config/PlatformHelper.android.d.ts.map +1 -1
  5. package/dist/native/config/PlatformHelper.android.js +7 -0
  6. package/dist/native/config/PlatformHelper.android.js.map +1 -1
  7. package/dist/native/config/PlatformHelper.d.ts +10 -0
  8. package/dist/native/config/PlatformHelper.d.ts.map +1 -1
  9. package/dist/native/config/PlatformHelper.ios.d.ts +10 -0
  10. package/dist/native/config/PlatformHelper.ios.d.ts.map +1 -1
  11. package/dist/native/config/PlatformHelper.ios.js +2 -0
  12. package/dist/native/config/PlatformHelper.ios.js.map +1 -1
  13. package/dist/native/config/PlatformHelper.js +2 -0
  14. package/dist/native/config/PlatformHelper.js.map +1 -1
  15. package/dist/native/config/PlatformHelper.web.d.ts +10 -0
  16. package/dist/native/config/PlatformHelper.web.d.ts.map +1 -1
  17. package/dist/native/config/PlatformHelper.web.js +2 -0
  18. package/dist/native/config/PlatformHelper.web.js.map +1 -1
  19. package/dist/recyclerview/RecyclerView.d.ts.map +1 -1
  20. package/dist/recyclerview/RecyclerView.js +25 -15
  21. package/dist/recyclerview/RecyclerView.js.map +1 -1
  22. package/dist/recyclerview/RecyclerViewManager.d.ts +2 -0
  23. package/dist/recyclerview/RecyclerViewManager.d.ts.map +1 -1
  24. package/dist/recyclerview/RecyclerViewManager.js +20 -15
  25. package/dist/recyclerview/RecyclerViewManager.js.map +1 -1
  26. package/dist/recyclerview/ViewHolder.d.ts +2 -0
  27. package/dist/recyclerview/ViewHolder.d.ts.map +1 -1
  28. package/dist/recyclerview/ViewHolder.js +8 -2
  29. package/dist/recyclerview/ViewHolder.js.map +1 -1
  30. package/dist/recyclerview/ViewHolderCollection.d.ts +4 -0
  31. package/dist/recyclerview/ViewHolderCollection.d.ts.map +1 -1
  32. package/dist/recyclerview/ViewHolderCollection.js +6 -3
  33. package/dist/recyclerview/ViewHolderCollection.js.map +1 -1
  34. package/dist/recyclerview/components/StickyHeaders.d.ts +3 -1
  35. package/dist/recyclerview/components/StickyHeaders.d.ts.map +1 -1
  36. package/dist/recyclerview/components/StickyHeaders.js +3 -2
  37. package/dist/recyclerview/components/StickyHeaders.js.map +1 -1
  38. package/dist/recyclerview/hooks/useBoundDetection.js +1 -1
  39. package/dist/recyclerview/hooks/useBoundDetection.js.map +1 -1
  40. package/dist/recyclerview/hooks/useRecyclerViewController.d.ts.map +1 -1
  41. package/dist/recyclerview/hooks/useRecyclerViewController.js +2 -3
  42. package/dist/recyclerview/hooks/useRecyclerViewController.js.map +1 -1
  43. package/dist/recyclerview/hooks/useSecondaryProps.d.ts +2 -2
  44. package/dist/recyclerview/hooks/useSecondaryProps.d.ts.map +1 -1
  45. package/dist/recyclerview/hooks/useSecondaryProps.js +36 -16
  46. package/dist/recyclerview/hooks/useSecondaryProps.js.map +1 -1
  47. package/dist/recyclerview/layout-managers/GridLayoutManager.d.ts +5 -0
  48. package/dist/recyclerview/layout-managers/GridLayoutManager.d.ts.map +1 -1
  49. package/dist/recyclerview/layout-managers/GridLayoutManager.js +12 -0
  50. package/dist/recyclerview/layout-managers/GridLayoutManager.js.map +1 -1
  51. package/dist/recyclerview/layout-managers/LayoutManager.d.ts +11 -0
  52. package/dist/recyclerview/layout-managers/LayoutManager.d.ts.map +1 -1
  53. package/dist/recyclerview/layout-managers/LayoutManager.js +13 -0
  54. package/dist/recyclerview/layout-managers/LayoutManager.js.map +1 -1
  55. package/dist/recyclerview/layout-managers/MasonryLayoutManager.d.ts.map +1 -1
  56. package/dist/recyclerview/layout-managers/MasonryLayoutManager.js.map +1 -1
  57. package/dist/recyclerview/utils/componentUtils.d.ts +12 -3
  58. package/dist/recyclerview/utils/componentUtils.d.ts.map +1 -1
  59. package/dist/recyclerview/utils/componentUtils.js +16 -3
  60. package/dist/recyclerview/utils/componentUtils.js.map +1 -1
  61. package/dist/recyclerview/utils/getInvertedTransformStyle.d.ts +10 -0
  62. package/dist/recyclerview/utils/getInvertedTransformStyle.d.ts.map +1 -0
  63. package/dist/recyclerview/utils/getInvertedTransformStyle.js +7 -0
  64. package/dist/recyclerview/utils/getInvertedTransformStyle.js.map +1 -0
  65. package/dist/recyclerview/utils/measureLayout.d.ts +9 -5
  66. package/dist/recyclerview/utils/measureLayout.d.ts.map +1 -1
  67. package/dist/recyclerview/utils/measureLayout.js +6 -5
  68. package/dist/recyclerview/utils/measureLayout.js.map +1 -1
  69. package/dist/recyclerview/utils/measureLayout.web.d.ts +6 -2
  70. package/dist/recyclerview/utils/measureLayout.web.d.ts.map +1 -1
  71. package/dist/recyclerview/utils/measureLayout.web.js +1 -3
  72. package/dist/recyclerview/utils/measureLayout.web.js.map +1 -1
  73. package/dist/tsconfig.tsbuildinfo +1 -1
  74. package/dist/utils/AverageWindow.d.ts.map +1 -1
  75. package/dist/utils/AverageWindow.js +2 -3
  76. package/dist/utils/AverageWindow.js.map +1 -1
  77. package/package.json +1 -1
  78. package/src/FlashListProps.ts +53 -3
  79. package/src/native/config/PlatformHelper.android.ts +7 -0
  80. package/src/native/config/PlatformHelper.ios.ts +2 -0
  81. package/src/native/config/PlatformHelper.ts +2 -0
  82. package/src/native/config/PlatformHelper.web.ts +2 -0
  83. package/src/recyclerview/RecyclerView.tsx +26 -11
  84. package/src/recyclerview/RecyclerViewManager.ts +21 -16
  85. package/src/recyclerview/ViewHolder.tsx +11 -1
  86. package/src/recyclerview/ViewHolderCollection.tsx +14 -3
  87. package/src/recyclerview/components/StickyHeaders.tsx +5 -0
  88. package/src/recyclerview/hooks/useBoundDetection.ts +1 -1
  89. package/src/recyclerview/hooks/useRecyclerViewController.tsx +2 -3
  90. package/src/recyclerview/hooks/useSecondaryProps.tsx +48 -18
  91. package/src/recyclerview/layout-managers/GridLayoutManager.ts +13 -0
  92. package/src/recyclerview/layout-managers/LayoutManager.ts +14 -0
  93. package/src/recyclerview/layout-managers/MasonryLayoutManager.ts +4 -0
  94. package/src/recyclerview/utils/componentUtils.ts +27 -5
  95. package/src/recyclerview/utils/getInvertedTransformStyle.ts +7 -0
  96. package/src/recyclerview/utils/measureLayout.ts +12 -6
  97. package/src/recyclerview/utils/measureLayout.web.ts +7 -4
  98. package/src/utils/AverageWindow.ts +4 -2
@@ -66,19 +66,23 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
66
66
  *
67
67
  * Note: Changing layout of the cell can conflict with the native layout operations. You may need to set `disableAutoLayout` to `true` to prevent this.
68
68
  */
69
- CellRendererComponent?: React.ComponentType<any> | undefined;
69
+ CellRendererComponent?: React.ComponentType<any> | React.ExoticComponent<any> | undefined;
70
70
  /**
71
71
  * Rendered in between each item, but not at the top or bottom. By default, `leadingItem` and `trailingItem` (if available) props are provided.
72
72
  */
73
- ItemSeparatorComponent?: React.ComponentType<any> | null | undefined;
73
+ ItemSeparatorComponent?: React.ComponentType<any> | React.ExoticComponent<any> | null | undefined;
74
74
  /**
75
75
  * Rendered when the list is empty. Can be a React Component (e.g. `SomeComponent`), or a React element (e.g. `<SomeComponent />`).
76
76
  */
77
- ListEmptyComponent?: React.ComponentType<any> | React.ReactElement | null | undefined;
77
+ ListEmptyComponent?: React.ComponentType<any> | React.ExoticComponent<any> | React.ReactElement | null | undefined;
78
+ /**
79
+ * Styling for internal View for `ListEmptyComponent`.
80
+ */
81
+ ListEmptyComponentStyle?: StyleProp<ViewStyle> | undefined;
78
82
  /**
79
83
  * Rendered at the bottom of all the items. Can be a React Component (e.g. `SomeComponent`), or a React element (e.g. `<SomeComponent />`).
80
84
  */
81
- ListFooterComponent?: React.ComponentType<any> | React.ReactElement | null | undefined;
85
+ ListFooterComponent?: React.ComponentType<any> | React.ExoticComponent<any> | React.ReactElement | null | undefined;
82
86
  /**
83
87
  * Styling for internal View for `ListFooterComponent`.
84
88
  */
@@ -86,7 +90,7 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
86
90
  /**
87
91
  * Rendered at the top of all the items. Can be a React Component (e.g. `SomeComponent`), or a React element (e.g. `<SomeComponent />`).
88
92
  */
89
- ListHeaderComponent?: React.ComponentType<any> | React.ReactElement | null | undefined;
93
+ ListHeaderComponent?: React.ComponentType<any> | React.ExoticComponent<any> | React.ReactElement | null | undefined;
90
94
  /**
91
95
  * Styling for internal View for `ListHeaderComponent`.
92
96
  */
@@ -94,7 +98,7 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
94
98
  /**
95
99
  * Rendered as the main scrollview.
96
100
  */
97
- renderScrollComponent?: React.ComponentType<ScrollViewProps> | React.FC<ScrollViewProps>;
101
+ renderScrollComponent?: React.ComponentType<ScrollViewProps> | React.ExoticComponent<ScrollViewProps> | React.FC<ScrollViewProps>;
98
102
  /**
99
103
  * Draw distance for advanced rendering (in dp/px)
100
104
  */
@@ -109,6 +113,13 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
109
113
  * If true, renders items next to each other horizontally instead of stacked vertically.
110
114
  */
111
115
  horizontal?: boolean | null | undefined;
116
+ /**
117
+ * Reverses the direction of scroll. Uses scale transforms of -1.
118
+ *
119
+ * Note: On Android, a rotate transform is used instead of scale for performance reasons.
120
+ * This causes the scrollbar to appear on the left side of the list.
121
+ */
122
+ inverted?: boolean | null | undefined;
112
123
  /**
113
124
  * Instead of starting at the top with the first item, start at initialScrollIndex.
114
125
  */
@@ -188,7 +199,23 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
188
199
  span?: number;
189
200
  }, item: TItem, index: number, maxColumns: number, extraData?: any) => void;
190
201
  /**
191
- * For debugging and exception use cases, internal props will be overriden with these values if used
202
+ * Allows overriding internal ScrollView props. Props provided here are
203
+ * spread onto the internal ScrollView after all other props, so they take
204
+ * highest priority.
205
+ *
206
+ * This can be useful for cases where you need to set a style on the
207
+ * ScrollView itself rather than the outer container. For example, to enable
208
+ * visible overflow you can combine this with the `style` prop:
209
+ *
210
+ * ```tsx
211
+ * <FlashList
212
+ * style={{ overflow: "visible" }}
213
+ * overrideProps={{ style: { overflow: "visible" } }}
214
+ * />
215
+ * ```
216
+ *
217
+ * Use with caution — overriding internal props may interfere with
218
+ * FlashList's layout and recycling behavior.
192
219
  */
193
220
  overrideProps?: OverrideProps;
194
221
  /**
@@ -246,6 +273,15 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
246
273
  * New arch only
247
274
  * Style for the RecyclerView's parent container.
248
275
  * Please avoid anything which can mess size of children in this view. For example, margin is okay but padding is not.
276
+ *
277
+ * Note: To enable `overflow: "visible"`, you must also set it on the
278
+ * internal ScrollView via `overrideProps`:
279
+ * ```tsx
280
+ * <FlashList
281
+ * style={{ overflow: "visible" }}
282
+ * overrideProps={{ style: { overflow: "visible" } }}
283
+ * />
284
+ * ```
249
285
  */
250
286
  style?: StyleProp<ViewStyle>;
251
287
  /**
@@ -307,7 +343,7 @@ export interface FlashListProps<TItem> extends Omit<ScrollViewProps, "maintainVi
307
343
  * Renders in front of the scroll view content but behind the sticky header itself.
308
344
  * Useful for creating visual separation or effects like backgrounds with blur.
309
345
  */
310
- backdropComponent?: React.ComponentType<any> | React.ReactElement | null | undefined;
346
+ backdropComponent?: React.ComponentType<any> | React.ExoticComponent<any> | React.ReactElement | null | undefined;
311
347
  /**
312
348
  * When a sticky header is displayed, the cell associated with it is hidden.
313
349
  * @default false
@@ -1 +1 @@
1
- {"version":3,"file":"FlashListProps.d.ts","sourceRoot":"","sources":["../src/FlashListProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlashListProps.d.ts","sourceRoot":"","sources":["../src/FlashListProps.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,16 @@ declare const PlatformConfig: {
3
3
  supportsOffsetCorrection: boolean;
4
4
  trackAverageRenderTimeForOffsetProjection: boolean;
5
5
  isRN083OrAbove: boolean;
6
+ invertedTransformStyle: {
7
+ readonly transform: readonly [{
8
+ readonly rotate: "180deg";
9
+ }];
10
+ };
11
+ invertedTransformStyleHorizontal: {
12
+ readonly transform: readonly [{
13
+ readonly rotate: "180deg";
14
+ }];
15
+ };
6
16
  };
7
17
  export { PlatformConfig };
8
18
  //# sourceMappingURL=PlatformHelper.android.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.android.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.android.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,cAAc;;;;;CAKnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.android.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.android.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;CAYnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -4,6 +4,13 @@ const PlatformConfig = {
4
4
  supportsOffsetCorrection: true,
5
5
  trackAverageRenderTimeForOffsetProjection: true,
6
6
  isRN083OrAbove: isRN083OrAbove(),
7
+ // Using rotate instead of scaleY on Android to avoid performance issues.
8
+ // Caveat: this causes the scrollbar to appear on the left side.
9
+ // Issue: https://github.com/Shopify/flash-list/issues/751
10
+ invertedTransformStyle: { transform: [{ rotate: "180deg" }] },
11
+ invertedTransformStyleHorizontal: {
12
+ transform: [{ rotate: "180deg" }],
13
+ },
7
14
  };
8
15
  export { PlatformConfig };
9
16
  //# sourceMappingURL=PlatformHelper.android.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.android.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,IAAI;IAC9B,yCAAyC,EAAE,IAAI;IAC/C,cAAc,EAAE,cAAc,EAAE;CACjC,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.android.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,IAAI;IAC9B,yCAAyC,EAAE,IAAI;IAC/C,cAAc,EAAE,cAAc,EAAE;IAChC,yEAAyE;IACzE,gEAAgE;IAChE,0DAA0D;IAC1D,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAW;IACtE,gCAAgC,EAAE;QAChC,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;KACzB;CACX,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -3,6 +3,16 @@ declare const PlatformConfig: {
3
3
  supportsOffsetCorrection: boolean;
4
4
  trackAverageRenderTimeForOffsetProjection: boolean;
5
5
  isRN083OrAbove: boolean;
6
+ invertedTransformStyle: {
7
+ readonly transform: readonly [{
8
+ readonly scaleY: -1;
9
+ }];
10
+ };
11
+ invertedTransformStyleHorizontal: {
12
+ readonly transform: readonly [{
13
+ readonly scaleX: -1;
14
+ }];
15
+ };
6
16
  };
7
17
  export { PlatformConfig };
8
18
  //# sourceMappingURL=PlatformHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc;;;;;CAKnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;CAOnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -3,6 +3,16 @@ declare const PlatformConfig: {
3
3
  supportsOffsetCorrection: boolean;
4
4
  trackAverageRenderTimeForOffsetProjection: boolean;
5
5
  isRN083OrAbove: boolean;
6
+ invertedTransformStyle: {
7
+ readonly transform: readonly [{
8
+ readonly scaleY: -1;
9
+ }];
10
+ };
11
+ invertedTransformStyleHorizontal: {
12
+ readonly transform: readonly [{
13
+ readonly scaleX: -1;
14
+ }];
15
+ };
6
16
  };
7
17
  export { PlatformConfig };
8
18
  //# sourceMappingURL=PlatformHelper.ios.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.ios.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ios.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,cAAc;;;;;CAKnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.ios.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ios.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;CAOnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -4,6 +4,8 @@ const PlatformConfig = {
4
4
  supportsOffsetCorrection: true,
5
5
  trackAverageRenderTimeForOffsetProjection: false,
6
6
  isRN083OrAbove: isRN083OrAbove(),
7
+ invertedTransformStyle: { transform: [{ scaleY: -1 }] },
8
+ invertedTransformStyleHorizontal: { transform: [{ scaleX: -1 }] },
7
9
  };
8
10
  export { PlatformConfig };
9
11
  //# sourceMappingURL=PlatformHelper.ios.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.ios.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,IAAI;IAC9B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,cAAc,EAAE;CACjC,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.ios.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,IAAI;IAC9B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,cAAc,EAAE;IAChC,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;IAChE,gCAAgC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;CAC3E,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -3,6 +3,8 @@ const PlatformConfig = {
3
3
  supportsOffsetCorrection: false,
4
4
  trackAverageRenderTimeForOffsetProjection: false,
5
5
  isRN083OrAbove: true,
6
+ invertedTransformStyle: { transform: [{ scaleY: -1 }] },
7
+ invertedTransformStyleHorizontal: { transform: [{ scaleX: -1 }] },
6
8
  };
7
9
  export { PlatformConfig };
8
10
  //# sourceMappingURL=PlatformHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,KAAK;IAC/B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,IAAI;CACrB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,KAAK;IAC/B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,IAAI;IACpB,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;IAChE,gCAAgC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;CAC3E,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -3,6 +3,16 @@ declare const PlatformConfig: {
3
3
  supportsOffsetCorrection: boolean;
4
4
  trackAverageRenderTimeForOffsetProjection: boolean;
5
5
  isRN083OrAbove: boolean;
6
+ invertedTransformStyle: {
7
+ readonly transform: readonly [{
8
+ readonly scaleY: -1;
9
+ }];
10
+ };
11
+ invertedTransformStyleHorizontal: {
12
+ readonly transform: readonly [{
13
+ readonly scaleX: -1;
14
+ }];
15
+ };
6
16
  };
7
17
  export { PlatformConfig };
8
18
  //# sourceMappingURL=PlatformHelper.web.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.web.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.web.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc;;;;;CAKnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.web.d.ts","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.web.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;CAOnB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -3,6 +3,8 @@ const PlatformConfig = {
3
3
  supportsOffsetCorrection: false,
4
4
  trackAverageRenderTimeForOffsetProjection: false,
5
5
  isRN083OrAbove: true,
6
+ invertedTransformStyle: { transform: [{ scaleY: -1 }] },
7
+ invertedTransformStyleHorizontal: { transform: [{ scaleX: -1 }] },
6
8
  };
7
9
  export { PlatformConfig };
8
10
  //# sourceMappingURL=PlatformHelper.web.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHelper.web.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.web.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,KAAK;IAC/B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,IAAI;CACrB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"PlatformHelper.web.js","sourceRoot":"","sources":["../../../src/native/config/PlatformHelper.web.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,mBAAmB,EAAE,GAAG;IACxB,wBAAwB,EAAE,KAAK;IAC/B,yCAAyC,EAAE,KAAK;IAChD,cAAc,EAAE,IAAI;IACpB,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;IAChE,gCAAgC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAW;CAC3E,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecyclerView.d.ts","sourceRoot":"","sources":["../../src/recyclerview/RecyclerView.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KASN,MAAM,OAAO,CAAC;AAQf,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAkB/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAulBxD,KAAK,gBAAgB,GAAG,CAAC,CAAC,EACxB,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,KAC/D,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AAGvB,QAAA,MAAM,YAAY,EAEb,gBAAgB,CAAC;AAEtB,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"RecyclerView.d.ts","sourceRoot":"","sources":["../../src/recyclerview/RecyclerView.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KASN,MAAM,OAAO,CAAC;AAQf,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAkB/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAsmBxD,KAAK,gBAAgB,GAAG,CAAC,CAAC,EACxB,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;CAAE,KAC/D,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AAGvB,QAAA,MAAM,YAAY,EAEb,gBAAgB,CAAC;AAEtB,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -16,6 +16,7 @@ import { CompatView } from "./components/CompatView";
16
16
  import { useBoundDetection } from "./hooks/useBoundDetection";
17
17
  import { adjustOffsetForRTL } from "./utils/adjustOffsetForRTL";
18
18
  import { useSecondaryProps } from "./hooks/useSecondaryProps";
19
+ import { getInvertedTransformStyle } from "./utils/getInvertedTransformStyle";
19
20
  import { StickyHeaders } from "./components/StickyHeaders";
20
21
  import { ScrollAnchor } from "./components/ScrollAnchor";
21
22
  import { useRecyclerViewController } from "./hooks/useRecyclerViewController";
@@ -27,13 +28,17 @@ import { RenderTimeTracker } from "./helpers/RenderTimeTracker";
27
28
  const RecyclerViewComponent = (props, ref) => {
28
29
  var _a, _b, _c, _d;
29
30
  // Destructure props and initialize refs
30
- const { horizontal, renderItem, data, extraData, onLoad, CellRendererComponent, overrideProps, refreshing, onRefresh, progressViewOffset, ListEmptyComponent, ListHeaderComponent, ListHeaderComponentStyle, ListFooterComponent, ListFooterComponentStyle, ItemSeparatorComponent, renderScrollComponent, style, stickyHeaderIndices, maintainVisibleContentPosition, onCommitLayoutEffect, onChangeStickyIndex, stickyHeaderConfig, ...rest } = props;
31
+ const { horizontal, renderItem, data, extraData, onLoad, CellRendererComponent, overrideProps, refreshing, onRefresh, progressViewOffset, ListEmptyComponent, ListHeaderComponent, ListHeaderComponentStyle, ListFooterComponent, ListFooterComponentStyle, ItemSeparatorComponent, renderScrollComponent, style, stickyHeaderIndices, maintainVisibleContentPosition, onCommitLayoutEffect, onChangeStickyIndex, stickyHeaderConfig, inverted, ...rest } = props;
31
32
  const [renderTimeTracker] = useState(() => new RenderTimeTracker());
32
33
  renderTimeTracker.startTracking();
33
34
  // Sticky header config
34
35
  const stickyHeaderOffset = (_a = stickyHeaderConfig === null || stickyHeaderConfig === void 0 ? void 0 : stickyHeaderConfig.offset) !== null && _a !== void 0 ? _a : 0;
35
36
  const stickyHeaderUseNativeDriver = (_b = stickyHeaderConfig === null || stickyHeaderConfig === void 0 ? void 0 : stickyHeaderConfig.useNativeDriver) !== null && _b !== void 0 ? _b : true;
36
37
  const stickyHeaderHideRelatedCell = (_c = stickyHeaderConfig === null || stickyHeaderConfig === void 0 ? void 0 : stickyHeaderConfig.hideRelatedCell) !== null && _c !== void 0 ? _c : false;
38
+ // Compute the inverted transform style based on platform and orientation
39
+ const invertedTransformStyle = inverted
40
+ ? getInvertedTransformStyle(horizontal)
41
+ : undefined;
37
42
  // Core refs for managing scroll view, internal view, and child container
38
43
  const scrollViewRef = useRef(null);
39
44
  const internalViewRef = useRef(null);
@@ -67,22 +72,21 @@ const RecyclerViewComponent = (props, ref) => {
67
72
  */
68
73
  useLayoutEffect(() => {
69
74
  if (internalViewRef.current && firstChildViewRef.current) {
70
- // Measure the outer and inner container layouts
71
- const outerViewLayout = measureParentSize(internalViewRef.current);
75
+ // Measure the outer container size and inner container layout
76
+ const outerViewSize = measureParentSize(internalViewRef.current);
72
77
  const firstChildViewLayout = measureFirstChildLayout(firstChildViewRef.current, internalViewRef.current);
73
- containerViewSizeRef.current = outerViewLayout;
74
- // Calculate offset of first item
78
+ containerViewSizeRef.current = outerViewSize;
79
+ // firstChildViewLayout is already relative to the outer container,
80
+ // so its x/y directly gives the first item offset.
75
81
  const firstItemOffset = horizontal
76
- ? firstChildViewLayout.x - outerViewLayout.x
77
- : firstChildViewLayout.y - outerViewLayout.y;
82
+ ? firstChildViewLayout.x
83
+ : firstChildViewLayout.y;
78
84
  // Update the RecyclerView manager with window dimensions
79
85
  recyclerViewManager.updateLayoutParams({
80
- width: horizontal
81
- ? outerViewLayout.width
82
- : firstChildViewLayout.width,
86
+ width: horizontal ? outerViewSize.width : firstChildViewLayout.width,
83
87
  height: horizontal
84
88
  ? firstChildViewLayout.height
85
- : outerViewLayout.height,
89
+ : outerViewSize.height,
86
90
  }, isHorizontalRTL && recyclerViewManager.hasLayout()
87
91
  ? firstItemOffset -
88
92
  recyclerViewManager.getChildContainerDimensions().width
@@ -173,7 +177,11 @@ const RecyclerViewComponent = (props, ref) => {
173
177
  (_a = stickyHeaderRef.current) === null || _a === void 0 ? void 0 : _a.reportScrollEvent(event.nativeEvent);
174
178
  checkBounds();
175
179
  // Record interaction and compute item visibility
176
- recyclerViewManager.recordInteraction();
180
+ // Skip recording interaction during programmatic initial scroll
181
+ // to respect waitForInteraction in viewability config
182
+ if (recyclerViewManager.isInitialScrollComplete) {
183
+ recyclerViewManager.recordInteraction();
184
+ }
177
185
  recyclerViewManager.computeItemViewability();
178
186
  // Call user-provided onScroll handler
179
187
  (_c = (_b = recyclerViewManager.props).onScroll) === null || _c === void 0 ? void 0 : _c.call(_b, event);
@@ -264,7 +272,7 @@ const RecyclerViewComponent = (props, ref) => {
264
272
  if (horizontal) {
265
273
  throw new Error(ErrorMessages.stickyHeadersNotSupportedForHorizontal);
266
274
  }
267
- return (React.createElement(StickyHeaders, { stickyHeaderIndices: stickyHeaderIndices, stickyHeaderOffset: stickyHeaderOffset, data: data, renderItem: renderItem, scrollY: scrollY, stickyHeaderRef: stickyHeaderRef, recyclerViewManager: recyclerViewManager, extraData: extraData, onChangeStickyIndex: (newStickyHeaderIndex) => {
275
+ return (React.createElement(StickyHeaders, { stickyHeaderIndices: stickyHeaderIndices, stickyHeaderOffset: stickyHeaderOffset, data: data, renderItem: renderItem, scrollY: scrollY, stickyHeaderRef: stickyHeaderRef, recyclerViewManager: recyclerViewManager, extraData: extraData, inverted: inverted, onChangeStickyIndex: (newStickyHeaderIndex) => {
268
276
  if (stickyHeaderHideRelatedCell) {
269
277
  setCurrentStickyIndex(newStickyHeaderIndex);
270
278
  }
@@ -284,6 +292,7 @@ const RecyclerViewComponent = (props, ref) => {
284
292
  currentStickyIndex,
285
293
  onChangeStickyIndex,
286
294
  stickyHeaderHideRelatedCell,
295
+ inverted,
287
296
  ]);
288
297
  // Set up scroll event handling with animation support for sticky headers
289
298
  const animatedEvent = useMemo(() => {
@@ -330,6 +339,7 @@ const RecyclerViewComponent = (props, ref) => {
330
339
  overflow: "hidden",
331
340
  },
332
341
  style,
342
+ invertedTransformStyle,
333
343
  ], ref: internalViewRef, collapsable: false, onLayout: (event) => {
334
344
  var _a, _b, _c, _d;
335
345
  if (areDimensionsNotEqual(event.nativeEvent.layout.width, (_b = (_a = containerViewSizeRef.current) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 0) ||
@@ -371,9 +381,9 @@ const RecyclerViewComponent = (props, ref) => {
371
381
  checkBounds();
372
382
  recyclerViewManager.computeItemViewability();
373
383
  recyclerViewManager.animationOptimizationsEnabled = false;
374
- }, CellRendererComponent: CellRendererComponent, ItemSeparatorComponent: ItemSeparatorComponent, getChildContainerLayout: () => recyclerViewManager.hasLayout()
384
+ }, CellRendererComponent: CellRendererComponent, ItemSeparatorComponent: ItemSeparatorComponent, isInLastRow: (index) => recyclerViewManager.isInLastRow(index), getChildContainerLayout: () => recyclerViewManager.hasLayout()
375
385
  ? recyclerViewManager.getChildContainerDimensions()
376
- : undefined, currentStickyIndex: currentStickyIndex, hideStickyHeaderRelatedCell: stickyHeaderHideRelatedCell }),
386
+ : undefined, currentStickyIndex: currentStickyIndex, hideStickyHeaderRelatedCell: stickyHeaderHideRelatedCell, inverted: inverted }),
377
387
  renderEmpty,
378
388
  renderFooter),
379
389
  stickyHeaderIndices && stickyHeaderIndices.length > 0
@@ -1 +1 @@
1
- {"version":3,"file":"RecyclerView.js","sourceRoot":"","sources":["../../src/recyclerview/RecyclerView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecyclerView.js","sourceRoot":"","sources":["../../src/recyclerview/RecyclerView.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,EAEZ,WAAW,EACX,eAAe,EACf,OAAO,EACP,MAAM,EACN,UAAU,EACV,QAAQ,EACR,KAAK,GACN,MAAM,OAAO,CAAC;AACf,OAAO,EACL,QAAQ,EACR,WAAW,GAGZ,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACL,oBAAoB,GAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAmB,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAmB,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;;GAGG;AACH,MAAM,qBAAqB,GAAG,CAC5B,KAA2B,EAC3B,GAA+B,EAC/B,EAAE;;IACF,wCAAwC;IACxC,MAAM,EACJ,UAAU,EACV,UAAU,EACV,IAAI,EACJ,SAAS,EACT,MAAM,EACN,qBAAqB,EACrB,aAAa,EACb,UAAU,EACV,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,QAAQ,EACR,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAEpE,iBAAiB,CAAC,aAAa,EAAE,CAAC;IAElC,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,MAAM,mCAAI,CAAC,CAAC;IAC3D,MAAM,2BAA2B,GAC/B,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,eAAe,mCAAI,IAAI,CAAC;IAC9C,MAAM,2BAA2B,GAC/B,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,eAAe,mCAAI,KAAK,CAAC;IAE/C,yEAAyE;IACzE,MAAM,sBAAsB,GAAG,QAAQ;QACrC,CAAC,CAAC,yBAAyB,CAAC,UAAU,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,yEAAyE;IACzE,MAAM,aAAa,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,MAAM,CAAa,IAAI,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAAG,MAAM,CAAa,IAAI,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,MAAM,CAA0B,SAAS,CAAC,CAAC;IACxE,MAAM,eAAe,GAAG,MAAM,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC;IAE/D,wBAAwB;IACxB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAEtD,+CAA+C;IAC/C,MAAM,eAAe,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAEtD,+CAA+C;IAC/C,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjE,8CAA8C;IAC9C,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,IAAI,GAAG,EAAwC,EACrD,EAAE,CACH,CAAC;IAEF,qEAAqE;IACrE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAC5C,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,EACJ,qBAAqB,EACrB,2CAA2C,EAC3C,uBAAuB,EACvB,cAAc,GACf,GAAG,yBAAyB,CAC3B,mBAAmB,EACnB,GAAG,EACH,aAAa,EACb,eAAe,CAChB,CAAC;IAEF,wCAAwC;IACxC,MAAM,uBAAuB,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IAEtE,8BAA8B;IAC9B,aAAa,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAE3C,oDAAoD;IACpD,MAAM,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IAE9E,MAAM,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,UAAU,CAAC;IAExD;;;OAGG;IACH,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,eAAe,CAAC,OAAO,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACzD,8DAA8D;YAC9D,MAAM,aAAa,GAAG,iBAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,oBAAoB,GAAG,uBAAuB,CAClD,iBAAiB,CAAC,OAAO,EACzB,eAAe,CAAC,OAAO,CACxB,CAAC;YAEF,oBAAoB,CAAC,OAAO,GAAG,aAAa,CAAC;YAE7C,mEAAmE;YACnE,mDAAmD;YACnD,MAAM,eAAe,GAAG,UAAU;gBAChC,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACxB,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAE3B,yDAAyD;YACzD,mBAAmB,CAAC,kBAAkB,CACpC;gBACE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK;gBACpE,MAAM,EAAE,UAAU;oBAChB,CAAC,CAAC,oBAAoB,CAAC,MAAM;oBAC7B,CAAC,CAAC,aAAa,CAAC,MAAM;aACzB,EACD,eAAe,IAAI,mBAAmB,CAAC,SAAS,EAAE;gBAChD,CAAC,CAAC,eAAe;oBACb,mBAAmB,CAAC,2BAA2B,EAAE,CAAC,KAAK;gBAC3D,CAAC,CAAC,eAAe,CACpB,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;;OAGG;IACH,uDAAuD;IACvD,eAAe,CAAC,GAAG,EAAE;;QACnB,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE;YAClE,MAAM,MAAM,GAAG,iBAAiB,CAC9B,aAAa,CAAC,OAAQ,EACtB,mBAAmB,CAAC,YAAY,CAAC,KAAK,CAAC,CACxC,CAAC;YAEF,oCAAoC;YACpC,6DAA6D;YAC7D,OAAO;YACP,6CAA6C;YAC7C,kCAAkC;YAClC,MAAM;YACN,iBAAiB;YACjB,wBAAwB;YACxB,aAAa;YACb,qBAAqB;YACrB,0BAA0B;YAC1B,OAAO;YACP,IAAI;YACJ,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,MAAM,kCAAkC,GACtC,iBAAiB,CAAC,kCAAkC,EAAE,CAAC;QAEzD,IAAI,kCAAkC,EAAE,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC;QAChE,CAAC;QAED,IACE,mBAAmB,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,mCAAI,CAAC,CAAC;YACvE,CAAC,kCAAkC,EACnC,CAAC;YACD,sDAAsD;YACtD,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,MAAA,uBAAuB,CAAC,OAAO,0CAAE,YAAY,EAAE,CAAC;YAChD,qBAAqB,EAAE,CAAC;QAC1B,CAAC;QAED,IACE,UAAU;YACV,mBAAmB,CAAC,SAAS,EAAE;YAC/B,mBAAmB,CAAC,aAAa,EAAE,CAAC,MAAM,GAAG,CAAC,EAC9C,CAAC;YACD,6GAA6G;YAC7G,kFAAkF;YAClF,8DAA8D;YAC9D,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,0BAA0B,CAAC,cAAc,CAAC,CAAC;QACxE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,KAA8C,EAAE,EAAE;;QACjD,IAAI,mBAAmB,CAAC,kBAAkB,EAAE,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,IAAI,YAAY,GAAG,UAAU;YAC3B,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YACnC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;QAEtC,gDAAgD;QAChD,IAAI,eAAe,EAAE,CAAC;YACpB,YAAY,GAAG,kBAAkB,CAC/B,YAAY,EACZ,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,EACnC,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAC1C,CAAC;QACJ,CAAC;QAED,eAAe,CAAC,eAAe,CAC7B,YAAY,EACZ,mBAAmB,CAAC,2BAA2B,EAAE,EACjD,OAAO,CAAC,UAAU,CAAC,EACnB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE;YAC1B,IAAI,mBAAmB,CAAC,kBAAkB,EAAE,CAAC;gBAC3C,OAAO;YACT,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,2CAA2C,EAAE,CAAC;gBAC9C,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,CAAC;oBACnD,OAAO;gBACT,CAAC;gBACD,mBAAmB,CAAC,oBAAoB,EAAE,CAAC;YAC7C,CAAC;YACD,yDAAyD;YACzD,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACnE,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CACF,CAAC;QAEF,yCAAyC;QACzC,MAAA,eAAe,CAAC,OAAO,0CAAE,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9D,WAAW,EAAE,CAAC;QAEd,iDAAiD;QACjD,gEAAgE;QAChE,sDAAsD;QACtD,IAAI,mBAAmB,CAAC,uBAAuB,EAAE,CAAC;YAChD,mBAAmB,CAAC,iBAAiB,EAAE,CAAC;QAC1C,CAAC;QACD,mBAAmB,CAAC,sBAAsB,EAAE,CAAC;QAE7C,sCAAsC;QACtC,MAAA,MAAA,mBAAmB,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,CAAC,CAAC;IAC9C,CAAC,EACD;QACE,WAAW;QACX,2CAA2C;QAC3C,UAAU;QACV,eAAe;QACf,mBAAmB;QACnB,eAAe;KAChB,CACF,CAAC;IAEF,MAAM,yBAAyB,GAAG,sBAAsB,EAAE,CAAC;IAC3D,MAAM,cAAc,GAAG,KAAK,EAAE,CAAC;IAE/B,sCAAsC;IACtC,MAAM,mBAAmB,GAA2B,OAAO,CAAC,GAAG,EAAE;QAC/D,OAAO;YACL,MAAM,EAAE,GAAG,EAAE;gBACX,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YACtC,CAAC;YACD,MAAM,EAAE,GAAG,EAAE;gBACX,IAAI,mBAAmB,CAAC,UAAU,EAAE,CAAC;oBACnC,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO,cAAc,CAAC;YACxB,CAAC;YACD,YAAY,EAAE,GAAG,EAAE;;gBACjB,OAAO,MAAA,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,MAAM,EAAE,mCAAI,IAAI,CAAC;YACrD,CAAC;YACD,sBAAsB,EAAE,GAAG,EAAE;;gBAC3B,OAAO,MAAA,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,gBAAgB,EAAE,mCAAI,IAAI,CAAC;YAC/D,CAAC;YACD,gBAAgB,EAAE,GAAG,EAAE;gBACrB,OAAO,aAAa,CAAC,OAAO,CAAC;YAC/B,CAAC;YACD,wBAAwB,EAAE,CAAC,EAAU,EAAE,EAAE;gBACvC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC;YACD,0BAA0B,EAAE,CAAC,EAAU,EAAE,EAAE;gBACzC,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC5B,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC3B,mBAAmB,CAAC,MAAM,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC,EAAE;QACD,cAAc;QACd,yBAAyB;QACzB,eAAe;QACf,mBAAmB,CAAC,UAAU;QAC9B,eAAe;KAChB,CAAC,CAAC;IAEH;;OAEG;IACH,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,KAAa,EAAE,IAAiB,EAAE,EAAE;;QACnC,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAA,MAAM,CAAC,QAAQ,mCAAI,QAAQ,CAAC,EACnD,MAAA,MAAM,CAAC,QAAQ,mCAAI,CAAC,CACrB,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAA,MAAM,CAAC,SAAS,mCAAI,QAAQ,CAAC,EACrD,MAAA,MAAM,CAAC,SAAS,mCAAI,CAAC,CACtB,CAAC;QACF,IACE,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC;YACxC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAC1C,CAAC;YACD,eAAe;YACf,oBAAoB;YACpB,WAAW;YACX,WAAW;YACX,gBAAgB;YAChB,YAAY;YACZ,gBAAgB;YAChB,KAAK;YACL,iDAAiD;YACjD,mBAAmB,CAAC,MAAM,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC,EACD,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAC3C,CAAC;IAEF,qCAAqC;IACrC,MAAM,EACJ,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,0BAA0B,GAC3B,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAE7B,IACE,CAAC,mBAAmB,CAAC,wBAAwB,EAAE;QAC/C,mBAAmB,CAAC,aAAa,EAAE,GAAG,CAAC,EACvC,CAAC;QACD,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACtE,CAAC;IAED,sCAAsC;IACtC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IACE,IAAI;YACJ,IAAI,CAAC,MAAM,GAAG,CAAC;YACf,mBAAmB;YACnB,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAC9B,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,sCAAsC,CAAC,CAAC;YACxE,CAAC;YAED,OAAO,CACL,oBAAC,aAAa,IACZ,mBAAmB,EAAE,mBAAmB,EACxC,kBAAkB,EAAE,kBAAkB,EACtC,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,eAAe,EAChC,mBAAmB,EAAE,mBAAmB,EACxC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,CAAC,oBAAoB,EAAE,EAAE;oBAC5C,IAAI,2BAA2B,EAAE,CAAC;wBAChC,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;oBAC9C,CAAC;oBACD,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAG,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;gBAClE,CAAC,GACD,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE;QACD,IAAI;QACJ,mBAAmB;QACnB,kBAAkB;QAClB,UAAU;QACV,OAAO;QACP,UAAU;QACV,mBAAmB;QACnB,SAAS;QACT,kBAAkB;QAClB,mBAAmB;QACnB,2BAA2B;QAC3B,QAAQ;KACT,CAAC,CAAC;IAEH,yEAAyE;IACzE,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,QAAQ,CAAC,KAAK,CACnB,CAAC,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EACpD;gBACE,eAAe,EAAE,2BAA2B;gBAC5C,QAAQ,EAAE,eAAe;aAC1B,CACF,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CAAC;IACzB,CAAC,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,2BAA2B,CAAC,CAAC,CAAC;IAE3E,MAAM,oCAAoC,GACxC,mBAAmB,CAAC,oCAAoC,EAAE,CAAC;IAE7D,MAAM,sCAAsC,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1D,IAAI,oCAAoC,EAAE,CAAC;YACzC,OAAO;gBACL,GAAG,8BAA8B;gBACjC,kBAAkB,EAAE,CAAC;aACtB,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,8BAA8B,EAAE,oCAAoC,CAAC,CAAC,CAAC;IAE3E,MAAM,sBAAsB,GAC1B,mBAAmB,CAAC,aAAa,EAAE,GAAG,CAAC;QACvC,CAAC,MAAA,8BAA8B,aAA9B,8BAA8B,uBAA9B,8BAA8B,CAAE,wBAAwB,mCAAI,KAAK,CAAC,CAAC;IAEtE,yCAAyC;IACzC,MAAM,wBAAwB,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5C,OAAO,CACL,oBAAC,UAAU,IACT,KAAK,EAAE;gBACL,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;gBACtD,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAClC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;aAClC,EACD,GAAG,EAAE,iBAAiB,GACtB,CACH,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAErC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,oCAAoC,EAAE,CAAC;YACzC,OAAO,CACL,oBAAC,YAAY,IACX,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,EAC/B,eAAe,EAAE,eAAe,GAChC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,UAAU,EAAE,oCAAoC,CAAC,CAAC,CAAC;IAEvD,+DAA+D;IAE/D,yCAAyC;IACzC,OAAO,CACL,oBAAC,2BAA2B,IAAC,KAAK,EAAE,mBAAmB;QACrD,oBAAC,UAAU,IACT,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAChC,QAAQ,EAAE,QAAQ;iBACnB;gBACD,KAAK;gBACL,sBAAsB;aACvB,EACD,GAAG,EAAE,eAAe,EACpB,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;;gBAClB,IACE,qBAAqB,CACnB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAC9B,MAAA,MAAA,oBAAoB,CAAC,OAAO,0CAAE,KAAK,mCAAI,CAAC,CACzC;oBACD,qBAAqB,CACnB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAC/B,MAAA,MAAA,oBAAoB,CAAC,OAAO,0CAAE,MAAM,mCAAI,CAAC,CAC1C,EACD,CAAC;oBACD,eAAe;oBACf,gBAAgB;oBAEhB,yCAAyC;oBACzC,6BAA6B;oBAC7B,KAAK;oBACL,mBAAmB,CAAC,MAAM,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,oBAAC,gBAAgB,OACX,IAAI,EACR,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,aAAa,EACvB,8BAA8B,EAC5B,sCAAsC,EAExC,cAAc,EAAE,cAAc,KAC1B,aAAa;gBAGhB,YAAY;gBACZ,eAAe,IAAI,wBAAwB;gBAC3C,YAAY;gBACZ,CAAC,eAAe,IAAI,wBAAwB;gBAE7C,oBAAC,oBAAoB,IACnB,uBAAuB,EAAE,uBAAuB,EAChD,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,mBAAmB,CAAC,cAAc,EAAE,EACjD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,EAC1D,mBAAmB,EAAE,GAAG,EAAE;wBACxB,IAAI,CAAC,sBAAsB,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC;4BAChE,OAAO,CAAC,CAAC;wBACX,CAAC;wBAED,MAAM,UAAU,GAAG,UAAU;4BAC3B,CAAC,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC,KAAK;4BAC3C,CAAC,CAAC,mBAAmB,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;wBAC/C,MAAM,kBAAkB,GAAG,UAAU;4BACnC,CAAC,CAAC,mBAAmB,CAAC,2BAA2B,EAAE,CAAC,KAAK;4BACzD,CAAC,CAAC,mBAAmB,CAAC,2BAA2B,EAAE,CAAC,MAAM,CAAC;wBAE7D,OAAO,IAAI,CAAC,GAAG,CACb,CAAC,EACD,UAAU;4BACR,kBAAkB;4BAClB,mBAAmB,CAAC,eAAe,CACtC,CAAC;oBACJ,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,gBAAgB,EAC/B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,oBAAoB,EAAE,GAAG,EAAE;wBACzB,uBAAuB,EAAE,CAAC;wBAC1B,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,0BAA0B,CACnD,cAAc,CACf,CAAC;wBACF,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,EAAI,CAAC;oBAC3B,CAAC,EACD,cAAc,EAAE,GAAG,EAAE;wBACnB,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;wBACvC,mBAAmB,CAAC,uBAAuB,CACzC,iBAAiB,CAAC,oBAAoB,EAAE,CACzC,CAAC;wBACF,uBAAuB,EAAE,CAAC;wBAC1B,WAAW,EAAE,CAAC;wBACd,mBAAmB,CAAC,sBAAsB,EAAE,CAAC;wBAC7C,mBAAmB,CAAC,6BAA6B,GAAG,KAAK,CAAC;oBAC5D,CAAC,EACD,qBAAqB,EAAE,qBAAqB,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,WAAW,CAAC,KAAK,CAAC,EAC9D,uBAAuB,EAAE,GAAG,EAAE,CAC5B,mBAAmB,CAAC,SAAS,EAAE;wBAC7B,CAAC,CAAC,mBAAmB,CAAC,2BAA2B,EAAE;wBACnD,CAAC,CAAC,SAAS,EAEf,kBAAkB,EAAE,kBAAkB,EACtC,2BAA2B,EAAE,2BAA2B,EACxD,QAAQ,EAAE,QAAQ,GAClB;gBACD,WAAW;gBACX,YAAY,CACI;YAClB,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC;gBACpD,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,IAAI;YACP,aAAa,CACH,CACe,CAC/B,CAAC;AACJ,CAAC,CAAC;AAEF,0CAA0C;AAC1C,qBAAqB,CAAC,WAAW,GAAG,WAAW,CAAC;AAOhD,0DAA0D;AAC1D,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,UAAU,CAAC,qBAAqB,CAAC,CACd,CAAC;AAEtB,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -18,6 +18,7 @@ export declare class RecyclerViewManager<T> {
18
18
  firstItemOffset: number;
19
19
  ignoreScrollEvents: boolean;
20
20
  isFirstPaintOnUiComplete: boolean;
21
+ isInitialScrollComplete: boolean;
21
22
  get animationOptimizationsEnabled(): boolean;
22
23
  set animationOptimizationsEnabled(value: boolean);
23
24
  get isOffsetProjectionEnabled(): boolean;
@@ -38,6 +39,7 @@ export declare class RecyclerViewManager<T> {
38
39
  getIsFirstLayoutComplete(): boolean;
39
40
  getLayout(index: number): import("./layout-managers/LayoutManager").RVLayout;
40
41
  tryGetLayout(index: number): import("./layout-managers/LayoutManager").RVLayout | undefined;
42
+ isInLastRow(index: number): boolean;
41
43
  getChildContainerDimensions(): RVDimension;
42
44
  getRenderStack(): Map<string, {
43
45
  itemType: string;
@@ -1 +1 @@
1
- {"version":3,"file":"RecyclerViewManager.d.ts","sourceRoot":"","sources":["../../src/recyclerview/RecyclerViewManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAEL,WAAW,EACX,YAAY,EAGb,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAGL,QAAQ,EACT,MAAM,iCAAiC,CAAC;AAGzC,qBAAa,mBAAmB,CAAC,CAAC;IAChC,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,qBAAqB,CAA0B;IACvD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,aAAa,CAAC,CAAkB;IAExC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,sBAAsB,CAAwB;IACtD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,8BAA8B,CAAS;IAExC,eAAe,SAAK;IACpB,kBAAkB,UAAS;IAC3B,wBAAwB,UAAS;IAExC,IAAW,6BAA6B,IAIQ,OAAO,CAFtD;IAED,IAAW,6BAA6B,CAAC,KAAK,EAAE,OAAO,EAGtD;IAED,IAAW,yBAAyB,YAEnC;IAED,IAAW,UAAU,YAEpB;IAED,IAAW,UAAU,WAEpB;gBAEW,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAcvC,OAAO,CAAC,iBAAiB,CAOvB;IAEF,IAAI,KAAK,yBAER;IAED,0BAA0B,CAAC,KAAK,EAAE,OAAO;IAIzC,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IASvC;;;;OAIG;IACH,kBAAkB,CAChB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,QAAQ,GAClB,kBAAkB,GAAG,SAAS;IAgBjC,uBAAuB,CAAC,IAAI,EAAE,MAAM;IAIpC,wBAAwB;IAIxB,SAAS,CAAC,KAAK,EAAE,MAAM;IAOvB,YAAY,CAAC,KAAK,EAAE,MAAM;IAY1B,2BAA2B;IAO3B,cAAc;;;;;IAId,aAAa;IAQb,mBAAmB;IAInB,kBAAkB;IAclB,2BAA2B;IAI3B,kBAAkB,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU;IAI1D,oBAAoB;IAIpB,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM;IAkCnE,SAAS;IAIT,qBAAqB;IAOrB,iBAAiB;IAIjB,oBAAoB,CAClB,UAAU,EAAE,YAAY,EAAE,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO;IAqBV,sBAAsB;IAUtB,iBAAiB;IAIjB,sBAAsB;IAKtB,iBAAiB;IAWjB,uBAAuB,IAAI,kBAAkB,GAAG,SAAS;IAIzD,eAAe;IAMf,OAAO;IAKP,sBAAsB;IAItB,qBAAqB;IASrB,oCAAoC;IAQpC,aAAa;IAIb,iBAAiB;IAIjB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,4BAA4B;IA8BpC,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,iBAAiB;CAK1B"}
1
+ {"version":3,"file":"RecyclerViewManager.d.ts","sourceRoot":"","sources":["../../src/recyclerview/RecyclerViewManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAEL,WAAW,EACX,YAAY,EAGb,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAGL,QAAQ,EACT,MAAM,iCAAiC,CAAC;AAGzC,qBAAa,mBAAmB,CAAC,CAAC;IAChC,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,qBAAqB,CAA0B;IACvD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,aAAa,CAAC,CAAkB;IAExC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,sBAAsB,CAAwB;IACtD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,8BAA8B,CAAS;IAExC,eAAe,SAAK;IACpB,kBAAkB,UAAS;IAC3B,wBAAwB,UAAS;IACjC,uBAAuB,UAAS;IAEvC,IAAW,6BAA6B,IAIQ,OAAO,CAFtD;IAED,IAAW,6BAA6B,CAAC,KAAK,EAAE,OAAO,EAGtD;IAED,IAAW,yBAAyB,YAEnC;IAED,IAAW,UAAU,YAEpB;IAED,IAAW,UAAU,WAEpB;gBAEW,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAevC,OAAO,CAAC,iBAAiB,CAOvB;IAEF,IAAI,KAAK,yBAER;IAED,0BAA0B,CAAC,KAAK,EAAE,OAAO;IAIzC,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;IASvC;;;;OAIG;IACH,kBAAkB,CAChB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,QAAQ,GAClB,kBAAkB,GAAG,SAAS;IAgBjC,uBAAuB,CAAC,IAAI,EAAE,MAAM;IAIpC,wBAAwB;IAIxB,SAAS,CAAC,KAAK,EAAE,MAAM;IAOvB,YAAY,CAAC,KAAK,EAAE,MAAM;IAW1B,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAKnC,2BAA2B;IAO3B,cAAc;;;;;IAId,aAAa;IAQb,mBAAmB;IAInB,kBAAkB;IAclB,2BAA2B;IAI3B,kBAAkB,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU;IAI1D,oBAAoB;IAIpB,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM;IAkCnE,SAAS;IAIT,qBAAqB;IAOrB,iBAAiB;IAIjB,oBAAoB,CAClB,UAAU,EAAE,YAAY,EAAE,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO;IAqBV,sBAAsB;IAUtB,iBAAiB;IAIjB,sBAAsB;IAKtB,iBAAiB;IAWjB,uBAAuB,IAAI,kBAAkB,GAAG,SAAS;IAIzD,eAAe;IAMf,OAAO;IAKP,sBAAsB;IAItB,qBAAqB;IASrB,oCAAoC;IAQpC,aAAa;IAIb,iBAAiB;IAIjB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOjC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,4BAA4B;IA6BpC,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -37,6 +37,7 @@ export class RecyclerViewManager {
37
37
  this.firstItemOffset = 0;
38
38
  this.ignoreScrollEvents = false;
39
39
  this.isFirstPaintOnUiComplete = false;
40
+ this.isInitialScrollComplete = false;
40
41
  // updates render stack based on the engaged indices which are sorted. Recycles unused keys.
41
42
  this.updateRenderStack = (engagedIndices) => {
42
43
  this.renderStackManager.sync(this.getDataKey, this.getItemType, engagedIndices, this.getDataLength());
@@ -48,6 +49,7 @@ export class RecyclerViewManager {
48
49
  this.engagedIndicesTracker = new RVEngagedIndicesTrackerImpl();
49
50
  this.renderStackManager = new RenderStackManager(props.maxItemsInRecyclePool);
50
51
  this.itemViewabilityManager = new ViewabilityManager(this);
52
+ this.isInitialScrollComplete = this.getInitialScrollIndex() === undefined;
51
53
  this.checkPropsAndWarn();
52
54
  }
53
55
  get props() {
@@ -99,6 +101,10 @@ export class RecyclerViewManager {
99
101
  }
100
102
  return undefined;
101
103
  }
104
+ isInLastRow(index) {
105
+ var _a, _b;
106
+ return (_b = (_a = this.layoutManager) === null || _a === void 0 ? void 0 : _a.isInLastRow(index)) !== null && _b !== void 0 ? _b : false;
107
+ }
102
108
  // Doesn't include header / foot etc
103
109
  getChildContainerDimensions() {
104
110
  if (!this.layoutManager) {
@@ -279,30 +285,29 @@ export class RecyclerViewManager {
279
285
  : RVLinearLayoutManagerImpl;
280
286
  }
281
287
  applyInitialScrollAdjustment() {
282
- var _a;
283
288
  if (!this.layoutManager || this.getDataLength() === 0) {
284
289
  return;
285
290
  }
286
291
  const initialScrollIndex = this.getInitialScrollIndex();
287
- const initialItemLayout = (_a = this.layoutManager) === null || _a === void 0 ? void 0 : _a.getLayout(initialScrollIndex !== null && initialScrollIndex !== void 0 ? initialScrollIndex : 0);
288
- const initialItemOffset = this.propsRef.horizontal
289
- ? initialItemLayout === null || initialItemLayout === void 0 ? void 0 : initialItemLayout.x
290
- : initialItemLayout === null || initialItemLayout === void 0 ? void 0 : initialItemLayout.y;
291
292
  if (initialScrollIndex !== undefined) {
292
- // console.log(
293
- // "initialItemOffset",
294
- // initialScrollIndex,
295
- // initialItemOffset,
296
- // this.firstItemOffset
297
- // );
293
+ // Recompute layouts first, then read the offset. The recompute may
294
+ // re-estimate unmeasured items with an updated average height, changing
295
+ // the target item's position. Reading before recompute would capture a
296
+ // stale offset, causing the wrong items to be rendered.
298
297
  this.layoutManager.recomputeLayouts(0, initialScrollIndex);
299
- this.engagedIndicesTracker.scrollOffset =
300
- initialItemOffset !== null && initialItemOffset !== void 0 ? initialItemOffset : 0 + this.firstItemOffset;
298
+ const initialItemLayout = this.layoutManager.getLayout(initialScrollIndex);
299
+ const initialItemOffset = this.propsRef.horizontal
300
+ ? initialItemLayout.x
301
+ : initialItemLayout.y;
302
+ this.engagedIndicesTracker.scrollOffset = initialItemOffset;
301
303
  }
302
304
  else {
303
- // console.log("initialItemOffset", initialItemOffset, this.firstItemOffset);
305
+ const initialItemLayout = this.layoutManager.getLayout(0);
306
+ const initialItemOffset = this.propsRef.horizontal
307
+ ? initialItemLayout.x
308
+ : initialItemLayout.y;
304
309
  this.engagedIndicesTracker.scrollOffset =
305
- (initialItemOffset !== null && initialItemOffset !== void 0 ? initialItemOffset : 0) - this.firstItemOffset;
310
+ initialItemOffset - this.firstItemOffset;
306
311
  }
307
312
  }
308
313
  renderProgressively() {