DefinitelyTyped/types/angulartics/angulartics-tests.ts
Bateast2 e0baf3e2f3 Updated types for angulartics 1.4 (#20657)
* Updated types for angulartics 1.4

* add support for AMD/Require & UMD module
2017-10-27 17:03:00 -07:00

43 lines
1.6 KiB
TypeScript

import * as angular from 'angular';
import * as angulartics from 'angulartics';
namespace Analytics {
angular.module("angulartics.app", ["angulartics"])
.config(["$analyticsProvider", ($analyticsProvider:angulartics.IAnalyticsServiceProvider) => {
angulartics.waitForVendorApi("location", 1000, (message: string) => {
console.log(message);
});
$analyticsProvider.virtualPageviews(false);
$analyticsProvider.firstPageview(false);
$analyticsProvider.withAutoBase(true);
$analyticsProvider.developerMode(true);
$analyticsProvider.trackExceptions(true);
$analyticsProvider.trackRoutes(true);
$analyticsProvider.trackStates(true);
$analyticsProvider.registerEventTrack((action: string, properties?: any) => {
console.log(action);
});
$analyticsProvider.registerPageTrack((path:string, locationObj:angular.ILocationService) => {
console.log("viewed " + path);
});
$analyticsProvider.settings.pageTracking.basePath = "/my/base/path";
}])
.run(($analytics: angulartics.IAnalyticsService) => {
let isOptedOut = $analytics.getOptOut();
$analytics.eventTrack('eventName', { label: 'test' });
$analytics.pageTrack('/');
$analytics.setAlias('alias');
$analytics.setOptOut(false);
$analytics.setUsername('username');
$analytics.setUserProperties({ id: 1 });
$analytics.setSuperProperties({ role: 'admin' });
});
}