UNPKG

12.3 kBMarkdownView Raw
1## v3.7.4
2* Fix issue with `scrollEnabled` introduced in version `3.7.3` (thanks [@JakeRawr](https://github.com/JakeRawr))
3
4## v3.7.3
5* Fix faulty animated value and make sure to always check for `data` before checking for `data.length`
6* Fix `scrollEnabled` override when it was initially set to `false` (thanks [@JakeRawr](https://github.com/JakeRawr))
7
8## v3.7.2
9* Fix `ParallaxImage` not being rendered (thanks [@louiszawadzki](https://github.com/louiszawadzki))
10
11## v3.7.1
12* Fix a potential crash in release mode (thanks [@hanpanpan200](https://github.com/hanpanpan200))
13* Do not round scroll offset's number in order to prevent potential issues with scroll repositioning
14
15## v3.7.0
16### New features and enhancements
17* Add a new callback method: [`onBeforeSnapToItem()`](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PROPS_METHODS_AND_GETTERS.md#methods)
18* Add prop `lockScrollTimeoutDuration`
19* Add the ability to enable/disable callback's execution when snaping programmatically
20* Add the ability to change `scrollEnabled` to `true` from initially `false` (thanks [@tomauty](https://github.com/tomauty))
21### Bugfixes
22* Fix random errors when accessing wrapped component's reference
23* Fix errors triggered when calling `setState()` while the component has already been unmounted
24### Other
25* Support `keyExtractor` on `ScrollView` (thanks [@hadimhd](https://github.com/hadimhd))
26
27## v3.6.0
28* Add a `layout` prop to let users choose between 3 different carousel layouts (see [the documentation](https://github.com/archriss/react-native-snap-carousel#layouts-and-custom-interpolations))
29![react-native-snap-carousel default layout](https://i.imgur.com/e1WbZcu.gif)
30![react-native-snap-carousel stack layout](https://i.imgur.com/foMIGM2.gif)
31![react-native-snap-carousel tinder layout](https://i.imgur.com/R7OpEFs.gif)
32* Add the ability to define dynamic styles based on scroll position with props `scrollInterpolator` and `slideInterpolatedStyle`. This allows implementing custom animations and layouts (see [the dedicated documentation](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/CUSTOM_INTERPOLATIONS.md)).
33* Rename props `customAnimationType` and `customAnimationOptions` to `activeAnimationType` and `activeAnimationOptions`
34
35## v3.5.0
36* Add the ability to render either a `ScrollView` component or a `FlatList` one (default) ([see prop `useScrollView`](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PROPS_METHODS_AND_GETTERS.md#behavior))
37* Add support for versions of React Native < `0.43` (see [this note](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/KNOWN_ISSUES.md#react-native-version))
38* Add support for custom animations ([see props `customAnimationType` and `customAnimationOptions`](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PROPS_METHODS_AND_GETTERS.md#style-and-animation))
39* Add method [`triggerRenderingHack()`](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PROPS_METHODS_AND_GETTERS.md#available-methods) to work around [a random `FlatList` bug](https://github.com/facebook/react-native/issues/1831) that keeps content hidden until the carousel is scrolled
40* Hack around `ScrollView`/`FlatList` image rendering issues on Android
41* Fix issue with tappable dots when loop is enabled
42
43## v3.4.0
44* Fix `snapToItem` call that results in snapping to the wrong item when `loop` is enabled
45* Fix issue that, in some use cases, prevents every items but the initial ones to be rendered
46* On Android, prevent loop and callback issues because scroll offset's value doesn't return an integer
47* Add prop `inactiveSlideShift` (see #204)
48* Expose `FlatList`'s prop `inverted` (**use at your own risk since it will mess with the current handling of RTL layouts**)
49* Set `removeClippedSubviews` to `true` by default
50
51## v3.3.4
52* Fix issue with possible faulty index when `loopClonesPerSide` is greater than data length
53* Guard against `setNativeProps()` being `undefined`
54* On Android, make sure that the first item has the proper active style after init
55* On iOS, remove the feature "snap as soon as the previous/next item becomes active when `lockScrollWhileSnapping` is enabled" since it messes with direct calls to `snapToItem()`
56
57## v3.3.3
58* Prevent issue on iOS when `enableSnap` is set to `false` while `lockScrollWhileSnapping` is set to `true`
59
60## v3.3.2
61* Fix issue with `lockScrollWhileSnapping` when no callback was provided
62* `Pagination` component: add props `activeOpacity` and `dotContainerStyle`
63
64## v3.3.1
65* Fix issue when initializing the carousel with empty data
66* Make tappable `PaginationDot` snaps to the right item when loop is enabled
67
68## v3.3.0
69* Bring in the most wanted 'infinite loop' feature :tada: (see [the 'Loop' section](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PROPS_METHODS_AND_GETTERS.md#loop) for more info about the new props `loop` and `loopClonesPerSide`)
70* Improve Android behavior when momentum is disabled
71* Guard against potential errors when component is unmounted
72* Add prop `lockScrollWhileSnapping` to improve behavior when momentum is disabled
73
74## v3.2.3
75* Fix issue with callback not fired when doing a long swipe
76
77## v3.2.2
78* Fix RTL issues
79* Fix issue with active item when `enableMomentum` was set to `true`
80* Fix issue with overlapping items (thanks [@henninghall](https://github.com/henninghall))
81* `ParallaxImage` component: allow overriding default styles
82* `Pagination` component: adapt to RTL layouts
83
84## v3.2.1
85* Fix issue with active item when no callback has been specified (introduced in version `3.2.0`)
86
87## v3.2.0
88* Refactor callback handling. **Make sure to use the new prop `callbackOffsetMargin` if you experience missed callbacks.**
89* Make item's scale and opacity animations follow scroll value (thanks [@hammadj](https://github.com/hammadj))
90* `Pagination` component: make dots tappable with new props `tappableDots` and `carouselRef` (see the [example](https://github.com/archriss/react-native-snap-carousel/blob/master/example/src/index.js))
91* Fix issue when carousel has been unmounted but parent container requires to re-render
92* Fix state and scroll issues when the currently active item is being dynamically removed
93* Improve snap feeling when momentum is disabled (default)
94* Add prop `callbackOffsetMargin`
95* Remove props `animationFunc`, `animationOptions`, `scrollEndDragDebounceValue`, `snapOnAndroid`, and `useNativeOnScroll`
96
97## v3.1.0
98* `Pagination` component: add new props for advanced customization
99
100## v3.0.0
101### WARNING
102* **Do not use this version as some temporary code was pushed to `npm` by mistake. Make sure to use version `3.1.0` instead.**
103### Breaking changes
104* Plugin is now built on top of `FlatList`, which allows for huge performance optimizations. From now on, items must be rendered using props `data` and `renderItem`.
105### General
106* Add `ParallaxImage` component (see the specific documentation [here](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PARALLAX_IMAGE.md))
107* Add prop `activeSlideAlignment`
108* Fix issue with autoplay when setting `scrollEnabled` to `false`
109* Prevent going back to the first item when overscrolling the last one
110* Prevent callback from being called at the wrong time in some specific scenarios
111
112## v2.4.0
113* Add `Pagination` component (see the specific documentation [here](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/PAGINATION.md))
114* Allow `firstItem` to be changed dynamically
115* Allow `0` value for `carouselHorizontalPadding` and `carouselVerticalPadding` (thanks [@bonbonez](https://github.com/bonbonez))
116* Keep the easing of slide's opacity animation linear
117* Use native driver for slide's animation (can be overridden via `animationOptions`)
118
119## v2.3.1
120* Fix issue when snap is disabled
121
122## v2.3.0
123* Refactor callback handling to provide a more reliable solution when momentum is disabled
124* Fix issue with parallel animations (thanks [@jnbt](https://github.com/jnbt))
125* Prevent calls to `undefined` interpolators when working with dynamic slides (thanks [@cskaynar](https://github.com/cskaynar))
126* Improve vertical mode
127* Add prop `scrollEndDragDebounceValue`
128* Expose current scroll position with `this.currentScrollPosition`
129* Remove props `scrollEndDragThrottleValue` and `snapCallbackDebounceValue` (use `scrollEndDragDebounceValue` instead)
130
131## v2.2.2
132* Fix issue that prevented inactive styles of first and last items to be applied when using `snapToPrev` and `snapToNext` methods
133
134## v2.2.1
135* Do not mark `sliderWidth` and `sliderHeight` as required
136* Add warnings when properties specific to carousel's orientation haven't been set
137
138## v2.2.0
139* Implement vertical mode (prop `vertical`)
140* Make sure that current active item is properly updated when snapping
141* Prevent issues when 'sliderWidth' is smaller than viewport's width
142* Recalculate card positions on layout to handle rotation (thanks [@andrewpope](https://github.com/andrewpope)); make sure to read [this note](https://github.com/archriss/react-native-snap-carousel/blob/master/doc/TIPS_AND_TRICKS.md#handling-device-rotation)
143* Refresh card positions if slider and/or item's dimensions are updated (thanks [@hoangnm](https://github.com/hoangnm))
144* Add props `scrollEndDragThrottleValue` and `snapCallbackDebounceValue`
145* Expose `View`'s `onLayout` prop
146* Deprecate prop `onScrollViewScroll`
147
148## v2.1.4
149* Add prop `onScrollViewScroll`
150
151## v2.1.3
152* Default value for `showsHorizontalScrollIndicator` is now `false`
153* Expose `ScrollView`'s `onSscroll` prop (thanks [@radko93](https://github.com/radko93))
154
155## v2.1.2
156* Do not trigger `onSnapToItem` when snapping back to the same slide (thanks [@rgabs](https://github.com/rgabs))
157* Add prop `carouselHorizontalPadding` to override container's inner padding (thanks [@skeie](https://github.com/skeie))
158
159## v2.1.1
160* Ensure compatibility with RN 0.43 (previous version of plugin's dependency `react-addons-shallow-compare` was breaking with React 16)
161* Fix issue with padding on iOS that could cause the carousel to snap back when its last item was clicked
162
163## v2.1.0
164* Add RTL support
165* Keep current active item when adding slides dynamically
166* Prevent invalid `firstItem` number
167* Add prop `activeSlideOffset`
168
169## v2.0.3
170
171* Prevent error when carousel has only one child (thanks [@kevinvandijk](https://github.com/kevinvandijk))
172* Fix issue when appending dynamic slides (the first one was ignored)
173* Fix edge case that prevented the first slide from being focused when swiping back with momentum enabled
174* Bump example's RN version to 0.42.3
175
176## v2.0.2
177
178* Make sure that scroll indicator is hidden by default
179
180## v2.0.1
181
182* Fix un-handled exception with interpolators (thanks [@chitezh](https://github.com/chitezh))
183
184## v2.0.0
185
186* Items are now direct children of the `<Carousel />` component, which makes it easier to use (thanks [@Jonarod](https://github.com/Jonarod))
187* Props `items` and `renderItem` have been removed
188
189## v1.6.1
190
191* Due to some touch events being buggy, rework methods so the children will receive touch events on Android
192
193## v1.6.0
194
195* Add prop `enableMomentum`
196* Fix an infinite-loop on iOS with momentum enabled
197* Fix the snapping effect when releasing touch without interia on iOS with momentum enabled
198* Fix autoplay on Android, it should start and stop properly and stop being triggered while swiping
199* Use `View.propTypes.style` instead of `PropTypes.number` in styles validation (thanks [@pesakitan22](https://github.com/pesakitan22))
200
201## v1.5.0
202
203* Items length can now be changed on-the-fly (thanks [@superical](https://github.com/superical))
204* Now handling momentum (thanks [@FakeYou](https://github.com/FakeYou))
205
206## v1.4.0
207
208* Better update strategy with shallowCompare
209* Add `snapToNext()`, `snapToPrev()`, `currentIndex` methods and properties
210
211## v1.3.1
212
213* Properly center on first item when mounting component on Android (potentially iOS too)
214
215## v1.3.0
216
217* Pass the item data as the 2nd param of `onSnapToItem` callback
218
219## v1.2.1
220
221* Fix reference call when the component has been unmounted
222
223## v1.2.0
224
225* Add prop `onSnapToItem`
226
227## v1.1.0
228
229* Center slides properly
230* Handle one slide only
231* Add props `inactiveSlideScale`, `inactiveSlideOpacity`, `containerCustomStyle` and `contentContainerCustomStyle`
\No newline at end of file