ngx-hotjar
Version:
A simple ng wrapper to load hotjar dependency by angular way
54 lines • 4.88 kB
JavaScript
import { NgModule } from '@angular/core';
import { NGX_HOTJAR_INITIALIZER_PROVIDER } from './initializers/hotjar.initializer';
import { NGX_HOTJAR_SETTINGS_TOKEN } from './tokens/ngx-hotjar-settings.token';
/**
* Install Hotjar scripts on Angular Startup life cycle if this environment is a Browser, otherwise just ignore this step.
*
* You shall add this module on the Gighest level module of your application, aka `AppModule`. When
* setup this module, you also have to provide you hotjat tracking code and the version of script. The default version
* is 6. We do not recoment to expose the tracking code in the repository, so please, use angular environment variable.
*
* ## Exemple of Use
*
```typescript
\@NgModule({
...
imports: [
...
NgxHotjarModule.forRoot(envorinment.hj)
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
]
})
```
*/
export class NgxHotjarModule {
/**
* Setup global settings and provide Hotjar Services.
*
* You private tracking code. This tracking code is also known as the same number as `SITE ID` inside Hotjar Dashboard.
*/
static forRoot(trackingCode, version = 6, uri) {
return {
ngModule: NgxHotjarModule,
providers: [
{
provide: NGX_HOTJAR_SETTINGS_TOKEN,
useValue: {
trackingCode,
version,
uri
}
},
NGX_HOTJAR_INITIALIZER_PROVIDER
]
};
}
}
NgxHotjarModule.decorators = [
{ type: NgModule, args: [{
imports: [],
declarations: [],
exports: []
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWhvdGphci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaG90amFyL3NyYy9saWIvbmd4LWhvdGphci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFL0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFNSCxNQUFNLE9BQU8sZUFBZTtJQUMxQjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFvQixFQUFFLFVBQWtCLENBQUMsRUFBRSxHQUFZO1FBQ3BFLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLHlCQUF5QjtvQkFDbEMsUUFBUSxFQUFFO3dCQUNSLFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxHQUFHO3FCQUNKO2lCQUNGO2dCQUNELCtCQUErQjthQUNoQztTQUNGLENBQUM7SUFDSixDQUFDOzs7WUExQkYsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxFQUFFO2dCQUNYLFlBQVksRUFBRSxFQUFFO2dCQUNoQixPQUFPLEVBQUUsRUFBRTthQUNaIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HWF9IT1RKQVJfSU5JVElBTElaRVJfUFJPVklERVIgfSBmcm9tICcuL2luaXRpYWxpemVycy9ob3RqYXIuaW5pdGlhbGl6ZXInO1xuaW1wb3J0IHsgTkdYX0hPVEpBUl9TRVRUSU5HU19UT0tFTiB9IGZyb20gJy4vdG9rZW5zL25neC1ob3RqYXItc2V0dGluZ3MudG9rZW4nO1xuXG4vKipcbiAqIEluc3RhbGwgSG90amFyIHNjcmlwdHMgb24gQW5ndWxhciBTdGFydHVwIGxpZmUgY3ljbGUgaWYgdGhpcyBlbnZpcm9ubWVudCBpcyBhIEJyb3dzZXIsIG90aGVyd2lzZSBqdXN0IGlnbm9yZSB0aGlzIHN0ZXAuXG4gKlxuICogWW91IHNoYWxsIGFkZCB0aGlzIG1vZHVsZSBvbiB0aGUgR2lnaGVzdCBsZXZlbCBtb2R1bGUgb2YgeW91ciBhcHBsaWNhdGlvbiwgYWthIGBBcHBNb2R1bGVgLiBXaGVuXG4gKiBzZXR1cCB0aGlzIG1vZHVsZSwgeW91IGFsc28gaGF2ZSB0byBwcm92aWRlIHlvdSBob3RqYXQgdHJhY2tpbmcgY29kZSBhbmQgdGhlIHZlcnNpb24gb2Ygc2NyaXB0LiBUaGUgZGVmYXVsdCB2ZXJzaW9uXG4gKiBpcyA2LiBXZSBkbyBub3QgcmVjb21lbnQgdG8gZXhwb3NlIHRoZSB0cmFja2luZyBjb2RlIGluIHRoZSByZXBvc2l0b3J5LCBzbyBwbGVhc2UsIHVzZSBhbmd1bGFyIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICpcbiAqICMjIEV4ZW1wbGUgb2YgVXNlXG4gKlxuYGBgdHlwZXNjcmlwdFxuXFxATmdNb2R1bGUoe1xuICAuLi5cbiAgaW1wb3J0czogW1xuICAgIC4uLlxuICAgIE5neEhvdGphck1vZHVsZS5mb3JSb290KGVudm9yaW5tZW50LmhqKVxuLy8gXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXlxuICBdXG59KVxuYGBgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBleHBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hIb3RqYXJNb2R1bGUge1xuICAvKipcbiAgICogU2V0dXAgZ2xvYmFsIHNldHRpbmdzIGFuZCBwcm92aWRlIEhvdGphciBTZXJ2aWNlcy5cbiAgICpcbiAgICogWW91IHByaXZhdGUgdHJhY2tpbmcgY29kZS4gVGhpcyB0cmFja2luZyBjb2RlIGlzIGFsc28ga25vd24gYXMgdGhlIHNhbWUgbnVtYmVyIGFzIGBTSVRFIElEYCBpbnNpZGUgSG90amFyIERhc2hib2FyZC5cbiAgICovXG4gIHN0YXRpYyBmb3JSb290KHRyYWNraW5nQ29kZTogc3RyaW5nLCB2ZXJzaW9uOiBudW1iZXIgPSA2LCB1cmk/OiBzdHJpbmcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neEhvdGphck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTmd4SG90amFyTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBOR1hfSE9USkFSX1NFVFRJTkdTX1RPS0VOLFxuICAgICAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgICAgICB0cmFja2luZ0NvZGUsXG4gICAgICAgICAgICB2ZXJzaW9uLFxuICAgICAgICAgICAgdXJpXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBOR1hfSE9USkFSX0lOSVRJQUxJWkVSX1BST1ZJREVSXG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19