@@ -3,6 +3,7 @@ import IDZSwiftCommonCrypto
33
44
55
6+ @available ( iOS 13 . 0 , * )
67@objc ( RnCrypto)
78class RnCrypto : NSObject {
89 var encryptionQueue = OperationQueue ( )
@@ -19,22 +20,25 @@ class RnCrypto: NSObject {
1920
2021 @objc func sha256(
2122 _ inputs: NSArray ,
22- resolve: RCTPromiseResolveBlock
23+ resolve: RCTPromiseResolveBlock ,
24+ reject: RCTPromiseRejectBlock
2325 ) {
2426 let byteInputs = inputs. map {
2527 guard let input = $0 as? String else { return [ ] }
26-
28+
2729 return utils. hexStringToBytes ( input)
2830 } as Array < [ UInt8 ] >
29-
31+
3032 let result = HMAC . sha256 ( inputs: byteInputs)
31-
33+
3234 return resolve ( result. description. hex)
3335 }
3436
37+ @available ( iOS 13 . 0 , * )
3538 @objc func sha512(
3639 _ inputs: NSArray ,
37- resolve: RCTPromiseResolveBlock
40+ resolve: RCTPromiseResolveBlock ,
41+ reject: RCTPromiseRejectBlock
3842 ) {
3943 let byteInputs = inputs. map {
4044 guard let input = $0 as Any as? String else {
@@ -48,12 +52,19 @@ class RnCrypto: NSObject {
4852 return resolve ( result. description. hex)
4953 }
5054
51- @objc func pbkdf2( _ password: String , salt: String , rounds: Int , derivedKeyLength: Int , resolve: RCTPromiseResolveBlock ) {
55+ @objc func pbkdf2(
56+ _ password: String ,
57+ salt: String ,
58+ rounds: NSNumber ,
59+ derivedKeyLength: NSNumber ,
60+ resolve: RCTPromiseResolveBlock ,
61+ reject: RCTPromiseRejectBlock
62+ ) {
5263 let result = keyDerivation. pbkdf2 (
5364 password: password,
5465 salt: salt,
55- rounds: rounds,
56- derivedKeyLength: derivedKeyLength
66+ rounds: rounds. intValue ,
67+ derivedKeyLength: derivedKeyLength. intValue
5768 )
5869 return resolve ( utils. bytesToHexString ( _: result) )
5970 }
@@ -118,3 +129,4 @@ class RnCrypto: NSObject {
118129 return false
119130 }
120131}
132+
0 commit comments