@xhsreds/reds-rn-next 0.9.1-feat-swiper202511031535 → 0.9.1-feat-0.10.0-rc202511031536

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 (536) hide show
  1. package/coverage/.tmp/coverage-10.json +1 -1
  2. package/coverage/.tmp/coverage-11.json +1 -1
  3. package/coverage/.tmp/coverage-12.json +1 -1
  4. package/coverage/.tmp/coverage-13.json +1 -1
  5. package/coverage/.tmp/coverage-14.json +1 -1
  6. package/coverage/.tmp/coverage-15.json +1 -1
  7. package/coverage/.tmp/coverage-17.json +1 -1
  8. package/coverage/.tmp/coverage-2.json +1 -1
  9. package/coverage/.tmp/coverage-21.json +1 -1
  10. package/coverage/.tmp/coverage-22.json +1 -1
  11. package/coverage/.tmp/coverage-23.json +1 -1
  12. package/coverage/.tmp/coverage-24.json +1 -1
  13. package/coverage/.tmp/coverage-25.json +1 -1
  14. package/coverage/.tmp/coverage-26.json +1 -1
  15. package/coverage/.tmp/coverage-27.json +1 -1
  16. package/coverage/.tmp/coverage-3.json +1 -1
  17. package/coverage/.tmp/coverage-30.json +1 -1
  18. package/coverage/.tmp/coverage-31.json +1 -1
  19. package/coverage/.tmp/coverage-32.json +1 -1
  20. package/coverage/.tmp/coverage-33.json +1 -1
  21. package/coverage/.tmp/coverage-34.json +1 -1
  22. package/coverage/.tmp/coverage-35.json +1 -1
  23. package/coverage/.tmp/coverage-36.json +1 -1
  24. package/coverage/.tmp/coverage-37.json +1 -1
  25. package/coverage/.tmp/coverage-38.json +1 -1
  26. package/coverage/.tmp/coverage-39.json +1 -1
  27. package/coverage/.tmp/coverage-4.json +1 -1
  28. package/coverage/.tmp/coverage-40.json +1 -1
  29. package/coverage/.tmp/coverage-41.json +1 -1
  30. package/coverage/.tmp/coverage-42.json +1 -1
  31. package/coverage/.tmp/coverage-5.json +1 -1
  32. package/coverage/.tmp/coverage-6.json +1 -1
  33. package/coverage/.tmp/coverage-7.json +1 -1
  34. package/coverage/.tmp/coverage-8.json +1 -1
  35. package/coverage/.tmp/coverage-9.json +1 -1
  36. package/lib/cjs/_chunks/{hnLc3Qom.js → C9tZEm0t.js} +10 -8
  37. package/lib/cjs/_chunks/{hnLc3Qom.js.map → C9tZEm0t.js.map} +1 -1
  38. package/lib/cjs/_chunks/CwkpVXDI.js.map +1 -1
  39. package/lib/cjs/_chunks/{Dn-t7SiM.js → DNr-ZG4Y.js} +2 -2
  40. package/lib/cjs/_chunks/{Dn-t7SiM.js.map → DNr-ZG4Y.js.map} +1 -1
  41. package/lib/cjs/_chunks/{CIr5S84J.js → DUU5wf2f.js} +4 -2
  42. package/lib/cjs/_chunks/DUU5wf2f.js.map +1 -0
  43. package/lib/cjs/components/ActionSheets/ActionSheets.js +1 -1
  44. package/lib/cjs/components/ActionSheets/ActionSheetsItem.js +1 -1
  45. package/lib/cjs/components/ActionSheets/api.js +1 -1
  46. package/lib/cjs/components/ActionSheets/hooks.js +1 -1
  47. package/lib/cjs/components/ActionSheets/index.js +1 -1
  48. package/lib/cjs/components/ActionablePopover/ActionablePopover.js +1 -1
  49. package/lib/cjs/components/ActionablePopover/index.js +1 -1
  50. package/lib/cjs/components/Alert/Alert.js +1 -1
  51. package/lib/cjs/components/Alert/hooks/alert.js +1 -1
  52. package/lib/cjs/components/Alert/index.js +1 -1
  53. package/lib/cjs/components/Alert/styles.js +1 -1
  54. package/lib/cjs/components/Avatar/Avatar.js +1 -1
  55. package/lib/cjs/components/Avatar/index.js +1 -1
  56. package/lib/cjs/components/Avatar/styles.js +1 -1
  57. package/lib/cjs/components/AvatarGroup/AvatarGroup.js +1 -1
  58. package/lib/cjs/components/AvatarGroup/index.js +1 -1
  59. package/lib/cjs/components/Badge/Badge.js +1 -1
  60. package/lib/cjs/components/Badge/index.js +1 -1
  61. package/lib/cjs/components/Badge/styles.js +1 -1
  62. package/lib/cjs/components/BottomBar/BottomBar.js +1 -1
  63. package/lib/cjs/components/BottomBar/index.js +1 -1
  64. package/lib/cjs/components/Button/Button.js +1 -1
  65. package/lib/cjs/components/Button/Viewable.js +1 -1
  66. package/lib/cjs/components/Button/index.js +1 -1
  67. package/lib/cjs/components/Button/styleMap.js +1 -1
  68. package/lib/cjs/components/Carousel/Carousel.js +10 -3
  69. package/lib/cjs/components/Carousel/Carousel.js.map +1 -1
  70. package/lib/cjs/components/Carousel/index.js +1 -1
  71. package/lib/cjs/components/CheckBoxGroup/CheckBox.js +1 -1
  72. package/lib/cjs/components/CheckBoxGroup/CheckBoxGroup.js +1 -1
  73. package/lib/cjs/components/CheckBoxGroup/index.js +1 -1
  74. package/lib/cjs/components/CheckBoxGroup/styles.js +1 -1
  75. package/lib/cjs/components/Collapse/Collapse.js +1 -1
  76. package/lib/cjs/components/Collapse/Item/Item.js +1 -1
  77. package/lib/cjs/components/Collapse/Item/styles.js +1 -1
  78. package/lib/cjs/components/Collapse/index.js +1 -1
  79. package/lib/cjs/components/ConfigProvider/ConfigProvider.js +1 -1
  80. package/lib/cjs/components/ConfigProvider/hooks/ConfigCache/ConfigCache.js +1 -1
  81. package/lib/cjs/components/ConfigProvider/hooks/ConfigCache/index.js +1 -1
  82. package/lib/cjs/components/ConfigProvider/hooks/themeToken/index.js +1 -1
  83. package/lib/cjs/components/ConfigProvider/hooks/themeToken/useThemeToken.js +1 -1
  84. package/lib/cjs/components/ConfigProvider/index.js +1 -1
  85. package/lib/cjs/components/DatePicker/DatePicker.js +1 -1
  86. package/lib/cjs/components/DatePicker/api.js +1 -1
  87. package/lib/cjs/components/DatePicker/index.js +1 -1
  88. package/lib/cjs/components/Divider/Divider.js +1 -1
  89. package/lib/cjs/components/Divider/index.js +1 -1
  90. package/lib/cjs/components/Divider/styles.js +1 -1
  91. package/lib/cjs/components/DropDown/DropDown.js +1 -1
  92. package/lib/cjs/components/DropDown/DropDownItem.js +1 -1
  93. package/lib/cjs/components/DropDown/index.js +1 -1
  94. package/lib/cjs/components/Empty/Empty.js +1 -1
  95. package/lib/cjs/components/Empty/index.js +1 -1
  96. package/lib/cjs/components/Empty/styles.js +1 -1
  97. package/lib/cjs/components/FAB/FAB.js +1 -1
  98. package/lib/cjs/components/FAB/index.js +1 -1
  99. package/lib/cjs/components/Form/Form.js +1 -1
  100. package/lib/cjs/components/Form/FormItem.js +1 -1
  101. package/lib/cjs/components/Form/index.js +1 -1
  102. package/lib/cjs/components/Form/styles.js +1 -1
  103. package/lib/cjs/components/Image/Image.js +30 -93
  104. package/lib/cjs/components/Image/Image.js.map +1 -1
  105. package/lib/cjs/components/Image/Image69.js +1 -1
  106. package/lib/cjs/components/Image/VisibilitySensor.js +2 -2
  107. package/lib/cjs/components/Image/VisibilitySensor.js.map +1 -1
  108. package/lib/cjs/components/Image/hook/index.js +1 -1
  109. package/lib/cjs/components/Image/index.js +5 -4
  110. package/lib/cjs/components/Image/index.js.map +1 -1
  111. package/lib/cjs/components/Image/queryCacheBatcher.js +96 -0
  112. package/lib/cjs/components/Image/queryCacheBatcher.js.map +1 -0
  113. package/lib/cjs/components/Image/utils.js +1 -1
  114. package/lib/cjs/components/ImagePreview/ImagePreview.js +1 -1
  115. package/lib/cjs/components/ImagePreview/api.js +1 -1
  116. package/lib/cjs/components/ImagePreview/index.js +1 -1
  117. package/lib/cjs/components/LanguageProvider/hooks/useLanguage.js +1 -1
  118. package/lib/cjs/components/LanguageProvider/index.js +1 -1
  119. package/lib/cjs/components/List/List.js +1 -1
  120. package/lib/cjs/components/List/ListItem/ListItem.js +1 -1
  121. package/lib/cjs/components/List/index.js +1 -1
  122. package/lib/cjs/components/List/styles.js +1 -1
  123. package/lib/cjs/components/MiniSnackBar/MiniSnackBar.js +1 -1
  124. package/lib/cjs/components/MiniSnackBar/index.js +1 -1
  125. package/lib/cjs/components/MiniSnackBar/styles.js +1 -1
  126. package/lib/cjs/components/NavigationBar/NavigationBar.js +1 -1
  127. package/lib/cjs/components/NavigationBar/index.js +1 -1
  128. package/lib/cjs/components/NavigationBar/styles.js +1 -1
  129. package/lib/cjs/components/NoticeBar/NoticeBar.js +1 -1
  130. package/lib/cjs/components/NoticeBar/index.js +1 -1
  131. package/lib/cjs/components/Picker/Picker.js +1 -1
  132. package/lib/cjs/components/Picker/api.js +1 -1
  133. package/lib/cjs/components/Picker/index.js +1 -1
  134. package/lib/cjs/components/PickerView/PickerView.js +1 -1
  135. package/lib/cjs/components/PickerView/Wheel.js +1 -1
  136. package/lib/cjs/components/PickerView/index.js +1 -1
  137. package/lib/cjs/components/Popover/Popover.js +5 -4
  138. package/lib/cjs/components/Popover/Popover.js.map +1 -1
  139. package/lib/cjs/components/Popover/index.js +1 -1
  140. package/lib/cjs/components/Portal/core/PortalProvider.js +1 -1
  141. package/lib/cjs/components/Portal/index.js +1 -1
  142. package/lib/cjs/components/Progress/Progress.js +1 -1
  143. package/lib/cjs/components/Progress/index.js +1 -1
  144. package/lib/cjs/components/Progress/styles.js +1 -1
  145. package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js +1 -1
  146. package/lib/cjs/components/ProgressIndicator/index.js +1 -1
  147. package/lib/cjs/components/ProgressIndicator/styles.js +1 -1
  148. package/lib/cjs/components/PullRefresh/PullRefresh.js +105 -41
  149. package/lib/cjs/components/PullRefresh/PullRefresh.js.map +1 -1
  150. package/lib/cjs/components/PullRefresh/component.js +2 -2
  151. package/lib/cjs/components/PullRefresh/index.js +2 -2
  152. package/lib/cjs/components/PullRefresh/interface/index.js +1 -1
  153. package/lib/cjs/components/Radio/Radio.js +5 -10
  154. package/lib/cjs/components/Radio/Radio.js.map +1 -1
  155. package/lib/cjs/components/Radio/RadioGroup.js +1 -1
  156. package/lib/cjs/components/Radio/index.js +5 -10
  157. package/lib/cjs/components/Radio/index.js.map +1 -1
  158. package/lib/cjs/components/Radio/styles.js +1 -1
  159. package/lib/cjs/components/Rate/Rate.js +1 -1
  160. package/lib/cjs/components/Rate/index.js +1 -1
  161. package/lib/cjs/components/Result/Result.js +1 -1
  162. package/lib/cjs/components/Result/index.js +1 -1
  163. package/lib/cjs/components/Result/styles.js +1 -1
  164. package/lib/cjs/components/Search/Search.js +1 -1
  165. package/lib/cjs/components/Search/index.js +1 -1
  166. package/lib/cjs/components/Search/styles.js +1 -1
  167. package/lib/cjs/components/SegmentedControl/SegmentedControl.js +1 -1
  168. package/lib/cjs/components/SegmentedControl/index.js +1 -1
  169. package/lib/cjs/components/Sheets/AnimatedSheets.js +1 -1
  170. package/lib/cjs/components/Sheets/Sheets.js +1 -1
  171. package/lib/cjs/components/Sheets/api.js +1 -1
  172. package/lib/cjs/components/Sheets/index.js +1 -1
  173. package/lib/cjs/components/Sheets/styles.js +2 -2
  174. package/lib/cjs/components/Sheets/styles.js.map +1 -1
  175. package/lib/cjs/components/Skeleton/Item/SkeletonItem.js +1 -1
  176. package/lib/cjs/components/Skeleton/Item/SkeletonItem69.js +1 -1
  177. package/lib/cjs/components/Skeleton/Skeleton.js +1 -1
  178. package/lib/cjs/components/Skeleton/Skeleton69.js +1 -1
  179. package/lib/cjs/components/Skeleton/index.js +1 -1
  180. package/lib/cjs/components/Slider/Slider.js +1 -1
  181. package/lib/cjs/components/Slider/index.js +1 -1
  182. package/lib/cjs/components/SlimAlert/Alert.js +1 -1
  183. package/lib/cjs/components/SlimAlert/AlertContent.js +1 -1
  184. package/lib/cjs/components/SlimAlert/AlertFooter.js +1 -1
  185. package/lib/cjs/components/SlimAlert/index.js +1 -1
  186. package/lib/cjs/components/SlimAlert/styles.js +1 -1
  187. package/lib/cjs/components/SlimNavigationBar/NavigationBar.js +1 -1
  188. package/lib/cjs/components/SlimNavigationBar/NavigationBarAction.js +1 -1
  189. package/lib/cjs/components/SlimNavigationBar/index.js +1 -1
  190. package/lib/cjs/components/SlimNavigationBar/styles.js +1 -1
  191. package/lib/cjs/components/SlimSheets/AnimatedSheets.js +1 -1
  192. package/lib/cjs/components/SlimSheets/AnimatedSheetsAction.js +1 -1
  193. package/lib/cjs/components/SlimSheets/AnimatedSheetsHeader.js +1 -1
  194. package/lib/cjs/components/SlimSheets/DragAnimatedSheets.js +1 -1
  195. package/lib/cjs/components/SlimSheets/index.js +1 -1
  196. package/lib/cjs/components/SlimTabs/BadgeSlimTabItem.js +1 -1
  197. package/lib/cjs/components/SlimTabs/SlimTab.js +1 -1
  198. package/lib/cjs/components/SlimTabs/SlimTabItem.js +1 -1
  199. package/lib/cjs/components/SlimTabs/SlimTabItemLabel.js +1 -1
  200. package/lib/cjs/components/SlimTabs/SlimTabItemValue.js +1 -1
  201. package/lib/cjs/components/SlimTabs/SlimTabList.js +1 -1
  202. package/lib/cjs/components/SlimTabs/index.js +1 -1
  203. package/lib/cjs/components/SlimTabs/styles.js +1 -1
  204. package/lib/cjs/components/SnackBar/SnackBar.js +1 -1
  205. package/lib/cjs/components/SnackBar/index.js +1 -1
  206. package/lib/cjs/components/SnackBar/styles.js +1 -1
  207. package/lib/cjs/components/Stepper/Stepper.js +1 -1
  208. package/lib/cjs/components/Stepper/index.js +1 -1
  209. package/lib/cjs/components/Switch/Switch.js +1 -1
  210. package/lib/cjs/components/Switch/index.js +1 -1
  211. package/lib/cjs/components/Tab/Tabs.js +1 -1
  212. package/lib/cjs/components/Tab/index.js +1 -1
  213. package/lib/cjs/components/Tab/styles.js +1 -1
  214. package/lib/cjs/components/TabBar/TabBar.js +1 -1
  215. package/lib/cjs/components/TabBar/index.js +1 -1
  216. package/lib/cjs/components/TabBar/styles.js +1 -1
  217. package/lib/cjs/components/Tag/Tag.js +1 -1
  218. package/lib/cjs/components/Tag/index.js +1 -1
  219. package/lib/cjs/components/Text/Text.js +1 -1
  220. package/lib/cjs/components/Text/Viewable.js +1 -1
  221. package/lib/cjs/components/Text/hooks/cloneContainer.js +1 -1
  222. package/lib/cjs/components/Text/hooks/index.js +1 -1
  223. package/lib/cjs/components/Text/hooks/loadFontFromFile.js +2 -2
  224. package/lib/cjs/components/Text/hooks/loadFontFromFile.js.map +1 -1
  225. package/lib/cjs/components/Text/index.js +1 -1
  226. package/lib/cjs/components/Text/styles.js +1 -1
  227. package/lib/cjs/components/TextField/TextField.js +1 -1
  228. package/lib/cjs/components/TextField/index.js +1 -1
  229. package/lib/cjs/components/TextField/styles.js +1 -1
  230. package/lib/cjs/components/TextView/TextView.js +1 -1
  231. package/lib/cjs/components/TextView/index.js +1 -1
  232. package/lib/cjs/components/TextView/styles.js +1 -1
  233. package/lib/cjs/components/Toast/Toast.js +1 -1
  234. package/lib/cjs/components/Toast/api.js +1 -1
  235. package/lib/cjs/components/Toast/index.js +1 -1
  236. package/lib/cjs/components/Toast/styles.js +1 -1
  237. package/lib/cjs/components/Uploader/Uploader.js +3 -3
  238. package/lib/cjs/components/Uploader/Uploader.js.map +1 -1
  239. package/lib/cjs/components/Uploader/index.js +2 -2
  240. package/lib/cjs/components/Uploader/interface/index.js +2 -2
  241. package/lib/cjs/components/Uploader/styles.js +2 -2
  242. package/lib/cjs/components/Uploader/utils.js +1 -1
  243. package/lib/cjs/index.js +5 -11
  244. package/lib/cjs/index.js.map +1 -1
  245. package/lib/cjs/pvCount/pvData.js +0 -1
  246. package/lib/cjs/pvCount/pvData.js.map +1 -1
  247. package/lib/esm/_chunks/{CgvIDP0E.js → CAkwE9ZD.js} +10 -8
  248. package/lib/esm/_chunks/{CgvIDP0E.js.map → CAkwE9ZD.js.map} +1 -1
  249. package/lib/esm/_chunks/Da9cW8JG.js.map +1 -1
  250. package/lib/esm/_chunks/{DRgGcbc8.js → eYElHgNc.js} +2 -2
  251. package/lib/esm/_chunks/{DRgGcbc8.js.map → eYElHgNc.js.map} +1 -1
  252. package/lib/esm/_chunks/{CZtagXcj.js → gC9g4Fr_.js} +4 -2
  253. package/lib/esm/_chunks/gC9g4Fr_.js.map +1 -0
  254. package/lib/esm/components/ActionSheets/ActionSheets.js +1 -1
  255. package/lib/esm/components/ActionSheets/ActionSheetsItem.js +1 -1
  256. package/lib/esm/components/ActionSheets/api.js +1 -1
  257. package/lib/esm/components/ActionSheets/hooks.js +1 -1
  258. package/lib/esm/components/ActionSheets/index.js +1 -1
  259. package/lib/esm/components/ActionablePopover/ActionablePopover.js +1 -1
  260. package/lib/esm/components/ActionablePopover/index.js +1 -1
  261. package/lib/esm/components/Alert/Alert.js +1 -1
  262. package/lib/esm/components/Alert/hooks/alert.js +1 -1
  263. package/lib/esm/components/Alert/index.js +1 -1
  264. package/lib/esm/components/Alert/styles.js +1 -1
  265. package/lib/esm/components/Avatar/Avatar.js +1 -1
  266. package/lib/esm/components/Avatar/index.js +1 -1
  267. package/lib/esm/components/Avatar/styles.js +1 -1
  268. package/lib/esm/components/AvatarGroup/AvatarGroup.js +1 -1
  269. package/lib/esm/components/AvatarGroup/index.js +1 -1
  270. package/lib/esm/components/Badge/Badge.js +1 -1
  271. package/lib/esm/components/Badge/index.js +1 -1
  272. package/lib/esm/components/Badge/styles.js +1 -1
  273. package/lib/esm/components/BottomBar/BottomBar.js +1 -1
  274. package/lib/esm/components/BottomBar/index.js +1 -1
  275. package/lib/esm/components/Button/Button.js +1 -1
  276. package/lib/esm/components/Button/Viewable.js +1 -1
  277. package/lib/esm/components/Button/index.js +1 -1
  278. package/lib/esm/components/Button/styleMap.js +1 -1
  279. package/lib/esm/components/Carousel/Carousel.js +10 -3
  280. package/lib/esm/components/Carousel/Carousel.js.map +1 -1
  281. package/lib/esm/components/Carousel/index.js +1 -1
  282. package/lib/esm/components/CheckBoxGroup/CheckBox.js +1 -1
  283. package/lib/esm/components/CheckBoxGroup/CheckBoxGroup.js +1 -1
  284. package/lib/esm/components/CheckBoxGroup/index.js +1 -1
  285. package/lib/esm/components/CheckBoxGroup/styles.js +1 -1
  286. package/lib/esm/components/Collapse/Collapse.js +1 -1
  287. package/lib/esm/components/Collapse/Item/Item.js +1 -1
  288. package/lib/esm/components/Collapse/Item/styles.js +1 -1
  289. package/lib/esm/components/Collapse/index.js +1 -1
  290. package/lib/esm/components/ConfigProvider/ConfigProvider.js +1 -1
  291. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/ConfigCache.js +1 -1
  292. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/index.js +1 -1
  293. package/lib/esm/components/ConfigProvider/hooks/themeToken/index.js +1 -1
  294. package/lib/esm/components/ConfigProvider/hooks/themeToken/useThemeToken.js +1 -1
  295. package/lib/esm/components/ConfigProvider/index.js +1 -1
  296. package/lib/esm/components/DatePicker/DatePicker.js +1 -1
  297. package/lib/esm/components/DatePicker/api.js +1 -1
  298. package/lib/esm/components/DatePicker/index.js +1 -1
  299. package/lib/esm/components/Divider/Divider.js +1 -1
  300. package/lib/esm/components/Divider/index.js +1 -1
  301. package/lib/esm/components/Divider/styles.js +1 -1
  302. package/lib/esm/components/DropDown/DropDown.js +1 -1
  303. package/lib/esm/components/DropDown/DropDownItem.js +1 -1
  304. package/lib/esm/components/DropDown/index.js +1 -1
  305. package/lib/esm/components/Empty/Empty.js +1 -1
  306. package/lib/esm/components/Empty/index.js +1 -1
  307. package/lib/esm/components/Empty/styles.js +1 -1
  308. package/lib/esm/components/FAB/FAB.js +1 -1
  309. package/lib/esm/components/FAB/index.js +1 -1
  310. package/lib/esm/components/Form/Form.js +1 -1
  311. package/lib/esm/components/Form/FormItem.js +1 -1
  312. package/lib/esm/components/Form/index.js +1 -1
  313. package/lib/esm/components/Form/styles.js +1 -1
  314. package/lib/esm/components/Image/Image.js +32 -95
  315. package/lib/esm/components/Image/Image.js.map +1 -1
  316. package/lib/esm/components/Image/Image69.js +1 -1
  317. package/lib/esm/components/Image/VisibilitySensor.js +2 -2
  318. package/lib/esm/components/Image/VisibilitySensor.js.map +1 -1
  319. package/lib/esm/components/Image/hook/index.js +1 -1
  320. package/lib/esm/components/Image/index.js +5 -4
  321. package/lib/esm/components/Image/index.js.map +1 -1
  322. package/lib/esm/components/Image/queryCacheBatcher.js +92 -0
  323. package/lib/esm/components/Image/queryCacheBatcher.js.map +1 -0
  324. package/lib/esm/components/Image/utils.js +1 -1
  325. package/lib/esm/components/ImagePreview/ImagePreview.js +1 -1
  326. package/lib/esm/components/ImagePreview/api.js +1 -1
  327. package/lib/esm/components/ImagePreview/index.js +1 -1
  328. package/lib/esm/components/LanguageProvider/hooks/useLanguage.js +1 -1
  329. package/lib/esm/components/LanguageProvider/index.js +1 -1
  330. package/lib/esm/components/List/List.js +1 -1
  331. package/lib/esm/components/List/ListItem/ListItem.js +1 -1
  332. package/lib/esm/components/List/index.js +1 -1
  333. package/lib/esm/components/List/styles.js +1 -1
  334. package/lib/esm/components/MiniSnackBar/MiniSnackBar.js +1 -1
  335. package/lib/esm/components/MiniSnackBar/index.js +1 -1
  336. package/lib/esm/components/MiniSnackBar/styles.js +1 -1
  337. package/lib/esm/components/NavigationBar/NavigationBar.js +1 -1
  338. package/lib/esm/components/NavigationBar/index.js +1 -1
  339. package/lib/esm/components/NavigationBar/styles.js +1 -1
  340. package/lib/esm/components/NoticeBar/NoticeBar.js +1 -1
  341. package/lib/esm/components/NoticeBar/index.js +1 -1
  342. package/lib/esm/components/Picker/Picker.js +1 -1
  343. package/lib/esm/components/Picker/api.js +1 -1
  344. package/lib/esm/components/Picker/index.js +1 -1
  345. package/lib/esm/components/PickerView/PickerView.js +1 -1
  346. package/lib/esm/components/PickerView/Wheel.js +1 -1
  347. package/lib/esm/components/PickerView/index.js +1 -1
  348. package/lib/esm/components/Popover/Popover.js +5 -4
  349. package/lib/esm/components/Popover/Popover.js.map +1 -1
  350. package/lib/esm/components/Popover/index.js +1 -1
  351. package/lib/esm/components/Portal/core/PortalProvider.js +1 -1
  352. package/lib/esm/components/Portal/index.js +1 -1
  353. package/lib/esm/components/Progress/Progress.js +1 -1
  354. package/lib/esm/components/Progress/index.js +1 -1
  355. package/lib/esm/components/Progress/styles.js +1 -1
  356. package/lib/esm/components/ProgressIndicator/ProgressIndicator.js +1 -1
  357. package/lib/esm/components/ProgressIndicator/index.js +1 -1
  358. package/lib/esm/components/ProgressIndicator/styles.js +1 -1
  359. package/lib/esm/components/PullRefresh/PullRefresh.js +106 -42
  360. package/lib/esm/components/PullRefresh/PullRefresh.js.map +1 -1
  361. package/lib/esm/components/PullRefresh/component.js +2 -2
  362. package/lib/esm/components/PullRefresh/index.js +2 -2
  363. package/lib/esm/components/PullRefresh/interface/index.js +1 -1
  364. package/lib/esm/components/Radio/Radio.js +5 -10
  365. package/lib/esm/components/Radio/Radio.js.map +1 -1
  366. package/lib/esm/components/Radio/RadioGroup.js +1 -1
  367. package/lib/esm/components/Radio/index.js +5 -10
  368. package/lib/esm/components/Radio/index.js.map +1 -1
  369. package/lib/esm/components/Radio/styles.js +1 -1
  370. package/lib/esm/components/Rate/Rate.js +1 -1
  371. package/lib/esm/components/Rate/index.js +1 -1
  372. package/lib/esm/components/Result/Result.js +1 -1
  373. package/lib/esm/components/Result/index.js +1 -1
  374. package/lib/esm/components/Result/styles.js +1 -1
  375. package/lib/esm/components/Search/Search.js +1 -1
  376. package/lib/esm/components/Search/index.js +1 -1
  377. package/lib/esm/components/Search/styles.js +1 -1
  378. package/lib/esm/components/SegmentedControl/SegmentedControl.js +1 -1
  379. package/lib/esm/components/SegmentedControl/index.js +1 -1
  380. package/lib/esm/components/Sheets/AnimatedSheets.js +1 -1
  381. package/lib/esm/components/Sheets/Sheets.js +1 -1
  382. package/lib/esm/components/Sheets/api.js +1 -1
  383. package/lib/esm/components/Sheets/index.js +1 -1
  384. package/lib/esm/components/Sheets/styles.js +2 -2
  385. package/lib/esm/components/Sheets/styles.js.map +1 -1
  386. package/lib/esm/components/Skeleton/Item/SkeletonItem.js +1 -1
  387. package/lib/esm/components/Skeleton/Item/SkeletonItem69.js +1 -1
  388. package/lib/esm/components/Skeleton/Skeleton.js +1 -1
  389. package/lib/esm/components/Skeleton/Skeleton69.js +1 -1
  390. package/lib/esm/components/Skeleton/index.js +1 -1
  391. package/lib/esm/components/Slider/Slider.js +1 -1
  392. package/lib/esm/components/Slider/index.js +1 -1
  393. package/lib/esm/components/SlimAlert/Alert.js +1 -1
  394. package/lib/esm/components/SlimAlert/AlertContent.js +1 -1
  395. package/lib/esm/components/SlimAlert/AlertFooter.js +1 -1
  396. package/lib/esm/components/SlimAlert/index.js +1 -1
  397. package/lib/esm/components/SlimAlert/styles.js +1 -1
  398. package/lib/esm/components/SlimNavigationBar/NavigationBar.js +1 -1
  399. package/lib/esm/components/SlimNavigationBar/NavigationBarAction.js +1 -1
  400. package/lib/esm/components/SlimNavigationBar/index.js +1 -1
  401. package/lib/esm/components/SlimNavigationBar/styles.js +1 -1
  402. package/lib/esm/components/SlimSheets/AnimatedSheets.js +1 -1
  403. package/lib/esm/components/SlimSheets/AnimatedSheetsAction.js +1 -1
  404. package/lib/esm/components/SlimSheets/AnimatedSheetsHeader.js +1 -1
  405. package/lib/esm/components/SlimSheets/DragAnimatedSheets.js +1 -1
  406. package/lib/esm/components/SlimSheets/index.js +1 -1
  407. package/lib/esm/components/SlimTabs/BadgeSlimTabItem.js +1 -1
  408. package/lib/esm/components/SlimTabs/SlimTab.js +1 -1
  409. package/lib/esm/components/SlimTabs/SlimTabItem.js +1 -1
  410. package/lib/esm/components/SlimTabs/SlimTabItemLabel.js +1 -1
  411. package/lib/esm/components/SlimTabs/SlimTabItemValue.js +1 -1
  412. package/lib/esm/components/SlimTabs/SlimTabList.js +1 -1
  413. package/lib/esm/components/SlimTabs/index.js +1 -1
  414. package/lib/esm/components/SlimTabs/styles.js +1 -1
  415. package/lib/esm/components/SnackBar/SnackBar.js +1 -1
  416. package/lib/esm/components/SnackBar/index.js +1 -1
  417. package/lib/esm/components/SnackBar/styles.js +1 -1
  418. package/lib/esm/components/Stepper/Stepper.js +1 -1
  419. package/lib/esm/components/Stepper/index.js +1 -1
  420. package/lib/esm/components/Switch/Switch.js +1 -1
  421. package/lib/esm/components/Switch/index.js +1 -1
  422. package/lib/esm/components/Tab/Tabs.js +1 -1
  423. package/lib/esm/components/Tab/index.js +1 -1
  424. package/lib/esm/components/Tab/styles.js +1 -1
  425. package/lib/esm/components/TabBar/TabBar.js +1 -1
  426. package/lib/esm/components/TabBar/index.js +1 -1
  427. package/lib/esm/components/TabBar/styles.js +1 -1
  428. package/lib/esm/components/Tag/Tag.js +1 -1
  429. package/lib/esm/components/Tag/index.js +1 -1
  430. package/lib/esm/components/Text/Text.js +1 -1
  431. package/lib/esm/components/Text/Viewable.js +1 -1
  432. package/lib/esm/components/Text/hooks/cloneContainer.js +1 -1
  433. package/lib/esm/components/Text/hooks/index.js +1 -1
  434. package/lib/esm/components/Text/hooks/loadFontFromFile.js +2 -2
  435. package/lib/esm/components/Text/hooks/loadFontFromFile.js.map +1 -1
  436. package/lib/esm/components/Text/index.js +1 -1
  437. package/lib/esm/components/Text/styles.js +1 -1
  438. package/lib/esm/components/TextField/TextField.js +1 -1
  439. package/lib/esm/components/TextField/index.js +1 -1
  440. package/lib/esm/components/TextField/styles.js +1 -1
  441. package/lib/esm/components/TextView/TextView.js +1 -1
  442. package/lib/esm/components/TextView/index.js +1 -1
  443. package/lib/esm/components/TextView/styles.js +1 -1
  444. package/lib/esm/components/Toast/Toast.js +1 -1
  445. package/lib/esm/components/Toast/api.js +1 -1
  446. package/lib/esm/components/Toast/index.js +1 -1
  447. package/lib/esm/components/Toast/styles.js +1 -1
  448. package/lib/esm/components/Uploader/Uploader.js +3 -3
  449. package/lib/esm/components/Uploader/Uploader.js.map +1 -1
  450. package/lib/esm/components/Uploader/index.js +2 -2
  451. package/lib/esm/components/Uploader/interface/index.js +2 -2
  452. package/lib/esm/components/Uploader/styles.js +2 -2
  453. package/lib/esm/components/Uploader/utils.js +1 -1
  454. package/lib/esm/index.js +5 -10
  455. package/lib/esm/index.js.map +1 -1
  456. package/lib/esm/pvCount/pvData.js +0 -1
  457. package/lib/esm/pvCount/pvData.js.map +1 -1
  458. package/lib/src/components/Image/queryCacheBatcher.d.ts +5 -0
  459. package/lib/src/components/Popover/Popover.d.ts +1 -1
  460. package/lib/src/components/Popover/interface/index.d.ts +1 -0
  461. package/lib/src/components/PullRefresh/PullRefresh.d.ts +2 -0
  462. package/lib/src/components/PullRefresh/interface/index.d.ts +5 -0
  463. package/lib/src/index.d.ts +0 -1
  464. package/lib/types/components/Image/queryCacheBatcher.d.ts +5 -0
  465. package/lib/types/components/Popover/Popover.d.ts +1 -1
  466. package/lib/types/components/Popover/interface/index.d.ts +1 -0
  467. package/lib/types/components/PullRefresh/PullRefresh.d.ts +2 -0
  468. package/lib/types/components/PullRefresh/interface/index.d.ts +5 -0
  469. package/lib/types/index.d.ts +0 -1
  470. package/package.json +1 -2
  471. package/src/components/Carousel/Carousel.tsx +15 -3
  472. package/src/components/Carousel/demo/index.tsx +14 -2
  473. package/src/components/Image/Image.tsx +53 -115
  474. package/src/components/Image/VisibilitySensor.tsx +1 -2
  475. package/src/components/Image/queryCacheBatcher.ts +84 -0
  476. package/src/components/Popover/Popover.tsx +4 -3
  477. package/src/components/Popover/doc/index.mdx +22 -21
  478. package/src/components/Popover/interface/index.ts +1 -0
  479. package/src/components/PullRefresh/PullRefresh.tsx +146 -55
  480. package/src/components/PullRefresh/doc/index.mdx +19 -16
  481. package/src/components/PullRefresh/interface/index.ts +6 -0
  482. package/src/components/Sheets/styles.ts +2 -2
  483. package/src/index.ts +0 -1
  484. package/lib/cjs/_chunks/CIr5S84J.js.map +0 -1
  485. package/lib/cjs/components/Swiper/LazyPage.js +0 -42
  486. package/lib/cjs/components/Swiper/LazyPage.js.map +0 -1
  487. package/lib/cjs/components/Swiper/Swiper.js +0 -27
  488. package/lib/cjs/components/Swiper/Swiper.js.map +0 -1
  489. package/lib/cjs/components/Swiper/SwiperFlatList.js +0 -227
  490. package/lib/cjs/components/Swiper/SwiperFlatList.js.map +0 -1
  491. package/lib/cjs/components/Swiper/SwiperPagerView.js +0 -231
  492. package/lib/cjs/components/Swiper/SwiperPagerView.js.map +0 -1
  493. package/lib/cjs/components/Swiper/index.js +0 -16
  494. package/lib/cjs/components/Swiper/index.js.map +0 -1
  495. package/lib/cjs/components/Swiper/types.js +0 -3
  496. package/lib/cjs/components/Swiper/types.js.map +0 -1
  497. package/lib/cjs/components/Swiper/utils.js +0 -73
  498. package/lib/cjs/components/Swiper/utils.js.map +0 -1
  499. package/lib/esm/_chunks/CZtagXcj.js.map +0 -1
  500. package/lib/esm/components/Swiper/LazyPage.js +0 -40
  501. package/lib/esm/components/Swiper/LazyPage.js.map +0 -1
  502. package/lib/esm/components/Swiper/Swiper.js +0 -25
  503. package/lib/esm/components/Swiper/Swiper.js.map +0 -1
  504. package/lib/esm/components/Swiper/SwiperFlatList.js +0 -225
  505. package/lib/esm/components/Swiper/SwiperFlatList.js.map +0 -1
  506. package/lib/esm/components/Swiper/SwiperPagerView.js +0 -229
  507. package/lib/esm/components/Swiper/SwiperPagerView.js.map +0 -1
  508. package/lib/esm/components/Swiper/index.js +0 -10
  509. package/lib/esm/components/Swiper/index.js.map +0 -1
  510. package/lib/esm/components/Swiper/types.js +0 -2
  511. package/lib/esm/components/Swiper/types.js.map +0 -1
  512. package/lib/esm/components/Swiper/utils.js +0 -68
  513. package/lib/esm/components/Swiper/utils.js.map +0 -1
  514. package/lib/src/components/Swiper/LazyPage.d.ts +0 -7
  515. package/lib/src/components/Swiper/Swiper.d.ts +0 -5
  516. package/lib/src/components/Swiper/SwiperFlatList.d.ts +0 -5
  517. package/lib/src/components/Swiper/SwiperPagerView.d.ts +0 -5
  518. package/lib/src/components/Swiper/index.d.ts +0 -24
  519. package/lib/src/components/Swiper/types.d.ts +0 -166
  520. package/lib/src/components/Swiper/utils.d.ts +0 -42
  521. package/lib/types/components/Swiper/LazyPage.d.ts +0 -7
  522. package/lib/types/components/Swiper/Swiper.d.ts +0 -5
  523. package/lib/types/components/Swiper/SwiperFlatList.d.ts +0 -5
  524. package/lib/types/components/Swiper/SwiperPagerView.d.ts +0 -5
  525. package/lib/types/components/Swiper/index.d.ts +0 -24
  526. package/lib/types/components/Swiper/types.d.ts +0 -166
  527. package/lib/types/components/Swiper/utils.d.ts +0 -42
  528. package/src/components/Swiper/LazyPage.tsx +0 -44
  529. package/src/components/Swiper/Swiper.tsx +0 -31
  530. package/src/components/Swiper/SwiperFlatList.tsx +0 -299
  531. package/src/components/Swiper/SwiperPagerView.tsx +0 -286
  532. package/src/components/Swiper/demo/index.tsx +0 -146
  533. package/src/components/Swiper/doc/index.mdx +0 -49
  534. package/src/components/Swiper/index.ts +0 -25
  535. package/src/components/Swiper/types.ts +0 -208
  536. package/src/components/Swiper/utils.ts +0 -133
@@ -1,73 +0,0 @@
1
- 'use strict';
2
-
3
- var _rollupPluginBabelHelpers = require('../../_chunks/hnLc3Qom.js');
4
-
5
- function prepareInfiniteData(data, infinite) {
6
- var cloneCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 2;
7
- if (!infinite || data.length < 3) {
8
- return {
9
- displayData: data,
10
- offset: 0,
11
- cloneCount: 0
12
- };
13
- }
14
- var actualCloneCount = cloneCount;
15
- var firstClones = data.slice(-actualCloneCount);
16
- var lastClones = data.slice(0, actualCloneCount);
17
- var leftClones = [];
18
- var rightClones = [];
19
- if (actualCloneCount > data.length) {
20
- var repeatCount = Math.ceil(actualCloneCount / data.length);
21
- for (var i = 0; i < repeatCount; i++) {
22
- var _leftClones, _rightClones;
23
- (_leftClones = leftClones).push.apply(_leftClones, _rollupPluginBabelHelpers._toConsumableArray(data));
24
- (_rightClones = rightClones).push.apply(_rightClones, _rollupPluginBabelHelpers._toConsumableArray(data));
25
- }
26
- leftClones = leftClones.slice(-actualCloneCount);
27
- rightClones = rightClones.slice(0, actualCloneCount);
28
- } else {
29
- leftClones = firstClones;
30
- rightClones = lastClones;
31
- }
32
- return {
33
- displayData: [].concat(_rollupPluginBabelHelpers._toConsumableArray(leftClones), _rollupPluginBabelHelpers._toConsumableArray(data), _rollupPluginBabelHelpers._toConsumableArray(rightClones)),
34
- offset: actualCloneCount,
35
- // Real data starts at this index
36
- cloneCount: actualCloneCount
37
- };
38
- }
39
- function shouldJumpForInfinite(newPage, dataLength, offset, cloneCount) {
40
- var threshold = Math.min(2, Math.max(1, Math.floor(cloneCount / 10)));
41
- if (newPage < threshold) {
42
- var dataIndex = cloneCount > dataLength ? newPage % dataLength : dataLength - cloneCount + newPage;
43
- return {
44
- shouldJump: true,
45
- jumpTo: offset + dataIndex
46
- };
47
- }
48
- var totalLength = offset + dataLength + cloneCount;
49
- if (newPage >= totalLength - threshold) {
50
- var offsetInCycle = (newPage - offset - dataLength) % dataLength;
51
- return {
52
- shouldJump: true,
53
- jumpTo: offset + offsetInCycle
54
- };
55
- }
56
- return {
57
- shouldJump: false
58
- };
59
- }
60
- function getRealIndex(displayIndex, offset, dataLength) {
61
- if (dataLength === 0) return 0;
62
- var adjusted = displayIndex - offset;
63
- return (adjusted % dataLength + dataLength) % dataLength;
64
- }
65
- function getDisplayIndex(realIndex, offset) {
66
- return realIndex + offset;
67
- }
68
-
69
- exports.getDisplayIndex = getDisplayIndex;
70
- exports.getRealIndex = getRealIndex;
71
- exports.prepareInfiniteData = prepareInfiniteData;
72
- exports.shouldJumpForInfinite = shouldJumpForInfinite;
73
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/components/Swiper/utils.ts"],"sourcesContent":["import type { InfiniteDataResult, JumpResult } from \"./types\";\n\n/**\n * Prepare data array for infinite scrolling by cloning boundary items\n *\n * @param data Original data array\n * @param infinite Whether infinite scroll is enabled\n * @param cloneCount Number of items to clone on each end (default: 2)\n * Can exceed data.length - will repeat entire array multiple times\n * @returns Object with displayData (with clones), offset, and cloneCount\n *\n * @example\n * // With data=[A,B,C] and cloneCount=2: [B,C,A,B,C,A,B]\n * // With data=[A,B,C] and cloneCount=5: [A,B,C,A,B,C,A,B,C,A,B]\n */\nexport function prepareInfiniteData<T>(data: T[], infinite: boolean, cloneCount: number = 2): InfiniteDataResult<T> {\n // Don't enable infinite for small datasets or when disabled\n if (!infinite || data.length < 3) {\n return {\n displayData: data,\n offset: 0,\n cloneCount: 0,\n };\n }\n\n // If cloneCount exceeds data length, we'll clone entire array multiple times\n // This provides maximum buffering for fast scrolling\n const actualCloneCount = cloneCount;\n\n // Clone items for seamless looping\n // If cloneCount > data.length, this will repeat the entire array\n const firstClones = data.slice(-actualCloneCount); // Last N items (or full array if N > length)\n const lastClones = data.slice(0, actualCloneCount); // First N items (or full array if N > length)\n\n // Handle case where cloneCount > data.length by repeating the array\n let leftClones: T[] = [];\n let rightClones: T[] = [];\n\n if (actualCloneCount > data.length) {\n // Repeat entire array multiple times\n const repeatCount = Math.ceil(actualCloneCount / data.length);\n for (let i = 0; i < repeatCount; i++) {\n leftClones.push(...data);\n rightClones.push(...data);\n }\n // Trim to exact clone count\n leftClones = leftClones.slice(-actualCloneCount);\n rightClones = rightClones.slice(0, actualCloneCount);\n } else {\n leftClones = firstClones;\n rightClones = lastClones;\n }\n\n // Structure: [leftClones, ...original, rightClones]\n // This allows seamless transition in both directions\n return {\n displayData: [...leftClones, ...data, ...rightClones],\n offset: actualCloneCount, // Real data starts at this index\n cloneCount: actualCloneCount,\n };\n}\n\n/**\n * Calculate if a jump is needed after page change for infinite scroll\n *\n * @param newPage Current display page index\n * @param dataLength Length of original data array\n * @param offset Offset where real data starts\n * @param cloneCount Number of clones on each side\n * @returns Object indicating if jump is needed and target index\n */\nexport function shouldJumpForInfinite(\n newPage: number,\n dataLength: number,\n offset: number,\n cloneCount: number,\n): JumpResult {\n // Only jump when within threshold of absolute edges\n // This prevents jumping too eagerly when cloneCount is large\n const threshold = Math.min(2, Math.max(1, Math.floor(cloneCount / 10)));\n\n // Near absolute start (left edge)\n if (newPage < threshold) {\n // Calculate position in the data cycle\n const dataIndex = cloneCount > dataLength ? newPage % dataLength : dataLength - cloneCount + newPage;\n\n return {\n shouldJump: true,\n jumpTo: offset + dataIndex,\n };\n }\n\n // Near absolute end (right edge)\n const totalLength = offset + dataLength + cloneCount;\n if (newPage >= totalLength - threshold) {\n // Calculate position in the data cycle\n const offsetInCycle = (newPage - offset - dataLength) % dataLength;\n\n return {\n shouldJump: true,\n jumpTo: offset + offsetInCycle,\n };\n }\n\n return { shouldJump: false };\n}\n\n/**\n * Convert display index to real data index\n *\n * @param displayIndex Index in the display array (with clones)\n * @param offset Offset where real data starts\n * @param dataLength Length of original data array\n * @returns Real index in original data array\n */\nexport function getRealIndex(displayIndex: number, offset: number, dataLength: number): number {\n if (dataLength === 0) return 0;\n\n // Adjust for offset and wrap around\n const adjusted = displayIndex - offset;\n return ((adjusted % dataLength) + dataLength) % dataLength;\n}\n\n/**\n * Get display index from real data index\n *\n * @param realIndex Index in original data array\n * @param offset Offset where real data starts\n * @returns Display index in display array (with clones)\n */\nexport function getDisplayIndex(realIndex: number, offset: number): number {\n return realIndex + offset;\n}\n"],"names":["prepareInfiniteData","data","infinite","cloneCount","arguments","length","undefined","displayData","offset","actualCloneCount","firstClones","slice","lastClones","leftClones","rightClones","repeatCount","Math","ceil","i","_leftClones","_rightClones","push","apply","_toConsumableArray","shouldJumpForInfinite","newPage","dataLength","threshold","min","max","floor","dataIndex","shouldJump","jumpTo","totalLength","offsetInCycle","getRealIndex","displayIndex","adjusted","getDisplayIndex","realIndex"],"mappings":";;;;AAeO,SAASA,mBAAuBA,CAAAC,IAAA,EAAWC,QAAmB,EAA+C;AAAA,EAAA,IAA/CC,UAAA,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAqB,CAA0B,CAAA;EAElH,IAAI,CAACF,QAAA,IAAYD,IAAK,CAAAI,MAAA,GAAS,CAAG,EAAA;IACzB,OAAA;AACLE,MAAAA,WAAa,EAAAN,IAAA;AACbO,MAAAA,MAAQ,EAAA,CAAA;AACRL,MAAAA,UAAY,EAAA,CAAA;KACd,CAAA;AACF,GAAA;EAIA,IAAMM,gBAAmB,GAAAN,UAAA,CAAA;EAIzB,IAAMO,WAAc,GAAAT,IAAA,CAAKU,KAAM,CAAA,CAACF,gBAAgB,CAAA,CAAA;EAChD,IAAMG,UAAa,GAAAX,IAAA,CAAKU,KAAM,CAAA,CAAA,EAAGF,gBAAgB,CAAA,CAAA;EAGjD,IAAII,aAAkB,EAAC,CAAA;EACvB,IAAIC,cAAmB,EAAC,CAAA;AAEpB,EAAA,IAAAL,gBAAA,GAAmBR,KAAKI,MAAQ,EAAA;IAElC,IAAMU,WAAc,GAAAC,IAAA,CAAKC,IAAK,CAAAR,gBAAA,GAAmBR,KAAKI,MAAM,CAAA,CAAA;IAC5D,KAAA,IAASa,CAAI,GAAA,CAAA,EAAGA,CAAI,GAAAH,WAAA,EAAaG,CAAK,EAAA,EAAA;MAAA,IAAAC,WAAA,EAAAC,YAAA,CAAA;AACzB,MAAA,CAAAD,WAAA,GAAAN,UAAA,EAAAQ,IAAA,CAAAC,KAAA,CAAAH,WAAA,EAAAI,4CAAA,CAAQtB,IAAI,CAAA,CAAA,CAAA;AACX,MAAA,CAAAmB,YAAA,GAAAN,WAAA,EAAAO,IAAA,CAAAC,KAAA,CAAAF,YAAA,EAAAG,4CAAA,CAAQtB,IAAI,CAAA,CAAA,CAAA;AAC1B,KAAA;AAEaY,IAAAA,UAAA,GAAAA,UAAA,CAAWF,KAAM,CAAA,CAACF,gBAAgB,CAAA,CAAA;IACjCK,WAAA,GAAAA,WAAA,CAAYH,KAAM,CAAA,CAAA,EAAGF,gBAAgB,CAAA,CAAA;AACrD,GAAO,MAAA;AACQI,IAAAA,UAAA,GAAAH,WAAA,CAAA;AACCI,IAAAA,WAAA,GAAAF,UAAA,CAAA;AAChB,GAAA;EAIO,OAAA;AACLL,IAAAA,oEAAiBM,0DAAeZ,IAAA,CAAA,EAAAsB,4CAAA,CAAST,WAAW,CAAA,CAAA;AACpDN,IAAAA,MAAQ,EAAAC,gBAAA;AAAA;AACRN,IAAAA,UAAY,EAAAM,gBAAAA;GACd,CAAA;AACF,CAAA;AAWO,SAASe,qBACdA,CAAAC,OAAA,EACAC,UACA,EAAAlB,MAAA,EACAL,UACY,EAAA;EAGZ,IAAMwB,SAAY,GAAAX,IAAA,CAAKY,GAAI,CAAA,CAAA,EAAGZ,IAAK,CAAAa,GAAA,CAAI,CAAG,EAAAb,IAAA,CAAKc,KAAM,CAAA3B,UAAA,GAAa,EAAE,CAAC,CAAC,CAAA,CAAA;EAGtE,IAAIsB,UAAUE,SAAW,EAAA;AAEvB,IAAA,IAAMI,YAAY5B,UAAa,GAAAuB,UAAA,GAAaD,OAAU,GAAAC,UAAA,GAAaA,aAAavB,UAAa,GAAAsB,OAAA,CAAA;IAEtF,OAAA;AACLO,MAAAA,UAAY,EAAA,IAAA;MACZC,QAAQzB,MAAS,GAAAuB,SAAAA;KACnB,CAAA;AACF,GAAA;AAGM,EAAA,IAAAG,WAAA,GAAc1B,SAASkB,UAAa,GAAAvB,UAAA,CAAA;AACtC,EAAA,IAAAsB,OAAA,IAAWS,cAAcP,SAAW,EAAA;IAEhC,IAAAQ,aAAA,GAAA,CAAiBV,OAAU,GAAAjB,MAAA,GAASkB,UAAc,IAAAA,UAAA,CAAA;IAEjD,OAAA;AACLM,MAAAA,UAAY,EAAA,IAAA;MACZC,QAAQzB,MAAS,GAAA2B,aAAAA;KACnB,CAAA;AACF,GAAA;EAEO,OAAA;AAAEH,IAAAA,YAAY,KAAA;GAAM,CAAA;AAC7B,CAAA;AAUgB,SAAAI,YAAAA,CAAaC,YAAsB,EAAA7B,MAAA,EAAgBkB,UAA4B,EAAA;AACzF,EAAA,IAAAA,UAAA,KAAe,GAAU,OAAA,CAAA,CAAA;AAG7B,EAAA,IAAMY,WAAWD,YAAe,GAAA7B,MAAA,CAAA;AACvB,EAAA,OAAA,CAAA8B,QAAA,GAAWZ,aAAcA,UAAc,IAAAA,UAAA,CAAA;AAClD,CAAA;AASgB,SAAAa,eAAAA,CAAgBC,WAAmBhC,MAAwB,EAAA;EACzE,OAAOgC,SAAY,GAAAhC,MAAA,CAAA;AACrB;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"CZtagXcj.js","sources":["../../../src/components/PullRefresh/interface/index.ts"],"sourcesContent":["import { ViewStyle } from \"react-native\";\nexport interface RedsPullRefresh {\n children: React.ReactNode;\n pullAnimHeight?: number;\n minPullDistance?: number;\n msHoldingTime?: number;\n isRefreshing: boolean;\n pullDownToRefreshText?: string;\n releaseRefreshText?: string;\n requestDataText?: string;\n requestSuccessfulText?: string;\n style?: ViewStyle;\n controlStyle?: ViewStyle;\n onRequest?: () => void;\n showText?: boolean;\n initRefresh?: boolean;\n refresh?: boolean;\n}\n\nexport enum PullState {\n INIT, // 初始化\n FINISH, // 结束\n PULLING, // 下拉中\n LOADING, // 请求数据中\n HOLDING, // 请求完数据的停留状态\n}\n\nexport interface RedsPullRefreshEvent {}\nexport const PullRefreshDefaultProps = {\n children: undefined,\n pullAnimHeight: 0,\n minPullDistance: 20,\n msHoldingTime: 1000,\n isRefreshing: false,\n showText: true,\n initRefresh: false,\n refresh: false,\n};\n"],"names":["PullState","PullState2","PullRefreshDefaultProps","children","pullAnimHeight","minPullDistance","msHoldingTime","isRefreshing","showText","initRefresh","refresh"],"mappings":"IAmBYA,SAAA,4BAAAA,UAAL,EAAA;EACLA,UAAA,CAAAC,UAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;EACAD,UAAA,CAAAC,UAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAA,CAAA;EACAD,UAAA,CAAAC,UAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA;EACAD,UAAA,CAAAC,UAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA;EACAD,UAAA,CAAAC,UAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA;AALUD,EAAAA,OAAAA,UAAAA,CAAAA;AAAA,CAAA,CAAAA,SAAA,IAAA,EAAA,EAAA;AASL,IAAME,uBAA0B,GAAA;EACrCC,QAAU,EAAA,KAAA,CAAA;AACVC,EAAAA,cAAgB,EAAA,CAAA;AAChBC,EAAAA,eAAiB,EAAA,EAAA;AACjBC,EAAAA,aAAe,EAAA,GAAA;AACfC,EAAAA,YAAc,EAAA,KAAA;AACdC,EAAAA,QAAU,EAAA,IAAA;AACVC,EAAAA,WAAa,EAAA,KAAA;AACbC,EAAAA,OAAS,EAAA,KAAA;AACX;;;;;;;;;;"}
@@ -1,40 +0,0 @@
1
- import { _ as _slicedToArray } from '../../_chunks/CgvIDP0E.js';
2
- import React, { useState, useEffect } from 'react';
3
- import { StyleSheet, View } from 'react-native';
4
-
5
- var LazyPage = function LazyPage(_ref) {
6
- var shouldMount = _ref.shouldMount,
7
- _ref$shouldUnmount = _ref.shouldUnmount,
8
- shouldUnmount = _ref$shouldUnmount === void 0 ? false : _ref$shouldUnmount,
9
- children = _ref.children,
10
- placeholder = _ref.placeholder,
11
- style = _ref.style;
12
- var _useState = useState(false),
13
- _useState2 = _slicedToArray(_useState, 2),
14
- mounted = _useState2[0],
15
- setMounted = _useState2[1];
16
- useEffect(function () {
17
- if (shouldMount && !mounted) {
18
- setMounted(true);
19
- } else if (shouldUnmount && mounted) {
20
- setMounted(false);
21
- }
22
- }, [shouldMount, shouldUnmount, mounted]);
23
- return /* @__PURE__ */React.createElement(View, {
24
- style: [styles.page, style]
25
- }, mounted ? children : placeholder || /* @__PURE__ */React.createElement(View, {
26
- style: styles.placeholder
27
- }));
28
- };
29
- var styles = StyleSheet.create({
30
- page: {
31
- flex: 1
32
- },
33
- placeholder: {
34
- flex: 1,
35
- backgroundColor: "transparent"
36
- }
37
- });
38
-
39
- export { LazyPage };
40
- //# sourceMappingURL=LazyPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LazyPage.js","sources":["../../../../src/components/Swiper/LazyPage.tsx"],"sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport { View, StyleSheet, Dimensions } from \"react-native\";\nimport type { LazyPageProps } from \"./types\";\n\n/**\n * LazyPage component that conditionally mounts/unmounts content\n * based on proximity to current page\n */\nexport const LazyPage: React.FC<LazyPageProps> = ({\n shouldMount,\n shouldUnmount = false,\n children,\n placeholder,\n style,\n}) => {\n const [mounted, setMounted] = useState(false);\n\n useEffect(() => {\n if (shouldMount && !mounted) {\n // Mount the page when it enters the window\n setMounted(true);\n } else if (shouldUnmount && mounted) {\n // Unmount the page when it's far from current position\n // This helps free memory for large datasets\n setMounted(false);\n }\n // Note: By default (shouldUnmount=false), pages stay mounted for better UX\n // Enable shouldUnmount for aggressive memory management\n }, [shouldMount, shouldUnmount, mounted]);\n\n return (\n <View style={[styles.page, style]}>{mounted ? children : placeholder || <View style={styles.placeholder} />}</View>\n );\n};\n\nconst styles = StyleSheet.create({\n page: {\n flex: 1,\n },\n placeholder: {\n flex: 1,\n backgroundColor: \"transparent\",\n },\n});\n"],"names":["LazyPage","shouldMount","_ref","_ref$shouldUnmount","shouldUnmount","children","placeholder","style","_useState","useState","_useState2","_slicedToArray","mounted","setMounted","useEffect","View","styles","page","React","createElement","StyleSheet","create","flex","backgroundColor"],"mappings":";;;;IAQaA,WAAoC,SAApCA,eAMP;AAAA,EAAA,IALJC,WAAA,GAAAC,IAAA,CAAAD,WAAA;IAAAE,kBAAA,GAAAD,IAAA,CACAE,aAAgB;AAAhBA,IAAAA,aAAgB,GAAAD,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,GAAAA,kBAAA;IAChBE,QAAA,GAAAH,IAAA,CAAAG,QAAA;IACAC,WAAA,GAAAJ,IAAA,CAAAI,WAAA;IACAC,KAAA,GAAAL,IAAA,CAAAK,KAAA,CAAA;AAEA,EAAA,IAAAC,SAAA,GAA8BC,SAAS,KAAK,CAAA;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAArCI,IAAAA,OAAA,GAAAF,UAAA,CAAA,CAAA,CAAA;AAASG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAE1BI,EAAAA,SAAA,CAAU,YAAM;AACV,IAAA,IAAAb,WAAA,IAAe,CAACW,OAAS,EAAA;MAE3BC,UAAA,CAAW,IAAI,CAAA,CAAA;AACjB,KAAA,MAAA,IAAWT,iBAAiBQ,OAAS,EAAA;MAGnCC,UAAA,CAAW,KAAK,CAAA,CAAA;AAClB,KAAA;GAGC,EAAA,CAACZ,WAAa,EAAAG,aAAA,EAAeQ,OAAO,CAAC,CAAA,CAAA;AAExC,EAAA,0CACGG,IAAK,EAAA;AAAAR,IAAAA,KAAA,EAAO,CAACS,MAAA,CAAOC,MAAMV,KAAK,CAAA;AAAA,GAAA,EAAIK,OAAU,GAAAP,QAAA,GAAWC,8BAAgBY,KAAA,CAAAC,aAAA,CAAAJ,IAAA,EAAA;IAAKR,KAAO,EAAAS,MAAA,CAAOV,WAAAA;GAAa,CAAG,CAAA,CAAA;AAEhH,EAAA;AAEA,IAAMU,MAAA,GAASI,WAAWC,MAAO,CAAA;AAC/BJ,EAAAA,IAAM,EAAA;AACJK,IAAAA,IAAM,EAAA,CAAA;GACR;AACAhB,EAAAA,WAAa,EAAA;AACXgB,IAAAA,IAAM,EAAA,CAAA;AACNC,IAAAA,eAAiB,EAAA,aAAA;AACnB,GAAA;AACF,CAAC,CAAA;;;;"}
@@ -1,25 +0,0 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CgvIDP0E.js';
2
- import React, { forwardRef } from 'react';
3
- import { SwiperPagerView } from './SwiperPagerView.js';
4
- import { SwiperFlatList } from './SwiperFlatList.js';
5
- import 'react-native';
6
- import 'react-native-pager-view';
7
- import './LazyPage.js';
8
- import './utils.js';
9
-
10
- function SwiperComponent(props, ref) {
11
- var _props$implementation = props.implementation,
12
- implementation = _props$implementation === void 0 ? "pagerView" : _props$implementation;
13
- if (implementation === "flatlist") {
14
- return /* @__PURE__ */React.createElement(SwiperFlatList, _objectSpread2({
15
- ref: ref
16
- }, props));
17
- }
18
- return /* @__PURE__ */React.createElement(SwiperPagerView, _objectSpread2({
19
- ref: ref
20
- }, props));
21
- }
22
- var Swiper = /*#__PURE__*/forwardRef(SwiperComponent);
23
-
24
- export { Swiper };
25
- //# sourceMappingURL=Swiper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Swiper.js","sources":["../../../../src/components/Swiper/Swiper.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport type { SwiperProps, SwiperRef } from \"./types\";\nimport { SwiperPagerView } from \"./SwiperPagerView\";\nimport { SwiperFlatList } from \"./SwiperFlatList\";\n\n/**\n * Swiper Component - A performant, data-driven carousel with infinite scroll support\n *\n * Features:\n * - Two implementations: PagerView (default) and FlatList\n * - Lazy mounting for performance with large datasets\n * - Infinite/loop scrolling with seamless transitions\n * - Programmatic control via ref methods\n * - Event callbacks for page changes\n * - Nested scroll support\n * - TypeScript generic support for type-safe data\n */\nfunction SwiperComponent<T>(props: SwiperProps<T>, ref: React.Ref<SwiperRef>) {\n const { implementation = \"pagerView\" } = props;\n\n if (implementation === \"flatlist\") {\n return <SwiperFlatList ref={ref} {...props} />;\n }\n\n return <SwiperPagerView ref={ref} {...props} />;\n}\n\n// Export with generic type support\nexport const Swiper = forwardRef(SwiperComponent) as <T>(\n props: SwiperProps<T> & { ref?: React.Ref<SwiperRef> },\n) => React.ReactElement;\n"],"names":["SwiperComponent","props","ref","_props$implementation","implementation","React","createElement","SwiperFlatList","_objectSpread","SwiperPagerView","Swiper","forwardRef"],"mappings":";;;;;;;;;AAiBA,SAASA,eAAAA,CAAmBC,OAAuBC,GAA2B,EAAA;AACtE,EAAA,IAAAC,qBAAA,GAAmCF,KAAA,CAAjCG,cAAiB;AAAjBA,IAAAA,cAAiB,GAAAD,qBAAA,KAAA,KAAA,CAAA,GAAA,WAAA,GAAAA,qBAAA,CAAA;EAEzB,IAAIC,mBAAmB,UAAY,EAAA;AACjC,IAAA,sBAAQC,KAAA,CAAAC,aAAA,CAAAC,cAAA,EAAAC,cAAA,CAAA;AAAeN,MAAAA,GAAW,EAAXA,GAAAA;KAAcD,EAAAA,KAAO,CAAA,CAAA,CAAA;AAC9C,GAAA;AAEA,EAAA,sBAAQI,KAAA,CAAAC,aAAA,CAAAG,eAAA,EAAAD,cAAA,CAAA;AAAgBN,IAAAA,GAAW,EAAXA,GAAAA;GAAcD,EAAAA,KAAO,CAAA,CAAA,CAAA;AAC/C,CAAA;IAGaS,MAAA,gBAASC,WAAWX,eAAe;;;;"}
@@ -1,225 +0,0 @@
1
- import { _ as _slicedToArray } from '../../_chunks/CgvIDP0E.js';
2
- import React, { forwardRef, useRef, useState, useMemo, useCallback, useImperativeHandle, useEffect } from 'react';
3
- import { StyleSheet, View, FlatList } from 'react-native';
4
- import { prepareInfiniteData, getDisplayIndex, getRealIndex } from './utils.js';
5
-
6
- function SwiperFlatListComponent(props, ref) {
7
- var data = props.data,
8
- renderItem = props.renderItem,
9
- _keyExtractor = props.keyExtractor,
10
- _props$infinite = props.infinite,
11
- infinite = _props$infinite === void 0 ? false : _props$infinite,
12
- _props$initialPage = props.initialPage,
13
- initialPage = _props$initialPage === void 0 ? 0 : _props$initialPage,
14
- _props$cloneCount = props.cloneCount,
15
- cloneCount = _props$cloneCount === void 0 ? 2 : _props$cloneCount,
16
- onPageChange = props.onPageChange,
17
- onNext = props.onNext,
18
- onPrev = props.onPrev,
19
- onScrollEndDrag = props.onScrollEndDrag,
20
- onPageScrollStateChanged = props.onPageScrollStateChanged,
21
- style = props.style;
22
- var flatListRef = useRef(null);
23
- var currentPageRef = useRef(initialPage);
24
- var isJumpingRef = useRef(false);
25
- useRef(false);
26
- var _useState = useState(initialPage),
27
- _useState2 = _slicedToArray(_useState, 2),
28
- currentPage = _useState2[0],
29
- setCurrentPage = _useState2[1];
30
- var _useState3 = useState(0),
31
- _useState4 = _slicedToArray(_useState3, 2),
32
- containerWidth = _useState4[0],
33
- setContainerWidth = _useState4[1];
34
- var _useMemo = useMemo(function () {
35
- return prepareInfiniteData(data, infinite, cloneCount);
36
- }, [data, infinite, cloneCount]),
37
- displayData = _useMemo.displayData,
38
- offset = _useMemo.offset,
39
- actualCloneCount = _useMemo.cloneCount;
40
- var adjustedInitialPage = useMemo(function () {
41
- return infinite ? getDisplayIndex(initialPage, offset) : initialPage;
42
- }, [infinite, initialPage, offset]);
43
- var handleLayout = useCallback(function (event) {
44
- var width = event.nativeEvent.layout.width;
45
- if (width > 0) {
46
- setContainerWidth(width);
47
- }
48
- }, []);
49
- var handleScrollBeginDrag = useCallback(function () {
50
- onPageScrollStateChanged === null || onPageScrollStateChanged === void 0 || onPageScrollStateChanged("dragging");
51
- }, [onPageScrollStateChanged]);
52
- var handleScrollEndDrag = useCallback(function (event) {
53
- if (isJumpingRef.current || containerWidth === 0) {
54
- return;
55
- }
56
- var offsetX = event.nativeEvent.contentOffset.x;
57
- var newDisplayPage = Math.round(offsetX / containerWidth);
58
- var realIndex = getRealIndex(newDisplayPage, offset, data.length);
59
- onScrollEndDrag === null || onScrollEndDrag === void 0 || onScrollEndDrag(realIndex);
60
- onPageScrollStateChanged === null || onPageScrollStateChanged === void 0 || onPageScrollStateChanged("settling");
61
- }, [data.length, offset, onScrollEndDrag, onPageScrollStateChanged, containerWidth]);
62
- var handleMomentumScrollEnd = useCallback(function (event) {
63
- if (isJumpingRef.current || containerWidth === 0) {
64
- return;
65
- }
66
- var offsetX = event.nativeEvent.contentOffset.x;
67
- var newDisplayPage = Math.round(offsetX / containerWidth);
68
- if (newDisplayPage === currentPageRef.current) {
69
- return;
70
- }
71
- var prevPage = currentPageRef.current;
72
- currentPageRef.current = newDisplayPage;
73
- var realIndex = getRealIndex(newDisplayPage, offset, data.length);
74
- setCurrentPage(realIndex);
75
- onPageChange === null || onPageChange === void 0 || onPageChange(realIndex);
76
- if (newDisplayPage > prevPage) {
77
- onNext === null || onNext === void 0 || onNext(realIndex);
78
- } else if (newDisplayPage < prevPage) {
79
- onPrev === null || onPrev === void 0 || onPrev(realIndex);
80
- }
81
- onPageScrollStateChanged === null || onPageScrollStateChanged === void 0 || onPageScrollStateChanged("idle");
82
- if (infinite && data.length >= 3) {
83
- var threshold = Math.max(3, Math.min(5, Math.ceil(actualCloneCount / 5)));
84
- offset + data.length + actualCloneCount;
85
- if (newDisplayPage < offset + threshold && newDisplayPage < offset + data.length / 2) {
86
- var dataIndex = actualCloneCount > data.length ? newDisplayPage % data.length : data.length - actualCloneCount + newDisplayPage;
87
- var jumpTo = offset + dataIndex;
88
- performJump(jumpTo);
89
- } else if (newDisplayPage >= offset + data.length - threshold && newDisplayPage >= offset + data.length / 2) {
90
- var offsetInCycle = (newDisplayPage - offset) % data.length;
91
- var _jumpTo = offset + offsetInCycle;
92
- performJump(_jumpTo);
93
- }
94
- }
95
- }, [data.length, offset, actualCloneCount, infinite, onPageChange, onNext, onPrev, containerWidth]);
96
- var performJump = useCallback(function (targetIndex) {
97
- isJumpingRef.current = true;
98
- requestAnimationFrame(function () {
99
- var _flatListRef$current;
100
- (_flatListRef$current = flatListRef.current) === null || _flatListRef$current === void 0 || _flatListRef$current.scrollToIndex({
101
- index: targetIndex,
102
- animated: false
103
- });
104
- currentPageRef.current = targetIndex;
105
- requestAnimationFrame(function () {
106
- isJumpingRef.current = false;
107
- });
108
- });
109
- }, []);
110
- var getItemLayout = useCallback(function (_, index) {
111
- return {
112
- length: containerWidth,
113
- offset: containerWidth * index,
114
- index: index
115
- };
116
- }, [containerWidth]);
117
- var renderFlatListItem = useCallback(function (_ref) {
118
- var item = _ref.item,
119
- index = _ref.index;
120
- var realIndex = getRealIndex(index, offset, data.length);
121
- return /* @__PURE__ */React.createElement(View, {
122
- style: [styles.page, {
123
- width: containerWidth
124
- }]
125
- }, renderItem(item, realIndex));
126
- }, [renderItem, offset, data.length, containerWidth]);
127
- useImperativeHandle(ref, function () {
128
- return {
129
- goToPage: function goToPage(index) {
130
- var _flatListRef$current2;
131
- var animated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
132
- var clampedIndex = Math.max(0, Math.min(index, data.length - 1));
133
- var displayIndex = infinite ? getDisplayIndex(clampedIndex, offset) : clampedIndex;
134
- (_flatListRef$current2 = flatListRef.current) === null || _flatListRef$current2 === void 0 || _flatListRef$current2.scrollToIndex({
135
- index: displayIndex,
136
- animated: animated
137
- });
138
- },
139
- next: function next() {
140
- var animated = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
141
- var nextPage = currentPageRef.current + 1;
142
- if (nextPage < displayData.length) {
143
- var _flatListRef$current3;
144
- (_flatListRef$current3 = flatListRef.current) === null || _flatListRef$current3 === void 0 || _flatListRef$current3.scrollToIndex({
145
- index: nextPage,
146
- animated: animated
147
- });
148
- }
149
- },
150
- prev: function prev() {
151
- var animated = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
152
- var prevPage = currentPageRef.current - 1;
153
- if (prevPage >= 0) {
154
- var _flatListRef$current4;
155
- (_flatListRef$current4 = flatListRef.current) === null || _flatListRef$current4 === void 0 || _flatListRef$current4.scrollToIndex({
156
- index: prevPage,
157
- animated: animated
158
- });
159
- }
160
- },
161
- getCurrentPage: function getCurrentPage() {
162
- return currentPage;
163
- }
164
- };
165
- }, [currentPage, data.length, infinite, offset, displayData.length]);
166
- useEffect(function () {
167
- if (containerWidth > 0) {
168
- var timer = setTimeout(function () {
169
- var _flatListRef$current5;
170
- (_flatListRef$current5 = flatListRef.current) === null || _flatListRef$current5 === void 0 || _flatListRef$current5.scrollToIndex({
171
- index: adjustedInitialPage,
172
- animated: false
173
- });
174
- }, 100);
175
- return function () {
176
- return clearTimeout(timer);
177
- };
178
- }
179
- }, [adjustedInitialPage, containerWidth]);
180
- if (data.length === 0) {
181
- return null;
182
- }
183
- return /* @__PURE__ */React.createElement(View, {
184
- style: [styles.container, style],
185
- onLayout: handleLayout
186
- }, containerWidth > 0 && /* @__PURE__ */React.createElement(FlatList, {
187
- ref: flatListRef,
188
- data: displayData,
189
- renderItem: renderFlatListItem,
190
- keyExtractor: function keyExtractor(item, index) {
191
- var _keyExtractor2;
192
- var realIndex = getRealIndex(index, offset, data.length);
193
- return (_keyExtractor2 = _keyExtractor === null || _keyExtractor === void 0 ? void 0 : _keyExtractor(item, realIndex)) !== null && _keyExtractor2 !== void 0 ? _keyExtractor2 : "swiper-fl-".concat(index);
194
- },
195
- horizontal: true,
196
- pagingEnabled: true,
197
- showsHorizontalScrollIndicator: false,
198
- onScrollBeginDrag: onPageScrollStateChanged ? handleScrollBeginDrag : void 0,
199
- onScrollEndDrag: onScrollEndDrag || onPageScrollStateChanged ? handleScrollEndDrag : void 0,
200
- onMomentumScrollEnd: handleMomentumScrollEnd,
201
- getItemLayout: getItemLayout,
202
- initialScrollIndex: adjustedInitialPage,
203
- initialNumToRender: 10,
204
- windowSize: 21,
205
- maxToRenderPerBatch: 10,
206
- updateCellsBatchingPeriod: 30,
207
- removeClippedSubviews: false,
208
- style: styles.flatList
209
- }));
210
- }
211
- var styles = StyleSheet.create({
212
- container: {
213
- flex: 1
214
- },
215
- flatList: {
216
- flex: 1
217
- },
218
- page: {
219
- flex: 1
220
- }
221
- });
222
- var SwiperFlatList = /*#__PURE__*/forwardRef(SwiperFlatListComponent);
223
-
224
- export { SwiperFlatList };
225
- //# sourceMappingURL=SwiperFlatList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SwiperFlatList.js","sources":["../../../../src/components/Swiper/SwiperFlatList.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from \"react\";\nimport { FlatList, StyleSheet, View, LayoutChangeEvent } from \"react-native\";\nimport type { SwiperProps, SwiperRef } from \"./types\";\nimport { prepareInfiniteData, shouldJumpForInfinite, getRealIndex, getDisplayIndex } from \"./utils\";\n\n/**\n * FlatList-based Swiper implementation\n */\nfunction SwiperFlatListComponent<T>(props: SwiperProps<T>, ref: React.Ref<SwiperRef>) {\n const {\n data,\n renderItem,\n keyExtractor,\n infinite = false,\n initialPage = 0,\n cloneCount = 2,\n onPageChange,\n onNext,\n onPrev,\n onScrollEndDrag,\n onPageScrollStateChanged,\n style,\n } = props;\n\n // Refs\n const flatListRef = useRef<FlatList>(null);\n const currentPageRef = useRef<number>(initialPage);\n const isJumpingRef = useRef<boolean>(false);\n const scrollingRef = useRef<boolean>(false);\n\n // State\n const [currentPage, setCurrentPage] = useState(initialPage);\n const [containerWidth, setContainerWidth] = useState(0);\n\n // Prepare data for infinite scrolling\n const {\n displayData,\n offset,\n cloneCount: actualCloneCount,\n } = useMemo(() => {\n return prepareInfiniteData(data, infinite, cloneCount);\n }, [data, infinite, cloneCount]);\n\n // Calculate adjusted initial page for infinite mode\n const adjustedInitialPage = useMemo(() => {\n return infinite ? getDisplayIndex(initialPage, offset) : initialPage;\n }, [infinite, initialPage, offset]);\n\n /**\n * Handle layout to measure actual container width\n */\n const handleLayout = useCallback((event: LayoutChangeEvent) => {\n const { width } = event.nativeEvent.layout;\n if (width > 0) {\n setContainerWidth(width);\n }\n }, []);\n\n /**\n * Handle scroll begin drag - fires when user starts dragging\n */\n const handleScrollBeginDrag = useCallback(() => {\n onPageScrollStateChanged?.(\"dragging\");\n }, [onPageScrollStateChanged]);\n\n /**\n * Handle scroll end drag - fires when user releases finger\n */\n const handleScrollEndDrag = useCallback(\n (event: any) => {\n if (isJumpingRef.current || containerWidth === 0) {\n return;\n }\n\n const offsetX = event.nativeEvent.contentOffset.x;\n const newDisplayPage = Math.round(offsetX / containerWidth);\n\n const realIndex = getRealIndex(newDisplayPage, offset, data.length);\n\n // Call the callback if provided\n onScrollEndDrag?.(realIndex);\n\n // Transition to settling state (momentum begins)\n onPageScrollStateChanged?.(\"settling\");\n },\n [data.length, offset, onScrollEndDrag, onPageScrollStateChanged, containerWidth],\n );\n\n /**\n * Handle scroll end - detect which page we're on\n */\n const handleMomentumScrollEnd = useCallback(\n (event: any) => {\n if (isJumpingRef.current || containerWidth === 0) {\n return;\n }\n\n const offsetX = event.nativeEvent.contentOffset.x;\n const newDisplayPage = Math.round(offsetX / containerWidth);\n\n if (newDisplayPage === currentPageRef.current) {\n return;\n }\n\n const prevPage = currentPageRef.current;\n currentPageRef.current = newDisplayPage;\n\n const realIndex = getRealIndex(newDisplayPage, offset, data.length);\n setCurrentPage(realIndex);\n\n // Emit events\n onPageChange?.(realIndex);\n\n if (newDisplayPage > prevPage) {\n onNext?.(realIndex);\n } else if (newDisplayPage < prevPage) {\n onPrev?.(realIndex);\n }\n\n // Transition to idle state (scroll complete)\n onPageScrollStateChanged?.(\"idle\");\n\n // Handle infinite scroll jump - jump earlier to avoid hitting edge\n if (infinite && data.length >= 3) {\n // Use larger threshold for FlatList to jump before hitting edge\n const threshold = Math.max(3, Math.min(5, Math.ceil(actualCloneCount / 5)));\n const totalLength = offset + data.length + actualCloneCount;\n\n // Near start\n if (newDisplayPage < offset + threshold && newDisplayPage < offset + data.length / 2) {\n const dataIndex =\n actualCloneCount > data.length\n ? newDisplayPage % data.length\n : data.length - actualCloneCount + newDisplayPage;\n\n const jumpTo = offset + dataIndex;\n performJump(jumpTo);\n }\n // Near end\n else if (newDisplayPage >= offset + data.length - threshold && newDisplayPage >= offset + data.length / 2) {\n const offsetInCycle = (newDisplayPage - offset) % data.length;\n const jumpTo = offset + offsetInCycle;\n performJump(jumpTo);\n }\n }\n },\n [data.length, offset, actualCloneCount, infinite, onPageChange, onNext, onPrev, containerWidth],\n );\n\n /**\n * Perform jump without animation\n */\n const performJump = useCallback((targetIndex: number) => {\n isJumpingRef.current = true;\n\n requestAnimationFrame(() => {\n flatListRef.current?.scrollToIndex({\n index: targetIndex,\n animated: false,\n });\n currentPageRef.current = targetIndex;\n\n requestAnimationFrame(() => {\n isJumpingRef.current = false;\n });\n });\n }, []);\n\n /**\n * Get item layout for proper scrollToIndex\n */\n const getItemLayout = useCallback(\n (_: any, index: number) => ({\n length: containerWidth,\n offset: containerWidth * index,\n index,\n }),\n [containerWidth],\n );\n\n /**\n * Render each item\n */\n const renderFlatListItem = useCallback(\n ({ item, index }: { item: T; index: number }) => {\n const realIndex = getRealIndex(index, offset, data.length);\n return <View style={[styles.page, { width: containerWidth }]}>{renderItem(item, realIndex)}</View>;\n },\n [renderItem, offset, data.length, containerWidth],\n );\n\n /**\n * Expose ref methods\n */\n useImperativeHandle(\n ref,\n () => ({\n goToPage: (index: number, animated = true) => {\n const clampedIndex = Math.max(0, Math.min(index, data.length - 1));\n const displayIndex = infinite ? getDisplayIndex(clampedIndex, offset) : clampedIndex;\n\n flatListRef.current?.scrollToIndex({\n index: displayIndex,\n animated,\n });\n },\n\n next: (animated = true) => {\n const nextPage = currentPageRef.current + 1;\n if (nextPage < displayData.length) {\n flatListRef.current?.scrollToIndex({\n index: nextPage,\n animated,\n });\n }\n },\n\n prev: (animated = true) => {\n const prevPage = currentPageRef.current - 1;\n if (prevPage >= 0) {\n flatListRef.current?.scrollToIndex({\n index: prevPage,\n animated,\n });\n }\n },\n\n getCurrentPage: () => currentPage,\n }),\n [currentPage, data.length, infinite, offset, displayData.length],\n );\n\n /**\n * Initialize to initial page after container width is measured\n */\n useEffect(() => {\n if (containerWidth > 0) {\n const timer = setTimeout(() => {\n flatListRef.current?.scrollToIndex({\n index: adjustedInitialPage,\n animated: false,\n });\n }, 100);\n\n return () => clearTimeout(timer);\n }\n }, [adjustedInitialPage, containerWidth]);\n\n if (data.length === 0) {\n return null;\n }\n\n return (\n <View style={[styles.container, style]} onLayout={handleLayout}>\n {containerWidth > 0 && (\n <FlatList\n ref={flatListRef}\n data={displayData}\n renderItem={renderFlatListItem}\n keyExtractor={(item, index) => {\n const realIndex = getRealIndex(index, offset, data.length);\n return keyExtractor?.(item, realIndex) ?? `swiper-fl-${index}`;\n }}\n horizontal\n pagingEnabled\n showsHorizontalScrollIndicator={false}\n onScrollBeginDrag={onPageScrollStateChanged ? handleScrollBeginDrag : undefined}\n onScrollEndDrag={onScrollEndDrag || onPageScrollStateChanged ? handleScrollEndDrag : undefined}\n onMomentumScrollEnd={handleMomentumScrollEnd}\n getItemLayout={getItemLayout}\n initialScrollIndex={adjustedInitialPage}\n // Optimized for fast scrolling with paging\n initialNumToRender={10}\n windowSize={21}\n maxToRenderPerBatch={10}\n updateCellsBatchingPeriod={30}\n removeClippedSubviews={false}\n style={styles.flatList}\n />\n )}\n </View>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n flatList: {\n flex: 1,\n },\n page: {\n flex: 1,\n },\n});\n\nexport const SwiperFlatList = forwardRef(SwiperFlatListComponent) as <T>(\n props: SwiperProps<T> & { ref?: React.Ref<SwiperRef> },\n) => React.ReactElement;\n"],"names":["SwiperFlatListComponent","props","ref","data","renderItem","keyExtractor","_props$infinite","infinite","_props$initialPage","initialPage","_props$cloneCount","cloneCount","onPageChange","onNext","onPrev","onScrollEndDrag","onPageScrollStateChanged","style","flatListRef","useRef","currentPageRef","isJumpingRef","_useState","useState","_useState2","_slicedToArray","currentPage","setCurrentPage","_useState3","_useState4","containerWidth","setContainerWidth","_useMemo","useMemo","prepareInfiniteData","displayData","offset","actualCloneCount","adjustedInitialPage","getDisplayIndex","handleLayout","useCallback","event","width","nativeEvent","layout","handleScrollBeginDrag","handleScrollEndDrag","current","offsetX","contentOffset","x","newDisplayPage","Math","round","realIndex","getRealIndex","length","handleMomentumScrollEnd","prevPage","threshold","max","min","ceil","dataIndex","jumpTo","performJump","offsetInCycle","targetIndex","requestAnimationFrame","_flatListRef$current","scrollToIndex","index","animated","getItemLayout","_","renderFlatListItem","_ref","item","React","createElement","View","styles","page","useImperativeHandle","goToPage","_flatListRef$current2","arguments","undefined","clampedIndex","displayIndex","next","nextPage","_flatListRef$current3","prev","_flatListRef$current4","getCurrentPage","useEffect","timer","setTimeout","_flatListRef$current5","clearTimeout","container","onLayout","FlatList","_keyExtractor2","concat","horizontal","pagingEnabled","showsHorizontalScrollIndicator","onScrollBeginDrag","onMomentumScrollEnd","initialScrollIndex","initialNumToRender","windowSize","maxToRenderPerBatch","updateCellsBatchingPeriod","removeClippedSubviews","flatList","StyleSheet","create","flex","SwiperFlatList","forwardRef"],"mappings":"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"}