Skip to content

Commit a0a7c6f

Browse files
Merge remote-tracking branch 'origin/dev' into feat/proactive-bug-reporting
# Conflicts: # CHANGELOG.md # examples/default/ios/Podfile.lock # examples/default/package.json # examples/default/src/screens/apm/APMScreen.tsx # examples/default/yarn.lock
2 parents 864c941 + a9863bb commit a0a7c6f

File tree

8 files changed

+214
-80
lines changed

8 files changed

+214
-80
lines changed

android/src/main/java/com/instabug/reactlibrary/RNInstabugAPMModule.java

Lines changed: 74 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public String getName() {
4343
}
4444

4545
/**
46-
* Sets the printed logs priority. Filter to one of the following levels.
46+
* Pauses the current thread for 3 seconds.
4747
*/
4848
@ReactMethod
4949
public void ibgSleep() {
@@ -57,6 +57,7 @@ public void run() {
5757

5858
/**
5959
* Enables or disables APM.
60+
*
6061
* @param isEnabled boolean indicating enabled or disabled.
6162
*/
6263
@ReactMethod
@@ -75,6 +76,7 @@ public void run() {
7576

7677
/**
7778
* Enables or disables app launch tracking.
79+
*
7880
* @param isEnabled boolean indicating enabled or disabled.
7981
*/
8082
@ReactMethod
@@ -92,7 +94,7 @@ public void run() {
9294
}
9395

9496
/**
95-
* Ends app launch
97+
* This method is used to signal the end of the app launch process.
9698
*/
9799
@ReactMethod
98100
public void endAppLaunch() {
@@ -110,6 +112,7 @@ public void run() {
110112

111113
/**
112114
* Enables or disables auto UI tracing
115+
*
113116
* @param isEnabled boolean indicating enabled or disabled.
114117
*/
115118
@ReactMethod
@@ -281,6 +284,7 @@ public void run() {
281284

282285
/**
283286
* Starts a UI trace
287+
*
284288
* @param name string name of the UI trace.
285289
*/
286290
@ReactMethod
@@ -298,7 +302,7 @@ public void run() {
298302
}
299303

300304
/**
301-
* Ends the current running UI trace
305+
* This method is used to terminate the currently active UI trace.
302306
*/
303307
@ReactMethod
304308
public void endUITrace() {
@@ -314,6 +318,73 @@ public void run() {
314318
});
315319
}
316320

321+
/**
322+
* The `networkLogAndroid` function logs network-related information using APMNetworkLogger in a React
323+
* Native module.
324+
*
325+
* @param requestStartTime The `requestStartTime` parameter in the `networkLogAndroid` method
326+
* represents the timestamp when the network request started. It is of type `double` and is passed as
327+
* a parameter to log network-related information.
328+
* @param requestDuration The `requestDuration` parameter in the `networkLogAndroid` method represents
329+
* the duration of the network request in milliseconds. It indicates the time taken for the request to
330+
* complete from the moment it was initiated until the response was received. This parameter helps in
331+
* measuring the performance of network requests and identifying any potential
332+
* @param requestHeaders requestHeaders is a string parameter that contains the headers of the network
333+
* request. It typically includes information such as the content type, authorization token, and any
334+
* other headers that were sent with the request.
335+
* @param requestBody The `requestBody` parameter in the `networkLogAndroid` method represents the
336+
* body of the HTTP request being logged. It contains the data that is sent as part of the request to
337+
* the server. This could include form data, JSON payload, XML data, or any other content that is
338+
* being transmitted
339+
* @param requestBodySize The `requestBodySize` parameter in the `networkLogAndroid` method represents
340+
* the size of the request body in bytes. It is a double value that indicates the size of the request
341+
* body being sent in the network request. This parameter is used to log information related to the
342+
* network request, including details
343+
* @param requestMethod The `requestMethod` parameter in the `networkLogAndroid` method represents the
344+
* HTTP method used in the network request, such as GET, POST, PUT, DELETE, etc. It indicates the type
345+
* of operation that the client is requesting from the server.
346+
* @param requestUrl The `requestUrl` parameter in the `networkLogAndroid` method represents the URL
347+
* of the network request being logged. It typically contains the address of the server to which the
348+
* request is being made, along with any additional path or query parameters required for the request.
349+
* This URL is essential for identifying the
350+
* @param requestContentType The `requestContentType` parameter in the `networkLogAndroid` method
351+
* represents the content type of the request being made. This could be values like
352+
* "application/json", "application/xml", "text/plain", etc., indicating the format of the data being
353+
* sent in the request body. It helps in specifying
354+
* @param responseHeaders The `responseHeaders` parameter in the `networkLogAndroid` method represents
355+
* the headers of the response received from a network request. These headers typically include
356+
* information such as content type, content length, server information, and any other metadata
357+
* related to the response. The `responseHeaders` parameter is expected to
358+
* @param responseBody The `responseBody` parameter in the `networkLogAndroid` method represents the
359+
* body of the response received from a network request. It contains the data or content sent back by
360+
* the server in response to the request made by the client. This could be in various formats such as
361+
* JSON, XML, HTML
362+
* @param responseBodySize The `responseBodySize` parameter in the `networkLogAndroid` method
363+
* represents the size of the response body in bytes. It is a double value that indicates the size of
364+
* the response body received from the network request. This parameter is used to log information
365+
* related to the network request and response, including
366+
* @param statusCode The `statusCode` parameter in the `networkLogAndroid` method represents the HTTP
367+
* status code of the network request/response. It indicates the status of the HTTP response, such as
368+
* success (200), redirection (3xx), client errors (4xx), or server errors (5xx). This parameter is
369+
* @param responseContentType The `responseContentType` parameter in the `networkLogAndroid` method
370+
* represents the content type of the response received from the network request. It indicates the
371+
* format of the data in the response, such as JSON, XML, HTML, etc. This information is useful for
372+
* understanding how to parse and handle the
373+
* @param errorDomain The `errorDomain` parameter in the `networkLogAndroid` method is used to specify
374+
* the domain of an error, if any occurred during the network request. If there was no error, this
375+
* parameter will be `null`.
376+
* @param w3cAttributes The `w3cAttributes` parameter in the `networkLogAndroid` method is a
377+
* ReadableMap object that contains additional attributes related to W3C external trace. It may
378+
* include the following key-value pairs:
379+
* @param gqlQueryName The `gqlQueryName` parameter in the `networkLogAndroid` method represents the
380+
* name of the GraphQL query being executed. It is a nullable parameter, meaning it can be null if no
381+
* GraphQL query name is provided. This parameter is used to log information related to GraphQL
382+
* queries in the network logging
383+
* @param serverErrorMessage The `serverErrorMessage` parameter in the `networkLogAndroid` method is
384+
* used to pass any error message received from the server during network communication. This message
385+
* can provide additional details about any errors that occurred on the server side, helping in
386+
* debugging and troubleshooting network-related issues.
387+
*/
317388
@ReactMethod
318389
private void networkLogAndroid(final double requestStartTime,
319390
final double requestDuration,

examples/default/ios/Podfile.lock

Lines changed: 56 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -2018,77 +2018,77 @@ SPEC CHECKSUMS:
20182018
GoogleMaps: 032f676450ba0779bd8ce16840690915f84e57ac
20192019
hermes-engine: ea92f60f37dba025e293cbe4b4a548fd26b610a0
20202020
Instabug: 8cbca8974168c815658133e2813f5ac3a36f8e20
2021-
instabug-reactnative-ndk: e6f3fd45d6426aa7d37f479f153b5c2bdc1f5eb9
2021+
instabug-reactnative-ndk: d765ac289d56e8896398d02760d9abf2562fc641
20222022
OCMock: 589f2c84dacb1f5aaf6e4cec1f292551fe748e74
20232023
RCT-Folly: 4464f4d875961fce86008d45f4ecf6cef6de0740
20242024
RCTDeprecation: 726d24248aeab6d7180dac71a936bbca6a994ed1
20252025
RCTRequired: a94e7febda6db0345d207e854323c37e3a31d93b
20262026
RCTTypeSafety: 28e24a6e44f5cbf912c66dde6ab7e07d1059a205
20272027
React: c2830fa483b0334bda284e46a8579ebbe0c5447e
20282028
React-callinvoker: 4aecde929540c26b841a4493f70ebf6016691eb8
2029-
React-Core: 32a581847d74ce9b5f51d9d11a4e4d132ad61553
2030-
React-CoreModules: f53e0674e1747fa41c83bc970e82add97b14ad87
2031-
React-cxxreact: 86f3b1692081fd954a0cb27cc90d14674645b64b
2029+
React-Core: 9c059899f00d46b5cec3ed79251f77d9c469553d
2030+
React-CoreModules: 9fac2d31803c0ed03e4ddaa17f1481714f8633a5
2031+
React-cxxreact: a979810a3ca4045ceb09407a17563046a7f71494
20322032
React-debug: 3d21f69d8def0656f8b8ec25c0f05954f4d862c5
2033-
React-defaultsnativemodule: 2ed121c5a1edeab09cff382b8d9b538260f07848
2034-
React-domnativemodule: 4393dd5dd7e13dbe42e69ebc791064a616990f91
2035-
React-Fabric: cbf38ceefb1ac6236897abdb538130228e126695
2036-
React-FabricComponents: dd4b01c4a60920d8dc15f3b5594c6fe9e7648a38
2037-
React-FabricImage: 8b13aedfbd20f349b9b3314baf993c71c02995d9
2033+
React-defaultsnativemodule: 2fa2bdb7bd03ff9764facc04aa8520ebf14febae
2034+
React-domnativemodule: 986e6fe7569e1383dce452a7b013b6c843a752df
2035+
React-Fabric: 3bc7be9e3a6b7581fc828dc2aa041e107fc8ffb8
2036+
React-FabricComponents: 668e0cb02344c2942e4c8921a643648faa6dc364
2037+
React-FabricImage: 3f44dd25a2b020ed5215d4438a1bb1f3461cd4f1
20382038
React-featureflags: ee1abd6f71555604a36cda6476e3c502ca9a48e5
2039-
React-featureflagsnativemodule: 87b58caf3cd8eca1e53179453789def019af2a65
2040-
React-graphics: f5c4cf3abc5aa083e28fe7a866bd95fb3bbbc1e0
2041-
React-hermes: cad69ee9a53870cc38e5386889aa7ea81c75b6a1
2042-
React-idlecallbacksnativemodule: 445390be0f533797ace18c419eb57110dbfe90d6
2043-
React-ImageManager: cb78d7a24f45f8f9a5a1640b52fce4c9f637f98d
2044-
React-jserrorhandler: dfe9b96e99a93d4f4858bad66d5bc4813a87a21a
2045-
React-jsi: bc1f6073e203fb540edd6d26f926ad041809b443
2046-
React-jsiexecutor: 1e8fc70dd9614c3e9d5c3c876b2ea3cd1d931ee4
2047-
React-jsinspector: 7544a20e9beac390f1b65d9f0040d97cd55dc198
2048-
React-jsitracing: cac972ccc097db399df8044e49add8e5b25cb34a
2049-
React-logger: 80d87daf2f98bf95ab668b79062c1e0c3f0c2f8a
2050-
React-Mapbuffer: acffb35a53a5f474ede09f082ac609b41aafab2e
2051-
React-microtasksnativemodule: 71ca9282bce93b319218d75362c0d646b376eb43
2052-
react-native-background-timer: 4638ae3bee00320753647900b21260b10587b6f7
2053-
react-native-config: ea75335a7cca1d3326de1da384227e580a7c082e
2054-
react-native-google-maps: 98754480fbb4fd5ccd016d0f75a2168a6c84ebc5
2055-
react-native-maps: 6f92b1fd37f9421b171c977a42785270703875dc
2056-
react-native-safe-area-context: 8b8404e70b0cbf2a56428a17017c14c1dcc16448
2057-
react-native-slider: fc7f35c082abec47e341dfe43657a1c26f38db2f
2058-
react-native-webview: 042b9dfd509d23e7ebc07da06c38a8bcc4679d46
2039+
React-featureflagsnativemodule: 7ccc0cd666c2a6257401dceb7920818ac2b42803
2040+
React-graphics: d7dd9c8d75cad5af19e19911fa370f78f2febd96
2041+
React-hermes: 2069b08e965e48b7f8aa2c0ca0a2f383349ed55d
2042+
React-idlecallbacksnativemodule: e211b2099b6dced97959cb58257bab2b2de4d7ef
2043+
React-ImageManager: ab7a7d17dd0ff1ef1d4e1e88197d1119da9957ce
2044+
React-jserrorhandler: d9e867bb83b868472f3f7601883f0403b3e3942d
2045+
React-jsi: d68f1d516e5120a510afe356647a6a1e1f98f2db
2046+
React-jsiexecutor: 6366a08a0fc01c9b65736f8deacd47c4a397912a
2047+
React-jsinspector: 0ac947411f0c73b34908800cc7a6a31d8f93e1a8
2048+
React-jsitracing: 0e8c0aadb1fcec6b1e4f2a66ee3b0da80f0f8615
2049+
React-logger: d79b704bf215af194f5213a6b7deec50ba8e6a9b
2050+
React-Mapbuffer: b982d5bba94a8bc073bda48f0d27c9b28417fae3
2051+
React-microtasksnativemodule: 2b73e68f0462f3175f98782db08896f8501afd20
2052+
react-native-background-timer: 17ea5e06803401a379ebf1f20505b793ac44d0fe
2053+
react-native-config: 8f7283449bbb048902f4e764affbbf24504454af
2054+
react-native-google-maps: 1bcc1f9f13f798fcf230db7fe476f3566d0bc0a3
2055+
react-native-maps: 72a8a903f8a1b53e2c777ba79102078ab502e0bf
2056+
react-native-safe-area-context: 142fade490cbebbe428640b8cbdb09daf17e8191
2057+
react-native-slider: 4a0f3386a38fc3d2d955efc515aef7096f7d1ee4
2058+
react-native-webview: c0b91a4598bd54e9fbc70353aebf1e9bab2e5bb9
20592059
React-nativeconfig: 8c83d992b9cc7d75b5abe262069eaeea4349f794
2060-
React-NativeModulesApple: 97f606f09fd9840b3868333984d6a0e7bcc425b5
2060+
React-NativeModulesApple: 9f7920224a3b0c7d04d77990067ded14cee3c614
20612061
React-perflogger: 59e1a3182dca2cee7b9f1f7aab204018d46d1914
2062-
React-performancetimeline: 3e3f5c5576fe1cc2dd5fcfb1ae2046d5dceda3d7
2062+
React-performancetimeline: a9d05533ff834c6aa1f532e05e571f3fd2e3c1ed
20632063
React-RCTActionSheet: d80e68d3baa163e4012a47c1f42ddd8bcd9672cc
2064-
React-RCTAnimation: 051f0781709c5ed80ba8aa2b421dfb1d72a03162
2065-
React-RCTAppDelegate: 106d225d076988b06aa4834e68d1ab754f40cacf
2066-
React-RCTBlob: 895eaf8bca2e76ee1c95b479235c6ccebe586fc6
2067-
React-RCTFabric: 8d01df202ee9e933f9b5dd44b72ec89a7ac6ee01
2068-
React-RCTImage: b73149c0cd54b641dba2d6250aaf168fee784d9f
2069-
React-RCTLinking: 23e519712285427e50372fbc6e0265d422abf462
2070-
React-RCTNetwork: a5d06d122588031989115f293654b13353753630
2071-
React-RCTSettings: 87d03b5d94e6eadd1e8c1d16a62f790751aafb55
2072-
React-RCTText: 75e9dd39684f4bcd1836134ac2348efaca7437b3
2073-
React-RCTVibration: 033c161fe875e6fa096d0d9733c2e2501682e3d4
2064+
React-RCTAnimation: bde981f6bd7f8493696564da9b3bd05721d3b3cc
2065+
React-RCTAppDelegate: 0176615c51476c88212bf3edbafb840d39ea7631
2066+
React-RCTBlob: 520a0382bf8e89b9153d60e3c6293e51615834e9
2067+
React-RCTFabric: c9da097b19b30017a99498b8c66a69c72f3ce689
2068+
React-RCTImage: 90448d2882464af6015ed57c98f463f8748be465
2069+
React-RCTLinking: 1bd95d0a704c271d21d758e0f0388cced768d77d
2070+
React-RCTNetwork: 218af6e63eb9b47935cc5a775b7a1396cf10ff91
2071+
React-RCTSettings: e10b8e42b0fce8a70fbf169de32a2ae03243ef6b
2072+
React-RCTText: e7bf9f4997a1a0b45c052d4ad9a0fe653061cf29
2073+
React-RCTVibration: 5b70b7f11e48d1c57e0d4832c2097478adbabe93
20742074
React-rendererconsistency: f620c6e003e3c4593e6349d8242b8aeb3d4633f0
2075-
React-rendererdebug: 5be7b834677b2a7a263f4d2545f0d4966cafad82
2075+
React-rendererdebug: e697680f4dd117becc5daf9ea9800067abcee91c
20762076
React-rncore: c22bd84cc2f38947f0414fab6646db22ff4f80cd
2077-
React-RuntimeApple: 71160e6c02efa07d198b84ef5c3a52a7d9d0399d
2078-
React-RuntimeCore: f88f79ec995c12af56a265d7505c7630733d9d82
2077+
React-RuntimeApple: de0976836b90b484305638616898cbc665c67c13
2078+
React-RuntimeCore: 3c4a5aa63d9e7a3c17b7fb23f32a72a8bcfccf57
20792079
React-runtimeexecutor: ea90d8e3a9e0f4326939858dafc6ab17c031a5d3
2080-
React-RuntimeHermes: 49f86328914021f50fd5a5b9756685f5f6d8b4da
2081-
React-runtimescheduler: fed70991b942c6df752a59a22081e45fc811b11c
2082-
React-utils: 02526ea15628a768b8db9517b6017a1785c734d2
2083-
ReactCodegen: 8b5341ecb61898b8bd40a73ebc443c6bf2d14423
2084-
ReactCommon: 36d48f542b4010786d6b2bcee615fe5f906b7105
2085-
RNCClipboard: 7c3e3b5f71d84ef61690ad377b6c50cf27864ff5
2086-
RNGestureHandler: 27a63f2218affdf1a426d56682f9b174904838b3
2087-
RNInstabug: 247e57d55418012a1c01849a9d988e0739e74a05
2088-
RNReanimated: 8bf536bd3964d10a9bacabf179897e79f6bea34f
2089-
RNScreens: 35bb8e81aeccf111baa0ea01a54231390dbbcfd9
2090-
RNSVG: 8542aa11770b27563714bbd8494a8436385fc85f
2091-
RNVectorIcons: 182892e7d1a2f27b52d3c627eca5d2665a22ee28
2080+
React-RuntimeHermes: c6b0afdf1f493621214eeb6517fb859ce7b21b81
2081+
React-runtimescheduler: 84f0d876d254bce6917a277b3930eb9bc29df6c7
2082+
React-utils: cbe8b8b3d7b2ac282e018e46f0e7b25cdc87c5a0
2083+
ReactCodegen: 4bcb34e6b5ebf6eef5cee34f55aa39991ea1c1f1
2084+
ReactCommon: 6a952e50c2a4b694731d7682aaa6c79bc156e4ad
2085+
RNCClipboard: 2821ac938ef46f736a8de0c8814845dde2dcbdfb
2086+
RNGestureHandler: 511250b190a284388f9dd0d2e56c1df76f14cfb8
2087+
RNInstabug: 96e629f47c0af2e9455fbcf800d12049f980d873
2088+
RNReanimated: f42a5044d121d68e91680caacb0293f4274228eb
2089+
RNScreens: c7ceced6a8384cb9be5e7a5e88e9e714401fd958
2090+
RNSVG: 8b1a777d54096b8c2a0fd38fc9d5a454332bbb4d
2091+
RNVectorIcons: 6382277afab3c54658e9d555ee0faa7a37827136
20922092
SocketRocket: abac6f5de4d4d62d24e11868d7a2f427e0ef940d
20932093
Yoga: 055f92ad73f8c8600a93f0e25ac0b2344c3b07e6
20942094

examples/default/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"react-native-screens": "^3.35.0",
3333
"react-native-svg": "^15.8.0",
3434
"react-native-vector-icons": "^10.2.0",
35-
"react-native-webview": "^13.12.3",
35+
"react-native-webview": "^13.13.2",
3636
"react-query": "^3.39.3"
3737
},
3838
"devDependencies": {
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import React from 'react';
2+
import { type DimensionValue, View } from 'react-native';
3+
4+
// Define the component type with static properties
5+
interface CustomGapComponent extends React.FC<{ height?: DimensionValue; width?: DimensionValue }> {
6+
small: JSX.Element;
7+
smallV: JSX.Element;
8+
smallH: JSX.Element;
9+
large: JSX.Element;
10+
largeV: JSX.Element;
11+
largeH: JSX.Element;
12+
}
13+
14+
const defaultDimensionValue = 16;
15+
16+
// Define the CustomGap component
17+
const CustomGap: CustomGapComponent = ({ height, width }) => {
18+
return (
19+
<View
20+
style={{ width: width ?? defaultDimensionValue, height: height ?? defaultDimensionValue }}
21+
/>
22+
);
23+
};
24+
25+
// Assign static properties for predefined gaps
26+
CustomGap.small = <CustomGap height={8} width={8} />;
27+
CustomGap.large = <CustomGap height={32} width={32} />;
28+
CustomGap.smallV = <CustomGap height={8} />;
29+
CustomGap.largeV = <CustomGap height={32} />;
30+
CustomGap.smallH = <CustomGap width={8} />;
31+
CustomGap.largeH = <CustomGap width={32} />;
32+
33+
export default CustomGap;

examples/default/src/screens/apm/APMScreen.tsx

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import type { HomeStackParamList } from '../../navigation/HomeStack';
33
import React, { useState } from 'react';
44
import { ListTile } from '../../components/ListTile';
55
import { Screen } from '../../components/Screen';
6-
import { Text, Switch } from 'react-native';
6+
import { StyleSheet, Switch, Text, View } from 'react-native';
77
import { APM } from 'instabug-reactnative';
88
import { showNotification } from '../../utils/showNotification';
9+
import CustomGap from '../../components/CustomGap';
910

1011
export const APMScreen: React.FC<NativeStackScreenProps<HomeStackParamList, 'APM'>> = ({
1112
navigation,
@@ -17,16 +18,26 @@ export const APMScreen: React.FC<NativeStackScreenProps<HomeStackParamList, 'APM
1718
APM.setEnabled(value);
1819
showNotification('APM status', 'APM enabled set to ' + value);
1920
};
21+
const styles = StyleSheet.create({
22+
switch: {
23+
flexDirection: 'row',
24+
justifyContent: 'space-between',
25+
},
26+
});
2027

2128
return (
2229
<Screen>
23-
<Text>Enable APM:</Text>
24-
<Switch onValueChange={toggleSwitch} value={isEnabled} />
30+
<View style={styles.switch}>
31+
<Text>Enable APM:</Text>
32+
<Switch onValueChange={toggleSwitch} value={isEnabled} />
33+
</View>
34+
{CustomGap.smallV}
2535
<ListTile title="End App launch" onPress={() => APM.endAppLaunch()} />
2636
<ListTile title="Network Screen" onPress={() => navigation.navigate('NetworkTraces')} />
2737
<ListTile title="Traces" onPress={() => navigation.navigate('ExecutionTraces')} />
2838
<ListTile title="Flows" onPress={() => navigation.navigate('AppFlows')} />
2939
<ListTile title="WebViews" onPress={() => navigation.navigate('WebViews')} />
40+
<ListTile title="Complex Views" onPress={() => navigation.navigate('ComplexViews')} />
3041
</Screen>
3142
);
3243
};

examples/default/yarn.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6329,10 +6329,10 @@ react-native-vector-icons@^10.2.0:
63296329
prop-types "^15.7.2"
63306330
yargs "^16.1.1"
63316331

6332-
react-native-webview@^13.12.3:
6333-
version "13.12.3"
6334-
resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-13.12.3.tgz#3aa9d2fc982ba2681e56d3e96e22b63a0d929270"
6335-
integrity sha512-Y1I5YyDYyE7NC96RHLhd2nxh7ymLYOYLTefgx5ixxw2OToQK0ow3OJ+o77QcI1Tuevj5PCxwqC/14ceS/7yPJQ==
6332+
react-native-webview@^13.13.2:
6333+
version "13.13.2"
6334+
resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-13.13.2.tgz#6d72fd8492f11accbcf3be4d1386fa961e424357"
6335+
integrity sha512-zACPDTF0WnaEnKZ9mA/r/UpcOpV2gQM06AAIrOOexnO8UJvXL8Pjso0b/wTqKFxUZZnmjKuwd8gHVUosVOdVrw==
63366336
dependencies:
63376337
escape-string-regexp "^4.0.0"
63386338
invariant "2.2.4"

0 commit comments

Comments
 (0)