Skip to content

Commit 89cd1a4

Browse files
export-mikeMike James
andauthored
Present Carousels (#431)
* presentCarousels * typings for wrapper * README updates * sdk version Co-authored-by: Mike James <mike@medapps.com.au>
1 parent df8443f commit 89cd1a4

7 files changed

Lines changed: 36 additions & 2 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,12 @@ Intercom.displayHelpCenter();
313313
```
314314
Note that before calling `Intercom.displayHelpCenter()` it is required to enable Help Center in your Intercom settings.
315315
316+
### Present a Carousel
317+
```javascript
318+
Intercom.presentCarousel(carouselID);
319+
```
320+
Note that before calling `Intercom.presentCarousel(carouselID)` it is required to enable carousels and create a carousel in your Intercom settings.
321+
316322
### Listen for Unread Conversation Notifications
317323
```javascript
318324
componentDidMount() {

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,6 @@ repositories {
3838

3939
dependencies {
4040
implementation 'com.facebook.react:react-native:+'
41-
implementation 'io.intercom.android:intercom-sdk-base:7.+'
41+
implementation 'io.intercom.android:intercom-sdk-base:8.3.0'
4242
}
4343

android/src/main/java/com/robinpowered/react/Intercom/IntercomModule.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,17 @@ public void sendTokenToIntercom(String token, Promise promise) {
9494
promise.reject(e.toString());
9595
}
9696
}
97+
98+
@ReactMethod
99+
public void presentCarousel(String carouselID, Promise promise) {
100+
try {
101+
Intercom.client().displayCarousel(carouselID);
102+
Log.i(TAG, "presentCarousel");
103+
promise.resolve(null);
104+
} catch(Exception e) {
105+
promise.reject(e.toString());
106+
}
107+
}
97108

98109
@ReactMethod
99110
public void registerUnidentifiedUser(Promise promise) {

iOS/IntercomWrapper.m

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,13 @@ @implementation IntercomWrapper
6161
resolve([NSNull null]);
6262
};
6363

64+
// Available as NativeModules.IntercomWrapper.registerUnidentifiedUser
65+
RCT_EXPORT_METHOD(presentCarousel:(NSString*)carouselID resolver: (RCTPromiseResolveBlock)resolve rejector:(RCTPromiseRejectBlock)reject) {
66+
NSLog(@"registerUnidentifiedUser");
67+
[Intercom presentCarousel:carouselID];
68+
resolve([NSNull null]);
69+
};
70+
6471
// Available as NativeModules.IntercomWrapper.logout
6572
RCT_EXPORT_METHOD(logout :(RCTPromiseResolveBlock)resolve :(RCTPromiseRejectBlock)reject) {
6673
NSLog(@"logout");

index.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@ declare const Notifications: INotifications;
1818
*/
1919
export function sendTokenToIntercom(token: any): Promise<void>;
2020

21+
/**
22+
* presentCarousel
23+
* @param token
24+
*/
25+
export function presentCarousel(carouselID: String): Promise<void>;
26+
2127
/**
2228
* registerUnidentifiedUser
2329
* @returns {Promise<void>}

lib/IntercomClient.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,10 @@ class IntercomClient {
111111
return IntercomWrapper.setBottomPadding(padding);
112112
}
113113

114+
presentCarousel(carousel: String) {
115+
return IntercomWrapper.presentCarousel(carousel);
116+
}
117+
114118
addEventListener(type, handler) {
115119
if (!this._eventEmitter) {
116120
this._eventEmitter = new NativeEventEmitter(IntercomEventEmitter);

react-native-intercom.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,5 @@ Pod::Spec.new do |s|
1515
s.frameworks = [ "Intercom" ]
1616
s.static_framework = true
1717
s.dependency 'React'
18-
s.dependency 'Intercom', '~> 8.0.0'
18+
s.dependency 'Intercom', '~> 8.1.0'
1919
end

0 commit comments

Comments
 (0)