@tamagui/react-native-web-lite 2.7.7 → 3.0.0-beta.637.1

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 (504) hide show
  1. package/dist/cjs/AccessibilityInfo/index.cjs +82 -87
  2. package/dist/cjs/ActivityIndicator/index.cjs +83 -103
  3. package/dist/cjs/Alert/index.cjs +17 -20
  4. package/dist/cjs/AppRegistry/AppContainer.cjs +37 -52
  5. package/dist/cjs/AppRegistry/index.cjs +69 -81
  6. package/dist/cjs/AppRegistry/renderApplication.cjs +42 -54
  7. package/dist/cjs/AppState/index.cjs +60 -67
  8. package/dist/cjs/Appearance/index.cjs +40 -49
  9. package/dist/cjs/BackHandler/index.cjs +20 -25
  10. package/dist/cjs/Clipboard/index.cjs +50 -53
  11. package/dist/cjs/DeviceEmitter.cjs +15 -18
  12. package/dist/cjs/DeviceInfo/index.cjs +50 -63
  13. package/dist/cjs/Dimensions/index.cjs +86 -89
  14. package/dist/cjs/FlatList.cjs +177 -211
  15. package/dist/cjs/I18nManager/index.cjs +24 -29
  16. package/dist/cjs/Image/index.cjs +277 -308
  17. package/dist/cjs/Image/types.cjs +10 -11
  18. package/dist/cjs/ImageBackground/index.cjs +35 -48
  19. package/dist/cjs/InteractionManager/TaskQueue.cjs +95 -100
  20. package/dist/cjs/InteractionManager/index.cjs +105 -115
  21. package/dist/cjs/Keyboard/index.cjs +23 -28
  22. package/dist/cjs/KeyboardAvoidingView/index.cjs +41 -54
  23. package/dist/cjs/Libraries/Pressability/Pressability.cjs +15 -18
  24. package/dist/cjs/Libraries/Pressability/usePressability.cjs +15 -18
  25. package/dist/cjs/Linking/index.cjs +86 -89
  26. package/dist/cjs/LogBox/index.cjs +20 -21
  27. package/dist/cjs/Modal/ModalAnimation.cjs +131 -151
  28. package/dist/cjs/Modal/ModalContent.cjs +57 -77
  29. package/dist/cjs/Modal/ModalPortal.cjs +38 -46
  30. package/dist/cjs/Modal/index.cjs +15 -18
  31. package/dist/cjs/NativeModules/index.cjs +15 -20
  32. package/dist/cjs/PanResponder/index.cjs +18 -26
  33. package/dist/cjs/PixelRatio/index.cjs +45 -48
  34. package/dist/cjs/Pressable/index.cjs +130 -142
  35. package/dist/cjs/RefreshControl/index.cjs +18 -35
  36. package/dist/cjs/SafeAreaView/index.cjs +35 -46
  37. package/dist/cjs/ScrollView/WebScrollView.cjs +270 -0
  38. package/dist/cjs/ScrollView/index.cjs +15 -662
  39. package/dist/cjs/SectionList.cjs +19 -25
  40. package/dist/cjs/Share/index.cjs +44 -47
  41. package/dist/cjs/StatusBar/index.cjs +17 -18
  42. package/dist/cjs/Text/index.cjs +133 -171
  43. package/dist/cjs/Text/types.cjs +10 -11
  44. package/dist/cjs/TextInput/index.cjs +281 -359
  45. package/dist/cjs/TextInput/types.cjs +10 -11
  46. package/dist/cjs/TouchableNativeFeedback.cjs +15 -18
  47. package/dist/cjs/TouchableOpacity.cjs +91 -99
  48. package/dist/cjs/TouchableWithoutFeedback.cjs +65 -74
  49. package/dist/cjs/UnimplementedView.cjs +26 -36
  50. package/dist/cjs/Vibration/index.cjs +25 -28
  51. package/dist/cjs/View/index.cjs +89 -121
  52. package/dist/cjs/View/types.cjs +10 -11
  53. package/dist/cjs/VirtualizedList.cjs +19 -25
  54. package/dist/cjs/codegenNativeCommands.cjs +32 -0
  55. package/dist/cjs/codegenNativeComponent.cjs +19 -18
  56. package/dist/cjs/createElement/index.cjs +52 -70
  57. package/dist/cjs/createReactDOMStyle.cjs +16 -17
  58. package/dist/cjs/index.cjs +106 -106
  59. package/dist/cjs/modules/requestIdleCallback.cjs +28 -29
  60. package/dist/cjs/preprocess.cjs +19 -20
  61. package/dist/cjs/render/index.cjs +18 -19
  62. package/dist/cjs/styleTypes.cjs +10 -11
  63. package/dist/cjs/types.cjs +10 -11
  64. package/dist/cjs/useColorScheme/index.cjs +27 -37
  65. package/dist/cjs/useLocaleContext/index.cjs +15 -18
  66. package/dist/cjs/useWindowDimensions/index.cjs +32 -42
  67. package/dist/cjs/vendor/react-native/Animated/Animated.cjs +23 -24
  68. package/dist/cjs/vendor/react-native/Animated/AnimatedEvent.cjs +136 -141
  69. package/dist/cjs/vendor/react-native/Animated/AnimatedImplementation.cjs +500 -533
  70. package/dist/cjs/vendor/react-native/Animated/AnimatedMock.cjs +100 -109
  71. package/dist/cjs/vendor/react-native/Animated/AnimatedPlatformConfig.cjs +2 -1
  72. package/dist/cjs/vendor/react-native/Animated/Easing.cjs +182 -183
  73. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedHelper.cjs +302 -328
  74. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedModule.cjs +48 -56
  75. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedTurboModule.cjs +46 -53
  76. package/dist/cjs/vendor/react-native/Animated/SpringConfig.cjs +63 -64
  77. package/dist/cjs/vendor/react-native/Animated/animations/Animation.cjs +52 -56
  78. package/dist/cjs/vendor/react-native/Animated/animations/DecayAnimation.cjs +74 -79
  79. package/dist/cjs/vendor/react-native/Animated/animations/SpringAnimation.cjs +210 -215
  80. package/dist/cjs/vendor/react-native/Animated/animations/TimingAnimation.cjs +107 -116
  81. package/dist/cjs/vendor/react-native/Animated/bezier.cjs +83 -88
  82. package/dist/cjs/vendor/react-native/Animated/components/AnimatedFlatList.cjs +23 -29
  83. package/dist/cjs/vendor/react-native/Animated/components/AnimatedImage.cjs +19 -25
  84. package/dist/cjs/vendor/react-native/Animated/components/AnimatedScrollView.cjs +23 -29
  85. package/dist/cjs/vendor/react-native/Animated/components/AnimatedSectionList.cjs +23 -29
  86. package/dist/cjs/vendor/react-native/Animated/components/AnimatedText.cjs +16 -17
  87. package/dist/cjs/vendor/react-native/Animated/components/AnimatedView.cjs +16 -17
  88. package/dist/cjs/vendor/react-native/Animated/createAnimatedComponent.cjs +32 -44
  89. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedAddition.cjs +51 -52
  90. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedColor.cjs +244 -247
  91. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedDiffClamp.cjs +59 -60
  92. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedDivision.cjs +65 -66
  93. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedInterpolation.cjs +185 -188
  94. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedModulo.cjs +49 -50
  95. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedMultiplication.cjs +51 -52
  96. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedNode.cjs +152 -156
  97. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedProps.cjs +133 -134
  98. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedStyle.cjs +113 -116
  99. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedSubtraction.cjs +51 -52
  100. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedTracking.cjs +73 -75
  101. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedTransform.cjs +109 -110
  102. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedValue.cjs +212 -216
  103. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedValueXY.cjs +96 -103
  104. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedWithChildren.cjs +70 -71
  105. package/dist/cjs/vendor/react-native/Animated/useAnimatedProps.cjs +75 -76
  106. package/dist/cjs/vendor/react-native/Batchinator/index.cjs +46 -57
  107. package/dist/cjs/vendor/react-native/EventEmitter/NativeEventEmitter.cjs +54 -57
  108. package/dist/cjs/vendor/react-native/EventEmitter/RCTDeviceEventEmitter.cjs +16 -17
  109. package/dist/cjs/vendor/react-native/FeatureFlags.cjs +21 -24
  110. package/dist/cjs/vendor/react-native/FillRateHelper/index.cjs +165 -173
  111. package/dist/cjs/vendor/react-native/FlatList/index.cjs +259 -294
  112. package/dist/cjs/vendor/react-native/JSEventLoopWatchdog/index.cjs +66 -69
  113. package/dist/cjs/vendor/react-native/LayoutAnimation/index.cjs +87 -91
  114. package/dist/cjs/vendor/react-native/PanResponder/index.cjs +170 -176
  115. package/dist/cjs/vendor/react-native/PooledClass/index.cjs +42 -43
  116. package/dist/cjs/vendor/react-native/ReactNative/ReactNativeFeatureFlags.cjs +21 -22
  117. package/dist/cjs/vendor/react-native/SectionList/index.cjs +95 -110
  118. package/dist/cjs/vendor/react-native/StaticContainer/index.cjs +28 -34
  119. package/dist/cjs/vendor/react-native/StaticRenderer/index.cjs +27 -33
  120. package/dist/cjs/vendor/react-native/TouchHistoryMath/index.cjs +82 -111
  121. package/dist/cjs/vendor/react-native/TurboModule/RCTExport.cjs +17 -22
  122. package/dist/cjs/vendor/react-native/TurboModule/TurboModuleRegistry.cjs +20 -21
  123. package/dist/cjs/vendor/react-native/Types/CoreEventTypes.cjs +124 -127
  124. package/dist/cjs/vendor/react-native/Utilities/Platform.cjs +16 -17
  125. package/dist/cjs/vendor/react-native/Utilities/clamp.cjs +23 -24
  126. package/dist/cjs/vendor/react-native/Utilities/setAndForwardRef.cjs +26 -30
  127. package/dist/cjs/vendor/react-native/Utilities/useMergeRefs.cjs +27 -30
  128. package/dist/cjs/vendor/react-native/Utilities/useRefEffect.cjs +26 -27
  129. package/dist/cjs/vendor/react-native/ViewabilityHelper/index.cjs +154 -163
  130. package/dist/cjs/vendor/react-native/ViewabilityHelper.cjs +147 -156
  131. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.cjs +124 -125
  132. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.cjs +100 -99
  133. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.cjs +63 -64
  134. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.cjs +66 -75
  135. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.cjs +104 -160
  136. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.cjs +56 -64
  137. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.cjs +51 -52
  138. package/dist/cjs/vendor/react-native/VirtualizedList/index.cjs +222 -284
  139. package/dist/cjs/vendor/react-native/VirtualizedSectionList/index.cjs +124 -144
  140. package/dist/cjs/vendor/react-native/deepDiffer/index.cjs +58 -59
  141. package/dist/cjs/vendor/react-native/emitter/EventEmitter.cjs +16 -17
  142. package/dist/cjs/vendor/react-native/emitter/EventSubscription.cjs +2 -1
  143. package/dist/cjs/vendor/react-native/emitter/_EmitterSubscription.cjs +43 -44
  144. package/dist/cjs/vendor/react-native/emitter/_EventEmitter.cjs +115 -120
  145. package/dist/cjs/vendor/react-native/emitter/_EventSubscription.cjs +31 -32
  146. package/dist/cjs/vendor/react-native/emitter/_EventSubscriptionVendor.cjs +80 -81
  147. package/dist/cjs/vendor/react-native/infoLog/index.cjs +17 -18
  148. package/dist/cjs/vendor/react-native/useRefEffect.cjs +26 -27
  149. package/dist/cjs/vendor/react-native/vendor/emitter/EventEmitter.cjs +88 -89
  150. package/dist/cjs/without-animated.cjs +255 -267
  151. package/dist/esm/AccessibilityInfo/index.mjs +69 -69
  152. package/dist/esm/AccessibilityInfo/index.mjs.map +1 -1
  153. package/dist/esm/ActivityIndicator/index.mjs +66 -78
  154. package/dist/esm/ActivityIndicator/index.mjs.map +1 -1
  155. package/dist/esm/Alert/index.mjs +4 -3
  156. package/dist/esm/Alert/index.mjs.map +1 -1
  157. package/dist/esm/AppRegistry/AppContainer.mjs +21 -28
  158. package/dist/esm/AppRegistry/AppContainer.mjs.map +1 -1
  159. package/dist/esm/AppRegistry/index.mjs +58 -65
  160. package/dist/esm/AppRegistry/index.mjs.map +1 -1
  161. package/dist/esm/AppRegistry/renderApplication.mjs +30 -40
  162. package/dist/esm/AppRegistry/renderApplication.mjs.map +1 -1
  163. package/dist/esm/AppState/index.mjs +48 -50
  164. package/dist/esm/AppState/index.mjs.map +1 -1
  165. package/dist/esm/Appearance/index.mjs +27 -31
  166. package/dist/esm/Appearance/index.mjs.map +1 -1
  167. package/dist/esm/BackHandler/index.mjs +6 -7
  168. package/dist/esm/BackHandler/index.mjs.map +1 -1
  169. package/dist/esm/Clipboard/index.mjs +37 -36
  170. package/dist/esm/Clipboard/index.mjs.map +1 -1
  171. package/dist/esm/DeviceEmitter.mjs +2 -0
  172. package/dist/esm/DeviceEmitter.mjs.map +1 -1
  173. package/dist/esm/DeviceInfo/index.mjs +37 -45
  174. package/dist/esm/DeviceInfo/index.mjs.map +1 -1
  175. package/dist/esm/Dimensions/index.mjs +72 -72
  176. package/dist/esm/Dimensions/index.mjs.map +1 -1
  177. package/dist/esm/FlatList.mjs +162 -188
  178. package/dist/esm/FlatList.mjs.map +1 -1
  179. package/dist/esm/I18nManager/index.mjs +10 -11
  180. package/dist/esm/I18nManager/index.mjs.map +1 -1
  181. package/dist/esm/Image/index.mjs +261 -285
  182. package/dist/esm/Image/index.mjs.map +1 -1
  183. package/dist/esm/Image/types.mjs +0 -2
  184. package/dist/esm/ImageBackground/index.mjs +21 -31
  185. package/dist/esm/ImageBackground/index.mjs.map +1 -1
  186. package/dist/esm/InteractionManager/TaskQueue.mjs +83 -83
  187. package/dist/esm/InteractionManager/TaskQueue.mjs.map +1 -1
  188. package/dist/esm/InteractionManager/index.mjs +89 -89
  189. package/dist/esm/InteractionManager/index.mjs.map +1 -1
  190. package/dist/esm/Keyboard/index.mjs +10 -10
  191. package/dist/esm/Keyboard/index.mjs.map +1 -1
  192. package/dist/esm/KeyboardAvoidingView/index.mjs +24 -29
  193. package/dist/esm/KeyboardAvoidingView/index.mjs.map +1 -1
  194. package/dist/esm/Libraries/Pressability/Pressability.mjs +1 -0
  195. package/dist/esm/Libraries/Pressability/Pressability.mjs.map +1 -1
  196. package/dist/esm/Libraries/Pressability/usePressability.mjs +2 -1
  197. package/dist/esm/Libraries/Pressability/usePressability.mjs.map +1 -1
  198. package/dist/esm/Linking/index.mjs +73 -71
  199. package/dist/esm/Linking/index.mjs.map +1 -1
  200. package/dist/esm/LogBox/index.mjs +5 -4
  201. package/dist/esm/LogBox/index.mjs.map +1 -1
  202. package/dist/esm/Modal/ModalAnimation.mjs +116 -126
  203. package/dist/esm/Modal/ModalAnimation.mjs.map +1 -1
  204. package/dist/esm/Modal/ModalContent.mjs +41 -51
  205. package/dist/esm/Modal/ModalContent.mjs.map +1 -1
  206. package/dist/esm/Modal/ModalPortal.mjs +22 -20
  207. package/dist/esm/Modal/ModalPortal.mjs.map +1 -1
  208. package/dist/esm/Modal/index.mjs +1 -0
  209. package/dist/esm/Modal/index.mjs.map +1 -1
  210. package/dist/esm/NativeModules/index.mjs +3 -3
  211. package/dist/esm/NativeModules/index.mjs.map +1 -1
  212. package/dist/esm/PanResponder/index.mjs +3 -3
  213. package/dist/esm/PixelRatio/index.mjs +33 -31
  214. package/dist/esm/PixelRatio/index.mjs.map +1 -1
  215. package/dist/esm/Pressable/index.mjs +114 -119
  216. package/dist/esm/Pressable/index.mjs.map +1 -1
  217. package/dist/esm/RefreshControl/index.mjs +4 -18
  218. package/dist/esm/RefreshControl/index.mjs.map +1 -1
  219. package/dist/esm/SafeAreaView/index.mjs +18 -21
  220. package/dist/esm/SafeAreaView/index.mjs.map +1 -1
  221. package/dist/esm/ScrollView/WebScrollView.mjs +244 -0
  222. package/dist/esm/ScrollView/WebScrollView.mjs.map +1 -0
  223. package/dist/esm/ScrollView/index.mjs +3 -635
  224. package/dist/esm/SectionList.mjs +3 -4
  225. package/dist/esm/Share/index.mjs +32 -30
  226. package/dist/esm/Share/index.mjs.map +1 -1
  227. package/dist/esm/StatusBar/index.mjs +2 -1
  228. package/dist/esm/StatusBar/index.mjs.map +1 -1
  229. package/dist/esm/Text/index.mjs +116 -146
  230. package/dist/esm/Text/index.mjs.map +1 -1
  231. package/dist/esm/Text/types.mjs +0 -2
  232. package/dist/esm/TextInput/index.mjs +265 -336
  233. package/dist/esm/TextInput/index.mjs.map +1 -1
  234. package/dist/esm/TextInput/types.mjs +0 -2
  235. package/dist/esm/TouchableNativeFeedback.mjs +2 -2
  236. package/dist/esm/TouchableOpacity.mjs +75 -73
  237. package/dist/esm/TouchableOpacity.mjs.map +1 -1
  238. package/dist/esm/TouchableWithoutFeedback.mjs +49 -48
  239. package/dist/esm/TouchableWithoutFeedback.mjs.map +1 -1
  240. package/dist/esm/UnimplementedView.mjs +11 -11
  241. package/dist/esm/UnimplementedView.mjs.map +1 -1
  242. package/dist/esm/Vibration/index.mjs +11 -10
  243. package/dist/esm/Vibration/index.mjs.map +1 -1
  244. package/dist/esm/View/index.mjs +73 -97
  245. package/dist/esm/View/index.mjs.map +1 -1
  246. package/dist/esm/View/types.mjs +0 -2
  247. package/dist/esm/VirtualizedList.mjs +3 -4
  248. package/dist/esm/codegenNativeCommands.mjs +8 -0
  249. package/dist/esm/codegenNativeCommands.mjs.map +1 -0
  250. package/dist/esm/codegenNativeComponent.mjs +5 -3
  251. package/dist/esm/codegenNativeComponent.mjs.map +1 -1
  252. package/dist/esm/createElement/index.mjs +35 -45
  253. package/dist/esm/createElement/index.mjs.map +1 -1
  254. package/dist/esm/createReactDOMStyle.mjs +2 -0
  255. package/dist/esm/createReactDOMStyle.mjs.map +1 -1
  256. package/dist/esm/index.js +15 -10
  257. package/dist/esm/index.js.map +1 -1
  258. package/dist/esm/index.mjs +15 -10
  259. package/dist/esm/index.mjs.map +1 -1
  260. package/dist/esm/modules/requestIdleCallback.mjs +13 -12
  261. package/dist/esm/modules/requestIdleCallback.mjs.map +1 -1
  262. package/dist/esm/preprocess.mjs +3 -3
  263. package/dist/esm/render/index.mjs +1 -0
  264. package/dist/esm/render/index.mjs.map +1 -1
  265. package/dist/esm/styleTypes.mjs +0 -2
  266. package/dist/esm/types.mjs +0 -2
  267. package/dist/esm/useColorScheme/index.mjs +11 -11
  268. package/dist/esm/useColorScheme/index.mjs.map +1 -1
  269. package/dist/esm/useLocaleContext/index.mjs +2 -2
  270. package/dist/esm/useWindowDimensions/index.mjs +16 -16
  271. package/dist/esm/useWindowDimensions/index.mjs.map +1 -1
  272. package/dist/esm/vendor/react-native/Animated/Animated.mjs +12 -10
  273. package/dist/esm/vendor/react-native/Animated/Animated.mjs.map +1 -1
  274. package/dist/esm/vendor/react-native/Animated/AnimatedEvent.mjs +124 -127
  275. package/dist/esm/vendor/react-native/Animated/AnimatedEvent.mjs.map +1 -1
  276. package/dist/esm/vendor/react-native/Animated/AnimatedImplementation.mjs +485 -515
  277. package/dist/esm/vendor/react-native/Animated/AnimatedImplementation.mjs.map +1 -1
  278. package/dist/esm/vendor/react-native/Animated/AnimatedMock.mjs +85 -91
  279. package/dist/esm/vendor/react-native/Animated/AnimatedMock.mjs.map +1 -1
  280. package/dist/esm/vendor/react-native/Animated/AnimatedPlatformConfig.mjs +0 -2
  281. package/dist/esm/vendor/react-native/Animated/Easing.mjs +169 -167
  282. package/dist/esm/vendor/react-native/Animated/Easing.mjs.map +1 -1
  283. package/dist/esm/vendor/react-native/Animated/NativeAnimatedHelper.mjs +273 -296
  284. package/dist/esm/vendor/react-native/Animated/NativeAnimatedHelper.mjs.map +1 -1
  285. package/dist/esm/vendor/react-native/Animated/NativeAnimatedModule.mjs +26 -26
  286. package/dist/esm/vendor/react-native/Animated/NativeAnimatedModule.mjs.map +1 -1
  287. package/dist/esm/vendor/react-native/Animated/NativeAnimatedTurboModule.mjs +24 -23
  288. package/dist/esm/vendor/react-native/Animated/NativeAnimatedTurboModule.mjs.map +1 -1
  289. package/dist/esm/vendor/react-native/Animated/SpringConfig.mjs +48 -47
  290. package/dist/esm/vendor/react-native/Animated/SpringConfig.mjs.map +1 -1
  291. package/dist/esm/vendor/react-native/Animated/animations/Animation.mjs +38 -39
  292. package/dist/esm/vendor/react-native/Animated/animations/Animation.mjs.map +1 -1
  293. package/dist/esm/vendor/react-native/Animated/animations/DecayAnimation.mjs +60 -62
  294. package/dist/esm/vendor/react-native/Animated/animations/DecayAnimation.mjs.map +1 -1
  295. package/dist/esm/vendor/react-native/Animated/animations/SpringAnimation.mjs +196 -198
  296. package/dist/esm/vendor/react-native/Animated/animations/SpringAnimation.mjs.map +1 -1
  297. package/dist/esm/vendor/react-native/Animated/animations/TimingAnimation.mjs +93 -99
  298. package/dist/esm/vendor/react-native/Animated/animations/TimingAnimation.mjs.map +1 -1
  299. package/dist/esm/vendor/react-native/Animated/bezier.mjs +68 -71
  300. package/dist/esm/vendor/react-native/Animated/bezier.mjs.map +1 -1
  301. package/dist/esm/vendor/react-native/Animated/components/AnimatedFlatList.mjs +7 -5
  302. package/dist/esm/vendor/react-native/Animated/components/AnimatedFlatList.mjs.map +1 -1
  303. package/dist/esm/vendor/react-native/Animated/components/AnimatedImage.mjs +3 -1
  304. package/dist/esm/vendor/react-native/Animated/components/AnimatedImage.mjs.map +1 -1
  305. package/dist/esm/vendor/react-native/Animated/components/AnimatedScrollView.mjs +7 -5
  306. package/dist/esm/vendor/react-native/Animated/components/AnimatedScrollView.mjs.map +1 -1
  307. package/dist/esm/vendor/react-native/Animated/components/AnimatedSectionList.mjs +7 -5
  308. package/dist/esm/vendor/react-native/Animated/components/AnimatedSectionList.mjs.map +1 -1
  309. package/dist/esm/vendor/react-native/Animated/components/AnimatedText.mjs +2 -0
  310. package/dist/esm/vendor/react-native/Animated/components/AnimatedText.mjs.map +1 -1
  311. package/dist/esm/vendor/react-native/Animated/components/AnimatedView.mjs +2 -0
  312. package/dist/esm/vendor/react-native/Animated/components/AnimatedView.mjs.map +1 -1
  313. package/dist/esm/vendor/react-native/Animated/createAnimatedComponent.mjs +15 -19
  314. package/dist/esm/vendor/react-native/Animated/createAnimatedComponent.mjs.map +1 -1
  315. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedAddition.mjs +37 -35
  316. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedAddition.mjs.map +1 -1
  317. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedColor.mjs +230 -230
  318. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedColor.mjs.map +1 -1
  319. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedDiffClamp.mjs +45 -43
  320. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedDiffClamp.mjs.map +1 -1
  321. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedDivision.mjs +51 -49
  322. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedDivision.mjs.map +1 -1
  323. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedInterpolation.mjs +172 -172
  324. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedInterpolation.mjs.map +1 -1
  325. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedModulo.mjs +35 -33
  326. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedModulo.mjs.map +1 -1
  327. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedMultiplication.mjs +37 -35
  328. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedMultiplication.mjs.map +1 -1
  329. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedNode.mjs +138 -139
  330. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedNode.mjs.map +1 -1
  331. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedProps.mjs +119 -117
  332. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedProps.mjs.map +1 -1
  333. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedStyle.mjs +99 -99
  334. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedStyle.mjs.map +1 -1
  335. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedSubtraction.mjs +37 -35
  336. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedSubtraction.mjs.map +1 -1
  337. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedTracking.mjs +60 -59
  338. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedTracking.mjs.map +1 -1
  339. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedTransform.mjs +95 -93
  340. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedTransform.mjs.map +1 -1
  341. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedValue.mjs +198 -199
  342. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedValue.mjs.map +1 -1
  343. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedValueXY.mjs +82 -86
  344. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedValueXY.mjs.map +1 -1
  345. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedWithChildren.mjs +56 -54
  346. package/dist/esm/vendor/react-native/Animated/nodes/AnimatedWithChildren.mjs.map +1 -1
  347. package/dist/esm/vendor/react-native/Animated/useAnimatedProps.mjs +61 -59
  348. package/dist/esm/vendor/react-native/Animated/useAnimatedProps.mjs.map +1 -1
  349. package/dist/esm/vendor/react-native/Batchinator/index.mjs +32 -40
  350. package/dist/esm/vendor/react-native/Batchinator/index.mjs.map +1 -1
  351. package/dist/esm/vendor/react-native/EventEmitter/NativeEventEmitter.mjs +40 -40
  352. package/dist/esm/vendor/react-native/EventEmitter/NativeEventEmitter.mjs.map +1 -1
  353. package/dist/esm/vendor/react-native/EventEmitter/RCTDeviceEventEmitter.mjs +2 -0
  354. package/dist/esm/vendor/react-native/EventEmitter/RCTDeviceEventEmitter.mjs.map +1 -1
  355. package/dist/esm/vendor/react-native/FeatureFlags.mjs +7 -6
  356. package/dist/esm/vendor/react-native/FeatureFlags.mjs.map +1 -1
  357. package/dist/esm/vendor/react-native/FillRateHelper/index.mjs +150 -156
  358. package/dist/esm/vendor/react-native/FillRateHelper/index.mjs.map +1 -1
  359. package/dist/esm/vendor/react-native/FlatList/index.mjs +244 -271
  360. package/dist/esm/vendor/react-native/FlatList/index.mjs.map +1 -1
  361. package/dist/esm/vendor/react-native/JSEventLoopWatchdog/index.mjs +52 -52
  362. package/dist/esm/vendor/react-native/JSEventLoopWatchdog/index.mjs.map +1 -1
  363. package/dist/esm/vendor/react-native/LayoutAnimation/index.mjs +73 -74
  364. package/dist/esm/vendor/react-native/LayoutAnimation/index.mjs.map +1 -1
  365. package/dist/esm/vendor/react-native/PanResponder/index.mjs +153 -151
  366. package/dist/esm/vendor/react-native/PanResponder/index.mjs.map +1 -1
  367. package/dist/esm/vendor/react-native/PooledClass/index.mjs +27 -26
  368. package/dist/esm/vendor/react-native/PooledClass/index.mjs.map +1 -1
  369. package/dist/esm/vendor/react-native/ReactNative/ReactNativeFeatureFlags.mjs +6 -5
  370. package/dist/esm/vendor/react-native/ReactNative/ReactNativeFeatureFlags.mjs.map +1 -1
  371. package/dist/esm/vendor/react-native/SectionList/index.mjs +78 -85
  372. package/dist/esm/vendor/react-native/SectionList/index.mjs.map +1 -1
  373. package/dist/esm/vendor/react-native/StaticContainer/index.mjs +11 -9
  374. package/dist/esm/vendor/react-native/StaticContainer/index.mjs.map +1 -1
  375. package/dist/esm/vendor/react-native/StaticRenderer/index.mjs +10 -8
  376. package/dist/esm/vendor/react-native/StaticRenderer/index.mjs.map +1 -1
  377. package/dist/esm/vendor/react-native/TouchHistoryMath/index.mjs +67 -94
  378. package/dist/esm/vendor/react-native/TouchHistoryMath/index.mjs.map +1 -1
  379. package/dist/esm/vendor/react-native/TurboModule/RCTExport.mjs +3 -6
  380. package/dist/esm/vendor/react-native/TurboModule/RCTExport.mjs.map +1 -1
  381. package/dist/esm/vendor/react-native/TurboModule/TurboModuleRegistry.mjs +6 -4
  382. package/dist/esm/vendor/react-native/TurboModule/TurboModuleRegistry.mjs.map +1 -1
  383. package/dist/esm/vendor/react-native/Types/CoreEventTypes.mjs +105 -106
  384. package/dist/esm/vendor/react-native/Types/CoreEventTypes.mjs.map +1 -1
  385. package/dist/esm/vendor/react-native/Utilities/Platform.mjs +2 -0
  386. package/dist/esm/vendor/react-native/Utilities/Platform.mjs.map +1 -1
  387. package/dist/esm/vendor/react-native/Utilities/clamp.mjs +8 -7
  388. package/dist/esm/vendor/react-native/Utilities/clamp.mjs.map +1 -1
  389. package/dist/esm/vendor/react-native/Utilities/setAndForwardRef.mjs +11 -13
  390. package/dist/esm/vendor/react-native/Utilities/setAndForwardRef.mjs.map +1 -1
  391. package/dist/esm/vendor/react-native/Utilities/useMergeRefs.mjs +13 -13
  392. package/dist/esm/vendor/react-native/Utilities/useMergeRefs.mjs.map +1 -1
  393. package/dist/esm/vendor/react-native/Utilities/useRefEffect.mjs +12 -10
  394. package/dist/esm/vendor/react-native/Utilities/useRefEffect.mjs.map +1 -1
  395. package/dist/esm/vendor/react-native/ViewabilityHelper/index.mjs +140 -146
  396. package/dist/esm/vendor/react-native/ViewabilityHelper/index.mjs.map +1 -1
  397. package/dist/esm/vendor/react-native/ViewabilityHelper.mjs +133 -139
  398. package/dist/esm/vendor/react-native/ViewabilityHelper.mjs.map +1 -1
  399. package/dist/esm/vendor/react-native/VirtualizeUtils/index.mjs +107 -106
  400. package/dist/esm/vendor/react-native/VirtualizeUtils/index.mjs.map +1 -1
  401. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.mjs +88 -82
  402. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.mjs.map +1 -1
  403. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.mjs +49 -47
  404. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.mjs.map +1 -1
  405. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.mjs +49 -50
  406. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.mjs.map +1 -1
  407. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.mjs +87 -135
  408. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.mjs.map +1 -1
  409. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.mjs +38 -38
  410. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.mjs.map +1 -1
  411. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.mjs +36 -35
  412. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.mjs.map +1 -1
  413. package/dist/esm/vendor/react-native/VirtualizedList/index.mjs +207 -266
  414. package/dist/esm/vendor/react-native/VirtualizedList/index.mjs.map +1 -1
  415. package/dist/esm/vendor/react-native/VirtualizedSectionList/index.mjs +107 -119
  416. package/dist/esm/vendor/react-native/VirtualizedSectionList/index.mjs.map +1 -1
  417. package/dist/esm/vendor/react-native/deepDiffer/index.mjs +43 -42
  418. package/dist/esm/vendor/react-native/deepDiffer/index.mjs.map +1 -1
  419. package/dist/esm/vendor/react-native/emitter/EventEmitter.mjs +2 -0
  420. package/dist/esm/vendor/react-native/emitter/EventEmitter.mjs.map +1 -1
  421. package/dist/esm/vendor/react-native/emitter/EventSubscription.mjs +0 -2
  422. package/dist/esm/vendor/react-native/emitter/_EmitterSubscription.mjs +29 -27
  423. package/dist/esm/vendor/react-native/emitter/_EmitterSubscription.mjs.map +1 -1
  424. package/dist/esm/vendor/react-native/emitter/_EventEmitter.mjs +101 -103
  425. package/dist/esm/vendor/react-native/emitter/_EventEmitter.mjs.map +1 -1
  426. package/dist/esm/vendor/react-native/emitter/_EventSubscription.mjs +16 -15
  427. package/dist/esm/vendor/react-native/emitter/_EventSubscription.mjs.map +1 -1
  428. package/dist/esm/vendor/react-native/emitter/_EventSubscriptionVendor.mjs +66 -64
  429. package/dist/esm/vendor/react-native/emitter/_EventSubscriptionVendor.mjs.map +1 -1
  430. package/dist/esm/vendor/react-native/infoLog/index.mjs +2 -1
  431. package/dist/esm/vendor/react-native/infoLog/index.mjs.map +1 -1
  432. package/dist/esm/vendor/react-native/useRefEffect.mjs +12 -10
  433. package/dist/esm/vendor/react-native/useRefEffect.mjs.map +1 -1
  434. package/dist/esm/vendor/react-native/vendor/emitter/EventEmitter.mjs +71 -70
  435. package/dist/esm/vendor/react-native/vendor/emitter/EventEmitter.mjs.map +1 -1
  436. package/dist/esm/without-animated.mjs +172 -187
  437. package/dist/esm/without-animated.mjs.map +1 -1
  438. package/package.json +12 -12
  439. package/src/ScrollView/WebScrollView.tsx +383 -0
  440. package/src/ScrollView/index.tsx +6 -892
  441. package/src/codegenNativeCommands.ts +6 -0
  442. package/src/codegenNativeComponent.ts +2 -2
  443. package/src/index.tsx +3 -0
  444. package/src/without-animated.tsx +1 -0
  445. package/dist/cjs/ActivityIndicator/__tests__/index-test.cjs +0 -209
  446. package/dist/cjs/AppRegistry/__tests__/index-test.cjs +0 -97
  447. package/dist/cjs/AppRegistry/__tests__/index-test.node.cjs +0 -162
  448. package/dist/cjs/AppState/__tests__/index-test.cjs +0 -38
  449. package/dist/cjs/Dimensions/__tests__/index-test.cjs +0 -67
  450. package/dist/cjs/ImageBackground/__tests__/index-test.cjs +0 -72
  451. package/dist/cjs/Linking/__tests__/index-test.cjs +0 -56
  452. package/dist/cjs/ScrollView/ScrollViewBase.cjs +0 -167
  453. package/dist/cjs/codegenNativeCommand.cjs +0 -31
  454. package/dist/cjs/createElement/__tests__/index-test.cjs +0 -828
  455. package/dist/esm/ActivityIndicator/__tests__/index-test.mjs +0 -186
  456. package/dist/esm/ActivityIndicator/__tests__/index-test.mjs.map +0 -1
  457. package/dist/esm/AppRegistry/__tests__/index-test.mjs +0 -74
  458. package/dist/esm/AppRegistry/__tests__/index-test.mjs.map +0 -1
  459. package/dist/esm/AppRegistry/__tests__/index-test.node.mjs +0 -139
  460. package/dist/esm/AppRegistry/__tests__/index-test.node.mjs.map +0 -1
  461. package/dist/esm/AppState/__tests__/index-test.mjs +0 -15
  462. package/dist/esm/AppState/__tests__/index-test.mjs.map +0 -1
  463. package/dist/esm/Dimensions/__tests__/index-test.mjs +0 -44
  464. package/dist/esm/Dimensions/__tests__/index-test.mjs.map +0 -1
  465. package/dist/esm/Image/types.mjs.map +0 -1
  466. package/dist/esm/ImageBackground/__tests__/index-test.mjs +0 -49
  467. package/dist/esm/ImageBackground/__tests__/index-test.mjs.map +0 -1
  468. package/dist/esm/Linking/__tests__/index-test.mjs +0 -33
  469. package/dist/esm/Linking/__tests__/index-test.mjs.map +0 -1
  470. package/dist/esm/PanResponder/index.mjs.map +0 -1
  471. package/dist/esm/ScrollView/ScrollViewBase.mjs +0 -130
  472. package/dist/esm/ScrollView/ScrollViewBase.mjs.map +0 -1
  473. package/dist/esm/ScrollView/index.mjs.map +0 -1
  474. package/dist/esm/SectionList.mjs.map +0 -1
  475. package/dist/esm/Text/types.mjs.map +0 -1
  476. package/dist/esm/TextInput/types.mjs.map +0 -1
  477. package/dist/esm/TouchableNativeFeedback.mjs.map +0 -1
  478. package/dist/esm/View/types.mjs.map +0 -1
  479. package/dist/esm/VirtualizedList.mjs.map +0 -1
  480. package/dist/esm/codegenNativeCommand.mjs +0 -6
  481. package/dist/esm/codegenNativeCommand.mjs.map +0 -1
  482. package/dist/esm/createElement/__tests__/index-test.mjs +0 -805
  483. package/dist/esm/createElement/__tests__/index-test.mjs.map +0 -1
  484. package/dist/esm/preprocess.mjs.map +0 -1
  485. package/dist/esm/styleTypes.mjs.map +0 -1
  486. package/dist/esm/types.mjs.map +0 -1
  487. package/dist/esm/useLocaleContext/index.mjs.map +0 -1
  488. package/dist/esm/vendor/react-native/Animated/AnimatedPlatformConfig.mjs.map +0 -1
  489. package/dist/esm/vendor/react-native/emitter/EventSubscription.mjs.map +0 -1
  490. package/src/ActivityIndicator/__tests__/__snapshots__/index-test.js.snap +0 -466
  491. package/src/ActivityIndicator/__tests__/index-test.tsx +0 -147
  492. package/src/AppRegistry/__tests__/index-test.node.tsx +0 -144
  493. package/src/AppRegistry/__tests__/index-test.tsx +0 -94
  494. package/src/AppState/__tests__/index-test.tsx +0 -24
  495. package/src/Dimensions/__tests__/index-test.tsx +0 -54
  496. package/src/ImageBackground/__tests__/index-test.tsx +0 -49
  497. package/src/Linking/__tests__/index-test.tsx +0 -37
  498. package/src/Pressable/__tests__/__snapshots__/index-test.js.snap +0 -196
  499. package/src/ScrollView/ScrollViewBase.tsx +0 -183
  500. package/src/ScrollView/__tests__/__snapshots__/index-test.js.snap +0 -49
  501. package/src/Text/__tests__/__snapshots__/index-test.js.snap +0 -218
  502. package/src/codegenNativeCommand.ts +0 -6
  503. package/src/createElement/__tests__/__snapshots__/index-test.js.snap +0 -13
  504. package/src/createElement/__tests__/index-test.tsx +0 -647
@@ -10,277 +10,218 @@ import { ViewabilityHelper } from "../ViewabilityHelper.mjs";
10
10
  import { CellRenderer } from "./VirtualizedListCellRenderer.mjs";
11
11
  import { VirtualizedListContext } from "./VirtualizedListContext.mjs";
12
12
  import { jsx } from "react/jsx-runtime";
13
+
13
14
  const __DEV__ = process.env.NODE_ENV !== "production";
14
15
  function horizontalOrDefault(horizontal) {
15
- return horizontal ?? false;
16
+ return horizontal ?? false;
16
17
  }
17
18
  function scrollEventThrottleOrDefault(scrollEventThrottle) {
18
- return scrollEventThrottle ?? 50;
19
- }
20
- class VirtualizedList extends StateSafePureComponent {
21
- static contextType = VirtualizedListContext;
22
- constructor(props) {
23
- super(props);
24
- this._nestedChildLists = new ChildListCollection();
25
- this._viewabilityTuples = [];
26
- this._scrollMetrics = {
27
- contentLength: 0,
28
- dOffset: 0,
29
- dt: 10,
30
- offset: 0,
31
- timestamp: 0,
32
- velocity: 0,
33
- visibleLength: 0
34
- };
35
- this._highestMeasuredFrameIndex = 0;
36
- this._headerLength = 0;
37
- this._footerLength = 0;
38
- this._averageCellLength = 0;
39
- this._hasWarned = {};
40
- this._fillRateHelper = new FillRateHelper(this._getFrameMetrics);
41
- this._updateCellsToRenderBatcher = new Batchinator(this._updateCellsToRender, this.props.updateCellsBatchingPeriod ?? 50);
42
- if (this.props.viewabilityConfig && this.props.onViewableItemsChanged) {
43
- this._viewabilityTuples.push({
44
- viewabilityHelper: new ViewabilityHelper(this.props.viewabilityConfig),
45
- onViewableItemsChanged: this.props.onViewableItemsChanged
46
- });
47
- }
48
- }
49
- scrollToEnd(params) {
50
- const animated = params ? params.animated : true;
51
- const veryLast = this.props.getItemCount(this.props.data) - 1;
52
- if (veryLast < 0) {
53
- return;
54
- }
55
- const frame = this.__getFrameMetricsApprox(veryLast, this.props);
56
- const offset = Math.max(0, frame.offset + frame.length + this._footerLength - this._scrollMetrics.visibleLength);
57
- if (this._scrollRef == null) {
58
- return;
59
- }
60
- if (this._scrollRef.scrollTo == null) {
61
- console.warn("No scrollTo method provided. This may be because you have two nested VirtualizedLists with the same orientation, or because you are using a custom component that does not implement scrollTo.");
62
- return;
63
- }
64
- this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
65
- x: offset,
66
- animated
67
- } : {
68
- y: offset,
69
- animated
70
- });
71
- }
72
- scrollToIndex(params) {
73
- const {
74
- data,
75
- horizontal,
76
- getItemCount,
77
- getItemLayout,
78
- onScrollToIndexFailed
79
- } = this.props;
80
- const {
81
- animated,
82
- index,
83
- viewOffset,
84
- viewPosition
85
- } = params;
86
- invariant(index >= 0, `scrollToIndex out of range: requested index ${index} but minimum is 0`);
87
- invariant(getItemCount(data) >= 1, `scrollToIndex out of range: item length ${getItemCount(data)} but minimum is 1`);
88
- invariant(index < getItemCount(data), `scrollToIndex out of range: requested index ${index} is out of 0 to ${getItemCount(data) - 1}`);
89
- if (!getItemLayout && index > this._highestMeasuredFrameIndex) {
90
- invariant(!!onScrollToIndexFailed, "scrollToIndex should be used in conjunction with getItemLayout or onScrollToIndexFailed, otherwise there is no way to know the location of offscreen indices or handle failures.");
91
- onScrollToIndexFailed({
92
- averageItemLength: this._averageCellLength,
93
- highestMeasuredFrameIndex: this._highestMeasuredFrameIndex,
94
- index
95
- });
96
- return;
97
- }
98
- const frame = this.__getFrameMetricsApprox(Math.floor(index), this.props);
99
- const offset = Math.max(0, this._getOffsetApprox(index, this.props) - (viewPosition || 0) * (this._scrollMetrics.visibleLength - frame.length)) - (viewOffset || 0);
100
- if (this._scrollRef == null) {
101
- return;
102
- }
103
- this._scrollRef.scrollTo(horizontalOrDefault(horizontal) ? {
104
- x: offset,
105
- animated
106
- } : {
107
- y: offset,
108
- animated
109
- });
110
- }
111
- scrollToItem(params) {
112
- const {
113
- data,
114
- getItem,
115
- getItemCount,
116
- horizontal,
117
- onScrollToIndexFailed
118
- } = this.props;
119
- const {
120
- animated,
121
- item,
122
- viewPosition,
123
- viewOffset
124
- } = params;
125
- const index = this.props.data.indexOf(item);
126
- if (index !== -1) {
127
- this.scrollToIndex({
128
- animated,
129
- index,
130
- viewOffset,
131
- viewPosition
132
- });
133
- } else {
134
- const itemCount = getItemCount(data);
135
- for (let i = 0; i < itemCount; i++) {
136
- if (getItem(data, i) === item) {
137
- this.scrollToIndex({
138
- animated,
139
- index: i,
140
- viewOffset,
141
- viewPosition
142
- });
143
- break;
144
- }
145
- }
146
- }
147
- }
148
- scrollToOffset(params) {
149
- const {
150
- animated,
151
- offset
152
- } = params;
153
- if (this._scrollRef == null) {
154
- return;
155
- }
156
- this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
157
- x: offset,
158
- animated
159
- } : {
160
- y: offset,
161
- animated
162
- });
163
- }
164
- recordInteraction() {
165
- this._nestedChildLists.forEach(childList => {
166
- childList.recordInteraction();
167
- });
168
- this._viewabilityTuples.forEach(viewabilityTuple => {
169
- viewabilityTuple.viewabilityHelper.recordInteraction();
170
- });
171
- }
172
- flashScrollIndicators() {
173
- if (this._scrollRef && this._scrollRef.flashScrollIndicators) {
174
- this._scrollRef.flashScrollIndicators();
175
- }
176
- }
177
- getScrollResponder() {
178
- if (this._scrollRef && this._scrollRef.getScrollResponder) {
179
- return this._scrollRef.getScrollResponder();
180
- }
181
- }
182
- getScrollableNode() {
183
- if (this._scrollRef && this._scrollRef.getScrollableNode) {
184
- return this._scrollRef.getScrollableNode();
185
- }
186
- }
187
- getScrollRef() {
188
- return this._scrollRef;
189
- }
190
- setNativeProps(props) {
191
- if (this._scrollRef) {
192
- this._scrollRef.setNativeProps(props);
193
- }
194
- }
195
- render() {
196
- const {
197
- ListEmptyComponent,
198
- ListFooterComponent,
199
- ListHeaderComponent,
200
- data,
201
- debug,
202
- disableVirtualization,
203
- getItem,
204
- getItemCount,
205
- getItemLayout,
206
- horizontal,
207
- keyExtractor,
208
- numColumns,
209
- onEndReached,
210
- onEndReachedThreshold,
211
- onLayout,
212
- onRefresh,
213
- onScroll,
214
- onScrollBeginDrag,
215
- onScrollEndDrag,
216
- onMomentumScrollBegin,
217
- onMomentumScrollEnd,
218
- onStartReached,
219
- onStartReachedThreshold,
220
- onViewableItemsChanged,
221
- refreshing,
222
- removeClippedSubviews,
223
- renderItem,
224
- viewabilityConfig,
225
- viewabilityConfigCallbackPairs,
226
- ...restProps
227
- } = this.props;
228
- const itemCount = getItemCount(data);
229
- if (itemCount === 0) {
230
- if (!ListEmptyComponent) return null;
231
- return isValidElement(ListEmptyComponent) ? ListEmptyComponent : /* @__PURE__ */jsx(ListEmptyComponent, {});
232
- }
233
- return /* @__PURE__ */jsx(ScrollView, {
234
- ...restProps,
235
- ref: this._captureRef,
236
- onContentSizeChange: this._onContentSizeChange,
237
- onLayout: this._onLayout,
238
- onScroll: this._onScroll,
239
- refreshControl: onRefresh && /* @__PURE__ */jsx(RefreshControl, {
240
- refreshing,
241
- onRefresh
242
- }),
243
- scrollEventThrottle: scrollEventThrottleOrDefault(this.props.scrollEventThrottle),
244
- removeClippedSubviews,
245
- children: this._renderChildren()
246
- });
247
- }
248
- _renderChildren() {
249
- const {
250
- data,
251
- getItem,
252
- getItemCount,
253
- renderItem
254
- } = this.props;
255
- const items = [];
256
- for (let i = 0; i < getItemCount(data); i++) {
257
- const item = getItem(data, i);
258
- items.push(/* @__PURE__ */jsx(CellRenderer, {
259
- cellKey: String(i),
260
- index: i,
261
- item,
262
- renderItem
263
- }, this.props.keyExtractor ? this.props.keyExtractor(item, i) : i));
264
- }
265
- return items;
266
- }
267
- _captureRef = ref => {
268
- this._scrollRef = ref;
269
- };
270
- _onContentSizeChange = (width, height) => {};
271
- _onLayout = event => {};
272
- _onScroll = event => {};
273
- __getFrameMetricsApprox(index, props) {
274
- const frame = {
275
- length: this._averageCellLength,
276
- offset: this._averageCellLength * index
277
- };
278
- return frame;
279
- }
280
- _getOffsetApprox(index, props) {
281
- return this.__getFrameMetricsApprox(index, props).offset;
282
- }
19
+ return scrollEventThrottle ?? 50;
283
20
  }
21
+ var VirtualizedList = class extends StateSafePureComponent {
22
+ static contextType = VirtualizedListContext;
23
+ constructor(props) {
24
+ super(props);
25
+ this._nestedChildLists = new ChildListCollection();
26
+ this._viewabilityTuples = [];
27
+ this._scrollMetrics = {
28
+ contentLength: 0,
29
+ dOffset: 0,
30
+ dt: 10,
31
+ offset: 0,
32
+ timestamp: 0,
33
+ velocity: 0,
34
+ visibleLength: 0
35
+ };
36
+ this._highestMeasuredFrameIndex = 0;
37
+ this._headerLength = 0;
38
+ this._footerLength = 0;
39
+ this._averageCellLength = 0;
40
+ this._hasWarned = {};
41
+ this._fillRateHelper = new FillRateHelper(this._getFrameMetrics);
42
+ this._updateCellsToRenderBatcher = new Batchinator(this._updateCellsToRender, this.props.updateCellsBatchingPeriod ?? 50);
43
+ if (this.props.viewabilityConfig && this.props.onViewableItemsChanged) {
44
+ this._viewabilityTuples.push({
45
+ viewabilityHelper: new ViewabilityHelper(this.props.viewabilityConfig),
46
+ onViewableItemsChanged: this.props.onViewableItemsChanged
47
+ });
48
+ }
49
+ }
50
+ scrollToEnd(params) {
51
+ const animated = params ? params.animated : true;
52
+ const veryLast = this.props.getItemCount(this.props.data) - 1;
53
+ if (veryLast < 0) {
54
+ return;
55
+ }
56
+ const frame = this.__getFrameMetricsApprox(veryLast, this.props);
57
+ const offset = Math.max(0, frame.offset + frame.length + this._footerLength - this._scrollMetrics.visibleLength);
58
+ if (this._scrollRef == null) {
59
+ return;
60
+ }
61
+ if (this._scrollRef.scrollTo == null) {
62
+ console.warn("No scrollTo method provided. This may be because you have two nested VirtualizedLists with the same orientation, or because you are using a custom component that does not implement scrollTo.");
63
+ return;
64
+ }
65
+ this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
66
+ x: offset,
67
+ animated
68
+ } : {
69
+ y: offset,
70
+ animated
71
+ });
72
+ }
73
+ scrollToIndex(params) {
74
+ const { data, horizontal, getItemCount, getItemLayout, onScrollToIndexFailed } = this.props;
75
+ const { animated, index, viewOffset, viewPosition } = params;
76
+ invariant(index >= 0, `scrollToIndex out of range: requested index ${index} but minimum is 0`);
77
+ invariant(getItemCount(data) >= 1, `scrollToIndex out of range: item length ${getItemCount(data)} but minimum is 1`);
78
+ invariant(index < getItemCount(data), `scrollToIndex out of range: requested index ${index} is out of 0 to ${getItemCount(data) - 1}`);
79
+ if (!getItemLayout && index > this._highestMeasuredFrameIndex) {
80
+ invariant(!!onScrollToIndexFailed, "scrollToIndex should be used in conjunction with getItemLayout or onScrollToIndexFailed, otherwise there is no way to know the location of offscreen indices or handle failures.");
81
+ onScrollToIndexFailed({
82
+ averageItemLength: this._averageCellLength,
83
+ highestMeasuredFrameIndex: this._highestMeasuredFrameIndex,
84
+ index
85
+ });
86
+ return;
87
+ }
88
+ const frame = this.__getFrameMetricsApprox(Math.floor(index), this.props);
89
+ const offset = Math.max(0, this._getOffsetApprox(index, this.props) - (viewPosition || 0) * (this._scrollMetrics.visibleLength - frame.length)) - (viewOffset || 0);
90
+ if (this._scrollRef == null) {
91
+ return;
92
+ }
93
+ this._scrollRef.scrollTo(horizontalOrDefault(horizontal) ? {
94
+ x: offset,
95
+ animated
96
+ } : {
97
+ y: offset,
98
+ animated
99
+ });
100
+ }
101
+ scrollToItem(params) {
102
+ const { data, getItem, getItemCount, horizontal, onScrollToIndexFailed } = this.props;
103
+ const { animated, item, viewPosition, viewOffset } = params;
104
+ const index = this.props.data.indexOf(item);
105
+ if (index !== -1) {
106
+ this.scrollToIndex({
107
+ animated,
108
+ index,
109
+ viewOffset,
110
+ viewPosition
111
+ });
112
+ } else {
113
+ const itemCount = getItemCount(data);
114
+ for (let i = 0; i < itemCount; i++) {
115
+ if (getItem(data, i) === item) {
116
+ this.scrollToIndex({
117
+ animated,
118
+ index: i,
119
+ viewOffset,
120
+ viewPosition
121
+ });
122
+ break;
123
+ }
124
+ }
125
+ }
126
+ }
127
+ scrollToOffset(params) {
128
+ const { animated, offset } = params;
129
+ if (this._scrollRef == null) {
130
+ return;
131
+ }
132
+ this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
133
+ x: offset,
134
+ animated
135
+ } : {
136
+ y: offset,
137
+ animated
138
+ });
139
+ }
140
+ recordInteraction() {
141
+ this._nestedChildLists.forEach((childList) => {
142
+ childList.recordInteraction();
143
+ });
144
+ this._viewabilityTuples.forEach((viewabilityTuple) => {
145
+ viewabilityTuple.viewabilityHelper.recordInteraction();
146
+ });
147
+ }
148
+ flashScrollIndicators() {
149
+ if (this._scrollRef && this._scrollRef.flashScrollIndicators) {
150
+ this._scrollRef.flashScrollIndicators();
151
+ }
152
+ }
153
+ getScrollResponder() {
154
+ if (this._scrollRef && this._scrollRef.getScrollResponder) {
155
+ return this._scrollRef.getScrollResponder();
156
+ }
157
+ }
158
+ getScrollableNode() {
159
+ if (this._scrollRef && this._scrollRef.getScrollableNode) {
160
+ return this._scrollRef.getScrollableNode();
161
+ }
162
+ }
163
+ getScrollRef() {
164
+ return this._scrollRef;
165
+ }
166
+ setNativeProps(props) {
167
+ if (this._scrollRef) {
168
+ this._scrollRef.setNativeProps(props);
169
+ }
170
+ }
171
+ render() {
172
+ const { ListEmptyComponent, ListFooterComponent, ListHeaderComponent, data, debug, disableVirtualization, getItem, getItemCount, getItemLayout, horizontal, keyExtractor, numColumns, onEndReached, onEndReachedThreshold, onLayout, onRefresh, onScroll, onScrollBeginDrag, onScrollEndDrag, onMomentumScrollBegin, onMomentumScrollEnd, onStartReached, onStartReachedThreshold, onViewableItemsChanged, refreshing, removeClippedSubviews, renderItem, viewabilityConfig, viewabilityConfigCallbackPairs, ...restProps } = this.props;
173
+ const itemCount = getItemCount(data);
174
+ if (itemCount === 0) {
175
+ if (!ListEmptyComponent) return null;
176
+ return isValidElement(ListEmptyComponent) ? ListEmptyComponent : /* @__PURE__ */ jsx(ListEmptyComponent, {});
177
+ }
178
+ return /* @__PURE__ */ jsx(ScrollView, {
179
+ ...restProps,
180
+ ref: this._captureRef,
181
+ onContentSizeChange: this._onContentSizeChange,
182
+ onLayout: this._onLayout,
183
+ onScroll: this._onScroll,
184
+ refreshControl: onRefresh && /* @__PURE__ */ jsx(RefreshControl, {
185
+ refreshing,
186
+ onRefresh
187
+ }),
188
+ scrollEventThrottle: scrollEventThrottleOrDefault(this.props.scrollEventThrottle),
189
+ removeClippedSubviews,
190
+ children: this._renderChildren()
191
+ });
192
+ }
193
+ _renderChildren() {
194
+ const { data, getItem, getItemCount, renderItem } = this.props;
195
+ const items = [];
196
+ for (let i = 0; i < getItemCount(data); i++) {
197
+ const item = getItem(data, i);
198
+ items.push(/* @__PURE__ */ jsx(CellRenderer, {
199
+ cellKey: String(i),
200
+ index: i,
201
+ item,
202
+ renderItem
203
+ }, this.props.keyExtractor ? this.props.keyExtractor(item, i) : i));
204
+ }
205
+ return items;
206
+ }
207
+ _captureRef = (ref) => {
208
+ this._scrollRef = ref;
209
+ };
210
+ _onContentSizeChange = (width, height) => {};
211
+ _onLayout = (event) => {};
212
+ _onScroll = (event) => {};
213
+ __getFrameMetricsApprox(index, props) {
214
+ const frame = {
215
+ length: this._averageCellLength,
216
+ offset: this._averageCellLength * index
217
+ };
218
+ return frame;
219
+ }
220
+ _getOffsetApprox(index, props) {
221
+ return this.__getFrameMetricsApprox(index, props).offset;
222
+ }
223
+ };
284
224
  var VirtualizedList_default = VirtualizedList;
225
+
285
226
  export { VirtualizedList, VirtualizedList_default as default };
286
227
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["isValidElement","invariant","ScrollView","RefreshControl","Batchinator","ChildListCollection","FillRateHelper","StateSafePureComponent","ViewabilityHelper","CellRenderer","VirtualizedListContext","jsx","__DEV__","process","env","NODE_ENV","horizontalOrDefault","horizontal","scrollEventThrottleOrDefault","scrollEventThrottle","VirtualizedList","contextType","constructor","props","_nestedChildLists","_viewabilityTuples","_scrollMetrics","contentLength","dOffset","dt","offset","timestamp","velocity","visibleLength","_highestMeasuredFrameIndex","_headerLength","_footerLength","_averageCellLength","_hasWarned","_fillRateHelper","_getFrameMetrics","_updateCellsToRenderBatcher","_updateCellsToRender","updateCellsBatchingPeriod","viewabilityConfig","onViewableItemsChanged","push","viewabilityHelper","scrollToEnd","params","animated","veryLast","getItemCount","data","frame","__getFrameMetricsApprox","Math","max","length","_scrollRef","scrollTo","console","warn","x","y","scrollToIndex","getItemLayout","onScrollToIndexFailed","index","viewOffset","viewPosition","averageItemLength","highestMeasuredFrameIndex","floor","_getOffsetApprox","scrollToItem","getItem","item","indexOf","itemCount","i","scrollToOffset","recordInteraction","forEach","childList","viewabilityTuple","flashScrollIndicators","getScrollResponder","getScrollableNode","getScrollRef","setNativeProps","render","ListEmptyComponent","ListFooterComponent","ListHeaderComponent","debug","disableVirtualization","keyExtractor","numColumns","onEndReached","onEndReachedThreshold","onLayout","onRefresh","onScroll","onScrollBeginDrag","onScrollEndDrag","onMomentumScrollBegin","onMomentumScrollEnd","onStartReached","onStartReachedThreshold","refreshing","removeClippedSubviews","renderItem","viewabilityConfigCallbackPairs","restProps","ref","_captureRef","onContentSizeChange","_onContentSizeChange","_onLayout","_onScroll","refreshControl","children","_renderChildren","items","cellKey","String","width","height","event","VirtualizedList_default"],"sources":["../../../../../src/vendor/react-native/VirtualizedList/index.jsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["esm/vendor/react-native/VirtualizedList/index.js"],"sourcesContent":["import { isValidElement } from \"react\";\nimport { invariant } from \"@tamagui/react-native-web-internals\";\nimport { ScrollView } from \"../../../ScrollView\";\nimport { RefreshControl } from \"../../../RefreshControl\";\nimport { Batchinator } from \"../Batchinator\";\nimport { ChildListCollection } from \"./ChildListCollection\";\nimport { FillRateHelper } from \"../FillRateHelper\";\nimport { StateSafePureComponent } from \"./StateSafePureComponent\";\nimport { ViewabilityHelper } from \"../ViewabilityHelper\";\nimport { CellRenderer } from \"./VirtualizedListCellRenderer\";\nimport { VirtualizedListContext } from \"./VirtualizedListContext\";\nimport { jsx } from \"react/jsx-runtime\";\nconst __DEV__ = process.env.NODE_ENV !== \"production\";\nfunction horizontalOrDefault(horizontal) {\n return horizontal ?? false;\n}\nfunction scrollEventThrottleOrDefault(scrollEventThrottle) {\n return scrollEventThrottle ?? 50;\n}\nclass VirtualizedList extends StateSafePureComponent {\n static contextType = VirtualizedListContext;\n constructor(props) {\n super(props);\n this._nestedChildLists = new ChildListCollection();\n this._viewabilityTuples = [];\n this._scrollMetrics = {\n contentLength: 0,\n dOffset: 0,\n dt: 10,\n offset: 0,\n timestamp: 0,\n velocity: 0,\n visibleLength: 0\n };\n this._highestMeasuredFrameIndex = 0;\n this._headerLength = 0;\n this._footerLength = 0;\n this._averageCellLength = 0;\n this._hasWarned = {};\n this._fillRateHelper = new FillRateHelper(this._getFrameMetrics);\n this._updateCellsToRenderBatcher = new Batchinator(\n this._updateCellsToRender,\n this.props.updateCellsBatchingPeriod ?? 50\n );\n if (this.props.viewabilityConfig && this.props.onViewableItemsChanged) {\n this._viewabilityTuples.push({\n viewabilityHelper: new ViewabilityHelper(this.props.viewabilityConfig),\n onViewableItemsChanged: this.props.onViewableItemsChanged\n });\n }\n }\n scrollToEnd(params) {\n const animated = params ? params.animated : true;\n const veryLast = this.props.getItemCount(this.props.data) - 1;\n if (veryLast < 0) {\n return;\n }\n const frame = this.__getFrameMetricsApprox(veryLast, this.props);\n const offset = Math.max(\n 0,\n frame.offset + frame.length + this._footerLength - this._scrollMetrics.visibleLength\n );\n if (this._scrollRef == null) {\n return;\n }\n if (this._scrollRef.scrollTo == null) {\n console.warn(\n \"No scrollTo method provided. This may be because you have two nested VirtualizedLists with the same orientation, or because you are using a custom component that does not implement scrollTo.\"\n );\n return;\n }\n this._scrollRef.scrollTo(\n horizontalOrDefault(this.props.horizontal) ? { x: offset, animated } : { y: offset, animated }\n );\n }\n scrollToIndex(params) {\n const { data, horizontal, getItemCount, getItemLayout, onScrollToIndexFailed } = this.props;\n const { animated, index, viewOffset, viewPosition } = params;\n invariant(\n index >= 0,\n `scrollToIndex out of range: requested index ${index} but minimum is 0`\n );\n invariant(\n getItemCount(data) >= 1,\n `scrollToIndex out of range: item length ${getItemCount(data)} but minimum is 1`\n );\n invariant(\n index < getItemCount(data),\n `scrollToIndex out of range: requested index ${index} is out of 0 to ${getItemCount(data) - 1}`\n );\n if (!getItemLayout && index > this._highestMeasuredFrameIndex) {\n invariant(\n !!onScrollToIndexFailed,\n \"scrollToIndex should be used in conjunction with getItemLayout or onScrollToIndexFailed, otherwise there is no way to know the location of offscreen indices or handle failures.\"\n );\n onScrollToIndexFailed({\n averageItemLength: this._averageCellLength,\n highestMeasuredFrameIndex: this._highestMeasuredFrameIndex,\n index\n });\n return;\n }\n const frame = this.__getFrameMetricsApprox(Math.floor(index), this.props);\n const offset = Math.max(\n 0,\n this._getOffsetApprox(index, this.props) - (viewPosition || 0) * (this._scrollMetrics.visibleLength - frame.length)\n ) - (viewOffset || 0);\n if (this._scrollRef == null) {\n return;\n }\n this._scrollRef.scrollTo(\n horizontalOrDefault(horizontal) ? { x: offset, animated } : { y: offset, animated }\n );\n }\n scrollToItem(params) {\n const { data, getItem, getItemCount, horizontal, onScrollToIndexFailed } = this.props;\n const { animated, item, viewPosition, viewOffset } = params;\n const index = this.props.data.indexOf(item);\n if (index !== -1) {\n this.scrollToIndex({\n animated,\n index,\n viewOffset,\n viewPosition\n });\n } else {\n const itemCount = getItemCount(data);\n for (let i = 0; i < itemCount; i++) {\n if (getItem(data, i) === item) {\n this.scrollToIndex({\n animated,\n index: i,\n viewOffset,\n viewPosition\n });\n break;\n }\n }\n }\n }\n scrollToOffset(params) {\n const { animated, offset } = params;\n if (this._scrollRef == null) {\n return;\n }\n this._scrollRef.scrollTo(\n horizontalOrDefault(this.props.horizontal) ? { x: offset, animated } : { y: offset, animated }\n );\n }\n recordInteraction() {\n this._nestedChildLists.forEach((childList) => {\n childList.recordInteraction();\n });\n this._viewabilityTuples.forEach((viewabilityTuple) => {\n viewabilityTuple.viewabilityHelper.recordInteraction();\n });\n }\n flashScrollIndicators() {\n if (this._scrollRef && this._scrollRef.flashScrollIndicators) {\n this._scrollRef.flashScrollIndicators();\n }\n }\n getScrollResponder() {\n if (this._scrollRef && this._scrollRef.getScrollResponder) {\n return this._scrollRef.getScrollResponder();\n }\n }\n getScrollableNode() {\n if (this._scrollRef && this._scrollRef.getScrollableNode) {\n return this._scrollRef.getScrollableNode();\n }\n }\n getScrollRef() {\n return this._scrollRef;\n }\n setNativeProps(props) {\n if (this._scrollRef) {\n this._scrollRef.setNativeProps(props);\n }\n }\n render() {\n const {\n ListEmptyComponent,\n ListFooterComponent,\n ListHeaderComponent,\n data,\n debug,\n disableVirtualization,\n getItem,\n getItemCount,\n getItemLayout,\n horizontal,\n keyExtractor,\n numColumns,\n onEndReached,\n onEndReachedThreshold,\n onLayout,\n onRefresh,\n onScroll,\n onScrollBeginDrag,\n onScrollEndDrag,\n onMomentumScrollBegin,\n onMomentumScrollEnd,\n onStartReached,\n onStartReachedThreshold,\n onViewableItemsChanged,\n refreshing,\n removeClippedSubviews,\n renderItem,\n viewabilityConfig,\n viewabilityConfigCallbackPairs,\n ...restProps\n } = this.props;\n const itemCount = getItemCount(data);\n if (itemCount === 0) {\n if (!ListEmptyComponent) return null;\n return isValidElement(ListEmptyComponent) ? ListEmptyComponent : /* @__PURE__ */ jsx(ListEmptyComponent, {});\n }\n return /* @__PURE__ */ jsx(\n ScrollView,\n {\n ...restProps,\n ref: this._captureRef,\n onContentSizeChange: this._onContentSizeChange,\n onLayout: this._onLayout,\n onScroll: this._onScroll,\n refreshControl: onRefresh && /* @__PURE__ */ jsx(RefreshControl, { refreshing, onRefresh }),\n scrollEventThrottle: scrollEventThrottleOrDefault(this.props.scrollEventThrottle),\n removeClippedSubviews,\n children: this._renderChildren()\n }\n );\n }\n _renderChildren() {\n const { data, getItem, getItemCount, renderItem } = this.props;\n const items = [];\n for (let i = 0; i < getItemCount(data); i++) {\n const item = getItem(data, i);\n items.push(\n /* @__PURE__ */ jsx(\n CellRenderer,\n {\n cellKey: String(i),\n index: i,\n item,\n renderItem\n },\n this.props.keyExtractor ? this.props.keyExtractor(item, i) : i\n )\n );\n }\n return items;\n }\n _captureRef = (ref) => {\n this._scrollRef = ref;\n };\n _onContentSizeChange = (width, height) => {\n };\n _onLayout = (event) => {\n };\n _onScroll = (event) => {\n };\n __getFrameMetricsApprox(index, props) {\n const frame = {\n length: this._averageCellLength,\n offset: this._averageCellLength * index\n };\n return frame;\n }\n _getOffsetApprox(index, props) {\n return this.__getFrameMetricsApprox(index, props).offset;\n }\n}\nvar VirtualizedList_default = VirtualizedList;\nexport {\n VirtualizedList,\n VirtualizedList_default as default\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":"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"}