UNPKG

visitor-segments

Version:
72 lines (71 loc) 3.08 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Segments = void 0; const visits_1 = require("./visits"); const session_1 = require("./session"); const params_1 = require("./params"); const geolocation_1 = require("./geolocation"); const referrer_1 = require("./referrer"); const page_1 = require("./page"); const conversions_1 = require("./conversions"); const ipapiProvider_1 = require("./geo/ipapiProvider"); const abstractSegments_1 = require("./abstractSegments"); const adBlocker_1 = require("./adBlocker"); const adBlockProvider_1 = require("./ads/adBlockProvider"); class Segments extends abstractSegments_1.AbstractSegments { constructor(scope, options) { const geoAdapter = (options === null || options === void 0 ? void 0 : options.geoAdapter) || new ipapiProvider_1.IPApiProvider(); const adAdapter = (options === null || options === void 0 ? void 0 : options.adAdapter) || new adBlockProvider_1.AdBlockProvider(); super(scope, options); this.visits = new visits_1.Visits(this); this.session = new session_1.Session(this); this.conversions = new conversions_1.Conversions(this); this.params = new params_1.Params(this); this.geolocation = new geolocation_1.GeoLocation(this, geoAdapter); this.referrer = new referrer_1.Referrer(this); this.page = new page_1.Page(this); this.adBlocker = new adBlocker_1.AdBlocker(this, adAdapter); } visit() { const _super = Object.create(null, { visit: { get: () => super.visit } }); return __awaiter(this, void 0, void 0, function* () { yield _super.visit.call(this); this.visits.update(); this.session.update(); this.params.update(); this.referrer.update(); this.page.update(); yield this.geolocation.update(); yield this.adBlocker.update(); }); } convert() { this.conversions.update(); } reset() { super.reset(); this.geolocation.reset(); this.visits.reset(); this.session.reset(); this.params.reset(); this.referrer.reset(); this.page.reset(); this.conversions.reset(); this.adBlocker.reset(); } clear() { super.clear(); } } exports.Segments = Segments;