{"version":3,"sources":["../../node_modules/.pnpm/@jitsu+sdk-js@3.1.3/node_modules/@jitsu/sdk-js/dist/npm/jitsu.es.js"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","rejected","result","done","then","__generator","body","_","label","sent","trys","ops","f","y","g","verb","Symbol","iterator","v","op","TypeError","pop","push","__spreadArray","to","from","pack","l","ar","Array","slice","concat","LogLevels","DEBUG","name","severity","INFO","WARN","ERROR","NONE","rootLogger","getLogger","createLogger","setRootLogLevel","logLevelName","logLevel","toLocaleUpperCase","console","warn","setDebugVar","val","isWindowAvailable","win","window","__jitsuDebug","globalLogLevel","minLogLevel","level","toUpperCase","logger","values","forEach","_a","toLowerCase","args","_i","message","msgArgs","splice","msgFormatted","log","error","warnMsg","undefined","windowAvailable","globalThis","requireWindow","msg","Error","serializeCookie","opt","enc","encodeURIComponent","str","path","maxAge","Math","floor","domain","expires","toUTCString","httpOnly","secure","sameSite","getCookieDomain","location","hostname","replace","cookieParsingCache","parseCookieString","cookieStr","res","cookies","split","cookie","idx","substr","copyAttributes","source","target","attributes","attribute","setAttribute","nodeName","nodeValue","insertAndExecute","element","html","innerHTML","scripts","getElementsByTagName","index","script","tag","document","createElement","id","appendChild","parentNode","removeChild","getCookies","useCache","getCookie","decodeURIComponent","RegExp","setCookie","opts","deleteCookie","generateId","random","toString","substring","generateRandom","parseQuery","qs","queryString","charAt","query","pairs","pair","UTM_TYPES","utm_source","utm_medium","utm_campaign","utm_term","utm_content","CLICK_IDS","gclid","fbclid","dclid","getDataFromParams","params","utm","click_id","reformatDate","strDate","end","repeat","endsWith","suffix","getHostWithProtocol","host","MemoryQueue","queue","flush","LocalStorageQueue","key","get","set","localStorage","setItem","JSON","stringify","data","getItem","parse","VERSION_INFO","env","date","version","JITSU_VERSION","MAX_AGE_TEN_YEARS","beaconTransport","url","json","debug","blob","Blob","type","navigator","sendBeacon","tryFormat","string","echoTransport","expireNonRootCookies","pathname","lastIndexOf","CookiePersistence","cookieDomain","cookieName","save","props","protocol","restore","parsed","delete","NoPersistence","defaultCompatMode","jitsuClient","client","JitsuClientImpl","init","browserEnv","getSourceIp","describeClient","referer","referrer","href","page_title","title","doc_path","doc_host","doc_search","search","screen_resolution","screen","width","height","vp_size","max","documentElement","clientWidth","innerWidth","clientHeight","innerHeight","user_agent","userAgent","user_language","language","doc_encoding","characterSet","getAnonymousId","idCookie","newId","ensurePrefix","prefix","cutPostfix","postfixes","postfix","fetchApi","req","disableCookies","headers","cookieOpts","ip","trim","requestHost","proto","reqUrl","queryPos","httpApi","header","vals","join","setHeader","socket","remoteAddress","URL","startsWith","emptyEnv","envs","nextjsApi","browser","express","empty","xmlHttpTransport","jsonPayload","additionalHeaders","handler","code","XMLHttpRequest","onerror","onload","status","statusText","responseText","open","setRequestHeader","entries","send","fetchTransport","fetch","e_1","resJson","text","contentType","e_2","_b","_c","method","Accept","userProperties","permanentProperties","globalProps","propsPerEvent","trackingHost","idCookieName","randomizeUrl","apiKey","initialized","_3pCookies","cookiePolicy","ipPolicy","beaconApi","transport","customHeaders","maxSendAttempts","retryTimeout","flushing","attempt","doNotSendEvent","userIdPersistence","track","rawTrack","payload","sendJson","makeEvent","event_type","src","payloadData","restoreId","context","getCtx","persistentProps","base","api_key","sourceIp","compatMode","eventn_ctx","_send3p","sourceType","object","eventType","src_payload","scheduleFlush","doSendJson","_this","urlPrefix","jsonString","postHandle","timeout","factor","pow","min","setTimeout","onLine","map","el","filter","response","propsPersistance","extras","isWindow","extras_1","childElementCount","now","Date","event_id","user","anonymous_id","ids","_getIds","utc_time","toISOString","local_tz_offset","getTimezoneOffset","options","_d","force_use_fetch","custom_headers","tracking_host","ip_policy","cookie_policy","privacy_policy","use_beacon_api","log_level","initialOptions","compat_mode","cookie_domain","randomize_url","cookie_name","restored","capture_3rd_party_cookies","ga_hook","segment_hook","interceptSegmentCalls","disable_event_persistence","addEventListener","min_send_timeout","max_send_timeout","max_send_attempts","interceptAnalytics","analytics","interceptor","chain","obj","integration","integrations","analyticsOriginal","userId","timestamp","sentAt","event","addSourceMiddleware","properties","persist","current","unset","propertyName"],"mappings":"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","file":"static/js/vendors~main~fe588337.3ca182a4.chunk.js","sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\n\nvar LogLevels = {\n DEBUG: { name: \"DEBUG\", severity: 10 },\n INFO: { name: \"INFO\", severity: 100 },\n WARN: { name: \"WARN\", severity: 1000 },\n ERROR: { name: \"ERROR\", severity: 10000 },\n NONE: { name: \"NONE\", severity: 10000 }\n};\nvar rootLogger = null;\n/**\n * Create logger or return cached instance\n */\nfunction getLogger() {\n if (rootLogger) {\n return rootLogger;\n }\n else {\n return rootLogger = createLogger();\n }\n}\nfunction setRootLogLevel(logLevelName) {\n var logLevel = LogLevels[logLevelName.toLocaleUpperCase()];\n if (!logLevel) {\n console.warn(\"Can't find log level with name \".concat(logLevelName.toLocaleUpperCase(), \", defaulting to INFO\"));\n logLevel = LogLevels.INFO;\n }\n rootLogger = createLogger(logLevel);\n return rootLogger;\n}\nfunction setDebugVar(name, val) {\n if (!isWindowAvailable()) {\n return;\n }\n var win = window;\n if (!win.__jitsuDebug) {\n win.__jitsuDebug = {};\n }\n win.__jitsuDebug[name] = val;\n}\n/**\n * Creates a loggger with given log-level\n * @param logLevel\n */\nfunction createLogger(logLevel) {\n var globalLogLevel = isWindowAvailable() && window['__eventNLogLevel'];\n var minLogLevel = LogLevels.WARN;\n if (globalLogLevel) {\n var level = LogLevels[globalLogLevel.toUpperCase()];\n if (level && level > 0) {\n minLogLevel = level;\n }\n }\n else if (logLevel) {\n minLogLevel = logLevel;\n }\n var logger = { minLogLevel: minLogLevel };\n Object.values(LogLevels).forEach(function (_a) {\n var name = _a.name, severity = _a.severity;\n logger[name.toLowerCase()] = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (severity >= minLogLevel.severity && args.length > 0) {\n var message = args[0];\n var msgArgs = args.splice(1);\n var msgFormatted = \"[J-\".concat(name, \"] \").concat(message);\n if (name === 'DEBUG' || name === 'INFO') {\n console.log.apply(console, __spreadArray([msgFormatted], msgArgs, false));\n }\n else if (name === 'WARN') {\n console.warn.apply(console, __spreadArray([msgFormatted], msgArgs, false));\n }\n else {\n console.error.apply(console, __spreadArray([msgFormatted], msgArgs, false));\n }\n }\n };\n });\n setDebugVar(\"logger\", logger);\n return logger;\n}\n\n/**\n * Checks if global variable 'window' is available. If it's available,\n * code runs in browser environment\n */\n\nfunction isWindowAvailable(warnMsg = undefined) {\n let windowAvailable = !!globalThis.window;\n if (!windowAvailable && warnMsg) {\n getLogger().warn(warnMsg);\n }\n return windowAvailable;\n}\n\n\n/**\n * @param msg\n * @return {Window}\n */\nfunction requireWindow(msg = undefined) {\n if (!isWindowAvailable()) {\n throw new Error(msg || \"window' is not available. Seems like this code runs outside browser environment. It shouldn't happen\")\n }\n return window;\n}\n\nfunction serializeCookie(name, val, opt) {\n var _a;\n if (opt === void 0) { opt = {}; }\n var enc = encodeURIComponent;\n var value = enc(val);\n var str = name + \"=\" + value;\n str += \"; Path=\" + ((_a = opt.path) !== null && _a !== void 0 ? _a : \"/\");\n if (opt.maxAge) {\n str += \"; Max-Age=\" + Math.floor(opt.maxAge);\n }\n if (opt.domain) {\n str += \"; Domain=\" + opt.domain;\n }\n if (opt.expires) {\n str += \"; Expires=\" + opt.expires.toUTCString();\n }\n if (opt.httpOnly) {\n str += \"; HttpOnly\";\n }\n if (opt.secure) {\n str += \"; Secure\";\n }\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === \"string\"\n ? opt.sameSite.toLowerCase()\n : opt.sameSite;\n switch (sameSite) {\n case true:\n str += \"; SameSite=Strict\";\n break;\n case \"lax\":\n str += \"; SameSite=Lax\";\n break;\n case \"strict\":\n str += \"; SameSite=Strict\";\n break;\n case \"none\":\n str += \"; SameSite=None\";\n break;\n default:\n throw new TypeError(\"option sameSite is invalid\");\n }\n }\n return str;\n}\n\nvar getCookieDomain = function () {\n if (isWindowAvailable()) {\n return window.location.hostname.replace(\"www.\", \"\");\n }\n return undefined;\n};\nvar cookieParsingCache;\nfunction parseCookieString(cookieStr) {\n if (!cookieStr) {\n return {};\n }\n var res = {};\n var cookies = cookieStr.split(\";\");\n for (var i = 0; i < cookies.length; i++) {\n var cookie = cookies[i];\n var idx = cookie.indexOf(\"=\");\n if (idx > 0) {\n res[cookie.substr(i > 0 ? 1 : 0, i > 0 ? idx - 1 : idx)] = cookie.substr(idx + 1);\n }\n }\n return res;\n}\nfunction copyAttributes(source, target) {\n return Array.from(source.attributes).forEach(function (attribute) {\n target.setAttribute(attribute.nodeName, attribute.nodeValue);\n });\n}\nfunction insertAndExecute(element, html) {\n element.innerHTML = html;\n var scripts = element.getElementsByTagName(\"script\");\n var index;\n for (index = scripts.length - 1; index >= 0; index--) {\n var script = scripts[index];\n var tag = document.createElement(\"script\");\n copyAttributes(script, tag);\n if (script.innerHTML) {\n tag.innerHTML = script.innerHTML;\n }\n tag.setAttribute(\"data-jitsu-tag-id\", element.id);\n document.getElementsByTagName(\"head\")[0].appendChild(tag);\n scripts[index].parentNode.removeChild(scripts[index]);\n }\n}\nvar getCookies = function (useCache) {\n if (useCache === void 0) { useCache = false; }\n if (useCache && cookieParsingCache) {\n return cookieParsingCache;\n }\n var res = parseCookieString(document.cookie);\n cookieParsingCache = res;\n return res;\n};\nvar getCookie = function (name) {\n if (!name) {\n return null;\n }\n return (decodeURIComponent(requireWindow().document.cookie.replace(new RegExp(\"(?:(?:^|.*;)\\\\s*\" +\n encodeURIComponent(name).replace(/[\\-\\.\\+\\*]/g, \"\\\\$&\") +\n \"\\\\s*\\\\=\\\\s*([^;]*).*$)|^.*$\"), \"$1\")) || null);\n};\nvar setCookie = function (name, value, opts) {\n if (opts === void 0) { opts = {}; }\n requireWindow().document.cookie = serializeCookie(name, value, opts);\n};\nvar deleteCookie = function (name, path) {\n if (path === void 0) { path = \"/\"; }\n document.cookie = name + \"= ; expires = Thu, 01 Jan 1970 00:00:00 GMT\" + (path ? (\"; path = \" + path) : \"\");\n};\nvar generateId = function () { return Math.random().toString(36).substring(2, 12); };\nvar generateRandom = function () { return Math.random().toString(36).substring(2, 7); };\nvar parseQuery = function (qs) {\n if (!qs) {\n return {};\n }\n var queryString = qs.length > 0 && qs.charAt(0) === \"?\" ? qs.substring(1) : qs;\n var query = {};\n var pairs = (queryString[0] === \"?\" ? queryString.substr(1) : queryString).split(\"&\");\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i].split(\"=\");\n query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || \"\");\n }\n return query;\n};\nvar UTM_TYPES = {\n utm_source: \"source\",\n utm_medium: \"medium\",\n utm_campaign: \"campaign\",\n utm_term: \"term\",\n utm_content: \"content\",\n};\nvar CLICK_IDS = {\n gclid: true,\n fbclid: true,\n dclid: true,\n};\nvar getDataFromParams = function (params) {\n var result = {\n utm: {},\n click_id: {},\n };\n for (var name in params) {\n if (!params.hasOwnProperty(name)) {\n continue;\n }\n var val = params[name];\n var utm = UTM_TYPES[name];\n if (utm) {\n result.utm[utm] = val;\n }\n else if (CLICK_IDS[name]) {\n result.click_id[name] = val;\n }\n }\n return result;\n};\n//2020-08-24T13:42:16.439Z -> 2020-08-24T13:42:16.439123Z\nvar reformatDate = function (strDate) {\n var end = strDate.split(\".\")[1];\n if (!end) {\n return strDate;\n }\n if (end.length >= 7) {\n return strDate;\n }\n return strDate.slice(0, -1) + \"0\".repeat(7 - end.length) + \"Z\";\n};\nfunction endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n}\nvar getHostWithProtocol = function (host) {\n while (endsWith(host, \"/\")) {\n host = host.substr(0, host.length - 1);\n }\n if (host.indexOf(\"https://\") === 0 || host.indexOf(\"http://\") === 0) {\n return host;\n }\n else {\n return \"//\" + host;\n }\n};\n\nvar MemoryQueue = /** @class */ (function () {\n function MemoryQueue() {\n this.queue = [];\n }\n MemoryQueue.prototype.flush = function () {\n var queue = this.queue;\n this.queue = [];\n return queue;\n };\n MemoryQueue.prototype.push = function () {\n var _a;\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n (_a = this.queue).push.apply(_a, values);\n };\n return MemoryQueue;\n}());\nvar LocalStorageQueue = /** @class */ (function () {\n function LocalStorageQueue(key) {\n this.key = key;\n }\n LocalStorageQueue.prototype.flush = function () {\n var queue = this.get();\n if (queue.length) {\n this.set([]);\n }\n return queue;\n };\n LocalStorageQueue.prototype.push = function () {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n var queue = this.get();\n queue.push.apply(queue, values);\n this.set(queue);\n };\n LocalStorageQueue.prototype.set = function (queue) {\n localStorage.setItem(this.key, JSON.stringify(queue));\n };\n LocalStorageQueue.prototype.get = function () {\n var data = localStorage.getItem(this.key);\n if (data !== null && data !== \"\") {\n return JSON.parse(data);\n }\n return [];\n };\n return LocalStorageQueue;\n}());\n\n//import { parse } from \"node-html-parser\";\nvar VERSION_INFO = {\n env: \"production\",\n date: \"2022-06-16T15:49:15.146Z\",\n version: \"3.1.3\",\n};\nvar JITSU_VERSION = \"\".concat(VERSION_INFO.version, \"/\").concat(VERSION_INFO.env, \"@\").concat(VERSION_INFO.date);\nvar MAX_AGE_TEN_YEARS = 31622400 * 10;\nvar beaconTransport = function (url, json) {\n getLogger().debug(\"Sending beacon\", json);\n var blob = new Blob([json], { type: \"text/plain\" });\n navigator.sendBeacon(url, blob);\n return Promise.resolve();\n};\nfunction tryFormat(string) {\n if (typeof string === \"string\") {\n try {\n return JSON.stringify(JSON.parse(string), null, 2);\n }\n catch (e) {\n return string;\n }\n }\n}\nvar echoTransport = function (url, json) {\n console.log(\"Jitsu client tried to send payload to \".concat(url), tryFormat(json));\n return Promise.resolve();\n};\n// This is a hack to expire all cookies with non-root path left behind by invalid tracking.\n// TODO remove soon\nfunction expireNonRootCookies(name, path) {\n if (path === void 0) { path = undefined; }\n path = path !== null && path !== void 0 ? path : window.location.pathname;\n if (path == \"\" || path == \"/\") {\n return;\n }\n deleteCookie(name, path);\n expireNonRootCookies(name, path.slice(0, path.lastIndexOf(\"/\")));\n}\nvar CookiePersistence = /** @class */ (function () {\n function CookiePersistence(cookieDomain, cookieName) {\n this.cookieDomain = cookieDomain;\n this.cookieName = cookieName;\n }\n CookiePersistence.prototype.save = function (props) {\n setCookie(this.cookieName, JSON.stringify(props), {\n domain: this.cookieDomain,\n secure: document.location.protocol !== \"http:\",\n maxAge: MAX_AGE_TEN_YEARS,\n });\n };\n CookiePersistence.prototype.restore = function () {\n expireNonRootCookies(this.cookieName);\n var str = getCookie(this.cookieName);\n if (str) {\n try {\n var parsed = JSON.parse(decodeURIComponent(str));\n if (typeof parsed !== \"object\") {\n getLogger().warn(\"Can't restore value of \".concat(this.cookieName, \"@\").concat(this.cookieDomain, \", expected to be object, but found \").concat(typeof parsed !== \"object\", \": \").concat(parsed, \". Ignoring\"));\n return undefined;\n }\n return parsed;\n }\n catch (e) {\n getLogger().error(\"Failed to decode JSON from \" + str, e);\n return undefined;\n }\n }\n return undefined;\n };\n CookiePersistence.prototype.delete = function () {\n deleteCookie(this.cookieName);\n };\n return CookiePersistence;\n}());\nvar NoPersistence = /** @class */ (function () {\n function NoPersistence() {\n }\n NoPersistence.prototype.save = function (props) { };\n NoPersistence.prototype.restore = function () {\n return undefined;\n };\n NoPersistence.prototype.delete = function () { };\n return NoPersistence;\n}());\nvar defaultCompatMode = false;\nfunction jitsuClient(opts) {\n var client = new JitsuClientImpl();\n client.init(opts);\n return client;\n}\nvar browserEnv = {\n getSourceIp: function () { return undefined; },\n describeClient: function () { return ({\n referer: document.referrer,\n url: window.location.href,\n page_title: document.title,\n doc_path: document.location.pathname,\n doc_host: document.location.hostname,\n doc_search: window.location.search,\n screen_resolution: screen.width + \"x\" + screen.height,\n vp_size: Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0) +\n \"x\" +\n Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0),\n user_agent: navigator.userAgent,\n user_language: navigator.language,\n doc_encoding: document.characterSet,\n }); },\n getAnonymousId: function (_a) {\n var name = _a.name, domain = _a.domain;\n expireNonRootCookies(name);\n var idCookie = getCookie(name);\n if (idCookie) {\n getLogger().debug(\"Existing user id\", idCookie);\n return idCookie;\n }\n var newId = generateId();\n getLogger().debug(\"New user id\", newId);\n setCookie(name, newId, {\n domain: domain,\n secure: document.location.protocol !== \"http:\",\n maxAge: MAX_AGE_TEN_YEARS,\n });\n return newId;\n },\n};\nfunction ensurePrefix(prefix, str) {\n if (!str) {\n return str;\n }\n return (str === null || str === void 0 ? void 0 : str.length) > 0 && str.indexOf(prefix) !== 0 ? prefix + str : str;\n}\nfunction cutPostfix(postfixes, str) {\n for (var _i = 0, _a = typeof postfixes === \"string\"\n ? [postfixes]\n : postfixes; _i < _a.length; _i++) {\n var postfix = _a[_i];\n while (str && str.length > 0 && str.charAt(str.length - 1) === postfix) {\n str = str.substring(0, str.length - 1);\n }\n }\n return str;\n}\nfunction fetchApi(req, res, opts) {\n if (opts === void 0) { opts = {}; }\n return {\n getAnonymousId: function (_a) {\n var name = _a.name, domain = _a.domain;\n if (opts === null || opts === void 0 ? void 0 : opts.disableCookies) {\n return \"\";\n }\n var cookie = parseCookieString(req.headers[\"cookie\"])[name];\n if (!cookie) {\n var cookieOpts = {\n maxAge: 31622400 * 10,\n httpOnly: false,\n };\n if (domain) {\n cookieOpts.domain = domain;\n }\n var newId = generateId();\n res.headers.set(\"Set-Cookie\", serializeCookie(name, newId, cookieOpts));\n return newId;\n }\n else {\n return cookie;\n }\n },\n getSourceIp: function () {\n var ip = req.headers[\"x-forwarded-for\"] || req.headers[\"x-real-ip\"] || req[\"ip\"];\n return ip && ip.split(\",\")[0].trim();\n },\n describeClient: function () {\n var requestHost = req.headers.get(\"host\") || req.headers.get(\"host\");\n var proto = cutPostfix([\":\", \"/\"], req.headers[\"x-forwarded-proto\"] || req[\"nextUrl\"][\"protocol\"] || \"http\");\n while (proto && proto.length > 0 && proto.charAt(proto.length - 1)) {\n proto = proto.substring(0, proto.length - 1);\n }\n var reqUrl = req.url || \"/\";\n var queryPos = reqUrl.indexOf(\"?\");\n var path, query;\n if (queryPos >= 0) {\n path = reqUrl.substring(0, queryPos);\n query = reqUrl.substring(queryPos + 1);\n }\n else {\n path = reqUrl;\n query = undefined;\n }\n query = ensurePrefix(query, \"?\");\n path = ensurePrefix(path, \"/\");\n return {\n doc_encoding: \"\",\n doc_host: requestHost,\n doc_path: reqUrl,\n doc_search: query,\n page_title: \"\",\n referer: req.headers[\"referrer\"],\n screen_resolution: \"\",\n url: \"\".concat(proto, \"://\").concat(requestHost).concat(path || \"\").concat(query || \"\"),\n user_agent: req.headers[\"user-agent\"],\n user_language: req.headers[\"accept-language\"] &&\n req.headers[\"accept-language\"].split(\",\")[0],\n vp_size: \"\",\n };\n },\n };\n}\nfunction httpApi(req, res, opts) {\n if (opts === void 0) { opts = {}; }\n var header = function (req, name) {\n var vals = req.headers[name.toLowerCase()];\n if (!vals) {\n return undefined;\n }\n if (typeof vals === \"string\") {\n return vals;\n }\n else if (vals.length > 0) {\n return vals.join(\",\");\n }\n };\n return {\n getAnonymousId: function (_a) {\n var name = _a.name, domain = _a.domain;\n if (opts === null || opts === void 0 ? void 0 : opts.disableCookies) {\n return \"\";\n }\n var cookie = parseCookieString(req.headers[\"cookie\"])[name];\n if (!cookie) {\n var cookieOpts = {\n maxAge: 31622400 * 10,\n httpOnly: false,\n };\n if (domain) {\n cookieOpts.domain = domain;\n }\n var newId = generateId();\n res.setHeader(\"Set-Cookie\", serializeCookie(name, newId, cookieOpts));\n return newId;\n }\n else {\n return cookie;\n }\n },\n getSourceIp: function () {\n var ip = header(req, \"x-forwarded-for\") ||\n header(req, \"x-real-ip\") ||\n req.socket.remoteAddress;\n return ip && ip.split(\",\")[0].trim();\n },\n describeClient: function () {\n var url = req.url\n ? new URL(req.url, req.url.startsWith(\"http\") ? undefined : \"http://localhost\")\n : {};\n var requestHost = header(req, \"x-forwarded-host\") || header(req, \"host\") || url.hostname;\n var proto = cutPostfix([\":\", \"/\"], header(req, \"x-forwarded-proto\") || url.protocol);\n var query = ensurePrefix(\"?\", url.search);\n var path = ensurePrefix(\"/\", url.pathname);\n return {\n doc_encoding: \"\",\n doc_host: requestHost,\n doc_path: req.url,\n doc_search: query,\n page_title: \"\",\n referer: header(req, \"referrer\"),\n screen_resolution: \"\",\n url: \"\".concat(proto, \"://\").concat(requestHost).concat(path || \"\").concat(query || \"\"),\n user_agent: req.headers[\"user-agent\"],\n user_language: req.headers[\"accept-language\"] &&\n req.headers[\"accept-language\"].split(\",\")[0],\n vp_size: \"\",\n };\n },\n };\n}\nvar emptyEnv = {\n getSourceIp: function () { return undefined; },\n describeClient: function () { return ({}); },\n getAnonymousId: function () { return \"\"; },\n};\n/**\n * Dictionary of supported environments\n */\nvar envs = {\n httpApi: httpApi,\n nextjsApi: httpApi,\n // fetchApi: fetchApi,\n // nextjsMiddleware: fetchApi,\n browser: function () { return browserEnv; },\n express: httpApi,\n empty: function () { return emptyEnv; },\n};\nvar xmlHttpTransport = function (url, jsonPayload, additionalHeaders, handler) {\n if (handler === void 0) { handler = function (code, body) { }; }\n var req = new window.XMLHttpRequest();\n return new Promise(function (resolve, reject) {\n req.onerror = function (e) {\n getLogger().error(\"Failed to send\", jsonPayload, e);\n handler(-1, {});\n reject(new Error(\"Failed to send JSON. See console logs\"));\n };\n req.onload = function () {\n if (req.status !== 200) {\n handler(req.status, {});\n getLogger().warn(\"Failed to send data to \".concat(url, \" (#\").concat(req.status, \" - \").concat(req.statusText, \")\"), jsonPayload);\n reject(new Error(\"Failed to send JSON. Error code: \".concat(req.status, \". See logs for details\")));\n }\n else {\n handler(req.status, req.responseText);\n }\n resolve();\n };\n req.open(\"POST\", url);\n req.setRequestHeader(\"Content-Type\", \"application/json\");\n Object.entries(additionalHeaders || {}).forEach(function (_a) {\n var key = _a[0], val = _a[1];\n return req.setRequestHeader(key, val);\n });\n req.send(jsonPayload);\n getLogger().debug(\"sending json\", jsonPayload);\n });\n};\nvar fetchTransport = function (fetch) {\n return function (url, jsonPayload, additionalHeaders, handler) {\n if (handler === void 0) { handler = function (code, body) { }; }\n return __awaiter(void 0, void 0, void 0, function () {\n var res, e_1, resJson, text, contentType, e_2;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _c.trys.push([0, 2, , 3]);\n return [4 /*yield*/, fetch(url, {\n method: \"POST\",\n headers: __assign({ Accept: \"application/json\", \"Content-Type\": \"application/json\" }, (additionalHeaders || {})),\n body: jsonPayload,\n })];\n case 1:\n res = _c.sent();\n return [3 /*break*/, 3];\n case 2:\n e_1 = _c.sent();\n getLogger().error(\"Failed to send\", jsonPayload, e_1);\n handler(-1, {});\n return [2 /*return*/];\n case 3:\n if (res.status !== 200) {\n getLogger().warn(\"Failed to send data to \".concat(url, \" (#\").concat(res.status, \" - \").concat(res.statusText, \")\"), jsonPayload);\n handler(res.status, {});\n return [2 /*return*/];\n }\n resJson = {};\n text = \"\";\n contentType = (_b = (_a = res.headers) === null || _a === void 0 ? void 0 : _a.get('Content-Type')) !== null && _b !== void 0 ? _b : \"\";\n _c.label = 4;\n case 4:\n _c.trys.push([4, 6, , 7]);\n return [4 /*yield*/, res.text()];\n case 5:\n text = _c.sent();\n resJson = JSON.parse(text);\n return [3 /*break*/, 7];\n case 6:\n e_2 = _c.sent();\n getLogger().error(\"Failed to parse \".concat(url, \" response. Content-type: \").concat(contentType, \" text: \").concat(text), e_2);\n return [3 /*break*/, 7];\n case 7:\n try {\n handler(res.status, resJson);\n }\n catch (e) {\n getLogger().error(\"Failed to handle \".concat(url, \" response. Content-type: \").concat(contentType, \" text: \").concat(text), e);\n }\n return [2 /*return*/];\n }\n });\n });\n };\n};\nvar JitsuClientImpl = /** @class */ (function () {\n function JitsuClientImpl() {\n this.userProperties = {};\n this.permanentProperties = {\n globalProps: {},\n propsPerEvent: {},\n };\n this.cookieDomain = \"\";\n this.trackingHost = \"\";\n this.idCookieName = \"\";\n this.randomizeUrl = false;\n this.apiKey = \"\";\n this.initialized = false;\n this._3pCookies = {};\n this.cookiePolicy = \"keep\";\n this.ipPolicy = \"keep\";\n this.beaconApi = false;\n this.transport = xmlHttpTransport;\n this.customHeaders = function () { return ({}); };\n this.queue = new MemoryQueue();\n this.maxSendAttempts = 4;\n this.retryTimeout = [500, 1e12];\n this.flushing = false;\n this.attempt = 1;\n }\n JitsuClientImpl.prototype.id = function (props, doNotSendEvent) {\n this.userProperties = __assign(__assign({}, this.userProperties), props);\n getLogger().debug(\"Jitsu user identified\", props);\n if (this.userIdPersistence) {\n this.userIdPersistence.save(props);\n }\n else {\n getLogger().warn(\"Id() is called before initialization\");\n }\n if (!doNotSendEvent) {\n return this.track(\"user_identify\", {});\n }\n else {\n return Promise.resolve();\n }\n };\n JitsuClientImpl.prototype.rawTrack = function (payload) {\n return this.sendJson(payload);\n };\n JitsuClientImpl.prototype.makeEvent = function (event_type, src, payload) {\n var _a;\n var env = payload.env, payloadData = __rest(payload, [\"env\"]);\n if (!env) {\n env = isWindowAvailable() ? envs.browser() : envs.empty();\n }\n this.restoreId();\n var context = this.getCtx(env);\n var persistentProps = __assign(__assign({}, this.permanentProperties.globalProps), ((_a = this.permanentProperties.propsPerEvent[event_type]) !== null && _a !== void 0 ? _a : {}));\n var base = __assign({ api_key: this.apiKey, src: src, event_type: event_type }, payloadData);\n var sourceIp = env.getSourceIp();\n if (sourceIp) {\n base[\"source_ip\"] = sourceIp;\n }\n return this.compatMode\n ? __assign(__assign(__assign({}, persistentProps), { eventn_ctx: context }), base) : __assign(__assign(__assign({}, persistentProps), context), base);\n };\n JitsuClientImpl.prototype._send3p = function (sourceType, object, type) {\n var eventType = \"3rdparty\";\n if (type && type !== \"\") {\n eventType = type;\n }\n var e = this.makeEvent(eventType, sourceType, {\n src_payload: object,\n });\n return this.sendJson(e);\n };\n JitsuClientImpl.prototype.sendJson = function (json) {\n return __awaiter(this, void 0, Promise, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!(this.maxSendAttempts > 1)) return [3 /*break*/, 1];\n this.queue.push([json, 0]);\n this.scheduleFlush(0);\n return [3 /*break*/, 3];\n case 1: return [4 /*yield*/, this.doSendJson(json)];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n JitsuClientImpl.prototype.doSendJson = function (json) {\n var _this = this;\n var cookiePolicy = this.cookiePolicy !== \"keep\" ? \"&cookie_policy=\".concat(this.cookiePolicy) : \"\";\n var ipPolicy = this.ipPolicy !== \"keep\" ? \"&ip_policy=\".concat(this.ipPolicy) : \"\";\n var urlPrefix = isWindowAvailable() ? \"/api/v1/event\" : \"/api/v1/s2s/event\";\n var url = \"\".concat(this.trackingHost).concat(urlPrefix, \"?token=\").concat(this.apiKey).concat(cookiePolicy).concat(ipPolicy);\n if (this.randomizeUrl) {\n url = \"\".concat(this.trackingHost, \"/api.\").concat(generateRandom(), \"?p_\").concat(generateRandom(), \"=\").concat(this.apiKey).concat(cookiePolicy).concat(ipPolicy);\n }\n var jsonString = JSON.stringify(json);\n getLogger().debug(\"Sending payload to \".concat(url), jsonString);\n return this.transport(url, jsonString, this.customHeaders(), function (code, body) {\n return _this.postHandle(code, body);\n });\n };\n JitsuClientImpl.prototype.scheduleFlush = function (timeout) {\n var _this = this;\n if (this.flushing) {\n return;\n }\n this.flushing = true;\n if (typeof timeout === \"undefined\") {\n var random = Math.random() + 1;\n var factor = Math.pow(2, this.attempt++);\n timeout = Math.min(this.retryTimeout[0] * random * factor, this.retryTimeout[1]);\n }\n getLogger().debug(\"Scheduling event queue flush in \".concat(timeout, \" ms.\"));\n setTimeout(function () { return _this.flush(); }, timeout);\n };\n JitsuClientImpl.prototype.flush = function () {\n return __awaiter(this, void 0, Promise, function () {\n var queue;\n var _a;\n var _this = this;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (isWindowAvailable() && !window.navigator.onLine) {\n this.flushing = false;\n this.scheduleFlush();\n }\n queue = this.queue.flush();\n this.flushing = false;\n if (queue.length === 0) {\n return [2 /*return*/];\n }\n _b.label = 1;\n case 1:\n _b.trys.push([1, 3, , 4]);\n return [4 /*yield*/, this.doSendJson(queue.map(function (el) { return el[0]; }))];\n case 2:\n _b.sent();\n this.attempt = 1;\n getLogger().debug(\"Successfully flushed \".concat(queue.length, \" events from queue\"));\n return [3 /*break*/, 4];\n case 3:\n _b.sent();\n queue = queue.map(function (el) { return [el[0], el[1] + 1]; }).filter(function (el) {\n if (el[1] >= _this.maxSendAttempts) {\n getLogger().error(\"Dropping queued event after \".concat(el[1], \" attempts since max send attempts \").concat(_this.maxSendAttempts, \" reached. See logs for details\"));\n return false;\n }\n return true;\n });\n if (queue.length > 0) {\n (_a = this.queue).push.apply(_a, queue);\n this.scheduleFlush();\n }\n else {\n this.attempt = 1;\n }\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n JitsuClientImpl.prototype.postHandle = function (status, response) {\n if (this.cookiePolicy === \"strict\" || this.cookiePolicy === \"comply\") {\n if (status === 200) {\n var data = response;\n if (typeof response === \"string\") {\n data = JSON.parse(response);\n }\n if (!data[\"delete_cookie\"]) {\n return;\n }\n }\n this.userIdPersistence.delete();\n this.propsPersistance.delete();\n deleteCookie(this.idCookieName);\n }\n if (status === 200) {\n var data = response;\n if (typeof response === \"string\" && response.length > 0) {\n data = JSON.parse(response);\n var extras = data[\"jitsu_sdk_extras\"];\n if (extras && extras.length > 0) {\n var isWindow = isWindowAvailable();\n if (!isWindow) {\n getLogger().error(\"Tags destination supported only in browser environment\");\n }\n else {\n for (var _i = 0, extras_1 = extras; _i < extras_1.length; _i++) {\n var _a = extras_1[_i], type = _a.type, id = _a.id, value = _a.value;\n if (type === \"tag\") {\n var tag = document.createElement(\"div\");\n tag.id = id;\n insertAndExecute(tag, value);\n if (tag.childElementCount > 0) {\n document.body.appendChild(tag);\n }\n }\n }\n }\n }\n }\n }\n };\n JitsuClientImpl.prototype.getCtx = function (env) {\n var now = new Date();\n var props = env.describeClient() || {};\n return __assign(__assign({ event_id: \"\", user: __assign({ anonymous_id: this.cookiePolicy !== \"strict\"\n ? env.getAnonymousId({\n name: this.idCookieName,\n domain: this.cookieDomain,\n })\n : \"\" }, this.userProperties), ids: this._getIds(), utc_time: reformatDate(now.toISOString()), local_tz_offset: now.getTimezoneOffset() }, props), getDataFromParams(parseQuery(props.doc_search)));\n };\n JitsuClientImpl.prototype._getIds = function () {\n if (!isWindowAvailable()) {\n return {};\n }\n var cookies = getCookies(false);\n var res = {};\n for (var _i = 0, _a = Object.entries(cookies); _i < _a.length; _i++) {\n var _b = _a[_i], key = _b[0], value = _b[1];\n if (this._3pCookies[key]) {\n res[key.charAt(0) == \"_\" ? key.substr(1) : key] = value;\n }\n }\n return res;\n };\n JitsuClientImpl.prototype.track = function (type, payload) {\n var data = payload || {};\n getLogger().debug(\"track event of type\", type, data);\n var e = this.makeEvent(type, this.compatMode ? \"eventn\" : \"jitsu\", payload || {});\n return this.sendJson(e);\n };\n JitsuClientImpl.prototype.init = function (options) {\n var _this = this;\n var _a, _b, _c, _d;\n if (isWindowAvailable() && !options.force_use_fetch) {\n if (options.fetch) {\n getLogger().warn(\"Custom fetch implementation is provided to Jitsu. However, it will be ignored since Jitsu runs in browser\");\n }\n this.transport = this.beaconApi ? beaconTransport : xmlHttpTransport;\n }\n else {\n if (!options.fetch && !globalThis.fetch) {\n throw new Error(\"Jitsu runs in Node environment. However, neither JitsuOptions.fetch is provided, nor global fetch function is defined. \\n\" +\n \"Please, provide custom fetch implementation. You can get it via node-fetch package\");\n }\n this.transport = fetchTransport(options.fetch || globalThis.fetch);\n }\n if (options.custom_headers &&\n typeof options.custom_headers === \"function\") {\n this.customHeaders = options.custom_headers;\n }\n else if (options.custom_headers) {\n this.customHeaders = function () {\n return options.custom_headers;\n };\n }\n if (options.tracking_host === \"echo\") {\n getLogger().warn('jitsuClient is configured with \"echo\" transport. Outgoing requests will be written to console');\n this.transport = echoTransport;\n }\n if (options.ip_policy) {\n this.ipPolicy = options.ip_policy;\n }\n if (options.cookie_policy) {\n this.cookiePolicy = options.cookie_policy;\n }\n if (options.privacy_policy === \"strict\") {\n this.ipPolicy = \"strict\";\n this.cookiePolicy = \"strict\";\n }\n if (options.use_beacon_api && navigator.sendBeacon) {\n this.beaconApi = true;\n }\n //can't handle delete cookie response when beacon api\n if (this.cookiePolicy === \"comply\" && this.beaconApi) {\n this.cookiePolicy = \"strict\";\n }\n if (options.log_level) {\n setRootLogLevel(options.log_level);\n }\n this.initialOptions = options;\n getLogger().debug(\"Initializing Jitsu Tracker tracker\", options, JITSU_VERSION);\n if (!options.key) {\n getLogger().error(\"Can't initialize Jitsu, key property is not set\");\n return;\n }\n this.compatMode =\n options.compat_mode === undefined\n ? defaultCompatMode\n : !!options.compat_mode;\n this.cookieDomain = options.cookie_domain || getCookieDomain();\n this.trackingHost = getHostWithProtocol(options[\"tracking_host\"] || \"t.jitsu.com\");\n this.randomizeUrl = options.randomize_url || false;\n this.idCookieName = options.cookie_name || \"__eventn_id\";\n this.apiKey = options.key;\n if (this.cookiePolicy === \"strict\") {\n this.propsPersistance = new NoPersistence();\n }\n else {\n this.propsPersistance = isWindowAvailable()\n ? new CookiePersistence(this.cookieDomain, this.idCookieName + \"_props\")\n : new NoPersistence();\n }\n if (this.cookiePolicy === \"strict\") {\n this.userIdPersistence = new NoPersistence();\n }\n else {\n this.userIdPersistence = isWindowAvailable()\n ? new CookiePersistence(this.cookieDomain, this.idCookieName + \"_usr\")\n : new NoPersistence();\n }\n if (this.propsPersistance) {\n var restored = this.propsPersistance.restore();\n if (restored) {\n this.permanentProperties = restored;\n this.permanentProperties.globalProps = (_a = restored.globalProps) !== null && _a !== void 0 ? _a : {};\n this.permanentProperties.propsPerEvent = (_b = restored.propsPerEvent) !== null && _b !== void 0 ? _b : {};\n }\n getLogger().debug(\"Restored persistent properties\", this.permanentProperties);\n }\n if (options.capture_3rd_party_cookies === false) {\n this._3pCookies = {};\n }\n else {\n (options.capture_3rd_party_cookies || [\n \"_ga\",\n \"_fbp\",\n \"_ym_uid\",\n \"ajs_user_id\",\n \"ajs_anonymous_id\",\n ]).forEach(function (name) { return (_this._3pCookies[name] = true); });\n }\n if (options.ga_hook) {\n getLogger().warn(\"GA event interceptor isn't supported anymore\");\n }\n if (options.segment_hook) {\n interceptSegmentCalls(this);\n }\n if (isWindowAvailable()) {\n if (!options.disable_event_persistence) {\n this.queue = new LocalStorageQueue(\"jitsu-event-queue\");\n this.scheduleFlush(0);\n }\n window.addEventListener(\"beforeunload\", function () { return _this.flush(); });\n }\n this.retryTimeout = [\n (_c = options.min_send_timeout) !== null && _c !== void 0 ? _c : this.retryTimeout[0],\n (_d = options.max_send_timeout) !== null && _d !== void 0 ? _d : this.retryTimeout[1],\n ];\n if (!!options.max_send_attempts) {\n this.maxSendAttempts = options.max_send_attempts;\n }\n this.initialized = true;\n };\n JitsuClientImpl.prototype.interceptAnalytics = function (analytics) {\n var _this = this;\n var interceptor = function (chain) {\n var _a;\n try {\n var payload = __assign({}, chain.payload);\n getLogger().debug(\"Intercepted segment payload\", payload.obj);\n var integration = chain.integrations[\"Segment.io\"];\n if (integration && integration.analytics) {\n var analyticsOriginal = integration.analytics;\n if (typeof analyticsOriginal.user === \"function\" &&\n analyticsOriginal.user() &&\n typeof analyticsOriginal.user().id === \"function\") {\n payload.obj.userId = analyticsOriginal.user().id();\n }\n }\n if ((_a = payload === null || payload === void 0 ? void 0 : payload.obj) === null || _a === void 0 ? void 0 : _a.timestamp) {\n payload.obj.sentAt = payload.obj.timestamp;\n }\n var type = chain.payload.type();\n if (type === \"track\") {\n type = chain.payload.event();\n }\n _this._send3p(\"ajs\", payload, type);\n }\n catch (e) {\n getLogger().warn(\"Failed to send an event\", e);\n }\n chain.next(chain.payload);\n };\n if (typeof analytics.addSourceMiddleware === \"function\") {\n //analytics is fully initialized\n getLogger().debug(\"Analytics.js is initialized, calling addSourceMiddleware\");\n analytics.addSourceMiddleware(interceptor);\n }\n else {\n getLogger().debug(\"Analytics.js is not initialized, pushing addSourceMiddleware to callstack\");\n analytics.push([\"addSourceMiddleware\", interceptor]);\n }\n analytics[\"__en_intercepted\"] = true;\n };\n JitsuClientImpl.prototype.restoreId = function () {\n if (this.userIdPersistence) {\n var props = this.userIdPersistence.restore();\n if (props) {\n this.userProperties = __assign(__assign({}, props), this.userProperties);\n }\n }\n };\n JitsuClientImpl.prototype.set = function (properties, opts) {\n var _a;\n var eventType = opts === null || opts === void 0 ? void 0 : opts.eventType;\n var persist = (opts === null || opts === void 0 ? void 0 : opts.persist) === undefined || (opts === null || opts === void 0 ? void 0 : opts.persist);\n if (eventType !== undefined) {\n var current = (_a = this.permanentProperties.propsPerEvent[eventType]) !== null && _a !== void 0 ? _a : {};\n this.permanentProperties.propsPerEvent[eventType] = __assign(__assign({}, current), properties);\n }\n else {\n this.permanentProperties.globalProps = __assign(__assign({}, this.permanentProperties.globalProps), properties);\n }\n if (this.propsPersistance && persist) {\n this.propsPersistance.save(this.permanentProperties);\n }\n };\n JitsuClientImpl.prototype.unset = function (propertyName, opts) {\n requireWindow();\n var eventType = opts === null || opts === void 0 ? void 0 : opts.eventType;\n var persist = (opts === null || opts === void 0 ? void 0 : opts.persist) === undefined || (opts === null || opts === void 0 ? void 0 : opts.persist);\n if (!eventType) {\n delete this.permanentProperties.globalProps[propertyName];\n }\n else if (this.permanentProperties.propsPerEvent[eventType]) {\n delete this.permanentProperties.propsPerEvent[eventType][propertyName];\n }\n if (this.propsPersistance && persist) {\n this.propsPersistance.save(this.permanentProperties);\n }\n };\n return JitsuClientImpl;\n}());\nfunction interceptSegmentCalls(t) {\n var win = window;\n if (!win.analytics) {\n win.analytics = [];\n }\n t.interceptAnalytics(win.analytics);\n}\n\nexport { envs, fetchApi, httpApi, jitsuClient };\n"],"sourceRoot":""}