package xyz.tokenproof.sdk.rtn import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod import com.facebook.react.bridge.Promise import xyz.tokenproof.sdk.wallet.TokenproofWallet class TokenproofQrSdkRnModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaModule(reactContext) { override fun getName(): String { return NAME } // See https://reactnative.dev/docs/native-modules-android @ReactMethod fun initializeDevice(promise: Promise){ try{ val r = TokenproofWallet.initializeDevice() promise.resolve(r); }catch (ex: Exception){ promise.reject(ex) } } @ReactMethod fun redeem(url: String, promise: Promise){ try{ val vc = TokenproofWallet.redeem(url) promise.resolve(vc) }catch(ex: Exception){ promise.reject(ex) } } @ReactMethod fun qrEncodeCredential(credential: String, promise: Promise){ try{ val qr = TokenproofWallet.qrEncodeTokenproofCredential(credential) promise.resolve(qr) }catch(ex: Exception){ promise.reject(ex) } } companion object { const val NAME = "TokenproofQrSdkRn" } }