react-native-instantpay-code-push 1.2.5 → 1.2.7
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/ios/IpayCodePush/Private/BundleFileStorageService.swift +1 -1
- package/ios/IpayCodePush/Private/InstantpayCodePush.mm +17 -17
- package/ios/IpayCodePush/Private/IpayCodePushHelper.swift +2 -2
- package/ios/IpayCodePush/Private/IpayCodePushImpl.swift +4 -0
- package/ios/IpayCodePush/Private/SignatureVerifier.swift +100 -1
- package/lib/module/checkForUpdate.js +0 -4
- package/lib/module/checkForUpdate.js.map +1 -1
- package/lib/typescript/src/checkForUpdate.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/checkForUpdate.ts +0 -5
|
@@ -469,7 +469,7 @@ class BundleFileStorageService: BundleStorageService {
|
|
|
469
469
|
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Directory contents: \(contents)")
|
|
470
470
|
|
|
471
471
|
// Check for iOS bundle file directly
|
|
472
|
-
let iosBundlePath = (directoryPath as NSString).appendingPathComponent("index.ios.bundle")
|
|
472
|
+
let iosBundlePath = (directoryPath as NSString).appendingPathComponent(".ipay-bundle/bundle/index.ios.bundle")
|
|
473
473
|
if self.fileSystem.fileExists(atPath: iosBundlePath) {
|
|
474
474
|
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Found iOS bundle atPath: \(iosBundlePath)")
|
|
475
475
|
return .success(iosBundlePath)
|
|
@@ -43,14 +43,14 @@ NSNotificationName const IpayCodePushDownloadDidFinishNotification = @"IpayCodeP
|
|
|
43
43
|
|
|
44
44
|
// Clean up observers when module is invalidated or deallocated
|
|
45
45
|
- (void)invalidate {
|
|
46
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] invalidate called, removing observers.");
|
|
46
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] invalidate called, removing observers.");
|
|
47
47
|
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
48
48
|
// Swift side should handle KVO observer removal for its tasks
|
|
49
49
|
[super invalidate];
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
- (void)dealloc {
|
|
53
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] dealloc called, removing observers.");
|
|
53
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] dealloc called, removing observers.");
|
|
54
54
|
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -95,17 +95,17 @@ RCT_EXPORT_MODULE();
|
|
|
95
95
|
// Convert timestamp (milliseconds) to UUID v7
|
|
96
96
|
uint64_t timestampMs = [customValue longLongValue];
|
|
97
97
|
uuid = [self generateUUIDv7FromTimestamp:timestampMs];
|
|
98
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] Using timestamp %@ as MIN_BUNDLE_ID: %@", customValue, uuid);
|
|
98
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] Using timestamp %@ as MIN_BUNDLE_ID: %@", customValue, uuid);
|
|
99
99
|
} else {
|
|
100
100
|
// Use as UUID directly
|
|
101
101
|
uuid = customValue;
|
|
102
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] Using custom MIN_BUNDLE_ID from Info.plist: %@", uuid);
|
|
102
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] Using custom MIN_BUNDLE_ID from Info.plist: %@", uuid);
|
|
103
103
|
}
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
// Step 3: Fallback to default logic (26-hour subtraction)
|
|
108
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] No custom MIN_BUNDLE_ID found, using default calculation");
|
|
108
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] No custom MIN_BUNDLE_ID found, using default calculation");
|
|
109
109
|
|
|
110
110
|
NSString *compileDateStr = [NSString stringWithFormat:@"%s %s", __DATE__, __TIME__];
|
|
111
111
|
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
|
|
@@ -117,7 +117,7 @@ RCT_EXPORT_MODULE();
|
|
|
117
117
|
NSDate *buildDate = [formatter dateFromString:compileDateStr];
|
|
118
118
|
|
|
119
119
|
if (!buildDate) {
|
|
120
|
-
RCTLogWarn(@"[InstantpayCodePush.mm] Could not parse build date: %@", compileDateStr);
|
|
120
|
+
//RCTLogWarn(@"[InstantpayCodePush.mm] Could not parse build date: %@", compileDateStr);
|
|
121
121
|
uuid = @"00000000-0000-0000-0000-000000000000";
|
|
122
122
|
return;
|
|
123
123
|
}
|
|
@@ -218,7 +218,7 @@ RCT_EXPORT_MODULE();
|
|
|
218
218
|
|
|
219
219
|
- (void)handleDownloadCompletion:(NSNotification *)notification {
|
|
220
220
|
NSURLSessionTask *task = notification.object; // Task that finished
|
|
221
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] Received download completion notification for task: %@", task.originalRequest.URL);
|
|
221
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] Received download completion notification for task: %@", task.originalRequest.URL);
|
|
222
222
|
// Swift side handles KVO observer removal internally now when task finishes.
|
|
223
223
|
// No specific cleanup needed here based on this notification anymore.
|
|
224
224
|
}
|
|
@@ -247,21 +247,21 @@ RCT_EXPORT_MODULE();
|
|
|
247
247
|
|
|
248
248
|
- (void)reload:(RCTPromiseResolveBlock)resolve
|
|
249
249
|
reject:(RCTPromiseRejectBlock)reject {
|
|
250
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] IpayCodePush requested a reload");
|
|
250
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] IpayCodePush requested a reload");
|
|
251
251
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
252
252
|
@try {
|
|
253
253
|
IpayCodePushImpl *impl = [InstantpayCodePush sharedImpl];
|
|
254
254
|
NSURL *bundleURL = [impl bundleURLWithBundle:[NSBundle mainBundle]];
|
|
255
|
-
RCTLogInfo(@"[InstantpayCodePush.mm] Reloading with bundle URL: %@", bundleURL);
|
|
255
|
+
//RCTLogInfo(@"[InstantpayCodePush.mm] Reloading with bundle URL: %@", bundleURL);
|
|
256
256
|
if (bundleURL && super.bridge) {
|
|
257
257
|
[super.bridge setValue:bundleURL forKey:@"bundleURL"];
|
|
258
258
|
} else if (!super.bridge) {
|
|
259
|
-
RCTLogWarn(@"[InstantpayCodePush.mm] Bridge is nil, cannot set bundleURL for reload.");
|
|
259
|
+
//RCTLogWarn(@"[InstantpayCodePush.mm] Bridge is nil, cannot set bundleURL for reload.");
|
|
260
260
|
}
|
|
261
261
|
RCTTriggerReloadCommandListeners(@"IpayCodePush requested a reload");
|
|
262
262
|
resolve(nil);
|
|
263
263
|
} @catch (NSError *error) {
|
|
264
|
-
RCTLogError(@"[InstantpayCodePush.mm] Failed to reload: %@", error);
|
|
264
|
+
//RCTLogError(@"[InstantpayCodePush.mm] Failed to reload: %@", error);
|
|
265
265
|
reject(@"RELOAD_ERROR", error.description, error);
|
|
266
266
|
}
|
|
267
267
|
});
|
|
@@ -270,7 +270,7 @@ RCT_EXPORT_MODULE();
|
|
|
270
270
|
- (void)updateBundle:(JS::NativeInstantpayCodePush::UpdateBundleParams &)params
|
|
271
271
|
resolve:(RCTPromiseResolveBlock)resolve
|
|
272
272
|
reject:(RCTPromiseRejectBlock)reject {
|
|
273
|
-
NSLog(@"[InstantpayCodePush.mm] updateBundle called.");
|
|
273
|
+
//NSLog(@"[InstantpayCodePush.mm] updateBundle called.");
|
|
274
274
|
NSMutableDictionary *paramDict = [NSMutableDictionary dictionary];
|
|
275
275
|
if (params.bundleId()) {
|
|
276
276
|
paramDict[@"bundleId"] = params.bundleId();
|
|
@@ -291,27 +291,27 @@ RCT_EXPORT_MODULE();
|
|
|
291
291
|
if (params.bundleId()) {
|
|
292
292
|
bundleId = params.bundleId();
|
|
293
293
|
}
|
|
294
|
-
NSLog(@"[InstantpayCodePush.mm] notifyAppReady called with bundleId: %@", bundleId);
|
|
294
|
+
//NSLog(@"[InstantpayCodePush.mm] notifyAppReady called with bundleId: %@", bundleId);
|
|
295
295
|
IpayCodePushImpl *impl = [InstantpayCodePush sharedImpl];
|
|
296
296
|
return [impl notifyAppReadyWithBundleId:bundleId];
|
|
297
297
|
}
|
|
298
298
|
|
|
299
299
|
- (NSArray<NSString *> *)getCrashHistory {
|
|
300
|
-
NSLog(@"[InstantpayCodePush.mm] getCrashHistory called");
|
|
300
|
+
//NSLog(@"[InstantpayCodePush.mm] getCrashHistory called");
|
|
301
301
|
IpayCodePushImpl *impl = [InstantpayCodePush sharedImpl];
|
|
302
302
|
NSArray<NSString *> *crashHistory = [impl getCrashHistory];
|
|
303
303
|
return crashHistory ?: @[];
|
|
304
304
|
}
|
|
305
305
|
|
|
306
306
|
- (NSNumber *)clearCrashHistory {
|
|
307
|
-
NSLog(@"[InstantpayCodePush.mm] clearCrashHistory called");
|
|
307
|
+
//NSLog(@"[InstantpayCodePush.mm] clearCrashHistory called");
|
|
308
308
|
IpayCodePushImpl *impl = [InstantpayCodePush sharedImpl];
|
|
309
309
|
BOOL result = [impl clearCrashHistory];
|
|
310
310
|
return @(result);
|
|
311
311
|
}
|
|
312
312
|
|
|
313
313
|
- (NSString *)getBaseURL {
|
|
314
|
-
NSLog(@"[InstantpayCodePush.mm] getBaseURL called");
|
|
314
|
+
//NSLog(@"[InstantpayCodePush.mm] getBaseURL called");
|
|
315
315
|
IpayCodePushImpl *impl = [InstantpayCodePush sharedImpl];
|
|
316
316
|
NSString *baseURL = [impl getBaseURL];
|
|
317
317
|
return baseURL ?: @"";
|
|
@@ -328,7 +328,7 @@ RCT_EXPORT_MODULE();
|
|
|
328
328
|
.APP_VERSION = [IpayCodePushImpl appVersion],
|
|
329
329
|
.CHANNEL = [impl getChannel],
|
|
330
330
|
.FINGERPRINT_HASH = [impl getFingerprintHash],
|
|
331
|
-
.KEYSTORE_PUBLIC_KEY =
|
|
331
|
+
.KEYSTORE_PUBLIC_KEY = [IpayCodePushImpl getKeyChainPublickey],
|
|
332
332
|
});
|
|
333
333
|
}
|
|
334
334
|
|
|
@@ -21,7 +21,7 @@ import os
|
|
|
21
21
|
return
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
let fullTagName = "\(MAIN_LOG_TAG) \(classTag)"
|
|
24
|
+
let fullTagName = "\(MAIN_LOG_TAG) \(classTag) \(String(describing: log))"
|
|
25
25
|
|
|
26
26
|
if let isEnableLog: Bool = Bundle.main.object(forInfoDictionaryKey: "IpayCodePush_Log") as! Bool? {
|
|
27
27
|
if(isEnableLog){
|
|
@@ -36,7 +36,7 @@ import os
|
|
|
36
36
|
return
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
let fullTagName = "\(MAIN_LOG_TAG) \(classTag)"
|
|
39
|
+
let fullTagName = "\(MAIN_LOG_TAG) \(classTag) \(String(describing: log))"
|
|
40
40
|
|
|
41
41
|
if let isEnableLog: Bool = Bundle.main.object(forInfoDictionaryKey: "IpayCodePush_Log") as! Bool? {
|
|
42
42
|
if(isEnableLog){
|
|
@@ -300,7 +300,7 @@ public class SignatureVerifier {
|
|
|
300
300
|
*/
|
|
301
301
|
private static func createPublicKey(from publicKeyPEM: String) -> Result<SecKey, SignatureVerificationError> {
|
|
302
302
|
// Remove PEM headers/footers and whitespace
|
|
303
|
-
|
|
303
|
+
let keyString = publicKeyPEM
|
|
304
304
|
.replacingOccurrences(of: "-----BEGIN PUBLIC KEY-----", with: "")
|
|
305
305
|
.replacingOccurrences(of: "-----END PUBLIC KEY-----", with: "")
|
|
306
306
|
.replacingOccurrences(of: "\\n", with: "")
|
|
@@ -354,5 +354,104 @@ public class SignatureVerifier {
|
|
|
354
354
|
return data
|
|
355
355
|
}
|
|
356
356
|
|
|
357
|
+
private static let KEY_ALIAS = "com.ipaycodepush.security.rsa"
|
|
358
|
+
|
|
359
|
+
/**
|
|
360
|
+
* Get Device Public Key of generated KeyChain
|
|
361
|
+
*/
|
|
362
|
+
public static func getDevicePublicKeyBase64() -> String? {
|
|
363
|
+
|
|
364
|
+
if let privateKey = getPrivateKey() {
|
|
365
|
+
return exportPublicKeyBase64(from: privateKey)
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
// Generate key
|
|
369
|
+
guard let privateKey = generateKeyChain() else {
|
|
370
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Key generation failed")
|
|
371
|
+
return nil
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
return exportPublicKeyBase64(from: privateKey)
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
/**
|
|
378
|
+
* Generate a new EC key pair entry in the Ios Keychain by
|
|
379
|
+
* using the KeyPairGenerator API.
|
|
380
|
+
*/
|
|
381
|
+
|
|
382
|
+
private static func generateKeyChain() -> SecKey? {
|
|
383
|
+
|
|
384
|
+
let tagData = KEY_ALIAS.data(using: .utf8)!
|
|
385
|
+
|
|
386
|
+
let access = SecAccessControlCreateWithFlags(
|
|
387
|
+
nil,
|
|
388
|
+
kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly,
|
|
389
|
+
[],
|
|
390
|
+
nil
|
|
391
|
+
)
|
|
392
|
+
|
|
393
|
+
let attributes: [String: Any] = [
|
|
394
|
+
kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
|
|
395
|
+
kSecAttrKeySizeInBits as String: 2048,
|
|
396
|
+
kSecPrivateKeyAttrs as String: [
|
|
397
|
+
kSecAttrIsPermanent as String: true,
|
|
398
|
+
kSecAttrApplicationTag as String: tagData,
|
|
399
|
+
kSecAttrAccessControl as String: access as Any
|
|
400
|
+
]
|
|
401
|
+
]
|
|
402
|
+
|
|
403
|
+
var error: Unmanaged<CFError>?
|
|
404
|
+
let privateKey = SecKeyCreateRandomKey(attributes as CFDictionary, &error)
|
|
405
|
+
|
|
406
|
+
if let error = error {
|
|
407
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Key generation error: \(error.takeRetainedValue() as Any)")
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
return privateKey
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
/**
|
|
414
|
+
* Get Private Key of device keychain
|
|
415
|
+
*/
|
|
416
|
+
private static func getPrivateKey() -> SecKey? {
|
|
417
|
+
|
|
418
|
+
let tagData = KEY_ALIAS.data(using: .utf8)!
|
|
419
|
+
|
|
420
|
+
let query: [String: Any] = [
|
|
421
|
+
kSecClass as String: kSecClassKey,
|
|
422
|
+
kSecAttrApplicationTag as String: tagData,
|
|
423
|
+
kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
|
|
424
|
+
kSecReturnRef as String: true
|
|
425
|
+
]
|
|
426
|
+
|
|
427
|
+
var item: CFTypeRef?
|
|
428
|
+
let status = SecItemCopyMatching(query as CFDictionary, &item)
|
|
429
|
+
|
|
430
|
+
if status != errSecSuccess {
|
|
431
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Key fetch error: \(status)")
|
|
432
|
+
return nil
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
return (item as! SecKey)
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
/**
|
|
439
|
+
* Get Public key of generated Private Key
|
|
440
|
+
*/
|
|
441
|
+
private static func exportPublicKeyBase64(from privateKey: SecKey) -> String? {
|
|
442
|
+
|
|
443
|
+
guard let publicKey = SecKeyCopyPublicKey(privateKey) else {
|
|
444
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Cannot get public key")
|
|
445
|
+
return nil
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
var error: Unmanaged<CFError>?
|
|
449
|
+
guard let data = SecKeyCopyExternalRepresentation(publicKey, &error) as Data? else {
|
|
450
|
+
IpayCodePushHelper.logPrint(classTag: CLASS_TAG, log: "Export error: \(error?.takeRetainedValue() as Any)")
|
|
451
|
+
return nil
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
return data.base64EncodedString()
|
|
455
|
+
}
|
|
357
456
|
|
|
358
457
|
}
|
|
@@ -11,10 +11,6 @@ export async function checkForUpdate(options) {
|
|
|
11
11
|
console.log('checkForUpdate : Running in dev mode');
|
|
12
12
|
return null;
|
|
13
13
|
}
|
|
14
|
-
if (Platform.OS == 'ios') {
|
|
15
|
-
console.log("Under Development in iOS Platform");
|
|
16
|
-
return null;
|
|
17
|
-
}
|
|
18
14
|
if (!["ios", "android"].includes(Platform.OS)) {
|
|
19
15
|
options.onError?.(new IpayCodePushError("IpayCodePush is only supported on iOS and Android"));
|
|
20
16
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","IpayCodePushError","getAppVersion","getBundleId","getChannel","getFingerprintHash","getMinBundleId","updateBundle","checkForUpdate","options","__DEV__","debug","console","log","
|
|
1
|
+
{"version":3,"names":["Platform","IpayCodePushError","getAppVersion","getBundleId","getChannel","getFingerprintHash","getMinBundleId","updateBundle","checkForUpdate","options","__DEV__","debug","console","log","includes","OS","onError","currentAppVersion","platform","currentBundleId","minBundleId","channel","fingerprintHash","resolver","checkUpdate","updateInfo","appVersion","bundleId","updateStrategy","requestHeaders","requestTimeout","error","id","fileUrl","fileHash","status"],"sourceRoot":"../../src","sources":["checkForUpdate.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,iBAAiB,QAAQ,YAAS;AAE3C,SACIC,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,kBAAkB,EAClBC,cAAc,EACdC,YAAY,QACT,aAAU;;AAkCjB;;AAKA,OAAO,eAAeC,cAAcA,CAChCC,OAAsC,EACF;EACpC,IAAIC,OAAO,IAAI,CAACD,OAAO,CAACE,KAAK,EAAE;IAC3BC,OAAO,CAACC,GAAG,CAAC,sCAAsC,CAAC;IACnD,OAAO,IAAI;EACf;EAEA,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAACC,QAAQ,CAACd,QAAQ,CAACe,EAAE,CAAC,EAAE;IAC3CN,OAAO,CAACO,OAAO,GACX,IAAIf,iBAAiB,CAAC,mDAAmD,CAC7E,CAAC;IACD,OAAO,IAAI;EACf;EAEA,MAAMgB,iBAAiB,GAAGf,aAAa,CAAC,CAAC;EACzC,MAAMgB,QAAQ,GAAGlB,QAAQ,CAACe,EAAuB;EACjD,MAAMI,eAAe,GAAGhB,WAAW,CAAC,CAAC;EACrC,MAAMiB,WAAW,GAAGd,cAAc,CAAC,CAAC;EACpC,MAAMe,OAAO,GAAGjB,UAAU,CAAC,CAAC;EAE5B,IAAI,CAACa,iBAAiB,EAAE;IACpBR,OAAO,CAACO,OAAO,GAAG,IAAIf,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IACrE,OAAO,IAAI;EACf;EAEA,MAAMqB,eAAe,GAAGjB,kBAAkB,CAAC,CAAC;EAE5C,IAAI,CAACI,OAAO,CAACc,QAAQ,EAAEC,WAAW,EAAE;IAChCf,OAAO,CAACO,OAAO,GACX,IAAIf,iBAAiB,CAAC,yCAAyC,CACnE,CAAC;IACD,OAAO,IAAI;EACf;EAEA,IAAIwB,UAAgC,GAAG,IAAI;EAE3C,IAAI;IACAA,UAAU,GAAG,MAAMhB,OAAO,CAACc,QAAQ,CAACC,WAAW,CAAC;MAC5CN,QAAQ;MACRQ,UAAU,EAAET,iBAAiB;MAC7BU,QAAQ,EAAER,eAAe;MACzBC,WAAW;MACXC,OAAO;MACPO,cAAc,EAAEnB,OAAO,CAACmB,cAAc;MACtCN,eAAe;MACfO,cAAc,EAAEpB,OAAO,CAACoB,cAAc;MACtCC,cAAc,EAAErB,OAAO,CAACqB;IAC5B,CAAC,CAAC;EACN,CAAC,CAAC,OAAOC,KAAK,EAAE;IACZtB,OAAO,CAACO,OAAO,GAAGe,KAAc,CAAC;IACjC,OAAO,IAAI;EACf;EAEA,IAAI,CAACN,UAAU,EAAE;IACb,OAAO,IAAI;EACf;EAEA,OAAO;IACH,GAAGA,UAAU;IACblB,YAAY,EAAE,MAAAA,CAAA,KAAY;MACtB,OAAOA,YAAY,CAAC;QAChBoB,QAAQ,EAAEF,UAAU,CAACO,EAAE;QACvBC,OAAO,EAAER,UAAU,CAACQ,OAAO;QAC3BC,QAAQ,EAAET,UAAU,CAACS,QAAQ;QAC7BC,MAAM,EAAEV,UAAU,CAACU;MACvB,CAAC,CAAC;IACN;EACJ,CAAC;AACL","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkForUpdate.d.ts","sourceRoot":"","sources":["../../../src/checkForUpdate.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGnE,MAAM,WAAW,qBAAqB;IAClC;;;;;OAKG;IACH,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC;IAE7C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG;IAC/C;;;OAGG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC,CAAC;AAGF,MAAM,WAAW,6BAA8B,SAAQ,qBAAqB;IACxE,QAAQ,EAAE,oBAAoB,CAAC;CAClC;AAED,wBAAsB,cAAc,CAChC,OAAO,EAAE,6BAA6B,GACvC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"checkForUpdate.d.ts","sourceRoot":"","sources":["../../../src/checkForUpdate.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGnE,MAAM,WAAW,qBAAqB;IAClC;;;;;OAKG;IACH,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC;IAE7C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG;IAC/C;;;OAGG;IACH,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC,CAAC;AAGF,MAAM,WAAW,6BAA8B,SAAQ,qBAAqB;IACxE,QAAQ,EAAE,oBAAoB,CAAC;CAClC;AAED,wBAAsB,cAAc,CAChC,OAAO,EAAE,6BAA6B,GACvC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAmEtC"}
|
package/package.json
CHANGED
package/src/checkForUpdate.ts
CHANGED
|
@@ -55,11 +55,6 @@ export async function checkForUpdate(
|
|
|
55
55
|
return null;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
if(Platform.OS == 'ios'){
|
|
59
|
-
console.log("Under Development in iOS Platform");
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
58
|
if (!["ios", "android"].includes(Platform.OS)) {
|
|
64
59
|
options.onError?.(
|
|
65
60
|
new IpayCodePushError("IpayCodePush is only supported on iOS and Android"),
|