react-native-webview-bootpay 13.8.42 → 13.13.4-6.alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -69
- package/android/build.gradle +1 -11
- package/android/gradle.properties +0 -42
- package/android/src/main/AndroidManifest.xml +3 -1
- package/android/src/main/AndroidManifestNew.xml +97 -0
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebChromeClient.java +54 -10
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebView.java +101 -68
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewClient.java +68 -60
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewManagerImpl.kt +119 -65
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewMessagingModule.kt +9 -0
- package/android/src/main/java/kr/co/bootpay/webview/BPCWebViewModuleImpl.java +1 -1
- package/android/src/main/java/kr/co/bootpay/webview/BootpayUrlHelper.java +4 -12
- package/android/src/newarch/{com/reactnativecommunity → kr/co/bootpay}/webview/BPCWebViewManager.java +118 -109
- package/android/src/newarch/{com/reactnativecommunity → kr/co/bootpay}/webview/BPCWebViewModule.java +1 -1
- package/android/src/{main/java → oldarch}/kr/co/bootpay/webview/BPCWebViewManager.java +63 -58
- package/android/src/{main/java → oldarch}/kr/co/bootpay/webview/BPCWebViewModule.java +1 -1
- package/apple/BPCWebView.mm +39 -30
- package/apple/BPCWebViewImpl.h +10 -0
- package/apple/BPCWebViewImpl.m +267 -205
- package/apple/BPCWebViewManager.mm +5 -24
- package/apple/BPCWebViewModule.h +23 -0
- package/apple/BPCWebViewModule.mm +34 -0
- package/apple/RCTConvert+WKDataDetectorTypes.h +11 -0
- package/apple/RCTConvert+WKDataDetectorTypes.m +27 -0
- package/index.d.ts +54 -48
- package/ios/RNCWebView.xcodeproj/project.pbxproj +24 -24
- package/ios/RNCWebView.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/RNCWebView.xcodeproj/project.xcworkspace/xcuserdata/taesupyoon.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/RNCWebView.xcodeproj/xcuserdata/taesupyoon.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/lib/BPCWebViewNativeComponent.d.ts +24 -25
- package/lib/BPCWebViewNativeComponent.js +1 -1
- package/lib/{NativeBPCWebView.d.ts → NativeBPCWebViewModule.d.ts} +2 -5
- package/lib/{NativeBPCWebView.js → NativeBPCWebViewModule.js} +1 -1
- package/lib/WebView.android.d.ts +0 -1
- package/lib/WebView.android.js +1 -1
- package/lib/WebView.d.ts +0 -1
- package/lib/WebView.ios.d.ts +0 -1
- package/lib/WebView.ios.js +1 -1
- package/lib/WebView.js +1 -1
- package/lib/WebView.macos.d.ts +0 -1
- package/lib/WebView.macos.js +1 -1
- package/lib/WebView.styles.d.ts +37 -11
- package/lib/WebView.styles.js +1 -1
- package/lib/WebView.windows.d.ts +0 -1
- package/lib/WebView.windows.js +1 -1
- package/lib/WebViewNativeComponent.macos.d.ts +1 -2
- package/lib/WebViewNativeComponent.windows.d.ts +1 -2
- package/lib/WebViewShared.d.ts +0 -1
- package/lib/WebViewShared.js +1 -1
- package/lib/WebViewTypes.d.ts +51 -3
- package/lib/WebViewTypes.js +1 -1
- package/lib/index.d.ts +0 -1
- package/macos/RNCWebView.xcodeproj/project.pbxproj +36 -36
- package/package.json +12 -11
- package/react-native-webview-bootpay.podspec +2 -2
- package/react-native.config.js +1 -5
- package/src/BPCWebViewNativeComponent.ts +143 -79
- package/src/NativeBPCWebViewModule.ts +13 -0
- package/src/WebView.android.tsx +295 -190
- package/src/WebView.ios.tsx +253 -186
- package/src/WebView.macos.tsx +220 -152
- package/src/WebView.styles.ts +9 -12
- package/src/WebView.tsx +14 -7
- package/src/WebView.windows.tsx +180 -126
- package/src/WebViewNativeComponent.macos.ts +4 -5
- package/src/WebViewNativeComponent.windows.ts +6 -8
- package/src/WebViewShared.tsx +139 -91
- package/src/WebViewTypes.ts +80 -35
- package/src/__tests__/WebViewShared-test.js +170 -55
- package/windows/ReactNativeWebView/ReactNativeWebView.vcxproj +8 -17
- package/windows/ReactNativeWebView/ReactPackageProvider.cpp +5 -1
- package/windows/ReactNativeWebView/ReactWebView.cpp +73 -6
- package/windows/ReactNativeWebView/ReactWebView.h +11 -1
- package/windows/ReactNativeWebView/ReactWebView.idl +12 -3
- package/windows/ReactNativeWebView/ReactWebView2.cpp +294 -129
- package/windows/ReactNativeWebView/ReactWebView2.h +42 -5
- package/windows/ReactNativeWebView/ReactWebView2Manager.cpp +60 -34
- package/windows/ReactNativeWebView/ReactWebView2Manager.h +4 -4
- package/windows/ReactNativeWebView/ReactWebViewHelpers.cpp +70 -0
- package/windows/ReactNativeWebView/ReactWebViewHelpers.h +16 -0
- package/windows/ReactNativeWebView/ReactWebViewManager.cpp +22 -3
- package/windows/ReactNativeWebView/ReactWebViewManager.h +6 -1
- package/windows/ReactNativeWebView/pch.h +11 -7
- package/windows/ReactNativeWebView.sln +14 -14
- package/ios/main.jsbundle +0 -457
- package/lib/BPCWebViewNativeComponent.d.ts.map +0 -1
- package/lib/NativeBPCWebView.d.ts.map +0 -1
- package/lib/WebView.android.d.ts.map +0 -1
- package/lib/WebView.d.ts.map +0 -1
- package/lib/WebView.ios.d.ts.map +0 -1
- package/lib/WebView.macos.d.ts.map +0 -1
- package/lib/WebView.styles.d.ts.map +0 -1
- package/lib/WebView.windows.d.ts.map +0 -1
- package/lib/WebViewNativeComponent.macos.d.ts.map +0 -1
- package/lib/WebViewNativeComponent.windows.d.ts.map +0 -1
- package/lib/WebViewShared.d.ts.map +0 -1
- package/lib/WebViewTypes.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/src/NativeBPCWebView.ts +0 -14
- package/windows/ReactNativeWebView/packages.config +0 -5
- /package/android/src/main/java/kr/co/bootpay/webview/{BPCWebviewWrapper.kt → BPCWebViewWrapper.kt} +0 -0
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import type { HostComponent, ViewProps } from 'react-native';
|
|
2
2
|
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
DirectEventHandler,
|
|
5
|
+
Double,
|
|
6
|
+
Int32,
|
|
7
|
+
WithDefault,
|
|
8
|
+
} from 'react-native/Libraries/Types/CodegenTypes';
|
|
4
9
|
import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
|
|
5
10
|
|
|
6
11
|
export type WebViewNativeEvent = Readonly<{
|
|
@@ -10,12 +15,12 @@ export type WebViewNativeEvent = Readonly<{
|
|
|
10
15
|
canGoBack: boolean;
|
|
11
16
|
canGoForward: boolean;
|
|
12
17
|
lockIdentifier: Double;
|
|
13
|
-
}
|
|
18
|
+
}>;
|
|
14
19
|
export type WebViewCustomMenuSelectionEvent = Readonly<{
|
|
15
20
|
label: string;
|
|
16
21
|
key: string;
|
|
17
22
|
selectedText: string;
|
|
18
|
-
}
|
|
23
|
+
}>;
|
|
19
24
|
export type WebViewMessageEvent = Readonly<{
|
|
20
25
|
url: string;
|
|
21
26
|
loading: boolean;
|
|
@@ -24,10 +29,10 @@ export type WebViewMessageEvent = Readonly<{
|
|
|
24
29
|
canGoForward: boolean;
|
|
25
30
|
lockIdentifier: Double;
|
|
26
31
|
data: string;
|
|
27
|
-
}
|
|
32
|
+
}>;
|
|
28
33
|
export type WebViewOpenWindowEvent = Readonly<{
|
|
29
34
|
targetUrl: string;
|
|
30
|
-
}
|
|
35
|
+
}>;
|
|
31
36
|
export type WebViewHttpErrorEvent = Readonly<{
|
|
32
37
|
url: string;
|
|
33
38
|
loading: boolean;
|
|
@@ -37,7 +42,7 @@ export type WebViewHttpErrorEvent = Readonly<{
|
|
|
37
42
|
lockIdentifier: Double;
|
|
38
43
|
description: string;
|
|
39
44
|
statusCode: Int32;
|
|
40
|
-
}
|
|
45
|
+
}>;
|
|
41
46
|
|
|
42
47
|
export type WebViewErrorEvent = Readonly<{
|
|
43
48
|
url: string;
|
|
@@ -49,9 +54,9 @@ export type WebViewErrorEvent = Readonly<{
|
|
|
49
54
|
domain?: string;
|
|
50
55
|
code: Int32;
|
|
51
56
|
description: string;
|
|
52
|
-
}
|
|
57
|
+
}>;
|
|
53
58
|
|
|
54
|
-
export type WebViewNativeProgressEvent = Readonly<
|
|
59
|
+
export type WebViewNativeProgressEvent = Readonly<{
|
|
55
60
|
url: string;
|
|
56
61
|
loading: boolean;
|
|
57
62
|
title: string;
|
|
@@ -59,9 +64,9 @@ export type WebViewNativeProgressEvent = Readonly< {
|
|
|
59
64
|
canGoForward: boolean;
|
|
60
65
|
lockIdentifier: Double;
|
|
61
66
|
progress: Double;
|
|
62
|
-
}
|
|
67
|
+
}>;
|
|
63
68
|
|
|
64
|
-
export type WebViewNavigationEvent = Readonly<
|
|
69
|
+
export type WebViewNavigationEvent = Readonly<{
|
|
65
70
|
url: string;
|
|
66
71
|
loading: boolean;
|
|
67
72
|
title: string;
|
|
@@ -76,9 +81,9 @@ export type WebViewNavigationEvent = Readonly< {
|
|
|
76
81
|
| 'formresubmit'
|
|
77
82
|
| 'other';
|
|
78
83
|
mainDocumentURL?: string;
|
|
79
|
-
}
|
|
84
|
+
}>;
|
|
80
85
|
|
|
81
|
-
export type ShouldStartLoadRequestEvent
|
|
86
|
+
export type ShouldStartLoadRequestEvent = Readonly<{
|
|
82
87
|
url: string;
|
|
83
88
|
loading: boolean;
|
|
84
89
|
title: string;
|
|
@@ -94,46 +99,46 @@ export type ShouldStartLoadRequestEvent = Readonly<{
|
|
|
94
99
|
| 'other';
|
|
95
100
|
mainDocumentURL?: string;
|
|
96
101
|
isTopFrame: boolean;
|
|
97
|
-
}
|
|
102
|
+
}>;
|
|
98
103
|
|
|
99
104
|
type ScrollEvent = Readonly<{
|
|
100
105
|
contentInset: {
|
|
101
|
-
bottom: Double
|
|
102
|
-
left: Double
|
|
103
|
-
right: Double
|
|
104
|
-
top: Double
|
|
105
|
-
}
|
|
106
|
+
bottom: Double;
|
|
107
|
+
left: Double;
|
|
108
|
+
right: Double;
|
|
109
|
+
top: Double;
|
|
110
|
+
};
|
|
106
111
|
contentOffset: {
|
|
107
|
-
y: Double
|
|
108
|
-
x: Double
|
|
109
|
-
}
|
|
112
|
+
y: Double;
|
|
113
|
+
x: Double;
|
|
114
|
+
};
|
|
110
115
|
contentSize: {
|
|
111
|
-
height: Double
|
|
112
|
-
width: Double
|
|
113
|
-
}
|
|
116
|
+
height: Double;
|
|
117
|
+
width: Double;
|
|
118
|
+
};
|
|
114
119
|
layoutMeasurement: {
|
|
115
|
-
height: Double
|
|
116
|
-
width: Double
|
|
117
|
-
}
|
|
120
|
+
height: Double;
|
|
121
|
+
width: Double;
|
|
122
|
+
};
|
|
118
123
|
targetContentOffset?: {
|
|
119
|
-
y: Double
|
|
120
|
-
x: Double
|
|
121
|
-
}
|
|
124
|
+
y: Double;
|
|
125
|
+
x: Double;
|
|
126
|
+
};
|
|
122
127
|
velocity?: {
|
|
123
|
-
y: Double
|
|
124
|
-
x: Double
|
|
125
|
-
}
|
|
126
|
-
zoomScale?: Double
|
|
127
|
-
responderIgnoreScroll?: boolean
|
|
128
|
-
}
|
|
128
|
+
y: Double;
|
|
129
|
+
x: Double;
|
|
130
|
+
};
|
|
131
|
+
zoomScale?: Double;
|
|
132
|
+
responderIgnoreScroll?: boolean;
|
|
133
|
+
}>;
|
|
129
134
|
|
|
130
135
|
type WebViewRenderProcessGoneEvent = Readonly<{
|
|
131
136
|
didCrash: boolean;
|
|
132
|
-
}
|
|
137
|
+
}>;
|
|
133
138
|
|
|
134
139
|
type WebViewDownloadEvent = Readonly<{
|
|
135
140
|
downloadUrl: string;
|
|
136
|
-
}
|
|
141
|
+
}>;
|
|
137
142
|
|
|
138
143
|
// type MenuItem = Readonly<{label: string, key: string}>;
|
|
139
144
|
|
|
@@ -143,7 +148,13 @@ export interface NativeProps extends ViewProps {
|
|
|
143
148
|
allowsProtectedMedia?: boolean;
|
|
144
149
|
allowsFullscreenVideo?: boolean;
|
|
145
150
|
androidLayerType?: WithDefault<'none' | 'software' | 'hardware', 'none'>;
|
|
146
|
-
cacheMode?: WithDefault<
|
|
151
|
+
cacheMode?: WithDefault<
|
|
152
|
+
| 'LOAD_DEFAULT'
|
|
153
|
+
| 'LOAD_CACHE_ELSE_NETWORK'
|
|
154
|
+
| 'LOAD_NO_CACHE'
|
|
155
|
+
| 'LOAD_CACHE_ONLY',
|
|
156
|
+
'LOAD_DEFAULT'
|
|
157
|
+
>;
|
|
147
158
|
domStorageEnabled?: boolean;
|
|
148
159
|
downloadingMessage?: string;
|
|
149
160
|
forceDarkOn?: boolean;
|
|
@@ -157,61 +168,84 @@ export interface NativeProps extends ViewProps {
|
|
|
157
168
|
onRenderProcessGone?: DirectEventHandler<WebViewRenderProcessGoneEvent>;
|
|
158
169
|
overScrollMode?: string;
|
|
159
170
|
saveFormDataDisabled?: boolean;
|
|
160
|
-
scalesPageToFit?: boolean
|
|
161
|
-
setBuiltInZoomControls?: boolean
|
|
171
|
+
scalesPageToFit?: WithDefault<boolean, true>;
|
|
172
|
+
setBuiltInZoomControls?: WithDefault<boolean, true>;
|
|
162
173
|
setDisplayZoomControls?: boolean;
|
|
163
|
-
setSupportMultipleWindows?: boolean
|
|
174
|
+
setSupportMultipleWindows?: WithDefault<boolean, true>;
|
|
164
175
|
textZoom?: Int32;
|
|
165
|
-
thirdPartyCookiesEnabled?: boolean
|
|
176
|
+
thirdPartyCookiesEnabled?: WithDefault<boolean, true>;
|
|
166
177
|
// Workaround to watch if listener if defined
|
|
167
178
|
hasOnScroll?: boolean;
|
|
168
|
-
injectedJavaScriptObject?: string;
|
|
169
179
|
// !Android only
|
|
170
180
|
|
|
171
181
|
// iOS only
|
|
172
182
|
allowingReadAccessToURL?: string;
|
|
173
183
|
allowsBackForwardNavigationGestures?: boolean;
|
|
174
184
|
allowsInlineMediaPlayback?: boolean;
|
|
185
|
+
allowsPictureInPictureMediaPlayback?: boolean;
|
|
175
186
|
allowsAirPlayForMediaPlayback?: boolean;
|
|
176
|
-
allowsLinkPreview?: boolean
|
|
177
|
-
automaticallyAdjustContentInsets?: boolean
|
|
178
|
-
autoManageStatusBarEnabled?: boolean
|
|
179
|
-
bounces?: boolean
|
|
187
|
+
allowsLinkPreview?: WithDefault<boolean, true>;
|
|
188
|
+
automaticallyAdjustContentInsets?: WithDefault<boolean, true>;
|
|
189
|
+
autoManageStatusBarEnabled?: WithDefault<boolean, true>;
|
|
190
|
+
bounces?: WithDefault<boolean, true>;
|
|
180
191
|
contentInset?: Readonly<{
|
|
181
192
|
top?: Double;
|
|
182
193
|
left?: Double;
|
|
183
194
|
bottom?: Double;
|
|
184
195
|
right?: Double;
|
|
185
196
|
}>;
|
|
186
|
-
contentInsetAdjustmentBehavior?: WithDefault<
|
|
187
|
-
|
|
197
|
+
contentInsetAdjustmentBehavior?: WithDefault<
|
|
198
|
+
'never' | 'automatic' | 'scrollableAxes' | 'always',
|
|
199
|
+
'never'
|
|
200
|
+
>;
|
|
201
|
+
contentMode?: WithDefault<
|
|
202
|
+
'recommended' | 'mobile' | 'desktop',
|
|
203
|
+
'recommended'
|
|
204
|
+
>;
|
|
188
205
|
dataDetectorTypes?: WithDefault<
|
|
189
|
-
|
|
190
|
-
|
|
206
|
+
ReadonlyArray<
|
|
207
|
+
| 'address'
|
|
208
|
+
| 'link'
|
|
209
|
+
| 'calendarEvent'
|
|
210
|
+
| 'trackingNumber'
|
|
211
|
+
| 'flightNumber'
|
|
212
|
+
| 'lookupSuggestion'
|
|
213
|
+
| 'phoneNumber'
|
|
214
|
+
| 'all'
|
|
215
|
+
| 'none'
|
|
216
|
+
>,
|
|
191
217
|
'phoneNumber'
|
|
192
218
|
>;
|
|
193
219
|
decelerationRate?: Double;
|
|
194
|
-
directionalLockEnabled?: boolean
|
|
220
|
+
directionalLockEnabled?: WithDefault<boolean, true>;
|
|
195
221
|
enableApplePay?: boolean;
|
|
196
222
|
hideKeyboardAccessoryView?: boolean;
|
|
197
|
-
keyboardDisplayRequiresUserAction?: boolean
|
|
223
|
+
keyboardDisplayRequiresUserAction?: WithDefault<boolean, true>;
|
|
198
224
|
limitsNavigationsToAppBoundDomains?: boolean;
|
|
199
|
-
mediaCapturePermissionGrantType?: WithDefault<
|
|
225
|
+
mediaCapturePermissionGrantType?: WithDefault<
|
|
226
|
+
| 'prompt'
|
|
227
|
+
| 'grant'
|
|
228
|
+
| 'deny'
|
|
229
|
+
| 'grantIfSameHostElsePrompt'
|
|
230
|
+
| 'grantIfSameHostElseDeny',
|
|
231
|
+
'prompt'
|
|
232
|
+
>;
|
|
200
233
|
pagingEnabled?: boolean;
|
|
201
234
|
pullToRefreshEnabled?: boolean;
|
|
202
|
-
|
|
235
|
+
refreshControlLightMode?: boolean;
|
|
236
|
+
scrollEnabled?: WithDefault<boolean, true>;
|
|
203
237
|
sharedCookiesEnabled?: boolean;
|
|
204
|
-
textInteractionEnabled?: boolean
|
|
205
|
-
useSharedProcessPool?: boolean
|
|
238
|
+
textInteractionEnabled?: WithDefault<boolean, true>;
|
|
239
|
+
useSharedProcessPool?: WithDefault<boolean, true>;
|
|
206
240
|
onContentProcessDidTerminate?: DirectEventHandler<WebViewNativeEvent>;
|
|
207
241
|
onCustomMenuSelection?: DirectEventHandler<WebViewCustomMenuSelectionEvent>;
|
|
208
242
|
onFileDownload?: DirectEventHandler<WebViewDownloadEvent>;
|
|
209
|
-
|
|
210
|
-
menuItems?: ReadonlyArray<Readonly<{label: string
|
|
243
|
+
|
|
244
|
+
menuItems?: ReadonlyArray<Readonly<{ label: string; key: string }>>;
|
|
211
245
|
suppressMenuItems?: Readonly<string>[];
|
|
212
246
|
// Workaround to watch if listener if defined
|
|
213
247
|
hasOnFileDownload?: boolean;
|
|
214
|
-
fraudulentWebsiteWarningEnabled?: boolean
|
|
248
|
+
fraudulentWebsiteWarningEnabled?: WithDefault<boolean, true>;
|
|
215
249
|
// !iOS only
|
|
216
250
|
|
|
217
251
|
allowFileAccessFromFileURLs?: boolean;
|
|
@@ -221,16 +255,19 @@ export interface NativeProps extends ViewProps {
|
|
|
221
255
|
username: string;
|
|
222
256
|
password: string;
|
|
223
257
|
}>;
|
|
224
|
-
cacheEnabled?: boolean
|
|
258
|
+
cacheEnabled?: WithDefault<boolean, true>;
|
|
225
259
|
incognito?: boolean;
|
|
226
260
|
injectedJavaScript?: string;
|
|
227
261
|
injectedJavaScriptBeforeContentLoaded?: string;
|
|
228
|
-
injectedJavaScriptForMainFrameOnly?: boolean
|
|
229
|
-
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?:
|
|
262
|
+
injectedJavaScriptForMainFrameOnly?: WithDefault<boolean, true>;
|
|
263
|
+
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?: WithDefault<
|
|
264
|
+
boolean,
|
|
265
|
+
true
|
|
266
|
+
>;
|
|
230
267
|
javaScriptCanOpenWindowsAutomatically?: boolean;
|
|
231
|
-
javaScriptEnabled?: boolean
|
|
268
|
+
javaScriptEnabled?: WithDefault<boolean, true>;
|
|
232
269
|
webviewDebuggingEnabled?: boolean;
|
|
233
|
-
mediaPlaybackRequiresUserAction?: boolean
|
|
270
|
+
mediaPlaybackRequiresUserAction?: WithDefault<boolean, true>;
|
|
234
271
|
messagingEnabled: boolean;
|
|
235
272
|
onLoadingError: DirectEventHandler<WebViewErrorEvent>;
|
|
236
273
|
onLoadingFinish: DirectEventHandler<WebViewNavigationEvent>;
|
|
@@ -242,40 +279,67 @@ export interface NativeProps extends ViewProps {
|
|
|
242
279
|
hasOnOpenWindowEvent?: boolean;
|
|
243
280
|
onScroll?: DirectEventHandler<ScrollEvent>;
|
|
244
281
|
onShouldStartLoadWithRequest: DirectEventHandler<ShouldStartLoadRequestEvent>;
|
|
245
|
-
showsHorizontalScrollIndicator?: boolean
|
|
246
|
-
showsVerticalScrollIndicator?: boolean
|
|
282
|
+
showsHorizontalScrollIndicator?: WithDefault<boolean, true>;
|
|
283
|
+
showsVerticalScrollIndicator?: WithDefault<boolean, true>;
|
|
247
284
|
newSource: Readonly<{
|
|
248
|
-
uri?: string
|
|
285
|
+
uri?: string;
|
|
249
286
|
method?: string;
|
|
250
287
|
body?: string;
|
|
251
|
-
|
|
252
|
-
headers?: ReadonlyArray<Readonly<{name: string
|
|
288
|
+
|
|
289
|
+
headers?: ReadonlyArray<Readonly<{ name: string; value: string }>>;
|
|
253
290
|
html?: string;
|
|
254
291
|
baseUrl?: string;
|
|
255
292
|
}>;
|
|
256
293
|
userAgent?: string;
|
|
294
|
+
injectedJavaScriptObject?: string;
|
|
257
295
|
}
|
|
258
296
|
|
|
259
297
|
export interface NativeCommands {
|
|
260
|
-
goBack: (viewRef: React.ElementRef<HostComponent<NativeProps>>
|
|
298
|
+
goBack: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
261
299
|
goForward: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
262
300
|
reload: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
263
301
|
stopLoading: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
264
|
-
injectJavaScript: (
|
|
302
|
+
injectJavaScript: (
|
|
303
|
+
viewRef: React.ElementRef<HostComponent<NativeProps>>,
|
|
304
|
+
javascript: string
|
|
305
|
+
) => void;
|
|
265
306
|
requestFocus: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
266
|
-
postMessage: (
|
|
307
|
+
postMessage: (
|
|
308
|
+
viewRef: React.ElementRef<HostComponent<NativeProps>>,
|
|
309
|
+
data: string
|
|
310
|
+
) => void;
|
|
267
311
|
// Android Only
|
|
268
|
-
loadUrl: (
|
|
269
|
-
|
|
270
|
-
|
|
312
|
+
loadUrl: (
|
|
313
|
+
viewRef: React.ElementRef<HostComponent<NativeProps>>,
|
|
314
|
+
url: string
|
|
315
|
+
) => void;
|
|
316
|
+
clearFormData: (
|
|
317
|
+
viewRef: React.ElementRef<HostComponent<NativeProps>>
|
|
318
|
+
) => void;
|
|
319
|
+
clearCache: (
|
|
320
|
+
viewRef: React.ElementRef<HostComponent<NativeProps>>,
|
|
321
|
+
includeDiskFiles: boolean
|
|
322
|
+
) => void;
|
|
271
323
|
clearHistory: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|
|
272
324
|
// !Android Only
|
|
273
325
|
}
|
|
274
326
|
|
|
275
327
|
export const Commands = codegenNativeCommands<NativeCommands>({
|
|
276
|
-
supportedCommands: [
|
|
328
|
+
supportedCommands: [
|
|
329
|
+
'goBack',
|
|
330
|
+
'goForward',
|
|
331
|
+
'reload',
|
|
332
|
+
'stopLoading',
|
|
333
|
+
'injectJavaScript',
|
|
334
|
+
'requestFocus',
|
|
335
|
+
'postMessage',
|
|
336
|
+
'loadUrl',
|
|
337
|
+
'clearFormData',
|
|
338
|
+
'clearCache',
|
|
339
|
+
'clearHistory',
|
|
340
|
+
],
|
|
277
341
|
});
|
|
278
342
|
|
|
279
343
|
export default codegenNativeComponent<NativeProps>(
|
|
280
344
|
'BPCWebView'
|
|
281
|
-
) as HostComponent<NativeProps>;
|
|
345
|
+
) as HostComponent<NativeProps>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TurboModule } from 'react-native';
|
|
2
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
3
|
+
import { Double } from 'react-native/Libraries/Types/CodegenTypes';
|
|
4
|
+
|
|
5
|
+
export interface Spec extends TurboModule {
|
|
6
|
+
isFileUploadSupported(): Promise<boolean>;
|
|
7
|
+
shouldStartLoadWithLockIdentifier(
|
|
8
|
+
shouldStart: boolean,
|
|
9
|
+
lockIdentifier: Double
|
|
10
|
+
): void;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default TurboModuleRegistry.getEnforcing<Spec>('BPCWebViewModule');
|