Skip to content

Commit dcbb434

Browse files
chrisbobbegnprice
authored andcommitted
tsflower: Upgrade to 0.0.13
This gets us gnprice/tsflower#1, which added NativeEventEmitter in tsflower/subst/react-native. So we get to remove two patches that were filling that in.
1 parent 51afd1a commit dcbb434

16 files changed

+177
-233
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@
126126
"redux-mock-store": "^1.5.1",
127127
"rollup": "^2.26.5",
128128
"sqlite3": "^5.0.2",
129-
"tsflower": "^0.0.12",
129+
"tsflower": "^0.0.13",
130130
"typescript": "~4.3.5",
131131
"yarn-deduplicate": "^3.0.0"
132132
},

types/@react-native-camera-roll/camera-roll/lib/typescript/CameraRollIOSPermission.js.flow

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/* @flow
22
* @generated by TsFlower
33
*/
4+
import type { NativeEventEmitter as $tsflower_subst$RN$NativeEventEmitter } from 'tsflower/subst/react-native';
45
import { NativeEventEmitter } from 'react-native';
56
export type AccessLevel = 'addOnly' | 'readWrite';
67
export type CameraRollAuthorizationStatus =
@@ -10,7 +11,7 @@ export type CameraRollAuthorizationStatus =
1011
| 'unavailable'
1112
| 'blocked'
1213
| 'not-determined';
13-
declare export var cameraRollEventEmitter: NativeEventEmitter<{| +[string]: mixed |}>;
14+
declare export var cameraRollEventEmitter: $tsflower_subst$RN$NativeEventEmitter;
1415
declare export var iosReadGalleryPermission: (
1516
accessLevel: AccessLevel,
1617
) => Promise<CameraRollAuthorizationStatus>;

types/expo-modules-core/build/EventEmitter.js.flow

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/* @flow
22
* @generated by TsFlower
33
*/
4+
import type { NativeEventEmitter as $tsflower_subst$RN$NativeEventEmitter } from 'tsflower/subst/react-native';
45
import { NativeEventEmitter } from 'react-native';
56

67
type NativeModule = {
@@ -16,11 +17,7 @@ export type Subscription = { remove: () => void, ... };
1617
declare export class EventEmitter {
1718
_listenerCount: number;
1819
_nativeModule: NativeModule;
19-
20-
// TODO[tsflower]: From @types/react-native; add to subst/react-native.
21-
// PR: https://github.com/gnprice/tsflower/pull/1
22-
_eventEmitter: NativeEventEmitter<{| +[string]: mixed |}>;
23-
20+
_eventEmitter: $tsflower_subst$RN$NativeEventEmitter;
2421
constructor(nativeModule: NativeModule): any;
2522
addListener<T>(eventName: string, listener: (event: T) => void): Subscription;
2623
removeAllListeners(eventName: string): void;

types/patches/0034-tsflower-expo-modules-core-Fill-in-RN-s-NativeEventE.patch

Lines changed: 0 additions & 29 deletions
This file was deleted.
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2+
From: Chris Bobbe <[email protected]>
3+
Date: Mon, 26 Sep 2022 16:57:08 +0800
4+
Subject: [tsflower] expo-web-browser: Translate TS enum WebBrowserResultType
5+
6+
Read more about our approach in the recent patch that translated a
7+
TS enum in expo-application.
8+
---
9+
.../expo-web-browser/build/WebBrowser.js.flow | 3 +-
10+
.../build/WebBrowser.types.js.flow | 35 +++++++++----------
11+
2 files changed, 19 insertions(+), 19 deletions(-)
12+
13+
diff --git types/expo-web-browser/build/WebBrowser.js.flow types/expo-web-browser/build/WebBrowser.js.flow
14+
index eb36ffcd8..4e4aaf9d4 100644
15+
--- types/expo-web-browser/build/WebBrowser.js.flow
16+
+++ types/expo-web-browser/build/WebBrowser.js.flow
17+
@@ -12,13 +12,14 @@ import {
18+
type WebBrowserRedirectResult,
19+
type WebBrowserResult,
20+
WebBrowserResultType,
21+
+ type WebBrowserResultTypeT,
22+
type WebBrowserWarmUpResult,
23+
type WebBrowserWindowFeatures,
24+
WebBrowserPresentationStyle,
25+
type AuthSessionOpenOptions,
26+
} from "./WebBrowser.types";
27+
28+
-export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, AuthSessionOpenOptions };
29+
+export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserResultTypeT, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, AuthSessionOpenOptions };
30+
declare export function getCustomTabsSupportingBrowsersAsync(): Promise<WebBrowserCustomTabsResults>;
31+
declare export function warmUpAsync(browserPackage?: string): Promise<WebBrowserWarmUpResult>;
32+
declare export function mayInitWithUrlAsync(url: string, browserPackage?: string): Promise<WebBrowserMayInitWithUrlResult>;
33+
diff --git types/expo-web-browser/build/WebBrowser.types.js.flow types/expo-web-browser/build/WebBrowser.types.js.flow
34+
index 0b2c54c70..26584386d 100644
35+
--- types/expo-web-browser/build/WebBrowser.types.js.flow
36+
+++ types/expo-web-browser/build/WebBrowser.types.js.flow
37+
@@ -33,23 +33,22 @@ export type WebBrowserCustomTabsResults = {
38+
...
39+
};
40+
41+
-/* tsflower-unimplemented: EnumDeclaration */
42+
-/*
43+
-export declare enum WebBrowserResultType {
44+
- /**
45+
- * @platform ios
46+
- * /
47+
- CANCEL = "cancel",
48+
- /**
49+
- * @platform ios
50+
- * /
51+
- DISMISS = "dismiss",
52+
- /**
53+
- * @platform android
54+
- * /
55+
- OPENED = "opened",
56+
- LOCKED = "locked"
57+
-} */
58+
+declare export var WebBrowserResultType: {|
59+
+ /**
60+
+ * @platform ios
61+
+ */
62+
+ +CANCEL: 'cancel',
63+
+ /**
64+
+ * @platform ios
65+
+ */
66+
+ +DISMISS: 'dismiss',
67+
+ /**
68+
+ * @platform android
69+
+ */
70+
+ +OPENED: 'opened',
71+
+ +LOCKED: 'locked',
72+
+|}
73+
+export type WebBrowserResultTypeT = $Values<typeof WebBrowserResultType>;
74+
75+
/* tsflower-unimplemented: EnumDeclaration */
76+
/*
77+
@@ -96,7 +95,7 @@ export declare enum WebBrowserPresentationStyle {
78+
AUTOMATIC = "automatic"
79+
} */
80+
81+
-export type WebBrowserResult = { type: WebBrowserResultType, ... };
82+
+export type WebBrowserResult = { type: WebBrowserResultTypeT, ... };
83+
84+
export type WebBrowserRedirectResult = {
85+
type: "success",
86+
--
87+
2.32.0
88+
Lines changed: 80 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,113 @@
11
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
22
From: Chris Bobbe <[email protected]>
3-
Date: Mon, 26 Sep 2022 16:57:08 +0800
4-
Subject: [tsflower] expo-web-browser: Translate TS enum WebBrowserResultType
3+
Date: Mon, 25 Jul 2022 13:35:00 -0700
4+
Subject: [tsflower] expo-web-browser: Translate TS enum
5+
WebBrowserPresentationStyle
56

67
Read more about our approach in the recent patch that translated a
78
TS enum in expo-application.
89
---
9-
.../expo-web-browser/build/WebBrowser.js.flow | 3 +-
10-
.../build/WebBrowser.types.js.flow | 35 +++++++++----------
11-
2 files changed, 19 insertions(+), 19 deletions(-)
10+
.../expo-web-browser/build/WebBrowser.js.flow | 2 +-
11+
.../build/WebBrowser.types.js.flow | 43 +++++++++----------
12+
2 files changed, 22 insertions(+), 23 deletions(-)
1213

1314
diff --git types/expo-web-browser/build/WebBrowser.js.flow types/expo-web-browser/build/WebBrowser.js.flow
14-
index eb36ffcd8..4e4aaf9d4 100644
15+
index 4e4aaf9d4..97be5b587 100644
1516
--- types/expo-web-browser/build/WebBrowser.js.flow
1617
+++ types/expo-web-browser/build/WebBrowser.js.flow
17-
@@ -12,13 +12,14 @@ import {
18-
type WebBrowserRedirectResult,
19-
type WebBrowserResult,
20-
WebBrowserResultType,
21-
+ type WebBrowserResultTypeT,
22-
type WebBrowserWarmUpResult,
23-
type WebBrowserWindowFeatures,
24-
WebBrowserPresentationStyle,
18+
@@ -19,7 +19,7 @@ import {
2519
type AuthSessionOpenOptions,
2620
} from "./WebBrowser.types";
2721

28-
-export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, AuthSessionOpenOptions };
29-
+export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserResultTypeT, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, AuthSessionOpenOptions };
22+
-export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserResultTypeT, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, AuthSessionOpenOptions };
23+
+export { WebBrowserAuthSessionResult, WebBrowserCompleteAuthSessionOptions, WebBrowserCompleteAuthSessionResult, WebBrowserCoolDownResult, WebBrowserCustomTabsResults, WebBrowserMayInitWithUrlResult, WebBrowserOpenOptions, WebBrowserRedirectResult, WebBrowserResult, WebBrowserResultType, WebBrowserResultTypeT, WebBrowserWarmUpResult, WebBrowserWindowFeatures, WebBrowserPresentationStyle, WebBrowserPresentationStyleT, AuthSessionOpenOptions };
3024
declare export function getCustomTabsSupportingBrowsersAsync(): Promise<WebBrowserCustomTabsResults>;
3125
declare export function warmUpAsync(browserPackage?: string): Promise<WebBrowserWarmUpResult>;
3226
declare export function mayInitWithUrlAsync(url: string, browserPackage?: string): Promise<WebBrowserMayInitWithUrlResult>;
3327
diff --git types/expo-web-browser/build/WebBrowser.types.js.flow types/expo-web-browser/build/WebBrowser.types.js.flow
34-
index 0b2c54c70..26584386d 100644
28+
index 26584386d..88b3d2364 100644
3529
--- types/expo-web-browser/build/WebBrowser.types.js.flow
3630
+++ types/expo-web-browser/build/WebBrowser.types.js.flow
37-
@@ -33,23 +33,22 @@ export type WebBrowserCustomTabsResults = {
31+
@@ -16,7 +16,7 @@ export type WebBrowserOpenOptions = {
32+
controlsColor?: string,
33+
dismissButtonStyle?: "done" | "close" | "cancel",
34+
readerMode?: boolean,
35+
- presentationStyle?: WebBrowserPresentationStyle,
36+
+ presentationStyle?: WebBrowserPresentationStyleT,
37+
windowName?: string,
38+
windowFeatures?: string | WebBrowserWindowFeatures,
3839
...
39-
};
40+
@@ -50,50 +50,49 @@ declare export var WebBrowserResultType: {|
41+
|}
42+
export type WebBrowserResultTypeT = $Values<typeof WebBrowserResultType>;
4043

4144
-/* tsflower-unimplemented: EnumDeclaration */
4245
-/*
43-
-export declare enum WebBrowserResultType {
44-
- /**
45-
- * @platform ios
46+
/**
47+
* A browser presentation style. Its values are directly mapped to the [`UIModalPresentationStyle`](https://developer.apple.com/documentation/uikit/uiviewcontroller/1621355-modalpresentationstyle).
48+
*
49+
* @platform ios
50+
- * /
51+
-export declare enum WebBrowserPresentationStyle {
52+
+ */
53+
+declare export var WebBrowserPresentationStyle: {|
54+
/**
55+
* A presentation style in which the presented browser covers the screen.
4656
- * /
47-
- CANCEL = "cancel",
48-
- /**
49-
- * @platform ios
57+
- FULL_SCREEN = "fullScreen",
58+
+ */
59+
+ +FULL_SCREEN: "fullScreen",
60+
/**
61+
* A presentation style that partially covers the underlying content.
5062
- * /
51-
- DISMISS = "dismiss",
52-
- /**
53-
- * @platform android
63+
- PAGE_SHEET = "pageSheet",
64+
+ */
65+
+ +PAGE_SHEET: "pageSheet",
66+
/**
67+
* A presentation style that displays the browser centered in the screen.
5468
- * /
55-
- OPENED = "opened",
56-
- LOCKED = "locked"
69+
- FORM_SHEET = "formSheet",
70+
+ */
71+
+ +FORM_SHEET: "formSheet",
72+
/**
73+
* A presentation style where the browser is displayed over the app's content.
74+
- * /
75+
- CURRENT_CONTEXT = "currentContext",
76+
+ */
77+
+ +CURRENT_CONTEXT: "currentContext",
78+
/**
79+
* A presentation style in which the browser view covers the screen.
80+
- * /
81+
- OVER_FULL_SCREEN = "overFullScreen",
82+
+ */
83+
+ +OVER_FULL_SCREEN: "overFullScreen",
84+
/**
85+
* A presentation style where the browser is displayed over the app's content.
86+
- * /
87+
- OVER_CURRENT_CONTEXT = "overCurrentContext",
88+
+ */
89+
+ +OVER_CURRENT_CONTEXT: "overCurrentContext",
90+
/**
91+
* A presentation style where the browser is displayed in a popover view.
92+
- * /
93+
- POPOVER = "popover",
94+
+ */
95+
+ +POPOVER: "popover",
96+
/**
97+
* The default presentation style chosen by the system.
98+
* On older iOS versions, falls back to `WebBrowserPresentationStyle.FullScreen`.
99+
*
100+
* @platform ios 13+
101+
- * /
102+
- AUTOMATIC = "automatic"
57103
-} */
58-
+declare export var WebBrowserResultType: {|
59-
+ /**
60-
+ * @platform ios
61-
+ */
62-
+ +CANCEL: 'cancel',
63-
+ /**
64-
+ * @platform ios
65-
+ */
66-
+ +DISMISS: 'dismiss',
67-
+ /**
68-
+ * @platform android
69-
+ */
70-
+ +OPENED: 'opened',
71-
+ +LOCKED: 'locked',
104+
+ */
105+
+ +AUTOMATIC: "automatic"
72106
+|}
73-
+export type WebBrowserResultTypeT = $Values<typeof WebBrowserResultType>;
74-
75-
/* tsflower-unimplemented: EnumDeclaration */
76-
/*
77-
@@ -96,7 +95,7 @@ export declare enum WebBrowserPresentationStyle {
78-
AUTOMATIC = "automatic"
79-
} */
107+
+export type WebBrowserPresentationStyleT = $Values<typeof WebBrowserPresentationStyle>;
80108

81-
-export type WebBrowserResult = { type: WebBrowserResultType, ... };
82-
+export type WebBrowserResult = { type: WebBrowserResultTypeT, ... };
109+
export type WebBrowserResult = { type: WebBrowserResultTypeT, ... };
83110

84-
export type WebBrowserRedirectResult = {
85-
type: "success",
86111
--
87112
2.32.0
88113

0 commit comments

Comments
 (0)