An open API service providing repository metadata for many open source software ecosystems.

GitHub / rescript-react-native / rescript-react-native

ReScript bindings for React Native

JSON API: http://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rescript-react-native%2Frescript-react-native
PURL: pkg:github/rescript-react-native/rescript-react-native

Stars: 931
Forks: 149
Open issues: 12

License: mit
Language: ReScript
Size: 5.93 MB
Dependencies parsed at: Pending

Created at: over 8 years ago
Updated at: 12 days ago
Pushed at: 6 days ago
Last synced at: 5 days ago

Commit Stats

Commits: 1243
Authors: 103
Mean commits per author: 12.07
Development Distribution Score: 0.683
More commit stats: https://commits.ecosyste.ms/hosts/GitHub/repositories/rescript-react-native/rescript-react-native

Topics: hacktoberfest, react, react-native, rescript, rescript-react, rescript-react-native

Funding Links https://github.com/sponsors/MoOx

Releases
0.62.0

0.62.0

The release we all have been waiting for (thanks for you patience)!
Huge thanks to @sgny which handled most of the
changes directly related to react-native 0.62.

tl;dr: this release includes

  • breaking changes related to reason-react@0.8
  • breaking changes related to bs-platform@7 (say bye to most ## accessors in
    favor of .)
  • breaking changes related to react-native@0.62 (say bye to removed
    components)

So in order to upgrade to this release you need to upgrade all this dependencies
at the same time. Be sure to respect
peerDependencies
before reporting issue.

πŸš€ Upgrades & πŸ’₯ Breaking changes

  • Upgraded reason-react to 0.8.0 (#689) @jfrolich
    See https://reasonml.org/blog/reason-react-0-8-0 for more informations
  • Upgraded to bs-platform 7.3.0 (#631) @idkjs (#666) @Arnarkari93 (#674) (#693) (#690) (#694) @sgny (#695) @cknitt
    We have converted Js.t objects to records where possible (we had to skipped
    objects that rely on [@bs.meth]). This means you will have to change a lot
    of ## notation to just a dot (.) to access properties.
    See https://reasonml.org/blog/whats-new-in-7-pt1 for more informations
  • Removed some methods for FlatList, ScrollView, SectionList, VirtualizedList
    and VirtualizedSectionList (#680) @sgny
    These components are interrelated in the sense of being based on each other
    and inheriting props, however, applicable methods are not inherited quite so
    consistently. We removed unavailable methods from each component.
  • Removed accessibilityStates prop (#656) @sgny
  • Removed TextInput onTextInput and selectionState props (#658) @sgny
  • Animated: setting useNativeDriver prop is required (#655) @sgny
  • Handle deprecated or removed components and APIs (#668) @sgny
    • Removed components: ToolbarAndroid, ViewPagerAndroid, WebView
    • Removed APIs: AlertIOS, CameraRoll, GeoLocation, ImageEditor,
      NetInfo, TimePickerAndroid
    • Some others components that have been deprecated in RN regarding β€œLean Core”
      initiative have been documented as such and will be removed in future
      releases.
  • Deprecated Style.list & Style.listOption for future bs-platform 8.0.0
    compatibility (#700) @MoOx

β›‘ Fixes

  • Fixed DatePickerIOS minuteInterval type (int, not string) (#648) @idkjs
  • Fixed Animated.ValueXY.getTranslateTransform(value) binding (#675) @benadamstyles
  • Fixed Global.hermesInternal (#703) @fa7ad
  • Fixed TouchableNativeFeedback.Background.canUseNativeForeground type (#704) @phamhoaivu911

πŸš€ Additions

  • Added support for callback refs (#684) @cknitt
  • Added unstable_enableLogBox (#692) @MoOx
  • Added Appearance module (#654) (#662) (#677) @sgny
  • Added Modal statusBarTranslucent prop (#660) @sgny
  • Added missing accessibility props to Touchable* components (#659) @sgny
  • Added accessibilityState prop and constructor for related object (#657) @sgny
  • Added DevSettings module (#661) (#664) @sgny
  • Added fadingEdgeLength prop to FlatList, ScrollView, SectionList etc (#663) @sgny
  • Added accessibilityValue prop (#665)
  • Added mouse event for react-native-web (#646) @Naturalclar
  • Added onMouseEnter, onMouseLeave props for View, Text, TextInput and more
    web props, press-event, href and target (#650) @jfrolich
  • Updated Linking documentation (#673) @sgny
  • Updated Event documentation (#672) @sgny
over 5 years ago
Download
0.61.1

0.61.1

πŸš€ Additions

  • Add NativeEventEmitter
    #642 by
    @cknitt
  • New abstract type for Android Date/TimePicker action
    #640 by
    @cknitt
  • Add accessibilityRole web values and arialLevel web props
    (#639
    by @Naturalclar

β›‘ Fixes

  • Fix autoCompleteType prop for TextInput component (previously incorrectly
    named autoComplete)
    (#639
    by @Naturalclar
  • Resolves all BuckleScript inferred name warnings
    (#628
    by @idkjs
almost 6 years ago
Download
0.61.0

0.61.0

πŸ’₯ Breaking change

  • Change type for DrawerLayoutAndroid drawerPosition prop
    #626 by
    @sgny.
    You need to replace DrawerLayoutAndroid.left & DrawerLayoutAndroid.right
    by `left & `right.

πŸš€ New bindings

  • Add SoundManager + deprecate UIManager.playTouchSound
    #616 by
    @sgny
  • Add useWindowDimensions hook
    #615 by
    @sgny
  • Add touchSoundDisabled prop to Button and all Touchable components
    #627 by
    @stuartkeith
about 6 years ago
Download
0.60.1

0.60.1

Probably the latest release for React Native 0.60. We will focus on 0.61.

πŸ’₯ Breaking changes (minor)

Sorry, a mix of bugfixes & changes! This should be easy to handle for you.

  • Add constructor for section type in VirtualizedSectionList
    #614 by
    @sgny
  • Add SectionList/VirtualizedSectionList section data as parameterized type
    #618 by
    @jfrolich

β›‘ Fixes

  • Fix AppState (now return unit)
    #568 by
    @cknitt
  • Fix Animated.event type so it can be used in Animated.ScrollView
    onScroll props (& similar)
    #584 by
    @MoOx
  • Fix missing [@bs.meth] in methods of Event, BackHandler & NetInfo
    #621 by
    @cknitt
  • Fix ScrollView scrollToItem, scrollToIndex and scrollToOffset
    #569 by
    @benadamstyles
  • Fix Webview contentInset prop
    #607 by
    @cem2ran
  • Fix WebView event types & add missing fields
    #608 by
    @cem2ran

πŸš€ New bindings

  • Add AccessibilityInfo
    #587 by
    @sgny
  • Add Alert.prompt
    #617 by
    by @fhammerschmidt
  • Add Animated.SectionList and Animated.FlatList
    #600 by
    @sgny +
    #623 by
    @jfrolich
  • Add lots of AppRegistry methods
    #567 by
    @sgny +
    #560 by
    @cknitt
  • Add Global.__DEV__
    #609 by
    @sgny
  • Add Global.hermesInternal
    #613 by
    @MoOx
  • Add YellowBox
    #562 by
    @cknitt

πŸ“– Documentation

We improved some part of the missing docs, thanks to contributions of @sgny,
@idkjs, @fhammerschmidt & @MoOx and maybe others we forgot to mention (but
git log doesn’t)

about 6 years ago
Download
reason-react-native@0.60, bs-react-native@0.11.1, bs-react-native-jsx3-compat@0.11.1, react-native-template-reason@0.2.0

v0.60.0

reason-react-native@0.60

✨ Initial release for this new React Native bindings!

See
https://reasonml-community.github.io/reason-react-native/en/blog/2019-06-17-hello-reason-react-native/
for more information.

bs-react-native@0.11.1

  • Fix for Deg transformer that should be encoded to float instead of
    percentage #547 by @bjornj12

bs-react-native-jsx3-compat@0.11.1

✨ Initial release.

See
https://reasonml-community.github.io/reason-react-native/en/docs/migration/jsx3/
for more information.

react-native-template-reason@0.2.0

New template to works with reason-react-native

over 6 years ago
Download
v0.11.0

v0.11.0

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.

Changelog

We have highlighted most significant changes below. You can see the full list of commits here.

Notable changes

  • 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 & deprecate
    Style.Transform methods
  • View props: support accessibilityRole, accessibilityStates,
    accessibilityHint, accessibilityIgnoresInvertColors on lots of components

More in details

  • 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, add snapToInterval,
    onScrollBeginDrag, onScrollEndDrag, onMomentumScrollBegin,
    onMomentumScrollEnd, contentInsetAdjustmentBehavior
  • Style: remove justifyContent(Stretch) (unsupported by Yoga), add
    justifyContent(SpaceEvenly), flexBasis(Auto), new transform function
  • Switch: remove onTintColor, thumbTintColor & tintColor, add trackColor
    (via trackColorTrue & trackColorFalse props), thumbColor and
    iosBackgroundColor
  • Text: add accessibilityHint, accessibilityLabel
  • TextInput: fixes onChange, onEndEditing, autoComplete
  • Touchables: add testID, fix on(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
over 6 years ago
Download
v0.10.0

v0.10.0

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.

Changelog

We have highlighted most significant changes below. You can see the full list of commits here.

Breaking changes

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 an Animation module,
  • There is no Timing, Spring and Decay module exported at a top-level. Use Animated.timing, Animated.spring and Animated.decay instead,
  • You no longer need to write Animated.CompositeAnimation.start. All methods or this module are now available under Animated module. For example, you can start an animation by writing Animated.start. This change aligns the API with React Native.

See Animated guide for details on how to use it.

What happens with Rebolt?

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.

about 7 years ago
Download
v0.9.0

v0.9.0

Fixes πŸ”§

  • Fix text input callbacks (@mciparelli)
  • Fix whileEditing to use kebab case (@shritesh)
  • Update bs-platform and ReasonReact (@eldh)
  • Fix WebView event types (@Rikkiabb)

Docs πŸ“ƒ

  • Friendly disclaimer about missing components (@wokalski)
over 7 years ago
Download
v0.8.0

v0.8.0

Fixes πŸ”§

  • Fix incorrect skew bindings (@medson10)
  • Update bs-platform (@Gregoirevda)

New features πŸš€

  • Add more WebView bindings (@kristinns)
  • Add sourceHtml and sourceUri in WebView (@kristinns)

Docs πŸ“ƒ

  • Fix README with new Styles API (@thavishp)
over 7 years ago
Download
0.7.0

0.7.0

New features πŸš€

  • Geolocation module (@mobily)

Bug fixes πŸ›

  • 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)

Docs πŸ“ƒ

  • Updated docs (@grsabreu) (@Gregoirevda)

Breaking changes πŸ’₯

  • Colors are now strings or interpolated which allows you to animate colors (@bjornj12)
over 7 years ago
Download