@shopify/flash-list 2.0.3 → 2.1.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 (194) hide show
  1. package/dist/AnimatedFlashList.js +4 -6
  2. package/dist/AnimatedFlashList.js.map +1 -1
  3. package/dist/FlashList.js +1 -5
  4. package/dist/FlashList.js.map +1 -1
  5. package/dist/FlashListProps.d.ts +9 -1
  6. package/dist/FlashListProps.d.ts.map +1 -1
  7. package/dist/FlashListProps.js +1 -4
  8. package/dist/FlashListProps.js.map +1 -1
  9. package/dist/FlashListRef.js +1 -2
  10. package/dist/benchmark/AutoScrollHelper.js +22 -30
  11. package/dist/benchmark/AutoScrollHelper.js.map +1 -1
  12. package/dist/benchmark/JSFPSMonitor.js +27 -33
  13. package/dist/benchmark/JSFPSMonitor.js.map +1 -1
  14. package/dist/benchmark/roundToDecimalPlaces.js +2 -5
  15. package/dist/benchmark/roundToDecimalPlaces.js.map +1 -1
  16. package/dist/benchmark/useBenchmark.d.ts +9 -1
  17. package/dist/benchmark/useBenchmark.d.ts.map +1 -1
  18. package/dist/benchmark/useBenchmark.js +86 -95
  19. package/dist/benchmark/useBenchmark.js.map +1 -1
  20. package/dist/benchmark/useDataMultiplier.js +6 -10
  21. package/dist/benchmark/useDataMultiplier.js.map +1 -1
  22. package/dist/benchmark/useFlatListBenchmark.d.ts +4 -1
  23. package/dist/benchmark/useFlatListBenchmark.d.ts.map +1 -1
  24. package/dist/benchmark/useFlatListBenchmark.js +73 -81
  25. package/dist/benchmark/useFlatListBenchmark.js.map +1 -1
  26. package/dist/errors/ErrorMessages.js +1 -4
  27. package/dist/errors/ErrorMessages.js.map +1 -1
  28. package/dist/errors/WarningMessages.d.ts +1 -0
  29. package/dist/errors/WarningMessages.d.ts.map +1 -1
  30. package/dist/errors/WarningMessages.js +2 -4
  31. package/dist/errors/WarningMessages.js.map +1 -1
  32. package/dist/index.js +17 -35
  33. package/dist/index.js.map +1 -1
  34. package/dist/isNewArch.js +6 -9
  35. package/dist/isNewArch.js.map +1 -1
  36. package/dist/native/config/PlatformHelper.android.js +2 -5
  37. package/dist/native/config/PlatformHelper.android.js.map +1 -1
  38. package/dist/native/config/PlatformHelper.ios.js +2 -5
  39. package/dist/native/config/PlatformHelper.ios.js.map +1 -1
  40. package/dist/native/config/PlatformHelper.js +2 -5
  41. package/dist/native/config/PlatformHelper.js.map +1 -1
  42. package/dist/native/config/PlatformHelper.web.js +2 -5
  43. package/dist/native/config/PlatformHelper.web.js.map +1 -1
  44. package/dist/recyclerview/LayoutCommitObserver.js +20 -24
  45. package/dist/recyclerview/LayoutCommitObserver.js.map +1 -1
  46. package/dist/recyclerview/RecyclerView.d.ts.map +1 -1
  47. package/dist/recyclerview/RecyclerView.js +117 -107
  48. package/dist/recyclerview/RecyclerView.js.map +1 -1
  49. package/dist/recyclerview/RecyclerViewContextProvider.js +7 -12
  50. package/dist/recyclerview/RecyclerViewContextProvider.js.map +1 -1
  51. package/dist/recyclerview/RecyclerViewManager.d.ts +2 -0
  52. package/dist/recyclerview/RecyclerViewManager.d.ts.map +1 -1
  53. package/dist/recyclerview/RecyclerViewManager.js +146 -164
  54. package/dist/recyclerview/RecyclerViewManager.js.map +1 -1
  55. package/dist/recyclerview/RecyclerViewProps.js +1 -2
  56. package/dist/recyclerview/RenderStackManager.js +97 -188
  57. package/dist/recyclerview/RenderStackManager.js.map +1 -1
  58. package/dist/recyclerview/ViewHolder.js +16 -20
  59. package/dist/recyclerview/ViewHolder.js.map +1 -1
  60. package/dist/recyclerview/ViewHolderCollection.js +26 -30
  61. package/dist/recyclerview/ViewHolderCollection.js.map +1 -1
  62. package/dist/recyclerview/components/CompatScroller.js +6 -7
  63. package/dist/recyclerview/components/CompatScroller.js.map +1 -1
  64. package/dist/recyclerview/components/CompatView.js +6 -7
  65. package/dist/recyclerview/components/CompatView.js.map +1 -1
  66. package/dist/recyclerview/components/ScrollAnchor.js +10 -15
  67. package/dist/recyclerview/components/ScrollAnchor.js.map +1 -1
  68. package/dist/recyclerview/components/StickyHeaders.js +34 -40
  69. package/dist/recyclerview/components/StickyHeaders.js.map +1 -1
  70. package/dist/recyclerview/helpers/ConsecutiveNumbers.js +39 -66
  71. package/dist/recyclerview/helpers/ConsecutiveNumbers.js.map +1 -1
  72. package/dist/recyclerview/helpers/EngagedIndicesTracker.js +57 -63
  73. package/dist/recyclerview/helpers/EngagedIndicesTracker.js.map +1 -1
  74. package/dist/recyclerview/helpers/RenderTimeTracker.js +19 -24
  75. package/dist/recyclerview/helpers/RenderTimeTracker.js.map +1 -1
  76. package/dist/recyclerview/helpers/VelocityTracker.js +16 -22
  77. package/dist/recyclerview/helpers/VelocityTracker.js.map +1 -1
  78. package/dist/recyclerview/hooks/useBoundDetection.js +37 -40
  79. package/dist/recyclerview/hooks/useBoundDetection.js.map +1 -1
  80. package/dist/recyclerview/hooks/useLayoutState.js +9 -15
  81. package/dist/recyclerview/hooks/useLayoutState.js.map +1 -1
  82. package/dist/recyclerview/hooks/useMappingHelper.js +6 -10
  83. package/dist/recyclerview/hooks/useMappingHelper.js.map +1 -1
  84. package/dist/recyclerview/hooks/useOnLoad.d.ts.map +1 -1
  85. package/dist/recyclerview/hooks/useOnLoad.js +17 -22
  86. package/dist/recyclerview/hooks/useOnLoad.js.map +1 -1
  87. package/dist/recyclerview/hooks/useRecyclerViewController.d.ts.map +1 -1
  88. package/dist/recyclerview/hooks/useRecyclerViewController.js +169 -188
  89. package/dist/recyclerview/hooks/useRecyclerViewController.js.map +1 -1
  90. package/dist/recyclerview/hooks/useRecyclerViewManager.js +12 -17
  91. package/dist/recyclerview/hooks/useRecyclerViewManager.js.map +1 -1
  92. package/dist/recyclerview/hooks/useRecyclingState.js +10 -14
  93. package/dist/recyclerview/hooks/useRecyclingState.js.map +1 -1
  94. package/dist/recyclerview/hooks/useSecondaryProps.js +24 -30
  95. package/dist/recyclerview/hooks/useSecondaryProps.js.map +1 -1
  96. package/dist/recyclerview/hooks/useUnmountAwareCallbacks.js +17 -22
  97. package/dist/recyclerview/hooks/useUnmountAwareCallbacks.js.map +1 -1
  98. package/dist/recyclerview/hooks/useUnmountFlag.js +5 -9
  99. package/dist/recyclerview/hooks/useUnmountFlag.js.map +1 -1
  100. package/dist/recyclerview/layout-managers/GridLayoutManager.js +61 -80
  101. package/dist/recyclerview/layout-managers/GridLayoutManager.js.map +1 -1
  102. package/dist/recyclerview/layout-managers/LayoutManager.js +83 -123
  103. package/dist/recyclerview/layout-managers/LayoutManager.js.map +1 -1
  104. package/dist/recyclerview/layout-managers/LinearLayoutManager.js +51 -91
  105. package/dist/recyclerview/layout-managers/LinearLayoutManager.js.map +1 -1
  106. package/dist/recyclerview/layout-managers/MasonryLayoutManager.js +77 -96
  107. package/dist/recyclerview/layout-managers/MasonryLayoutManager.js.map +1 -1
  108. package/dist/recyclerview/utils/adjustOffsetForRTL.js +1 -4
  109. package/dist/recyclerview/utils/adjustOffsetForRTL.js.map +1 -1
  110. package/dist/recyclerview/utils/componentUtils.js +4 -9
  111. package/dist/recyclerview/utils/componentUtils.js.map +1 -1
  112. package/dist/recyclerview/utils/findVisibleIndex.js +9 -13
  113. package/dist/recyclerview/utils/findVisibleIndex.js.map +1 -1
  114. package/dist/recyclerview/utils/measureLayout.js +12 -20
  115. package/dist/recyclerview/utils/measureLayout.js.map +1 -1
  116. package/dist/recyclerview/utils/measureLayout.web.js +15 -23
  117. package/dist/recyclerview/utils/measureLayout.web.js.map +1 -1
  118. package/dist/recyclerview/viewability/ViewToken.js +1 -2
  119. package/dist/recyclerview/viewability/ViewabilityHelper.js +34 -41
  120. package/dist/recyclerview/viewability/ViewabilityHelper.js.map +1 -1
  121. package/dist/recyclerview/viewability/ViewabilityManager.js +48 -61
  122. package/dist/recyclerview/viewability/ViewabilityManager.js.map +1 -1
  123. package/dist/tsconfig.tsbuildinfo +1 -1
  124. package/dist/utils/AverageWindow.js +28 -39
  125. package/dist/utils/AverageWindow.js.map +1 -1
  126. package/package.json +4 -6
  127. package/src/FlashListProps.ts +8 -1
  128. package/src/benchmark/useBenchmark.ts +47 -4
  129. package/src/benchmark/useFlatListBenchmark.ts +38 -5
  130. package/src/errors/WarningMessages.ts +2 -0
  131. package/src/recyclerview/RecyclerView.tsx +18 -5
  132. package/src/recyclerview/RecyclerViewManager.ts +12 -0
  133. package/src/recyclerview/hooks/useOnLoad.ts +1 -0
  134. package/src/recyclerview/hooks/useRecyclerViewController.tsx +7 -4
  135. package/dist/__tests__/AverageWindow.test.d.ts +0 -2
  136. package/dist/__tests__/AverageWindow.test.d.ts.map +0 -1
  137. package/dist/__tests__/AverageWindow.test.js +0 -104
  138. package/dist/__tests__/AverageWindow.test.js.map +0 -1
  139. package/dist/__tests__/ConsecutiveNumbers.test.d.ts +0 -2
  140. package/dist/__tests__/ConsecutiveNumbers.test.d.ts.map +0 -1
  141. package/dist/__tests__/ConsecutiveNumbers.test.js +0 -224
  142. package/dist/__tests__/ConsecutiveNumbers.test.js.map +0 -1
  143. package/dist/__tests__/GridLayoutManager.test.d.ts +0 -2
  144. package/dist/__tests__/GridLayoutManager.test.d.ts.map +0 -1
  145. package/dist/__tests__/GridLayoutManager.test.js +0 -69
  146. package/dist/__tests__/GridLayoutManager.test.js.map +0 -1
  147. package/dist/__tests__/LayoutCommitObserver.test.d.ts +0 -2
  148. package/dist/__tests__/LayoutCommitObserver.test.d.ts.map +0 -1
  149. package/dist/__tests__/LayoutCommitObserver.test.js +0 -37
  150. package/dist/__tests__/LayoutCommitObserver.test.js.map +0 -1
  151. package/dist/__tests__/LinearLayoutManager.test.d.ts +0 -2
  152. package/dist/__tests__/LinearLayoutManager.test.d.ts.map +0 -1
  153. package/dist/__tests__/LinearLayoutManager.test.js +0 -140
  154. package/dist/__tests__/LinearLayoutManager.test.js.map +0 -1
  155. package/dist/__tests__/MasonryLayoutManager.test.d.ts +0 -2
  156. package/dist/__tests__/MasonryLayoutManager.test.d.ts.map +0 -1
  157. package/dist/__tests__/MasonryLayoutManager.test.js +0 -148
  158. package/dist/__tests__/MasonryLayoutManager.test.js.map +0 -1
  159. package/dist/__tests__/RecyclerView.test.d.ts +0 -2
  160. package/dist/__tests__/RecyclerView.test.d.ts.map +0 -1
  161. package/dist/__tests__/RecyclerView.test.js +0 -103
  162. package/dist/__tests__/RecyclerView.test.js.map +0 -1
  163. package/dist/__tests__/RenderStackManager.test.d.ts +0 -2
  164. package/dist/__tests__/RenderStackManager.test.d.ts.map +0 -1
  165. package/dist/__tests__/RenderStackManager.test.js +0 -485
  166. package/dist/__tests__/RenderStackManager.test.js.map +0 -1
  167. package/dist/__tests__/ViewabilityHelper.test.d.ts +0 -2
  168. package/dist/__tests__/ViewabilityHelper.test.d.ts.map +0 -1
  169. package/dist/__tests__/ViewabilityHelper.test.js +0 -186
  170. package/dist/__tests__/ViewabilityHelper.test.js.map +0 -1
  171. package/dist/__tests__/findVisibleIndex.test.d.ts +0 -2
  172. package/dist/__tests__/findVisibleIndex.test.d.ts.map +0 -1
  173. package/dist/__tests__/findVisibleIndex.test.js +0 -259
  174. package/dist/__tests__/findVisibleIndex.test.js.map +0 -1
  175. package/dist/__tests__/helpers/createLayoutManager.d.ts +0 -34
  176. package/dist/__tests__/helpers/createLayoutManager.d.ts.map +0 -1
  177. package/dist/__tests__/helpers/createLayoutManager.js +0 -110
  178. package/dist/__tests__/helpers/createLayoutManager.js.map +0 -1
  179. package/dist/__tests__/useUnmountAwareCallbacks.test.d.ts +0 -2
  180. package/dist/__tests__/useUnmountAwareCallbacks.test.d.ts.map +0 -1
  181. package/dist/__tests__/useUnmountAwareCallbacks.test.js +0 -185
  182. package/dist/__tests__/useUnmountAwareCallbacks.test.js.map +0 -1
  183. package/src/__tests__/AverageWindow.test.ts +0 -128
  184. package/src/__tests__/ConsecutiveNumbers.test.ts +0 -232
  185. package/src/__tests__/GridLayoutManager.test.ts +0 -113
  186. package/src/__tests__/LayoutCommitObserver.test.tsx +0 -63
  187. package/src/__tests__/LinearLayoutManager.test.ts +0 -227
  188. package/src/__tests__/MasonryLayoutManager.test.ts +0 -202
  189. package/src/__tests__/RecyclerView.test.tsx +0 -144
  190. package/src/__tests__/RenderStackManager.test.ts +0 -574
  191. package/src/__tests__/ViewabilityHelper.test.ts +0 -282
  192. package/src/__tests__/findVisibleIndex.test.ts +0 -369
  193. package/src/__tests__/helpers/createLayoutManager.ts +0 -141
  194. package/src/__tests__/useUnmountAwareCallbacks.test.tsx +0 -285
@@ -1 +0,0 @@
1
- {"version":3,"file":"RecyclerView.test.js","sourceRoot":"","sources":["../../src/__tests__/RecyclerView.test.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=RenderStackManager.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RenderStackManager.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/RenderStackManager.test.ts"],"names":[],"mappings":""}
@@ -1,485 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var RenderStackManager_1 = require("../recyclerview/RenderStackManager");
5
- var ConsecutiveNumbers_1 = require("../recyclerview/helpers/ConsecutiveNumbers");
6
- var mock1Data = [
7
- { id: 1, name: "Item 1", itemType: "type1" },
8
- { id: 2, name: "Item 2", itemType: "type2" },
9
- { id: 3, name: "Item 3", itemType: "type1" },
10
- { id: 4, name: "Item 4", itemType: "type2" },
11
- { id: 5, name: "Item 5", itemType: "type1" },
12
- { id: 6, name: "Item 6", itemType: "type2" },
13
- { id: 7, name: "Item 7", itemType: "type1" },
14
- { id: 8, name: "Item 8", itemType: "type2" },
15
- { id: 9, name: "Item 9", itemType: "type1" },
16
- { id: 10, name: "Item 10", itemType: "type2" },
17
- { id: 11, name: "Item 11", itemType: "type1" },
18
- ];
19
- var mock1 = {
20
- data: mock1Data,
21
- getStableId: function (index) { return mock1Data[index].id.toString(); },
22
- getItemType: function (index) { return mock1Data[index].itemType; },
23
- length: mock1Data.length,
24
- };
25
- var mock2Data = [
26
- { id: 5, name: "Item 1", itemType: "type1" },
27
- { id: 6, name: "Item 2", itemType: "type2" },
28
- { id: 7, name: "Item 3", itemType: "type1" },
29
- { id: 8, name: "Item 4", itemType: "type2" },
30
- { id: 9, name: "Item 5", itemType: "type1" },
31
- { id: 10, name: "Item 6", itemType: "type2" },
32
- { id: 11, name: "Item 7", itemType: "type1" },
33
- { id: 12, name: "Item 8", itemType: "type2" },
34
- { id: 13, name: "Item 9", itemType: "type1" },
35
- { id: 14, name: "Item 10", itemType: "type2" },
36
- { id: 15, name: "Item 11", itemType: "type1" },
37
- ];
38
- var mock2 = {
39
- data: mock2Data,
40
- getStableId: function (index) { return mock2Data[index].id.toString(); },
41
- getItemType: function (index) { return mock2Data[index].itemType; },
42
- length: mock2Data.length,
43
- };
44
- var mock3Data = [
45
- { id: 1, name: "Item 1", itemType: "type1" },
46
- { id: 2, name: "Item 2", itemType: "type1" },
47
- { id: 3, name: "Item 3", itemType: "type1" },
48
- { id: 4, name: "Item 4", itemType: "type1" },
49
- { id: 5, name: "Item 5", itemType: "type1" },
50
- { id: 6, name: "Item 6", itemType: "type1" },
51
- { id: 7, name: "Item 7", itemType: "type1" },
52
- { id: 8, name: "Item 8", itemType: "type1" },
53
- { id: 9, name: "Item 9", itemType: "type1" },
54
- { id: 10, name: "Item 10", itemType: "type1" },
55
- { id: 11, name: "Item 11", itemType: "type1" },
56
- { id: 12, name: "Item 12", itemType: "type1" },
57
- { id: 13, name: "Item 13", itemType: "type1" },
58
- { id: 14, name: "Item 14", itemType: "type1" },
59
- { id: 15, name: "Item 15", itemType: "type1" },
60
- ];
61
- var mock3 = {
62
- data: mock3Data,
63
- getStableId: function (index) { return mock3Data[index].id.toString(); },
64
- getItemType: function (index) { return mock3Data[index].itemType; },
65
- length: mock3Data.length,
66
- };
67
- var mock4Data = [
68
- { id: 1, name: "Item 1", itemType: "type1" },
69
- { id: 2, name: "Item 2", itemType: "type1" },
70
- { id: 3, name: "Item 3", itemType: "type1" },
71
- { id: 4, name: "Item 4", itemType: "type1" },
72
- { id: 5, name: "Item 5", itemType: "type1" },
73
- { id: 6, name: "Item 6", itemType: "type1" },
74
- { id: 7, name: "Item 7", itemType: "type1" },
75
- { id: 8, name: "Item 8", itemType: "type2" },
76
- { id: 9, name: "Item 9", itemType: "type2" },
77
- { id: 10, name: "Item 10", itemType: "type2" },
78
- { id: 11, name: "Item 11", itemType: "type2" },
79
- { id: 12, name: "Item 12", itemType: "type2" },
80
- { id: 13, name: "Item 13", itemType: "type2" },
81
- { id: 14, name: "Item 14", itemType: "type2" },
82
- { id: 15, name: "Item 15", itemType: "type2" },
83
- ];
84
- var mock4 = {
85
- data: mock4Data,
86
- getStableId: function (index) { return mock4Data[index].id.toString(); },
87
- getItemType: function (index) { return mock4Data[index].itemType; },
88
- length: mock4Data.length,
89
- };
90
- var mock5Data = [
91
- { id: 1, name: "Item 1", itemType: "type2" },
92
- { id: 2, name: "Item 2", itemType: "type2" },
93
- { id: 3, name: "Item 3", itemType: "type2" },
94
- { id: 4, name: "Item 4", itemType: "type2" },
95
- { id: 5, name: "Item 5", itemType: "type2" },
96
- { id: 6, name: "Item 6", itemType: "type2" },
97
- { id: 7, name: "Item 7", itemType: "type2" },
98
- { id: 8, name: "Item 8", itemType: "type1" },
99
- { id: 9, name: "Item 9", itemType: "type1" },
100
- { id: 10, name: "Item 10", itemType: "type1" },
101
- { id: 11, name: "Item 11", itemType: "type1" },
102
- { id: 12, name: "Item 12", itemType: "type1" },
103
- { id: 13, name: "Item 13", itemType: "type1" },
104
- { id: 14, name: "Item 14", itemType: "type1" },
105
- { id: 15, name: "Item 15", itemType: "type1" },
106
- ];
107
- var mock5 = {
108
- data: mock5Data,
109
- getStableId: function (index) { return mock5Data[index].id.toString(); },
110
- getItemType: function (index) { return mock5Data[index].itemType; },
111
- length: mock5Data.length,
112
- };
113
- var mock6Data = [
114
- { id: 0, name: "Item 0", itemType: "type1" },
115
- { id: 1, name: "Item 1", itemType: "type1" },
116
- { id: 2, name: "Item 2", itemType: "type1" },
117
- { id: 3, name: "Item 3", itemType: "type1" },
118
- { id: 4, name: "Item 4", itemType: "type1" },
119
- { id: 5, name: "Item 5", itemType: "type1" },
120
- { id: 6, name: "Item 6", itemType: "type1" },
121
- { id: 7, name: "Item 7", itemType: "type1" },
122
- ];
123
- var mock6 = {
124
- data: mock6Data,
125
- getStableId: function (index) { return mock6Data[index].id.toString(); },
126
- getItemType: function (index) { return mock6Data[index].itemType; },
127
- length: mock6Data.length,
128
- };
129
- var mock7Data = [
130
- { id: 0, name: "Item 0", itemType: "type1" },
131
- { id: 2, name: "Item 2", itemType: "type1" },
132
- { id: 3, name: "Item 3", itemType: "type1" },
133
- { id: 4, name: "Item 4", itemType: "type1" },
134
- { id: 5, name: "Item 5", itemType: "type1" },
135
- { id: 6, name: "Item 6", itemType: "type1" },
136
- { id: 7, name: "Item 7", itemType: "type1" },
137
- { id: 8, name: "Item 8", itemType: "type1" },
138
- ];
139
- var mock7 = {
140
- data: mock7Data,
141
- getStableId: function (index) { return mock7Data[index].id.toString(); },
142
- getItemType: function (index) { return mock7Data[index].itemType; },
143
- length: mock7Data.length,
144
- };
145
- var mock8Data = [
146
- { id: 16, name: "Item 16", itemType: "type1" },
147
- { id: 17, name: "Item 17", itemType: "type1" },
148
- { id: 18, name: "Item 18", itemType: "type1" },
149
- { id: 19, name: "Item 19", itemType: "type1" },
150
- { id: 20, name: "Item 20", itemType: "type1" },
151
- { id: 1, name: "Item 1", itemType: "type1" },
152
- { id: 2, name: "Item 2", itemType: "type1" },
153
- { id: 3, name: "Item 3", itemType: "type1" },
154
- { id: 4, name: "Item 4", itemType: "type1" },
155
- { id: 5, name: "Item 5", itemType: "type1" },
156
- { id: 6, name: "Item 6", itemType: "type1" },
157
- { id: 7, name: "Item 7", itemType: "type1" },
158
- { id: 8, name: "Item 8", itemType: "type1" },
159
- { id: 9, name: "Item 9", itemType: "type1" },
160
- { id: 10, name: "Item 10", itemType: "type1" },
161
- { id: 11, name: "Item 11", itemType: "type1" },
162
- { id: 12, name: "Item 12", itemType: "type1" },
163
- { id: 13, name: "Item 13", itemType: "type1" },
164
- { id: 14, name: "Item 14", itemType: "type1" },
165
- { id: 15, name: "Item 15", itemType: "type1" },
166
- ];
167
- var mock8 = {
168
- data: mock8Data,
169
- getStableId: function (index) { return mock8Data[index].id.toString(); },
170
- getItemType: function (index) { return mock8Data[index].itemType; },
171
- length: mock8Data.length,
172
- };
173
- // Helper to create mock data structures
174
- var createMockData = function (items) {
175
- return {
176
- data: items.map(function (item) { return (tslib_1.__assign(tslib_1.__assign({}, item), { name: item.name || "Item ".concat(item.id) })); }),
177
- getStableId: function (index) { return items[index].id.toString(); },
178
- getItemType: function (index) { return items[index].itemType; },
179
- length: items.length,
180
- };
181
- };
182
- // Helper to run sync and get sorted keys from the entire keyMap
183
- var runSyncAndGetEntireKeyMapKeys = function (manager, mock, engagedIndicesOverride) {
184
- var dataLength = mock.length;
185
- var engaged = engagedIndicesOverride !== null && engagedIndicesOverride !== void 0 ? engagedIndicesOverride : new ConsecutiveNumbers_1.ConsecutiveNumbers(0, dataLength > 0 ? dataLength - 1 : -1);
186
- manager.sync(mock.getStableId, mock.getItemType, engaged, dataLength);
187
- return Array.from(manager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
188
- };
189
- // Helper to get keys specific to the items in a mock, after a sync
190
- var getKeysForMockItems = function (manager, mockData) {
191
- var e_1, _a;
192
- var stack = manager.getRenderStack();
193
- var keys = [];
194
- // Ensure we only try to get keys for items that exist in mockData
195
- for (var i = 0; i < mockData.length; i++) {
196
- var stableId = mockData.getStableId(i);
197
- try {
198
- for (var _b = (e_1 = void 0, tslib_1.__values(stack.entries())), _c = _b.next(); !_c.done; _c = _b.next()) {
199
- var _d = tslib_1.__read(_c.value, 2), key = _d[0], info = _d[1];
200
- if (info.stableId === stableId) {
201
- keys.push(key);
202
- break;
203
- }
204
- }
205
- }
206
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
207
- finally {
208
- try {
209
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
210
- }
211
- finally { if (e_1) throw e_1.error; }
212
- }
213
- }
214
- return keys.sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
215
- };
216
- var emptyMock = createMockData([]);
217
- var mockDataA5 = createMockData([
218
- { id: "s1", itemType: "typeA" },
219
- { id: "s2", itemType: "typeA" },
220
- { id: "s3", itemType: "typeA" },
221
- { id: "s4", itemType: "typeA" },
222
- { id: "s5", itemType: "typeA" },
223
- ]);
224
- var mockDataB3 = createMockData([
225
- { id: "s6", itemType: "typeA" },
226
- { id: "s7", itemType: "typeA" },
227
- { id: "s8", itemType: "typeA" },
228
- ]);
229
- describe("RenderStackManager", function () {
230
- it("should reuse keys from removed items when transitioning from mock1 to mock2", function () {
231
- var renderStackManager = new RenderStackManager_1.RenderStackManager();
232
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock1);
233
- var oldRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
234
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock2);
235
- var newRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
236
- expect(newRenderStackKeys).toEqual(oldRenderStackKeys);
237
- });
238
- it("should reuse keys changing item types when transitioning from mock3 to mock4", function () {
239
- var renderStackManager = new RenderStackManager_1.RenderStackManager();
240
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock3);
241
- var oldRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
242
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock4);
243
- var newRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
244
- expect(newRenderStackKeys).toEqual(oldRenderStackKeys);
245
- });
246
- it("should reuse keys changing item types when transitioning from mock4 to mock5", function () {
247
- var renderStackManager = new RenderStackManager_1.RenderStackManager();
248
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock4);
249
- var oldRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
250
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock5);
251
- var newRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
252
- expect(newRenderStackKeys).toEqual(oldRenderStackKeys);
253
- });
254
- it("should have all keys from mock1 when going from mock1 to mock5", function () {
255
- var renderStackManager = new RenderStackManager_1.RenderStackManager();
256
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock1);
257
- var oldRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
258
- runSyncAndGetEntireKeyMapKeys(renderStackManager, mock5);
259
- var newRenderStackKeys = Array.from(renderStackManager.getRenderStack().keys()).sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); });
260
- oldRenderStackKeys.forEach(function (key) {
261
- expect(newRenderStackKeys).toContain(key);
262
- });
263
- });
264
- });
265
- describe("RenderStackManager with disableRecycling = true", function () {
266
- it("should assign new, non-recycled keys to new items when disableRecycling is true", function () {
267
- var rsm = new RenderStackManager_1.RenderStackManager();
268
- rsm.disableRecycling = true;
269
- // Sync with A5 first
270
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
271
- var keysA5 = getKeysForMockItems(rsm, mockDataA5);
272
- expect(keysA5).toEqual(["0", "1", "2", "3", "4"]);
273
- // Sync with B3
274
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataB3);
275
- var keysB3 = getKeysForMockItems(rsm, mockDataB3);
276
- expect(keysB3).toEqual(["5", "6", "7"]); // New keys for B3 items
277
- // Ensure B3 keys don't overlap with A5 keys that might remain in keyMap
278
- keysA5.forEach(function (keyA) {
279
- expect(keysB3).not.toContain(keyA);
280
- });
281
- // Check the final state of the entire keyMap
282
- // After B3 sync, keys for A5 items at original indices 3,4 (stableIds "s4","s5")
283
- // should be removed because 3 >= B3.length (3) and 4 >= B3.length (3). Keys for 0,1,2 from A5 remain.
284
- var allKeysInMap = runSyncAndGetEntireKeyMapKeys(rsm, mockDataB3); // This re-syncs B3, ensuring state is for B3
285
- expect(allKeysInMap.sort(function (keyA, keyB) { return Number(keyA) - Number(keyB); })).toEqual(["5", "6", "7"]);
286
- });
287
- it("should generate all new keys if starting with disableRecycling = true and items are removed then added", function () {
288
- var rsm = new RenderStackManager_1.RenderStackManager();
289
- rsm.disableRecycling = true;
290
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5); // Assigns keys "0" through "4"
291
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock); // Sync with empty
292
- expect(getKeysForMockItems(rsm, emptyMock)).toEqual([]);
293
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataB3); // Sync with new data
294
- var keysForNewItems = getKeysForMockItems(rsm, mockDataB3);
295
- expect(keysForNewItems).toEqual(["5", "6", "7"]);
296
- });
297
- });
298
- describe("RenderStackManager with maxItemsInRecyclePool", function () {
299
- it("should not recycle any keys when maxItemsInRecyclePool is 0", function () {
300
- var rsm = new RenderStackManager_1.RenderStackManager(0); // maxItemsInRecyclePool = 0
301
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
302
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock); // Sync with empty, dataLength = 0. All keys are cleaned up.
303
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataB3);
304
- var keys2 = getKeysForMockItems(rsm, mockDataB3);
305
- expect(keys2).toEqual(["5", "6", "7"]); // Expect new keys as pool was cleared by emptyMock sync
306
- });
307
- it("should effectively not recycle if intermediate sync has dataLength 0, regardless of maxPoolSize", function () {
308
- var maxPoolSize = 2;
309
- var rsm = new RenderStackManager_1.RenderStackManager(maxPoolSize);
310
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
311
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock); // Sync with empty, dataLength = 0. All keys are cleaned up from pool and map.
312
- var mockDataA3NewIds = createMockData([
313
- { id: "s10", itemType: "typeA" },
314
- { id: "s11", itemType: "typeA" },
315
- { id: "s12", itemType: "typeA" },
316
- ]);
317
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA3NewIds);
318
- var newKeys = getKeysForMockItems(rsm, mockDataA3NewIds);
319
- // Because emptyMock sync (dataLength=0) clears all keys, these will be new.
320
- expect(newKeys).toEqual(["5", "6", "7"]);
321
- });
322
- it("should not repeat index when going from mock6 to mock7", function () {
323
- var rsm = new RenderStackManager_1.RenderStackManager();
324
- rsm.disableRecycling = true;
325
- runSyncAndGetEntireKeyMapKeys(rsm, mock6);
326
- runSyncAndGetEntireKeyMapKeys(rsm, mock7);
327
- var set = new Set();
328
- Array.from(rsm.getRenderStack().entries()).forEach(function (_a) {
329
- var _b = tslib_1.__read(_a, 2), key = _b[0], info = _b[1];
330
- expect(set.has(info.index)).toBe(false);
331
- set.add(info.index);
332
- });
333
- });
334
- });
335
- describe("RenderStackManager edge cases", function () {
336
- it("should handle initial sync with empty data and then add items", function () {
337
- var rsm = new RenderStackManager_1.RenderStackManager();
338
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock);
339
- expect(getKeysForMockItems(rsm, emptyMock)).toEqual([]);
340
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
341
- expect(getKeysForMockItems(rsm, mockDataA5)).toEqual([
342
- "0",
343
- "1",
344
- "2",
345
- "3",
346
- "4",
347
- ]);
348
- });
349
- it("should generate new keys if all items removed (synced with empty) and then different items added", function () {
350
- var rsm = new RenderStackManager_1.RenderStackManager(); // Default large pool size
351
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
352
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock); // Sync with empty, dataLength = 0. All keys are cleaned up.
353
- var mockDataA3NewIds = createMockData([
354
- { id: "s10", itemType: "typeA" },
355
- { id: "s11", itemType: "typeA" },
356
- { id: "s12", itemType: "typeA" },
357
- ]);
358
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA3NewIds);
359
- var newKeys = getKeysForMockItems(rsm, mockDataA3NewIds);
360
- // Expect new keys as the emptyMock sync (dataLength=0) cleared the pool and map.
361
- expect(newKeys).toEqual(["5", "6", "7"]);
362
- });
363
- it("should use new keys if types change completely and no compatible recycled keys exist (after empty sync)", function () {
364
- var rsm = new RenderStackManager_1.RenderStackManager();
365
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
366
- runSyncAndGetEntireKeyMapKeys(rsm, emptyMock); // Clear with empty sync
367
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataB3);
368
- var keysTypeB = getKeysForMockItems(rsm, mockDataB3);
369
- expect(keysTypeB).toEqual(["5", "6", "7"]); // Should be new keys after empty sync
370
- var mockSingleTypeA = createMockData([{ id: "s20", itemType: "typeA" }]);
371
- runSyncAndGetEntireKeyMapKeys(rsm, mockSingleTypeA);
372
- var keyForS20 = getKeysForMockItems(rsm, mockSingleTypeA);
373
- // After empty sync and B3 sync, A's pool is gone. Key counter is at 8.
374
- expect(keyForS20).toEqual(["5"]);
375
- });
376
- it("should maintain keys if data and engaged indices do not change", function () {
377
- var rsm = new RenderStackManager_1.RenderStackManager();
378
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
379
- var keys1 = getKeysForMockItems(rsm, mockDataA5);
380
- runSyncAndGetEntireKeyMapKeys(rsm, mockDataA5);
381
- var keys2 = getKeysForMockItems(rsm, mockDataA5);
382
- expect(keys2).toEqual(keys1);
383
- });
384
- it("should not delete keys from pool if they are not visible on index changes when going from mock6 to mock7", function () {
385
- var rsm = new RenderStackManager_1.RenderStackManager();
386
- runSyncAndGetEntireKeyMapKeys(rsm, mock6);
387
- runSyncAndGetEntireKeyMapKeys(rsm, mock7, new ConsecutiveNumbers_1.ConsecutiveNumbers(3, 5));
388
- var keys = getKeysForMockItems(rsm, mock7);
389
- expect(keys).toEqual(["0", "1", "2", "3", "4", "5", "6", "7"]);
390
- });
391
- it("should not delete keys from pool if they are not visible on index changes when going from mock3 to mock8", function () {
392
- var rsm = new RenderStackManager_1.RenderStackManager();
393
- runSyncAndGetEntireKeyMapKeys(rsm, mock3, new ConsecutiveNumbers_1.ConsecutiveNumbers(0, 10));
394
- runSyncAndGetEntireKeyMapKeys(rsm, mock8, new ConsecutiveNumbers_1.ConsecutiveNumbers(0, 13));
395
- var keys = getKeysForMockItems(rsm, mock8);
396
- expect(keys).toEqual([
397
- "0",
398
- "1",
399
- "2",
400
- "3",
401
- "4",
402
- "5",
403
- "6",
404
- "7",
405
- "8",
406
- "9",
407
- "10",
408
- "11",
409
- "12",
410
- "13",
411
- ]);
412
- });
413
- it("should delete keys from pool if they are not visible on index changes when going from mock6 to mock7 (disableRecycling = true)", function () {
414
- var rsm = new RenderStackManager_1.RenderStackManager();
415
- rsm.disableRecycling = true;
416
- runSyncAndGetEntireKeyMapKeys(rsm, mock6);
417
- runSyncAndGetEntireKeyMapKeys(rsm, mock7, new ConsecutiveNumbers_1.ConsecutiveNumbers(3, 5));
418
- var keys = getKeysForMockItems(rsm, mock7);
419
- expect(keys).toEqual(["0", "2", "3", "4", "5", "6", "8"]);
420
- });
421
- it("should not delete keys from pool if they are not visible on index changes when going from mock6 to mock7 (all engaged)", function () {
422
- var rsm = new RenderStackManager_1.RenderStackManager();
423
- runSyncAndGetEntireKeyMapKeys(rsm, mock6);
424
- runSyncAndGetEntireKeyMapKeys(rsm, mock7);
425
- var keys = getKeysForMockItems(rsm, mock7);
426
- expect(keys).toEqual(["0", "1", "2", "3", "4", "5", "6", "7"]);
427
- });
428
- it("should delete keys from pool if they are not visible on index changes when going from mock6 to mock7 (all engaged,disableRecycling = true)", function () {
429
- var rsm = new RenderStackManager_1.RenderStackManager();
430
- rsm.disableRecycling = true;
431
- runSyncAndGetEntireKeyMapKeys(rsm, mock6);
432
- runSyncAndGetEntireKeyMapKeys(rsm, mock7);
433
- var keys = getKeysForMockItems(rsm, mock7);
434
- expect(keys).toEqual(["0", "2", "3", "4", "5", "6", "7", "8"]);
435
- });
436
- it("should correctly handle partial replacement of items, reusing keys for stable items and recycling for replaced ones", function () {
437
- var rsm = new RenderStackManager_1.RenderStackManager();
438
- var initialMock = createMockData([
439
- { id: "s1", itemType: "typeA" },
440
- { id: "s2", itemType: "typeA" },
441
- { id: "s3", itemType: "typeA" },
442
- { id: "s4", itemType: "typeA" },
443
- ]);
444
- runSyncAndGetEntireKeyMapKeys(rsm, initialMock);
445
- var initialKeyMap = new Map();
446
- // Populate initialKeyMap correctly using getKeysForMockItems and stable IDs
447
- initialMock.data.forEach(function (itemData, index) {
448
- // Get the keys for the initialMock items AFTER the sync.
449
- var currentKeysForInitialMock = getKeysForMockItems(rsm, initialMock);
450
- var key = currentKeysForInitialMock[index]; // Assumes keys are in order of data
451
- if (key !== undefined) {
452
- // Ensure key exists before setting
453
- initialKeyMap.set(itemData.id.toString(), key);
454
- }
455
- });
456
- var keyForS1 = initialKeyMap.get("s1");
457
- var keyForS2 = initialKeyMap.get("s2");
458
- var keyForS3 = initialKeyMap.get("s3");
459
- var keyForS4 = initialKeyMap.get("s4");
460
- var partiallyReplacedMock = createMockData([
461
- { id: "s1", itemType: "typeA" },
462
- { id: "s5", itemType: "typeA" },
463
- { id: "s6", itemType: "typeA" },
464
- { id: "s4", itemType: "typeA" },
465
- ]);
466
- runSyncAndGetEntireKeyMapKeys(rsm, partiallyReplacedMock);
467
- var finalKeyMap = new Map();
468
- partiallyReplacedMock.data.forEach(function (itemData, index) {
469
- // Get keys for partiallyReplacedMock items AFTER the sync.
470
- var currentKeysForPartialMock = getKeysForMockItems(rsm, partiallyReplacedMock);
471
- var key = currentKeysForPartialMock[index]; // Assumes keys are in order
472
- if (key !== undefined) {
473
- // Ensure key exists
474
- finalKeyMap.set(itemData.id.toString(), key);
475
- }
476
- });
477
- expect(finalKeyMap.get("s1")).toBe(keyForS1);
478
- expect(finalKeyMap.get("s4")).toBe(keyForS4);
479
- expect([finalKeyMap.get("s5"), finalKeyMap.get("s6")]).toEqual(expect.arrayContaining([keyForS2, keyForS3]));
480
- expect(finalKeyMap.get("s5")).not.toBe(finalKeyMap.get("s6"));
481
- var finalKeysForCurrentItems = getKeysForMockItems(rsm, partiallyReplacedMock);
482
- expect(finalKeysForCurrentItems).toEqual(["0", "1", "2", "3"]);
483
- });
484
- });
485
- //# sourceMappingURL=RenderStackManager.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RenderStackManager.test.js","sourceRoot":"","sources":["../../src/__tests__/RenderStackManager.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ViewabilityHelper.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewabilityHelper.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/ViewabilityHelper.test.ts"],"names":[],"mappings":""}