refactor(analytics):

This commit is contained in:
Guille 2016-07-08 01:09:34 +02:00
parent 3e0b2c5b32
commit 7bc847a7f8

View File

@ -1,4 +1,5 @@
import {Plugin, Cordova} from './plugin'; import { Cordova, Plugin } from './plugin';
declare var window; declare var window;
@ -12,112 +13,112 @@ declare var window;
* - (Android) Google Play Services SDK installed via [Android SDK Manager](https://developer.android.com/sdk/installing/adding-packages.html) * - (Android) Google Play Services SDK installed via [Android SDK Manager](https://developer.android.com/sdk/installing/adding-packages.html)
*/ */
@Plugin({ @Plugin({
plugin: 'cordova-plugin-google-analytics', plugin: 'cordova-plugin-google-analytics',
pluginRef: 'analytics', pluginRef: 'analytics',
repo: 'https://github.com/danwilson/google-analytics-plugin', repo: 'https://github.com/danwilson/google-analytics-plugin',
platforms: ['Android', 'iOS'] platforms: ['Android', 'iOS']
}) })
export class GoogleAnalytics { export class GoogleAnalytics {
/** /**
* In your 'deviceready' handler, set up your Analytics tracker. * In your 'deviceready' handler, set up your Analytics tracker.
* https://developers.google.com/analytics/devguides/collection/analyticsjs/ * https://developers.google.com/analytics/devguides/collection/analyticsjs/
* @param {string} id Your Google Analytics Mobile App property * @param {string} id Your Google Analytics Mobile App property
*/ */
@Cordova() @Cordova()
static startTrackerWithId(id: string): Promise<any> { return; } static startTrackerWithId(id: string): Promise<any> { return; }
/** /**
* Track a screen * Track a screen
* https://developers.google.com/analytics/devguides/collection/analyticsjs/screens * https://developers.google.com/analytics/devguides/collection/analyticsjs/screens
* *
* @param {string} title Screen title * @param {string} title Screen title
*/ */
@Cordova() @Cordova()
static trackView(title: string): Promise<any> { return; } static trackView(title: string): Promise<any> { return; }
/** /**
* Track an event * Track an event
* https://developers.google.com/analytics/devguides/collection/analyticsjs/events * https://developers.google.com/analytics/devguides/collection/analyticsjs/events
* @param {string} category * @param {string} category
* @param {string} action * @param {string} action
* @param {string} label * @param {string} label
* @param {number} value * @param {number} value
*/ */
@Cordova() @Cordova()
static trackEvent(category: string, action: string, label?: string, value?: number): Promise<any> { return; } static trackEvent(category: string, action: string, label?: string, value?: number): Promise<any> { return; }
/** /**
* Track an exception * Track an exception
* @param {string} description * @param {string} description
* @param {boolean} fatal * @param {boolean} fatal
*/ */
@Cordova() @Cordova()
static trackException(description: string, fatal: boolean): Promise<any> { return; } static trackException(description: string, fatal: boolean): Promise<any> { return; }
/** /**
* Track User Timing (App Speed) * Track User Timing (App Speed)
* @param {string} category * @param {string} category
* @param {number} intervalInMilliseconds * @param {number} intervalInMilliseconds
* @param {string} variable * @param {string} variable
* @param {string} label * @param {string} label
*/ */
@Cordova() @Cordova()
static trackTiming(category: string, intervalInMilliseconds: number, variable: string, label: string): Promise<any> { return; } static trackTiming(category: string, intervalInMilliseconds: number, variable: string, label: string): Promise<any> { return; }
/** /**
* Add a Transaction (Ecommerce) * Add a Transaction (Ecommerce)
* https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce#addTrans * https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce#addTrans
* @param {string} id * @param {string} id
* @param {string} affiliation * @param {string} affiliation
* @param {number} revenue * @param {number} revenue
* @param {number} tax * @param {number} tax
* @param {number} shipping * @param {number} shipping
* @param {string} currencyCode * @param {string} currencyCode
*/ */
@Cordova() @Cordova()
static addTransaction(id: string, affiliation: string, revenue: number, tax: number, shipping: number, currencyCode: string): Promise<any> { return; } static addTransaction(id: string, affiliation: string, revenue: number, tax: number, shipping: number, currencyCode: string): Promise<any> { return; }
/** /**
* Add a Transaction Item (Ecommerce) * Add a Transaction Item (Ecommerce)
* https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce#addItem * https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce#addItem
* @param {string} id * @param {string} id
* @param {string} name * @param {string} name
* @param {string} sku * @param {string} sku
* @param {string} category * @param {string} category
* @param {number} price * @param {number} price
* @param {number} quantity * @param {number} quantity
* @param {string} currencyCode * @param {string} currencyCode
*/ */
@Cordova() @Cordova()
static addTransactionItem(id: string, name: string, sku: string, category: string, price: number, quantity: number, currencyCode: string): Promise<any> { return; } static addTransactionItem(id: string, name: string, sku: string, category: string, price: number, quantity: number, currencyCode: string): Promise<any> { return; }
/** /**
* Add a Custom Dimension * Add a Custom Dimension
* https://developers.google.com/analytics/devguides/platform/customdimsmets * https://developers.google.com/analytics/devguides/platform/customdimsmets
* @param {string} key * @param {string} key
* @param {string} value * @param {string} value
*/ */
@Cordova() @Cordova()
static addCustomDimension(key: number, value: string): Promise<any> { return; } static addCustomDimension(key: number, value: string): Promise<any> { return; }
/** /**
* Set a UserId * Set a UserId
* https://developers.google.com/analytics/devguides/collection/analyticsjs/user-id * https://developers.google.com/analytics/devguides/collection/analyticsjs/user-id
* @param {string} id * @param {string} id
*/ */
@Cordova() @Cordova()
static setUserId(id: string): Promise<any> { return; } static setUserId(id: string): Promise<any> { return; }
/** /**
* Enable verbose logging * Enable verbose logging
*/ */
@Cordova() @Cordova()
static debugMode(): Promise<any> { return; } static debugMode(): Promise<any> { return; }
/** /**
* Enable/disable automatic reporting of uncaught exceptions * Enable/disable automatic reporting of uncaught exceptions
* @param {boolean} shouldEnable * @param {boolean} shouldEnable
*/ */
@Cordova() @Cordova()
static enableUncaughtExceptionReporting(shouldEnable: boolean): Promise<any> { return; } static enableUncaughtExceptionReporting(shouldEnable: boolean): Promise<any> { return; }
} }