{"version":3,"file":"vendor.heliotrope.b6df8cdda1199b1c.js","mappings":";;;;;;;;;;;;;;;;;;;;AAAa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;AACF,kBAAe;;AAEf,oCAAoC,mBAAO,CAAC,KAAS;;AAErD,uBAAuB,mBAAO,CAAC,KAAmB;;AAElD,aAAa,mBAAO,CAAC,IAAS;;AAE9B,sDAAsD,mBAAO,CAAC,KAA2B;;AAEzF,kDAAkD,mBAAO,CAAC,KAAuB;;AAEjF,uCAAuC,uCAAuC;;AAE9E,2CAA2C,gCAAgC,oCAAoC,oDAAoD,8DAA8D,iEAAiE,GAAG,kCAAkC;;AAEvU,iCAAiC,gBAAgB,sBAAsB,OAAO,uDAAuD,aAAa,uDAAuD,4CAA4C,KAAK,6CAA6C,6EAA6E,OAAO,iDAAiD,mFAAmF,OAAO;;AAEtgB,4CAA4C,kBAAkB,kCAAkC,oEAAoE,KAAK,OAAO,oBAAoB;;AAEpM;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;;AAEL;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;;;;;;AClHa;AACb,wBAAwB,mBAAO,CAAC,KAAmB;AACnD,wBAAwB,mBAAO,CAAC,KAAsB;AACtD,qBAAqB,mBAAO,CAAC,GAAgB;AAC7C,qBAAqB,mBAAO,CAAC,KAAY;;AAEzC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,EAAE;AACF;;AAEA,eAAe;AACf,aAAa;;AAEb,iBAAiB;AACjB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;A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","sources":["webpack://admin/./node_modules/heliotrope/lib/broadcast.js","webpack://admin/./node_modules/heliotrope/node_modules/query-string/index.js","webpack://admin/./node_modules/heliotrope/lib/types.js","webpack://admin/./node_modules/heliotrope/lib/dotComCookie.js","webpack://admin/./node_modules/heliotrope/lib/auid.js","webpack://admin/./node_modules/heliotrope/lib/state.js","webpack://admin/./node_modules/heliotrope/lib/deleteAmplitudeCookie.js","webpack://admin/./node_modules/heliotrope/lib/urlHelpers.js","webpack://admin/./node_modules/heliotrope/lib/heliotropeError.js","webpack://admin/./node_modules/heliotrope/lib/processIntegrations.js","webpack://admin/./node_modules/heliotrope/lib/getSafeOptions.js","webpack://admin/./node_modules/heliotrope/lib/getCurrentTimestamp.js","webpack://admin/./node_modules/heliotrope/lib/deepMergeWithArrayMerge.js","webpack://admin/./node_modules/heliotrope/lib/transformUserAgent.js","webpack://admin/./node_modules/heliotrope/lib/main.js","webpack://admin/./node_modules/heliotrope/lib/processCache.js","webpack://admin/./node_modules/heliotrope/lib/loadScript.js","webpack://admin/./node_modules/heliotrope/lib/processGAClientId.js"],"sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = broadcast;\n\nvar _state = _interopRequireDefault(require(\"./state\"));\n\nvar _heliotropeError = require(\"./heliotropeError\");\n\nvar _types = require(\"./types\");\n\nvar _deepMergeWithArrayMerge = _interopRequireDefault(require(\"./deepMergeWithArrayMerge\"));\n\nvar _getCurrentTimestamp = _interopRequireDefault(require(\"./getCurrentTimestamp\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction broadcast(options) {\n var {\n initialized,\n enabled,\n appId,\n integrations,\n context\n } = _state.default.get();\n\n var {\n auid\n } = _state.default.get().persistedProperties;\n\n var props = 'properties' in options ? options.properties : {};\n var propsWithPersisted = (0, _deepMergeWithArrayMerge.default)(_state.default.get().persistedProperties, props);\n\n if (!initialized) {\n _state.default.addToCache((0, _deepMergeWithArrayMerge.default)(_objectSpread({\n timestamp: (0, _getCurrentTimestamp.default)()\n }, options), {\n properties: propsWithPersisted\n }));\n\n return Promise.resolve({\n message: \"The '\".concat(options.segmentMethod, \"' call was cached\")\n });\n }\n\n if (!enabled) {\n return Promise.resolve({\n message: 'The SDK is not enabled'\n });\n }\n\n var propsWithAppId = (0, _deepMergeWithArrayMerge.default)(propsWithPersisted, {\n appId\n });\n return new Promise(resolve => {\n if ('timeout' in options) {\n setTimeout(resolve, options.timeout);\n }\n\n var segmentOptions = {\n integrations,\n context\n };\n\n try {\n switch (options.segmentMethod) {\n case _types.SEGMENT_METHODS.TRACK:\n {\n if (options.timestamp) {\n segmentOptions.timestamp = options.timestamp;\n }\n\n window.analytics.track(options.eventName, propsWithAppId, segmentOptions, resolve);\n break;\n }\n\n case _types.SEGMENT_METHODS.PAGE:\n {\n window.analytics.page(options.pageName, propsWithAppId, segmentOptions, resolve);\n break;\n }\n\n case _types.SEGMENT_METHODS.IDENTIFY:\n {\n if (auid) {\n window.analytics.identify(auid, options.traits, segmentOptions, resolve);\n break;\n }\n\n window.analytics.identify(options.traits, segmentOptions, resolve);\n break;\n }\n\n default:\n {\n throw new Error(\"\".concat(options.type, \" is not a supported analytics call\"));\n }\n }\n } catch (error) {\n error.message = \"\".concat(_heliotropeError.errorPrefix).concat(error.message);\n throw error;\n }\n });\n}\n\n;\n//# sourceMappingURL=broadcast.js.map","'use strict';\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\nconst filterObject = require('filter-obj');\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[', index, ']'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')\n\t\t\t\t];\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[]'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (value === null || value === undefined || value.length === 0) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, encode(key, options)];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nfunction parse(query, options) {\n\toptions = Object.assign({\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst ret = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn ret;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn ret;\n\t}\n\n\tfor (const param of query.split('&')) {\n\t\tif (param === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : ['comma', 'separator'].includes(options.arrayFormat) ? value : decode(value, options);\n\t\tformatter(decode(key, options), value, ret);\n\t}\n\n\tfor (const key of Object.keys(ret)) {\n\t\tconst value = ret[key];\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const k of Object.keys(value)) {\n\t\t\t\tvalue[k] = parseValue(value[k], options);\n\t\t\t}\n\t\t} else {\n\t\t\tret[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn ret;\n\t}\n\n\treturn (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = ret[key];\n\t\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexports.extract = extract;\nexports.parse = parse;\n\nexports.stringify = (object, options) => {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ','\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key])) ||\n\t\t(options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const key of Object.keys(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = object[key];\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n};\n\nexports.parseUrl = (url, options) => {\n\toptions = Object.assign({\n\t\tdecode: true\n\t}, options);\n\n\tconst [url_, hash] = splitOnFirst(url, '#');\n\n\treturn Object.assign(\n\t\t{\n\t\t\turl: url_.split('?')[0] || '',\n\t\t\tquery: parse(extract(url), options)\n\t\t},\n\t\toptions && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}\n\t);\n};\n\nexports.stringifyUrl = (object, options) => {\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true\n\t}, options);\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = exports.extract(object.url);\n\tconst parsedQueryFromUrl = exports.parse(queryFromUrl, {sort: false});\n\n\tconst query = Object.assign(parsedQueryFromUrl, object.query);\n\tlet queryString = exports.stringify(query, options);\n\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\tlet hash = getHash(object.url);\n\tif (object.fragmentIdentifier) {\n\t\thash = `#${encode(object.fragmentIdentifier, options)}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n};\n\nexports.pick = (input, filter, options) => {\n\toptions = Object.assign({\n\t\tparseFragmentIdentifier: true\n\t}, options);\n\n\tconst {url, query, fragmentIdentifier} = exports.parseUrl(input, options);\n\treturn exports.stringifyUrl({\n\t\turl,\n\t\tquery: filterObject(query, filter),\n\t\tfragmentIdentifier\n\t}, options);\n};\n\nexports.exclude = (input, filter, options) => {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn exports.pick(input, exclusionFilter, options);\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.COOKIE_KEYS = exports.COMMON_CROSS_TEAM_EVENT_NAMES = exports.ENVIRONMENT = exports.SEGMENT_METHODS = void 0;\n;\nvar SEGMENT_METHODS;\nexports.SEGMENT_METHODS = SEGMENT_METHODS;\n\n(function (SEGMENT_METHODS) {\n SEGMENT_METHODS[\"TRACK\"] = \"track\";\n SEGMENT_METHODS[\"PAGE\"] = \"page\";\n SEGMENT_METHODS[\"IDENTIFY\"] = \"identify\";\n})(SEGMENT_METHODS || (exports.SEGMENT_METHODS = SEGMENT_METHODS = {}));\n\nvar ENVIRONMENT;\nexports.ENVIRONMENT = ENVIRONMENT;\n\n(function (ENVIRONMENT) {\n ENVIRONMENT[\"PROD\"] = \"PROD\";\n ENVIRONMENT[\"QA\"] = \"QA\";\n ENVIRONMENT[\"DEV\"] = \"DEV\";\n ENVIRONMENT[\"LOCAL\"] = \"LOCAL\";\n ENVIRONMENT[\"E2E\"] = \"E2E\";\n})(ENVIRONMENT || (exports.ENVIRONMENT = ENVIRONMENT = {}));\n\n;\nvar COMMON_CROSS_TEAM_EVENT_NAMES;\nexports.COMMON_CROSS_TEAM_EVENT_NAMES = COMMON_CROSS_TEAM_EVENT_NAMES;\n\n(function (COMMON_CROSS_TEAM_EVENT_NAMES) {\n COMMON_CROSS_TEAM_EVENT_NAMES[\"UX_ACTION_PERFORMED\"] = \"ux_action_performed\";\n COMMON_CROSS_TEAM_EVENT_NAMES[\"REGISTRATION_FORM_SUBMITTED\"] = \"registration_form_submitted\";\n COMMON_CROSS_TEAM_EVENT_NAMES[\"REGISTRATION_FAILED\"] = \"registration_failed\";\n COMMON_CROSS_TEAM_EVENT_NAMES[\"FORM_SUBMITTED\"] = \"form_submitted\";\n COMMON_CROSS_TEAM_EVENT_NAMES[\"NAVIGATION_CLICKED\"] = \"navigation_clicked\";\n COMMON_CROSS_TEAM_EVENT_NAMES[\"TOP_NAV_SEARCH\"] = \"top_nav_search\";\n})(COMMON_CROSS_TEAM_EVENT_NAMES || (exports.COMMON_CROSS_TEAM_EVENT_NAMES = COMMON_CROSS_TEAM_EVENT_NAMES = {}));\n\n;\n;\n;\n;\nvar COOKIE_KEYS;\nexports.COOKIE_KEYS = COOKIE_KEYS;\n\n(function (COOKIE_KEYS) {\n COOKIE_KEYS[\"SEGMENT\"] = \"segmentSessionId\";\n COOKIE_KEYS[\"DOT_COM\"] = \"__session.data\";\n COOKIE_KEYS[\"AUID\"] = \"auid\";\n COOKIE_KEYS[\"AMPLITUDE_SESSION_COOKIE_KEY\"] = \"amplitudeSessionId\";\n})(COOKIE_KEYS || (exports.COOKIE_KEYS = COOKIE_KEYS = {}));\n//# sourceMappingURL=types.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.get = get;\nexports.dotComCookieAllowList = void 0;\n\nvar _jsCookie = _interopRequireDefault(require(\"js-cookie\"));\n\nvar _types = require(\"./types\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar dotComCookieAllowList = ['external_referrer', 'utm_campaign', 'utm_source', 'utm_term', 'utm_medium', 'optimizelyEndUserId', 'tck'];\nexports.dotComCookieAllowList = dotComCookieAllowList;\n\nfunction get() {\n var dotComCookieProperties = {};\n\n var dotComCookie = _jsCookie.default.get(_types.COOKIE_KEYS.DOT_COM);\n\n if (dotComCookie) {\n try {\n var dotComCookiePropertiesFull = JSON.parse(dotComCookie);\n dotComCookieProperties = dotComCookieAllowList.reduce((acc, prop) => {\n if (dotComCookiePropertiesFull[prop]) {\n acc[prop] = dotComCookiePropertiesFull[prop];\n }\n\n ;\n return acc;\n }, {});\n } catch (e) {// ignore parsing error\n }\n }\n\n return dotComCookieProperties;\n}\n//# sourceMappingURL=dotComCookie.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getAuid = exports.resetAuidPromise = exports.deleteAuidCookie = exports.fetchAuid = exports.ACCOUNT_BASE_URL = exports.EXPIRATION_DAYS = void 0;\n\nvar _jsCookie = _interopRequireDefault(require(\"js-cookie\"));\n\nvar _types = require(\"./types\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n// 5 minutes in days\nvar EXPIRATION_DAYS = 5 / 1440;\nexports.EXPIRATION_DAYS = EXPIRATION_DAYS;\nvar ACCOUNT_BASE_URL;\nexports.ACCOUNT_BASE_URL = ACCOUNT_BASE_URL;\n\n(function (ACCOUNT_BASE_URL) {\n ACCOUNT_BASE_URL[\"PROD\"] = \"https://account.mongodb.com\";\n ACCOUNT_BASE_URL[\"QA\"] = \"https://account-qa.mongodb.com\";\n ACCOUNT_BASE_URL[\"STAGE\"] = \"https://account-stage.mongodb.com\";\n ACCOUNT_BASE_URL[\"DEV\"] = \"https://account-dev.mongodb.com\";\n ACCOUNT_BASE_URL[\"LOCAL\"] = \"http://localhost:8080\";\n ACCOUNT_BASE_URL[\"E2E\"] = \"http://localhost:9080\";\n})(ACCOUNT_BASE_URL || (exports.ACCOUNT_BASE_URL = ACCOUNT_BASE_URL = {}));\n\nvar fetchAuid = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (environment) {\n return fetch(\"\".concat(ACCOUNT_BASE_URL[environment], \"/account/profile/userAuid\"), {\n credentials: 'include',\n method: 'GET'\n }).then(r => r.json());\n });\n\n return function fetchAuid(_x) {\n return _ref.apply(this, arguments);\n };\n}();\n\nexports.fetchAuid = fetchAuid;\n\nvar deleteAuidCookie = () => {\n _jsCookie.default.remove(_types.COOKIE_KEYS.AUID, {\n domain: window.location.hostname\n });\n}; // We'll be caching the request to the auid endpoint, so the first call is used by all subsequent calls to getAuid\n\n\nexports.deleteAuidCookie = deleteAuidCookie;\nvar auidPromise;\n\nvar resetAuidPromise = () => {\n auidPromise = undefined;\n}; // Method to retrieve AUID from subdomain cookie or account resource\n\n\nexports.resetAuidPromise = resetAuidPromise;\n\nvar getAuid = /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (_ref2) {\n var {\n environment = _types.ENVIRONMENT.PROD,\n shouldRequestAuid = true,\n canSetAuidCookie\n } = _ref2;\n // Check if already in cookie\n var auid = _jsCookie.default.get(_types.COOKIE_KEYS.AUID) || null;\n\n if (!auid && shouldRequestAuid) {\n try {\n // Fetch account resource if not present in cookie\n auidPromise = auidPromise || fetchAuid(environment);\n var {\n userAuid\n } = yield auidPromise;\n\n if (!userAuid) {\n throw new Error('User auid is undefined.');\n }\n\n auid = userAuid;\n\n if (canSetAuidCookie) {\n // Store cookie on subdomain level\n _jsCookie.default.set(_types.COOKIE_KEYS.AUID, userAuid, {\n domain: window.location.hostname,\n expires: EXPIRATION_DAYS\n });\n }\n } catch (e) {\n resetAuidPromise();\n console.error('failed to retrieve auid', e);\n }\n }\n\n return auid;\n });\n\n return function getAuid(_x2) {\n return _ref3.apply(this, arguments);\n };\n}();\n\nexports.getAuid = getAuid;\n//# sourceMappingURL=auid.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = exports.resetState = void 0;\n\nvar _deepMergeWithArrayMerge = _interopRequireDefault(require(\"./deepMergeWithArrayMerge\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar state;\n\nvar removeEmptyKeys = obj => {\n Object.keys(obj).forEach(key => {\n if (obj[key] === undefined) {\n delete obj[key];\n }\n });\n}; // Deepmerge will set keys to undefined if the second argument passed in has undefined keys.\n// Thus, persistedProperties and integrations will be filtered for any first-level undefined keys.\n\n\nvar deepmergeAndDeleteEmptyKeys = (target, source) => {\n var mergedObject = (0, _deepMergeWithArrayMerge.default)(target, source);\n removeEmptyKeys(mergedObject.persistedProperties);\n removeEmptyKeys(mergedObject.integrations);\n return mergedObject;\n};\n\nvar update = options => {\n state = deepmergeAndDeleteEmptyKeys(state, options);\n};\n\nvar addToCache = options => {\n state.cache.push((0, _deepMergeWithArrayMerge.default)(options, {}));\n};\n\nvar takeFromCache = () => {\n return state.cache.shift();\n};\n\nvar get = () => {\n return (0, _deepMergeWithArrayMerge.default)(state, {});\n};\n\nvar resetState = () => {\n state = {\n initialized: false,\n enabled: true,\n persistedProperties: {},\n cache: [],\n integrations: {},\n context: {},\n appId: null,\n gaClientId: null\n };\n};\n\nexports.resetState = resetState;\nvar _default = {\n resetState,\n update,\n addToCache,\n takeFromCache,\n get\n};\nexports.default = _default;\n//# sourceMappingURL=state.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _jsCookie = _interopRequireDefault(require(\"js-cookie\"));\n\nvar _types = require(\"./types\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar deleteAmplitudeCookie = () => {\n _jsCookie.default.remove(_types.COOKIE_KEYS.AMPLITUDE_SESSION_COOKIE_KEY, {\n domain: window.location.hostname\n });\n};\n\nvar _default = deleteAmplitudeCookie;\nexports.default = _default;\n//# sourceMappingURL=deleteAmplitudeCookie.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.parseCookie = parseCookie;\nexports.getFilteredUrlPartsWithReferrer = exports.getFilteredUrlParts = exports.removeQueryStringFromHash = exports.parseAndObfuscateQueryString = exports.obfuscateQstringParams = void 0;\n\nvar _jsCookie = require(\"js-cookie\");\n\nvar _queryString = _interopRequireDefault(require(\"query-string\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar DENY_LIST_QUERY = ['password', 'lastname', 'firstname', 'email', 'company', 'username'];\nvar DENY_LIST_HOSTS = ['restore-backup.'];\n\nfunction parseCookie(cookieKey) {\n return {\n [cookieKey]: (0, _jsCookie.get)(cookieKey)\n };\n}\n\nvar obfuscateQstringParams = qstring => {\n var params = _queryString.default.parse(qstring);\n\n var paramsArray = Object.entries(params).map((_ref) => {\n var [key, value] = _ref;\n\n if (value) {\n var safeValue = value;\n\n if (DENY_LIST_QUERY.includes(key.toLocaleLowerCase()) && value) {\n safeValue = '*'.repeat(value.length);\n }\n\n return \"\".concat(key, \"=\").concat(safeValue);\n }\n\n return key;\n });\n return paramsArray.length ? \"?\".concat(paramsArray.join('&')) : '';\n};\n\nexports.obfuscateQstringParams = obfuscateQstringParams;\n\nvar parseAndObfuscateQueryString = pathAndQueryString => {\n var hashParts = pathAndQueryString.split('?');\n var hashSearch = hashParts[1];\n\n if (hashSearch) {\n var maskedHashSearch = obfuscateQstringParams(hashSearch);\n return \"\".concat(hashParts[0]).concat(maskedHashSearch);\n }\n\n return pathAndQueryString;\n};\n\nexports.parseAndObfuscateQueryString = parseAndObfuscateQueryString;\n\nvar removeQueryStringFromHash = hashStr => {\n return (hashStr === null || hashStr === void 0 ? void 0 : hashStr.length) ? hashStr.split('?')[0] : '';\n};\n\nexports.removeQueryStringFromHash = removeQueryStringFromHash;\n\nvar getFilteredUrlParts = props => {\n var filteredProps = {\n url: '',\n path: '',\n search: '',\n hash: ''\n };\n\n try {\n var urlObj = new URL(props.url || window.location.href); // Don't send deny-list urls:\n\n if (DENY_LIST_HOSTS.some(urlPart => urlObj.host.includes(urlPart))) {\n return filteredProps;\n } // Prefer user input to browser native values:\n\n\n var searchInput = props.search || urlObj.search;\n var pathInput = props.path || urlObj.pathname; // We (strangely) also sometimes put a query string on our hash, so let's deal with that, too:\n\n urlObj.hash = parseAndObfuscateQueryString(urlObj.hash); // Mask sensitive params on the query string:\n\n urlObj.search = obfuscateQstringParams(searchInput);\n filteredProps.search = urlObj.search; // We're currently sometimes concatting the query string to the path upstream of here in the sanitizeLocation function. Thus, we'll need to make sure we spunge the path of PII, too.\n\n filteredProps.path = parseAndObfuscateQueryString(pathInput); // Re-compose the full URL with the updated query string and hash:\n\n filteredProps.url = urlObj.toString();\n filteredProps.hash = removeQueryStringFromHash(urlObj.hash);\n } catch (e) {\n console.error(\"Failed to parse url: \".concat(filteredProps.url, \". \").concat(e.message));\n }\n\n return filteredProps;\n};\n\nexports.getFilteredUrlParts = getFilteredUrlParts;\n\nvar getFilteredUrlPartsWithReferrer = props => {\n var filteredUrlParts = getFilteredUrlParts(props);\n return _objectSpread(_objectSpread({}, filteredUrlParts), {}, {\n referrer: getFilteredUrlParts({\n url: props.referrer || document.referrer\n }).url\n });\n};\n\nexports.getFilteredUrlPartsWithReferrer = getFilteredUrlPartsWithReferrer;\n//# sourceMappingURL=urlHelpers.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.errorPrefix = exports.default = void 0;\nvar errorPrefix = 'Heliotrope Error: ';\nexports.errorPrefix = errorPrefix;\n\nfunction heliotropeError(message) {\n return new Error(\"\".concat(errorPrefix).concat(message));\n}\n\nvar _default = heliotropeError;\nexports.default = _default;\n//# sourceMappingURL=heliotropeError.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = processIntegrations;\nexports.utils = void 0;\n\nvar _state = _interopRequireDefault(require(\"./state\"));\n\nvar _deepMergeWithArrayMerge = _interopRequireDefault(require(\"./deepMergeWithArrayMerge\"));\n\nvar _types = require(\"./types\");\n\nvar _jsCookie = _interopRequireDefault(require(\"js-cookie\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar createExpirationDate = (timeStamp, minutes) => {\n return new Date(timeStamp + minutes * 60000);\n};\n\nvar getAmplitudeSessionId = () => {\n // If a session ID doesn't exist, generate timestamp (ms)\n var timeStamp = Date.now();\n var sessionId = _jsCookie.default.get(_types.COOKIE_KEYS.AMPLITUDE_SESSION_COOKIE_KEY) || \"\".concat(timeStamp); // Sets new cookie / update ttl\n\n _jsCookie.default.set(_types.COOKIE_KEYS.AMPLITUDE_SESSION_COOKIE_KEY, sessionId, {\n expires: createExpirationDate(timeStamp, 30)\n });\n\n return sessionId;\n};\n\nfunction processAmplitudeIntegration(amplitudeValue) {\n var ensuredObject = typeof amplitudeValue === 'object' ? (0, _deepMergeWithArrayMerge.default)({}, amplitudeValue) : {}; // eslint-disable-next-line camelcase\n\n ensuredObject.session_id = getAmplitudeSessionId();\n return ensuredObject;\n}\n\nfunction processGAIntegration(googleAnalyticsValue) {\n if (_state.default.get().gaClientId) {\n var ensuredObject = typeof googleAnalyticsValue === 'object' ? (0, _deepMergeWithArrayMerge.default)({}, googleAnalyticsValue) : {};\n ensuredObject.clientId = _state.default.get().gaClientId;\n return {\n newGaIntegrations: ensuredObject,\n newGaContext: {\n integrations: {\n 'Google Analytics': {\n clientId: _state.default.get().gaClientId\n }\n }\n }\n };\n }\n\n return {\n newGaIntegrations: googleAnalyticsValue\n };\n}\n\nvar utils = {\n createExpirationDate,\n getAmplitudeSessionId,\n processAmplitudeIntegration,\n processGAIntegration\n};\nexports.utils = utils;\n\nfunction processIntegrations(integrations) {\n var newIntegrations = (0, _deepMergeWithArrayMerge.default)({}, integrations);\n var newContext = undefined;\n\n if (integrations.Amplitude) {\n newIntegrations.Amplitude = utils.processAmplitudeIntegration(integrations.Amplitude);\n }\n\n if (integrations['Google Analytics']) {\n var {\n newGaIntegrations,\n newGaContext\n } = utils.processGAIntegration(integrations['Google Analytics']);\n newIntegrations['Google Analytics'] = newGaIntegrations;\n newContext = newGaContext;\n }\n\n return {\n integrations: newIntegrations,\n context: newContext\n };\n}\n//# sourceMappingURL=processIntegrations.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = getSafeOptions;\nvar UPDATE_KEYS = ['persistedProperties', 'integrations', 'enabled', 'appId'];\n\nfunction getSafeOptions(options) {\n return UPDATE_KEYS.reduce((acc, key) => {\n if (key in options) {\n acc[key] = options[key];\n }\n\n return acc;\n }, {});\n}\n//# sourceMappingURL=getSafeOptions.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = getCurrentTimestamp;\n\nfunction getCurrentTimestamp() {\n return new Date();\n}\n//# sourceMappingURL=getCurrentTimestamp.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _deepmerge = _interopRequireDefault(require(\"deepmerge\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction arrayMerge(target, source) {\n return source;\n}\n\nfunction deepMergeWithArrayMerge(target, source) {\n return (0, _deepmerge.default)(target, source, {\n arrayMerge\n });\n}\n\nvar _default = deepMergeWithArrayMerge;\nexports.default = _default;\n//# sourceMappingURL=deepMergeWithArrayMerge.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.utils = exports.default = void 0;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar utils = {\n flattenAndPrefix(object, prefix) {\n var result = {};\n Object.entries(object || {}).forEach(entry => {\n result[\"\".concat(prefix, \"_\").concat(entry[0])] = entry[1];\n });\n return result;\n }\n\n};\nexports.utils = utils;\n\nvar transformUserAgent = parsedUserAgent => {\n var {\n browser,\n os,\n platform\n } = parsedUserAgent;\n return _objectSpread(_objectSpread(_objectSpread({}, utils.flattenAndPrefix(browser, 'browser')), utils.flattenAndPrefix(os, 'os')), utils.flattenAndPrefix(platform, 'platform'));\n};\n\nvar _default = transformUserAgent;\nexports.default = _default;\n//# sourceMappingURL=transformUserAgent.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"ENVIRONMENT\", {\n enumerable: true,\n get: function get() {\n return _types.ENVIRONMENT;\n }\n});\nexports.default = void 0;\n\nvar _state = _interopRequireWildcard(require(\"./state\"));\n\nvar _broadcast = _interopRequireDefault(require(\"./broadcast\"));\n\nvar _processCache = _interopRequireDefault(require(\"./processCache\"));\n\nvar _loadScript = _interopRequireDefault(require(\"./loadScript\"));\n\nvar _getSafeOptions = _interopRequireDefault(require(\"./getSafeOptions\"));\n\nvar _transformUserAgent = _interopRequireDefault(require(\"./transformUserAgent\"));\n\nvar _processIntegrations = _interopRequireDefault(require(\"./processIntegrations\"));\n\nvar _processGAClientId = _interopRequireDefault(require(\"./processGAClientId\"));\n\nvar _urlHelpers = require(\"./urlHelpers\");\n\nvar _heliotropeError = _interopRequireDefault(require(\"./heliotropeError\"));\n\nvar _types = require(\"./types\");\n\nvar _deepMergeWithArrayMerge = _interopRequireDefault(require(\"./deepMergeWithArrayMerge\"));\n\nvar _bowser = _interopRequireDefault(require(\"bowser\"));\n\nvar _dotComCookie = require(\"./dotComCookie\");\n\nvar _auid = require(\"./auid\");\n\nvar _deleteAmplitudeCookie = _interopRequireDefault(require(\"./deleteAmplitudeCookie\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n// this resetState is used to \"init\" the state\n(0, _state.resetState)();\n\nvar nonObjectError = () => (0, _heliotropeError.default)('An object must be passed in as the \\'options\\' argument');\n\nvar getScreenProperties = () => {\n var _screen, _screen2, _window;\n\n var screenProperties = {};\n\n if ((_screen = screen) === null || _screen === void 0 ? void 0 : _screen.height) {\n screenProperties.height = screen.height;\n }\n\n if ((_screen2 = screen) === null || _screen2 === void 0 ? void 0 : _screen2.width) {\n screenProperties.width = screen.width;\n }\n\n if ((_window = window) === null || _window === void 0 ? void 0 : _window.devicePixelRatio) {\n screenProperties.density = window.devicePixelRatio;\n }\n\n return screenProperties;\n};\n\nvar analytics = {\n init(options) {\n return _asyncToGenerator(function* () {\n if (_state.default.get().initialized) {\n throw (0, _heliotropeError.default)('Heliotrope already initialized');\n }\n\n if (typeof options !== 'object') {\n throw nonObjectError();\n }\n\n if (typeof options.segmentId !== 'string') {\n throw (0, _heliotropeError.default)('Did not pass in \\'segmentId\\' as a string');\n }\n\n if (typeof options.appId !== 'string') {\n throw (0, _heliotropeError.default)('Did not pass in \\'appId\\' as a string');\n } // Default to prod environment\n\n\n if (!options.environment) {\n options.environment = _types.ENVIRONMENT.PROD;\n } // processGAClientId and loadScript are both async, and both must resolve before continuing\n\n\n var processGaClientIdPromise = (0, _processGAClientId.default)();\n var loadScriptPromise = (0, _loadScript.default)(options);\n var auidPromise = (0, _auid.getAuid)({\n environment: options.environment,\n shouldRequestAuid: options.shouldRequestAuid,\n canSetAuidCookie: options.canSetAuidCookie\n });\n var [gaClientId, auid] = yield Promise.all([processGaClientIdPromise, auidPromise, loadScriptPromise]); // process the user agent\n\n var parsedUserAgent = _bowser.default.parse(window.navigator.userAgent);\n\n var userAgent = (0, _transformUserAgent.default)(parsedUserAgent); // filter out any un-permitted properties\n\n var safeOptions = (0, _getSafeOptions.default)(options); // create new object that combines userAgent, safe options, and sets initialized: true\n\n var safeOptionsWithUserAgent = (0, _deepMergeWithArrayMerge.default)(safeOptions, {\n persistedProperties: _objectSpread(_objectSpread({}, userAgent), {}, {\n userAgent: window.navigator.userAgent\n }, auid ? {\n auid\n } : {})\n }); // updateState must be called twice\n // gaClientId needs to be put into state first so processIntegrations can access it properly\n\n _state.default.update(_objectSpread(_objectSpread({}, safeOptionsWithUserAgent), {}, {\n gaClientId,\n initialized: true\n }));\n\n var {\n integrations,\n context: integrationsContext\n } = (0, _processIntegrations.default)(safeOptionsWithUserAgent.integrations || {});\n var context = {\n screen: getScreenProperties()\n };\n\n if (integrationsContext) {\n context = _objectSpread(_objectSpread({}, context), integrationsContext);\n }\n\n _state.default.update({\n integrations,\n context\n }); // wait for this initial identify call to resolve before processing the cache\n\n\n yield analytics.identify({\n traits: (0, _deepMergeWithArrayMerge.default)(options.traits || {}, safeOptionsWithUserAgent.persistedProperties || {})\n });\n (0, _processCache.default)();\n })();\n },\n\n updateState(options) {\n var _arguments = arguments;\n return _asyncToGenerator(function* () {\n var {\n shouldIdentify = true\n } = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {};\n\n if (typeof options !== 'object') {\n throw nonObjectError();\n }\n\n var safeOptions = (0, _getSafeOptions.default)(options);\n var {\n integrations,\n context\n } = (0, _processIntegrations.default)(safeOptions.integrations || {});\n\n _state.default.update(_objectSpread(_objectSpread({}, safeOptions), {}, {\n integrations,\n context\n }));\n\n if (_state.default.get().enabled && safeOptions.persistedProperties && shouldIdentify) {\n return analytics.identify({\n traits: (0, _deepMergeWithArrayMerge.default)({}, safeOptions.persistedProperties)\n });\n }\n\n return;\n })();\n },\n\n getState() {\n return _state.default.get();\n },\n\n getAuid: _auid.getAuid,\n\n track(options) {\n return _asyncToGenerator(function* () {\n if (typeof options !== 'object') {\n throw nonObjectError();\n }\n\n if (typeof options.eventName !== 'string') {\n throw (0, _heliotropeError.default)('Did not pass in \\'eventName\\' as a string');\n }\n\n var trackPropsSupplied = options.properties || {};\n\n var parsedCookies = _objectSpread({}, (0, _dotComCookie.get)());\n\n var filteredUrlParts = (0, _urlHelpers.getFilteredUrlPartsWithReferrer)(trackPropsSupplied);\n\n var trackProps = _objectSpread(_objectSpread(_objectSpread({}, trackPropsSupplied), parsedCookies), filteredUrlParts);\n\n var trackOptsBroadcast = (0, _deepMergeWithArrayMerge.default)(options, {\n properties: trackProps\n });\n return (0, _broadcast.default)(_objectSpread(_objectSpread({}, trackOptsBroadcast), {}, {\n segmentMethod: _types.SEGMENT_METHODS.TRACK\n }));\n })();\n },\n\n page(options) {\n return _asyncToGenerator(function* () {\n if (typeof options !== 'object') {\n throw nonObjectError();\n }\n\n if (typeof options.pageName !== 'string') {\n throw (0, _heliotropeError.default)(\"Did not pass in 'pageName' as a string. The type is \".concat(typeof options.pageName, \" and the value is \").concat(options.pageName));\n }\n\n var pagePropsSupplied = options.properties || {};\n var filteredUrlParts = (0, _urlHelpers.getFilteredUrlPartsWithReferrer)(pagePropsSupplied);\n\n var pageProps = _objectSpread(_objectSpread({}, pagePropsSupplied), filteredUrlParts);\n\n var pageOptsBroadcast = (0, _deepMergeWithArrayMerge.default)(options, {\n properties: pageProps\n });\n return (0, _broadcast.default)(_objectSpread(_objectSpread({}, pageOptsBroadcast), {}, {\n segmentMethod: _types.SEGMENT_METHODS.PAGE\n }));\n })();\n },\n\n identify(options) {\n return _asyncToGenerator(function* () {\n if (typeof options !== 'object') {\n throw nonObjectError();\n }\n\n if (typeof options.traits !== 'object') {\n throw (0, _heliotropeError.default)('Did not pass in \\'traits\\' as an object');\n }\n\n return (0, _broadcast.default)(_objectSpread(_objectSpread({}, options), {}, {\n segmentMethod: _types.SEGMENT_METHODS.IDENTIFY\n }));\n })();\n },\n\n user() {\n var _window$analytics;\n\n return _state.default.get().initialized ? (_window$analytics = window.analytics) === null || _window$analytics === void 0 ? void 0 : _window$analytics.user() : undefined;\n },\n\n reset() {\n var _window$analytics2;\n\n (_window$analytics2 = window.analytics) === null || _window$analytics2 === void 0 ? void 0 : _window$analytics2.reset();\n (0, _auid.deleteAuidCookie)();\n (0, _deleteAmplitudeCookie.default)();\n (0, _state.resetState)();\n }\n\n};\nvar _default = analytics;\nexports.default = _default;\n//# sourceMappingURL=main.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _state = _interopRequireDefault(require(\"./state\"));\n\nvar _broadcast = _interopRequireDefault(require(\"./broadcast\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar processCache = () => {\n var tempCall = _state.default.takeFromCache();\n\n while (tempCall) {\n (0, _broadcast.default)(tempCall);\n tempCall = _state.default.takeFromCache();\n }\n};\n\nvar _default = processCache;\nexports.default = _default;\n//# sourceMappingURL=processCache.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = loadScript;\n\nvar _heliotropeError = _interopRequireWildcard(require(\"./heliotropeError\"));\n\nvar _types = require(\"./types\");\n\nfunction _getRequireWildcardCache() { if (typeof WeakMap !== \"function\") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nvar CDN_HOSTNAME = 'evs.blue.mongodb.com';\nvar URL_HASH = 'iDFkbxd9iD';\nvar windowWithSegmentGlobals = window;\n\nfunction loadScript(_x) {\n return _loadScript.apply(this, arguments);\n}\n\nfunction _loadScript() {\n _loadScript = _asyncToGenerator(function* (initOptions) {\n // Create a queue, but don't obliterate an existing one!\n windowWithSegmentGlobals.analytics = windowWithSegmentGlobals.analytics || [];\n var analytics = windowWithSegmentGlobals.analytics; // If the real analytics.js is already on the page return.\n\n if (analytics.initialize) {\n return;\n }\n\n var {\n segmentId: writeKey,\n environment,\n e2eSdkUrl\n } = initOptions; // Segment IO Documentation - If the snippet was invoked already show an error.\n // I believe the difference between 'invoked' and 'initialize' is that 'invoked' will\n // disappear after everything is loaded. Therefore, I believe that this is checking\n // if this function has been called AND analytics.js hasn't completed loading yet\n\n if (analytics.invoked) {\n var invokedErrorMessage = 'Segment snippet was invoked again, before the Segment tag finished loading from it\\'s first invocation.';\n\n if (windowWithSegmentGlobals.console && console.error) {\n console.error(\"\".concat(_heliotropeError.errorPrefix).concat(invokedErrorMessage));\n }\n\n throw (0, _heliotropeError.default)(invokedErrorMessage);\n } // Invoked flag, to make sure the snippet\n // is never invoked twice.\n\n\n analytics.invoked = true; // A list of the methods in Analytics.js to stub.\n\n analytics.methods = ['identify', 'track', 'alias', 'page', 'trackSubmit', 'trackClick', 'trackLink', 'trackForm', 'pageview', 'reset', 'group', 'ready', 'debug', 'once', 'off', 'on', 'addSourceMiddleware', 'addIntegrationMiddleware', 'setAnonymousId', 'addDestinationMiddleware']; // Define a factory to create stubs. These are placeholders\n // for methods in Analytics.js so that you never have to wait\n // for it to load to actually record data. The `method` is\n // stored as the first argument, so we can replay the data.\n\n analytics.factory = function (method) {\n return function () {\n var args = Array.prototype.slice.call(arguments);\n args.unshift(method);\n analytics.push(args);\n return analytics;\n };\n }; // For each of our methods, generate a queueing stub.\n\n\n for (var i = 0; i < analytics.methods.length; i = i + 1) {\n var _key = analytics.methods[i];\n analytics[_key] = analytics.factory(_key);\n } // Define a method to load Analytics.js from our CDN,\n // and that will be sure to only ever load it once.\n\n\n analytics.load = function (key, options) {\n var _first$parentNode;\n\n // Create an async script element based on your key.\n var script = document.createElement('script');\n script.type = 'text/javascript';\n script.async = true;\n script.src = e2eSdkUrl && environment === _types.ENVIRONMENT.E2E ? e2eSdkUrl : \"https://\".concat(CDN_HOSTNAME, \"/\").concat(URL_HASH, \"/\").concat(key, \".min.js\"); // Insert our script next to the first script element.\n\n var first = document.getElementsByTagName('script')[0];\n (_first$parentNode = first.parentNode) === null || _first$parentNode === void 0 ? void 0 : _first$parentNode.insertBefore(script, first);\n analytics._loadOptions = options;\n }; // Add a version to keep track of what's in the wild.\n\n\n analytics.SNIPPET_VERSION = '4.1.0'; // Load Analytics.js with your key, which will automatically\n // load the tools you've enabled for your account. Boosh!\n\n analytics.load(writeKey);\n return new Promise((resolve, reject) => {\n var interval = setInterval(() => {\n if (interval && window.analytics.ready) {\n window.analytics.ready(resolve);\n clearInterval(interval);\n interval = null;\n }\n }, 50);\n setTimeout(() => {\n if (interval) {\n clearInterval(interval);\n interval = null;\n reject((0, _heliotropeError.default)('Error loading Segment library via Heliotrope: window.analytics.ready not found'));\n }\n }, 10000);\n });\n });\n return _loadScript.apply(this, arguments);\n}\n//# sourceMappingURL=loadScript.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = processGAClientId;\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n// We assume that if window.ga is already loaded, then the tracker must already exist.\n// If window.ga is already defined, we assume that it was defined by the official GA script.\n// It's possible that an app that imports Heliotrope might pre-define window.ga, causing our\n// immediate adding to the queue to fail as it will be queued before the tracker is created.\nfunction processGAClientId() {\n return _processGAClientId.apply(this, arguments);\n}\n\nfunction _processGAClientId() {\n _processGAClientId = _asyncToGenerator(function* () {\n return new Promise(res => {\n setTimeout(res, 3000);\n\n var getId = tracker => {\n var clientId = tracker && tracker.get && tracker.get('clientId');\n res(clientId);\n };\n\n if (window.ga) {\n window.ga(getId);\n }\n\n window.ga = window.ga || function () {\n (window.ga.q = window.ga.q || []).push(arguments); // In order to get the clientId, a tracker must exist. This ensures that getId gets called\n // only after a tracker has been created. \n\n if (arguments[0] === 'create') {\n window.ga(getId);\n }\n };\n });\n });\n return _processGAClientId.apply(this, arguments);\n}\n//# sourceMappingURL=processGAClientId.js.map"],"names":[],"sourceRoot":""}