@fountain-ui/lab 2.0.0-beta.3 → 2.0.0-beta.30

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 (501) hide show
  1. package/build/commonjs/AnimatedY/AnimatedY.js +10 -14
  2. package/build/commonjs/AnimatedY/AnimatedY.js.map +1 -1
  3. package/build/commonjs/AnimatedY/AnimatedYProps.js.map +1 -1
  4. package/build/commonjs/AnimatedY/index.js.map +1 -1
  5. package/build/commonjs/BottomSheet/BottomSheet.js +177 -0
  6. package/build/commonjs/BottomSheet/BottomSheet.js.map +1 -0
  7. package/build/commonjs/BottomSheet/BottomSheetNative.js +5 -3
  8. package/build/commonjs/BottomSheet/BottomSheetNative.js.map +1 -1
  9. package/build/commonjs/BottomSheet/BottomSheetProps.js.map +1 -1
  10. package/build/commonjs/BottomSheet/BottomSheetWeb.js +19 -7
  11. package/build/commonjs/BottomSheet/BottomSheetWeb.js.map +1 -1
  12. package/build/commonjs/BottomSheet/TransparentBackdrop.js +1 -1
  13. package/build/commonjs/BottomSheet/TransparentBackdrop.js.map +1 -1
  14. package/build/commonjs/BottomSheet/index.js.map +1 -1
  15. package/build/commonjs/BottomSheet/index.native.js.map +1 -1
  16. package/build/commonjs/BottomSheet/useDynamicSnapPoints.js +49 -0
  17. package/build/commonjs/BottomSheet/useDynamicSnapPoints.js.map +1 -0
  18. package/build/commonjs/Carousel/Carousel.js +130 -0
  19. package/build/commonjs/Carousel/Carousel.js.map +1 -0
  20. package/build/commonjs/Carousel/CarouselProps.js.map +1 -1
  21. package/build/commonjs/Carousel/animation/animationUtils.js +9 -0
  22. package/build/commonjs/Carousel/animation/animationUtils.js.map +1 -0
  23. package/build/commonjs/Carousel/animation/createDefaultItemStyle.js +15 -0
  24. package/build/commonjs/Carousel/animation/createDefaultItemStyle.js.map +1 -0
  25. package/build/commonjs/Carousel/animation/createDefaultScrollAnimation.js +20 -0
  26. package/build/commonjs/Carousel/animation/createDefaultScrollAnimation.js.map +1 -0
  27. package/build/commonjs/Carousel/animation/index.js +40 -0
  28. package/build/commonjs/Carousel/animation/index.js.map +1 -0
  29. package/build/commonjs/Carousel/animation/normalItemStyleFactory.js +27 -0
  30. package/build/commonjs/Carousel/animation/normalItemStyleFactory.js.map +1 -0
  31. package/build/commonjs/Carousel/animation/parallaxItemStyleFactory.js +65 -0
  32. package/build/commonjs/Carousel/animation/parallaxItemStyleFactory.js.map +1 -0
  33. package/build/commonjs/Carousel/components/InternalContext.js +29 -0
  34. package/build/commonjs/Carousel/components/InternalContext.js.map +1 -0
  35. package/build/commonjs/Carousel/components/ItemView.js +66 -0
  36. package/build/commonjs/Carousel/components/ItemView.js.map +1 -0
  37. package/build/commonjs/Carousel/components/RootView.js +86 -0
  38. package/build/commonjs/Carousel/components/RootView.js.map +1 -0
  39. package/build/commonjs/Carousel/components/ScrollViewGesture.js +82 -0
  40. package/build/commonjs/Carousel/components/ScrollViewGesture.js.map +1 -0
  41. package/build/commonjs/Carousel/components/index.js +40 -0
  42. package/build/commonjs/Carousel/components/index.js.map +1 -0
  43. package/build/commonjs/Carousel/components/useItemInterpolation.js +65 -0
  44. package/build/commonjs/Carousel/components/useItemInterpolation.js.map +1 -0
  45. package/build/commonjs/Carousel/hooks/index.js +48 -0
  46. package/build/commonjs/Carousel/hooks/index.js.map +1 -0
  47. package/build/commonjs/Carousel/hooks/useAutoplayController.js +58 -0
  48. package/build/commonjs/Carousel/hooks/useAutoplayController.js.map +1 -0
  49. package/build/commonjs/Carousel/hooks/useIndexController.js +55 -0
  50. package/build/commonjs/Carousel/hooks/useIndexController.js.map +1 -0
  51. package/build/commonjs/Carousel/hooks/useItemVisibilityStore.js +95 -0
  52. package/build/commonjs/Carousel/hooks/useItemVisibilityStore.js.map +1 -0
  53. package/build/commonjs/Carousel/hooks/useLoopedData.js +33 -0
  54. package/build/commonjs/Carousel/hooks/useLoopedData.js.map +1 -0
  55. package/build/commonjs/Carousel/hooks/usePagingAnimator.js +202 -0
  56. package/build/commonjs/Carousel/hooks/usePagingAnimator.js.map +1 -0
  57. package/build/commonjs/Carousel/index.js +16 -2
  58. package/build/commonjs/Carousel/index.js.map +1 -1
  59. package/build/commonjs/Carousel/tick.js +16 -0
  60. package/build/commonjs/Carousel/tick.js.map +1 -0
  61. package/build/commonjs/Carousel/types.js +8 -0
  62. package/build/commonjs/Carousel/types.js.map +1 -0
  63. package/build/commonjs/ComicViewer/ComicViewer.js +71 -37
  64. package/build/commonjs/ComicViewer/ComicViewer.js.map +1 -1
  65. package/build/commonjs/ComicViewer/ComicViewerItemProps.js.map +1 -1
  66. package/build/commonjs/ComicViewer/ComicViewerProps.js +12 -0
  67. package/build/commonjs/ComicViewer/ComicViewerProps.js.map +1 -1
  68. package/build/commonjs/ComicViewer/ViewerItem.js +98 -26
  69. package/build/commonjs/ComicViewer/ViewerItem.js.map +1 -1
  70. package/build/commonjs/ComicViewer/index.js.map +1 -1
  71. package/build/commonjs/DateTimePicker/DateTimePicker.js +2 -2
  72. package/build/commonjs/DateTimePicker/DateTimePicker.js.map +1 -1
  73. package/build/commonjs/DateTimePicker/DateTimePickerProps.js.map +1 -1
  74. package/build/commonjs/DateTimePicker/DateTimePickerProvider.js.map +1 -1
  75. package/build/commonjs/DateTimePicker/YearPicker.js +21 -17
  76. package/build/commonjs/DateTimePicker/YearPicker.js.map +1 -1
  77. package/build/commonjs/DateTimePicker/index.js +4 -4
  78. package/build/commonjs/DateTimePicker/index.js.map +1 -1
  79. package/build/commonjs/DateTimePicker/utils.js +2 -1
  80. package/build/commonjs/DateTimePicker/utils.js.map +1 -1
  81. package/build/commonjs/FlipCard/FlipCard.js +7 -13
  82. package/build/commonjs/FlipCard/FlipCard.js.map +1 -1
  83. package/build/commonjs/FlipCard/FlipCardProps.js.map +1 -1
  84. package/build/commonjs/FlipCard/index.js.map +1 -1
  85. package/build/commonjs/StatusBarProvider/Provider.js +1 -1
  86. package/build/commonjs/StatusBarProvider/Provider.js.map +1 -1
  87. package/build/commonjs/StatusBarProvider/StatusBarProvider.js.map +1 -1
  88. package/build/commonjs/StatusBarProvider/StatusBarProviderProps.js.map +1 -1
  89. package/build/commonjs/StatusBarProvider/index.js.map +1 -1
  90. package/build/commonjs/ViewPager/FluxContext.js +13 -0
  91. package/build/commonjs/ViewPager/FluxContext.js.map +1 -0
  92. package/build/commonjs/ViewPager/InternalContext.js +17 -0
  93. package/build/commonjs/ViewPager/InternalContext.js.map +1 -0
  94. package/build/commonjs/ViewPager/PageStateContext.js +16 -0
  95. package/build/commonjs/ViewPager/PageStateContext.js.map +1 -0
  96. package/build/commonjs/ViewPager/ViewPager.js +81 -0
  97. package/build/commonjs/ViewPager/ViewPager.js.map +1 -0
  98. package/build/commonjs/ViewPager/ViewPager.native.js +150 -0
  99. package/build/commonjs/ViewPager/ViewPager.native.js.map +1 -0
  100. package/build/commonjs/ViewPager/ViewPagerProps.js.map +1 -1
  101. package/build/commonjs/ViewPager/components/ChildrenMemoizedPage.js +122 -0
  102. package/build/commonjs/ViewPager/components/ChildrenMemoizedPage.js.map +1 -0
  103. package/build/commonjs/ViewPager/components/FluxStoreProvider.js +37 -0
  104. package/build/commonjs/ViewPager/components/FluxStoreProvider.js.map +1 -0
  105. package/build/commonjs/ViewPager/components/index.js +24 -0
  106. package/build/commonjs/ViewPager/components/index.js.map +1 -0
  107. package/build/commonjs/ViewPager/hooks/index.js +64 -0
  108. package/build/commonjs/ViewPager/hooks/index.js.map +1 -0
  109. package/build/commonjs/ViewPager/hooks/useDispatch.js +22 -0
  110. package/build/commonjs/ViewPager/hooks/useDispatch.js.map +1 -0
  111. package/build/commonjs/ViewPager/hooks/useEagerState.js +24 -0
  112. package/build/commonjs/ViewPager/hooks/useEagerState.js.map +1 -0
  113. package/build/commonjs/ViewPager/hooks/useForceRender.js +16 -0
  114. package/build/commonjs/ViewPager/hooks/useForceRender.js.map +1 -0
  115. package/build/commonjs/ViewPager/hooks/useLazyState.js +45 -0
  116. package/build/commonjs/ViewPager/hooks/useLazyState.js.map +1 -0
  117. package/build/commonjs/ViewPager/hooks/usePageStore.js +35 -0
  118. package/build/commonjs/ViewPager/hooks/usePageStore.js.map +1 -0
  119. package/build/commonjs/ViewPager/hooks/useStore.js +26 -0
  120. package/build/commonjs/ViewPager/hooks/useStore.js.map +1 -0
  121. package/build/commonjs/ViewPager/hooks/useViewPagerPageState.js +19 -0
  122. package/build/commonjs/ViewPager/hooks/useViewPagerPageState.js.map +1 -0
  123. package/build/commonjs/ViewPager/index.js +42 -2
  124. package/build/commonjs/ViewPager/index.js.map +1 -1
  125. package/build/commonjs/ViewPager/types.js +2 -0
  126. package/build/commonjs/ViewPager/types.js.map +1 -0
  127. package/build/commonjs/ViewPager/utils.js +12 -43
  128. package/build/commonjs/ViewPager/utils.js.map +1 -1
  129. package/build/commonjs/ViewabilityTrackerView/Viewability.js +2 -0
  130. package/build/commonjs/ViewabilityTrackerView/Viewability.js.map +1 -0
  131. package/build/commonjs/ViewabilityTrackerView/ViewabilityTrackerView.js +45 -0
  132. package/build/commonjs/ViewabilityTrackerView/ViewabilityTrackerView.js.map +1 -0
  133. package/build/commonjs/ViewabilityTrackerView/ViewabilityTrackerViewProps.js +2 -0
  134. package/build/commonjs/ViewabilityTrackerView/ViewabilityTrackerViewProps.js.map +1 -0
  135. package/build/commonjs/{Carousel/index.native.js → ViewabilityTrackerView/index.js} +3 -3
  136. package/build/commonjs/ViewabilityTrackerView/index.js.map +1 -0
  137. package/build/commonjs/ViewabilityTrackerView/measureViewability.js +42 -0
  138. package/build/commonjs/ViewabilityTrackerView/measureViewability.js.map +1 -0
  139. package/build/commonjs/ViewabilityTrackerView/useViewabilityTracker.js +88 -0
  140. package/build/commonjs/ViewabilityTrackerView/useViewabilityTracker.js.map +1 -0
  141. package/build/commonjs/hooks/index.js +16 -0
  142. package/build/commonjs/hooks/index.js.map +1 -1
  143. package/build/commonjs/hooks/useAppbarStyles.js.map +1 -1
  144. package/build/commonjs/hooks/useDeferredExecutor.js +45 -0
  145. package/build/commonjs/hooks/useDeferredExecutor.js.map +1 -0
  146. package/build/commonjs/hooks/useElevationStyle.js.map +1 -1
  147. package/build/commonjs/hooks/useHeight.js +5 -4
  148. package/build/commonjs/hooks/useHeight.js.map +1 -1
  149. package/build/commonjs/hooks/useIsMounted.js +22 -0
  150. package/build/commonjs/hooks/useIsMounted.js.map +1 -0
  151. package/build/commonjs/hooks/useUnstableCollapsibleAppBar.js +58 -61
  152. package/build/commonjs/hooks/useUnstableCollapsibleAppBar.js.map +1 -1
  153. package/build/commonjs/hooks/useUnstableToggleDisplayStyle.js +9 -11
  154. package/build/commonjs/hooks/useUnstableToggleDisplayStyle.js.map +1 -1
  155. package/build/commonjs/index.js +28 -7
  156. package/build/commonjs/index.js.map +1 -1
  157. package/build/module/AnimatedY/AnimatedY.js +11 -10
  158. package/build/module/AnimatedY/AnimatedY.js.map +1 -1
  159. package/build/module/AnimatedY/AnimatedYProps.js.map +1 -1
  160. package/build/module/AnimatedY/index.js.map +1 -1
  161. package/build/module/BottomSheet/BottomSheet.js +161 -0
  162. package/build/module/BottomSheet/BottomSheet.js.map +1 -0
  163. package/build/module/BottomSheet/BottomSheetNative.js +5 -3
  164. package/build/module/BottomSheet/BottomSheetNative.js.map +1 -1
  165. package/build/module/BottomSheet/BottomSheetProps.js.map +1 -1
  166. package/build/module/BottomSheet/BottomSheetWeb.js +18 -7
  167. package/build/module/BottomSheet/BottomSheetWeb.js.map +1 -1
  168. package/build/module/BottomSheet/TransparentBackdrop.js +1 -1
  169. package/build/module/BottomSheet/TransparentBackdrop.js.map +1 -1
  170. package/build/module/BottomSheet/index.js.map +1 -1
  171. package/build/module/BottomSheet/index.native.js.map +1 -1
  172. package/build/module/BottomSheet/useDynamicSnapPoints.js +41 -0
  173. package/build/module/BottomSheet/useDynamicSnapPoints.js.map +1 -0
  174. package/build/module/Carousel/Carousel.js +109 -0
  175. package/build/module/Carousel/Carousel.js.map +1 -0
  176. package/build/module/Carousel/CarouselProps.js.map +1 -1
  177. package/build/module/Carousel/animation/animationUtils.js +2 -0
  178. package/build/module/Carousel/animation/animationUtils.js.map +1 -0
  179. package/build/module/Carousel/animation/createDefaultItemStyle.js +3 -0
  180. package/build/module/Carousel/animation/createDefaultItemStyle.js.map +1 -0
  181. package/build/module/Carousel/animation/createDefaultScrollAnimation.js +11 -0
  182. package/build/module/Carousel/animation/createDefaultScrollAnimation.js.map +1 -0
  183. package/build/module/Carousel/animation/index.js +5 -0
  184. package/build/module/Carousel/animation/index.js.map +1 -0
  185. package/build/module/Carousel/animation/normalItemStyleFactory.js +18 -0
  186. package/build/module/Carousel/animation/normalItemStyleFactory.js.map +1 -0
  187. package/build/module/Carousel/animation/parallaxItemStyleFactory.js +55 -0
  188. package/build/module/Carousel/animation/parallaxItemStyleFactory.js.map +1 -0
  189. package/build/module/Carousel/components/InternalContext.js +19 -0
  190. package/build/module/Carousel/components/InternalContext.js.map +1 -0
  191. package/build/module/Carousel/components/ItemView.js +46 -0
  192. package/build/module/Carousel/components/ItemView.js.map +1 -0
  193. package/build/module/Carousel/components/RootView.js +65 -0
  194. package/build/module/Carousel/components/RootView.js.map +1 -0
  195. package/build/module/Carousel/components/ScrollViewGesture.js +68 -0
  196. package/build/module/Carousel/components/ScrollViewGesture.js.map +1 -0
  197. package/build/module/Carousel/components/index.js +5 -0
  198. package/build/module/Carousel/components/index.js.map +1 -0
  199. package/build/module/Carousel/components/useItemInterpolation.js +51 -0
  200. package/build/module/Carousel/components/useItemInterpolation.js.map +1 -0
  201. package/build/module/Carousel/hooks/index.js +6 -0
  202. package/build/module/Carousel/hooks/index.js.map +1 -0
  203. package/build/module/Carousel/hooks/useAutoplayController.js +48 -0
  204. package/build/module/Carousel/hooks/useAutoplayController.js.map +1 -0
  205. package/build/module/Carousel/hooks/useIndexController.js +44 -0
  206. package/build/module/Carousel/hooks/useIndexController.js.map +1 -0
  207. package/build/module/Carousel/hooks/useItemVisibilityStore.js +86 -0
  208. package/build/module/Carousel/hooks/useItemVisibilityStore.js.map +1 -0
  209. package/build/module/Carousel/hooks/useLoopedData.js +24 -0
  210. package/build/module/Carousel/hooks/useLoopedData.js.map +1 -0
  211. package/build/module/Carousel/hooks/usePagingAnimator.js +192 -0
  212. package/build/module/Carousel/hooks/usePagingAnimator.js.map +1 -0
  213. package/build/module/Carousel/index.js +2 -1
  214. package/build/module/Carousel/index.js.map +1 -1
  215. package/build/module/Carousel/tick.js +6 -0
  216. package/build/module/Carousel/tick.js.map +1 -0
  217. package/build/module/Carousel/types.js +4 -0
  218. package/build/module/Carousel/types.js.map +1 -0
  219. package/build/module/ComicViewer/ComicViewer.js +70 -37
  220. package/build/module/ComicViewer/ComicViewer.js.map +1 -1
  221. package/build/module/ComicViewer/ComicViewerItemProps.js.map +1 -1
  222. package/build/module/ComicViewer/ComicViewerProps.js +6 -1
  223. package/build/module/ComicViewer/ComicViewerProps.js.map +1 -1
  224. package/build/module/ComicViewer/ViewerItem.js +99 -28
  225. package/build/module/ComicViewer/ViewerItem.js.map +1 -1
  226. package/build/module/ComicViewer/index.js.map +1 -1
  227. package/build/module/DateTimePicker/DateTimePicker.js +2 -2
  228. package/build/module/DateTimePicker/DateTimePicker.js.map +1 -1
  229. package/build/module/DateTimePicker/DateTimePickerProps.js.map +1 -1
  230. package/build/module/DateTimePicker/DateTimePickerProvider.js.map +1 -1
  231. package/build/module/DateTimePicker/YearPicker.js +21 -17
  232. package/build/module/DateTimePicker/YearPicker.js.map +1 -1
  233. package/build/module/DateTimePicker/index.js.map +1 -1
  234. package/build/module/DateTimePicker/utils.js +2 -1
  235. package/build/module/DateTimePicker/utils.js.map +1 -1
  236. package/build/module/FlipCard/FlipCard.js +7 -7
  237. package/build/module/FlipCard/FlipCard.js.map +1 -1
  238. package/build/module/FlipCard/FlipCardProps.js.map +1 -1
  239. package/build/module/FlipCard/index.js.map +1 -1
  240. package/build/module/StatusBarProvider/Provider.js.map +1 -1
  241. package/build/module/StatusBarProvider/StatusBarProvider.js.map +1 -1
  242. package/build/module/StatusBarProvider/StatusBarProviderProps.js.map +1 -1
  243. package/build/module/StatusBarProvider/index.js.map +1 -1
  244. package/build/module/ViewPager/FluxContext.js +4 -0
  245. package/build/module/ViewPager/FluxContext.js.map +1 -0
  246. package/build/module/ViewPager/InternalContext.js +7 -0
  247. package/build/module/ViewPager/InternalContext.js.map +1 -0
  248. package/build/module/ViewPager/PageStateContext.js +7 -0
  249. package/build/module/ViewPager/PageStateContext.js.map +1 -0
  250. package/build/module/ViewPager/ViewPager.js +57 -0
  251. package/build/module/ViewPager/ViewPager.js.map +1 -0
  252. package/build/module/ViewPager/ViewPager.native.js +127 -0
  253. package/build/module/ViewPager/ViewPager.native.js.map +1 -0
  254. package/build/module/ViewPager/ViewPagerProps.js.map +1 -1
  255. package/build/module/ViewPager/components/ChildrenMemoizedPage.js +101 -0
  256. package/build/module/ViewPager/components/ChildrenMemoizedPage.js.map +1 -0
  257. package/build/module/ViewPager/components/FluxStoreProvider.js +20 -0
  258. package/build/module/ViewPager/components/FluxStoreProvider.js.map +1 -0
  259. package/build/module/ViewPager/components/index.js +3 -0
  260. package/build/module/ViewPager/components/index.js.map +1 -0
  261. package/build/module/ViewPager/hooks/index.js +8 -0
  262. package/build/module/ViewPager/hooks/index.js.map +1 -0
  263. package/build/module/ViewPager/hooks/useDispatch.js +10 -0
  264. package/build/module/ViewPager/hooks/useDispatch.js.map +1 -0
  265. package/build/module/ViewPager/hooks/useEagerState.js +12 -0
  266. package/build/module/ViewPager/hooks/useEagerState.js.map +1 -0
  267. package/build/module/ViewPager/hooks/useForceRender.js +7 -0
  268. package/build/module/ViewPager/hooks/useForceRender.js.map +1 -0
  269. package/build/module/ViewPager/hooks/useLazyState.js +30 -0
  270. package/build/module/ViewPager/hooks/useLazyState.js.map +1 -0
  271. package/build/module/ViewPager/hooks/usePageStore.js +25 -0
  272. package/build/module/ViewPager/hooks/usePageStore.js.map +1 -0
  273. package/build/module/ViewPager/hooks/useStore.js +14 -0
  274. package/build/module/ViewPager/hooks/useStore.js.map +1 -0
  275. package/build/module/ViewPager/hooks/useViewPagerPageState.js +7 -0
  276. package/build/module/ViewPager/hooks/useViewPagerPageState.js.map +1 -0
  277. package/build/module/ViewPager/index.js +3 -1
  278. package/build/module/ViewPager/index.js.map +1 -1
  279. package/build/module/ViewPager/types.js +2 -0
  280. package/build/module/ViewPager/types.js.map +1 -0
  281. package/build/module/ViewPager/utils.js +6 -33
  282. package/build/module/ViewPager/utils.js.map +1 -1
  283. package/build/module/ViewabilityTrackerView/Viewability.js +2 -0
  284. package/build/module/ViewabilityTrackerView/Viewability.js.map +1 -0
  285. package/build/module/ViewabilityTrackerView/ViewabilityTrackerView.js +28 -0
  286. package/build/module/ViewabilityTrackerView/ViewabilityTrackerView.js.map +1 -0
  287. package/build/module/ViewabilityTrackerView/ViewabilityTrackerViewProps.js +2 -0
  288. package/build/module/ViewabilityTrackerView/ViewabilityTrackerViewProps.js.map +1 -0
  289. package/build/module/ViewabilityTrackerView/index.js +2 -0
  290. package/build/module/ViewabilityTrackerView/index.js.map +1 -0
  291. package/build/module/ViewabilityTrackerView/measureViewability.js +34 -0
  292. package/build/module/ViewabilityTrackerView/measureViewability.js.map +1 -0
  293. package/build/module/ViewabilityTrackerView/useViewabilityTracker.js +73 -0
  294. package/build/module/ViewabilityTrackerView/useViewabilityTracker.js.map +1 -0
  295. package/build/module/hooks/index.js +2 -0
  296. package/build/module/hooks/index.js.map +1 -1
  297. package/build/module/hooks/useAppbarStyles.js.map +1 -1
  298. package/build/module/hooks/useDeferredExecutor.js +33 -0
  299. package/build/module/hooks/useDeferredExecutor.js.map +1 -0
  300. package/build/module/hooks/useElevationStyle.js.map +1 -1
  301. package/build/module/hooks/useHeight.js +4 -3
  302. package/build/module/hooks/useHeight.js.map +1 -1
  303. package/build/module/hooks/useIsMounted.js +13 -0
  304. package/build/module/hooks/useIsMounted.js.map +1 -0
  305. package/build/module/hooks/useUnstableCollapsibleAppBar.js +58 -45
  306. package/build/module/hooks/useUnstableCollapsibleAppBar.js.map +1 -1
  307. package/build/module/hooks/useUnstableToggleDisplayStyle.js +9 -7
  308. package/build/module/hooks/useUnstableToggleDisplayStyle.js.map +1 -1
  309. package/build/module/index.js +2 -0
  310. package/build/module/index.js.map +1 -1
  311. package/build/typescript/AnimatedY/AnimatedY.d.ts +0 -1
  312. package/build/typescript/BottomSheet/BottomSheet.d.ts +2 -0
  313. package/build/typescript/BottomSheet/BottomSheetNative.d.ts +0 -1
  314. package/build/typescript/BottomSheet/BottomSheetProps.d.ts +6 -1
  315. package/build/typescript/BottomSheet/BottomSheetWeb.d.ts +0 -1
  316. package/build/typescript/BottomSheet/TransparentBackdrop.d.ts +0 -1
  317. package/build/typescript/BottomSheet/useDynamicSnapPoints.d.ts +11 -0
  318. package/build/typescript/Carousel/Carousel.d.ts +5 -0
  319. package/build/typescript/Carousel/CarouselProps.d.ts +33 -48
  320. package/build/typescript/Carousel/animation/animationUtils.d.ts +1 -0
  321. package/build/typescript/Carousel/animation/createDefaultItemStyle.d.ts +2 -0
  322. package/build/typescript/Carousel/animation/createDefaultScrollAnimation.d.ts +2 -0
  323. package/build/typescript/Carousel/animation/index.d.ts +4 -0
  324. package/build/typescript/Carousel/animation/normalItemStyleFactory.d.ts +2 -0
  325. package/build/typescript/Carousel/animation/parallaxItemStyleFactory.d.ts +9 -0
  326. package/build/typescript/Carousel/components/InternalContext.d.ts +14 -0
  327. package/build/typescript/Carousel/components/ItemView.d.ts +9 -0
  328. package/build/typescript/Carousel/components/RootView.d.ts +16 -0
  329. package/build/typescript/Carousel/components/ScrollViewGesture.d.ts +12 -0
  330. package/build/typescript/Carousel/components/index.d.ts +4 -0
  331. package/build/typescript/Carousel/components/useItemInterpolation.d.ts +2 -0
  332. package/build/typescript/Carousel/hooks/index.d.ts +5 -0
  333. package/build/typescript/Carousel/hooks/useAutoplayController.d.ts +7 -0
  334. package/build/typescript/Carousel/hooks/useIndexController.d.ts +10 -0
  335. package/build/typescript/Carousel/hooks/useItemVisibilityStore.d.ts +7 -0
  336. package/build/typescript/Carousel/hooks/useLoopedData.d.ts +1 -0
  337. package/build/typescript/Carousel/hooks/usePagingAnimator.d.ts +17 -0
  338. package/build/typescript/Carousel/index.d.ts +3 -1
  339. package/build/typescript/Carousel/tick.d.ts +2 -0
  340. package/build/typescript/Carousel/types.d.ts +91 -0
  341. package/build/typescript/ComicViewer/ComicViewer.d.ts +0 -1
  342. package/build/typescript/ComicViewer/ComicViewerItemProps.d.ts +12 -1
  343. package/build/typescript/ComicViewer/ComicViewerProps.d.ts +61 -12
  344. package/build/typescript/DateTimePicker/DateTimePicker.d.ts +0 -1
  345. package/build/typescript/DateTimePicker/YearPicker.d.ts +0 -1
  346. package/build/typescript/FlipCard/FlipCard.d.ts +0 -1
  347. package/build/typescript/StatusBarProvider/StatusBarProvider.d.ts +0 -1
  348. package/build/typescript/ViewPager/FluxContext.d.ts +5 -0
  349. package/build/typescript/ViewPager/InternalContext.d.ts +7 -0
  350. package/build/typescript/ViewPager/PageStateContext.d.ts +6 -0
  351. package/build/typescript/ViewPager/ViewPager.d.ts +5 -0
  352. package/build/typescript/ViewPager/ViewPager.native.d.ts +5 -0
  353. package/build/typescript/ViewPager/ViewPagerProps.d.ts +18 -29
  354. package/build/typescript/ViewPager/components/ChildrenMemoizedPage.d.ts +14 -0
  355. package/build/typescript/ViewPager/components/FluxStoreProvider.d.ts +6 -0
  356. package/build/typescript/ViewPager/components/index.d.ts +2 -0
  357. package/build/typescript/ViewPager/hooks/index.d.ts +7 -0
  358. package/build/typescript/ViewPager/hooks/useDispatch.d.ts +2 -0
  359. package/build/typescript/ViewPager/hooks/useEagerState.d.ts +1 -0
  360. package/build/typescript/ViewPager/hooks/useForceRender.d.ts +2 -0
  361. package/build/typescript/ViewPager/hooks/useLazyState.d.ts +2 -0
  362. package/build/typescript/ViewPager/hooks/usePageStore.d.ts +2 -0
  363. package/build/typescript/ViewPager/hooks/useStore.d.ts +2 -0
  364. package/build/typescript/ViewPager/hooks/useViewPagerPageState.d.ts +1 -0
  365. package/build/typescript/ViewPager/index.d.ts +4 -1
  366. package/build/typescript/ViewPager/types.d.ts +12 -0
  367. package/build/typescript/ViewPager/utils.d.ts +5 -20
  368. package/build/typescript/ViewabilityTrackerView/Viewability.d.ts +3 -0
  369. package/build/typescript/ViewabilityTrackerView/ViewabilityTrackerView.d.ts +2 -0
  370. package/build/typescript/ViewabilityTrackerView/ViewabilityTrackerViewProps.d.ts +22 -0
  371. package/build/typescript/ViewabilityTrackerView/index.d.ts +2 -0
  372. package/build/typescript/ViewabilityTrackerView/measureViewability.d.ts +11 -0
  373. package/build/typescript/ViewabilityTrackerView/useViewabilityTracker.d.ts +11 -0
  374. package/build/typescript/hooks/index.d.ts +2 -0
  375. package/build/typescript/hooks/useDeferredExecutor.d.ts +11 -0
  376. package/build/typescript/hooks/useIsMounted.d.ts +4 -0
  377. package/build/typescript/hooks/useUnstableCollapsibleAppBar.d.ts +2 -3
  378. package/build/typescript/hooks/useUnstableToggleDisplayStyle.d.ts +2 -2
  379. package/build/typescript/index.d.ts +2 -0
  380. package/package.json +11 -25
  381. package/src/AnimatedY/AnimatedY.tsx +13 -10
  382. package/src/BottomSheet/BottomSheet.tsx +184 -0
  383. package/src/BottomSheet/BottomSheetNative.tsx +2 -0
  384. package/src/BottomSheet/BottomSheetProps.ts +7 -1
  385. package/src/BottomSheet/BottomSheetWeb.tsx +18 -5
  386. package/src/BottomSheet/useDynamicSnapPoints.ts +52 -0
  387. package/src/Carousel/Carousel.tsx +135 -0
  388. package/src/Carousel/CarouselProps.ts +42 -53
  389. package/src/Carousel/animation/animationUtils.ts +1 -0
  390. package/src/Carousel/animation/createDefaultItemStyle.ts +3 -0
  391. package/src/Carousel/animation/createDefaultScrollAnimation.ts +13 -0
  392. package/src/Carousel/animation/index.ts +4 -0
  393. package/src/Carousel/animation/normalItemStyleFactory.ts +19 -0
  394. package/src/Carousel/animation/parallaxItemStyleFactory.ts +79 -0
  395. package/src/Carousel/components/InternalContext.ts +33 -0
  396. package/src/Carousel/components/ItemView.tsx +66 -0
  397. package/src/Carousel/components/RootView.tsx +79 -0
  398. package/src/Carousel/components/ScrollViewGesture.tsx +92 -0
  399. package/src/Carousel/components/index.ts +4 -0
  400. package/src/Carousel/components/useItemInterpolation.ts +107 -0
  401. package/src/Carousel/hooks/index.ts +5 -0
  402. package/src/Carousel/hooks/useAutoplayController.ts +57 -0
  403. package/src/Carousel/hooks/useIndexController.tsx +57 -0
  404. package/src/Carousel/hooks/useItemVisibilityStore.ts +107 -0
  405. package/src/Carousel/hooks/useLoopedData.ts +26 -0
  406. package/src/Carousel/hooks/usePagingAnimator.ts +255 -0
  407. package/src/Carousel/index.ts +4 -2
  408. package/src/Carousel/tick.ts +6 -0
  409. package/src/Carousel/types.ts +114 -0
  410. package/src/ComicViewer/ComicViewer.tsx +70 -30
  411. package/src/ComicViewer/ComicViewerItemProps.ts +16 -1
  412. package/src/ComicViewer/ComicViewerProps.ts +70 -10
  413. package/src/ComicViewer/ViewerItem.tsx +107 -27
  414. package/src/DateTimePicker/DateTimePicker.tsx +2 -2
  415. package/src/FlipCard/FlipCard.tsx +8 -8
  416. package/src/ViewPager/FluxContext.ts +8 -0
  417. package/src/ViewPager/InternalContext.ts +13 -0
  418. package/src/ViewPager/PageStateContext.ts +11 -0
  419. package/src/ViewPager/ViewPager.native.tsx +150 -0
  420. package/src/ViewPager/ViewPager.tsx +69 -0
  421. package/src/ViewPager/ViewPagerProps.ts +20 -35
  422. package/src/ViewPager/components/ChildrenMemoizedPage.tsx +124 -0
  423. package/src/ViewPager/components/FluxStoreProvider.tsx +27 -0
  424. package/src/ViewPager/components/index.ts +2 -0
  425. package/src/ViewPager/hooks/index.ts +7 -0
  426. package/src/ViewPager/hooks/useDispatch.ts +11 -0
  427. package/src/ViewPager/hooks/useEagerState.ts +14 -0
  428. package/src/ViewPager/hooks/useForceRender.ts +7 -0
  429. package/src/ViewPager/hooks/useLazyState.ts +32 -0
  430. package/src/ViewPager/hooks/usePageStore.ts +30 -0
  431. package/src/ViewPager/hooks/useStore.ts +15 -0
  432. package/src/ViewPager/hooks/useViewPagerPageState.ts +6 -0
  433. package/src/ViewPager/index.ts +11 -2
  434. package/src/ViewPager/types.ts +15 -0
  435. package/src/ViewPager/utils.tsx +9 -56
  436. package/src/ViewabilityTrackerView/Viewability.ts +3 -0
  437. package/src/ViewabilityTrackerView/ViewabilityTrackerView.tsx +33 -0
  438. package/src/ViewabilityTrackerView/ViewabilityTrackerViewProps.ts +25 -0
  439. package/src/ViewabilityTrackerView/index.ts +2 -0
  440. package/src/ViewabilityTrackerView/measureViewability.ts +54 -0
  441. package/src/ViewabilityTrackerView/useViewabilityTracker.ts +85 -0
  442. package/src/hooks/index.ts +2 -0
  443. package/src/hooks/useDeferredExecutor.ts +46 -0
  444. package/src/hooks/useHeight.ts +2 -2
  445. package/src/hooks/useIsMounted.ts +19 -0
  446. package/src/hooks/useUnstableCollapsibleAppBar.ts +62 -45
  447. package/src/hooks/useUnstableToggleDisplayStyle.ts +8 -6
  448. package/src/index.ts +3 -0
  449. package/build/commonjs/Carousel/CarouselNative.js +0 -72
  450. package/build/commonjs/Carousel/CarouselNative.js.map +0 -1
  451. package/build/commonjs/Carousel/CarouselWeb.js +0 -237
  452. package/build/commonjs/Carousel/CarouselWeb.js.map +0 -1
  453. package/build/commonjs/Carousel/index.native.js.map +0 -1
  454. package/build/commonjs/Carousel/utils.js +0 -19
  455. package/build/commonjs/Carousel/utils.js.map +0 -1
  456. package/build/commonjs/ViewPager/ChildrenMemoizedPage.js +0 -49
  457. package/build/commonjs/ViewPager/ChildrenMemoizedPage.js.map +0 -1
  458. package/build/commonjs/ViewPager/ViewPagerNative.js +0 -72
  459. package/build/commonjs/ViewPager/ViewPagerNative.js.map +0 -1
  460. package/build/commonjs/ViewPager/ViewPagerWeb.js +0 -55
  461. package/build/commonjs/ViewPager/ViewPagerWeb.js.map +0 -1
  462. package/build/commonjs/ViewPager/index.native.js +0 -16
  463. package/build/commonjs/ViewPager/index.native.js.map +0 -1
  464. package/build/commonjs/hooks/useWidth.js +0 -29
  465. package/build/commonjs/hooks/useWidth.js.map +0 -1
  466. package/build/module/Carousel/CarouselNative.js +0 -54
  467. package/build/module/Carousel/CarouselNative.js.map +0 -1
  468. package/build/module/Carousel/CarouselWeb.js +0 -215
  469. package/build/module/Carousel/CarouselWeb.js.map +0 -1
  470. package/build/module/Carousel/index.native.js +0 -2
  471. package/build/module/Carousel/index.native.js.map +0 -1
  472. package/build/module/Carousel/utils.js +0 -7
  473. package/build/module/Carousel/utils.js.map +0 -1
  474. package/build/module/ViewPager/ChildrenMemoizedPage.js +0 -37
  475. package/build/module/ViewPager/ChildrenMemoizedPage.js.map +0 -1
  476. package/build/module/ViewPager/ViewPagerNative.js +0 -53
  477. package/build/module/ViewPager/ViewPagerNative.js.map +0 -1
  478. package/build/module/ViewPager/ViewPagerWeb.js +0 -41
  479. package/build/module/ViewPager/ViewPagerWeb.js.map +0 -1
  480. package/build/module/ViewPager/index.native.js +0 -2
  481. package/build/module/ViewPager/index.native.js.map +0 -1
  482. package/build/module/hooks/useWidth.js +0 -15
  483. package/build/module/hooks/useWidth.js.map +0 -1
  484. package/build/typescript/Carousel/CarouselNative.d.ts +0 -3
  485. package/build/typescript/Carousel/CarouselWeb.d.ts +0 -4
  486. package/build/typescript/Carousel/index.native.d.ts +0 -1
  487. package/build/typescript/Carousel/utils.d.ts +0 -6
  488. package/build/typescript/ViewPager/ChildrenMemoizedPage.d.ts +0 -4
  489. package/build/typescript/ViewPager/ViewPagerNative.d.ts +0 -3
  490. package/build/typescript/ViewPager/ViewPagerWeb.d.ts +0 -3
  491. package/build/typescript/ViewPager/index.native.d.ts +0 -1
  492. package/build/typescript/hooks/useWidth.d.ts +0 -2
  493. package/src/Carousel/CarouselNative.tsx +0 -67
  494. package/src/Carousel/CarouselWeb.tsx +0 -222
  495. package/src/Carousel/index.native.ts +0 -1
  496. package/src/Carousel/utils.ts +0 -11
  497. package/src/ViewPager/ChildrenMemoizedPage.tsx +0 -36
  498. package/src/ViewPager/ViewPagerNative.tsx +0 -66
  499. package/src/ViewPager/ViewPagerWeb.tsx +0 -52
  500. package/src/ViewPager/index.native.ts +0 -1
  501. package/src/hooks/useWidth.ts +0 -17
@@ -1,7 +1,8 @@
1
- import React, { RefObject } from 'react';
2
- import type { ListRenderItemInfo } from 'react-native';
1
+ import type { RefObject } from 'react';
3
2
  import type { ComponentProps } from '@fountain-ui/core';
3
+ import type { CarouselInstance, CreateItemStyle, CreateScrollAnimation, ItemHeight, OnIndexChange, RenderItem } from './types';
4
4
  export default interface CarouselProps<ItemT = any> extends ComponentProps<{
5
+ ref?: RefObject<CarouselInstance>;
5
6
  /**
6
7
  * If `true`, enable autoplay.
7
8
  * @default false
@@ -13,78 +14,62 @@ export default interface CarouselProps<ItemT = any> extends ComponentProps<{
13
14
  */
14
15
  autoplayInterval?: number;
15
16
  /**
16
- * Padding for center slide. If specified, `slidesToScroll` and `slidesToShow` set to 1.
17
+ * The item style creator function.
18
+ * @default createDefaultItemStyle
17
19
  */
18
- centerSlidePadding?: number;
20
+ createItemStyle?: CreateItemStyle;
19
21
  /**
20
- * Delay in ms until navigating to the next item.
22
+ * The scroll animation creator function.
23
+ * @default createDefaultScrollAnimation
24
+ */
25
+ createScrollAnimation?: CreateScrollAnimation;
26
+ /**
27
+ * Data for render items.
21
28
  */
22
29
  data: ReadonlyArray<ItemT>;
23
30
  /**
24
- * Value of the opacity effect applied to inactive slides.
25
- * @default 0.7
31
+ * If `true`, carousel will detect its own viewability and control autoplay automatically.
32
+ * @default false
26
33
  */
27
- inactiveSlideOpacity?: number;
34
+ disableSmartAutoplay?: boolean;
28
35
  /**
29
- * Value of the 'scale' transform applied to inactive slides.
30
- * @default 0.9
36
+ * Index of initial item that should be selected.
37
+ * @default 0
31
38
  */
32
- inactiveSlideScale?: number;
39
+ initialIndex?: number;
33
40
  /**
34
- * Web only. Value of the 'scale' transform applied to a active slide.
35
- * @default 0.990
41
+ * The item height.
42
+ * For a performance reason, always consider to provide a number value.
36
43
  */
37
- activeSlideScale?: number;
44
+ itemHeight: ItemHeight;
38
45
  /**
39
- * A number representing the index of the active slide.
46
+ * The item width.
40
47
  */
41
- index: number;
48
+ itemWidth: number;
42
49
  /**
43
50
  * Enable infinite loop mode.
44
51
  * @default false
45
52
  */
46
- infinite?: boolean;
53
+ loop?: boolean;
47
54
  /**
48
55
  * Callback fired when an index is changed.
49
56
  */
50
- onChange?: (newIndex: number) => void;
57
+ onIndexChange?: OnIndexChange;
51
58
  /**
52
59
  * Takes an item from data and renders it into the list.
53
60
  */
54
- renderItem: (info: Omit<ListRenderItemInfo<ItemT>, 'separators'>) => React.ReactElement | null;
55
- /**
56
- * Web only. Number of slides to scroll at once.
57
- * @default 1
58
- */
59
- slidesToScroll?: number;
60
- /**
61
- * Web only. Number of slides to display.
62
- * @default 1
63
- */
64
- slidesToShow?: number;
61
+ renderItem: RenderItem<ItemT>;
65
62
  /**
66
- * Web only. Enable items to display at the center.
63
+ * Whether to enable scroll gesture.
67
64
  * @default true
68
65
  */
69
- centerMode?: boolean;
70
- /**
71
- * Web only. Enable arrows to display.
72
- * @default true
73
- */
74
- arrows?: boolean;
75
- /**
76
- * Web only. Style of arrows
77
- * @default true
78
- */
79
- arrowsStyle?: object;
80
- /**
81
- * Web only. Style of track
82
- * @default object
83
- */
84
- trackStyle?: object;
66
+ scrollEnabled?: boolean;
85
67
  /**
86
- * Only web. Refer slick object
68
+ * The maximum number of items that can respond to pan gesture events.
69
+ * Due to the nature of the `active` item, it accepts only odd number. (e.g. 1, 3, 5...)
70
+ * 0 means all items will respond to pan gesture events.
71
+ * @default 5
87
72
  */
88
- ref?: RefObject<any>;
73
+ windowSize?: number;
89
74
  }> {
90
75
  }
@@ -0,0 +1 @@
1
+ export declare const itemInterpolationInputRange: number[];
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").CreateItemStyle;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import { Animated } from 'react-native';
2
+ export default function createDefaultScrollAnimation(animatedValue: Animated.Value, toValue: number): Animated.CompositeAnimation;
@@ -0,0 +1,4 @@
1
+ export { default as createDefaultItemStyle } from './createDefaultItemStyle';
2
+ export { default as createDefaultScrollAnimation } from './createDefaultScrollAnimation';
3
+ export { default as normalItemStyleFactory } from './normalItemStyleFactory';
4
+ export { default as parallaxItemStyleFactory } from './parallaxItemStyleFactory';
@@ -0,0 +1,2 @@
1
+ import type { CreateItemStyle } from '../types';
2
+ export default function normalItemStyleFactory(): CreateItemStyle;
@@ -0,0 +1,9 @@
1
+ import type { CreateItemStyle } from '../types';
2
+ export interface ParallaxAnimationConfig {
3
+ activeItemScale?: number;
4
+ activeItemOpacity?: number;
5
+ adjacentItemScale?: number;
6
+ adjacentItemOpacity?: number;
7
+ scrollingOffset?: number;
8
+ }
9
+ export default function parallaxItemStyleFactory(config?: ParallaxAnimationConfig): CreateItemStyle;
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import { Animated } from 'react-native';
3
+ import type { CreateItemStyle, ItemHeight, ItemVisibilityStore } from '../types';
4
+ export interface InternalContextValue<ItemT> {
5
+ createItemStyle: CreateItemStyle;
6
+ data: ReadonlyArray<ItemT>;
7
+ globalInterpolation: Animated.AnimatedInterpolation;
8
+ itemHeight: ItemHeight;
9
+ itemWidth: number;
10
+ itemVisibilityStore: ItemVisibilityStore;
11
+ loop: boolean;
12
+ }
13
+ declare const InternalContext: import("react").Context<InternalContextValue<any>>;
14
+ export default InternalContext;
@@ -0,0 +1,9 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { ViewProps } from 'react-native';
3
+ import { Animated } from 'react-native';
4
+ export interface ItemViewProps {
5
+ children: (interpolation: Animated.AnimatedInterpolation) => ReactElement | null;
6
+ index: number;
7
+ onLayout?: ViewProps['onLayout'];
8
+ }
9
+ export default function ItemView(props: ItemViewProps): JSX.Element;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import type { View, ViewProps } from 'react-native';
3
+ import type { ItemHeight, RenderItem } from '../types';
4
+ export declare type RootViewProps<ItemT> = ViewProps & {
5
+ data: ReadonlyArray<ItemT>;
6
+ itemHeight: ItemHeight;
7
+ originalData: ReadonlyArray<ItemT>;
8
+ renderItem: RenderItem<ItemT>;
9
+ };
10
+ declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponent<ViewProps & {
11
+ data: readonly any[];
12
+ itemHeight: ItemHeight;
13
+ originalData: readonly any[];
14
+ renderItem: RenderItem<any>;
15
+ } & React.RefAttributes<View>>>;
16
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import type { ReactNode } from 'react';
2
+ import { Animated } from 'react-native';
3
+ import type { AutoplayController, StartPagingAnimation } from '../types';
4
+ export interface ScrollViewGestureProps {
5
+ autoplayController: AutoplayController;
6
+ children: ReactNode;
7
+ gestureTranslationX: Animated.Value;
8
+ interruptAnimation: () => void;
9
+ scrollEnabled: boolean;
10
+ startPagingAnimation: StartPagingAnimation;
11
+ }
12
+ export default function ScrollViewGesture(props: ScrollViewGestureProps): JSX.Element;
@@ -0,0 +1,4 @@
1
+ export { default as InternalContext } from './InternalContext';
2
+ export { default as ItemView } from './ItemView';
3
+ export { default as RootView } from './RootView';
4
+ export { default as ScrollViewGesture } from './ScrollViewGesture';
@@ -0,0 +1,2 @@
1
+ import { Animated } from 'react-native';
2
+ export default function useItemInterpolation(index: number): Animated.AnimatedInterpolation;
@@ -0,0 +1,5 @@
1
+ export { default as useAutoplayController } from './useAutoplayController';
2
+ export { default as useIndexController } from './useIndexController';
3
+ export { default as useLoopedData } from './useLoopedData';
4
+ export { default as usePagingAnimator } from './usePagingAnimator';
5
+ export { default as useItemVisibilityStore } from './useItemVisibilityStore';
@@ -0,0 +1,7 @@
1
+ import type { AutoplayController, StartPagingAnimation } from '../types';
2
+ export interface AutoplayConfig {
3
+ enabled: boolean;
4
+ intervalMillis: number;
5
+ startPagingAnimation: StartPagingAnimation;
6
+ }
7
+ export default function useAutoplayController(config: AutoplayConfig): AutoplayController;
@@ -0,0 +1,10 @@
1
+ import type { IndexController } from '../types';
2
+ export interface UseIndexControllerParameters {
3
+ initialIndex: number;
4
+ itemWidth: number;
5
+ numberOfData: number;
6
+ numberOfOriginalData: number;
7
+ onIndexChange?: (itemIndex: number) => void;
8
+ onPositionChange?: (position: number) => void;
9
+ }
10
+ export default function useIndexController(params: UseIndexControllerParameters): IndexController;
@@ -0,0 +1,7 @@
1
+ import type { ItemVisibilityStore, OnPositionChange } from '../types';
2
+ export interface Parameters {
3
+ initialIndex: number;
4
+ numberOfData: number;
5
+ windowSize: number;
6
+ }
7
+ export default function useItemVisibilityStore(params: Parameters): [ItemVisibilityStore, OnPositionChange];
@@ -0,0 +1 @@
1
+ export default function useLoopedData<ItemT>(originalData: ReadonlyArray<ItemT>, loop: boolean): ReadonlyArray<ItemT>;
@@ -0,0 +1,17 @@
1
+ import { Animated } from 'react-native';
2
+ import type { CreateScrollAnimation, IndexController, StartPagingAnimation } from '../types';
3
+ export interface PagingAnimatorConfig {
4
+ createScrollAnimation: CreateScrollAnimation;
5
+ itemWidth: number;
6
+ indexController: IndexController;
7
+ initialIndex: number;
8
+ loop: boolean;
9
+ numberOfData: number;
10
+ }
11
+ export interface PagingAnimator {
12
+ gestureTranslationX: Animated.Value;
13
+ globalInterpolation: Animated.AnimatedInterpolation;
14
+ interruptAnimation: () => void;
15
+ startPagingAnimation: StartPagingAnimation;
16
+ }
17
+ export default function usePagingAnimator(config: PagingAnimatorConfig): PagingAnimator;
@@ -1,2 +1,4 @@
1
- export { default } from './CarouselWeb';
1
+ export { default } from './Carousel';
2
2
  export type { default as CarouselProps } from './CarouselProps';
3
+ export type { CarouselInstance } from './types';
4
+ export { normalItemStyleFactory, parallaxItemStyleFactory } from './animation';
@@ -0,0 +1,2 @@
1
+ declare const _default: (key: string, message?: string | undefined) => void;
2
+ export default _default;
@@ -0,0 +1,91 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { Animated, ViewProps } from 'react-native';
3
+ declare const directions: readonly ["next", "prev", "stay"];
4
+ export declare type PagingDirection = (typeof directions)[number];
5
+ declare const scrollStates: readonly ["idle", "dragging", "interrupted"];
6
+ export declare type ScrollState = (typeof scrollStates)[number];
7
+ export declare type ItemHeight = number | 'auto';
8
+ export interface RenderItem<T> {
9
+ (info: {
10
+ item: T;
11
+ index: number;
12
+ interpolation: Animated.AnimatedInterpolation;
13
+ }): ReactElement | null;
14
+ }
15
+ export interface CreateScrollAnimation {
16
+ (aValue: Animated.AnimatedValue, toValue: number): Animated.CompositeAnimation;
17
+ }
18
+ export interface CreateItemStyle {
19
+ (itemInterpolation: Animated.AnimatedInterpolation, itemWidth: number): Animated.AnimatedProps<ViewProps['style']>;
20
+ }
21
+ export interface GetCurrentIndex {
22
+ (): number;
23
+ }
24
+ export interface OnIndexChange {
25
+ (itemIndex: number): void;
26
+ }
27
+ export interface OnPositionChange {
28
+ (position: number): void;
29
+ }
30
+ export interface ScrollStateChangeEvent {
31
+ offset: number;
32
+ state: ScrollState;
33
+ }
34
+ export interface IndexController {
35
+ getCurrentIndex: GetCurrentIndex;
36
+ lastIndex: number;
37
+ notifyScrollStateHasChanged: (event: ScrollStateChangeEvent) => void;
38
+ }
39
+ export declare type PagingAnimationType = 'directional' | 'index';
40
+ export interface BasePagingAnimationConfig {
41
+ animated?: boolean;
42
+ lastGestureTranslationX?: number;
43
+ }
44
+ export interface DirectionalPagingAnimationConfig extends BasePagingAnimationConfig {
45
+ direction: PagingDirection;
46
+ isOriginatedFromGesture?: boolean;
47
+ }
48
+ export interface IndexPagingAnimationConfig extends BasePagingAnimationConfig {
49
+ index: number;
50
+ }
51
+ export declare type PagingAnimationConfig = DirectionalPagingAnimationConfig | IndexPagingAnimationConfig;
52
+ export interface StartPagingAnimation {
53
+ (type: PagingAnimationType, config: PagingAnimationConfig): void;
54
+ }
55
+ export declare type VisibleIndexRanges = Array<[number, number]>;
56
+ export interface StoreSubscription {
57
+ (): void;
58
+ }
59
+ export interface ItemVisibilityStore {
60
+ dispatch: (ranges: VisibleIndexRanges) => void;
61
+ subscribe: (listener: (ranges: VisibleIndexRanges) => void) => StoreSubscription;
62
+ removeAllListeners: () => void;
63
+ }
64
+ export interface AutoplayController {
65
+ pause: () => void;
66
+ resume: () => void;
67
+ }
68
+ export interface ScrollToOption {
69
+ index: number;
70
+ animated?: boolean;
71
+ }
72
+ export interface CarouselInstance {
73
+ /**
74
+ * Get current visible item index.
75
+ */
76
+ getCurrentIndex: GetCurrentIndex;
77
+ /**
78
+ * Scroll to next visible item.
79
+ */
80
+ next: () => void;
81
+ /**
82
+ * Scroll to previous visible item.
83
+ */
84
+ prev: () => void;
85
+ /**
86
+ * Scroll to desired indexed item.
87
+ * Invalid index is ignored.
88
+ */
89
+ scrollTo: (option: ScrollToOption) => void;
90
+ }
91
+ export {};
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import { default as ComicViewerProps } from './ComicViewerProps';
3
2
  export default function ComicViewer<T>(props: ComicViewerProps<T>): JSX.Element;
@@ -1,12 +1,23 @@
1
- import { ComicViewerItemData, ErrorInfo } from './ComicViewerProps';
1
+ import { ComicViewerItemData, ErrorInfo, ComicViewerItemState } from './ComicViewerProps';
2
2
  declare type ComicViewerItemProps<T> = ComicViewerItemData<T> & {
3
3
  /**
4
4
  * FlatListItem is viewable in screen.
5
5
  */
6
6
  isViewable: boolean;
7
+ /**
8
+ * How many times retry onError when same item error occur
9
+ * @default 3
10
+ */
11
+ errorRetryCount?: number;
7
12
  /**
8
13
  * Error handler
9
14
  */
10
15
  onError?: (errorInfo: ErrorInfo) => void;
16
+ /**
17
+ * Load handler
18
+ */
19
+ onLoaded?: (sortKey: number) => void;
20
+ getNextPage?: (sortKey: number) => void;
21
+ itemState?: ComicViewerItemState;
11
22
  };
12
23
  export default ComicViewerItemProps;
@@ -1,13 +1,36 @@
1
+ import React from 'react';
1
2
  import { ComponentProps } from '@fountain-ui/core';
3
+ import { NativeScrollEvent, NativeSyntheticEvent } from 'react-native';
4
+ export declare const STATE: {
5
+ readonly UNLOAD: "unload";
6
+ readonly LOADING: "loading";
7
+ readonly LOADED: "loaded";
8
+ readonly FAIL: "fail";
9
+ };
10
+ export declare type LoadingState = typeof STATE[keyof typeof STATE];
11
+ export interface ComicViewerItemState {
12
+ /**
13
+ * Content's loading state.
14
+ */
15
+ state: LoadingState;
16
+ /***
17
+ * Content's error Info.
18
+ */
19
+ error?: ErrorInfo;
20
+ }
2
21
  export interface ErrorInfo {
3
22
  /**
4
- * ComicViewerItemData.id.
23
+ * ComicViewerItemData.sortKey.
5
24
  */
6
- id: string;
25
+ sortKey: number;
7
26
  /**
8
27
  * Number of times an error occurred.
9
28
  */
10
29
  count: number;
30
+ /**
31
+ * Content is Expired: true
32
+ */
33
+ expired: boolean;
11
34
  }
12
35
  export declare type ComicViewerItemData<T = {}> = T & {
13
36
  /**
@@ -17,15 +40,23 @@ export declare type ComicViewerItemData<T = {}> = T & {
17
40
  /**
18
41
  * Unique value for identifying.
19
42
  */
20
- id: string;
43
+ id: number | undefined;
21
44
  /**
22
45
  * Image sourceUrl for displaying.
23
46
  */
24
- sourceUrl: string;
47
+ url: string;
25
48
  /**
26
49
  * Image width.
27
50
  */
28
51
  width: number;
52
+ /**
53
+ * SortKey
54
+ */
55
+ sortKey: number;
56
+ /**
57
+ * Image expire date.
58
+ */
59
+ expiresAt: string;
29
60
  };
30
61
  export default interface ComicViewerProps<T> extends ComponentProps<{
31
62
  /**
@@ -43,9 +74,9 @@ export default interface ComicViewerProps<T> extends ComponentProps<{
43
74
  */
44
75
  errorRetryCount?: number;
45
76
  /**
46
- * How many items to render in the initial batch.
47
- * @default 1
48
- */
77
+ * How many items to render in the initial batch.
78
+ * @default 1
79
+ */
49
80
  initialNumToRender?: number;
50
81
  /**
51
82
  * Start at initialScrollPercentage.
@@ -58,11 +89,6 @@ export default interface ComicViewerProps<T> extends ComponentProps<{
58
89
  * @default 0
59
90
  */
60
91
  itemVisiblePercentThreshold?: number;
61
- /**
62
- * Handling all viewerItem errors at once.
63
- * @param errors Array of ViewerItems errorInfo.
64
- */
65
- onError?: (errors: ErrorInfo[]) => void;
66
92
  /**
67
93
  * Comic viewer width.
68
94
  */
@@ -72,5 +98,28 @@ export default interface ComicViewerProps<T> extends ComponentProps<{
72
98
  * @default 3
73
99
  */
74
100
  windowSize?: number;
101
+ /**
102
+ * How many images in one page.
103
+ */
104
+ pageUnit: number;
105
+ /**
106
+ * Method for getting next page contents.
107
+ * @param sortKey
108
+ */
109
+ getNextPage?: (sortKey: number) => void;
110
+ /**
111
+ * Handling all viewerItem errors at once.
112
+ * @param errors Array of ViewerItems errorInfo.
113
+ */
114
+ onError?: (errors: ErrorInfo[]) => void;
115
+ /**
116
+ * Handle scroll event.
117
+ * @param event Scroll event.
118
+ */
119
+ onScroll?: (event: NativeSyntheticEvent<NativeScrollEvent>) => void;
120
+ /**
121
+ * Component for comic viewer footer.
122
+ */
123
+ ListFooterComponent?: React.ReactElement;
75
124
  }> {
76
125
  }
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type DateTimePickerProps from './DateTimePickerProps';
3
2
  export default function DateTimePicker(props: DateTimePickerProps): JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface YearPickerProps {
3
2
  date: Date;
4
3
  locale?: string;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type FlipCardProps from './FlipCardProps';
3
2
  export default function FlipCard(props: FlipCardProps): JSX.Element;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type StatusBarProviderProps from './StatusBarProviderProps';
3
2
  export default function StatusBarProvider(props: StatusBarProviderProps): JSX.Element;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import type { MonoStore } from '@fountain-ui/core';
3
+ export declare type FluxStore<S> = MonoStore<S>;
4
+ declare const FluxContext: import("react").Context<FluxStore<any> | null>;
5
+ export default FluxContext;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import type { MonoStore } from '@fountain-ui/core';
3
+ export interface InternalContextValue {
4
+ pageStore: MonoStore<number>;
5
+ }
6
+ declare const InternalContext: import("react").Context<InternalContextValue>;
7
+ export default InternalContext;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export interface PageState {
3
+ isActive: boolean;
4
+ }
5
+ declare const PageStateContext: import("react").Context<PageState>;
6
+ export default PageStateContext;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type ViewPagerProps from './ViewPagerProps';
3
+ import type { ViewPagerInstance } from './types';
4
+ declare const ViewPager: React.ForwardRefExoticComponent<Pick<ViewPagerProps, "style" | "children" | "onChange" | "scrollEnabled" | "keyboardDismissMode" | "initialPage" | "loading" | "offscreenPageRerenderLimit" | "pageForceRerenderKey" | "UNSTABLE_sharedPage"> & React.RefAttributes<ViewPagerInstance>>;
5
+ export default ViewPager;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type ViewPagerProps from './ViewPagerProps';
3
+ import type { ViewPagerInstance } from './types';
4
+ declare const ViewPager: React.ForwardRefExoticComponent<Pick<ViewPagerProps, "style" | "children" | "onChange" | "scrollEnabled" | "keyboardDismissMode" | "initialPage" | "loading" | "offscreenPageRerenderLimit" | "pageForceRerenderKey" | "UNSTABLE_sharedPage"> & React.RefAttributes<ViewPagerInstance>>;
5
+ export default ViewPager;