Skip to content

Commit

Permalink
feat(mixpanel): add mixpanel support (#492)
Browse files Browse the repository at this point in the history
  • Loading branch information
ihadeed committed Aug 27, 2016
1 parent 9fe5c19 commit cf8e342
Show file tree
Hide file tree
Showing 2 changed files with 108 additions and 0 deletions.
3 changes: 3 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ import { NativePageTransitions } from './plugins/native-page-transitions';
import { NativeStorage } from './plugins/nativestorage';
import { Market } from './plugins/market';
import { MediaPlugin } from './plugins/media';
import { Mixpanel } from './plugins/mixpanel';
import { Network } from './plugins/network';
import { NFC } from './plugins/nfc';
import { OneSignal } from './plugins/onesignal';
Expand Down Expand Up @@ -128,6 +129,7 @@ export * from './plugins/localnotifications';
export * from './plugins/nfc';
export * from './plugins/media';
export * from './plugins/media-capture';
export * from './plugins/mixpanel';
export * from './plugins/pay-pal';
export * from './plugins/native-page-transitions';
export * from './plugins/printer';
Expand Down Expand Up @@ -265,6 +267,7 @@ window['IonicNative'] = {
Market: Market,
MediaCapture: MediaCapture,
MediaPlugin: MediaPlugin,
Mixpanel: Mixpanel,
NativeAudio: NativeAudio,
NativePageTransitions: NativePageTransitions,
NativeStorage: NativeStorage,
Expand Down
105 changes: 105 additions & 0 deletions src/plugins/mixpanel.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
import {Plugin, Cordova, CordovaProperty} from './plugin';
/**
* @name Mixpanel
* @description
* Cordova Plugin that wraps Mixpanel SDK for Android and iOS
*
* @usage
* ```
* import {Mixpanel} from 'ionic-native';
*
* Mixpanel.init(token)
* .then(onSuccess)
* .catch(onError);
*
* ```
*/
@Plugin({
plugin: 'cordova-plugin-mixpanel',
pluginRef: 'mixpanel',
repo: 'https://github.com/samzilverberg/cordova-mixpanel-plugin'
})
export class Mixpanel {
/**
*
* @param aliasId {string}
* @param originalId {string}
* @returns {Promise<any>}
*/
@Cordova()
static alias(aliasId: string, originalId: string): Promise<any> {return; }

/**
*
* @returns {Promise<any>}
*/
@Cordova()
static distinctId(): Promise<any> {return; }

/**
*
*/
@Cordova()
static flush(): Promise<any> {return; }

/**
*
* @param distinctId {string}
* @returns {Promise<any>}
*/
@Cordova()
static identify(distinctId): Promise<any> {return; }

/**
*
* @param token {string}
* @returns {Promise<any>}
*/
@Cordova()
static init(token: string): Promise<any> {return; }

/**
*
* @param superProperties
* @returns {Promise<any>}
*/
@Cordova()
static registerSuperProperties(superProperties: any): Promise<any> {return; }

/**
*
* @returns {Promise<any>}
*/
@Cordova()
static reset(): Promise<any> {return; }

/**
*
* @param eventName
* @param eventProperties
*/
@Cordova()
static track(eventName: string, eventProperties: any): Promise<any> {return; }

/**
*
* @returns {Promise<any>}
*/
@Cordova()
static showSurvey(): Promise<any> {return; }

/**
*
* @returns {MixpanelPeople}
*/
@CordovaProperty
static people: MixpanelPeople;

}
export declare class MixpanelPeople {
static identify(distinctId: string, onSuccess?: Function, onFail?: Function): void;
static increment(peopleProperties: any, onSuccess?: Function, onFail?: Function): void;
static setPushId(pushId: string, onSuccess?: Function, onFail?: Function): void;
static set(peopleProperties: any, onSuccess?: Function, onFail?: Function): void;
static setOnce(peopleProperties: any, onSuccess?: Function, onFail?: Function): void;
}

0 comments on commit cf8e342

Please sign in to comment.