Good news, maintenance of this bindings have been taken by a new crew. While we are working hard on new, zero-cost & more straight forward bindings that will works nicely with reason-react 0.7.0 (stay tuned for more soon), we are publishing is a new release that will brings you some latest things before we start to breaks things a little bit (but don’t worry we have a migration plan, just because, like everybody, we have to migrate various codebases).
This release mostly add some missing stuffs, and fixes some.
We have highlighted most significant changes below. You can see the full list of commits here.
- Fully compatible with bs-platform 4.0.18 & reason-react 0.6.0
- A lots of things has been documented
- Deprecate & replace Style.(flatten|concat) with (array|arrayOption|list|listOption)
- Deprecate Style.combine as it's unsafe
- New
Style.transform
function so you can choose transform order & deprecateStyle.Transform
methods - View props: support
accessibilityRole
,accessibilityStates
,accessibilityHint
,accessibilityIgnoresInvertColors
on lots of components
- ActionSheetIOS: fix options conversion
- Animated: fix annotations
- FlatList: add
listEmptyComponent
,refreshControl
,stickyHeaderIndices
,contentInsetAdjustmentBehavior
,scrollEventThrottle
,listFooterComponentStyle
&listHeaderComponentStyle
- Image:
resolveAssetSource
- InteractionManager
- Platform: add
select
- ScrollView: remove
onScrollAnimationEnd
, addsnapToInterval
,onScrollBeginDrag
,onScrollEndDrag
,onMomentumScrollBegin
,onMomentumScrollEnd
,contentInsetAdjustmentBehavior
- Style: remove
justifyContent(Stretch)
(unsupported by Yoga), addjustifyContent(SpaceEvenly)
,flexBasis(Auto)
, newtransform
function - Switch: remove
onTintColor
,thumbTintColor
&tintColor
, addtrackColor
(viatrackColorTrue
&trackColorFalse
props),thumbColor
andiosBackgroundColor
- Text: add
accessibilityHint
,accessibilityLabel
- TextInput: fixes
onChange
,onEndEditing
,autoComplete
- Touchables: add
testID
, fixon(Long)Press(In|Out)
events - TabBarIOS: fix systemIcon
bookmarks
- View:
accessibilityRole
,accessibilityStates
,accessibilityHint
,accessibilityIgnoresInvertColors
- react-native-template-reason: Enhance the react native template so you don't have a weird black screen. Looks more like standard RN hello world
This is the biggest release we have done in a while. It is a result of hard work
done by
bs-react-native
and rebolt
teams.
We have worked really hard on bringing you lots of missing components (e.g.
TouchableNativeFeedback
, ProgressBarAndroid
and more), improving existing
APIs (e.g. type-safe Animated
API) and adding documentation to make your
getting started experience even smoother. We hope you will like the changes and
the direction the project is moving! There are many companies looking into
adopting Reason within their existing React & React Native projects right now.
Our focus is to address the use cases and needs of early users to increase the
overall adoption across the ecosystem.
I also would like to thank all contributors that made this project possible. Due
to the complicated nature of merging rebolt
and bs-react-native
together,
some of the contribution attributions were lost in the process. Make sure to
check the
full list our contributors
for details.
Meanwhile, see the changelog below for a full list of new features and breaking changes.
We have highlighted most significant changes below. You can see the full list of commits here.
- Added missing bindings to the following:
ToastAndroid
,TimePickerAndroid
,PermissionsAndroid
,PickerIOS
,ViewPagerAndroid
,TouchableNativeFeedback
,SnapshotViewIOS
,ProgressBarAndroid
,MaskedView
,ProgressViewIOS
, - Added a brand new documentation, available
here. We are working
hard on adding more any more examples. So far,
Animated
module is the one that is most documented, - Created Discord server dedicated to
bs-react-native
and using Reason for writing mobile apps in general. Feel free to join if you would like to take an active part in this project's development or have any questions regarding using it in production, - Improved typing in many modules to be more accurate with what React Native
expects, including
focus
andblur
method onTextInput
,FlatList
'sscrollToOffset
,WebView
'sonMessage
and more, - Created a brand new React Native generator for easier experience getting started,
- Added Code of Conduct
All of the breaking changes happened inside
Animated
module. If you are not using it, you can safely upgrade and expect little to no changes required.
Easing
is now exported as a top-level module,CompositeAnimation
is now anAnimation
module,- There is no
Timing
,Spring
andDecay
module exported at a top-level. UseAnimated.timing
,Animated.spring
andAnimated.decay
instead, - You no longer need to write
Animated.CompositeAnimation.start
. All methods or this module are now available underAnimated
module. For example, you can start an animation by writingAnimated.start
. This change aligns the API with React Native.
See
Animated
guide
for details on how to use it.
Nothing. Rebolt development will continue under this project umbrella, together,
with the community. We are discussing the v2
version that plans to deliver
first-class Reason APIs instead of bindings. There are many exciting
opportunities and challenges ahead. If you'd like to get involved, let us know
on Discord (linked above). As soon as any plans or decisions are made, we will
be publishing them here and on Twitter.
Preview of upcoming version with goodies from Rebolt. We are working on migrating the documentation and last pieces of the information. Meanwhile, feel free to give this one a go.
Article releted:
- Announcing Rebolt (@grabbou)
- Merging Rebolt v1 back to bs-react-native (@knowbody)
- Fix text input callbacks (@mciparelli)
- Fix
whileEditing
to use kebab case (@shritesh) - Update
bs-platform
andReasonReact
(@eldh) - Fix
WebView
event types (@Rikkiabb)
- Friendly disclaimer about missing components (@wokalski)
- Fix text input callbacks (@mciparelli)
- Fix
whileEditing
to use kebab case (@shritesh) - Update
bs-platform
andReasonReact
(@eldh) - Fix
WebView
event types (@Rikkiabb)
- Add more
WebView
bindings (@kristinns) - Add
sourceHtml
andsourceUri
inWebView
(@kristinns) - Fix README with new Styles API (@thavishp)
-Fix incorrect skew bindings (@medson10) -Update bs-platform
(@Gregoirevda)
- Geolocation module (@mobily)
- Changed
marginTop
frominteger
tofloat
(@arthur31416) - Fix typo in CONTRIBUTING.md (@maarekj)
- Updated docs (@grsabreu) (@Gregoirevda)
- Supported orientation now takes list of orientations (@leomayleomay)
Animated.Easing.in
fix (@mcanobbio)- Missing props on
Flatlist
(@mcanobbio) - Missing props on
TouchableOpacity
(@laynor) - Missing props on
SectionList
(@bjornj12) (@johannth)
- Colors are now strings or interpolated which allows you to animate colors (@bjornj12)
- Upgrade examples following to the SDK changes (@bohdan-hulha)
- Changed margin top from integer to float (@arthur31416)
- Fix typo in CONTRIBUTING.md (@maarekj)
- Add
DatePickerAndroid
API (@tonyhb) ActionSheetIOS
— bindings (@mobily)Clipboard
— bindings (@mobily)CameraRoll
— bindings (@mobily)- Add
NetInfo
bindings (@mobily) - Add
Animated.Easing
bindings (@gilbert) - Add CI for RNTester (@mobily)
- Update
bs-platform
to2.2.0
(@flash-gordon)
- Fix section type within
renderSectionHeader
andrenderSectionFooter
(@tonyhb) (#103) - Support non-standard Platform.OS identifiers & iOS idioms (@ryanartecona) (#123)
- creating accessory type that includes section to match react-native s… (@bjornj12) (#130)
- Fix interface to
PanResponder.t
(@johannth) - TextInput (returnKeyType) (@mobily)
- Fix
mimimumZoomScale
typo (=> minimumZoomScale) (@MoOx) - Run RNTester 🎉 (@mobily)
- Make private types under TypesRN and Props public (@jamieparkinson)
- Fix
onEndReached
props onFlatList
andSectionList
(@maarekj) - Add analytic spring parameters to AnimatedRe's Spring (@jamieparkinson)
- Docs updated to Reason 3 (@Mikk36)
- Add
refmt: 3
to bsconfig to silent warning (@MarcelCutts) - Troubleshooting section in docs (@rrdelaney)
- Add
onLongPress
totouchableWithoutFeedback
(@kristinns) - Make RNEvent API public (@gunnigylfa)
- Document gotcha for
react-native-scripts
(@RobertPaul01) - Add accessibility labels to touchables (@gunnigylfa)
- Update guide
reason-react
is now a peerDependency (@arnarthor)- Namespaces (open ReactNative becomes open BsReactNative)(@arnarthor)
- New styles api (@wokalski) (@MoOx) The style API has been changed from using
polymorphic variants so things like
flexDirection(
row)are now
flexDirection(Row). It also changes stringly typed values like
padding,
margin,
height,
width, etc to have typesafe definitions like
margin(Pt(10.))or
margin(Pct(10.))`. - Modify
fontSize
to be able to animate it (@gunnigylfa) This changesfontSize(14.)
tofontSize(Float(14.))
- Bugfixes and missing props from components
- Fixing types of
maximumValue
andminimumValue
from Slider component (#79) - @Denommus - Makes
Animated.Scrollview.onScrollUpdate
useNativeScrollEvent
(#78) - @alliannas - Tab bar item bug (#84) - @wokalski
- Add missing props to
FlatList
(#83) - @arnarthor
- multiple bug fixes from (@gunnigylfa), (@kristinns) , (@wokalski)
- updates all components to be compatible with Reason React 0.2.4 thanks to (@ulrikstrid)
- several small bug fixes from @szymonzmyslony, @kristinns and (@mikkel)
- bumped
bs-platform
to1.9.1
and enabledbs-super-errors
- Initial NPM release