@exodus/react-native-webview 11.26.1-exodus.0 → 11.26.1-exodus.10
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/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java +26 -268
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewModule.java +1 -45
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewPackage.java +25 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewUtils.java +51 -0
- package/apple/RNCWebView.h +0 -8
- package/apple/RNCWebView.m +17 -123
- package/apple/RNCWebViewManager.m +0 -10
- package/index.js +5 -2
- package/lib/WebView.android.js +88 -65
- package/lib/WebView.ios.js +70 -105
- package/lib/WebView.js +2 -2
- package/lib/WebView.styles.js +7 -7
- package/lib/WebViewNativeComponent.android.js +1 -1
- package/lib/WebViewNativeComponent.ios.js +1 -1
- package/lib/WebViewShared.d.ts +8 -12
- package/lib/WebViewShared.js +118 -88
- package/lib/WebViewTypes.d.ts +24 -179
- package/lib/WebViewTypes.js +4 -31
- package/package.json +1 -1
- package/react-native-webview.podspec +1 -1
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewPackage.kt +0 -15
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopHttpErrorEvent.kt +0 -25
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopRenderProcessGoneEvent.kt +0 -26
package/lib/WebViewTypes.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ReactElement, Component } from 'react';
|
|
1
|
+
import { ReactElement, Component, ElementType } from 'react';
|
|
2
2
|
import { NativeSyntheticEvent, ViewProps, StyleProp, ViewStyle, NativeMethodsMixin, Constructor, UIManagerStatic, NativeScrollEvent } from 'react-native';
|
|
3
3
|
declare type WebViewCommands = 'goForward' | 'goBack' | 'reload' | 'stopLoading' | 'postMessage' | 'injectJavaScript' | 'loadUrl' | 'requestFocus';
|
|
4
4
|
declare type AndroidWebViewCommands = 'clearHistory' | 'clearCache' | 'clearFormData';
|
|
@@ -58,9 +58,6 @@ export interface WebViewNavigation extends WebViewNativeEvent {
|
|
|
58
58
|
export interface ShouldStartLoadRequest extends WebViewNavigation {
|
|
59
59
|
isTopFrame: boolean;
|
|
60
60
|
}
|
|
61
|
-
export interface FileDownload {
|
|
62
|
-
downloadUrl: string;
|
|
63
|
-
}
|
|
64
61
|
export declare type DecelerationRateConstant = 'normal' | 'fast';
|
|
65
62
|
export interface WebViewMessage extends WebViewNativeEvent {
|
|
66
63
|
data: string;
|
|
@@ -73,23 +70,12 @@ export interface WebViewError extends WebViewNativeEvent {
|
|
|
73
70
|
code: number;
|
|
74
71
|
description: string;
|
|
75
72
|
}
|
|
76
|
-
export interface WebViewHttpError extends WebViewNativeEvent {
|
|
77
|
-
description: string;
|
|
78
|
-
statusCode: number;
|
|
79
|
-
}
|
|
80
|
-
export interface WebViewRenderProcessGoneDetail {
|
|
81
|
-
didCrash: boolean;
|
|
82
|
-
}
|
|
83
73
|
export declare type WebViewEvent = NativeSyntheticEvent<WebViewNativeEvent>;
|
|
84
74
|
export declare type WebViewProgressEvent = NativeSyntheticEvent<WebViewNativeProgressEvent>;
|
|
85
75
|
export declare type WebViewNavigationEvent = NativeSyntheticEvent<WebViewNavigation>;
|
|
86
76
|
export declare type ShouldStartLoadRequestEvent = NativeSyntheticEvent<ShouldStartLoadRequest>;
|
|
87
|
-
export declare type FileDownloadEvent = NativeSyntheticEvent<FileDownload>;
|
|
88
77
|
export declare type WebViewMessageEvent = NativeSyntheticEvent<WebViewMessage>;
|
|
89
78
|
export declare type WebViewErrorEvent = NativeSyntheticEvent<WebViewError>;
|
|
90
|
-
export declare type WebViewTerminatedEvent = NativeSyntheticEvent<WebViewNativeEvent>;
|
|
91
|
-
export declare type WebViewHttpErrorEvent = NativeSyntheticEvent<WebViewHttpError>;
|
|
92
|
-
export declare type WebViewRenderProcessGoneEvent = NativeSyntheticEvent<WebViewRenderProcessGoneDetail>;
|
|
93
79
|
export declare type WebViewScrollEvent = NativeSyntheticEvent<NativeScrollEvent>;
|
|
94
80
|
export declare type DataDetectorTypes = 'phoneNumber' | 'link' | 'address' | 'calendarEvent' | 'trackingNumber' | 'flightNumber' | 'lookupSuggestion' | 'none' | 'all';
|
|
95
81
|
export declare type OverScrollModeType = 'always' | 'content' | 'never';
|
|
@@ -143,22 +129,6 @@ export declare type WebViewSource = WebViewSourceUri | WebViewSourceHtml;
|
|
|
143
129
|
export interface ViewManager {
|
|
144
130
|
startLoadWithResult: Function;
|
|
145
131
|
}
|
|
146
|
-
export interface WebViewNativeConfig {
|
|
147
|
-
/**
|
|
148
|
-
* The native component used to render the WebView.
|
|
149
|
-
*/
|
|
150
|
-
component?: typeof NativeWebViewIOS | typeof NativeWebViewAndroid;
|
|
151
|
-
/**
|
|
152
|
-
* Set props directly on the native component WebView. Enables custom props which the
|
|
153
|
-
* original WebView doesn't pass through.
|
|
154
|
-
*/
|
|
155
|
-
props?: Object;
|
|
156
|
-
/**
|
|
157
|
-
* Set the ViewManager to use for communication with the native side.
|
|
158
|
-
* @platform ios, macos
|
|
159
|
-
*/
|
|
160
|
-
viewManager?: ViewManager;
|
|
161
|
-
}
|
|
162
132
|
export declare type OnShouldStartLoadWithRequest = (event: ShouldStartLoadRequest) => boolean;
|
|
163
133
|
export interface BasicAuthCredential {
|
|
164
134
|
/**
|
|
@@ -175,8 +145,6 @@ export interface CommonNativeWebViewProps extends ViewProps {
|
|
|
175
145
|
incognito?: boolean;
|
|
176
146
|
injectedJavaScript?: string;
|
|
177
147
|
injectedJavaScriptBeforeContentLoaded?: string;
|
|
178
|
-
injectedJavaScriptForMainFrameOnly?: boolean;
|
|
179
|
-
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?: boolean;
|
|
180
148
|
mediaPlaybackRequiresUserAction?: boolean;
|
|
181
149
|
messagingEnabled: boolean;
|
|
182
150
|
onScroll?: (event: WebViewScrollEvent) => void;
|
|
@@ -184,7 +152,6 @@ export interface CommonNativeWebViewProps extends ViewProps {
|
|
|
184
152
|
onLoadingFinish: (event: WebViewNavigationEvent) => void;
|
|
185
153
|
onLoadingProgress: (event: WebViewProgressEvent) => void;
|
|
186
154
|
onLoadingStart: (event: WebViewNavigationEvent) => void;
|
|
187
|
-
onHttpError: (event: WebViewHttpErrorEvent) => void;
|
|
188
155
|
onMessage: (event: WebViewMessageEvent) => void;
|
|
189
156
|
onShouldStartLoadWithRequest: (event: ShouldStartLoadRequestEvent) => void;
|
|
190
157
|
showsHorizontalScrollIndicator?: boolean;
|
|
@@ -194,16 +161,11 @@ export interface CommonNativeWebViewProps extends ViewProps {
|
|
|
194
161
|
/**
|
|
195
162
|
* Append to the existing user-agent. Overridden if `userAgent` is set.
|
|
196
163
|
*/
|
|
197
|
-
applicationNameForUserAgent?: string;
|
|
198
164
|
basicAuthCredential?: BasicAuthCredential;
|
|
199
165
|
}
|
|
200
166
|
export interface AndroidNativeWebViewProps extends CommonNativeWebViewProps {
|
|
201
167
|
cacheMode?: CacheMode;
|
|
202
|
-
allowFileAccess?: boolean;
|
|
203
168
|
scalesPageToFit?: boolean;
|
|
204
|
-
allowFileAccessFromFileURLs?: boolean;
|
|
205
|
-
allowsFullscreenVideo?: boolean;
|
|
206
|
-
allowUniversalAccessFromFileURLs?: boolean;
|
|
207
169
|
androidHardwareAccelerationDisabled?: boolean;
|
|
208
170
|
androidLayerType?: AndroidLayerType;
|
|
209
171
|
domStorageEnabled?: boolean;
|
|
@@ -211,7 +173,6 @@ export interface AndroidNativeWebViewProps extends CommonNativeWebViewProps {
|
|
|
211
173
|
javaScriptEnabled?: boolean;
|
|
212
174
|
mixedContentMode?: 'never' | 'always' | 'compatibility';
|
|
213
175
|
onContentSizeChange?: (event: WebViewEvent) => void;
|
|
214
|
-
onRenderProcessGone?: (event: WebViewRenderProcessGoneEvent) => void;
|
|
215
176
|
overScrollMode?: OverScrollModeType;
|
|
216
177
|
saveFormDataDisabled?: boolean;
|
|
217
178
|
setSupportMultipleWindows?: boolean;
|
|
@@ -232,13 +193,9 @@ export declare type ContentInsetAdjustmentBehavior = 'automatic' | 'scrollableAx
|
|
|
232
193
|
export declare type MediaCapturePermissionGrantType = 'grantIfSameHostElsePrompt' | 'grantIfSameHostElseDeny' | 'deny' | 'grant' | 'prompt';
|
|
233
194
|
export declare type ContentMode = 'recommended' | 'mobile' | 'desktop';
|
|
234
195
|
export interface IOSNativeWebViewProps extends CommonNativeWebViewProps {
|
|
235
|
-
allowingReadAccessToURL?: string;
|
|
236
196
|
allowsBackForwardNavigationGestures?: boolean;
|
|
237
197
|
allowsInlineMediaPlayback?: boolean;
|
|
238
|
-
allowsAirPlayForMediaPlayback?: boolean;
|
|
239
198
|
allowsLinkPreview?: boolean;
|
|
240
|
-
allowFileAccessFromFileURLs?: boolean;
|
|
241
|
-
allowUniversalAccessFromFileURLs?: boolean;
|
|
242
199
|
automaticallyAdjustContentInsets?: boolean;
|
|
243
200
|
autoManageStatusBarEnabled?: boolean;
|
|
244
201
|
bounces?: boolean;
|
|
@@ -253,11 +210,9 @@ export interface IOSNativeWebViewProps extends CommonNativeWebViewProps {
|
|
|
253
210
|
pagingEnabled?: boolean;
|
|
254
211
|
scrollEnabled?: boolean;
|
|
255
212
|
useSharedProcessPool?: boolean;
|
|
256
|
-
onContentProcessDidTerminate?: (event: WebViewTerminatedEvent) => void;
|
|
257
|
-
injectedJavaScriptForMainFrameOnly?: boolean;
|
|
258
|
-
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?: boolean;
|
|
259
|
-
onFileDownload?: (event: FileDownloadEvent) => void;
|
|
260
213
|
limitsNavigationsToAppBoundDomains?: boolean;
|
|
214
|
+
sharedCookiesEnabled?: boolean;
|
|
215
|
+
enableApplePay?: boolean;
|
|
261
216
|
textInteractionEnabled?: boolean;
|
|
262
217
|
mediaCapturePermissionGrantType?: MediaCapturePermissionGrantType;
|
|
263
218
|
}
|
|
@@ -367,11 +322,6 @@ export interface IOSWebViewProps extends WebViewSharedProps {
|
|
|
367
322
|
* @platform ios
|
|
368
323
|
*/
|
|
369
324
|
allowsInlineMediaPlayback?: boolean;
|
|
370
|
-
/**
|
|
371
|
-
* A Boolean value indicating whether AirPlay is allowed. The default value is `false`.
|
|
372
|
-
* @platform ios
|
|
373
|
-
*/
|
|
374
|
-
allowsAirPlayForMediaPlayback?: boolean;
|
|
375
325
|
/**
|
|
376
326
|
* Hide the accessory view when the keyboard is open. Default is false to be
|
|
377
327
|
* backward compatible.
|
|
@@ -408,12 +358,6 @@ export interface IOSWebViewProps extends WebViewSharedProps {
|
|
|
408
358
|
* @platform ios
|
|
409
359
|
*/
|
|
410
360
|
sharedCookiesEnabled?: boolean;
|
|
411
|
-
/**
|
|
412
|
-
* When set to true the hardware silent switch is ignored.
|
|
413
|
-
* The default value is `false`.
|
|
414
|
-
* @platform ios
|
|
415
|
-
*/
|
|
416
|
-
ignoreSilentHardwareSwitch?: boolean;
|
|
417
361
|
/**
|
|
418
362
|
* Set true if StatusBar should be light when user watch video fullscreen.
|
|
419
363
|
* The default value is `true`.
|
|
@@ -438,47 +382,6 @@ export interface IOSWebViewProps extends WebViewSharedProps {
|
|
|
438
382
|
* @platform ios
|
|
439
383
|
*/
|
|
440
384
|
keyboardDisplayRequiresUserAction?: boolean;
|
|
441
|
-
/**
|
|
442
|
-
* A String value that indicates which URLs the WebView's file can then
|
|
443
|
-
* reference in scripts, AJAX requests, and CSS imports. This is only used
|
|
444
|
-
* for WebViews that are loaded with a source.uri set to a `'file://'` URL.
|
|
445
|
-
*
|
|
446
|
-
* If not provided, the default is to only allow read access to the URL
|
|
447
|
-
* provided in source.uri itself.
|
|
448
|
-
* @platform ios
|
|
449
|
-
*/
|
|
450
|
-
allowingReadAccessToURL?: string;
|
|
451
|
-
/**
|
|
452
|
-
* Boolean that sets whether JavaScript running in the context of a file
|
|
453
|
-
* scheme URL should be allowed to access content from other file scheme URLs.
|
|
454
|
-
* Including accessing content from other file scheme URLs
|
|
455
|
-
* @platform ios
|
|
456
|
-
*/
|
|
457
|
-
allowFileAccessFromFileURLs?: boolean;
|
|
458
|
-
/**
|
|
459
|
-
* Boolean that sets whether JavaScript running in the context of a file
|
|
460
|
-
* scheme URL should be allowed to access content from any origin.
|
|
461
|
-
* Including accessing content from other file scheme URLs
|
|
462
|
-
* @platform ios
|
|
463
|
-
*/
|
|
464
|
-
allowUniversalAccessFromFileURLs?: boolean;
|
|
465
|
-
/**
|
|
466
|
-
* Function that is invoked when the WebKit WebView content process gets terminated.
|
|
467
|
-
* @platform ios
|
|
468
|
-
*/
|
|
469
|
-
onContentProcessDidTerminate?: (event: WebViewTerminatedEvent) => void;
|
|
470
|
-
/**
|
|
471
|
-
* If `true` (default), loads the `injectedJavaScript` only into the main frame.
|
|
472
|
-
* If `false`, loads it into all frames (e.g. iframes).
|
|
473
|
-
* @platform ios
|
|
474
|
-
*/
|
|
475
|
-
injectedJavaScriptForMainFrameOnly?: boolean;
|
|
476
|
-
/**
|
|
477
|
-
* If `true` (default), loads the `injectedJavaScriptBeforeContentLoaded` only into the main frame.
|
|
478
|
-
* If `false`, loads it into all frames (e.g. iframes).
|
|
479
|
-
* @platform ios
|
|
480
|
-
*/
|
|
481
|
-
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?: boolean;
|
|
482
385
|
/**
|
|
483
386
|
* Boolean value that determines whether a pull to refresh gesture is
|
|
484
387
|
* available in the `WebView`. The default value is `false`.
|
|
@@ -487,23 +390,6 @@ export interface IOSWebViewProps extends WebViewSharedProps {
|
|
|
487
390
|
*
|
|
488
391
|
*/
|
|
489
392
|
pullToRefreshEnabled?: boolean;
|
|
490
|
-
/**
|
|
491
|
-
* Function that is invoked when the client needs to download a file.
|
|
492
|
-
*
|
|
493
|
-
* iOS 13+ only: If the webview navigates to a URL that results in an HTTP
|
|
494
|
-
* response with a Content-Disposition header 'attachment...', then
|
|
495
|
-
* this will be called.
|
|
496
|
-
*
|
|
497
|
-
* iOS 8+: If the MIME type indicates that the content is not renderable by the
|
|
498
|
-
* webview, that will also cause this to be called. On iOS versions before 13,
|
|
499
|
-
* this is the only condition that will cause this function to be called.
|
|
500
|
-
*
|
|
501
|
-
* The application will need to provide its own code to actually download
|
|
502
|
-
* the file.
|
|
503
|
-
*
|
|
504
|
-
* If not provided, the default is to let the webview try to render the file.
|
|
505
|
-
*/
|
|
506
|
-
onFileDownload?: (event: FileDownloadEvent) => void;
|
|
507
393
|
/**
|
|
508
394
|
* A Boolean value which, when set to `true`, indicates to WebKit that a WKWebView
|
|
509
395
|
* will only navigate to app-bound domains. Once set, any attempt to navigate away
|
|
@@ -558,13 +444,7 @@ export interface IOSWebViewProps extends WebViewSharedProps {
|
|
|
558
444
|
onCustomMenuSelection?: (event: WebViewEvent) => void;
|
|
559
445
|
}
|
|
560
446
|
export interface AndroidWebViewProps extends WebViewSharedProps {
|
|
561
|
-
onNavigationStateChange?: (event: WebViewNavigation) => void;
|
|
562
447
|
onContentSizeChange?: (event: WebViewEvent) => void;
|
|
563
|
-
/**
|
|
564
|
-
* Function that is invoked when the `WebView` process crashes or is killed by the OS.
|
|
565
|
-
* Works only on Android (minimum API level 26).
|
|
566
|
-
*/
|
|
567
|
-
onRenderProcessGone?: (event: WebViewRenderProcessGoneEvent) => void;
|
|
568
448
|
/**
|
|
569
449
|
* https://developer.android.com/reference/android/webkit/WebSettings.html#setCacheMode(int)
|
|
570
450
|
* Set the cacheMode. Possible values are:
|
|
@@ -599,25 +479,6 @@ export interface AndroidWebViewProps extends WebViewSharedProps {
|
|
|
599
479
|
* @platform android
|
|
600
480
|
*/
|
|
601
481
|
geolocationEnabled?: boolean;
|
|
602
|
-
/**
|
|
603
|
-
* Boolean that sets whether JavaScript running in the context of a file
|
|
604
|
-
* scheme URL should be allowed to access content from other file scheme URLs.
|
|
605
|
-
* Including accessing content from other file scheme URLs
|
|
606
|
-
* @platform android
|
|
607
|
-
*/
|
|
608
|
-
allowFileAccessFromFileURLs?: boolean;
|
|
609
|
-
/**
|
|
610
|
-
* Boolean that sets whether JavaScript running in the context of a file
|
|
611
|
-
* scheme URL should be allowed to access content from any origin.
|
|
612
|
-
* Including accessing content from other file scheme URLs
|
|
613
|
-
* @platform android
|
|
614
|
-
*/
|
|
615
|
-
allowUniversalAccessFromFileURLs?: boolean;
|
|
616
|
-
/**
|
|
617
|
-
* Sets whether the webview allow access to file system.
|
|
618
|
-
* @platform android
|
|
619
|
-
*/
|
|
620
|
-
allowFileAccess?: boolean;
|
|
621
482
|
/**
|
|
622
483
|
* Used on Android only, controls whether form autocomplete data should be saved
|
|
623
484
|
* @platform android
|
|
@@ -688,10 +549,6 @@ export interface AndroidWebViewProps extends WebViewSharedProps {
|
|
|
688
549
|
* @platform android
|
|
689
550
|
*/
|
|
690
551
|
mixedContentMode?: 'never' | 'always' | 'compatibility';
|
|
691
|
-
/**
|
|
692
|
-
* Sets ability to open fullscreen videos on Android devices.
|
|
693
|
-
*/
|
|
694
|
-
allowsFullscreenVideo?: boolean;
|
|
695
552
|
/**
|
|
696
553
|
* Configuring Dark Theme
|
|
697
554
|
*
|
|
@@ -796,15 +653,6 @@ export interface WebViewSharedProps extends ViewProps {
|
|
|
796
653
|
* Function that is invoked when the `WebView` load fails.
|
|
797
654
|
*/
|
|
798
655
|
onError?: (event: WebViewErrorEvent) => void;
|
|
799
|
-
/**
|
|
800
|
-
* Function that is invoked when the `WebView` receives an error status code.
|
|
801
|
-
* Works on iOS and Android (minimum API level 23).
|
|
802
|
-
*/
|
|
803
|
-
onHttpError?: (event: WebViewHttpErrorEvent) => void;
|
|
804
|
-
/**
|
|
805
|
-
* Function that is invoked when the `WebView` loading starts or ends.
|
|
806
|
-
*/
|
|
807
|
-
onNavigationStateChange?: (event: WebViewNavigation) => void;
|
|
808
656
|
/**
|
|
809
657
|
* Function that is invoked when the webview calls `window.ReactNativeWebView.postMessage`.
|
|
810
658
|
* Setting this property will inject this global into your webview.
|
|
@@ -812,11 +660,7 @@ export interface WebViewSharedProps extends ViewProps {
|
|
|
812
660
|
* `window.ReactNativeWebView.postMessage` accepts one argument, `data`, which will be
|
|
813
661
|
* available on the event object, `event.nativeEvent.data`. `data` must be a string.
|
|
814
662
|
*/
|
|
815
|
-
onMessage?: (event:
|
|
816
|
-
/**
|
|
817
|
-
* Function that is invoked when the `WebView` is loading.
|
|
818
|
-
*/
|
|
819
|
-
onLoadProgress?: (event: WebViewProgressEvent) => void;
|
|
663
|
+
onMessage?: (event: WebViewMessage) => void;
|
|
820
664
|
/**
|
|
821
665
|
* Boolean value that forces the `WebView` to show the loading view
|
|
822
666
|
* on the first load.
|
|
@@ -832,16 +676,6 @@ export interface WebViewSharedProps extends ViewProps {
|
|
|
832
676
|
* once the webview is initialized but before the view loads any content.
|
|
833
677
|
*/
|
|
834
678
|
injectedJavaScriptBeforeContentLoaded?: string;
|
|
835
|
-
/**
|
|
836
|
-
* If `true` (default; mandatory for Android), loads the `injectedJavaScript` only into the main frame.
|
|
837
|
-
* If `false` (only supported on iOS and macOS), loads it into all frames (e.g. iframes).
|
|
838
|
-
*/
|
|
839
|
-
injectedJavaScriptForMainFrameOnly?: boolean;
|
|
840
|
-
/**
|
|
841
|
-
* If `true` (default; mandatory for Android), loads the `injectedJavaScriptBeforeContentLoaded` only into the main frame.
|
|
842
|
-
* If `false` (only supported on iOS and macOS), loads it into all frames (e.g. iframes).
|
|
843
|
-
*/
|
|
844
|
-
injectedJavaScriptBeforeContentLoadedForMainFrameOnly?: boolean;
|
|
845
679
|
/**
|
|
846
680
|
* Boolean value that determines whether a horizontal scroll indicator is
|
|
847
681
|
* shown in the `WebView`. The default value is `true`.
|
|
@@ -871,23 +705,34 @@ export interface WebViewSharedProps extends ViewProps {
|
|
|
871
705
|
* to stop loading. The `navigationType` is always `other` on android.
|
|
872
706
|
*/
|
|
873
707
|
onShouldStartLoadWithRequest?: OnShouldStartLoadWithRequest;
|
|
874
|
-
/**
|
|
875
|
-
* Override the native component used to render the WebView. Enables a custom native
|
|
876
|
-
* WebView which uses the same JavaScript as the original WebView.
|
|
877
|
-
*/
|
|
878
|
-
nativeConfig?: WebViewNativeConfig;
|
|
879
708
|
/**
|
|
880
709
|
* Should caching be enabled. Default is true.
|
|
881
710
|
*/
|
|
882
711
|
cacheEnabled?: boolean;
|
|
883
|
-
/**
|
|
884
|
-
* Append to the existing user-agent. Overridden if `userAgent` is set.
|
|
885
|
-
*/
|
|
886
|
-
applicationNameForUserAgent?: string;
|
|
887
712
|
/**
|
|
888
713
|
* An object that specifies the credentials of a user to be used for basic authentication.
|
|
889
714
|
*/
|
|
890
715
|
basicAuthCredential?: BasicAuthCredential;
|
|
716
|
+
/**
|
|
717
|
+
* Event metadata validation.
|
|
718
|
+
*/
|
|
719
|
+
validateMeta: (event: WebViewNativeEvent) => WebViewNativeEvent;
|
|
720
|
+
/**
|
|
721
|
+
* Event data validation.
|
|
722
|
+
*/
|
|
723
|
+
validateData: (data: object) => object;
|
|
724
|
+
/**
|
|
725
|
+
* Webview will refuse to work on iOS versions below this one. Required for iOS.
|
|
726
|
+
*/
|
|
727
|
+
minimumIOSVersion?: string;
|
|
728
|
+
/**
|
|
729
|
+
* Webview will refuse to work on Chrome versions below this one. Required for Android.
|
|
730
|
+
*/
|
|
731
|
+
minimumChromeVersion?: string;
|
|
732
|
+
/**
|
|
733
|
+
* Component to render if the OS version is not supported.
|
|
734
|
+
*/
|
|
735
|
+
unsupportedVersionComponent?: ElementType;
|
|
891
736
|
}
|
|
892
737
|
export {};
|
|
893
738
|
//# sourceMappingURL=WebViewTypes.d.ts.map
|
package/lib/WebViewTypes.js
CHANGED
|
@@ -1,33 +1,6 @@
|
|
|
1
1
|
/* eslint-disable react/no-multi-comp, max-classes-per-file */
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
2
|
import { Component } from 'react';
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
return NativeWebViewIOS;
|
|
24
|
-
}(NativeWebViewIOSBase));
|
|
25
|
-
export { NativeWebViewIOS };
|
|
26
|
-
var NativeWebViewAndroid = /** @class */ (function (_super) {
|
|
27
|
-
__extends(NativeWebViewAndroid, _super);
|
|
28
|
-
function NativeWebViewAndroid() {
|
|
29
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
30
|
-
}
|
|
31
|
-
return NativeWebViewAndroid;
|
|
32
|
-
}(NativeWebViewAndroidBase));
|
|
33
|
-
export { NativeWebViewAndroid };
|
|
3
|
+
export class NativeWebViewIOS extends NativeWebViewIOSBase {
|
|
4
|
+
}
|
|
5
|
+
export class NativeWebViewAndroid extends NativeWebViewAndroidBase {
|
|
6
|
+
}
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"Thibault Malbranche <malbranche.thibault@gmail.com>"
|
|
10
10
|
],
|
|
11
11
|
"license": "MIT",
|
|
12
|
-
"version": "11.26.1-exodus.
|
|
12
|
+
"version": "11.26.1-exodus.10",
|
|
13
13
|
"homepage": "https://github.com/ExodusMovement/react-native-webview#readme",
|
|
14
14
|
"scripts": {
|
|
15
15
|
"android": "react-native run-android",
|
|
@@ -3,7 +3,7 @@ require 'json'
|
|
|
3
3
|
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
|
|
4
4
|
|
|
5
5
|
Pod::Spec.new do |s|
|
|
6
|
-
s.name =
|
|
6
|
+
s.name = 'react-native-webview'
|
|
7
7
|
s.version = package['version']
|
|
8
8
|
s.summary = package['description']
|
|
9
9
|
s.license = package['license']
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
package com.reactnativecommunity.webview
|
|
2
|
-
|
|
3
|
-
import com.facebook.react.ReactPackage
|
|
4
|
-
import com.facebook.react.bridge.ReactApplicationContext
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class RNCWebViewPackage: ReactPackage {
|
|
8
|
-
override fun createNativeModules(reactContext: ReactApplicationContext) = listOf(
|
|
9
|
-
RNCWebViewModule(reactContext)
|
|
10
|
-
)
|
|
11
|
-
|
|
12
|
-
override fun createViewManagers(reactContext: ReactApplicationContext) = listOf(
|
|
13
|
-
RNCWebViewManager()
|
|
14
|
-
)
|
|
15
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
package com.reactnativecommunity.webview.events
|
|
2
|
-
|
|
3
|
-
import com.facebook.react.bridge.WritableMap
|
|
4
|
-
import com.facebook.react.uimanager.events.Event
|
|
5
|
-
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Event emitted when a http error is received from the server.
|
|
9
|
-
*/
|
|
10
|
-
class TopHttpErrorEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
-
Event<TopHttpErrorEvent>(viewId) {
|
|
12
|
-
companion object {
|
|
13
|
-
const val EVENT_NAME = "topHttpError"
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
override fun getEventName(): String = EVENT_NAME
|
|
17
|
-
|
|
18
|
-
override fun canCoalesce(): Boolean = false
|
|
19
|
-
|
|
20
|
-
override fun getCoalescingKey(): Short = 0
|
|
21
|
-
|
|
22
|
-
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
-
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
-
|
|
25
|
-
}
|
package/android/src/main/java/com/reactnativecommunity/webview/events/TopRenderProcessGoneEvent.kt
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
package com.reactnativecommunity.webview.events
|
|
2
|
-
|
|
3
|
-
import com.facebook.react.bridge.WritableMap
|
|
4
|
-
import com.facebook.react.uimanager.events.Event
|
|
5
|
-
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Event emitted when the WebView's process has crashed or
|
|
9
|
-
was killed by the OS.
|
|
10
|
-
*/
|
|
11
|
-
class TopRenderProcessGoneEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
12
|
-
Event<TopRenderProcessGoneEvent>(viewId) {
|
|
13
|
-
companion object {
|
|
14
|
-
const val EVENT_NAME = "topRenderProcessGone"
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
override fun getEventName(): String = EVENT_NAME
|
|
18
|
-
|
|
19
|
-
override fun canCoalesce(): Boolean = false
|
|
20
|
-
|
|
21
|
-
override fun getCoalescingKey(): Short = 0
|
|
22
|
-
|
|
23
|
-
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
24
|
-
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
25
|
-
|
|
26
|
-
}
|