react-native-reanimated-carousel
The best carousel component in React Native community. ⚡️
Sponsors
License
MIT
Simple carousel component.fully implemented using Reanimated 2.Infinitely scrolling, very smooth.
MIT
#834 1d2767b
Thanks @dohooo! - Add accessibility support to pagination components and replace deprecated TouchableWithoutFeedback with Pressable
Co-authored-by: AlexJackson01 alex@example.com
#834 1d2767b
Thanks @dohooo! - Add comprehensive programmatic control documentation
#834 1d2767b
Thanks @dohooo! - Replace deprecated TouchableWithoutFeedback with Pressable in pagination components
Fixes deprecation warnings by replacing TouchableWithoutFeedback with the recommended Pressable component in both Basic and Custom pagination items. This change maintains the same functionality while using the modern React Native API.
Closes #812
#834 1d2767b
Thanks @dohooo! - Update homepage in package.json
#444 56e20c8
Thanks @dohooo! - feat: use new RNGH api
Updates react-native-gesture-handler
to >=2.9.0
and replaces usage of useAnimatedGestureHandler
with the new gesture handler API which supports the new gesture handler web implementation.
#687 55c55ff
Thanks @dohooo! - feat: Add containerStyle prop to control the container styles.
d5de105
Thanks @dohooo! - Added missing dependencies for web to work
#666 2982fcd
Thanks @dohooo! - fix: typescript error where MeasuredDimension can be null
#677 00c948b
Thanks @nmassey! - fix Pagination.Basic and Pagination.Custom usage of TouchableWithoutFeedback.
This fixes press event handler not working correctly. (Thanks to @qwertychouskie for reporting!)
#600 d9557b2
Thanks @dohooo! - Fixed an issue where endWithSpring used outdated data from useSharedValue after onGestureEnd, causing incorrect carousel behavior on direction reversal.
85f24e7
Thanks @dohooo! - Type error property push does not exist on type
#517 9f3a3d6
Thanks @dohooo! - Reduce the amount of work done when rendering data.
#496 fdeef6b
Thanks @dohooo! - re-calculate when window size changed in browser.
#666 32c8c36
Thanks @dohooo! - Add <Pagination.Custom/> dot animation.
#498 096ac75
Thanks @dohooo! - re-calculate when window size changed in browser. (re-bump for alpha.3)
#577 17621ca
Thanks @nmassey! - fix: make gesture onStart/onUpdate/onEnd (et al) callbacks run as worklets again
#733 3040863
Thanks @dohooo! - Add pointerEvents: ‘box-none’ to ItemLayout component to allow touches for children components outside item boundaries
#494 6b849ec
Thanks @dohooo! - Removed the reset logic when user change the defaultIndex prop. (We couldn't update the handlerOffset value when user change the defaultIndex. Because the carousel component already be a non-controlled component. So the subsequent changes of defaultIndex will be ignored.)
#735 848f458
Thanks @dohooo! - This PR updates the customAnimation function signature to include an index parameter, allowing users to apply custom animations based on the item’s index.
#648 0abdb2d
Thanks @nmassey! - fix app crash when using "onProgressChange" prop as function
#721 2a8111e
Thanks @dohooo! - fix: parallax layout with new arch enabled
#492 978b59f
Thanks @dohooo! - feat: change the way of PanGestureHandler modification from panGestureHandlerProps to onConfigurePanGesture.
e.g.
<Carousel
onConfigurePanGesture={(gestureChain) => {
gestureChain.activeOffsetX([-10, 10]);
}}
/>
#528 139d5e5
Thanks @dohooo! - Exported TAnimationStyle types.
#710 d98bb99
Thanks @nmassey! - fix: remove shared value access warning from react-native-reanimated
#510 b3cc591
Thanks @dohooo! - Support to specific direction to auto play.
#703 564d2f5
Thanks @dohooo! - Update homepage in package.json
#528 b654f43
Thanks @dohooo! - Replaced 'onScrollBegin' with 'onScrollStart' to better match gesture callback.
618d90d
Thanks @dohooo! - Loss of precision during arithmetic conversion
#576 a99f069
Thanks @nmassey! - fix: rework code to avoid possible flicker when starting pan (panOffset race condition)
#724 33022e6
Thanks @dohooo! - fix: next item function overscolling with overscrollEnabled is false
#689 f935f7a
Thanks @dohooo! - Delete unnecessary peer denpendences
#510 b3cc591
Thanks @dohooo! - Modify the preority of windowSize settings. If you define the windowSize prop, Carousel will ignore the itemsCount. (windowSize > itemsCount)
#503 03dba70
Thanks @dohooo! - remove the postinstall script.
#560 c181174
Thanks @dohooo! - Add a new props minScrollDistancePerSwipe
to set the minimum scroll instance to make carousel scroll.
#731 6e8cdb4
Thanks @dohooo! - improve "slow pan" behavior: if it seems that the user intent is to stay on the current page (because they didn't pan very far; maybe they started panning one direction then reversed direction, etc.), don't actually change page upon gesture completion
#492 c015873
Thanks @dohooo! - Fixed an issue where the enable props couldn't set to false.
d5de105
Thanks @dohooo! - Added missing dependencies for web to work
85f24e7
Thanks @dohooo! - Type error property push does not exist on type
618d90d
Thanks @dohooo! - Loss of precision during arithmetic conversion
848f458
Thanks @dohooo! - This PR updates the customAnimation function signature to include an index parameter, allowing users to apply custom animations based on the item’s index.3040863
Thanks @dohooo! - Add pointerEvents: ‘box-none’ to ItemLayout component to allow touches for children components outside item boundaries6e8cdb4
Thanks @dohooo! - improve "slow pan" behavior: if it seems that the user intent is to stay on the current page (because they didn't pan very far; maybe they started panning one direction then reversed direction, etc.), don't actually change page upon gesture completion#721 2a8111e
Thanks @dohooo! - fix: parallax layout with new arch enabled
#710 d98bb99
Thanks @nmassey! - fix: remove shared value access warning from react-native-reanimated
#687 55c55ff
Thanks @dohooo! - feat: Add containerStyle prop to control the container styles.
#689 f935f7a
Thanks @dohooo! - Delete unnecessary peer denpendences
00c948b
Thanks @nmassey! - fix Pagination.Basic and Pagination.Custom usage of TouchableWithoutFeedback.
This fixes press event handler not working correctly. (Thanks to @qwertychouskie for reporting!)#629 80ec737
Thanks @nickoelsner! - fix: typescript error where MeasuredDimension can be null
#652 2916a26
Thanks @bdtren! - Add <Pagination.Custom/> dot animation.
#577 17621ca
Thanks @nmassey! - fix: make gesture onStart/onUpdate/onEnd (et al) callbacks run as worklets again
#648 0abdb2d
Thanks @nmassey! - fix app crash when using "onProgressChange" prop as function
#576 a99f069
Thanks @nmassey! - fix: rework code to avoid possible flicker when starting pan (panOffset race condition)
86da6ac
Thanks @nmassey! - Fixed an issue where endWithSpring used outdated data from useSharedValue after onGestureEnd, causing incorrect carousel behavior on direction reversal.c181174
Thanks @dohooo! - Add a new props minScrollDistancePerSwipe
to set the minimum scroll instance to make carousel scroll.#528 139d5e5
Thanks @dohooo! - Exported TAnimationStyle types.
#528 b654f43
Thanks @dohooo! - Replaced 'onScrollBegin' with 'onScrollStart' to better match gesture callback.
#510 b3cc591
Thanks @dohooo! - Support to specific direction to auto play.
#510 b3cc591
Thanks @dohooo! - Modify the preority of windowSize settings. If you define the windowSize prop, Carousel will ignore the itemsCount. (windowSize > itemsCount)
096ac75
Thanks @dohooo! - re-calculate when window size changed in browser. (re-bump for alpha.3)6b849ec
Thanks @dohooo! - Removed the reset logic when user change the defaultIndex prop. (We couldn't update the handlerOffset value when user change the defaultIndex. Because the carousel component already be a non-controlled component. So the subsequent changes of defaultIndex will be ignored.)#492 978b59f
Thanks @dohooo! - feat: change the way of PanGestureHandler modification from panGestureHandlerProps to onConfigurePanGesture.
e.g.
<Carousel
onConfigurePanGesture={(gestureChain) => {
gestureChain.activeOffsetX([-10, 10]);
}}
/>
#492 c015873
Thanks @dohooo! - Fixed an issue where the enable props couldn't set to false.
56e20c8: feat: use new RNGH api
Updates react-native-gesture-handler
to >=2.9.0
and replaces usage of useAnimatedGestureHandler
with the new gesture handler API which supports the new gesture handler web implementation.
maxScrollDistancePerSwipe
props.overscrollEnabled
to support scrolling management.