Skip to content
This repository was archived by the owner on Feb 5, 2026. It is now read-only.

Commit d850d72

Browse files
committed
feat: Add a bridge for getPlacement method
1 parent f507f71 commit d850d72

3 files changed

Lines changed: 25 additions & 1 deletion

File tree

ios/QubitSDKModule/QubitSDKModule.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,14 @@ @interface RCT_EXTERN_REMAP_MODULE(QubitSDK, QubitSDKModule, NSObject)
2828
resolver:(RCTPromiseResolveBlock) resolver
2929
rejecter:(RCTPromiseRejectBlock) rejecter)
3030
RCT_EXTERN_METHOD(experienceShown:(NSString *) callback)
31+
RCT_EXTERN_METHOD(getPlacement:
32+
(NSString *) placementId
33+
mode:(NSString *) mode
34+
attributes:(NSDictionary *) attributes
35+
campaignId:(NSString *) campaignId
36+
experienceId:(NSString *) experienceId
37+
resolveVisitorState:(BOOL) resolveVisitorState
38+
resolver:(RCTPromiseResolveBlock) resolver
39+
rejecter:(RCTPromiseRejectBlock) rejecter)
3140

3241
@end

ios/QubitSDKModule/QubitSDKModule.swift

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,21 @@ class QubitSDKModule: NSObject {
6161
func experienceShown(callback: String) {
6262
QBExperienceEntityCallback(callback: callback).shown()
6363
}
64+
65+
@objc(getPlacement:mode:attributes:campaignId:experienceId:resolveVisitorState:resolver:rejecter:)
66+
func getPlacement(placementId: String, mode: String, attributes: [String: Any], campaignId: String, experienceId: String, resolveVisitorState: Bool, resolver: @escaping RCTPromiseResolveBlock, rejecter: @escaping RCTPromiseRejectBlock) {
67+
QubitSDK.getPlacement(with: getPlacement,
68+
mode: mode,
69+
attributes: attributes,
70+
campaignId: campaignId,
71+
experienceId: experienceId,
72+
resolveVisitorState: resolveVisitorState,
73+
onSuccess: { result in
74+
resolver(result.map( {$0.asDictionary} ))
75+
}, onError: {
76+
rejecter("Error", "QubitSDKModule: getPlacement failed.", error)
77+
})
78+
}
6479

6580
@objc
6681
static func requiresMainQueueSetup() -> Bool {

qubit-sdk-react-native.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,5 @@ Pod::Spec.new do |s|
2121

2222
s.dependency "React"
2323
s.dependency "QubitSDK"
24-
s.swift_versions = ['4.0', '4.1', '4.2', '5.0']
24+
s.swift_versions = ['4.0', '4.1', '4.2', '5.0', '5.1', '5.2', '5.3']
2525
end

0 commit comments

Comments
 (0)