react-native-instantpay-code-push 1.1.0 → 1.1.3
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/build.gradle +1 -1
- package/android/proguard-rules.pro +17 -0
- package/lib/module/DefaultResolver.js +16 -3
- package/lib/module/DefaultResolver.js.map +1 -1
- package/lib/module/fetchUpdateInfo.js +5 -2
- package/lib/module/fetchUpdateInfo.js.map +1 -1
- package/lib/typescript/src/DefaultResolver.d.ts.map +1 -1
- package/lib/typescript/src/fetchUpdateInfo.d.ts +2 -1
- package/lib/typescript/src/fetchUpdateInfo.d.ts.map +1 -1
- package/package.json +8 -4
- package/src/DefaultResolver.ts +17 -2
- package/src/fetchUpdateInfo.ts +4 -0
package/android/build.gradle
CHANGED
|
@@ -33,7 +33,7 @@ android {
|
|
|
33
33
|
defaultConfig {
|
|
34
34
|
minSdkVersion getExtOrIntegerDefault("minSdkVersion")
|
|
35
35
|
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
|
|
36
|
-
|
|
36
|
+
consumerProguardFiles 'proguard-rules.pro'
|
|
37
37
|
buildConfigField "long", "BUILD_TIMESTAMP", "${System.currentTimeMillis()}L" //Added For IpayCodePush
|
|
38
38
|
|
|
39
39
|
//Added For IpayCodePush
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Old Architecture
|
|
2
|
+
# Invoked via reflection, when setting js bundle.
|
|
3
|
+
-keepclassmembers class com.facebook.react.ReactInstanceManager {
|
|
4
|
+
private final ** mBundleLoader;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
# New Architecture
|
|
8
|
+
# Keep fields accessed via reflection in ReactHost
|
|
9
|
+
# Support both Java (mReactHostDelegate) and Kotlin (reactHostDelegate) field names
|
|
10
|
+
-keepclassmembers class com.facebook.react.runtime.ReactHostImpl {
|
|
11
|
+
private final ** mReactHostDelegate;
|
|
12
|
+
private final ** reactHostDelegate;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
-keepclassmembers class * implements com.facebook.react.runtime.ReactHostDelegate {
|
|
16
|
+
** jsBundleLoader;
|
|
17
|
+
}
|
|
@@ -13,20 +13,33 @@ export function createDefaultResolver(baseURL) {
|
|
|
13
13
|
checkUpdate: async params => {
|
|
14
14
|
// Build URL based on strategy (existing buildUpdateUrl logic)
|
|
15
15
|
let url;
|
|
16
|
+
let payloadData = {
|
|
17
|
+
platform: params.platform.toUpperCase(),
|
|
18
|
+
channel: params.channel.toUpperCase(),
|
|
19
|
+
minBundleId: params.minBundleId,
|
|
20
|
+
bundleId: params.bundleId,
|
|
21
|
+
actionType: '',
|
|
22
|
+
actionValue: ''
|
|
23
|
+
};
|
|
16
24
|
if (params.updateStrategy === "fingerprint") {
|
|
17
25
|
if (!params.fingerprintHash) {
|
|
18
26
|
throw new Error("Fingerprint hash is required");
|
|
19
27
|
}
|
|
20
|
-
url = `${baseURL}
|
|
28
|
+
url = `${baseURL}`;
|
|
29
|
+
payloadData['actionType'] = 'FINGERPRINT';
|
|
30
|
+
payloadData['actionValue'] = params.fingerprintHash;
|
|
21
31
|
} else {
|
|
22
|
-
url = `${baseURL}
|
|
32
|
+
url = `${baseURL}`;
|
|
33
|
+
payloadData['actionType'] = 'APP_VERSION';
|
|
34
|
+
payloadData['actionValue'] = params.appVersion;
|
|
23
35
|
}
|
|
24
36
|
|
|
25
37
|
// Use existing fetchUpdateInfo
|
|
26
38
|
return fetchUpdateInfo({
|
|
27
39
|
url,
|
|
28
40
|
requestHeaders: params.requestHeaders,
|
|
29
|
-
requestTimeout: params.requestTimeout
|
|
41
|
+
requestTimeout: params.requestTimeout,
|
|
42
|
+
payload: payloadData
|
|
30
43
|
});
|
|
31
44
|
}
|
|
32
45
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fetchUpdateInfo","createDefaultResolver","baseURL","checkUpdate","params","url","
|
|
1
|
+
{"version":3,"names":["fetchUpdateInfo","createDefaultResolver","baseURL","checkUpdate","params","url","payloadData","platform","toUpperCase","channel","minBundleId","bundleId","actionType","actionValue","updateStrategy","fingerprintHash","Error","appVersion","requestHeaders","requestTimeout","payload"],"sourceRoot":"../../src","sources":["DefaultResolver.ts"],"mappings":";;AACA,SAASA,eAAe,QAAQ,sBAAmB;AAGnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAACC,OAAe,EAAwB;EACzE,OAAO;IACHC,WAAW,EAAE,MACTC,MAAiC,IACD;MAChC;MACA,IAAIC,GAAW;MAEf,IAAIC,WAAW,GAAG;QACdC,QAAQ,EAAIH,MAAM,CAACG,QAAQ,CAAEC,WAAW,CAAC,CAAC;QAC1CC,OAAO,EAAIL,MAAM,CAACK,OAAO,CAAED,WAAW,CAAC,CAAC;QACxCE,WAAW,EAAGN,MAAM,CAACM,WAAW;QAChCC,QAAQ,EAAGP,MAAM,CAACO,QAAQ;QAC1BC,UAAU,EAAG,EAAE;QACfC,WAAW,EAAG;MAClB,CAAC;MAED,IAAIT,MAAM,CAACU,cAAc,KAAK,aAAa,EAAE;QACzC,IAAI,CAACV,MAAM,CAACW,eAAe,EAAE;UACzB,MAAM,IAAIC,KAAK,CAAC,8BAA8B,CAAC;QACnD;QACAX,GAAG,GAAG,GAAGH,OAAO,EAAE;QAClBI,WAAW,CAAC,YAAY,CAAC,GAAG,aAAa;QACzCA,WAAW,CAAC,aAAa,CAAC,GAAGF,MAAM,CAACW,eAAe;MACvD,CAAC,MAAM;QACHV,GAAG,GAAG,GAAGH,OAAO,EAAE;QAClBI,WAAW,CAAC,YAAY,CAAC,GAAG,aAAa;QACzCA,WAAW,CAAC,aAAa,CAAC,GAAGF,MAAM,CAACa,UAAU;MAClD;;MAEA;MACA,OAAOjB,eAAe,CAAC;QACnBK,GAAG;QACHa,cAAc,EAAEd,MAAM,CAACc,cAAc;QACrCC,cAAc,EAAEf,MAAM,CAACe,cAAc;QACrCC,OAAO,EAAGd;MACd,CAAC,CAAC;IACN;EACJ,CAAC;AACL","ignoreList":[]}
|
|
@@ -4,7 +4,8 @@ export const fetchUpdateInfo = async ({
|
|
|
4
4
|
url,
|
|
5
5
|
requestHeaders,
|
|
6
6
|
onError,
|
|
7
|
-
requestTimeout = 5000
|
|
7
|
+
requestTimeout = 5000,
|
|
8
|
+
payload
|
|
8
9
|
}) => {
|
|
9
10
|
try {
|
|
10
11
|
const controller = new AbortController();
|
|
@@ -17,7 +18,9 @@ export const fetchUpdateInfo = async ({
|
|
|
17
18
|
};
|
|
18
19
|
const response = await fetch(url, {
|
|
19
20
|
signal: controller.signal,
|
|
20
|
-
headers
|
|
21
|
+
headers,
|
|
22
|
+
method: "POST",
|
|
23
|
+
body: JSON.stringify(payload)
|
|
21
24
|
});
|
|
22
25
|
clearTimeout(timeoutId);
|
|
23
26
|
if (response.status !== 200) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["fetchUpdateInfo","url","requestHeaders","onError","requestTimeout","controller","AbortController","timeoutId","setTimeout","abort","headers","response","fetch","signal","clearTimeout","status","Error","statusText","json","error","name"],"sourceRoot":"../../src","sources":["fetchUpdateInfo.ts"],"mappings":";;AAEA,OAAO,MAAMA,eAAe,GAAG,MAAAA,CAAO;EAClCC,GAAG;EACHC,cAAc;EACdC,OAAO;EACPC,cAAc,GAAG;
|
|
1
|
+
{"version":3,"names":["fetchUpdateInfo","url","requestHeaders","onError","requestTimeout","payload","controller","AbortController","timeoutId","setTimeout","abort","headers","response","fetch","signal","method","body","JSON","stringify","clearTimeout","status","Error","statusText","json","error","name"],"sourceRoot":"../../src","sources":["fetchUpdateInfo.ts"],"mappings":";;AAEA,OAAO,MAAMA,eAAe,GAAG,MAAAA,CAAO;EAClCC,GAAG;EACHC,cAAc;EACdC,OAAO;EACPC,cAAc,GAAG,IAAI;EACrBC;AAOJ,CAAC,KAAoC;EACjC,IAAI;IACA,MAAMC,UAAU,GAAG,IAAIC,eAAe,CAAC,CAAC;IACxC,MAAMC,SAAS,GAAGC,UAAU,CAAC,MAAM;MAC/BH,UAAU,CAACI,KAAK,CAAC,CAAC;IACtB,CAAC,EAAEN,cAAc,CAAC;IAElB,MAAMO,OAAO,GAAG;MACZ,cAAc,EAAE,kBAAkB;MAClC,GAAGT;IACP,CAAC;IAED,MAAMU,QAAQ,GAAG,MAAMC,KAAK,CAACZ,GAAG,EAAE;MAC9Ba,MAAM,EAAER,UAAU,CAACQ,MAAM;MACzBH,OAAO;MACPI,MAAM,EAAE,MAAM;MACdC,IAAI,EAAGC,IAAI,CAACC,SAAS,CAACb,OAAO;IACjC,CAAC,CAAC;IAEFc,YAAY,CAACX,SAAS,CAAC;IAEvB,IAAII,QAAQ,CAACQ,MAAM,KAAK,GAAG,EAAE;MACzB,MAAM,IAAIC,KAAK,CAACT,QAAQ,CAACU,UAAU,CAAC;IACxC;IAEA,OAAOV,QAAQ,CAACW,IAAI,CAAC,CAAC;EAC1B,CAAC,CAAC,OAAOC,KAAc,EAAE;IAErB,IAAIA,KAAK,YAAYH,KAAK,IAAIG,KAAK,CAACC,IAAI,KAAK,YAAY,EAAE;MACvDtB,OAAO,GAAG,IAAIkB,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7C,CAAC,MAAM;MACHlB,OAAO,GAAGqB,KAAc,CAAC;IAC7B;IAEA,OAAO,IAAI;EACf;AACJ,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultResolver.d.ts","sourceRoot":"","sources":["../../../src/DefaultResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAA6B,MAAM,SAAS,CAAC;AAE/E;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,
|
|
1
|
+
{"version":3,"file":"DefaultResolver.d.ts","sourceRoot":"","sources":["../../../src/DefaultResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAA6B,MAAM,SAAS,CAAC;AAE/E;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAuC3E"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { AppUpdateInfo } from "./types";
|
|
2
|
-
export declare const fetchUpdateInfo: ({ url, requestHeaders, onError, requestTimeout, }: {
|
|
2
|
+
export declare const fetchUpdateInfo: ({ url, requestHeaders, onError, requestTimeout, payload }: {
|
|
3
3
|
url: string;
|
|
4
4
|
requestHeaders?: Record<string, string>;
|
|
5
5
|
onError?: (error: Error) => void;
|
|
6
6
|
requestTimeout?: number;
|
|
7
|
+
payload: Record<string, string>;
|
|
7
8
|
}) => Promise<AppUpdateInfo | null>;
|
|
8
9
|
//# sourceMappingURL=fetchUpdateInfo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchUpdateInfo.d.ts","sourceRoot":"","sources":["../../../src/fetchUpdateInfo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,eAAO,MAAM,eAAe,GAAU,
|
|
1
|
+
{"version":3,"file":"fetchUpdateInfo.d.ts","sourceRoot":"","sources":["../../../src/fetchUpdateInfo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,eAAO,MAAM,eAAe,GAAU,2DAMnC;IACC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,KAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAoC/B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-instantpay-code-push",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"description": "React Native plugin for the CodePush service",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -38,13 +38,17 @@
|
|
|
38
38
|
"typecheck": "tsc",
|
|
39
39
|
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
40
40
|
"test": "jest",
|
|
41
|
-
"release": "release-it --only-version"
|
|
42
|
-
"generateBundle" : "ruby generateBundle.rb --projectDir /var/www/npm-package/react-native-instantpay-code-push/example --platform ANDROID --enableHermes true"
|
|
41
|
+
"release": "release-it --only-version"
|
|
43
42
|
},
|
|
44
43
|
"keywords": [
|
|
45
44
|
"react-native",
|
|
46
45
|
"ios",
|
|
47
|
-
"android"
|
|
46
|
+
"android",
|
|
47
|
+
"ipay",
|
|
48
|
+
"instantpay",
|
|
49
|
+
"code-push",
|
|
50
|
+
"over-the-air",
|
|
51
|
+
"ipaycodepush"
|
|
48
52
|
],
|
|
49
53
|
"repository": {
|
|
50
54
|
"type": "git",
|
package/src/DefaultResolver.ts
CHANGED
|
@@ -16,13 +16,27 @@ export function createDefaultResolver(baseURL: string): IpayCodePushResolver {
|
|
|
16
16
|
): Promise<AppUpdateInfo | null> => {
|
|
17
17
|
// Build URL based on strategy (existing buildUpdateUrl logic)
|
|
18
18
|
let url: string;
|
|
19
|
+
|
|
20
|
+
let payloadData = {
|
|
21
|
+
platform : (params.platform).toUpperCase(),
|
|
22
|
+
channel : (params.channel).toUpperCase(),
|
|
23
|
+
minBundleId : params.minBundleId,
|
|
24
|
+
bundleId : params.bundleId,
|
|
25
|
+
actionType : '',
|
|
26
|
+
actionValue : '',
|
|
27
|
+
}
|
|
28
|
+
|
|
19
29
|
if (params.updateStrategy === "fingerprint") {
|
|
20
30
|
if (!params.fingerprintHash) {
|
|
21
31
|
throw new Error("Fingerprint hash is required");
|
|
22
32
|
}
|
|
23
|
-
url = `${baseURL}
|
|
33
|
+
url = `${baseURL}`;
|
|
34
|
+
payloadData['actionType'] = 'FINGERPRINT';
|
|
35
|
+
payloadData['actionValue'] = params.fingerprintHash;
|
|
24
36
|
} else {
|
|
25
|
-
url = `${baseURL}
|
|
37
|
+
url = `${baseURL}`;
|
|
38
|
+
payloadData['actionType'] = 'APP_VERSION';
|
|
39
|
+
payloadData['actionValue'] = params.appVersion;
|
|
26
40
|
}
|
|
27
41
|
|
|
28
42
|
// Use existing fetchUpdateInfo
|
|
@@ -30,6 +44,7 @@ export function createDefaultResolver(baseURL: string): IpayCodePushResolver {
|
|
|
30
44
|
url,
|
|
31
45
|
requestHeaders: params.requestHeaders,
|
|
32
46
|
requestTimeout: params.requestTimeout,
|
|
47
|
+
payload : payloadData,
|
|
33
48
|
});
|
|
34
49
|
},
|
|
35
50
|
};
|
package/src/fetchUpdateInfo.ts
CHANGED
|
@@ -5,11 +5,13 @@ export const fetchUpdateInfo = async ({
|
|
|
5
5
|
requestHeaders,
|
|
6
6
|
onError,
|
|
7
7
|
requestTimeout = 5000,
|
|
8
|
+
payload
|
|
8
9
|
}: {
|
|
9
10
|
url: string;
|
|
10
11
|
requestHeaders?: Record<string, string>;
|
|
11
12
|
onError?: (error: Error) => void;
|
|
12
13
|
requestTimeout?: number;
|
|
14
|
+
payload: Record<string, string>;
|
|
13
15
|
}): Promise<AppUpdateInfo | null> => {
|
|
14
16
|
try {
|
|
15
17
|
const controller = new AbortController();
|
|
@@ -25,6 +27,8 @@ export const fetchUpdateInfo = async ({
|
|
|
25
27
|
const response = await fetch(url, {
|
|
26
28
|
signal: controller.signal,
|
|
27
29
|
headers,
|
|
30
|
+
method: "POST",
|
|
31
|
+
body : JSON.stringify(payload)
|
|
28
32
|
});
|
|
29
33
|
|
|
30
34
|
clearTimeout(timeoutId);
|