cookie-service-banner
Version:
[](https://badge.fury.io/js/cookie-service-banner) [](https://travis-ci.org/liyokuna/cookie-consent) [![depen
58 lines • 8.2 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
var CookieServiceService = /** @class */ (function () {
function CookieServiceService() {
this.GA_COOKIE_NAMES = ['__utma', '__utmb', '__utmc', '__utmz', '_ga', '_gid', '_gat', '_gat_gtag'];
}
CookieServiceService.prototype.setCookie = function (name, val, domain) {
var date = new Date();
var value = val;
// Set it expire in 395 days, compliance with Cookie Laws in EU
date.setTime(date.getTime() + (395 * 24 * 60 * 60 * 1000));
document.cookie = name + ' = ' + value + '; expires=' + date.toUTCString() + '; path=/';
};
CookieServiceService.prototype.setCookieWithString = function (name, val, domain) {
var date = new Date();
var value = val;
// Set it expire in 395 days, compliance with Cookie Laws in EU
date.setTime(date.getTime() + (395 * 24 * 60 * 60 * 1000));
document.cookie = name + ' = ' + value + '; expires=' + date.toUTCString() + '; path=/';
};
CookieServiceService.prototype.getCookie = function (name) {
var value = '; ' + document.cookie;
var parts = value.split('; ' + name + '=');
if (parts.length === 2) {
return parts.pop().split(';').shift();
}
};
CookieServiceService.prototype.deleteCookie = function (name) {
var date = new Date();
date.setTime(date.getTime() + (-1 * 24 * 60 * 60 * 1000));
document.cookie = name + '=; expires=' + date.toUTCString() + '; path=/';
};
CookieServiceService.prototype.rejectCookie = function (gaId) {
var _this = this;
// disable GA
this.deleteCookie("ga-disable-" + gaId);
this.deleteCookie('consent');
window["ga-disable-" + gaId] = true;
window["_gat_gtag_" + gaId] = false;
this.GA_COOKIE_NAMES.forEach(function (cookieName) {
_this.deleteCookie(cookieName);
});
};
CookieServiceService.prototype.isAnalytics = function (str) {
return (/^ua-\d{4,9}-\d{1,4}$/i).test(str.toString());
};
CookieServiceService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CookieServiceService_Factory() { return new CookieServiceService(); }, token: CookieServiceService, providedIn: "root" });
CookieServiceService = __decorate([
Injectable({
providedIn: 'root'
}),
__metadata("design:paramtypes", [])
], CookieServiceService);
return CookieServiceService;
}());
export { CookieServiceService };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLXNlcnZpY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Nvb2tpZS1zZXJ2aWNlLWJhbm5lci8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlL2Nvb2tpZS1zZXJ2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDO0lBRUU7UUFDUSxvQkFBZSxHQUFHLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBRHZGLENBQUM7SUFHVix3Q0FBUyxHQUFoQixVQUFpQixJQUFZLEVBQUUsR0FBWSxFQUFFLE1BQWM7UUFDdkQsSUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDbEIsK0RBQStEO1FBQy9ELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDM0QsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsS0FBSyxHQUFHLEtBQUssR0FBRyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLFVBQVUsQ0FBRTtJQUM3RixDQUFDO0lBRU0sa0RBQW1CLEdBQTFCLFVBQTJCLElBQVksRUFBRSxHQUFXLEVBQUUsTUFBYztRQUNoRSxJQUFNLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNsQiwrREFBK0Q7UUFDL0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMzRCxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsS0FBSyxHQUFHLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsVUFBVSxDQUFFO0lBQzdGLENBQUM7SUFFTSx3Q0FBUyxHQUFoQixVQUFpQixJQUFZO1FBQ3pCLElBQU0sS0FBSyxHQUFHLElBQUksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQ3JDLElBQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN6QztJQUNMLENBQUM7SUFFTSwyQ0FBWSxHQUFuQixVQUFvQixJQUFZO1FBQzVCLElBQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzFELFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxHQUFHLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsVUFBVSxDQUFDO0lBQzdFLENBQUM7SUFFTSwyQ0FBWSxHQUFuQixVQUFvQixJQUFZO1FBQWhDLGlCQVNDO1FBUkcsYUFBYTtRQUNiLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWMsSUFBTSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixNQUFNLENBQUMsZ0JBQWMsSUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxlQUFhLElBQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUNwQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxVQUFDLFVBQVU7WUFDdEMsS0FBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSwwQ0FBVyxHQUFsQixVQUFtQixHQUFXO1FBQzVCLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDOztJQWhEVSxvQkFBb0I7UUFIaEMsVUFBVSxDQUFDO1lBQ1YsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQzs7T0FDVyxvQkFBb0IsQ0FpRGhDOytCQXRERDtDQXNEQyxBQWpERCxJQWlEQztTQWpEWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvb2tpZVNlcnZpY2VTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuICBwcml2YXRlIEdBX0NPT0tJRV9OQU1FUyA9IFsnX191dG1hJywgJ19fdXRtYicsICdfX3V0bWMnLCAnX191dG16JywgJ19nYScsICdfZ2lkJywgJ19nYXQnLCAnX2dhdF9ndGFnJ107XG5cbiAgcHVibGljIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbDogYm9vbGVhbiwgZG9tYWluOiBzdHJpbmcpIHtcbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgY29uc3QgdmFsdWUgPSB2YWw7XG4gICAgICAvLyBTZXQgaXQgZXhwaXJlIGluIDM5NSBkYXlzLCBjb21wbGlhbmNlIHdpdGggQ29va2llIExhd3MgaW4gRVVcbiAgICAgIGRhdGUuc2V0VGltZShkYXRlLmdldFRpbWUoKSArICgzOTUgKiAyNCAqIDYwICogNjAgKiAxMDAwKSk7XG4gICAgICBkb2N1bWVudC5jb29raWUgPSBuYW1lICsgJyA9ICcgKyB2YWx1ZSArICc7IGV4cGlyZXM9JyArIGRhdGUudG9VVENTdHJpbmcoKSArICc7IHBhdGg9LycgO1xuICB9XG5cbiAgcHVibGljIHNldENvb2tpZVdpdGhTdHJpbmcobmFtZTogc3RyaW5nLCB2YWw6IHN0cmluZywgZG9tYWluOiBzdHJpbmcpIHtcbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgY29uc3QgdmFsdWUgPSB2YWw7XG4gICAgICAvLyBTZXQgaXQgZXhwaXJlIGluIDM5NSBkYXlzLCBjb21wbGlhbmNlIHdpdGggQ29va2llIExhd3MgaW4gRVVcbiAgICAgIGRhdGUuc2V0VGltZShkYXRlLmdldFRpbWUoKSArICgzOTUgKiAyNCAqIDYwICogNjAgKiAxMDAwKSk7XG4gICAgICBkb2N1bWVudC5jb29raWUgPSBuYW1lICsgJyA9ICcgKyB2YWx1ZSArICc7IGV4cGlyZXM9JyArIGRhdGUudG9VVENTdHJpbmcoKSArICc7IHBhdGg9LycgO1xuICB9XG5cbiAgcHVibGljIGdldENvb2tpZShuYW1lOiBzdHJpbmcpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gJzsgJyArIGRvY3VtZW50LmNvb2tpZTtcbiAgICAgIGNvbnN0IHBhcnRzID0gdmFsdWUuc3BsaXQoJzsgJyArIG5hbWUgKyAnPScpO1xuICAgICAgaWYgKHBhcnRzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgIHJldHVybiBwYXJ0cy5wb3AoKS5zcGxpdCgnOycpLnNoaWZ0KCk7XG4gICAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQ29va2llKG5hbWU6IHN0cmluZykge1xuICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgKyAoLTEgKiAyNCAqIDYwICogNjAgKiAxMDAwKSk7XG4gICAgICBkb2N1bWVudC5jb29raWUgPSBuYW1lICsgJz07IGV4cGlyZXM9JyArIGRhdGUudG9VVENTdHJpbmcoKSArICc7IHBhdGg9Lyc7XG4gIH1cblxuICBwdWJsaWMgcmVqZWN0Q29va2llKGdhSWQ6IHN0cmluZykge1xuICAgICAgLy8gZGlzYWJsZSBHQVxuICAgICAgdGhpcy5kZWxldGVDb29raWUoYGdhLWRpc2FibGUtJHtnYUlkfWApO1xuICAgICAgdGhpcy5kZWxldGVDb29raWUoJ2NvbnNlbnQnKTtcbiAgICAgIHdpbmRvd1tgZ2EtZGlzYWJsZS0ke2dhSWR9YF0gPSB0cnVlO1xuICAgICAgd2luZG93W2BfZ2F0X2d0YWdfJHtnYUlkfWBdID0gZmFsc2U7XG4gICAgICB0aGlzLkdBX0NPT0tJRV9OQU1FUy5mb3JFYWNoKChjb29raWVOYW1lKSA9PiB7XG4gICAgICAgIHRoaXMuZGVsZXRlQ29va2llKGNvb2tpZU5hbWUpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgaXNBbmFseXRpY3Moc3RyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gKC9edWEtXFxkezQsOX0tXFxkezEsNH0kL2kpLnRlc3Qoc3RyLnRvU3RyaW5nKCkpO1xuICB9XG59XG4iXX0=