@objectiv/tracker-angular
Version:
Objectiv Angular framework analytics tracker for the open analytics taxonomy
126 lines • 13.5 kB
JavaScript
/*
* Copyright 2021-2022 Objectiv B.V.
*/
import { __assign, __decorate, __read, __values } from "tslib";
import { Directive, ElementRef, Input } from '@angular/core';
import { tagChild, tagChildren, tagContent, tagExpandable, tagInput, tagLink, tagLocation, tagMediaPlayer, tagNavigation, tagOverlay, tagPressable, tagRootLocation, } from '@objectiv/tracker-browser';
/**
* Allows calling Browser Tracker Location Taggers and Children Taggers directly from templates
*/
var ObjectivTrackerDirective = /** @class */ (function () {
function ObjectivTrackerDirective(element) {
this.element = element;
}
ObjectivTrackerDirective.prototype.ngOnInit = function () {
var e_1, _a;
var _b;
var locationTaggingAttributes;
var childrenTaggingAttributes;
// Children / Child Tagger
if (this.tagChildren) {
childrenTaggingAttributes = tagChildren(this.tagChildren);
}
else if (this.tagChild) {
childrenTaggingAttributes = tagChild(this.tagChild);
}
// Location Taggers
if (this.tagContent) {
locationTaggingAttributes = tagContent(this.tagContent);
}
else if (this.tagExpandable) {
locationTaggingAttributes = tagExpandable(this.tagExpandable);
}
else if (this.tagInput) {
locationTaggingAttributes = tagInput(this.tagInput);
}
else if (this.tagLink) {
locationTaggingAttributes = tagLink(this.tagLink);
}
else if (this.tagLocation) {
locationTaggingAttributes = tagLocation(this.tagLocation);
}
else if (this.tagMediaPlayer) {
locationTaggingAttributes = tagMediaPlayer(this.tagMediaPlayer);
}
else if (this.tagNavigation) {
locationTaggingAttributes = tagNavigation(this.tagNavigation);
}
else if (this.tagOverlay) {
locationTaggingAttributes = tagOverlay(this.tagOverlay);
}
else if (this.tagPressable) {
locationTaggingAttributes = tagPressable(this.tagPressable);
}
else if (this.tagRootLocation) {
locationTaggingAttributes = tagRootLocation(this.tagRootLocation);
}
// Merge Location Tagging Attributes and Children Tagging Attributes
var taggingAttributes = __assign(__assign(__assign({}, ((_b = this.applyTaggingAttributes) !== null && _b !== void 0 ? _b : {})), (locationTaggingAttributes !== null && locationTaggingAttributes !== void 0 ? locationTaggingAttributes : {})), (childrenTaggingAttributes !== null && childrenTaggingAttributes !== void 0 ? childrenTaggingAttributes : {}));
try {
// Set all attributes on the nativeElement
for (var _c = __values(Object.entries(taggingAttributes)), _d = _c.next(); !_d.done; _d = _c.next()) {
var _e = __read(_d.value, 2), key = _e[0], value = _e[1];
if (value !== undefined) {
this.element.nativeElement.setAttribute(key, value);
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_1) throw e_1.error; }
}
};
ObjectivTrackerDirective.ctorParameters = function () { return [
{ type: ElementRef }
]; };
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "applyTaggingAttributes", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagChild", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagChildren", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagContent", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagExpandable", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagInput", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagLink", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagLocation", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagMediaPlayer", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagNavigation", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagOverlay", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagPressable", void 0);
__decorate([
Input()
], ObjectivTrackerDirective.prototype, "tagRootLocation", void 0);
ObjectivTrackerDirective = __decorate([
Directive({
selector: '[applyTaggingAttributes], [tagChild], [tagChildren], [tagContent], [tagExpandable], [tagInput], [tagLink], [tagLocation], [tagMediaPlayer], [tagNavigation], [tagOverlay], [tagPressable], [tagRootLocation]',
})
], ObjectivTrackerDirective);
return ObjectivTrackerDirective;
}());
export { ObjectivTrackerDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0aXYtdHJhY2tlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ab2JqZWN0aXYvdHJhY2tlci1hbmd1bGFyLyIsInNvdXJjZXMiOlsib2JqZWN0aXYtdHJhY2tlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7O0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFJTCxRQUFRLEVBQ1IsV0FBVyxFQUVYLFVBQVUsRUFDVixhQUFhLEVBQ2IsUUFBUSxFQUNSLE9BQU8sRUFFUCxXQUFXLEVBR1gsY0FBYyxFQUNkLGFBQWEsRUFDYixVQUFVLEVBQ1YsWUFBWSxFQUNaLGVBQWUsR0FDaEIsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQzs7R0FFRztBQUtIO0lBZUUsa0NBQW1CLE9BQWdDO1FBQWhDLFlBQU8sR0FBUCxPQUFPLENBQXlCO0lBQUcsQ0FBQztJQUV2RCwyQ0FBUSxHQUFSOzs7UUFDRSxJQUFJLHlCQUFpRCxDQUFDO1FBQ3RELElBQUkseUJBQWlELENBQUM7UUFFdEQsMEJBQTBCO1FBQzFCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQix5QkFBeUIsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzNEO2FBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3hCLHlCQUF5QixHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDckQ7UUFFRCxtQkFBbUI7UUFDbkIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLHlCQUF5QixHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDekQ7YUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDN0IseUJBQXlCLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUMvRDthQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN4Qix5QkFBeUIsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3JEO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3ZCLHlCQUF5QixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDbkQ7YUFBTSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDM0IseUJBQXlCLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUMzRDthQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUM5Qix5QkFBeUIsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2pFO2FBQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQzdCLHlCQUF5QixHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDL0Q7YUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDMUIseUJBQXlCLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN6RDthQUFNLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUM1Qix5QkFBeUIsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzdEO2FBQU0sSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQy9CLHlCQUF5QixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDbkU7UUFFRCxvRUFBb0U7UUFDcEUsSUFBTSxpQkFBaUIsa0NBQ2xCLE9BQUMsSUFBSSxDQUFDLHNCQUFzQixtQ0FBSSxFQUFFLENBQUMsR0FDbkMsQ0FBQyx5QkFBeUIsYUFBekIseUJBQXlCLGNBQXpCLHlCQUF5QixHQUFJLEVBQUUsQ0FBQyxHQUNqQyxDQUFDLHlCQUF5QixhQUF6Qix5QkFBeUIsY0FBekIseUJBQXlCLEdBQUksRUFBRSxDQUFDLENBQ3JDLENBQUM7O1lBRUYsMENBQTBDO1lBQzFDLEtBQXlCLElBQUEsS0FBQSxTQUFBLE1BQU0sQ0FBQyxPQUFPLENBQXFCLGlCQUFpQixDQUFDLENBQUEsZ0JBQUEsNEJBQUU7Z0JBQXZFLElBQUEsd0JBQVksRUFBWCxXQUFHLEVBQUUsYUFBSztnQkFDbEIsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO29CQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO2lCQUNyRDthQUNGOzs7Ozs7Ozs7SUFDSCxDQUFDOztnQkFqRDJCLFVBQVU7O0lBZDdCO1FBQVIsS0FBSyxFQUFFOzRFQUFnRDtJQUMvQztRQUFSLEtBQUssRUFBRTs4REFBZ0M7SUFDL0I7UUFBUixLQUFLLEVBQUU7aUVBQXFDO0lBQ3BDO1FBQVIsS0FBSyxFQUFFO2dFQUFzQztJQUNyQztRQUFSLEtBQUssRUFBRTttRUFBeUM7SUFDeEM7UUFBUixLQUFLLEVBQUU7OERBQW9DO0lBQ25DO1FBQVIsS0FBSyxFQUFFOzZEQUE0QjtJQUMzQjtRQUFSLEtBQUssRUFBRTtpRUFBb0M7SUFDbkM7UUFBUixLQUFLLEVBQUU7b0VBQTBDO0lBQ3pDO1FBQVIsS0FBSyxFQUFFO21FQUF5QztJQUN4QztRQUFSLEtBQUssRUFBRTtnRUFBc0M7SUFDckM7UUFBUixLQUFLLEVBQUU7a0VBQXdDO0lBQ3ZDO1FBQVIsS0FBSyxFQUFFO3FFQUEyQztJQWJ4Qyx3QkFBd0I7UUFKcEMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUNOLDhNQUE4TTtTQUNqTixDQUFDO09BQ1csd0JBQXdCLENBaUVwQztJQUFELCtCQUFDO0NBQUEsQUFqRUQsSUFpRUM7U0FqRVksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIxLTIwMjIgT2JqZWN0aXYgQi5WLlxuICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENoaWxkcmVuVGFnZ2luZ1F1ZXJpZXMsXG4gIENoaWxkcmVuVGFnZ2luZ1F1ZXJ5LFxuICBMb2NhdGlvblRhZ2dlclBhcmFtZXRlcnMsXG4gIHRhZ0NoaWxkLFxuICB0YWdDaGlsZHJlbixcbiAgVGFnQ2hpbGRyZW5SZXR1cm5WYWx1ZSxcbiAgdGFnQ29udGVudCxcbiAgdGFnRXhwYW5kYWJsZSxcbiAgdGFnSW5wdXQsXG4gIHRhZ0xpbmssXG4gIFRhZ0xpbmtQYXJhbWV0ZXJzLFxuICB0YWdMb2NhdGlvbixcbiAgVGFnTG9jYXRpb25QYXJhbWV0ZXJzLFxuICBUYWdMb2NhdGlvblJldHVyblZhbHVlLFxuICB0YWdNZWRpYVBsYXllcixcbiAgdGFnTmF2aWdhdGlvbixcbiAgdGFnT3ZlcmxheSxcbiAgdGFnUHJlc3NhYmxlLFxuICB0YWdSb290TG9jYXRpb24sXG59IGZyb20gJ0BvYmplY3Rpdi90cmFja2VyLWJyb3dzZXInO1xuXG4vKipcbiAqIEFsbG93cyBjYWxsaW5nIEJyb3dzZXIgVHJhY2tlciBMb2NhdGlvbiBUYWdnZXJzIGFuZCBDaGlsZHJlbiBUYWdnZXJzIGRpcmVjdGx5IGZyb20gdGVtcGxhdGVzXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnW2FwcGx5VGFnZ2luZ0F0dHJpYnV0ZXNdLCBbdGFnQ2hpbGRdLCBbdGFnQ2hpbGRyZW5dLCBbdGFnQ29udGVudF0sIFt0YWdFeHBhbmRhYmxlXSwgW3RhZ0lucHV0XSwgW3RhZ0xpbmtdLCBbdGFnTG9jYXRpb25dLCBbdGFnTWVkaWFQbGF5ZXJdLCBbdGFnTmF2aWdhdGlvbl0sIFt0YWdPdmVybGF5XSwgW3RhZ1ByZXNzYWJsZV0sIFt0YWdSb290TG9jYXRpb25dJyxcbn0pXG5leHBvcnQgY2xhc3MgT2JqZWN0aXZUcmFja2VyRGlyZWN0aXZlIHtcbiAgQElucHV0KCkgYXBwbHlUYWdnaW5nQXR0cmlidXRlczogVGFnTG9jYXRpb25SZXR1cm5WYWx1ZTtcbiAgQElucHV0KCkgdGFnQ2hpbGQ6IENoaWxkcmVuVGFnZ2luZ1F1ZXJ5O1xuICBASW5wdXQoKSB0YWdDaGlsZHJlbjogQ2hpbGRyZW5UYWdnaW5nUXVlcmllcztcbiAgQElucHV0KCkgdGFnQ29udGVudDogTG9jYXRpb25UYWdnZXJQYXJhbWV0ZXJzO1xuICBASW5wdXQoKSB0YWdFeHBhbmRhYmxlOiBMb2NhdGlvblRhZ2dlclBhcmFtZXRlcnM7XG4gIEBJbnB1dCgpIHRhZ0lucHV0OiBMb2NhdGlvblRhZ2dlclBhcmFtZXRlcnM7XG4gIEBJbnB1dCgpIHRhZ0xpbms6IFRhZ0xpbmtQYXJhbWV0ZXJzO1xuICBASW5wdXQoKSB0YWdMb2NhdGlvbjogVGFnTG9jYXRpb25QYXJhbWV0ZXJzO1xuICBASW5wdXQoKSB0YWdNZWRpYVBsYXllcjogTG9jYXRpb25UYWdnZXJQYXJhbWV0ZXJzO1xuICBASW5wdXQoKSB0YWdOYXZpZ2F0aW9uOiBMb2NhdGlvblRhZ2dlclBhcmFtZXRlcnM7XG4gIEBJbnB1dCgpIHRhZ092ZXJsYXk6IExvY2F0aW9uVGFnZ2VyUGFyYW1ldGVycztcbiAgQElucHV0KCkgdGFnUHJlc3NhYmxlOiBMb2NhdGlvblRhZ2dlclBhcmFtZXRlcnM7XG4gIEBJbnB1dCgpIHRhZ1Jvb3RMb2NhdGlvbjogTG9jYXRpb25UYWdnZXJQYXJhbWV0ZXJzO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBsZXQgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlczogVGFnTG9jYXRpb25SZXR1cm5WYWx1ZTtcbiAgICBsZXQgY2hpbGRyZW5UYWdnaW5nQXR0cmlidXRlczogVGFnQ2hpbGRyZW5SZXR1cm5WYWx1ZTtcblxuICAgIC8vIENoaWxkcmVuIC8gQ2hpbGQgVGFnZ2VyXG4gICAgaWYgKHRoaXMudGFnQ2hpbGRyZW4pIHtcbiAgICAgIGNoaWxkcmVuVGFnZ2luZ0F0dHJpYnV0ZXMgPSB0YWdDaGlsZHJlbih0aGlzLnRhZ0NoaWxkcmVuKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnQ2hpbGQpIHtcbiAgICAgIGNoaWxkcmVuVGFnZ2luZ0F0dHJpYnV0ZXMgPSB0YWdDaGlsZCh0aGlzLnRhZ0NoaWxkKTtcbiAgICB9XG5cbiAgICAvLyBMb2NhdGlvbiBUYWdnZXJzXG4gICAgaWYgKHRoaXMudGFnQ29udGVudCkge1xuICAgICAgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA9IHRhZ0NvbnRlbnQodGhpcy50YWdDb250ZW50KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnRXhwYW5kYWJsZSkge1xuICAgICAgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA9IHRhZ0V4cGFuZGFibGUodGhpcy50YWdFeHBhbmRhYmxlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnSW5wdXQpIHtcbiAgICAgIGxvY2F0aW9uVGFnZ2luZ0F0dHJpYnV0ZXMgPSB0YWdJbnB1dCh0aGlzLnRhZ0lucHV0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnTGluaykge1xuICAgICAgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA9IHRhZ0xpbmsodGhpcy50YWdMaW5rKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnTG9jYXRpb24pIHtcbiAgICAgIGxvY2F0aW9uVGFnZ2luZ0F0dHJpYnV0ZXMgPSB0YWdMb2NhdGlvbih0aGlzLnRhZ0xvY2F0aW9uKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnTWVkaWFQbGF5ZXIpIHtcbiAgICAgIGxvY2F0aW9uVGFnZ2luZ0F0dHJpYnV0ZXMgPSB0YWdNZWRpYVBsYXllcih0aGlzLnRhZ01lZGlhUGxheWVyKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnTmF2aWdhdGlvbikge1xuICAgICAgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA9IHRhZ05hdmlnYXRpb24odGhpcy50YWdOYXZpZ2F0aW9uKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnT3ZlcmxheSkge1xuICAgICAgbG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA9IHRhZ092ZXJsYXkodGhpcy50YWdPdmVybGF5KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnUHJlc3NhYmxlKSB7XG4gICAgICBsb2NhdGlvblRhZ2dpbmdBdHRyaWJ1dGVzID0gdGFnUHJlc3NhYmxlKHRoaXMudGFnUHJlc3NhYmxlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGFnUm9vdExvY2F0aW9uKSB7XG4gICAgICBsb2NhdGlvblRhZ2dpbmdBdHRyaWJ1dGVzID0gdGFnUm9vdExvY2F0aW9uKHRoaXMudGFnUm9vdExvY2F0aW9uKTtcbiAgICB9XG5cbiAgICAvLyBNZXJnZSBMb2NhdGlvbiBUYWdnaW5nIEF0dHJpYnV0ZXMgYW5kIENoaWxkcmVuIFRhZ2dpbmcgQXR0cmlidXRlc1xuICAgIGNvbnN0IHRhZ2dpbmdBdHRyaWJ1dGVzID0ge1xuICAgICAgLi4uKHRoaXMuYXBwbHlUYWdnaW5nQXR0cmlidXRlcyA/PyB7fSksXG4gICAgICAuLi4obG9jYXRpb25UYWdnaW5nQXR0cmlidXRlcyA/PyB7fSksXG4gICAgICAuLi4oY2hpbGRyZW5UYWdnaW5nQXR0cmlidXRlcyA/PyB7fSksXG4gICAgfTtcblxuICAgIC8vIFNldCBhbGwgYXR0cmlidXRlcyBvbiB0aGUgbmF0aXZlRWxlbWVudFxuICAgIGZvciAobGV0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllczxzdHJpbmcgfCB1bmRlZmluZWQ+KHRhZ2dpbmdBdHRyaWJ1dGVzKSkge1xuICAgICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKGtleSwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19