Skip to content

Commit ea7aaa4

Browse files
committed
Adds iOS implementation for seamless sign-in
1 parent 541b2f1 commit ea7aaa4

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

ios/StripeOnrampSdk.mm

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,13 @@ - (instancetype)init
4949
[StripeSdkImpl.shared authenticateUser:resolve rejecter:reject];
5050
}
5151

52+
RCT_EXPORT_METHOD(authenticateUserWithToken:(nonnull NSString *)linkAuthTokenClientSecret
53+
resolve:(nonnull RCTPromiseResolveBlock)resolve
54+
reject:(nonnull RCTPromiseRejectBlock)reject)
55+
{
56+
[StripeSdkImpl.shared authenticateUserWithToken:linkAuthTokenClientSecret resolver:resolve rejecter:reject];
57+
}
58+
5259
RCT_EXPORT_METHOD(registerWalletAddress:(nonnull NSString *)address
5360
network:(nonnull NSString *)network
5461
resolve:(nonnull RCTPromiseResolveBlock)resolve

ios/StripeSdkImpl.swift

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1266,6 +1266,27 @@ public class StripeSdkImpl: NSObject, UIAdaptivePresentationControllerDelegate {
12661266
}
12671267
}
12681268

1269+
@objc(authenticateUserWithToken:resolver:rejecter:)
1270+
public func authenticateUserWithToken(
1271+
_ linkAuthTokenClientSecret: String,
1272+
resolver resolve: @escaping RCTPromiseResolveBlock,
1273+
rejecter reject: @escaping RCTPromiseRejectBlock
1274+
) -> Void {
1275+
guard isPublishableKeyAvailable(resolve), let coordinator = requireOnrampCoordinator(resolve) else {
1276+
return
1277+
}
1278+
1279+
Task {
1280+
do {
1281+
try await coordinator.authenticateUserWithToken(linkAuthTokenClientSecret)
1282+
resolve([:]) // Return empty object on success
1283+
} catch {
1284+
let errorResult = Errors.createError(ErrorType.Failed, error)
1285+
resolve(["error": errorResult["error"]!])
1286+
}
1287+
}
1288+
}
1289+
12691290
@objc(registerWalletAddress:network:resolver:rejecter:)
12701291
public func registerWalletAddress(
12711292
address: String,

0 commit comments

Comments
 (0)