Socket
Socket
Sign inDemoInstall

angular-ga

Package Overview
Dependencies
0
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.2.0 to 0.3.0

lib/interfaces/tracking-options.d.ts

2

index.d.ts
export { GoogleAnalyticsModule } from './lib/ga.module';
export { GoogleAnalyticsService } from './lib/ga.service';
export { GA_TOKEN } from './lib/ga.token';
export { GA_TOKEN, GA_OPTIONS } from './lib/ga.token';
export { GoogleAnalyticsModule } from './lib/ga.module';
export { GoogleAnalyticsService } from './lib/ga.service';
export { GA_TOKEN } from './lib/ga.token';
export { GA_TOKEN, GA_OPTIONS } from './lib/ga.token';

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./lib/ga.module","export":["GoogleAnalyticsModule"]},{"from":"./lib/ga.service","export":["GoogleAnalyticsService"]},{"from":"./lib/ga.token","export":["GA_TOKEN"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./lib/ga.module","export":["GoogleAnalyticsModule"]},{"from":"./lib/ga.service","export":["GoogleAnalyticsService"]},{"from":"./lib/ga.token","export":["GA_TOKEN"]}]}]
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./lib/ga.module","export":["GoogleAnalyticsModule"]},{"from":"./lib/ga.service","export":["GoogleAnalyticsService"]},{"from":"./lib/ga.token","export":["GA_TOKEN","GA_OPTIONS"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./lib/ga.module","export":["GoogleAnalyticsModule"]},{"from":"./lib/ga.service","export":["GoogleAnalyticsService"]},{"from":"./lib/ga.token","export":["GA_TOKEN","GA_OPTIONS"]}]}]

@@ -1,4 +0,4 @@

import { ModuleWithProviders, Provider } from '@angular/core';
import { ModuleWithProviders } from '@angular/core';
export declare class GoogleAnalyticsModule {
static forRoot(provider: Provider): ModuleWithProviders;
static forRoot(): ModuleWithProviders;
}

@@ -6,7 +6,6 @@ import { NgModule } from '@angular/core';

}
GoogleAnalyticsModule.forRoot = function (provider) {
GoogleAnalyticsModule.forRoot = function () {
return {
ngModule: GoogleAnalyticsModule,
providers: [
provider,
GoogleAnalyticsService

@@ -13,0 +12,0 @@ ]

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"GoogleAnalyticsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[],"declarations":[],"exports":[]}]}],"statics":{"forRoot":{"__symbolic":"function","parameters":["provider"],"value":{"ngModule":{"__symbolic":"reference","name":"GoogleAnalyticsModule"},"providers":[{"__symbolic":"reference","name":"provider"},{"__symbolic":"reference","module":"./ga.service","name":"GoogleAnalyticsService"}]}}}}}},{"__symbolic":"module","version":1,"metadata":{"GoogleAnalyticsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[],"declarations":[],"exports":[]}]}],"statics":{"forRoot":{"__symbolic":"function","parameters":["provider"],"value":{"ngModule":{"__symbolic":"reference","name":"GoogleAnalyticsModule"},"providers":[{"__symbolic":"reference","name":"provider"},{"__symbolic":"reference","module":"./ga.service","name":"GoogleAnalyticsService"}]}}}}}}]
[{"__symbolic":"module","version":3,"metadata":{"GoogleAnalyticsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[],"declarations":[],"exports":[]}]}],"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"GoogleAnalyticsModule"},"providers":[{"__symbolic":"reference","module":"./ga.service","name":"GoogleAnalyticsService"}]}}}}}},{"__symbolic":"module","version":1,"metadata":{"GoogleAnalyticsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[],"declarations":[],"exports":[]}]}],"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"GoogleAnalyticsModule"},"providers":[{"__symbolic":"reference","module":"./ga.service","name":"GoogleAnalyticsService"}]}}}}}}]
import { EventEmitter } from '@angular/core';
import { Event } from './interfaces/event';
import { PageView } from './interfaces/pageview';
import { TrackingOptions } from './interfaces/tracking-options';
export declare class GoogleAnalyticsService {
event: EventEmitter<Event>;
pageview: EventEmitter<PageView>;
constructor(trackingId: string);
constructor(trackingId: string, options: any);
configure(trackingId: string, options?: TrackingOptions): void;
set(fieldsObject: any): void;
set(fieldName: string, fieldValue: any): void;
private onEvent(event);
private onPageView(pageview);
}

@@ -1,13 +0,33 @@

import { Injectable, Inject, EventEmitter } from '@angular/core';
import { GA_TOKEN } from './ga.token';
import { Injectable, Inject, Optional, EventEmitter } from '@angular/core';
import { GA_TOKEN, GA_OPTIONS } from './ga.token';
export var GoogleAnalyticsService = (function () {
function GoogleAnalyticsService(trackingId) {
var _this = this;
function GoogleAnalyticsService(trackingId, options) {
this.event = new EventEmitter();
this.pageview = new EventEmitter();
ga('create', trackingId, 'auto');
if (trackingId) {
this.configure(trackingId, options);
}
}
GoogleAnalyticsService.prototype.configure = function (trackingId, options) {
var _this = this;
if (options === void 0) { options = 'auto'; }
ga('create', trackingId, options);
ga('send', 'pageview');
this.event.subscribe(function (x) { return _this.onEvent(x); });
this.pageview.subscribe(function (x) { return _this.onPageView(x); });
}
};
GoogleAnalyticsService.prototype.set = function (key, value) {
if (typeof key !== 'string' && typeof key !== 'object') {
throw new TypeError("Expected `fieldName` to be of type `string` or `object`, got `" + typeof key + "`");
}
if (typeof key === 'string' && value === undefined) {
throw new TypeError("Expected `fieldValue` to not be `undefined`");
}
if (typeof key === 'object') {
ga('set', key);
}
else {
ga('set', key, value);
}
};
GoogleAnalyticsService.prototype.onEvent = function (event) {

@@ -28,5 +48,6 @@ ga('send', 'event', event.category, event.action, event.label, event.value);

GoogleAnalyticsService.ctorParameters = function () { return [
{ type: undefined, decorators: [{ type: Inject, args: [GA_TOKEN,] },] },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [GA_TOKEN,] },] },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [GA_OPTIONS,] },] },
]; };
return GoogleAnalyticsService;
}());

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"GoogleAnalyticsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_TOKEN"}]}]],"parameters":[{"__symbolic":"reference","name":"string"}]}],"onEvent":[{"__symbolic":"method"}],"onPageView":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"GoogleAnalyticsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_TOKEN"}]}]],"parameters":[{"__symbolic":"reference","name":"string"}]}],"onEvent":[{"__symbolic":"method"}],"onPageView":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"GoogleAnalyticsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_TOKEN"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"}]}],"configure":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"onEvent":[{"__symbolic":"method"}],"onPageView":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"GoogleAnalyticsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_TOKEN"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"./ga.token","name":"GA_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","name":"any"}]}],"configure":[{"__symbolic":"method"}],"set":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"onEvent":[{"__symbolic":"method"}],"onPageView":[{"__symbolic":"method"}]}}}}]
import { OpaqueToken } from '@angular/core';
export declare const GA_TOKEN: OpaqueToken;
export declare const GA_OPTIONS: OpaqueToken;
import { OpaqueToken } from '@angular/core';
export var GA_TOKEN = new OpaqueToken('angular-ga TrackingId');
export var GA_OPTIONS = new OpaqueToken('angular-ga Tracking Options');

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"GA_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga TrackingId"]}}},{"__symbolic":"module","version":1,"metadata":{"GA_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga TrackingId"]}}}]
[{"__symbolic":"module","version":3,"metadata":{"GA_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga TrackingId"]},"GA_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga Tracking Options"]}}},{"__symbolic":"module","version":1,"metadata":{"GA_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga TrackingId"]},"GA_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"OpaqueToken"},"arguments":["angular-ga Tracking Options"]}}}]
{
"name": "angular-ga",
"version": "0.2.0",
"version": "0.3.0",
"description": "Google Analytics for your Angular application",
"license": "MIT",

@@ -11,3 +12,2 @@ "repository": "SamVerschueren/angular-ga",

"main": "index.js",
"module": "index.js",
"engines": {

@@ -23,2 +23,8 @@ "node": ">=4"

},
"files": [
"index.js",
"index.d.ts",
"index.metadata.json",
"lib"
],
"keywords": [

@@ -33,14 +39,8 @@ "angular",

],
"files": [
"index.js",
"index.d.ts",
"index.metadata.json",
"lib"
],
"dependencies": {},
"devDependencies": {
"@angular/core": "^2.4.5",
"@angular/common": "^2.4.5",
"@angular/compiler": "^2.4.5",
"@angular/compiler-cli": "^2.4.5",
"@angular/core": "^2.4.5",
"@angular/platform-server": "^2.4.5",

@@ -52,3 +52,4 @@ "codelyzer": "^0.0.28",

"zone.js": "0.7.2"
}
},
"module": "index.js"
}

@@ -29,6 +29,3 @@ # angular-ga [![Build Status](https://travis-ci.org/SamVerschueren/angular-ga.svg?branch=master)](https://travis-ci.org/SamVerschueren/angular-ga)

BrowserModule,
GoogleAnalyticsModule.forRoot({
provide: GA_TOKEN,
useValue: 'UA-TOKEN-1'
})
GoogleAnalyticsModule.forRoot()
],

@@ -38,2 +35,21 @@ declarations: [

],
bootstrap: [AppComponent],
providers: [
{ provide: GA_TOKEN, useValue: 'UA-TOKEN-1' }
]
})
export class AppModule { }
```
It's also possible to leave the configuration empty and configure the library later on through the service.
```js
@NgModule({
imports: [
BrowserModule,
GoogleAnalyticsModule.forRoot()
],
declarations: [
AppComponent
],
bootstrap: [AppComponent]

@@ -53,3 +69,2 @@ })

@Component({
moduleId: module.id,
templateUrl: 'app.component.html'

@@ -72,5 +87,44 @@ })

#### Configuration
```js
import { Component, OnInit } from '@angular/core';
import { GoogleAnalyticsService } from 'angular-ga';
@Component({
templateUrl: 'app.component.html'
})
export class AppComponent implements OnInit {
constructor(
private gaService: GoogleAnalyticsService
) { }
ngOnInit() {
this.gaService.configure('UA-TOKEN-1');
}
}
```
### Service
## API
### service.configure(trackingId, [options])
#### trackingId
Type: `string`
Tracking Id.
#### options
Type: `Object` `string`<br>
Default: `auto`
Any of the [`Create Only Fields`](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#create).
### service.event.emit(event: Event)

@@ -77,0 +131,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc