@tamagui/react-native-web-lite 1.116.1 → 1.116.3

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 (442) hide show
  1. package/dist/cjs/AccessibilityInfo/index.js +96 -0
  2. package/dist/cjs/ActivityIndicator/__tests__/index-test.js +116 -0
  3. package/dist/cjs/ActivityIndicator/index.js +108 -0
  4. package/dist/cjs/Alert/index.js +25 -0
  5. package/dist/cjs/AppRegistry/AppContainer.js +41 -0
  6. package/dist/cjs/AppRegistry/__tests__/index-test.js +77 -0
  7. package/dist/cjs/AppRegistry/__tests__/index-test.node.js +131 -0
  8. package/dist/cjs/AppRegistry/index.js +98 -0
  9. package/dist/cjs/AppRegistry/renderApplication.js +51 -0
  10. package/dist/cjs/AppState/__tests__/index-test.js +33 -0
  11. package/dist/cjs/AppState/index.js +71 -0
  12. package/dist/cjs/Appearance/index.js +41 -0
  13. package/dist/cjs/BackHandler/index.js +32 -0
  14. package/dist/cjs/Batchinator/index.cjs +68 -0
  15. package/dist/cjs/Batchinator/index.js +57 -0
  16. package/dist/cjs/Batchinator/index.js.map +6 -0
  17. package/dist/cjs/Batchinator/index.native.js +92 -0
  18. package/dist/cjs/Batchinator/index.native.js.map +6 -0
  19. package/dist/cjs/Clipboard/index.js +47 -0
  20. package/dist/cjs/DeviceEmitter.js +29 -0
  21. package/dist/cjs/DeviceInfo/index.js +62 -0
  22. package/dist/cjs/Dimensions/__tests__/index-test.js +51 -0
  23. package/dist/cjs/Dimensions/index.js +74 -0
  24. package/dist/cjs/FlatList.cjs +196 -0
  25. package/dist/cjs/FlatList.js +193 -0
  26. package/dist/cjs/FlatList.js.map +6 -0
  27. package/dist/cjs/FlatList.native.js +256 -0
  28. package/dist/cjs/FlatList.native.js.map +6 -0
  29. package/dist/cjs/I18nManager/index.js +30 -0
  30. package/dist/cjs/Image/index.js +253 -0
  31. package/dist/cjs/Image/types.js +14 -0
  32. package/dist/cjs/ImageBackground/__tests__/index-test.js +48 -0
  33. package/dist/cjs/ImageBackground/index.js +62 -0
  34. package/dist/cjs/InteractionManager/TaskQueue.cjs +88 -0
  35. package/dist/cjs/InteractionManager/TaskQueue.js +76 -0
  36. package/dist/cjs/InteractionManager/TaskQueue.js.map +6 -0
  37. package/dist/cjs/InteractionManager/TaskQueue.native.js +134 -0
  38. package/dist/cjs/InteractionManager/TaskQueue.native.js.map +6 -0
  39. package/dist/cjs/InteractionManager/index.cjs +114 -0
  40. package/dist/cjs/InteractionManager/index.js +95 -0
  41. package/dist/cjs/InteractionManager/index.js.map +6 -0
  42. package/dist/cjs/InteractionManager/index.native.js +99 -0
  43. package/dist/cjs/InteractionManager/index.native.js.map +6 -0
  44. package/dist/cjs/Keyboard/index.js +35 -0
  45. package/dist/cjs/KeyboardAvoidingView/index.js +56 -0
  46. package/dist/cjs/Linking/__tests__/index-test.js +38 -0
  47. package/dist/cjs/Linking/index.js +86 -0
  48. package/dist/cjs/LogBox/index.js +31 -0
  49. package/dist/cjs/Modal/ModalAnimation.js +137 -0
  50. package/dist/cjs/Modal/ModalContent.js +75 -0
  51. package/dist/cjs/Modal/ModalFocusTrap.js +105 -0
  52. package/dist/cjs/Modal/ModalPortal.js +43 -0
  53. package/dist/cjs/Modal/index.js +92 -0
  54. package/dist/cjs/NativeModules/index.js +25 -0
  55. package/dist/cjs/PanResponder/index.js +29 -0
  56. package/dist/cjs/PixelRatio/index.js +60 -0
  57. package/dist/cjs/Pressable/index.js +140 -0
  58. package/dist/cjs/RefreshControl/index.js +48 -0
  59. package/dist/cjs/SafeAreaView/index.js +43 -0
  60. package/dist/cjs/ScrollView/ScrollViewBase.js +124 -0
  61. package/dist/cjs/ScrollView/index.js +374 -0
  62. package/dist/cjs/Share/index.js +56 -0
  63. package/dist/cjs/StatusBar/index.js +31 -0
  64. package/dist/cjs/Text/index.js +152 -0
  65. package/dist/cjs/Text/types.js +14 -0
  66. package/dist/cjs/TextInput/__tests__/index-test.js +422 -0
  67. package/dist/cjs/TextInput/index.js +260 -0
  68. package/dist/cjs/TextInput/types.js +14 -0
  69. package/dist/cjs/TouchableOpacity.js +123 -0
  70. package/dist/cjs/TouchableWithoutFeedback.js +90 -0
  71. package/dist/cjs/UnimplementedView.js +36 -0
  72. package/dist/cjs/Vibration/index.js +31 -0
  73. package/dist/cjs/View/index.js +101 -0
  74. package/dist/cjs/View/types.js +14 -0
  75. package/dist/cjs/createElement/__tests__/index-test.js +536 -0
  76. package/dist/cjs/createElement/index.js +37 -0
  77. package/dist/cjs/createReactDOMStyle.js +21 -0
  78. package/dist/cjs/findNodeHandle.js +29 -0
  79. package/dist/cjs/index.cjs +7 -7
  80. package/dist/cjs/index.js +110 -0
  81. package/dist/cjs/{index.cjs.map → index.js.map} +1 -1
  82. package/dist/cjs/index.native.js +6 -6
  83. package/dist/cjs/index.native.js.map +1 -1
  84. package/dist/cjs/render/index.js +45 -0
  85. package/dist/cjs/styleTypes.js +14 -0
  86. package/dist/cjs/types.js +14 -0
  87. package/dist/cjs/useColorScheme/index.js +39 -0
  88. package/dist/cjs/useLocaleContext/index.js +21 -0
  89. package/dist/cjs/useWindowDimensions/index.js +41 -0
  90. package/dist/cjs/vendor/react-native/Animated/Animated.js +35 -0
  91. package/dist/cjs/vendor/react-native/Animated/AnimatedEvent.js +143 -0
  92. package/dist/cjs/vendor/react-native/Animated/AnimatedImplementation.js +458 -0
  93. package/dist/cjs/vendor/react-native/Animated/AnimatedMock.js +126 -0
  94. package/dist/cjs/vendor/react-native/Animated/AnimatedPlatformConfig.js +2 -0
  95. package/dist/cjs/vendor/react-native/Animated/Easing.js +189 -0
  96. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedHelper.js +335 -0
  97. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedModule.js +29 -0
  98. package/dist/cjs/vendor/react-native/Animated/NativeAnimatedTurboModule.js +29 -0
  99. package/dist/cjs/vendor/react-native/Animated/SpringConfig.js +70 -0
  100. package/dist/cjs/vendor/react-native/Animated/animations/Animation.js +64 -0
  101. package/dist/cjs/vendor/react-native/Animated/animations/DecayAnimation.js +63 -0
  102. package/dist/cjs/vendor/react-native/Animated/animations/SpringAnimation.js +146 -0
  103. package/dist/cjs/vendor/react-native/Animated/animations/TimingAnimation.js +82 -0
  104. package/dist/cjs/vendor/react-native/Animated/bezier.js +72 -0
  105. package/dist/cjs/vendor/react-native/Animated/components/AnimatedImage.js +29 -0
  106. package/dist/cjs/vendor/react-native/Animated/components/AnimatedScrollView.js +38 -0
  107. package/dist/cjs/vendor/react-native/Animated/components/AnimatedText.js +29 -0
  108. package/dist/cjs/vendor/react-native/Animated/components/AnimatedView.js +29 -0
  109. package/dist/cjs/vendor/react-native/Animated/createAnimatedComponent.js +42 -0
  110. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedAddition.js +57 -0
  111. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedColor.js +197 -0
  112. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedDiffClamp.js +60 -0
  113. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedDivision.js +58 -0
  114. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedInterpolation.js +175 -0
  115. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedModulo.js +58 -0
  116. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedMultiplication.js +57 -0
  117. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedNode.js +136 -0
  118. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedProps.js +112 -0
  119. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedStyle.js +100 -0
  120. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedSubtraction.js +57 -0
  121. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedTracking.js +76 -0
  122. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedTransform.js +100 -0
  123. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedValue.js +182 -0
  124. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedValueXY.js +167 -0
  125. package/dist/cjs/vendor/react-native/Animated/nodes/AnimatedWithChildren.js +67 -0
  126. package/dist/cjs/vendor/react-native/Animated/useAnimatedProps.js +89 -0
  127. package/dist/cjs/vendor/react-native/FeatureFlags.js +28 -0
  128. package/dist/cjs/vendor/react-native/FillRateHelper/index.cjs +138 -0
  129. package/dist/cjs/vendor/react-native/FillRateHelper/index.js +124 -0
  130. package/dist/cjs/vendor/react-native/FillRateHelper/index.js.map +6 -0
  131. package/dist/cjs/vendor/react-native/FillRateHelper/index.native.js +158 -0
  132. package/dist/cjs/vendor/react-native/FillRateHelper/index.native.js.map +6 -0
  133. package/dist/cjs/vendor/react-native/NativeEventEmitter/RCTDeviceEventEmitter.js +29 -0
  134. package/dist/cjs/vendor/react-native/NativeEventEmitter/index.js +73 -0
  135. package/dist/cjs/vendor/react-native/PanResponder/index.js +272 -0
  136. package/dist/cjs/vendor/react-native/TouchHistoryMath/index.js +118 -0
  137. package/dist/cjs/vendor/react-native/TurboModule/RCTExport.js +2 -0
  138. package/dist/cjs/vendor/react-native/TurboModule/TurboModuleRegistry.js +28 -0
  139. package/dist/cjs/vendor/react-native/Types/CoreEventTypes.js +15 -0
  140. package/dist/cjs/vendor/react-native/Utilities/clamp.cjs +29 -0
  141. package/dist/cjs/vendor/react-native/Utilities/clamp.js +24 -0
  142. package/dist/cjs/vendor/react-native/Utilities/clamp.js.map +6 -0
  143. package/dist/cjs/vendor/react-native/Utilities/clamp.native.js +25 -0
  144. package/dist/cjs/vendor/react-native/Utilities/clamp.native.js.map +6 -0
  145. package/dist/cjs/vendor/react-native/Utilities/setAndForwardRef.js +29 -0
  146. package/dist/cjs/vendor/react-native/ViewabilityHelper.cjs +133 -0
  147. package/dist/cjs/vendor/react-native/ViewabilityHelper.js +144 -0
  148. package/dist/cjs/vendor/react-native/ViewabilityHelper.js.map +6 -0
  149. package/dist/cjs/vendor/react-native/ViewabilityHelper.native.js +199 -0
  150. package/dist/cjs/vendor/react-native/ViewabilityHelper.native.js.map +6 -0
  151. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.cjs +106 -0
  152. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.js +86 -0
  153. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.js.map +6 -0
  154. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.native.js +95 -0
  155. package/dist/cjs/vendor/react-native/VirtualizeUtils/index.native.js.map +6 -0
  156. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.cjs +81 -0
  157. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.js +84 -0
  158. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.js.map +6 -0
  159. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.native.js +125 -0
  160. package/dist/cjs/vendor/react-native/VirtualizedList/CellRenderMask.native.js.map +6 -0
  161. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.cjs +56 -0
  162. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.js +59 -0
  163. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.js.map +6 -0
  164. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.native.js +153 -0
  165. package/dist/cjs/vendor/react-native/VirtualizedList/ChildListCollection.native.js.map +6 -0
  166. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.cjs +80 -0
  167. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.js +74 -0
  168. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.js.map +6 -0
  169. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.native.js +163 -0
  170. package/dist/cjs/vendor/react-native/VirtualizedList/StateSafePureComponent.native.js.map +6 -0
  171. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.cjs +164 -0
  172. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.js +149 -0
  173. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.js.map +6 -0
  174. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.native.js +245 -0
  175. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.native.js.map +6 -0
  176. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.cjs +84 -0
  177. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.js +72 -0
  178. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.js.map +6 -0
  179. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.native.js +85 -0
  180. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListContext.native.js.map +6 -0
  181. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.cjs +16 -0
  182. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.js +14 -0
  183. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.js.map +6 -0
  184. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.native.js +15 -0
  185. package/dist/cjs/vendor/react-native/VirtualizedList/VirtualizedListProps.native.js.map +6 -0
  186. package/dist/cjs/vendor/react-native/VirtualizedList/index.cjs +1003 -0
  187. package/dist/cjs/vendor/react-native/VirtualizedList/index.js +1021 -0
  188. package/dist/cjs/vendor/react-native/VirtualizedList/index.js.map +6 -0
  189. package/dist/cjs/vendor/react-native/VirtualizedList/index.native.js +1075 -0
  190. package/dist/cjs/vendor/react-native/VirtualizedList/index.native.js.map +6 -0
  191. package/dist/cjs/vendor/react-native/deepDiffer/index.cjs +41 -0
  192. package/dist/cjs/vendor/react-native/deepDiffer/index.js +47 -0
  193. package/dist/cjs/vendor/react-native/deepDiffer/index.js.map +6 -0
  194. package/dist/cjs/vendor/react-native/deepDiffer/index.native.js +48 -0
  195. package/dist/cjs/vendor/react-native/deepDiffer/index.native.js.map +6 -0
  196. package/dist/cjs/vendor/react-native/emitter/EventEmitter.js +30 -0
  197. package/dist/cjs/vendor/react-native/emitter/EventSubscription.js +2 -0
  198. package/dist/cjs/vendor/react-native/emitter/_EmitterSubscription.js +55 -0
  199. package/dist/cjs/vendor/react-native/emitter/_EventEmitter.js +135 -0
  200. package/dist/cjs/vendor/react-native/emitter/_EventSubscription.js +37 -0
  201. package/dist/cjs/vendor/react-native/emitter/_EventSubscriptionVendor.js +76 -0
  202. package/dist/cjs/vendor/react-native/infoLog/index.js +25 -0
  203. package/dist/cjs/vendor/react-native/useRefEffect.js +30 -0
  204. package/dist/cjs/without-animated.js +95 -0
  205. package/dist/esm/Batchinator/index.js +33 -0
  206. package/dist/esm/Batchinator/index.js.map +6 -0
  207. package/dist/esm/Batchinator/index.mjs +34 -0
  208. package/dist/esm/Batchinator/index.mjs.map +1 -0
  209. package/dist/esm/Batchinator/index.native.js +67 -0
  210. package/dist/esm/Batchinator/index.native.js.map +6 -0
  211. package/dist/esm/FlatList.js +176 -0
  212. package/dist/esm/FlatList.js.map +6 -0
  213. package/dist/esm/FlatList.mjs +162 -0
  214. package/dist/esm/FlatList.mjs.map +1 -0
  215. package/dist/esm/FlatList.native.js +238 -0
  216. package/dist/esm/FlatList.native.js.map +6 -0
  217. package/dist/esm/InteractionManager/TaskQueue.js +60 -0
  218. package/dist/esm/InteractionManager/TaskQueue.js.map +6 -0
  219. package/dist/esm/InteractionManager/TaskQueue.mjs +65 -0
  220. package/dist/esm/InteractionManager/TaskQueue.mjs.map +1 -0
  221. package/dist/esm/InteractionManager/TaskQueue.native.js +117 -0
  222. package/dist/esm/InteractionManager/TaskQueue.native.js.map +6 -0
  223. package/dist/esm/InteractionManager/index.js +73 -0
  224. package/dist/esm/InteractionManager/index.js.map +6 -0
  225. package/dist/esm/InteractionManager/index.mjs +80 -0
  226. package/dist/esm/InteractionManager/index.mjs.map +1 -0
  227. package/dist/esm/InteractionManager/index.native.js +77 -0
  228. package/dist/esm/InteractionManager/index.native.js.map +6 -0
  229. package/dist/esm/index.js +2 -2
  230. package/dist/esm/index.mjs +2 -2
  231. package/dist/esm/index.native.js +2 -2
  232. package/dist/esm/vendor/react-native/FillRateHelper/index.js +108 -0
  233. package/dist/esm/vendor/react-native/FillRateHelper/index.js.map +6 -0
  234. package/dist/esm/vendor/react-native/FillRateHelper/index.mjs +115 -0
  235. package/dist/esm/vendor/react-native/FillRateHelper/index.mjs.map +1 -0
  236. package/dist/esm/vendor/react-native/FillRateHelper/index.native.js +141 -0
  237. package/dist/esm/vendor/react-native/FillRateHelper/index.native.js.map +6 -0
  238. package/dist/esm/vendor/react-native/Utilities/clamp.js +8 -0
  239. package/dist/esm/vendor/react-native/Utilities/clamp.js.map +6 -0
  240. package/dist/esm/vendor/react-native/Utilities/clamp.mjs +6 -0
  241. package/dist/esm/vendor/react-native/Utilities/clamp.mjs.map +1 -0
  242. package/dist/esm/vendor/react-native/Utilities/clamp.native.js +8 -0
  243. package/dist/esm/vendor/react-native/Utilities/clamp.native.js.map +6 -0
  244. package/dist/esm/vendor/react-native/ViewabilityHelper.js +128 -0
  245. package/dist/esm/vendor/react-native/ViewabilityHelper.js.map +6 -0
  246. package/dist/esm/vendor/react-native/ViewabilityHelper.mjs +110 -0
  247. package/dist/esm/vendor/react-native/ViewabilityHelper.mjs.map +1 -0
  248. package/dist/esm/vendor/react-native/ViewabilityHelper.native.js +182 -0
  249. package/dist/esm/vendor/react-native/ViewabilityHelper.native.js.map +6 -0
  250. package/dist/esm/vendor/react-native/VirtualizeUtils/index.js +70 -0
  251. package/dist/esm/vendor/react-native/VirtualizeUtils/index.js.map +6 -0
  252. package/dist/esm/vendor/react-native/VirtualizeUtils/index.mjs +80 -0
  253. package/dist/esm/vendor/react-native/VirtualizeUtils/index.mjs.map +1 -0
  254. package/dist/esm/vendor/react-native/VirtualizeUtils/index.native.js +71 -0
  255. package/dist/esm/vendor/react-native/VirtualizeUtils/index.native.js.map +6 -0
  256. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.js +68 -0
  257. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.js.map +6 -0
  258. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.mjs +58 -0
  259. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.mjs.map +1 -0
  260. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.native.js +104 -0
  261. package/dist/esm/vendor/react-native/VirtualizedList/CellRenderMask.native.js.map +6 -0
  262. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.js +43 -0
  263. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.js.map +6 -0
  264. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.mjs +33 -0
  265. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.mjs.map +1 -0
  266. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.native.js +136 -0
  267. package/dist/esm/vendor/react-native/VirtualizedList/ChildListCollection.native.js.map +6 -0
  268. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.js +51 -0
  269. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.js.map +6 -0
  270. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.mjs +46 -0
  271. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.mjs.map +1 -0
  272. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.native.js +139 -0
  273. package/dist/esm/vendor/react-native/VirtualizedList/StateSafePureComponent.native.js.map +6 -0
  274. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.js +132 -0
  275. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.js.map +6 -0
  276. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.mjs +130 -0
  277. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.mjs.map +1 -0
  278. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.native.js +224 -0
  279. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.native.js.map +6 -0
  280. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.js +50 -0
  281. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.js.map +6 -0
  282. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.mjs +47 -0
  283. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.mjs.map +1 -0
  284. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.native.js +56 -0
  285. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListContext.native.js.map +6 -0
  286. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.js +1 -0
  287. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.js.map +6 -0
  288. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.mjs +2 -0
  289. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.mjs.map +1 -0
  290. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.native.js +1 -0
  291. package/dist/esm/vendor/react-native/VirtualizedList/VirtualizedListProps.native.js.map +6 -0
  292. package/dist/esm/vendor/react-native/VirtualizedList/index.js +1016 -0
  293. package/dist/esm/vendor/react-native/VirtualizedList/index.js.map +6 -0
  294. package/dist/esm/vendor/react-native/VirtualizedList/index.mjs +969 -0
  295. package/dist/esm/vendor/react-native/VirtualizedList/index.mjs.map +1 -0
  296. package/dist/esm/vendor/react-native/VirtualizedList/index.native.js +1065 -0
  297. package/dist/esm/vendor/react-native/VirtualizedList/index.native.js.map +6 -0
  298. package/dist/esm/vendor/react-native/deepDiffer/index.js +31 -0
  299. package/dist/esm/vendor/react-native/deepDiffer/index.js.map +6 -0
  300. package/dist/esm/vendor/react-native/deepDiffer/index.mjs +18 -0
  301. package/dist/esm/vendor/react-native/deepDiffer/index.mjs.map +1 -0
  302. package/dist/esm/vendor/react-native/deepDiffer/index.native.js +31 -0
  303. package/dist/esm/vendor/react-native/deepDiffer/index.native.js.map +6 -0
  304. package/package.json +6 -6
  305. package/src/Batchinator/index.tsx +78 -0
  306. package/src/FlatList.tsx +330 -0
  307. package/src/InteractionManager/TaskQueue.tsx +114 -0
  308. package/src/InteractionManager/index.tsx +139 -0
  309. package/src/index.tsx +2 -2
  310. package/src/vendor/react-native/FillRateHelper/index.tsx +218 -0
  311. package/src/vendor/react-native/Utilities/clamp.ts +21 -0
  312. package/src/vendor/react-native/ViewabilityHelper.ts +291 -0
  313. package/src/vendor/react-native/VirtualizeUtils/index.tsx +212 -0
  314. package/src/vendor/react-native/VirtualizedList/CellRenderMask.ts +147 -0
  315. package/src/vendor/react-native/VirtualizedList/ChildListCollection.tsx +73 -0
  316. package/src/vendor/react-native/VirtualizedList/StateSafePureComponent.tsx +79 -0
  317. package/src/vendor/react-native/VirtualizedList/VirtualizedListCellRenderer.tsx +210 -0
  318. package/src/vendor/react-native/VirtualizedList/VirtualizedListContext.tsx +116 -0
  319. package/src/vendor/react-native/VirtualizedList/VirtualizedListProps.ts +130 -0
  320. package/src/vendor/react-native/VirtualizedList/index.tsx +1797 -0
  321. package/src/vendor/react-native/deepDiffer/index.tsx +56 -0
  322. package/dist/cjs/PanResponder/Alternative.cjs +0 -198
  323. package/dist/cjs/PanResponder/Alternative.cjs.map +0 -6
  324. /package/dist/cjs/AccessibilityInfo/{index.cjs.map → index.js.map} +0 -0
  325. /package/dist/cjs/ActivityIndicator/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  326. /package/dist/cjs/ActivityIndicator/{index.cjs.map → index.js.map} +0 -0
  327. /package/dist/cjs/Alert/{index.cjs.map → index.js.map} +0 -0
  328. /package/dist/cjs/AppRegistry/{AppContainer.cjs.map → AppContainer.js.map} +0 -0
  329. /package/dist/cjs/AppRegistry/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  330. /package/dist/cjs/AppRegistry/__tests__/{index-test.node.cjs.map → index-test.node.js.map} +0 -0
  331. /package/dist/cjs/AppRegistry/{index.cjs.map → index.js.map} +0 -0
  332. /package/dist/cjs/AppRegistry/{renderApplication.cjs.map → renderApplication.js.map} +0 -0
  333. /package/dist/cjs/AppState/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  334. /package/dist/cjs/AppState/{index.cjs.map → index.js.map} +0 -0
  335. /package/dist/cjs/Appearance/{index.cjs.map → index.js.map} +0 -0
  336. /package/dist/cjs/BackHandler/{index.cjs.map → index.js.map} +0 -0
  337. /package/dist/cjs/Clipboard/{index.cjs.map → index.js.map} +0 -0
  338. /package/dist/cjs/{DeviceEmitter.cjs.map → DeviceEmitter.js.map} +0 -0
  339. /package/dist/cjs/DeviceInfo/{index.cjs.map → index.js.map} +0 -0
  340. /package/dist/cjs/Dimensions/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  341. /package/dist/cjs/Dimensions/{index.cjs.map → index.js.map} +0 -0
  342. /package/dist/cjs/I18nManager/{index.cjs.map → index.js.map} +0 -0
  343. /package/dist/cjs/Image/{index.cjs.map → index.js.map} +0 -0
  344. /package/dist/cjs/Image/{types.cjs.map → types.js.map} +0 -0
  345. /package/dist/cjs/ImageBackground/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  346. /package/dist/cjs/ImageBackground/{index.cjs.map → index.js.map} +0 -0
  347. /package/dist/cjs/Keyboard/{index.cjs.map → index.js.map} +0 -0
  348. /package/dist/cjs/KeyboardAvoidingView/{index.cjs.map → index.js.map} +0 -0
  349. /package/dist/cjs/Linking/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  350. /package/dist/cjs/Linking/{index.cjs.map → index.js.map} +0 -0
  351. /package/dist/cjs/LogBox/{index.cjs.map → index.js.map} +0 -0
  352. /package/dist/cjs/Modal/{ModalAnimation.cjs.map → ModalAnimation.js.map} +0 -0
  353. /package/dist/cjs/Modal/{ModalContent.cjs.map → ModalContent.js.map} +0 -0
  354. /package/dist/cjs/Modal/{ModalFocusTrap.cjs.map → ModalFocusTrap.js.map} +0 -0
  355. /package/dist/cjs/Modal/{ModalPortal.cjs.map → ModalPortal.js.map} +0 -0
  356. /package/dist/cjs/Modal/{index.cjs.map → index.js.map} +0 -0
  357. /package/dist/cjs/NativeModules/{index.cjs.map → index.js.map} +0 -0
  358. /package/dist/cjs/PanResponder/{index.cjs.map → index.js.map} +0 -0
  359. /package/dist/cjs/PixelRatio/{index.cjs.map → index.js.map} +0 -0
  360. /package/dist/cjs/Pressable/{index.cjs.map → index.js.map} +0 -0
  361. /package/dist/cjs/RefreshControl/{index.cjs.map → index.js.map} +0 -0
  362. /package/dist/cjs/SafeAreaView/{index.cjs.map → index.js.map} +0 -0
  363. /package/dist/cjs/ScrollView/{ScrollViewBase.cjs.map → ScrollViewBase.js.map} +0 -0
  364. /package/dist/cjs/ScrollView/{index.cjs.map → index.js.map} +0 -0
  365. /package/dist/cjs/Share/{index.cjs.map → index.js.map} +0 -0
  366. /package/dist/cjs/StatusBar/{index.cjs.map → index.js.map} +0 -0
  367. /package/dist/cjs/Text/{index.cjs.map → index.js.map} +0 -0
  368. /package/dist/cjs/Text/{types.cjs.map → types.js.map} +0 -0
  369. /package/dist/cjs/TextInput/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  370. /package/dist/cjs/TextInput/{index.cjs.map → index.js.map} +0 -0
  371. /package/dist/cjs/TextInput/{types.cjs.map → types.js.map} +0 -0
  372. /package/dist/cjs/{TouchableOpacity.cjs.map → TouchableOpacity.js.map} +0 -0
  373. /package/dist/cjs/{TouchableWithoutFeedback.cjs.map → TouchableWithoutFeedback.js.map} +0 -0
  374. /package/dist/cjs/{UnimplementedView.cjs.map → UnimplementedView.js.map} +0 -0
  375. /package/dist/cjs/Vibration/{index.cjs.map → index.js.map} +0 -0
  376. /package/dist/cjs/View/{index.cjs.map → index.js.map} +0 -0
  377. /package/dist/cjs/View/{types.cjs.map → types.js.map} +0 -0
  378. /package/dist/cjs/createElement/__tests__/{index-test.cjs.map → index-test.js.map} +0 -0
  379. /package/dist/cjs/createElement/{index.cjs.map → index.js.map} +0 -0
  380. /package/dist/cjs/{createReactDOMStyle.cjs.map → createReactDOMStyle.js.map} +0 -0
  381. /package/dist/cjs/{findNodeHandle.cjs.map → findNodeHandle.js.map} +0 -0
  382. /package/dist/cjs/render/{index.cjs.map → index.js.map} +0 -0
  383. /package/dist/cjs/{styleTypes.cjs.map → styleTypes.js.map} +0 -0
  384. /package/dist/cjs/{types.cjs.map → types.js.map} +0 -0
  385. /package/dist/cjs/useColorScheme/{index.cjs.map → index.js.map} +0 -0
  386. /package/dist/cjs/useLocaleContext/{index.cjs.map → index.js.map} +0 -0
  387. /package/dist/cjs/useWindowDimensions/{index.cjs.map → index.js.map} +0 -0
  388. /package/dist/cjs/vendor/react-native/Animated/{Animated.cjs.map → Animated.js.map} +0 -0
  389. /package/dist/cjs/vendor/react-native/Animated/{AnimatedEvent.cjs.map → AnimatedEvent.js.map} +0 -0
  390. /package/dist/cjs/vendor/react-native/Animated/{AnimatedImplementation.cjs.map → AnimatedImplementation.js.map} +0 -0
  391. /package/dist/cjs/vendor/react-native/Animated/{AnimatedMock.cjs.map → AnimatedMock.js.map} +0 -0
  392. /package/dist/cjs/vendor/react-native/Animated/{AnimatedPlatformConfig.cjs.map → AnimatedPlatformConfig.js.map} +0 -0
  393. /package/dist/cjs/vendor/react-native/Animated/{Easing.cjs.map → Easing.js.map} +0 -0
  394. /package/dist/cjs/vendor/react-native/Animated/{NativeAnimatedHelper.cjs.map → NativeAnimatedHelper.js.map} +0 -0
  395. /package/dist/cjs/vendor/react-native/Animated/{NativeAnimatedModule.cjs.map → NativeAnimatedModule.js.map} +0 -0
  396. /package/dist/cjs/vendor/react-native/Animated/{NativeAnimatedTurboModule.cjs.map → NativeAnimatedTurboModule.js.map} +0 -0
  397. /package/dist/cjs/vendor/react-native/Animated/{SpringConfig.cjs.map → SpringConfig.js.map} +0 -0
  398. /package/dist/cjs/vendor/react-native/Animated/animations/{Animation.cjs.map → Animation.js.map} +0 -0
  399. /package/dist/cjs/vendor/react-native/Animated/animations/{DecayAnimation.cjs.map → DecayAnimation.js.map} +0 -0
  400. /package/dist/cjs/vendor/react-native/Animated/animations/{SpringAnimation.cjs.map → SpringAnimation.js.map} +0 -0
  401. /package/dist/cjs/vendor/react-native/Animated/animations/{TimingAnimation.cjs.map → TimingAnimation.js.map} +0 -0
  402. /package/dist/cjs/vendor/react-native/Animated/{bezier.cjs.map → bezier.js.map} +0 -0
  403. /package/dist/cjs/vendor/react-native/Animated/components/{AnimatedImage.cjs.map → AnimatedImage.js.map} +0 -0
  404. /package/dist/cjs/vendor/react-native/Animated/components/{AnimatedScrollView.cjs.map → AnimatedScrollView.js.map} +0 -0
  405. /package/dist/cjs/vendor/react-native/Animated/components/{AnimatedText.cjs.map → AnimatedText.js.map} +0 -0
  406. /package/dist/cjs/vendor/react-native/Animated/components/{AnimatedView.cjs.map → AnimatedView.js.map} +0 -0
  407. /package/dist/cjs/vendor/react-native/Animated/{createAnimatedComponent.cjs.map → createAnimatedComponent.js.map} +0 -0
  408. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedAddition.cjs.map → AnimatedAddition.js.map} +0 -0
  409. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedColor.cjs.map → AnimatedColor.js.map} +0 -0
  410. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedDiffClamp.cjs.map → AnimatedDiffClamp.js.map} +0 -0
  411. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedDivision.cjs.map → AnimatedDivision.js.map} +0 -0
  412. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedInterpolation.cjs.map → AnimatedInterpolation.js.map} +0 -0
  413. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedModulo.cjs.map → AnimatedModulo.js.map} +0 -0
  414. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedMultiplication.cjs.map → AnimatedMultiplication.js.map} +0 -0
  415. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedNode.cjs.map → AnimatedNode.js.map} +0 -0
  416. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedProps.cjs.map → AnimatedProps.js.map} +0 -0
  417. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedStyle.cjs.map → AnimatedStyle.js.map} +0 -0
  418. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedSubtraction.cjs.map → AnimatedSubtraction.js.map} +0 -0
  419. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedTracking.cjs.map → AnimatedTracking.js.map} +0 -0
  420. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedTransform.cjs.map → AnimatedTransform.js.map} +0 -0
  421. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedValue.cjs.map → AnimatedValue.js.map} +0 -0
  422. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedValueXY.cjs.map → AnimatedValueXY.js.map} +0 -0
  423. /package/dist/cjs/vendor/react-native/Animated/nodes/{AnimatedWithChildren.cjs.map → AnimatedWithChildren.js.map} +0 -0
  424. /package/dist/cjs/vendor/react-native/Animated/{useAnimatedProps.cjs.map → useAnimatedProps.js.map} +0 -0
  425. /package/dist/cjs/vendor/react-native/{FeatureFlags.cjs.map → FeatureFlags.js.map} +0 -0
  426. /package/dist/cjs/vendor/react-native/NativeEventEmitter/{RCTDeviceEventEmitter.cjs.map → RCTDeviceEventEmitter.js.map} +0 -0
  427. /package/dist/cjs/vendor/react-native/NativeEventEmitter/{index.cjs.map → index.js.map} +0 -0
  428. /package/dist/cjs/vendor/react-native/PanResponder/{index.cjs.map → index.js.map} +0 -0
  429. /package/dist/cjs/vendor/react-native/TouchHistoryMath/{index.cjs.map → index.js.map} +0 -0
  430. /package/dist/cjs/vendor/react-native/TurboModule/{RCTExport.cjs.map → RCTExport.js.map} +0 -0
  431. /package/dist/cjs/vendor/react-native/TurboModule/{TurboModuleRegistry.cjs.map → TurboModuleRegistry.js.map} +0 -0
  432. /package/dist/cjs/vendor/react-native/Types/{CoreEventTypes.cjs.map → CoreEventTypes.js.map} +0 -0
  433. /package/dist/cjs/vendor/react-native/Utilities/{setAndForwardRef.cjs.map → setAndForwardRef.js.map} +0 -0
  434. /package/dist/cjs/vendor/react-native/emitter/{EventEmitter.cjs.map → EventEmitter.js.map} +0 -0
  435. /package/dist/cjs/vendor/react-native/emitter/{EventSubscription.cjs.map → EventSubscription.js.map} +0 -0
  436. /package/dist/cjs/vendor/react-native/emitter/{_EmitterSubscription.cjs.map → _EmitterSubscription.js.map} +0 -0
  437. /package/dist/cjs/vendor/react-native/emitter/{_EventEmitter.cjs.map → _EventEmitter.js.map} +0 -0
  438. /package/dist/cjs/vendor/react-native/emitter/{_EventSubscription.cjs.map → _EventSubscription.js.map} +0 -0
  439. /package/dist/cjs/vendor/react-native/emitter/{_EventSubscriptionVendor.cjs.map → _EventSubscriptionVendor.js.map} +0 -0
  440. /package/dist/cjs/vendor/react-native/infoLog/{index.cjs.map → index.js.map} +0 -0
  441. /package/dist/cjs/vendor/react-native/{useRefEffect.cjs.map → useRefEffect.js.map} +0 -0
  442. /package/dist/cjs/{without-animated.cjs.map → without-animated.js.map} +0 -0
@@ -0,0 +1,1075 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: !0 });
10
+ }, __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from == "object" || typeof from == "function")
12
+ for (let key of __getOwnPropNames(from))
13
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ return to;
15
+ };
16
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
17
+ // If the importer is in node compatibility mode or this is not an ESM
18
+ // file that has been converted to a CommonJS file using a Babel-
19
+ // compatible transform (i.e. "__esModule" has not been set), then set
20
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
22
+ mod
23
+ )), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
24
+ var VirtualizedList_exports = {};
25
+ __export(VirtualizedList_exports, {
26
+ default: () => VirtualizedList_default
27
+ });
28
+ module.exports = __toCommonJS(VirtualizedList_exports);
29
+ var import_jsx_runtime = require("react/jsx-runtime"), import_react_native_web_internals = require("@tamagui/react-native-web-internals"), import_ViewabilityHelper = __toESM(require("../ViewabilityHelper")), import_CellRenderMask = require("./CellRenderMask"), import_StateSafePureComponent = __toESM(require("./StateSafePureComponent")), import_VirtualizedListContext = require("./VirtualizedListContext"), import_ScrollViewBase = __toESM(require("../../../ScrollView/ScrollViewBase")), import_View = __toESM(require("../../../View")), import_VirtualizedListCellRenderer = __toESM(require("./VirtualizedListCellRenderer")), import_FillRateHelper = __toESM(require("../FillRateHelper")), import_ChildListCollection = __toESM(require("./ChildListCollection")), import_react = __toESM(require("react")), import_clamp = __toESM(require("../Utilities/clamp")), import_VirtualizeUtils = require("../VirtualizeUtils"), import_Batchinator = __toESM(require("../../../Batchinator")), import_RefreshControl = __toESM(require("../../../RefreshControl"));
30
+ function _assert_this_initialized(self) {
31
+ if (self === void 0)
32
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
33
+ return self;
34
+ }
35
+ function _call_super(_this, derived, args) {
36
+ return derived = _get_prototype_of(derived), _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
37
+ }
38
+ function _class_call_check(instance, Constructor) {
39
+ if (!(instance instanceof Constructor))
40
+ throw new TypeError("Cannot call a class as a function");
41
+ }
42
+ function _defineProperties(target, props) {
43
+ for (var i = 0; i < props.length; i++) {
44
+ var descriptor = props[i];
45
+ descriptor.enumerable = descriptor.enumerable || !1, descriptor.configurable = !0, "value" in descriptor && (descriptor.writable = !0), Object.defineProperty(target, descriptor.key, descriptor);
46
+ }
47
+ }
48
+ function _create_class(Constructor, protoProps, staticProps) {
49
+ return protoProps && _defineProperties(Constructor.prototype, protoProps), staticProps && _defineProperties(Constructor, staticProps), Constructor;
50
+ }
51
+ function _define_property(obj, key, value) {
52
+ return key in obj ? Object.defineProperty(obj, key, {
53
+ value,
54
+ enumerable: !0,
55
+ configurable: !0,
56
+ writable: !0
57
+ }) : obj[key] = value, obj;
58
+ }
59
+ function _get_prototype_of(o) {
60
+ return _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function(o2) {
61
+ return o2.__proto__ || Object.getPrototypeOf(o2);
62
+ }, _get_prototype_of(o);
63
+ }
64
+ function _inherits(subClass, superClass) {
65
+ if (typeof superClass != "function" && superClass !== null)
66
+ throw new TypeError("Super expression must either be null or a function");
67
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
68
+ constructor: {
69
+ value: subClass,
70
+ writable: !0,
71
+ configurable: !0
72
+ }
73
+ }), superClass && _set_prototype_of(subClass, superClass);
74
+ }
75
+ function _possible_constructor_return(self, call) {
76
+ return call && (_type_of(call) === "object" || typeof call == "function") ? call : _assert_this_initialized(self);
77
+ }
78
+ function _set_prototype_of(o, p) {
79
+ return _set_prototype_of = Object.setPrototypeOf || function(o2, p2) {
80
+ return o2.__proto__ = p2, o2;
81
+ }, _set_prototype_of(o, p);
82
+ }
83
+ function _type_of(obj) {
84
+ "@swc/helpers - typeof";
85
+ return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
86
+ }
87
+ function _is_native_reflect_construct() {
88
+ try {
89
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
90
+ }));
91
+ } catch {
92
+ }
93
+ return (_is_native_reflect_construct = function() {
94
+ return !!result;
95
+ })();
96
+ }
97
+ var __DEV__ = process.env.NODE_ENV !== "production", ON_EDGE_REACHED_EPSILON = 1e-3, _usedIndexForKey = !1, _keylessItemComponentName = "";
98
+ function horizontalOrDefault(horizontal) {
99
+ return horizontal ?? !1;
100
+ }
101
+ function initialNumToRenderOrDefault(initialNumToRender) {
102
+ return initialNumToRender ?? 10;
103
+ }
104
+ function maxToRenderPerBatchOrDefault(maxToRenderPerBatch) {
105
+ return maxToRenderPerBatch ?? 10;
106
+ }
107
+ function onStartReachedThresholdOrDefault(onStartReachedThreshold) {
108
+ return onStartReachedThreshold ?? 2;
109
+ }
110
+ function onEndReachedThresholdOrDefault(onEndReachedThreshold) {
111
+ return onEndReachedThreshold ?? 2;
112
+ }
113
+ function getScrollingThreshold(threshold, visibleLength) {
114
+ return threshold * visibleLength / 2;
115
+ }
116
+ function scrollEventThrottleOrDefault(scrollEventThrottle) {
117
+ return scrollEventThrottle ?? 50;
118
+ }
119
+ function windowSizeOrDefault(windowSize) {
120
+ return windowSize ?? 21;
121
+ }
122
+ function findLastWhere(arr, predicate) {
123
+ for (var i = arr.length - 1; i >= 0; i--)
124
+ if (predicate(arr[i]))
125
+ return arr[i];
126
+ return null;
127
+ }
128
+ var VirtualizedList = /* @__PURE__ */ function(StateSafePureComponent2) {
129
+ "use strict";
130
+ _inherits(VirtualizedList2, StateSafePureComponent2);
131
+ function VirtualizedList2(props) {
132
+ _class_call_check(this, VirtualizedList2);
133
+ var _this;
134
+ _this = _call_super(this, VirtualizedList2, [
135
+ props
136
+ ]), _define_property(_this, "_getScrollMetrics", function() {
137
+ return _this._scrollMetrics;
138
+ }), _define_property(_this, "_getOutermostParentListRef", function() {
139
+ return _this._isNestedWithSameOrientation() ? _this.context.getOutermostParentListRef() : _this;
140
+ }), _define_property(_this, "_registerAsNestedChild", function(childList) {
141
+ _this._nestedChildLists.add(childList.ref, childList.cellKey), _this._hasInteracted && childList.ref.recordInteraction();
142
+ }), _define_property(_this, "_unregisterAsNestedChild", function(childList) {
143
+ _this._nestedChildLists.remove(childList.ref);
144
+ }), _define_property(_this, "invertedWheelEventHandler", void 0), _define_property(_this, "_onUpdateSeparators", function(keys, newProps) {
145
+ keys.forEach(function(key) {
146
+ var ref = key != null && _this._cellRefs[key];
147
+ ref && ref.updateSeparatorProps(newProps);
148
+ });
149
+ }), _define_property(_this, "_getSpacerKey", function(isVertical) {
150
+ return isVertical ? "height" : "width";
151
+ }), _define_property(_this, "_averageCellLength", 0), _define_property(_this, "_cellRefs", {}), _define_property(_this, "_fillRateHelper", void 0), _define_property(_this, "_frames", {}), _define_property(_this, "_footerLength", 0), _define_property(_this, "_hasTriggeredInitialScrollToIndex", !1), _define_property(_this, "_hasInteracted", !1), _define_property(_this, "_hasMore", !1), _define_property(_this, "_hasWarned", {}), _define_property(_this, "_headerLength", 0), _define_property(_this, "_hiPriInProgress", !1), _define_property(_this, "_highestMeasuredFrameIndex", 0), _define_property(_this, "_indicesToKeys", /* @__PURE__ */ new Map()), _define_property(_this, "_lastFocusedCellKey", null), _define_property(_this, "_nestedChildLists", new import_ChildListCollection.default()), _define_property(_this, "_offsetFromParentVirtualizedList", 0), _define_property(_this, "_prevParentOffset", 0), _define_property(_this, "_scrollMetrics", {
152
+ contentLength: 0,
153
+ dOffset: 0,
154
+ dt: 10,
155
+ offset: 0,
156
+ timestamp: 0,
157
+ velocity: 0,
158
+ visibleLength: 0,
159
+ zoomScale: 1
160
+ }), _define_property(_this, "_scrollRef", null), _define_property(_this, "_sentStartForContentLength", 0), _define_property(_this, "_sentEndForContentLength", 0), _define_property(_this, "_totalCellLength", 0), _define_property(_this, "_totalCellsMeasured", 0), _define_property(_this, "_updateCellsToRenderBatcher", void 0), _define_property(_this, "_viewabilityTuples", []), _define_property(_this, "_captureScrollRef", function(ref) {
161
+ _this._scrollRef = ref;
162
+ }), _define_property(_this, "_defaultRenderScrollComponent", function(props2) {
163
+ var onRefresh = props2.onRefresh;
164
+ if (_this._isNestedWithSameOrientation())
165
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
166
+ ...props2
167
+ });
168
+ if (onRefresh) {
169
+ var _props_refreshing;
170
+ return (0, import_react_native_web_internals.invariant)(typeof props2.refreshing == "boolean", "`refreshing` prop must be set as a boolean in order to use `onRefresh`, but got `" + JSON.stringify((_props_refreshing = props2.refreshing) !== null && _props_refreshing !== void 0 ? _props_refreshing : "undefined") + "`"), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ScrollViewBase.default, {
171
+ ...props2,
172
+ refreshControl: props2.refreshControl == null ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_RefreshControl.default, {
173
+ refreshing: props2.refreshing,
174
+ onRefresh,
175
+ progressViewOffset: props2.progressViewOffset
176
+ }) : props2.refreshControl
177
+ });
178
+ } else
179
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ScrollViewBase.default, {
180
+ ...props2
181
+ });
182
+ }), _define_property(_this, "_onCellLayout", function(e, cellKey, index) {
183
+ var layout = e.nativeEvent.layout, next = {
184
+ offset: _this._selectOffset(layout),
185
+ length: _this._selectLength(layout),
186
+ index,
187
+ inLayout: !0
188
+ }, curr = _this._frames[cellKey];
189
+ !curr || next.offset !== curr.offset || next.length !== curr.length || index !== curr.index ? (_this._totalCellLength += next.length - (curr ? curr.length : 0), _this._totalCellsMeasured += curr ? 0 : 1, _this._averageCellLength = _this._totalCellLength / _this._totalCellsMeasured, _this._frames[cellKey] = next, _this._highestMeasuredFrameIndex = Math.max(_this._highestMeasuredFrameIndex, index), _this._scheduleCellsToRenderUpdate()) : _this._frames[cellKey].inLayout = !0, _this._triggerRemeasureForChildListsInCell(cellKey), _this._computeBlankness(), _this._updateViewableItems(
190
+ // @ts-ignore
191
+ _this.props,
192
+ _this.state.cellsAroundViewport
193
+ );
194
+ }), _define_property(_this, "_onCellUnmount", function(cellKey) {
195
+ delete _this._cellRefs[cellKey];
196
+ var curr = _this._frames[cellKey];
197
+ curr && (_this._frames[cellKey] = {
198
+ ...curr,
199
+ inLayout: !1
200
+ });
201
+ }), _define_property(_this, "_onLayout", function(e) {
202
+ _this._isNestedWithSameOrientation() ? _this.measureLayoutRelativeToContainingList() : _this._scrollMetrics.visibleLength = _this._selectLength(e.nativeEvent.layout), _this.props.onLayout && _this.props.onLayout(e), _this._scheduleCellsToRenderUpdate(), _this._maybeCallOnEdgeReached();
203
+ }), _define_property(_this, "_onLayoutEmpty", function(e) {
204
+ _this.props.onLayout && _this.props.onLayout(e);
205
+ }), _define_property(_this, "_onLayoutFooter", function(e) {
206
+ _this._triggerRemeasureForChildListsInCell(_this._getFooterCellKey()), _this._footerLength = _this._selectLength(e.nativeEvent.layout);
207
+ }), _define_property(_this, "_onLayoutHeader", function(e) {
208
+ _this._headerLength = _this._selectLength(e.nativeEvent.layout);
209
+ }), _define_property(_this, "_onContentSizeChange", function(width, height) {
210
+ width > 0 && height > 0 && _this.props.initialScrollIndex != null && _this.props.initialScrollIndex > 0 && !_this._hasTriggeredInitialScrollToIndex && (_this.props.contentOffset == null && (_this.props.initialScrollIndex < _this.props.getItemCount(_this.props.data) ? _this.scrollToIndex({
211
+ animated: !1,
212
+ index: nullthrows(_this.props.initialScrollIndex)
213
+ }) : _this.scrollToEnd({
214
+ animated: !1
215
+ })), _this._hasTriggeredInitialScrollToIndex = !0), _this.props.onContentSizeChange && _this.props.onContentSizeChange(width, height), _this._scrollMetrics.contentLength = _this._selectLength({
216
+ height,
217
+ width
218
+ }), _this._scheduleCellsToRenderUpdate(), _this._maybeCallOnEdgeReached();
219
+ }), _define_property(_this, "_convertParentScrollMetrics", function(metrics) {
220
+ var offset = metrics.offset - _this._offsetFromParentVirtualizedList, visibleLength = metrics.visibleLength, dOffset = offset - _this._scrollMetrics.offset, contentLength = _this._scrollMetrics.contentLength;
221
+ return {
222
+ visibleLength,
223
+ contentLength,
224
+ offset,
225
+ dOffset
226
+ };
227
+ }), _define_property(_this, "_onScroll", function(e) {
228
+ _this._nestedChildLists.forEach(function(childList) {
229
+ childList._onScroll(e);
230
+ }), _this.props.onScroll && _this.props.onScroll(e);
231
+ var timestamp = e.timeStamp, visibleLength = _this._selectLength(e.nativeEvent.layoutMeasurement), contentLength = _this._selectLength(e.nativeEvent.contentSize), offset = _this._selectOffset(e.nativeEvent.contentOffset), dOffset = offset - _this._scrollMetrics.offset;
232
+ if (_this._isNestedWithSameOrientation()) {
233
+ if (_this._scrollMetrics.contentLength === 0)
234
+ return;
235
+ ({ visibleLength, contentLength, offset, dOffset } = _this._convertParentScrollMetrics({
236
+ visibleLength,
237
+ offset
238
+ }));
239
+ }
240
+ var dt = _this._scrollMetrics.timestamp ? Math.max(1, timestamp - _this._scrollMetrics.timestamp) : 1, velocity = dOffset / dt;
241
+ dt > 500 && _this._scrollMetrics.dt > 500 && contentLength > 5 * visibleLength && !_this._hasWarned.perf && (infoLog("VirtualizedList: You have a large list that is slow to update - make sure your renderItem function renders components that follow React performance best practices like PureComponent, shouldComponentUpdate, etc.", {
242
+ dt,
243
+ prevDt: _this._scrollMetrics.dt,
244
+ contentLength
245
+ }), _this._hasWarned.perf = !0);
246
+ var zoomScale = e.nativeEvent.zoomScale < 0 ? 1 : e.nativeEvent.zoomScale;
247
+ _this._scrollMetrics = {
248
+ contentLength,
249
+ dt,
250
+ dOffset,
251
+ offset,
252
+ timestamp,
253
+ velocity,
254
+ visibleLength,
255
+ zoomScale
256
+ }, _this._updateViewableItems(_this.props, _this.state.cellsAroundViewport), _this.props && (_this._maybeCallOnEdgeReached(), velocity !== 0 && _this._fillRateHelper.activate(), _this._computeBlankness(), _this._scheduleCellsToRenderUpdate());
257
+ }), _define_property(_this, "_onScrollBeginDrag", function(e) {
258
+ _this._nestedChildLists.forEach(function(childList) {
259
+ childList._onScrollBeginDrag(e);
260
+ }), _this._viewabilityTuples.forEach(function(tuple) {
261
+ tuple.viewabilityHelper.recordInteraction();
262
+ }), _this._hasInteracted = !0, _this.props.onScrollBeginDrag && _this.props.onScrollBeginDrag(e);
263
+ }), _define_property(_this, "_onScrollEndDrag", function(e) {
264
+ _this._nestedChildLists.forEach(function(childList) {
265
+ childList._onScrollEndDrag(e);
266
+ });
267
+ var { velocity } = e.nativeEvent;
268
+ velocity && (_this._scrollMetrics.velocity = _this._selectOffset(velocity)), _this._computeBlankness(), _this.props.onScrollEndDrag && _this.props.onScrollEndDrag(e);
269
+ }), _define_property(_this, "_onMomentumScrollBegin", function(e) {
270
+ _this._nestedChildLists.forEach(function(childList) {
271
+ childList._onMomentumScrollBegin(e);
272
+ }), _this.props.onMomentumScrollBegin && _this.props.onMomentumScrollBegin(e);
273
+ }), _define_property(_this, "_onMomentumScrollEnd", function(e) {
274
+ _this._nestedChildLists.forEach(function(childList) {
275
+ childList._onMomentumScrollEnd(e);
276
+ }), _this._scrollMetrics.velocity = 0, _this._computeBlankness(), _this.props.onMomentumScrollEnd && _this.props.onMomentumScrollEnd(e);
277
+ }), _define_property(_this, "_updateCellsToRender", function() {
278
+ _this._updateViewableItems(_this.props, _this.state.cellsAroundViewport), _this.setState(function(state, props2) {
279
+ var cellsAroundViewport = _this._adjustCellsAroundViewport(props2, state.cellsAroundViewport), renderMask = VirtualizedList2._createRenderMask(props2, cellsAroundViewport, _this._getNonViewportRenderRegions(props2));
280
+ return cellsAroundViewport.first === state.cellsAroundViewport.first && cellsAroundViewport.last === state.cellsAroundViewport.last && renderMask.equals(state.renderMask) ? null : {
281
+ cellsAroundViewport,
282
+ renderMask
283
+ };
284
+ });
285
+ }), _define_property(_this, "_createViewToken", function(index, isViewable, props2) {
286
+ var { data, getItem } = props2, item = getItem(data, index);
287
+ return {
288
+ index,
289
+ item,
290
+ key: _this._keyExtractor(item, index, props2),
291
+ isViewable
292
+ };
293
+ }), _define_property(_this, "_getOffsetApprox", function(index, props2) {
294
+ if (Number.isInteger(index))
295
+ return _this.__getFrameMetricsApprox(index, props2).offset;
296
+ var frameMetrics = _this.__getFrameMetricsApprox(Math.floor(index), props2), remainder = index - Math.floor(index);
297
+ return frameMetrics.offset + remainder * frameMetrics.length;
298
+ }), _define_property(_this, "__getFrameMetricsApprox", function(index, props2) {
299
+ var frame = _this._getFrameMetrics(index, props2);
300
+ if (frame && frame.index === index)
301
+ return frame;
302
+ var { data, getItemCount, getItemLayout } = props2;
303
+ return (0, import_react_native_web_internals.invariant)(index >= 0 && index < getItemCount(data), "Tried to get frame for out of range index " + index), (0, import_react_native_web_internals.invariant)(!getItemLayout, "Should not have to estimate frames when a measurement metrics function is provided"), {
304
+ length: _this._averageCellLength,
305
+ offset: _this._averageCellLength * index
306
+ };
307
+ }), _define_property(_this, "_getFrameMetrics", function(index, props2) {
308
+ var { data, getItem, getItemCount, getItemLayout } = props2;
309
+ (0, import_react_native_web_internals.invariant)(index >= 0 && index < getItemCount(data), "Tried to get frame for out of range index " + index);
310
+ var item = getItem(data, index), frame = _this._frames[_this._keyExtractor(item, index, props2)];
311
+ return (!frame || frame.index !== index) && getItemLayout ? getItemLayout(data, index) : frame;
312
+ }), _define_property(_this, "_getNonViewportRenderRegions", function(props2) {
313
+ if (!(_this._lastFocusedCellKey && _this._cellRefs[_this._lastFocusedCellKey]))
314
+ return [];
315
+ var lastFocusedCellRenderer = _this._cellRefs[_this._lastFocusedCellKey], focusedCellIndex = lastFocusedCellRenderer.props.index, itemCount = props2.getItemCount(props2.data);
316
+ if (focusedCellIndex >= itemCount || _this._keyExtractor(props2.getItem(props2.data, focusedCellIndex), focusedCellIndex, props2) !== _this._lastFocusedCellKey)
317
+ return [];
318
+ for (var first = focusedCellIndex, heightOfCellsBeforeFocused = 0, i = first - 1; i >= 0 && heightOfCellsBeforeFocused < _this._scrollMetrics.visibleLength; i--)
319
+ first--, heightOfCellsBeforeFocused += _this.__getFrameMetricsApprox(i, props2).length;
320
+ for (var last = focusedCellIndex, heightOfCellsAfterFocused = 0, i1 = last + 1; i1 < itemCount && heightOfCellsAfterFocused < _this._scrollMetrics.visibleLength; i1++)
321
+ last++, heightOfCellsAfterFocused += _this.__getFrameMetricsApprox(i1, props2).length;
322
+ return [
323
+ {
324
+ first,
325
+ last
326
+ }
327
+ ];
328
+ }), _this._checkProps(props), _this._fillRateHelper = new import_FillRateHelper.default(_this._getFrameMetrics);
329
+ var _this_props_updateCellsBatchingPeriod;
330
+ if (_this._updateCellsToRenderBatcher = new import_Batchinator.default(_this._updateCellsToRender, (_this_props_updateCellsBatchingPeriod = _this.props.updateCellsBatchingPeriod) !== null && _this_props_updateCellsBatchingPeriod !== void 0 ? _this_props_updateCellsBatchingPeriod : 50), _this.props.viewabilityConfigCallbackPairs)
331
+ _this._viewabilityTuples = _this.props.viewabilityConfigCallbackPairs.map(function(pair) {
332
+ return {
333
+ viewabilityHelper: new import_ViewabilityHelper.default(pair.viewabilityConfig),
334
+ onViewableItemsChanged: pair.onViewableItemsChanged
335
+ };
336
+ });
337
+ else {
338
+ var { onViewableItemsChanged, viewabilityConfig } = _this.props;
339
+ onViewableItemsChanged && _this._viewabilityTuples.push({
340
+ viewabilityHelper: new import_ViewabilityHelper.default(viewabilityConfig),
341
+ onViewableItemsChanged
342
+ });
343
+ }
344
+ var initialRenderRegion = VirtualizedList2._initialRenderRegion(props);
345
+ return _this.state = {
346
+ cellsAroundViewport: initialRenderRegion,
347
+ renderMask: VirtualizedList2._createRenderMask(props, initialRenderRegion)
348
+ }, _this.invertedWheelEventHandler = function(ev) {
349
+ var scrollOffset = _this.props.horizontal ? ev.target.scrollLeft : ev.target.scrollTop, scrollLength = _this.props.horizontal ? ev.target.scrollWidth : ev.target.scrollHeight, clientLength = _this.props.horizontal ? ev.target.clientWidth : ev.target.clientHeight, isEventTargetScrollable = scrollLength > clientLength, delta = _this.props.horizontal ? ev.deltaX || ev.wheelDeltaX : ev.deltaY || ev.wheelDeltaY, leftoverDelta = delta;
350
+ isEventTargetScrollable && (leftoverDelta = delta < 0 ? Math.min(delta + scrollOffset, 0) : Math.max(delta - (scrollLength - clientLength - scrollOffset), 0));
351
+ var targetDelta = delta - leftoverDelta;
352
+ if (_this.props.inverted && _this._scrollRef && _this._scrollRef.getScrollableNode) {
353
+ var node = _this._scrollRef.getScrollableNode();
354
+ if (_this.props.horizontal) {
355
+ ev.target.scrollLeft += targetDelta;
356
+ var nextScrollLeft = node.scrollLeft - leftoverDelta;
357
+ node.scrollLeft = _this.props.getItemLayout ? nextScrollLeft : Math.min(nextScrollLeft, _this._totalCellLength);
358
+ } else {
359
+ ev.target.scrollTop += targetDelta;
360
+ var nextScrollTop = node.scrollTop - leftoverDelta;
361
+ node.scrollTop = _this.props.getItemLayout ? nextScrollTop : Math.min(nextScrollTop, _this._totalCellLength);
362
+ }
363
+ ev.preventDefault();
364
+ }
365
+ }, _this;
366
+ }
367
+ return _create_class(VirtualizedList2, [
368
+ {
369
+ // scrollToEnd may be janky without getItemLayout prop
370
+ key: "scrollToEnd",
371
+ value: function(params) {
372
+ var animated = params ? params.animated : !0, veryLast = this.props.getItemCount(this.props.data) - 1;
373
+ if (!(veryLast < 0)) {
374
+ var frame = this.__getFrameMetricsApprox(veryLast, this.props), offset = Math.max(0, frame.offset + frame.length + this._footerLength - this._scrollMetrics.visibleLength);
375
+ if (this._scrollRef != null) {
376
+ if (this._scrollRef.scrollTo == null) {
377
+ 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.");
378
+ return;
379
+ }
380
+ this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
381
+ x: offset,
382
+ animated
383
+ } : {
384
+ y: offset,
385
+ animated
386
+ });
387
+ }
388
+ }
389
+ }
390
+ },
391
+ {
392
+ // scrollToIndex may be janky without getItemLayout prop
393
+ key: "scrollToIndex",
394
+ value: function(params) {
395
+ var { data, horizontal, getItemCount, getItemLayout, onScrollToIndexFailed } = this.props, { animated, index, viewOffset, viewPosition } = params;
396
+ if ((0, import_react_native_web_internals.invariant)(index >= 0, `scrollToIndex out of range: requested index ${index} but minimum is 0`), (0, import_react_native_web_internals.invariant)(getItemCount(data) >= 1, `scrollToIndex out of range: item length ${getItemCount(data)} but minimum is 1`), (0, import_react_native_web_internals.invariant)(index < getItemCount(data), `scrollToIndex out of range: requested index ${index} is out of 0 to ${getItemCount(data) - 1}`), !getItemLayout && index > this._highestMeasuredFrameIndex) {
397
+ (0, import_react_native_web_internals.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."), onScrollToIndexFailed({
398
+ averageItemLength: this._averageCellLength,
399
+ highestMeasuredFrameIndex: this._highestMeasuredFrameIndex,
400
+ index
401
+ });
402
+ return;
403
+ }
404
+ var frame = this.__getFrameMetricsApprox(Math.floor(index), this.props), offset = Math.max(
405
+ 0,
406
+ // @ts-ignore
407
+ this._getOffsetApprox(index, this.props) - (viewPosition || 0) * (this._scrollMetrics.visibleLength - frame.length)
408
+ ) - (viewOffset || 0);
409
+ if (this._scrollRef != null) {
410
+ if (this._scrollRef.scrollTo == null) {
411
+ 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.");
412
+ return;
413
+ }
414
+ this._scrollRef.scrollTo(horizontal ? {
415
+ x: offset,
416
+ animated
417
+ } : {
418
+ y: offset,
419
+ animated
420
+ });
421
+ }
422
+ }
423
+ },
424
+ {
425
+ // scrollToItem may be janky without getItemLayout prop. Required linear scan through items -
426
+ // use scrollToIndex instead if possible.
427
+ key: "scrollToItem",
428
+ value: function(params) {
429
+ for (var { item } = params, { data, getItem, getItemCount } = this.props, itemCount = getItemCount(data), index = 0; index < itemCount; index++)
430
+ if (getItem(data, index) === item) {
431
+ this.scrollToIndex({
432
+ ...params,
433
+ index
434
+ });
435
+ break;
436
+ }
437
+ }
438
+ },
439
+ {
440
+ /**
441
+ * Scroll to a specific content pixel offset in the list.
442
+ *
443
+ * Param `offset` expects the offset to scroll to.
444
+ * In case of `horizontal` is true, the offset is the x-value,
445
+ * in any other case the offset is the y-value.
446
+ *
447
+ * Param `animated` (`true` by default) defines whether the list
448
+ * should do an animation while scrolling.
449
+ */
450
+ key: "scrollToOffset",
451
+ value: function(params) {
452
+ var { animated, offset } = params;
453
+ if (this._scrollRef != null) {
454
+ if (this._scrollRef.scrollTo == null) {
455
+ 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.");
456
+ return;
457
+ }
458
+ this._scrollRef.scrollTo(horizontalOrDefault(this.props.horizontal) ? {
459
+ x: offset,
460
+ animated
461
+ } : {
462
+ y: offset,
463
+ animated
464
+ });
465
+ }
466
+ }
467
+ },
468
+ {
469
+ key: "recordInteraction",
470
+ value: function() {
471
+ this._nestedChildLists.forEach(function(childList) {
472
+ childList.recordInteraction();
473
+ }), this._viewabilityTuples.forEach(function(t) {
474
+ t.viewabilityHelper.recordInteraction();
475
+ }), this._updateViewableItems(this.props, this.state.cellsAroundViewport);
476
+ }
477
+ },
478
+ {
479
+ key: "flashScrollIndicators",
480
+ value: function() {
481
+ this._scrollRef != null && this._scrollRef.flashScrollIndicators();
482
+ }
483
+ },
484
+ {
485
+ /**
486
+ * Provides a handle to the underlying scroll responder.
487
+ * Note that `this._scrollRef` might not be a `ScrollView`, so we
488
+ * need to check that it responds to `getScrollResponder` before calling it.
489
+ */
490
+ key: "getScrollResponder",
491
+ value: function() {
492
+ return this._scrollRef && this._scrollRef.getScrollResponder ? this._scrollRef.getScrollResponder() : null;
493
+ }
494
+ },
495
+ {
496
+ key: "getScrollableNode",
497
+ value: function() {
498
+ return this._scrollRef && this._scrollRef.getScrollableNode ? this._scrollRef.getScrollableNode() : this._scrollRef;
499
+ }
500
+ },
501
+ {
502
+ key: "getScrollRef",
503
+ value: function() {
504
+ return this._scrollRef && this._scrollRef.getScrollRef ? this._scrollRef.getScrollRef() : this._scrollRef;
505
+ }
506
+ },
507
+ {
508
+ key: "_getCellKey",
509
+ value: function() {
510
+ var _this_context;
511
+ return ((_this_context = this.context) === null || _this_context === void 0 ? void 0 : _this_context.cellKey) || "rootList";
512
+ }
513
+ },
514
+ {
515
+ key: "hasMore",
516
+ value: function() {
517
+ return this._hasMore;
518
+ }
519
+ },
520
+ {
521
+ key: "_checkProps",
522
+ value: function(props) {
523
+ var { onScroll, windowSize, getItemCount, data, initialScrollIndex } = props;
524
+ (0, import_react_native_web_internals.invariant)(!(onScroll && onScroll.__isNative), "Components based on VirtualizedList must be wrapped with Animated.createAnimatedComponent to support native onScroll events with useNativeDriver"), (0, import_react_native_web_internals.invariant)(windowSizeOrDefault(windowSize) > 0, "VirtualizedList: The windowSize prop must be present and set to a value greater than 0."), (0, import_react_native_web_internals.invariant)(getItemCount, 'VirtualizedList: The "getItemCount" prop must be provided');
525
+ var itemCount = getItemCount(data);
526
+ if (initialScrollIndex != null && !this._hasTriggeredInitialScrollToIndex && (initialScrollIndex < 0 || itemCount > 0 && initialScrollIndex >= itemCount) && !this._hasWarned.initialScrollIndex && (console.warn(`initialScrollIndex "${initialScrollIndex}" is not valid (list has ${itemCount} items)`), this._hasWarned.initialScrollIndex = !0), __DEV__ && !this._hasWarned.flexWrap) {
527
+ var flatStyles = import_react_native_web_internals.StyleSheet.flatten(this.props.contentContainerStyle);
528
+ flatStyles != null && flatStyles.flexWrap === "wrap" && (console.warn("`flexWrap: `wrap`` is not supported with the `VirtualizedList` components.Consider using `numColumns` with `FlatList` instead."), this._hasWarned.flexWrap = !0);
529
+ }
530
+ }
531
+ },
532
+ {
533
+ key: "_adjustCellsAroundViewport",
534
+ value: function(props, cellsAroundViewport) {
535
+ var { data, getItemCount } = props, onEndReachedThreshold = onEndReachedThresholdOrDefault(props.onEndReachedThreshold), { contentLength, offset, visibleLength } = this._scrollMetrics, distanceFromEnd = contentLength - visibleLength - offset;
536
+ if (visibleLength <= 0 || contentLength <= 0)
537
+ return cellsAroundViewport.last >= getItemCount(data) ? VirtualizedList2._constrainToItemCount(cellsAroundViewport, props) : cellsAroundViewport;
538
+ var newCellsAroundViewport;
539
+ if (props.disableVirtualization) {
540
+ var renderAhead = distanceFromEnd < onEndReachedThreshold * visibleLength ? maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch) : 0;
541
+ newCellsAroundViewport = {
542
+ first: 0,
543
+ last: Math.min(cellsAroundViewport.last + renderAhead, getItemCount(data) - 1)
544
+ };
545
+ } else {
546
+ if (props.initialScrollIndex && !this._scrollMetrics.offset && Math.abs(distanceFromEnd) >= Number.EPSILON)
547
+ return cellsAroundViewport.last >= getItemCount(data) ? VirtualizedList2._constrainToItemCount(cellsAroundViewport, props) : cellsAroundViewport;
548
+ newCellsAroundViewport = computeWindowedRenderLimits(props, maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch), windowSizeOrDefault(props.windowSize), cellsAroundViewport, this.__getFrameMetricsApprox, this._scrollMetrics), (0, import_react_native_web_internals.invariant)(newCellsAroundViewport.last < getItemCount(data), "computeWindowedRenderLimits() should return range in-bounds");
549
+ }
550
+ if (this._nestedChildLists.size() > 0) {
551
+ var childIdx = this._findFirstChildWithMore(newCellsAroundViewport.first, newCellsAroundViewport.last);
552
+ newCellsAroundViewport.last = childIdx ?? newCellsAroundViewport.last;
553
+ }
554
+ return newCellsAroundViewport;
555
+ }
556
+ },
557
+ {
558
+ key: "_findFirstChildWithMore",
559
+ value: function(first, last) {
560
+ for (var ii = first; ii <= last; ii++) {
561
+ var cellKeyForIndex = this._indicesToKeys.get(ii);
562
+ if (cellKeyForIndex != null && this._nestedChildLists.anyInCell(cellKeyForIndex, function(childList) {
563
+ return childList.hasMore();
564
+ }))
565
+ return ii;
566
+ }
567
+ return null;
568
+ }
569
+ },
570
+ {
571
+ key: "componentDidMount",
572
+ value: function() {
573
+ this._isNestedWithSameOrientation() && this.context.registerAsNestedChild({
574
+ ref: this,
575
+ cellKey: this.context.cellKey
576
+ }), this.setupWebWheelHandler();
577
+ }
578
+ },
579
+ {
580
+ key: "componentWillUnmount",
581
+ value: function() {
582
+ this._isNestedWithSameOrientation() && this.context.unregisterAsNestedChild({
583
+ ref: this
584
+ }), this._updateCellsToRenderBatcher.dispose({
585
+ abort: !0
586
+ }), this._viewabilityTuples.forEach(function(tuple) {
587
+ tuple.viewabilityHelper.dispose();
588
+ }), this._fillRateHelper.deactivateAndFlush(), this.teardownWebWheelHandler();
589
+ }
590
+ },
591
+ {
592
+ key: "setupWebWheelHandler",
593
+ value: function() {
594
+ var _this = this;
595
+ if (this._scrollRef && this._scrollRef.getScrollableNode)
596
+ this._scrollRef.getScrollableNode().addEventListener("wheel", this.invertedWheelEventHandler);
597
+ else {
598
+ setTimeout(function() {
599
+ return _this.setupWebWheelHandler();
600
+ }, 50);
601
+ return;
602
+ }
603
+ }
604
+ },
605
+ {
606
+ key: "teardownWebWheelHandler",
607
+ value: function() {
608
+ this._scrollRef && this._scrollRef.getScrollableNode && this._scrollRef.getScrollableNode().removeEventListener("wheel", this.invertedWheelEventHandler);
609
+ }
610
+ },
611
+ {
612
+ key: "_pushCells",
613
+ value: function(cells, stickyHeaderIndices, stickyIndicesFromProps, first, last, inversionStyle) {
614
+ var _this, _loop = function(ii2) {
615
+ var item = getItem(data, ii2), key = _this._keyExtractor(item, ii2, _this.props);
616
+ _this._indicesToKeys.set(ii2, key), stickyIndicesFromProps.has(ii2 + stickyOffset) && stickyHeaderIndices.push(cells.length);
617
+ var shouldListenForLayout = getItemLayout == null || debug || _this._fillRateHelper.enabled();
618
+ cells.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VirtualizedListCellRenderer.default, {
619
+ CellRendererComponent,
620
+ ItemSeparatorComponent: ii2 < end ? ItemSeparatorComponent : void 0,
621
+ ListItemComponent,
622
+ cellKey: key,
623
+ horizontal,
624
+ index: ii2,
625
+ inversionStyle,
626
+ item,
627
+ prevCellKey,
628
+ onUpdateSeparators: _this._onUpdateSeparators,
629
+ onCellFocusCapture: function(e) {
630
+ return _this1._onCellFocusCapture(key);
631
+ },
632
+ onUnmount: _this._onCellUnmount,
633
+ ref: function(ref) {
634
+ _this1._cellRefs[key] = ref;
635
+ },
636
+ renderItem,
637
+ ...shouldListenForLayout && {
638
+ onCellLayout: _this._onCellLayout
639
+ }
640
+ }, key)), prevCellKey = key;
641
+ }, _this1 = this, { CellRendererComponent, ItemSeparatorComponent, ListHeaderComponent, ListItemComponent, data, debug, getItem, getItemCount, getItemLayout, horizontal, renderItem } = this.props, stickyOffset = ListHeaderComponent ? 1 : 0, end = getItemCount(data) - 1, prevCellKey;
642
+ last = Math.min(end, last);
643
+ for (var ii = first; ii <= last; ii++) _this = this, _loop(ii);
644
+ }
645
+ },
646
+ {
647
+ key: "_isNestedWithSameOrientation",
648
+ value: function() {
649
+ var nestedContext = this.context;
650
+ return !!(nestedContext && !!nestedContext.horizontal === horizontalOrDefault(this.props.horizontal));
651
+ }
652
+ },
653
+ {
654
+ key: "_keyExtractor",
655
+ value: function(item, index, props) {
656
+ if (props.keyExtractor != null)
657
+ return props.keyExtractor(item, index);
658
+ var key = (0, import_VirtualizeUtils.keyExtractor)(item, index);
659
+ return key === String(index) && (_usedIndexForKey = !0, item.type && item.type.displayName && (_keylessItemComponentName = item.type.displayName)), key;
660
+ }
661
+ },
662
+ {
663
+ key: "render",
664
+ value: function() {
665
+ var _this = this;
666
+ this._checkProps(this.props);
667
+ var { ListEmptyComponent, ListFooterComponent, ListHeaderComponent } = this.props, { data, horizontal } = this.props, inversionStyle = this.props.inverted ? horizontalOrDefault(this.props.horizontal) ? styles.horizontallyInverted : styles.verticallyInverted : null, cells = [], stickyIndicesFromProps = new Set(this.props.stickyHeaderIndices), stickyHeaderIndices = [];
668
+ if (ListHeaderComponent) {
669
+ stickyIndicesFromProps.has(0) && stickyHeaderIndices.push(0);
670
+ var element = /* @__PURE__ */ import_react.default.isValidElement(ListHeaderComponent) ? ListHeaderComponent : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListHeaderComponent, {});
671
+ cells.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VirtualizedListContext.VirtualizedListCellContextProvider, {
672
+ cellKey: this._getCellKey() + "-header",
673
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
674
+ onLayout: this._onLayoutHeader,
675
+ style: [
676
+ inversionStyle,
677
+ this.props.ListHeaderComponentStyle
678
+ ],
679
+ children: element
680
+ })
681
+ }, "$header"));
682
+ }
683
+ var itemCount = this.props.getItemCount(data);
684
+ if (itemCount === 0 && ListEmptyComponent) {
685
+ var element1 = /* @__PURE__ */ import_react.default.isValidElement(ListEmptyComponent) ? ListEmptyComponent : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListEmptyComponent, {});
686
+ cells.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VirtualizedListContext.VirtualizedListCellContextProvider, {
687
+ cellKey: this._getCellKey() + "-empty",
688
+ children: /* @__PURE__ */ import_react.default.cloneElement(element1, {
689
+ onLayout: function(event) {
690
+ _this._onLayoutEmpty(event), element1.props.onLayout && element1.props.onLayout(event);
691
+ },
692
+ style: [
693
+ inversionStyle,
694
+ element1.props.style
695
+ ]
696
+ })
697
+ }, "$empty"));
698
+ }
699
+ if (itemCount > 0) {
700
+ _usedIndexForKey = !1, _keylessItemComponentName = "";
701
+ var spacerKey = this._getSpacerKey(!horizontal), renderRegions = this.state.renderMask.enumerateRegions(), lastSpacer = findLastWhere(renderRegions, function(r) {
702
+ return r.isSpacer;
703
+ }), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
704
+ try {
705
+ for (var _iterator = renderRegions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
706
+ var section = _step.value;
707
+ if (section.isSpacer) {
708
+ if (this.props.disableVirtualization)
709
+ continue;
710
+ var isLastSpacer = section === lastSpacer, constrainToMeasured = isLastSpacer && !this.props.getItemLayout, last = constrainToMeasured ? (0, import_clamp.default)(section.first - 1, section.last, this._highestMeasuredFrameIndex) : section.last, firstMetrics = this.__getFrameMetricsApprox(section.first, this.props), lastMetrics = this.__getFrameMetricsApprox(last, this.props), spacerSize = lastMetrics.offset + lastMetrics.length - firstMetrics.offset;
711
+ cells.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
712
+ style: {
713
+ [spacerKey]: spacerSize
714
+ }
715
+ }, `$spacer-${section.first}`));
716
+ } else
717
+ this._pushCells(cells, stickyHeaderIndices, stickyIndicesFromProps, section.first, section.last, inversionStyle);
718
+ }
719
+ } catch (err) {
720
+ _didIteratorError = !0, _iteratorError = err;
721
+ } finally {
722
+ try {
723
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
724
+ } finally {
725
+ if (_didIteratorError)
726
+ throw _iteratorError;
727
+ }
728
+ }
729
+ !this._hasWarned.keys && _usedIndexForKey && (console.warn("VirtualizedList: missing keys for items, make sure to specify a key or id property on each item or provide a custom keyExtractor.", _keylessItemComponentName), this._hasWarned.keys = !0);
730
+ }
731
+ if (ListFooterComponent) {
732
+ var element2 = /* @__PURE__ */ import_react.default.isValidElement(ListFooterComponent) ? ListFooterComponent : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ListFooterComponent, {});
733
+ cells.push(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VirtualizedListContext.VirtualizedListCellContextProvider, {
734
+ cellKey: this._getFooterCellKey(),
735
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
736
+ onLayout: this._onLayoutFooter,
737
+ style: [
738
+ inversionStyle,
739
+ this.props.ListFooterComponentStyle
740
+ ],
741
+ children: element2
742
+ })
743
+ }, "$footer"));
744
+ }
745
+ var scrollProps = {
746
+ ...this.props,
747
+ onContentSizeChange: this._onContentSizeChange,
748
+ onLayout: this._onLayout,
749
+ onScroll: this._onScroll,
750
+ onScrollBeginDrag: this._onScrollBeginDrag,
751
+ onScrollEndDrag: this._onScrollEndDrag,
752
+ onMomentumScrollBegin: this._onMomentumScrollBegin,
753
+ onMomentumScrollEnd: this._onMomentumScrollEnd,
754
+ scrollEventThrottle: scrollEventThrottleOrDefault(this.props.scrollEventThrottle),
755
+ invertStickyHeaders: this.props.invertStickyHeaders !== void 0 ? this.props.invertStickyHeaders : this.props.inverted,
756
+ stickyHeaderIndices,
757
+ style: inversionStyle ? [
758
+ inversionStyle,
759
+ this.props.style
760
+ ] : this.props.style
761
+ };
762
+ this._hasMore = this.state.cellsAroundViewport.last < itemCount - 1;
763
+ var innerRet = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VirtualizedListContext.VirtualizedListContextProvider, {
764
+ value: {
765
+ cellKey: null,
766
+ getScrollMetrics: this._getScrollMetrics,
767
+ horizontal: horizontalOrDefault(this.props.horizontal),
768
+ getOutermostParentListRef: this._getOutermostParentListRef,
769
+ registerAsNestedChild: this._registerAsNestedChild,
770
+ unregisterAsNestedChild: this._unregisterAsNestedChild
771
+ },
772
+ children: /* @__PURE__ */ import_react.default.cloneElement((this.props.renderScrollComponent || this._defaultRenderScrollComponent)(scrollProps), {
773
+ ref: this._captureScrollRef
774
+ }, cells)
775
+ }), ret = innerRet;
776
+ return ret;
777
+ }
778
+ },
779
+ {
780
+ key: "componentDidUpdate",
781
+ value: function(prevProps) {
782
+ var { data, extraData } = this.props;
783
+ (data !== prevProps.data || extraData !== prevProps.extraData) && this._viewabilityTuples.forEach(function(tuple) {
784
+ tuple.viewabilityHelper.resetViewableIndices();
785
+ });
786
+ var hiPriInProgress = this._hiPriInProgress;
787
+ this._scheduleCellsToRenderUpdate(), hiPriInProgress && (this._hiPriInProgress = !1);
788
+ }
789
+ },
790
+ {
791
+ key: "_computeBlankness",
792
+ value: function() {
793
+ this._fillRateHelper.computeBlankness(
794
+ // @ts-ignore
795
+ this.props,
796
+ this.state.cellsAroundViewport,
797
+ this._scrollMetrics
798
+ );
799
+ }
800
+ },
801
+ {
802
+ key: "_onCellFocusCapture",
803
+ value: function(cellKey) {
804
+ this._lastFocusedCellKey = cellKey, this._updateCellsToRender();
805
+ }
806
+ },
807
+ {
808
+ key: "_triggerRemeasureForChildListsInCell",
809
+ value: function(cellKey) {
810
+ this._nestedChildLists.forEachInCell(cellKey, function(childList) {
811
+ childList.measureLayoutRelativeToContainingList();
812
+ });
813
+ }
814
+ },
815
+ {
816
+ key: "measureLayoutRelativeToContainingList",
817
+ value: function() {
818
+ var _this = this;
819
+ try {
820
+ if (!this._scrollRef)
821
+ return;
822
+ this._scrollRef.measureLayout(this.context.getOutermostParentListRef().getScrollRef(), function(x, y, width, height) {
823
+ _this._offsetFromParentVirtualizedList = _this._selectOffset({
824
+ x,
825
+ y
826
+ }), _this._scrollMetrics.contentLength = _this._selectLength({
827
+ width,
828
+ height
829
+ });
830
+ var scrollMetrics = _this._convertParentScrollMetrics(_this.context.getScrollMetrics()), metricsChanged = _this._scrollMetrics.visibleLength !== scrollMetrics.visibleLength || _this._scrollMetrics.offset !== scrollMetrics.offset;
831
+ metricsChanged && (_this._scrollMetrics.visibleLength = scrollMetrics.visibleLength, _this._scrollMetrics.offset = scrollMetrics.offset, _this._nestedChildLists.forEach(function(childList) {
832
+ childList.measureLayoutRelativeToContainingList();
833
+ }));
834
+ }, function(error) {
835
+ console.warn("VirtualizedList: Encountered an error while measuring a list's offset from its containing VirtualizedList.");
836
+ });
837
+ } catch (error) {
838
+ console.warn("measureLayoutRelativeToContainingList threw an error", error.stack);
839
+ }
840
+ }
841
+ },
842
+ {
843
+ key: "_getFooterCellKey",
844
+ value: function() {
845
+ return this._getCellKey() + "-footer";
846
+ }
847
+ },
848
+ {
849
+ key: "_renderDebugOverlay",
850
+ value: function() {
851
+ for (var normalize = this._scrollMetrics.visibleLength / (this._scrollMetrics.contentLength || 1), framesInLayout = [], itemCount = this.props.getItemCount(this.props.data), ii = 0; ii < itemCount; ii++) {
852
+ var frame = this.__getFrameMetricsApprox(ii, this.props);
853
+ frame.inLayout && framesInLayout.push(frame);
854
+ }
855
+ var windowTop = this.__getFrameMetricsApprox(this.state.cellsAroundViewport.first, this.props).offset, frameLast = this.__getFrameMetricsApprox(this.state.cellsAroundViewport.last, this.props), windowLen = frameLast.offset + frameLast.length - windowTop, visTop = this._scrollMetrics.offset, visLen = this._scrollMetrics.visibleLength;
856
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_View.default, {
857
+ style: [
858
+ styles.debugOverlayBase,
859
+ styles.debugOverlay
860
+ ],
861
+ children: [
862
+ framesInLayout.map(function(f, ii2) {
863
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
864
+ style: [
865
+ styles.debugOverlayBase,
866
+ styles.debugOverlayFrame,
867
+ {
868
+ top: f.offset * normalize,
869
+ height: f.length * normalize
870
+ }
871
+ ]
872
+ }, "f" + ii2);
873
+ }),
874
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
875
+ style: [
876
+ styles.debugOverlayBase,
877
+ styles.debugOverlayFrameLast,
878
+ {
879
+ top: windowTop * normalize,
880
+ height: windowLen * normalize
881
+ }
882
+ ]
883
+ }),
884
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_View.default, {
885
+ style: [
886
+ styles.debugOverlayBase,
887
+ styles.debugOverlayFrameVis,
888
+ {
889
+ top: visTop * normalize,
890
+ height: visLen * normalize
891
+ }
892
+ ]
893
+ })
894
+ ]
895
+ });
896
+ }
897
+ },
898
+ {
899
+ key: "_selectLength",
900
+ value: function(metrics) {
901
+ return horizontalOrDefault(this.props.horizontal) ? metrics.width : metrics.height;
902
+ }
903
+ },
904
+ {
905
+ key: "_selectOffset",
906
+ value: function(metrics) {
907
+ return horizontalOrDefault(this.props.horizontal) ? metrics.x : metrics.y;
908
+ }
909
+ },
910
+ {
911
+ key: "_maybeCallOnEdgeReached",
912
+ value: function() {
913
+ var { data, getItemCount, onStartReached, onStartReachedThreshold, onEndReached, onEndReachedThreshold, initialScrollIndex } = this.props, { contentLength, visibleLength, offset } = this._scrollMetrics, distanceFromStart = offset, distanceFromEnd = contentLength - visibleLength - offset;
914
+ distanceFromStart < ON_EDGE_REACHED_EPSILON && (distanceFromStart = 0), distanceFromEnd < ON_EDGE_REACHED_EPSILON && (distanceFromEnd = 0);
915
+ var DEFAULT_THRESHOLD_PX = 2, startThreshold = onStartReachedThreshold != null ? onStartReachedThreshold * visibleLength : DEFAULT_THRESHOLD_PX, endThreshold = onEndReachedThreshold != null ? onEndReachedThreshold * visibleLength : DEFAULT_THRESHOLD_PX, isWithinStartThreshold = distanceFromStart <= startThreshold, isWithinEndThreshold = distanceFromEnd <= endThreshold;
916
+ onEndReached && this.state.cellsAroundViewport.last === getItemCount(data) - 1 && isWithinEndThreshold && this._scrollMetrics.contentLength !== this._sentEndForContentLength ? (this._sentEndForContentLength = this._scrollMetrics.contentLength, onEndReached({
917
+ distanceFromEnd
918
+ })) : onStartReached != null && this.state.cellsAroundViewport.first === 0 && isWithinStartThreshold && this._scrollMetrics.contentLength !== this._sentStartForContentLength ? (!initialScrollIndex || this._scrollMetrics.timestamp !== 0) && (this._sentStartForContentLength = this._scrollMetrics.contentLength, onStartReached({
919
+ distanceFromStart
920
+ })) : (this._sentStartForContentLength = isWithinStartThreshold ? this._sentStartForContentLength : 0, this._sentEndForContentLength = isWithinEndThreshold ? this._sentEndForContentLength : 0);
921
+ }
922
+ },
923
+ {
924
+ key: "_scheduleCellsToRenderUpdate",
925
+ value: function() {
926
+ var { first, last } = this.state.cellsAroundViewport, { offset, visibleLength, velocity } = this._scrollMetrics, itemCount = this.props.getItemCount(this.props.data), hiPri = !1, onStartReachedThreshold = onStartReachedThresholdOrDefault(this.props.onStartReachedThreshold), onEndReachedThreshold = onEndReachedThresholdOrDefault(this.props.onEndReachedThreshold);
927
+ if (first > 0) {
928
+ var distTop = offset - this.__getFrameMetricsApprox(first, this.props).offset;
929
+ hiPri = distTop < 0 || velocity < -2 && distTop < getScrollingThreshold(onStartReachedThreshold, visibleLength);
930
+ }
931
+ if (!hiPri && last >= 0 && last < itemCount - 1) {
932
+ var distBottom = this.__getFrameMetricsApprox(last, this.props).offset - (offset + visibleLength);
933
+ hiPri = distBottom < 0 || velocity > 2 && distBottom < getScrollingThreshold(onEndReachedThreshold, visibleLength);
934
+ }
935
+ if (hiPri && (this._averageCellLength || this.props.getItemLayout) && !this._hiPriInProgress) {
936
+ this._hiPriInProgress = !0, this._updateCellsToRenderBatcher.dispose({
937
+ abort: !0
938
+ }), this._updateCellsToRender();
939
+ return;
940
+ } else
941
+ this._updateCellsToRenderBatcher.schedule();
942
+ }
943
+ },
944
+ {
945
+ key: "_updateViewableItems",
946
+ value: function(props, cellsAroundViewport) {
947
+ var _this = this;
948
+ this._viewabilityTuples.forEach(function(tuple) {
949
+ tuple.viewabilityHelper.onUpdate(props, _this._scrollMetrics.offset, _this._scrollMetrics.visibleLength, _this._getFrameMetrics, _this._createViewToken, tuple.onViewableItemsChanged, cellsAroundViewport);
950
+ });
951
+ }
952
+ }
953
+ ], [
954
+ {
955
+ key: "_createRenderMask",
956
+ value: function(props, cellsAroundViewport, additionalRegions) {
957
+ var itemCount = props.getItemCount(props.data);
958
+ (0, import_react_native_web_internals.invariant)(cellsAroundViewport.first >= 0 && cellsAroundViewport.last >= cellsAroundViewport.first - 1 && cellsAroundViewport.last < itemCount, `Invalid cells around viewport "[${cellsAroundViewport.first}, ${cellsAroundViewport.last}]" was passed to VirtualizedList._createRenderMask`);
959
+ var renderMask = new import_CellRenderMask.CellRenderMask(itemCount);
960
+ if (itemCount > 0) {
961
+ var allRegions = [
962
+ cellsAroundViewport,
963
+ ...additionalRegions ?? []
964
+ ], _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
965
+ try {
966
+ for (var _iterator = allRegions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
967
+ var region = _step.value;
968
+ renderMask.addCells(region);
969
+ }
970
+ } catch (err) {
971
+ _didIteratorError = !0, _iteratorError = err;
972
+ } finally {
973
+ try {
974
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
975
+ } finally {
976
+ if (_didIteratorError)
977
+ throw _iteratorError;
978
+ }
979
+ }
980
+ if (props.initialScrollIndex == null || props.initialScrollIndex <= 0) {
981
+ var initialRegion = VirtualizedList2._initialRenderRegion(props);
982
+ renderMask.addCells(initialRegion);
983
+ }
984
+ var stickyIndicesSet = new Set(props.stickyHeaderIndices);
985
+ VirtualizedList2._ensureClosestStickyHeader(props, stickyIndicesSet, renderMask, cellsAroundViewport.first);
986
+ }
987
+ return renderMask;
988
+ }
989
+ },
990
+ {
991
+ key: "_initialRenderRegion",
992
+ value: function(props) {
993
+ var itemCount = props.getItemCount(props.data), _props_initialScrollIndex, firstCellIndex = Math.max(0, Math.min(itemCount - 1, Math.floor((_props_initialScrollIndex = props.initialScrollIndex) !== null && _props_initialScrollIndex !== void 0 ? _props_initialScrollIndex : 0))), lastCellIndex = Math.min(itemCount, firstCellIndex + initialNumToRenderOrDefault(props.initialNumToRender)) - 1;
994
+ return {
995
+ first: firstCellIndex,
996
+ last: lastCellIndex
997
+ };
998
+ }
999
+ },
1000
+ {
1001
+ key: "_ensureClosestStickyHeader",
1002
+ value: function(props, stickyIndicesSet, renderMask, cellIdx) {
1003
+ for (var stickyOffset = props.ListHeaderComponent ? 1 : 0, itemIdx = cellIdx - 1; itemIdx >= 0; itemIdx--)
1004
+ if (stickyIndicesSet.has(itemIdx + stickyOffset)) {
1005
+ renderMask.addCells({
1006
+ first: itemIdx,
1007
+ last: itemIdx
1008
+ });
1009
+ break;
1010
+ }
1011
+ }
1012
+ },
1013
+ {
1014
+ key: "getDerivedStateFromProps",
1015
+ value: function(newProps, prevState) {
1016
+ var itemCount = newProps.getItemCount(newProps.data);
1017
+ if (itemCount === prevState.renderMask.numCells())
1018
+ return prevState;
1019
+ var constrainedCells = VirtualizedList2._constrainToItemCount(prevState.cellsAroundViewport, newProps);
1020
+ return {
1021
+ cellsAroundViewport: constrainedCells,
1022
+ renderMask: VirtualizedList2._createRenderMask(newProps, constrainedCells)
1023
+ };
1024
+ }
1025
+ },
1026
+ {
1027
+ key: "_constrainToItemCount",
1028
+ value: function(cells, props) {
1029
+ var itemCount = props.getItemCount(props.data), last = Math.min(itemCount - 1, cells.last), maxToRenderPerBatch = maxToRenderPerBatchOrDefault(props.maxToRenderPerBatch);
1030
+ return {
1031
+ first: (0, import_clamp.default)(0, itemCount - 1 - maxToRenderPerBatch, cells.first),
1032
+ last
1033
+ };
1034
+ }
1035
+ }
1036
+ ]), VirtualizedList2;
1037
+ }(import_StateSafePureComponent.default);
1038
+ _define_property(VirtualizedList, "contextType", import_VirtualizedListContext.VirtualizedListContext);
1039
+ var styles = import_react_native_web_internals.StyleSheet.create({
1040
+ verticallyInverted: {
1041
+ transform: "scaleY(-1)"
1042
+ },
1043
+ horizontallyInverted: {
1044
+ transform: "scaleX(-1)"
1045
+ },
1046
+ debug: {
1047
+ flex: 1
1048
+ },
1049
+ debugOverlayBase: {
1050
+ position: "absolute",
1051
+ top: 0,
1052
+ right: 0
1053
+ },
1054
+ debugOverlay: {
1055
+ bottom: 0,
1056
+ width: 20,
1057
+ borderColor: "blue",
1058
+ borderWidth: 1
1059
+ },
1060
+ debugOverlayFrame: {
1061
+ left: 0,
1062
+ backgroundColor: "orange"
1063
+ },
1064
+ debugOverlayFrameLast: {
1065
+ left: 0,
1066
+ borderColor: "green",
1067
+ borderWidth: 2
1068
+ },
1069
+ debugOverlayFrameVis: {
1070
+ left: 0,
1071
+ borderColor: "red",
1072
+ borderWidth: 2
1073
+ }
1074
+ }), VirtualizedList_default = VirtualizedList;
1075
+ //# sourceMappingURL=index.js.map