react-native-instantpay-code-push 1.1.7 → 1.1.9
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/InstantpayCodePush.podspec +4 -0
- package/android/src/main/java/com/instantpaycodepush/InstantpayCodePushModule.kt +20 -2
- package/android/src/main/java/com/instantpaycodepush/IpayCodePush.kt +5 -0
- package/android/src/main/java/com/instantpaycodepush/SignatureVerifier.kt +139 -0
- package/ios/BundleFileStorageService.swift +1269 -0
- package/ios/BundleMetadata.swift +208 -0
- package/ios/DecompressService.swift +116 -0
- package/ios/FileManagerService.swift +104 -0
- package/ios/HashUtils.swift +73 -0
- package/ios/InstantpayCodePush-Bridging-Header.h +16 -0
- package/ios/InstantpayCodePush.h +39 -1
- package/ios/InstantpayCodePush.mm +332 -4
- package/ios/IpayCodePushHelper.swift +57 -0
- package/ios/IpayCodePushImpl.swift +297 -0
- package/ios/NotificationExtension.swift +13 -0
- package/ios/SignatureVerifier.swift +358 -0
- package/ios/URLSessionDownloadService.swift +251 -0
- package/ios/VersionedPreferencesService.swift +93 -0
- package/ios/ZipDecompressionStrategy.swift +175 -0
- package/lib/module/NativeInstantpayCodePush.js.map +1 -1
- package/lib/module/error.js +6 -0
- package/lib/module/error.js.map +1 -1
- package/lib/module/index.js +12 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/native.js +10 -0
- package/lib/module/native.js.map +1 -1
- package/lib/module/types.js +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/src/NativeInstantpayCodePush.d.ts +1 -0
- package/lib/typescript/src/NativeInstantpayCodePush.d.ts.map +1 -1
- package/lib/typescript/src/error.d.ts +6 -0
- package/lib/typescript/src/error.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +10 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/native.d.ts +6 -0
- package/lib/typescript/src/native.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/NativeInstantpayCodePush.ts +1 -0
- package/src/error.ts +7 -0
- package/src/index.tsx +13 -0
- package/src/native.ts +11 -0
- package/src/types.ts +2 -1
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
//
|
|
2
|
+
// VersionedPreferencesService.swift
|
|
3
|
+
// InstantpayCodePush
|
|
4
|
+
//
|
|
5
|
+
// Created by Dhananjay kumar on 09/02/26.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
|
|
10
|
+
enum PreferencesError: Error {
|
|
11
|
+
case configurationError
|
|
12
|
+
case setItemError(String)
|
|
13
|
+
case getItemError(String)
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
protocol PreferencesService {
|
|
17
|
+
func setItem(_ value: String?, forKey key: String) throws
|
|
18
|
+
func getItem(forKey key: String) throws -> String?
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
class VersionedPreferencesService: PreferencesService {
|
|
22
|
+
|
|
23
|
+
private let userDefaults: UserDefaults
|
|
24
|
+
private var isolationKey: String = ""
|
|
25
|
+
|
|
26
|
+
let CLASS_TAG = "*PreferencesService"
|
|
27
|
+
|
|
28
|
+
init(userDefaults: UserDefaults = .standard) {
|
|
29
|
+
self.userDefaults = userDefaults
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Configures the service with isolation key.
|
|
34
|
+
* @param isolationKey The complete isolation key to use for storage
|
|
35
|
+
*/
|
|
36
|
+
func configure(isolationKey: String) {
|
|
37
|
+
self.isolationKey = isolationKey
|
|
38
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Configured with isolation key: \(self.isolationKey)")
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Creates a prefixed key for UserDefaults storage.
|
|
43
|
+
* @param key The base key to prefix
|
|
44
|
+
* @return The prefixed key
|
|
45
|
+
* @throws PreferencesError if configuration is missing
|
|
46
|
+
*/
|
|
47
|
+
private func prefixedKey(forKey key: String) throws -> String {
|
|
48
|
+
guard !isolationKey.isEmpty else {
|
|
49
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Warning: PreferencesService used before configure(isolationKey:) was called. Isolation key is empty.")
|
|
50
|
+
throw PreferencesError.configurationError
|
|
51
|
+
}
|
|
52
|
+
return "\(isolationKey)\(key)"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Sets a value in preferences.
|
|
57
|
+
* @param value The value to store (or nil to remove)
|
|
58
|
+
* @param key The key to store under
|
|
59
|
+
* @throws PreferencesError if key prefixing fails
|
|
60
|
+
*/
|
|
61
|
+
func setItem(_ value: String?, forKey key: String) throws {
|
|
62
|
+
do {
|
|
63
|
+
let fullKey = try prefixedKey(forKey: key)
|
|
64
|
+
if let valueToSet = value {
|
|
65
|
+
userDefaults.set(valueToSet, forKey: fullKey)
|
|
66
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Set '\(fullKey)' = '\(valueToSet)'")
|
|
67
|
+
} else {
|
|
68
|
+
userDefaults.removeObject(forKey: fullKey)
|
|
69
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Removed '\(fullKey)'")
|
|
70
|
+
}
|
|
71
|
+
} catch {
|
|
72
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Error setting key '\(key)': \(error)")
|
|
73
|
+
throw PreferencesError.setItemError(key)
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Gets a value from preferences.
|
|
79
|
+
* @param key The key to retrieve
|
|
80
|
+
* @return The stored value or nil if not found
|
|
81
|
+
* @throws PreferencesError if key prefixing fails
|
|
82
|
+
*/
|
|
83
|
+
func getItem(forKey key: String) throws -> String? {
|
|
84
|
+
do {
|
|
85
|
+
let fullKey = try prefixedKey(forKey: key)
|
|
86
|
+
return userDefaults.string(forKey: fullKey)
|
|
87
|
+
} catch {
|
|
88
|
+
IpayCodePushHelper.logPrint(classTag: self.CLASS_TAG, log: "Error getting key '\(key)': \(error)")
|
|
89
|
+
throw PreferencesError.getItemError(key)
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
//
|
|
2
|
+
// ZipDecompressionStrategy.swift
|
|
3
|
+
// InstantpayCodePush
|
|
4
|
+
//
|
|
5
|
+
// Created by Dhananjay kumar on 09/02/26.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
import SWCompression
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Strategy for handling ZIP compressed files
|
|
13
|
+
*/
|
|
14
|
+
class ZipDecompressionStrategy: DecompressionStrategy {
|
|
15
|
+
|
|
16
|
+
private static let ZIP_MAGIC_NUMBER: [UInt8] = [0x50, 0x4B, 0x03, 0x04]
|
|
17
|
+
private static let MIN_ZIP_SIZE: UInt64 = 22
|
|
18
|
+
let CLASS_TAG = "ZipStrategy"
|
|
19
|
+
|
|
20
|
+
func isValid(file: String) -> Bool {
|
|
21
|
+
guard FileManager.default.fileExists(atPath: file) else {
|
|
22
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: file doesn't exist")
|
|
23
|
+
return false
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
do {
|
|
27
|
+
let attributes = try FileManager.default.attributesOfItem(atPath: file)
|
|
28
|
+
guard let fileSize = attributes[.size] as? UInt64, fileSize >= Self.MIN_ZIP_SIZE else {
|
|
29
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: file too small")
|
|
30
|
+
return false
|
|
31
|
+
}
|
|
32
|
+
} catch {
|
|
33
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: cannot read attributes - \(error.localizedDescription)")
|
|
34
|
+
return false
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
guard let fileHandle = FileHandle(forReadingAtPath: file) else {
|
|
38
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: cannot open file")
|
|
39
|
+
return false
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
defer {
|
|
43
|
+
fileHandle.closeFile()
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
guard let header = try? fileHandle.read(upToCount: 4), header.count == 4 else {
|
|
47
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: cannot read header")
|
|
48
|
+
return false
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
let magicBytes = [UInt8](header)
|
|
52
|
+
guard magicBytes == Self.ZIP_MAGIC_NUMBER else {
|
|
53
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: wrong magic number")
|
|
54
|
+
return false
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
guard let zipData = try? Data(contentsOf: URL(fileURLWithPath: file)) else {
|
|
58
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: cannot read file data")
|
|
59
|
+
return false
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
do {
|
|
63
|
+
_ = try ZipContainer.open(container: zipData)
|
|
64
|
+
return true
|
|
65
|
+
} catch {
|
|
66
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Invalid ZIP: structure validation failed - \(error.localizedDescription)")
|
|
67
|
+
return false
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
func decompress(file: String, to destination: String, progressHandler: @escaping (Double) -> Void) throws {
|
|
72
|
+
|
|
73
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Starting extraction of \(file) to \(destination)")
|
|
74
|
+
|
|
75
|
+
guard let zipData = try? Data(contentsOf: URL(fileURLWithPath: file)) else {
|
|
76
|
+
throw NSError(
|
|
77
|
+
domain: "IpayCodePush",
|
|
78
|
+
code: 1,
|
|
79
|
+
userInfo: [NSLocalizedDescriptionKey: "Failed to read ZIP file at: \(file)"]
|
|
80
|
+
)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
progressHandler(0.1)
|
|
84
|
+
|
|
85
|
+
let zipEntries: [ZipEntry]
|
|
86
|
+
do {
|
|
87
|
+
zipEntries = try ZipContainer.open(container: zipData)
|
|
88
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "ZIP extraction successful, found \(zipEntries.count) entries")
|
|
89
|
+
} catch {
|
|
90
|
+
throw NSError(
|
|
91
|
+
domain: "IpayCodePush",
|
|
92
|
+
code: 2,
|
|
93
|
+
userInfo: [NSLocalizedDescriptionKey: "ZIP extraction failed: \(error.localizedDescription)"]
|
|
94
|
+
)
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
progressHandler(0.2)
|
|
98
|
+
|
|
99
|
+
let destinationURL = URL(fileURLWithPath: destination)
|
|
100
|
+
let canonicalDestination = destinationURL.standardized.path
|
|
101
|
+
|
|
102
|
+
let fileManager = FileManager.default
|
|
103
|
+
if !fileManager.fileExists(atPath: canonicalDestination) {
|
|
104
|
+
try fileManager.createDirectory(
|
|
105
|
+
atPath: canonicalDestination,
|
|
106
|
+
withIntermediateDirectories: true,
|
|
107
|
+
attributes: nil
|
|
108
|
+
)
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
let totalEntries = Double(zipEntries.count)
|
|
112
|
+
for (index, entry) in zipEntries.enumerated() {
|
|
113
|
+
try extractZipEntry(entry, to: canonicalDestination)
|
|
114
|
+
progressHandler(0.2 + (Double(index + 1) / totalEntries * 0.8))
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Successfully extracted all entries")
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
private func extractZipEntry(_ entry: ZipEntry, to destination: String) throws {
|
|
121
|
+
let fileManager = FileManager.default
|
|
122
|
+
let entryPath = entry.info.name.trimmingCharacters(in: .init(charactersIn: "/"))
|
|
123
|
+
|
|
124
|
+
guard !entryPath.isEmpty,
|
|
125
|
+
!entryPath.contains(".."),
|
|
126
|
+
!entryPath.hasPrefix("/") else {
|
|
127
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Skipping suspicious path: \(entry.info.name)")
|
|
128
|
+
return
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
let fullPath = (destination as NSString).appendingPathComponent(entryPath)
|
|
132
|
+
let fullURL = URL(fileURLWithPath: fullPath)
|
|
133
|
+
let canonicalFullPath = fullURL.standardized.path
|
|
134
|
+
let canonicalDestination = URL(fileURLWithPath: destination).standardized.path
|
|
135
|
+
|
|
136
|
+
guard canonicalFullPath.hasPrefix(canonicalDestination + "/") ||
|
|
137
|
+
canonicalFullPath == canonicalDestination else {
|
|
138
|
+
throw NSError(
|
|
139
|
+
domain: "IpayCodePush",
|
|
140
|
+
code: 3,
|
|
141
|
+
userInfo: [NSLocalizedDescriptionKey: "Path traversal attempt detected: \(entry.info.name)"]
|
|
142
|
+
)
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
if entry.info.type == .directory {
|
|
146
|
+
if !fileManager.fileExists(atPath: canonicalFullPath) {
|
|
147
|
+
try fileManager.createDirectory(
|
|
148
|
+
atPath: canonicalFullPath,
|
|
149
|
+
withIntermediateDirectories: true,
|
|
150
|
+
attributes: nil
|
|
151
|
+
)
|
|
152
|
+
}
|
|
153
|
+
return
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
if entry.info.type == .regular {
|
|
157
|
+
let parentPath = (canonicalFullPath as NSString).deletingLastPathComponent
|
|
158
|
+
if !fileManager.fileExists(atPath: parentPath) {
|
|
159
|
+
try fileManager.createDirectory(
|
|
160
|
+
atPath: parentPath,
|
|
161
|
+
withIntermediateDirectories: true,
|
|
162
|
+
attributes: nil
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
guard let data = entry.data else {
|
|
167
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Skipping file with no data: \(entry.info.name)")
|
|
168
|
+
return
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
try data.write(to: URL(fileURLWithPath: canonicalFullPath))
|
|
172
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Extracted: \(entryPath)")
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeInstantpayCodePush.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA0B,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeInstantpayCodePush.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA0B,cAAc;AA+GpE,eAAeA,mBAAmB,CAACC,YAAY,CAAO,oBAAoB,CAAC","ignoreList":[]}
|
package/lib/module/error.js
CHANGED
|
@@ -32,6 +32,12 @@ export let IpayCodePushErrorCode = /*#__PURE__*/function (IpayCodePushErrorCode)
|
|
|
32
32
|
* @retryable false
|
|
33
33
|
*/
|
|
34
34
|
IpayCodePushErrorCode["INVALID_FILE_URL"] = "INVALID_FILE_URL";
|
|
35
|
+
/**
|
|
36
|
+
* File URL Signature is invalid or malformed.
|
|
37
|
+
* Thrown when fileUrl parameter cannot be verified as a valid URL.
|
|
38
|
+
* @retryable false
|
|
39
|
+
*/
|
|
40
|
+
IpayCodePushErrorCode["INVALID_URL_SIGNATURE"] = "INVALID_URL_SIGNATURE";
|
|
35
41
|
// ==================== Bundle Storage Errors ====================
|
|
36
42
|
/**
|
|
37
43
|
* Failed to create required directory for bundle storage.
|
package/lib/module/error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["IpayCodePushErrorCode","isIpayCodePushError","error","code","Object","values","includes","IpayCodePushError","Error","constructor","message","name"],"sourceRoot":"../../src","sources":["error.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAYA,qBAAqB,0BAArBA,qBAAqB;EAC7B;EAEA;AACJ;AACA;AACA;AACA;EAPYA,qBAAqB;EAU7B;AACJ;AACA;AACA;AACA;EAdYA,qBAAqB;EAiB7B;EAEA;AACJ;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"names":["IpayCodePushErrorCode","isIpayCodePushError","error","code","Object","values","includes","IpayCodePushError","Error","constructor","message","name"],"sourceRoot":"../../src","sources":["error.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAYA,qBAAqB,0BAArBA,qBAAqB;EAC7B;EAEA;AACJ;AACA;AACA;AACA;EAPYA,qBAAqB;EAU7B;AACJ;AACA;AACA;AACA;EAdYA,qBAAqB;EAiB7B;AACJ;AACA;AACA;AACA;EArBYA,qBAAqB;EAwB7B;EAEA;AACJ;AACA;AACA;AACA;EA9BYA,qBAAqB;EAiC7B;AACJ;AACA;AACA;AACA;AACA;EAtCYA,qBAAqB;EAyC7B;AACJ;AACA;AACA;AACA;AACA;EA9CYA,qBAAqB;EAiD7B;AACJ;AACA;AACA;AACA;AACA;EAtDYA,qBAAqB;EAyD7B;AACJ;AACA;AACA;AACA;AACA;EA9DYA,qBAAqB;EAiE7B;AACJ;AACA;AACA;AACA;AACA;EAtEYA,qBAAqB;EAyE7B;AACJ;AACA;AACA;AACA;AACA;EA9EYA,qBAAqB;EAiF7B;AACJ;AACA;AACA;AACA;AACA;AACA;EAvFYA,qBAAqB;EA0F7B;AACJ;AACA;AACA;AACA;AACA;EA/FYA,qBAAqB;EAkG7B;EACA;EAEA;EAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;EA9GYA,qBAAqB;EAiH7B;AACJ;AACA;AACA;AACA;AACA;EAtHYA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;;AA0HjC;AACA;AACA;AACA,OAAO,SAASC,mBAAmBA,CAC/BC,KAAc,EAC2C;EACzD,OACI,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd,MAAM,IAAIA,KAAK,IACf,OAAOA,KAAK,CAACC,IAAI,KAAK,QAAQ,IAC9BC,MAAM,CAACC,MAAM,CAACL,qBAAqB,CAAC,CAACM,QAAQ,CACzCJ,KAAK,CAACC,IACV,CAAC;AAET;;AAEA;AACA;AACA;AACA,OAAO,MAAMI,iBAAiB,SAASC,KAAK,CAAC;EACzCC,WAAWA,CAACC,OAAe,EAAE;IACzB,KAAK,CAACA,OAAO,CAAC;IACd,IAAI,CAACC,IAAI,GAAG,mBAAmB;EACnC;AACJ","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { checkForUpdate } from "./checkForUpdate.js";
|
|
4
4
|
import { createDefaultResolver } from "./DefaultResolver.js";
|
|
5
|
-
import { addListener, clearCrashHistory, getAppVersion, getBaseURL, getBundleId, getChannel, getCrashHistory, getFingerprintHash, getMinBundleId, reload, updateBundle } from "./native.js";
|
|
5
|
+
import { addListener, clearCrashHistory, getAppVersion, getBaseURL, getBundleId, getChannel, getCrashHistory, getFingerprintHash, getMinBundleId, reload, updateBundle, getPublicKey } from "./native.js";
|
|
6
6
|
import { ipayCodePushStore } from "./store.js";
|
|
7
7
|
import { wrap } from "./wrap.js";
|
|
8
8
|
export * from "./store.js";
|
|
@@ -284,7 +284,17 @@ function createIpayCodePushClient() {
|
|
|
284
284
|
* IpayCodePush.clearCrashHistory();
|
|
285
285
|
* ```
|
|
286
286
|
*/
|
|
287
|
-
clearCrashHistory
|
|
287
|
+
clearCrashHistory,
|
|
288
|
+
/**
|
|
289
|
+
* Get Public Key which is generated for the particular device
|
|
290
|
+
*
|
|
291
|
+
* @returns {string} Public key
|
|
292
|
+
* @example
|
|
293
|
+
* ```ts
|
|
294
|
+
* IpayCodePush.getPublicKey();
|
|
295
|
+
* ```
|
|
296
|
+
*/
|
|
297
|
+
getPublicKey
|
|
288
298
|
};
|
|
289
299
|
}
|
|
290
300
|
export const IpayCodePush = createIpayCodePushClient();
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["checkForUpdate","createDefaultResolver","addListener","clearCrashHistory","getAppVersion","getBaseURL","getBundleId","getChannel","getCrashHistory","getFingerprintHash","getMinBundleId","reload","updateBundle","ipayCodePushStore","wrap","extractSignatureFailure","isSignatureVerificationError","progress","setState","registerGlobalGetBaseURL","fn","globalThis","IpayCodePushGetBaseURL","global","createIpayCodePushClient","globalConfig","resolver","ensureGlobalResolver","methodName","Error","options","normalizedOptions","baseURL","rest","requestHeaders","requestTimeout","isUpdateDownloaded","getSnapshot","config","mergedConfig","params","IpayCodePush"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAEIA,cAAc,QAEX,qBAAkB;AAEzB,SAASC,qBAAqB,QAAQ,sBAAmB;AAEzD,SACIC,WAAW,EACXC,iBAAiB,EACjBC,aAAa,EACbC,UAAU,EACVC,WAAW,EACXC,UAAU,EACVC,eAAe,EACfC,kBAAkB,EAClBC,cAAc,EACdC,MAAM,EAENC,YAAY,QACT,aAAU;AAEjB,SAASC,iBAAiB,QAAQ,YAAS;AAI3C,SAA6DC,IAAI,QAAQ,WAAQ;AAIjF,cAAc,YAAS;AAEvB,SACIC,uBAAuB,EAEvBC,4BAA4B,QAIzB,YAAS;
|
|
1
|
+
{"version":3,"names":["checkForUpdate","createDefaultResolver","addListener","clearCrashHistory","getAppVersion","getBaseURL","getBundleId","getChannel","getCrashHistory","getFingerprintHash","getMinBundleId","reload","updateBundle","getPublicKey","ipayCodePushStore","wrap","extractSignatureFailure","isSignatureVerificationError","progress","setState","registerGlobalGetBaseURL","fn","globalThis","IpayCodePushGetBaseURL","global","createIpayCodePushClient","globalConfig","resolver","ensureGlobalResolver","methodName","Error","options","normalizedOptions","baseURL","rest","requestHeaders","requestTimeout","isUpdateDownloaded","getSnapshot","config","mergedConfig","params","IpayCodePush"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAEIA,cAAc,QAEX,qBAAkB;AAEzB,SAASC,qBAAqB,QAAQ,sBAAmB;AAEzD,SACIC,WAAW,EACXC,iBAAiB,EACjBC,aAAa,EACbC,UAAU,EACVC,WAAW,EACXC,UAAU,EACVC,eAAe,EACfC,kBAAkB,EAClBC,cAAc,EACdC,MAAM,EAENC,YAAY,EACZC,YAAY,QACT,aAAU;AAEjB,SAASC,iBAAiB,QAAQ,YAAS;AAI3C,SAA6DC,IAAI,QAAQ,WAAQ;AAIjF,cAAc,YAAS;AAEvB,SACIC,uBAAuB,EAEvBC,4BAA4B,QAIzB,YAAS;AAIhBf,WAAW,CAAC,YAAY,EAAE,CAAC;EAAEgB;AAAS,CAAC,KAAK;EACxCJ,iBAAiB,CAACK,QAAQ,CAAC;IACvBD;EACJ,CAAC,CAAC;AACN,CAAC,CAAC;;AAEF;AACA;AACA;AACA;AACA,MAAME,wBAAwB,GAAGA,CAAA,KAAM;EACnC,MAAMC,EAAE,GAAGhB,UAAU;;EAErB;EACA,IAAI,OAAOiB,UAAU,KAAK,WAAW,EAAE;IAEnC,IAAI,CAACA,UAAU,CAACC,sBAAsB,EAAE;MACpCD,UAAU,CAACC,sBAAsB,GAAGF,EAAE;IAC1C;EACJ;;EAEA;EACA,IAAI,OAAOG,MAAM,KAAK,WAAW,EAAE;IAC/B,IAAI,CAACA,MAAM,CAACD,sBAAsB,EAAE;MAChCC,MAAM,CAACD,sBAAsB,GAAGF,EAAE;IACtC;EACJ;AACJ,CAAC;;AAED;AACAD,wBAAwB,CAAC,CAAC;;AAG1B;AACA;AACA;AACA;;AAEA,SAASK,wBAAwBA,CAAA,EAAG;EAEhC;EACA,MAAMC,YAIL,GAAG;IACAC,QAAQ,EAAE;EACd,CAAC;EAED,MAAMC,oBAAoB,GAAIC,UAAkB,IAAK;IACjD,IAAI,CAACH,YAAY,CAACC,QAAQ,EAAE;MACxB,MAAM,IAAIG,KAAK,CACX,kBAAkBD,UAAU,+CAA+C,GAC3E,2EAA2E,GAC3E,oCAAoC,GACpC,wCAAwC,GACxC,4CAA4C,GAC5C,qCAAqC,GACrC,0BAA0B,GAC1B,gBAAgB,GAChB,+CAA+C,GAC/C,wCAAwC,GACxC,4CAA4C,GAC5C,4BAA4B,GAC5B,gBACJ,CAAC;IACL;IACA,OAAOH,YAAY,CAACC,QAAQ;EAChC,CAAC;EAED,OAAO;IACH;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQZ,IAAI,EAAGgB,OAA4B,IAAK;MACpC,IAAIC,iBAAsC;MAE1C,IAAI,SAAS,IAAID,OAAO,IAAIA,OAAO,CAACE,OAAO,EAAE;QACzC,MAAM;UAAEA,OAAO;UAAE,GAAGC;QAAK,CAAC,GAAGH,OAAO;QACpCC,iBAAiB,GAAG;UAChB,GAAGE,IAAI;UACPP,QAAQ,EAAE1B,qBAAqB,CAACgC,OAAO;QAC3C,CAAC;MACL,CAAC,MAAM,IAAI,UAAU,IAAIF,OAAO,IAAIA,OAAO,CAACJ,QAAQ,EAAE;QAClDK,iBAAiB,GAAGD,OAAO;MAC/B,CAAC,MAAM;QACH,MAAM,IAAID,KAAK,CACf,iEAAiE,GAC7D,wDAAwD,GACxD,wCAAwC,GACxC,4CAA4C,GAC5C,qCAAqC,GACrC,0BAA0B,GAC1B,gBAAgB,GAChB,8CAA8C,GAC9C,wCAAwC,GACxC,mBAAmB,GACnB,gEAAgE,GAChE,kEAAkE,GAClE,UAAU,GACV,4BAA4B,GAC5B,gBACJ,CAAC;MACL;MAEAJ,YAAY,CAACC,QAAQ,GAAGK,iBAAiB,CAACL,QAAQ;MAClDD,YAAY,CAACS,cAAc,GAAGJ,OAAO,CAACI,cAAc;MACpDT,YAAY,CAACU,cAAc,GAAGL,OAAO,CAACK,cAAc;MAEpD,OAAOrB,IAAI,CAACiB,iBAAiB,CAAC;IAClC,CAAC;IAED;AACR;AACA;IACQrB,MAAM;IAEN;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQ0B,kBAAkB,EAAEA,CAAA,KAAMvB,iBAAiB,CAACwB,WAAW,CAAC,CAAC,CAACD,kBAAkB;IAE5E;AACR;AACA;IACQjC,aAAa;IAEb;AACR;AACA;IACQE,WAAW;IAEX;AACR;AACA;IACQI,cAAc;IAEd;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQH,UAAU;IAEV;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQL,WAAW;IAEX;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQF,cAAc,EAAGuC,MAA6B,IAAK;MAC/C,MAAMZ,QAAQ,GAAGC,oBAAoB,CAAC,gBAAgB,CAAC;MAEvD,MAAMY,YAA2C,GAAG;QAChD,GAAGD,MAAM;QACTZ,QAAQ;QACRQ,cAAc,EAAE;UAChB,GAAGT,YAAY,CAACS,cAAc;UAC9B,GAAGI,MAAM,CAACJ;QACV,CAAC;QACDC,cAAc,EAAEG,MAAM,CAACH,cAAc,IAAIV,YAAY,CAACU;MAC1D,CAAC;MAED,OAAOpC,cAAc,CAACwC,YAAY,CAAC;IACvC,CAAC;IAED;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQ5B,YAAY,EAAG6B,MAAoB,IAAK;MACpCb,oBAAoB,CAAC,cAAc,CAAC;MACpC,OAAOhB,YAAY,CAAC6B,MAAM,CAAC;IAC/B,CAAC;IAED;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQhC,kBAAkB;IAElB;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQD,eAAe;IAEf;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQL,iBAAiB;IAEjB;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQU;EAEJ,CAAC;AACL;AAEA,OAAO,MAAM6B,YAAY,GAAGjB,wBAAwB,CAAC,CAAC","ignoreList":[]}
|
package/lib/module/native.js
CHANGED
|
@@ -230,4 +230,14 @@ export const getBaseURL = () => {
|
|
|
230
230
|
}
|
|
231
231
|
return null;
|
|
232
232
|
};
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Fetches the Public Key for the app.
|
|
236
|
+
*
|
|
237
|
+
* @returns {string | null} Resolves with the public key
|
|
238
|
+
*/
|
|
239
|
+
export const getPublicKey = () => {
|
|
240
|
+
const constants = IpayCodePushNative.getConstants();
|
|
241
|
+
return constants.KEYSTORE_PUBLIC_KEY;
|
|
242
|
+
};
|
|
233
243
|
//# sourceMappingURL=native.js.map
|
package/lib/module/native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","IpayCodePushErrorCode","isIpayCodePushError","IpayCodePushNative","NIL_UUID","__IPAY_CODE_PUSH_BUNDLE_ID","undefined","IpayCodePushConstants","IPAY_CODE_PUSH_BUNDLE_ID","addListener","eventName","listener","eventEmitter","subscription","remove","inflightUpdates","Map","lastInstalledBundleId","updateBundle","paramsOrBundleId","fileUrl","updateBundleId","bundleId","status","currentBundleId","getBundleId","localeCompare","Error","existing","get","targetFileUrl","targetFileHash","fileHash","promise","ok","delete","set","getAppVersion","constants","getConstants","APP_VERSION","reload","getMinBundleId","MIN_BUNDLE_ID","getChannel","CHANNEL","getFingerprintHash","FINGERPRINT_HASH","notifyAppReady","result","JSON","parse","getCrashHistory","clearCrashHistory","getBaseURL"],"sourceRoot":"../../src","sources":["native.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","IpayCodePushErrorCode","isIpayCodePushError","IpayCodePushNative","NIL_UUID","__IPAY_CODE_PUSH_BUNDLE_ID","undefined","IpayCodePushConstants","IPAY_CODE_PUSH_BUNDLE_ID","addListener","eventName","listener","eventEmitter","subscription","remove","inflightUpdates","Map","lastInstalledBundleId","updateBundle","paramsOrBundleId","fileUrl","updateBundleId","bundleId","status","currentBundleId","getBundleId","localeCompare","Error","existing","get","targetFileUrl","targetFileHash","fileHash","promise","ok","delete","set","getAppVersion","constants","getConstants","APP_VERSION","reload","getMinBundleId","MIN_BUNDLE_ID","getChannel","CHANNEL","getFingerprintHash","FINGERPRINT_HASH","notifyAppReady","result","JSON","parse","getCrashHistory","clearCrashHistory","getBaseURL","getPublicKey","KEYSTORE_PUBLIC_KEY"],"sourceRoot":"../../src","sources":["native.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/types.js
CHANGED
|
@@ -35,7 +35,7 @@ export function isSignatureVerificationError(error) {
|
|
|
35
35
|
|
|
36
36
|
// Match iOS SignatureVerificationError messages
|
|
37
37
|
// Match Android SignatureVerificationException messages
|
|
38
|
-
return message.includes("signature verification") || message.includes("public key not configured") || message.includes("public key format is invalid") || message.includes("signature format is invalid") || message.includes("bundle may be corrupted or tampered");
|
|
38
|
+
return message.includes("signature verification") || message.includes("public key not configured") || message.includes("public key format is invalid") || message.includes("signature format is invalid") || message.includes("bundle may be corrupted or tampered") || message.includes("KeyStore");
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
/**
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isSignatureVerificationError","error","Error","message","toLowerCase","includes","extractSignatureFailure","bundleId","normalizedError","String"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AACA;AACA;AACA;;AAgDA;AACA;AACA;;AA0BA;AACA;AACA;;AAoDA;AACA;AACA;AACA;AACA;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,4BAA4BA,CAACC,KAAc,EAAW;EAClE,IAAI,EAAEA,KAAK,YAAYC,KAAK,CAAC,EAAE;IAC3B,OAAO,KAAK;EAChB;EAEA,MAAMC,OAAO,GAAGF,KAAK,CAACE,OAAO,CAACC,WAAW,CAAC,CAAC;;EAE3C;EACA;EACA,OACID,OAAO,CAACE,QAAQ,CAAC,wBAAwB,CAAC,IAC1CF,OAAO,CAACE,QAAQ,CAAC,2BAA2B,CAAC,IAC7CF,OAAO,CAACE,QAAQ,CAAC,8BAA8B,CAAC,IAChDF,OAAO,CAACE,QAAQ,CAAC,6BAA6B,CAAC,IAC/CF,OAAO,CAACE,QAAQ,CAAC,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"names":["isSignatureVerificationError","error","Error","message","toLowerCase","includes","extractSignatureFailure","bundleId","normalizedError","String"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AACA;AACA;AACA;;AAgDA;AACA;AACA;;AA0BA;AACA;AACA;;AAoDA;AACA;AACA;AACA;AACA;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,4BAA4BA,CAACC,KAAc,EAAW;EAClE,IAAI,EAAEA,KAAK,YAAYC,KAAK,CAAC,EAAE;IAC3B,OAAO,KAAK;EAChB;EAEA,MAAMC,OAAO,GAAGF,KAAK,CAACE,OAAO,CAACC,WAAW,CAAC,CAAC;;EAE3C;EACA;EACA,OACID,OAAO,CAACE,QAAQ,CAAC,wBAAwB,CAAC,IAC1CF,OAAO,CAACE,QAAQ,CAAC,2BAA2B,CAAC,IAC7CF,OAAO,CAACE,QAAQ,CAAC,8BAA8B,CAAC,IAChDF,OAAO,CAACE,QAAQ,CAAC,6BAA6B,CAAC,IAC/CF,OAAO,CAACE,QAAQ,CAAC,qCAAqC,CAAC,IACvDF,OAAO,CAACE,QAAQ,CAAC,UAAU,CAAC;AAEpC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CACnCL,KAAc,EACdM,QAAgB,EACY;EAC5B,MAAMC,eAAe,GACjBP,KAAK,YAAYC,KAAK,GAAGD,KAAK,GAAG,IAAIC,KAAK,CAACO,MAAM,CAACR,KAAK,CAAC,CAAC;EAE7D,OAAO;IACHM,QAAQ;IACRJ,OAAO,EAAEK,eAAe,CAACL,OAAO;IAChCF,KAAK,EAAEO;EACX,CAAC;AACL;;AAKA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeInstantpayCodePush.d.ts","sourceRoot":"","sources":["../../../src/NativeInstantpayCodePush.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAGrE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;;;OAQG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,IAAK,SAAQ,WAAW;IAGrC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D;;;;;;;;;;OAUG;IACH,cAAc,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG;QAC1C,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;QAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAEF;;;;;OAKG;IACH,eAAe,IAAI,MAAM,EAAE,CAAC;IAE5B;;;;;OAKG;IACH,iBAAiB,IAAI,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,UAAU,EAAE,MAAM,MAAM,CAAC;IAGzB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,QAAQ,CAAC,YAAY,EAAE,MAAM;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"NativeInstantpayCodePush.d.ts","sourceRoot":"","sources":["../../../src/NativeInstantpayCodePush.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAGrE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;;;OAQG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,IAAK,SAAQ,WAAW;IAGrC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D;;;;;;;;;;OAUG;IACH,cAAc,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG;QAC1C,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;QAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IAEF;;;;;OAKG;IACH,eAAe,IAAI,MAAM,EAAE,CAAC;IAE5B;;;;;OAKG;IACH,iBAAiB,IAAI,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,UAAU,EAAE,MAAM,MAAM,CAAC;IAGzB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,QAAQ,CAAC,YAAY,EAAE,MAAM;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;QAChC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;KACtC,CAAC;CACL;;AAED,wBAA4E"}
|
|
@@ -28,6 +28,12 @@ export declare enum IpayCodePushErrorCode {
|
|
|
28
28
|
* @retryable false
|
|
29
29
|
*/
|
|
30
30
|
INVALID_FILE_URL = "INVALID_FILE_URL",
|
|
31
|
+
/**
|
|
32
|
+
* File URL Signature is invalid or malformed.
|
|
33
|
+
* Thrown when fileUrl parameter cannot be verified as a valid URL.
|
|
34
|
+
* @retryable false
|
|
35
|
+
*/
|
|
36
|
+
INVALID_URL_SIGNATURE = "INVALID_URL_SIGNATURE",
|
|
31
37
|
/**
|
|
32
38
|
* Failed to create required directory for bundle storage.
|
|
33
39
|
* Thrown when bundle directory creation fails due to permissions or disk errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../src/error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,oBAAY,qBAAqB;IAG7B;;;;OAIG;IACH,iBAAiB,sBAAsB;IAEvC;;;;OAIG;IACH,gBAAgB,qBAAqB;
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../src/error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,oBAAY,qBAAqB;IAG7B;;;;OAIG;IACH,iBAAiB,sBAAsB;IAEvC;;;;OAIG;IACH,gBAAgB,qBAAqB;IAErC;;;;OAIG;IACH,qBAAqB,0BAA0B;IAI/C;;;;OAIG;IACH,yBAAyB,8BAA8B;IAEvD;;;;;OAKG;IACH,eAAe,oBAAoB;IAEnC;;;;;OAKG;IACH,mBAAmB,wBAAwB;IAE3C;;;;;OAKG;IACH,uBAAuB,4BAA4B;IAEnD;;;;;OAKG;IACH,cAAc,mBAAmB;IAEjC;;;;;OAKG;IACH,uBAAuB,4BAA4B;IAEnD;;;;;OAKG;IACH,6BAA6B,kCAAkC;IAE/D;;;;;;OAMG;IACH,qBAAqB,0BAA0B;IAE/C;;;;;OAKG;IACH,yBAAyB,8BAA8B;IAOvD;;;;;;;OAOG;IACH,gBAAgB,qBAAqB;IAErC;;;;;OAKG;IACH,aAAa,kBAAkB;CAClC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,OAAO,GACf,KAAK,IAAI;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAU3D;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI9B"}
|
|
@@ -199,5 +199,15 @@ export declare const IpayCodePush: {
|
|
|
199
199
|
* ```
|
|
200
200
|
*/
|
|
201
201
|
clearCrashHistory: () => boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Get Public Key which is generated for the particular device
|
|
204
|
+
*
|
|
205
|
+
* @returns {string} Public key
|
|
206
|
+
* @example
|
|
207
|
+
* ```ts
|
|
208
|
+
* IpayCodePush.getPublicKey();
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
getPublicKey: () => string | null;
|
|
202
212
|
};
|
|
203
213
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,qBAAqB,EAG7B,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAWH,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,qBAAqB,EAG7B,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAWH,KAAK,YAAY,EAGpB,MAAM,UAAU,CAAC;AAMlB,OAAO,EAAE,KAAK,mBAAmB,EAAkC,MAAM,QAAQ,CAAC;AAElF,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAExE,cAAc,SAAS,CAAC;AAExB,OAAO,EACH,uBAAuB,EACvB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,GACpC,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AA0V5E,eAAO,MAAM,YAAY;IAjRjB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;oBACa,mBAAmB;IAsCnC;;OAEG;;IAGH;;;;;;;;;;;;;;;;OAgBG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;;;;;;;;OAYG;;IAGH;;;;;;;;;;;;;;;;OAgBG;;IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;6BACsB,qBAAqB;IAgB9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;2BACoB,YAAY;IAKnC;;;;;;;;;;OAUG;;IAGH;;;;;;;;;;;OAWG;;IAGH;;;;;;;;;;;OAWG;;IAGH;;;;;;;;OAQG;;CAM2C,CAAC"}
|
|
@@ -125,4 +125,10 @@ export declare const clearCrashHistory: () => boolean;
|
|
|
125
125
|
* @returns {string | null} Base URL string (e.g., "file:///data/.../bundle-store/abc123") or null if not available
|
|
126
126
|
*/
|
|
127
127
|
export declare const getBaseURL: () => string | null;
|
|
128
|
+
/**
|
|
129
|
+
* Fetches the Public Key for the app.
|
|
130
|
+
*
|
|
131
|
+
* @returns {string | null} Resolves with the public key
|
|
132
|
+
*/
|
|
133
|
+
export declare const getPublicKey: () => string | null;
|
|
128
134
|
//# sourceMappingURL=native.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../src/native.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAA2B,EACvB,KAAK,kBAAkB,EAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,CAAC;AAMtD,eAAO,MAAM,qBAAqB;;CAEjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,UAAU,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;CACL,CAAC;AAGF,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,iBAAiB,EACzD,WAAW,CAAC,EACZ,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,eAQjC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG;IAC5C,MAAM,EAAE,YAAY,CAAC;CACxB,CAAC;AAQF;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3E;;GAEG;AACH,wBAAsB,YAAY,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC,OAAO,CAAC,CAAC;AA2DpB;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAAM,GAAG,IAGzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,qBAElB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAO,MAGjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QAAO,MAI9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,MAG7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAG9C,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,cAAc,QAAO,oBAYjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAO,MAAM,EAWxC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,QAAO,OAEpC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,QAAO,MAAM,GAAG,IAMtC,CAAC"}
|
|
1
|
+
{"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../src/native.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAA2B,EACvB,KAAK,kBAAkB,EAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,CAAC;AAMtD,eAAO,MAAM,qBAAqB;;CAEjC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,UAAU,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;CACL,CAAC;AAGF,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,iBAAiB,EACzD,WAAW,CAAC,EACZ,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,eAQjC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG;IAC5C,MAAM,EAAE,YAAY,CAAC;CACxB,CAAC;AAQF;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3E;;GAEG;AACH,wBAAsB,YAAY,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,IAAI,GACvB,OAAO,CAAC,OAAO,CAAC,CAAC;AA2DpB;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAAM,GAAG,IAGzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,qBAElB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAO,MAGjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QAAO,MAI9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,MAG7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAG9C,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,cAAc,QAAO,oBAYjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAO,MAAM,EAWxC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,QAAO,OAEpC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,QAAO,MAAM,GAAG,IAMtC,CAAC;AAGF;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAAO,MAAM,GAAG,IAGxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAC;IAE5B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,cAAc,EAAE,aAAa,GAAG,YAAY,CAAC;IAE7C;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC;;;;;OAKG;IACH,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAE5C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,WAAW,CAAC,EAAE,CACV,MAAM,EAAE,yBAAyB,KAChC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAEnC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CAAC,EAAE,CACb,MAAM,EAAE,4BAA4B,KACnC,OAAO,CAAC,SAAS,CAAC,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,QAAQ,EAAE,KAAK,GAAG,SAAS,CAAC;IAE5B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,cAAc,EAAE,aAAa,GAAG,YAAY,CAAC;IAE7C;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC;;;;;OAKG;IACH,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;IAE5C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,WAAW,CAAC,EAAE,CACV,MAAM,EAAE,yBAAyB,KAChC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAEnC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,CAAC,EAAE,CACb,MAAM,EAAE,4BAA4B,KACnC,OAAO,CAAC,SAAS,CAAC,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAiBpE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,GACjB,4BAA4B,CAS9B;AAGD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,EAAE,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC;IACjE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B"}
|
package/package.json
CHANGED
package/src/error.ts
CHANGED
|
@@ -33,6 +33,13 @@ export enum IpayCodePushErrorCode {
|
|
|
33
33
|
*/
|
|
34
34
|
INVALID_FILE_URL = "INVALID_FILE_URL",
|
|
35
35
|
|
|
36
|
+
/**
|
|
37
|
+
* File URL Signature is invalid or malformed.
|
|
38
|
+
* Thrown when fileUrl parameter cannot be verified as a valid URL.
|
|
39
|
+
* @retryable false
|
|
40
|
+
*/
|
|
41
|
+
INVALID_URL_SIGNATURE = "INVALID_URL_SIGNATURE",
|
|
42
|
+
|
|
36
43
|
// ==================== Bundle Storage Errors ====================
|
|
37
44
|
|
|
38
45
|
/**
|
package/src/index.tsx
CHANGED
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
reload,
|
|
20
20
|
type UpdateParams,
|
|
21
21
|
updateBundle,
|
|
22
|
+
getPublicKey,
|
|
22
23
|
} from "./native";
|
|
23
24
|
|
|
24
25
|
import { ipayCodePushStore } from "./store";
|
|
@@ -371,6 +372,18 @@ function createIpayCodePushClient() {
|
|
|
371
372
|
* ```
|
|
372
373
|
*/
|
|
373
374
|
clearCrashHistory,
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Get Public Key which is generated for the particular device
|
|
378
|
+
*
|
|
379
|
+
* @returns {string} Public key
|
|
380
|
+
* @example
|
|
381
|
+
* ```ts
|
|
382
|
+
* IpayCodePush.getPublicKey();
|
|
383
|
+
* ```
|
|
384
|
+
*/
|
|
385
|
+
getPublicKey,
|
|
386
|
+
|
|
374
387
|
};
|
|
375
388
|
}
|
|
376
389
|
|
package/src/native.ts
CHANGED
|
@@ -277,4 +277,15 @@ export const getBaseURL = (): string | null => {
|
|
|
277
277
|
return result;
|
|
278
278
|
}
|
|
279
279
|
return null;
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
/**
|
|
284
|
+
* Fetches the Public Key for the app.
|
|
285
|
+
*
|
|
286
|
+
* @returns {string | null} Resolves with the public key
|
|
287
|
+
*/
|
|
288
|
+
export const getPublicKey = (): string | null => {
|
|
289
|
+
const constants = IpayCodePushNative.getConstants();
|
|
290
|
+
return constants.KEYSTORE_PUBLIC_KEY;
|
|
280
291
|
};
|
package/src/types.ts
CHANGED
|
@@ -174,7 +174,8 @@ export function isSignatureVerificationError(error: unknown): boolean {
|
|
|
174
174
|
message.includes("public key not configured") ||
|
|
175
175
|
message.includes("public key format is invalid") ||
|
|
176
176
|
message.includes("signature format is invalid") ||
|
|
177
|
-
message.includes("bundle may be corrupted or tampered")
|
|
177
|
+
message.includes("bundle may be corrupted or tampered") ||
|
|
178
|
+
message.includes("KeyStore")
|
|
178
179
|
);
|
|
179
180
|
}
|
|
180
181
|
|