Skip to content

Commit 9ae6b2f

Browse files
committed
rescript 8.2 + rrn 0.63
1 parent 5543d47 commit 9ae6b2f

File tree

7 files changed

+327
-567
lines changed

7 files changed

+327
-567
lines changed

package.json

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"access": "public"
77
},
88
"peerDependencies": {
9-
"react-native-linear-gradient": "~3.3.0"
9+
"@react-native-community/viewpager": "^4.0.0"
1010
},
1111
"repository": "https://github.com/reason-react-native/viewpager.git",
1212
"license": "MIT",
@@ -37,14 +37,13 @@
3737
"release": "npmpub"
3838
},
3939
"devDependencies": {
40-
"@react-native-community/viewpager": "~3.3.0",
41-
"bs-platform": "^5.2.0",
42-
"husky": "^1.3.0",
43-
"lint-staged": "^10.1.1",
40+
"bs-platform": "^8.2.0",
41+
"husky": "^4.0.0",
42+
"lint-staged": "^10.0.0",
4443
"npmpub": "^5.0.0",
45-
"prettier": "^1.18.0",
46-
"reason-react": "0.7.0",
47-
"reason-react-native": "0.60.1"
44+
"prettier": "^2.0.0",
45+
"reason-react": "^0.9.0",
46+
"reason-react-native": "^0.63.0"
4847
},
4948
"prettier": {
5049
"trailingComma": "all"

src/ReactNativeViewPager.bs.js

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,21 @@
11
'use strict';
22

33
var ViewPagerElement = require("./ViewPagerElement.bs.js");
4+
var Event$ReactNative = require("reason-react-native/src/apis/Event.bs.js");
45

6+
Event$ReactNative.SyntheticEvent({});
57

6-
/* ViewPagerElement Not a pure module */
8+
var PageScrollEvent = {};
9+
10+
Event$ReactNative.SyntheticEvent({});
11+
12+
var PageSelectedEvent = {};
13+
14+
Event$ReactNative.SyntheticEvent({});
15+
16+
var PageScrollStateChangedEvent = {};
17+
18+
exports.PageScrollEvent = PageScrollEvent;
19+
exports.PageSelectedEvent = PageSelectedEvent;
20+
exports.PageScrollStateChangedEvent = PageScrollStateChangedEvent;
21+
/* Not a pure module */

src/ReactNativeViewPager.re

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,49 @@
1+
open ReactNative;
12
include ViewPagerElement;
23

3-
type scrollEvent;
4-
type selectedEvent;
5-
type scrollStateChangedEvent;
4+
module PageScrollEvent = {
5+
type payload = {
6+
position: int,
7+
offset: float,
8+
};
9+
include Event.SyntheticEvent({
10+
type _payload = payload;
11+
});
12+
};
613

7-
[@bs.obj]
8-
external scrollEvent: (~position: float, ~offset: float, unit) => scrollEvent =
9-
"";
10-
[@bs.obj]
11-
external selectedEvent: (~position: float, unit) => selectedEvent = "";
12-
[@bs.obj]
13-
external scrollStateChangedEvent:
14-
(~pageScrollState: [@bs.string] [ | `idle | `dragging | `settling], unit) =>
15-
scrollStateChangedEvent =
16-
"";
14+
module PageSelectedEvent = {
15+
type payload = {position: float};
16+
include Event.SyntheticEvent({
17+
type _payload = payload;
18+
});
19+
};
20+
21+
module PageScrollStateChangedEvent = {
22+
// new bs new polyvar encoding
23+
//type payload = {pageScrollState: [ | `idle | `dragging | `settling]};
24+
type payload = {pageScrollState: string};
25+
include Event.SyntheticEvent({
26+
type _payload = payload;
27+
});
28+
};
1729

1830
[@bs.module "@react-native-community/viewpager"] [@react.component]
1931
external make:
2032
(
2133
~ref: ref=?,
2234
~initialPage: int=?,
2335
~scrollEnabled: bool=?,
24-
~onPageScroll: ReactNative.Event.syntheticEvent(scrollEvent) => unit=?,
25-
~onPageSelected: ReactNative.Event.syntheticEvent(selectedEvent) => unit=?,
26-
~onPageScrollStateChanged: ReactNative.Event.syntheticEvent(
27-
scrollStateChangedEvent,
28-
) =>
29-
unit
30-
=?,
36+
~onPageScroll: PageScrollEvent.t => unit=?,
37+
~onPageSelected: PageSelectedEvent.t => unit=?,
38+
~onPageScrollStateChanged: PageScrollStateChangedEvent.t => unit=?,
3139
~keyboardDismissMode: [@bs.string] [ | `none | [@bs.as "on-drag"] `onDrag]
3240
=?,
3341
~pageMargin: int=?,
3442
~onMoveShouldSetResponderCapture: ReactNative.Event.pressEvent => bool=?,
3543
~style: ReactNative.Style.t=?,
3644
~children: React.element=?,
37-
~orientation: [@bs.string] [ | `horizontal | `vertical]=?,
38-
~transitionStyle: [@bs.string] [ | `scroll | `curl]=?,
45+
~orientation: [ | `horizontal | `vertical]=?,
46+
~transitionStyle: [ | `scroll | `curl]=?,
3947
~showPageIndicator: bool=?
4048
) =>
4149
React.element =

src/ViewPagerElement.bs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
var ViewPagerMethods = require("./ViewPagerMethods.bs.js");
44

5-
ViewPagerMethods.Make({ });
5+
ViewPagerMethods.Make({});
66

77
/* Not a pure module */

src/ViewPagerElement.re

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
type element;
2-
type ref = React.Ref.t(Js.nullable(element));
2+
type ref = React.ref(Js.nullable(element));
33

44
include ViewPagerMethods.Make({
55
type t = element;

src/ViewPagerMethods.bs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
function Make(T) {
5-
return { };
5+
return {};
66
}
77

88
exports.Make = Make;

0 commit comments

Comments
 (0)