Compare commits

..
Author SHA1 Message Date
Daniel Sogl 421bbf20c2 feat(intercom): add suppressProactiveContent method
Adds suppressProactiveContent(types) added in cordova-plugin-intercom 16.4.0, which lets apps independently suppress carousel/survey proactive content apart from setInAppMessageVisibility.
2026-07-27 22:16:33 +02:00
2 changed files with 14 additions and 31 deletions
@@ -219,6 +219,17 @@ export class Intercom extends AwesomeCordovaNativePlugin {
return;
}
/**
* Suppress the given proactive content types, independently of `setInAppMessageVisibility`.
* @note All proactive content is visible by default; pass an empty array to unsuppress all.
*
* @param types An array of content type strings to suppress, e.g. `[IntercomPresentContentType.Carousel, IntercomPresentContentType.Survey]`.
*/
@Cordova()
suppressProactiveContent(types: IntercomPresentContentType[]): Promise<void> {
return;
}
/**
* Hide all Intercom windows that are currently displayed.
* This will hide the Messenger, Help Center, Articles, and in-product messages (eg. Mobile Carousels, chats, and posts).
@@ -375,8 +386,7 @@ export enum IntercomPresentContentType {
}
export type IntercomPresentContent =
| { id: string; type: IntercomPresentContentType }
| { ids: string[]; type: IntercomPresentContentType };
{ id: string; type: IntercomPresentContentType } | { ids: string[]; type: IntercomPresentContentType };
export interface IntercomUserAttributes {
email?: string;
@@ -228,6 +228,7 @@ export class UserPreferencesMethods extends NestedObject {
})
@Injectable()
export class WonderPush extends AwesomeCordovaNativePlugin {
/**
* Initializes the WonderPush SDK
* @param clientId
@@ -241,33 +242,6 @@ export class WonderPush extends AwesomeCordovaNativePlugin {
return;
}
/**
* Initializes the SDK and remembers credentials for subsequent auto-initialization.
*
* You can disable AUTO_INIT or instead use `"USE_REMEMBERED"` as a value for the Client ID and Client Secret.
* This is aimed at enabling complex integration scenarios where the Client ID and Client Secret are resolved dynamically and reused ever after.
* If you provide a null value, the credential will be forgotten and the SDK won't be initialized.
*
* @param {?string} clientId
* @param {?string} clientSecret
* @returns {Promise<any>}
*/
@Cordova()
initializeAndRememberCredentials(clientId: string | null, clientSecret: string | null): Promise<any> {
return;
}
/**
* Returns the remembered Client ID given to `initializeAndRememberCredentials()`.
* There is no similar getter for the Client Secret.
*
* @returns {Promise<string | null>} The remembered Client ID if both a non-empty Client ID and Client Secret were last remembered, `null` otherwise.
*/
@Cordova()
getRememberedClientId(): Promise<string | null> {
return;
}
/**
* Whether the SDK has been initialized.
*
@@ -579,11 +553,10 @@ export class WonderPush extends AwesomeCordovaNativePlugin {
* Because in iOS you only have *one* chance for prompting the user, you should find a good timing for that.
* For a start, you can systematically call it when the application starts, so that the user will be prompted directly at the first launch.
*
* @param {boolean} [fallbackToSettings] - When true, WonderPush will show a dialog prompting the user to go to settings and activate push notifications
* @returns {Promise<any>} Returns a promise that resolves upon successful subscription
*/
@Cordova()
subscribeToNotifications(fallbackToSettings?: boolean): Promise<any> {
subscribeToNotifications(): Promise<any> {
return;
}