ngx-hotjar
Version:
A simple ng-6 wrapper to load hotjar dependency by angular way
47 lines (46 loc) • 5.17 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { APP_INITIALIZER, isDevMode } from '@angular/core';
import { NGX_HOTJAR_SETTINGS_TOKEN } from '../tokens/ngx-hotjar-settings.token';
/** @type {?} */
export var NGX_HOTJAR_INITIALIZER_PROVIDER = {
provide: APP_INITIALIZER,
multi: true,
useFactory: HotjarInitializer,
deps: [
NGX_HOTJAR_SETTINGS_TOKEN
]
};
/**
* @param {?} $settings
* @return {?}
*/
export function HotjarInitializer($settings) {
var _this = this;
return function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
if (!$settings.trackingCode) {
if (!isDevMode()) {
console.error('Empty tracking code for Hotjar. Make sure to provide one when initializing NgxHotjarModule.');
}
return [2 /*return*/];
}
(function (h, o, t, j, a, r) {
h.hj = h.hj || function () {
(h.hj.q = h.hj.q || []).push(arguments);
};
h._hjSettings = { hjid: $settings.trackingCode, hjsv: $settings.version || 6 };
a = o.getElementsByTagName('head')[0];
r = o.createElement('script');
r.async = 1;
r.src = t + h._hjSettings.hjid + j + h._hjSettings.hjsv;
a.appendChild(r);
})(window, document, 'https://static.hotjar.com/c/hotjar-', '.js?sv=');
return [2 /*return*/];
});
}); };
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90amFyLmluaXRpYWxpemVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWhvdGphci8iLCJzb3VyY2VzIjpbImxpYi9pbml0aWFsaXplcnMvaG90amFyLmluaXRpYWxpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLGVBQWUsRUFBWSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBRWhGLFdBQWEsK0JBQStCLEdBQWE7SUFDdkQsT0FBTyxFQUFFLGVBQWU7SUFDeEIsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsaUJBQWlCO0lBQzdCLElBQUksRUFBRTtRQUNKLHlCQUF5QjtLQUMxQjtDQUNGLENBQUM7Ozs7O0FBRUYsTUFBTSw0QkFDSixTQUEwQjtJQUQ1QixpQkE0QkM7SUF6QkMsT0FBTzs7WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtnQkFDM0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUNoQixPQUFPLENBQUMsS0FBSyxDQUFDLDZGQUE2RixDQUFDLENBQUM7aUJBQzlHO2dCQUVELHNCQUFPO2FBQ1I7WUFFRCxDQUFDLFVBQVMsQ0FBTSxFQUFFLENBQU0sRUFBRSxDQUFNLEVBQUUsQ0FBTSxFQUFFLENBQU8sRUFBRSxDQUFPO2dCQUN4RCxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUk7b0JBQ2IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3pDLENBQUM7Z0JBRUYsQ0FBQyxDQUFDLFdBQVcsR0FBRyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMvRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUV0QyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQ1osQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2dCQUV4RCxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBRWxCLENBQUMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLHFDQUFxQyxFQUFFLFNBQVMsQ0FBQyxDQUFDOzs7U0FDeEUsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBQcm92aWRlciwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSG90amFyU2V0dGluZ3MgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ktaG90amFyLXNldHRpbmdzJztcbmltcG9ydCB7IE5HWF9IT1RKQVJfU0VUVElOR1NfVE9LRU4gfSBmcm9tICcuLi90b2tlbnMvbmd4LWhvdGphci1zZXR0aW5ncy50b2tlbic7XG5cbmV4cG9ydCBjb25zdCBOR1hfSE9USkFSX0lOSVRJQUxJWkVSX1BST1ZJREVSOiBQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICBtdWx0aTogdHJ1ZSxcbiAgdXNlRmFjdG9yeTogSG90amFySW5pdGlhbGl6ZXIsXG4gIGRlcHM6IFtcbiAgICBOR1hfSE9USkFSX1NFVFRJTkdTX1RPS0VOXG4gIF1cbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBIb3RqYXJJbml0aWFsaXplcihcbiAgJHNldHRpbmdzOiBJSG90amFyU2V0dGluZ3Ncbikge1xuICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghJHNldHRpbmdzLnRyYWNraW5nQ29kZSkge1xuICAgICAgaWYgKCFpc0Rldk1vZGUoKSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFbXB0eSB0cmFja2luZyBjb2RlIGZvciBIb3RqYXIuIE1ha2Ugc3VyZSB0byBwcm92aWRlIG9uZSB3aGVuIGluaXRpYWxpemluZyBOZ3hIb3RqYXJNb2R1bGUuJyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAoZnVuY3Rpb24oaDogYW55LCBvOiBhbnksIHQ6IGFueSwgajogYW55LCBhPzogYW55LCByPzogYW55KSB7XG4gICAgICBoLmhqID0gaC5oaiB8fCBmdW5jdGlvbigpIHtcbiAgICAgICAgKGguaGoucSA9IGguaGoucSB8fCBbXSkucHVzaChhcmd1bWVudHMpO1xuICAgICAgfTtcblxuICAgICAgaC5faGpTZXR0aW5ncyA9IHsgaGppZDogJHNldHRpbmdzLnRyYWNraW5nQ29kZSwgaGpzdjogJHNldHRpbmdzLnZlcnNpb24gfHwgNiB9O1xuICAgICAgYSA9IG8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXTtcblxuICAgICAgciA9IG8uY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICByLmFzeW5jID0gMTtcbiAgICAgIHIuc3JjID0gdCArIGguX2hqU2V0dGluZ3MuaGppZCArIGogKyBoLl9oalNldHRpbmdzLmhqc3Y7XG5cbiAgICAgIGEuYXBwZW5kQ2hpbGQocik7XG5cbiAgICB9KSh3aW5kb3csIGRvY3VtZW50LCAnaHR0cHM6Ly9zdGF0aWMuaG90amFyLmNvbS9jL2hvdGphci0nLCAnLmpzP3N2PScpO1xuICB9O1xufVxuIl19