{"version":3,"file":"mng-digisubs.sophi.bundle.js","mappings":"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","sources":["webpack:///./node_modules/axios/index.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///./node_modules/axios/lib/env/data.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/axios/lib/helpers/isAxiosError.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/axios/lib/helpers/validator.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///./node_modules/@babel/runtime/helpers/esm/class快播视频Check.js","webpack:///./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./node_modules/jwt-decode/build/jwt-decode.esm.js","webpack:///./assets/js/settings.js","webpack:///./assets/js/logger.js","webpack:///./assets/js/utils.js","webpack:///./assets/js/sophi/sophi-base.js","webpack:///./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/esm/get.js","webpack:///./node_modules/@babel/runtime/helpers/esm/superPropBase.js","webpack:///./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./assets/js/sophi/sophi.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///./assets/js/sophi/init.js"],"sourcesContent":["module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","module.exports = {\n \"version\": \"0.24.0\"\n};","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","'use strict';\n\nvar VERSION = require('../env/data').version;\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","export default function _class快播视频Check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","function e(e){this.message=e}e.prototype=new Error,e.prototype.name=\"InvalidCharacterError\";var r=\"undefined\"!=typeof window&&window.atob&&window.atob.bind(window)||function(r){var t=String(r).replace(/=+$/,\"\");if(t.length%4==1)throw new e(\"'atob' failed: The string to be decoded is not correctly encoded.\");for(var n,o,a=0,i=0,c=\"\";o=t.charAt(i++);~o&&(n=a%4?64*n+o:o,a++%4)?c+=String.fromCharCode(255&n>>(-2*a&6)):0)o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(o);return c};function t(e){var t=e.replace(/-/g,\"+\").replace(/_/g,\"/\");switch(t.length%4){case 0:break;case 2:t+=\"==\";break;case 3:t+=\"=\";break;default:throw\"Illegal base64url string!\"}try{return function(e){return decodeURIComponent(r(e).replace(/(.)/g,(function(e,r){var t=r.charCodeAt(0).toString(16).toUpperCase();return t.length<2&&(t=\"0\"+t),\"%\"+t})))}(t)}catch(e){return r(t)}}function n(e){this.message=e}function o(e,r){if(\"string\"!=typeof e)throw new n(\"Invalid token specified\");var o=!0===(r=r||{}).header?0:1;try{return JSON.parse(t(e.split(\".\")[o]))}catch(e){throw new n(\"Invalid token specified: \"+e.message)}}n.prototype=new Error,n.prototype.name=\"InvalidTokenError\";export default o;export{n as InvalidTokenError};\n//# sourceMappingURL=jwt-decode.esm.js.map\n","window.authentication_config.sessionManagementEnabled = window.authentication_config.sessionManagement === '1';\nexport default {\n\tdebug: !!window.authentication_config.debug,\n\tsessionServer: window.authentication_config ? window.authentication_config.sessionServer : '',\n\tentitlementsEnabled: window.authentication_config ? window.authentication_config.entitlementsEnabled === '1' : false,\n\tdropdownEnabled: window.authentication_config ? window.authentication_config.dropdownEnabled === '1' : false,\n\tenableReaderDashboardLink: window.authentication_config ? window.authentication_config.enableReaderDashboardLink === '1' : false,\n\toneTapEnabled: window.authentication_config ? window.authentication_config.oneTapEnabled === '1' : false,\n\tuseTribMainGoogle: window.authentication_config ? window.authentication_config.useTribMainGoogle === '1' : false,\n\tisAdfreeArticle: window.authentication_config ? window.authentication_config.isAdfreeArticle === '1' : false,\n\tauth0Domain: window.authentication_config ? window.authentication_config.auth0Domain : '',\n\tauth0ClientId: window.authentication_config ? window.authentication_config.auth0ClientId : '',\n\tentitlementsEndpoint: window.authentication_config ? window.authentication_config.entitlementsEndpoint : '',\n\tentitlementsApiKey: window.authentication_config ? window.authentication_config.entitlementsAPIKey : '',\n\tlinaCheckOnArticles: window.authentication_config ? window.authentication_config.linaCheckOnArticles : false,\n\tserverEntitlements: window.authentication_config ? window.authentication_config.serverEntitlements : false,\n\tgoogleClientId: window.authentication_config ? window.authentication_config.googleClientId : '',\n\tnewsletterId: window.authentication_config ? window.authentication_config.newsletterId : 0,\n\tconnextStorageKey: '',\n\tauth0SubKey: 'auth0_sub',\n\tauth0Authenticated: 'auth0.is.authenticated',\n\tsecret: window.authentication_config ? window.authentication_config.pluginSecret : '',\n\tnewslettersEnabled: window.authentication_config ? window.authentication_config.newslettersEnabled === '1': false,\n\tbcLowaSegements: window.authentication_config.bcLowaSegements ? window.authentication_config.bcLowaSegements === '1' : false,\n\tblueconicEnabled: window.authentication_config.blueconicEnabled ? window.authentication_config.blueconicEnabled === '1' : false,\n\tdatadogEnabled: window.authentication_config.enableDatadog ? window.authentication_config.enableDatadog === '1' : false,\n};\n","import settings from './settings';\n\nconst log = function logger(...args) {\n\tif ( settings.debug ) {\n\t\tconsole.log( 'MNGDigisubs:', ...args );\n\t}\n};\n\nexport default {\n\tlog,\n}\n","import jwtDecode from 'jwt-decode';\nimport axios from 'axios'\nimport logger from './logger';\nimport settings from './settings';\nimport CONSTANTS from './constants';\n\nexport const getCurrentUrl = () => {\n\tconst windowLocationhref = window.location.href;\n\tconst currentUrl = new URL( windowLocationhref );\n\treturn currentUrl;\n};\n\nexport const getCookie = (name) => {\n\tconst cookieName = `${name }=`;\n\tconst cookies = decodeURIComponent(document.cookie).split(';');\n\tfor( let i = 0; i < cookies.length; i+=1 ) {\n\t\tconst cookiePart = cookies[i].trimLeft();\n\t\tif (cookiePart.indexOf(cookieName) === 0 ) {\n\t\t\treturn cookiePart.substring(cookieName.length, cookiePart.length);\n\t\t}\n\t}\n\treturn false;\n};\n\nexport const getSiteWithTrbdevDomain = () => {\n\tconst URL = getCurrentUrl();\n\tif ( ! URL.hostname.includes( 'trbdevcloud.com' ) ) return false;\n\tconst hostnameParts = URL.hostname.split('wp');\n\tif( hostnameParts.length < 2 ) return false;\n\treturn hostnameParts[1];\n};\n\nexport const getRootDomain = (givenHostname = false) => {\n\tconst { hostname } = getCurrentUrl();\n\tlet hostnameToCheck = hostname;\n\tif( givenHostname && typeof givenHostname === 'string' ) {\n\t\thostnameToCheck = givenHostname;\n\t}\n\tconst parts = hostnameToCheck.split('.');\n\treturn `${parts[parts.length - 2]}.${parts[parts.length - 1]}`;\n};\n\nexport const getCookieRootDomain = () => {\n\tconst rootDomain = getRootDomain();\n\treturn `.${rootDomain}`;\n};\n\nexport const getSiteDomainForTribuneEntitlements = (defaultRootDomain) => {\n\tif(!defaultRootDomain.includes('trbdevcloud')) return defaultRootDomain;\n\tconst { hostname } = getCurrentUrl();\n\tconst domainPart = hostname.split('.')[1];\n\tconst correctPortion = domainPart.split('-').length > 2 ? `${domainPart.split('-')[0]}-${domainPart.split('-')[1]}` : domainPart.split('-')[0];\n\treturn `${correctPortion}.com`;\n};\n\nexport const setCookie = ( name, value, options ) => {\n\tlet cookieString = `${name}=${value};`;\n\tif (typeof options !== 'undefined'){\n\t\t// loop through options and assign to cookie\n\t\tlogger.log( 'Setting cookie with options: ', options );\n\t\tObject.entries( options ).forEach( ([k, v]) => {\n\t\t\tif (k === 'expires') {\n\t\t\t\tconst date = new Date();\n\t\t\t\tdate.setTime(date.getTime() + (v*24*60*60*1000));\n\t\t\t\tcookieString += `expires=${date.toUTCString()};`;\n\t\t\t} else {\n\t\t\t\tcookieString += `${k}=${v};`;\n\t\t\t}\n\t\t} );\n\t} else{\n\t\tcookieString += 'path=/;';\n\t}\n\tdocument.cookie = cookieString;\n};\n\nexport const deleteCookie = ( name, options = {}, domainToDeleteFrom = '' ) => {\n\t// Set cookie with old expiration date\n\tlet cookieString = `${name}= ;expires= Thu, 01 Jan 1970 00:00:00 GMT;`;\n\tconst rootDomain = getRootDomain();\n\tconst wwwDomain = 'www'.concat(rootDomain);\n\tconst dotWwwDomain = '.www'.concat(rootDomain);\n\tconst domainsToDeleteFrom = [rootDomain, wwwDomain, dotWwwDomain];\n\tif( domainToDeleteFrom ) domainsToDeleteFrom.push( domainToDeleteFrom );\n\tObject.entries( options ).forEach( ([k, v]) => {\n\t\tcookieString += `${k}=${v};`;\n\t} );\n\tif (Object.keys(options).length === 0){\n\t\tcookieString += 'path=/;';\n\t}\n\n\t// try deleting the cookie without specifying the domain\n\tdocument.cookie = cookieString;\n\t// delete the cookies by domain\n\tdomainsToDeleteFrom.forEach(domain => {\n\t\tdocument.cookie = cookieString.concat('domain=', domain, ';');\n\t});\n};\n\nexport const getSiteUrl = () => {\n\tconst currentUrl = getCurrentUrl();\n\treturn currentUrl.host.replace( 'www.', '' ).replace( 'develop.', '' ).replace( 'preprod.', '' );\n};\n\nexport const isValidUrl = (url) => {\n\tconst pattern = /^https?:\\/\\/([\\w.-]+)\\.([a-z]{2,})(\\/[\\w-.]*)*$/;\n\treturn pattern.test(url);\n}\n\n// Safari doesn't allow \\n when calling atob to decode. Occasionally this appears to be\n// present in Auth0 ID Tokens so lets just remove it for all tokens here\nexport const decodeToken = ( jwt ) => jwtDecode( jwt );// JSON.parse( Base64.decode( jwt.split('.')[1] ) );\n\nexport const siteIsTribune = () => {\n\tconst domain = getRootDomain();\n\tconst tribList = ['mcall.com', 'courant.com', 'sun-sentinel.com', 'orlandosentinel.com', 'growthspotter.com', 'dailypress.com', 'pilotonline.com', 'nydailynews.com', 'baltimoresun.com', 'capitalgazette.com', 'chicagotribune.com', 'trbdevcloud.com'];\n\treturn tribList.includes( domain );\n}\n\nexport const checkAppleSubStatus = async (accessToken) => {\n\tconst rootDomain = getRootDomain().split('.')[0];\n\ttry{\n\t\tconst serverResponse = await axios({\n\t\t\tmethod: 'get',\n\t\t\turl: `${settings.entitlementsEndpoint}apple/subscription-check/${rootDomain}`,\n\t\t\tparams: { access_token: accessToken }\n\t\t});\n\t\tif( serverResponse.data ){\n\t\t\tlogger.log( 'Apple Sub Check: Request successful: ', serverResponse.data );\n\t\t\treturn serverResponse.data.status === 'subscribed';\n\t\t}\n\t\treturn false;\n\n\t} catch (errorThrown){\n\t\tlogger.log( 'Apple Sub Check: Request Failure: ', errorThrown );\n\t\treturn false;\n\t}\n}\n\nexport const getEncryptedUuid = async (uuid) => {\n\n\tconst serverResponse = await axios({\n\t\tmethod: 'get',\n\t\turl: `${settings.entitlementsEndpoint}auth0/users/${encodeURIComponent(uuid)}`,\n\t\theaders: { 'X-Api-Key': settings.entitlementsApiKey }\n\t});\n\treturn serverResponse.data.encryptedUuid;\n}\n\nexport const getDefaultUserConnection = ( email, sendEmail = false, includeLoginLink = true ) => {\n\tlet siteURL = getSiteUrl();\n\tsiteURL = getSiteDomainForTribuneEntitlements( siteURL );\n\treturn new Promise( ( resolve ) => {\n\t\tconst userEndpoint = `${settings.entitlementsEndpoint}auth0/getDefaultUserConnection`;\n\t\tconst requestBody = {\n\t\t\tsiteURL,\n\t\t\tauth0ClientId: settings.auth0ClientId,\n\t\t\tsendEmail,\n\t\t\temail,\n\t\t\tincludeLoginLink\n\t\t}\n\t\t$.ajax( {\n\t\t\ttype: 'POST',\n\t\t\turl: userEndpoint,\n\t\t\theaders: {\n\t\t\t\t'Accept': 'application/json',\n\t\t\t\t'Content-Type': 'application/json; charset=utf-8',\n\t\t\t\t'X-Api-Key': settings.entitlementsApiKey,\n\t\t\t},\n\t\t\tdata: JSON.stringify( requestBody ),\n\t\t\tsuccess: async ( data ) => {\n\t\t\t\tif ( typeof data !== 'object' ) {\n\t\t\t\t\treturn new Error( 'getDefaultUserConnection API returned no data' );\n\t\t\t\t}\n\t\t\t\tlogger.log( 'getDefaultUserConnection: Request successful: ', data );\n\t\t\t\treturn resolve(data);\n\t\t\t},\n\t\t\terror: async ( request, textStatus, errorThrown ) => {\n\t\t\t\tlogger.log( 'getDefaultUserConnection: Request Failure: ', errorThrown );\n\t\t\t\treturn new Error( 'getDefaultUserConnection failure' );\n\t\t\t},\n\t\t} );\n\t});\n}\n\nexport const documentIsLoadedCompletely = () => document.readyState === 'complete'\n\nexport const documentBodyLoaded = ( checkIfStateIsComplete = false ) => new Promise((resolve) => {\n\n\tlet loadedLevel = true;\n\n\tif ( documentIsLoadedCompletely() ) {\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'UIHandler: ', 'Waiting for the body to load...' );\n\t\tconst bodyLoaded = setInterval(async () => {\n\t\t\tif( checkIfStateIsComplete ) {\n\t\t\t\tloadedLevel = documentIsLoadedCompletely();\n\t\t\t}\n\t\t\tif ( document.querySelector('body') && loadedLevel ) {\n\t\t\t\tclearInterval(bodyLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 200); // check every 200ms\n\t}\n});\n\nexport const wordpressButtonsLoaded = () => new Promise((resolve) => {\n\tif ( documentIsLoadedCompletely() ) {\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'UIHandler: ', 'Waiting for the log-in-button class to load...' );\n\t\tconst loginButtonsLoaded = setInterval(async () => {\n\t\t\tif (document.getElementsByClassName('log-in-button').length > 1) {\n\t\t\t\tclearInterval(loginButtonsLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 200); // check every 200ms\n\t}\n});\n\nexport const digisubsDataLayerLoaded = () => new Promise((resolve) => {\n\tif ( (document.readyState === 'interactive' || documentIsLoadedCompletely() ) && window.dataLayer ) {\n\t\tlogger.log( 'Utils digisubsDataLayerLoaded: ', 'Document is in interactive state, resolving.' );\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'Utils digisubsDataLayerLoaded: ', 'Waiting for the dataLayer to load...' );\n\t\tconst dataLayerLoaded = setInterval(async () => {\n\t\t\tif (window.dataLayer && window.dataLayer.length > 2) {\n\t\t\t\tclearInterval(dataLayerLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 50); // check every 50ms\n\t}\n});\n\nexport const digisubsMenuLoaded = () => new Promise((resolve) => {\n\tif ( documentIsLoadedCompletely() ) {\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'Utils digisubsMenuLoaded: ', 'Waiting for the digisubs dropdown to load...' );\n\t\tconst digisubsLoaded = setInterval(async () => {\n\t\t\tif (document.getElementById('account-content')) {\n\t\t\t\tclearInterval(digisubsLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 200); // check every 200ms\n\t}\n});\n\nexport const newsLetterDropdownLoaded = () => new Promise((resolve) => {\n\tif ( documentIsLoadedCompletely() ) {\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'Utils newsLetterDropdownLoaded: ', 'Waiting for the digisubs dropdown to load...' );\n\t\tconst dropDownLoaded = setInterval(async () => {\n\t\t\tif (document.querySelector('.newsletter-dropdown-title.dropdown-item')) {\n\t\t\t\tclearInterval(dropDownLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 200); // check every 200ms\n\t}\n});\n\nexport const digisubsEmployeeDebuggerLoaded = () => new Promise((resolve) => {\n\tif ( documentIsLoadedCompletely() ) {\n\t\tresolve();\n\t} else {\n\t\tlogger.log( 'UIHandler: Employee Debugger: ', 'Waiting for the digisubs debugger toolbox to load...' );\n\t\tconst digisubsLoaded = setInterval(async () => {\n\t\t\tif (document.getElementById('employee-debugger-content')) {\n\t\t\t\tclearInterval(digisubsLoaded);\n\t\t\t\tresolve(true)\n\t\t\t}\n\t\t}, 200); // check every 200ms\n\t}\n});\n\nexport const getDataLayerObject = async (getObject) => {\n\tawait digisubsDataLayerLoaded();\n\tlogger.log ('Utils getDataLayerObject: looking for this dataLayer object ',getObject);\n\t// make sure dataLayer exists, it not create it\n\twindow.dataLayer = window.dataLayer || [];\n\n\t// loop through dataLayer array looking for title\n\tlet dataLayerSearch = '';\n\t/* eslint-disable-next-line no-undef */\n\tlogger.log('Utils getDataLayerObject: here is dataLayer length ', window.dataLayer.length);\n\tconst dataLayerLoop = (element) => {\n\t\tlogger.log('Utils dataLayerLoop: look for this element ', element);\n\t\tif( element[getObject] ) {\n\t\t\tlogger.log('Utils dataLayerLoop: found ',element[getObject]);\n\t\t\tdataLayerSearch = element[getObject];\n\t\t\treturn element[getObject];\n\t\t}\n\t\tlogger.log('Utils dataLayerLoop: dataLayer search ', false);\n\t\treturn false;\n\n\t}\n\t/* eslint-disable-next-line no-undef */\n\tconst searchDataLayer = window.dataLayer.some(dataLayerLoop);\n\tif (searchDataLayer) return dataLayerSearch;\n\treturn false;\n}\n\nexport const pageType = async ( typeString = 'Page Type' ) => {\n\tconst getPageType = await getDataLayerObject( typeString );\n\tlogger.log( 'utils.js | pageType: page type is ',getPageType);\n\treturn getPageType;\n}\n\nconst blueConicReady = () => new Promise( ( resolve ) => {\n\tlogger.log('blueConicReady | Waiting for BC to be ready.');\n\twindow.blueConicClient.event.subscribe(window.blueConicClient.event.onReady,\n\t\t{}, () => {\n\t\t\t// BlueConic is ready\n\t\t\tlogger.log('blueConicReady | onReady fired, BC profile is ready.');\n\t\t\tresolve(true);\n\t\t}\n\t);\n\tconst bcTimeout = setTimeout( () => {\n\t\tclearTimeout( bcTimeout );\n\t\tlogger.log('blueConicReady | onReady timeout, BC onReady unknown.');\n\t\tresolve( false );\n\t}, 3000);\n});\n\nconst blueConicProfileReady = () => new Promise( ( resolve ) => {\n\tlogger.log('blueConicProfileReady | Waiting for BC Profile to be ready.');\n\tif( window.blueConicClient && ( window.blueConicClient.getSegments || window.blueConicClient.profile ) ) {\n\t\tlogger.log('blueConicProfileReady | BC getSegments is ready.');\n\t\tresolve( true );\n\t}\n\twindow.blueConicClient.event.subscribe(window.blueConicClient.event.onBeforeInteractions,\n\t\t{},() => {\n\t\t\t// BlueConic interactions are about to be executed\n\t\t\tlogger.log('blueConicProfileReady | onBeforeInteractions fired, BC profile is ready.');\n\t\t\tresolve( true );\n\t\t});\n\n\tconst bcTimeout = setTimeout( () => {\n\t\tclearTimeout( bcTimeout );\n\t\tlogger.log('blueConicProfileReady | onBeforeInteractions timeout, BC profile readiness unknown');\n\t\tresolve( false );\n\t}, 3000);\n});\n\nexport const blueConicLoaded = ( waitTillBCReady = false ) => new Promise( ( resolve ) => {\n\tlogger.log(`blueConicLoaded | waitTillBCReady is ${waitTillBCReady}`);\n\n\tconst bcTimeout = setTimeout( () => {\n\t\tclearTimeout( bcTimeout );\n\t\tlogger.log('blueConicLoaded | onBlueConicLoaded timeout, resolving false for load status.');\n\t\tresolve( false );\n\t}, 10000);\n\t\n\t// Is BlueConic loaded?\n\tif ( typeof window.blueConicClient !== 'undefined' &&\n\t\ttypeof window.blueConicClient.event !== 'undefined' &&\n\t\ttypeof window.blueConicClient.event.subscribe !== 'undefined' ) {\n\n\t\tlogger.log('blueConicLoaded | BC object already loaded');\n\n\t\tif( waitTillBCReady ){\n\t\t\tresolve( blueConicReady() );\n\t\t} else {\n\t\t\tclearTimeout( bcTimeout );\n\t\t\tresolve();\n\t\t}\n\t} else {\n\t\tlogger.log('blueConicLoaded | BC not loaded, waiting for \"onBlueConicLoaded\" event');\n\t\t// Not yet loaded; wait for the \"onBlueConicLoaded\" event\n\t\twindow.addEventListener( 'onBlueConicLoaded', async() => {\n\t\t\tlogger.log('blueConicLoaded | onBlueConicLoaded event fired.');\n\t\t\t// BlueConic is loaded, now we can do API things\n\t\t\tif( waitTillBCReady ){\n\t\t\t\tlogger.log('blueConicLoaded | waiting for blueConicReady...');\n\t\t\t\tconst loadSuccess = await blueConicReady();\n\t\t\t\tclearTimeout( bcTimeout );\n\t\t\t\tresolve( loadSuccess );\n\t\t\t} else {\n\t\t\t\tclearTimeout( bcTimeout );\n\t\t\t\tresolve();\n\t\t\t}\n\t\t}, false );\n\t}\n} );\n\nexport const bcGetAuth0Id = async () => {\n\tconst loadStatus = await blueConicLoaded( true );\n\tif( loadStatus ) {\n\t\tconst bcLoadSuccess = await blueConicProfileReady();\n\t\tif ( !bcLoadSuccess ) return false;\n\t\treturn blueConicClient.profile.getProfile().getValue('Auth0_ID');\n\t} return false;\n}\n\nexport const bcLowaCheck = async () => {\n\tconst subSeglist = [ 'MICH LOWA', 'OHIO LOWA', 'PENN LOWA', 'NY LOWA', 'BOSTON LOWA', 'NORCAL LOWA',\n\t\t'TWIN CITIES LOWA', 'DENV/PMP LOWA', 'SCNG LOWA', 'BANG LOWA', 'AMC LOWA', 'HC LOWA', 'GS LOWA', \n\t\t'ORL LOWA', 'SS LOWA', 'NNDP LOWA', 'VP LOWA', 'NYDN LOWA', 'BAL LOWA', 'CG LOWA', 'CHI LOWA'];\n\tconst loadStatus = await blueConicLoaded( true );\n\n\tif( loadStatus ){\n\t\tconst bcSegments = window.blueConicClient.getSegments();\n\t\tlogger.log('bcLowaCheck | BC segments for users: ', bcSegments);\n\t\tconst userSubSegments = bcSegments.filter( segment => subSeglist.includes( segment.name ) );\n\n\t\tif( userSubSegments.length > 0 ){\n\n\t\t\tconst uuid = await bcGetAuth0Id();\n\t\t\tif( uuid ) {\n\t\t\t\treturn {\n\t\t\t\t\tisSub: true,\n\t\t\t\t\tuuid\n\t\t\t\t}\n\t\t\t} return {\n\t\t\t\tisSub: false\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tisSub: false\n\t};\n}\n\nexport const authenticationReady = () => new Promise( ( resolve, reject ) => {\n\tif ( typeof window.MNGAuthentication !== 'undefined' &&\n\t\ttypeof window.MNGAuthentication.authenticationReady !== 'undefined' ) {\n\t\tlogger.log( 'utils.js | Authentication already ready: ', window.MNGAuthentication.authenticationReady );\n\t\tresolve( window.MNGAuthentication.authenticationReady );\n\t} else {\n\t\tlogger.log( 'utils.js | Adding authenticationReady listener...' );\n\t\twindow.addEventListener( 'authenticationReady', ( event ) => {\n\t\t\ttry {\n\t\t\t\tconst detail = event.detail || {};\n\t\t\t\tlogger.log( 'utils.js | Event: authentication ready: ', detail );\n\t\t\t\tresolve( detail );\n\t\t\t} catch ( err ) {\n\t\t\t\tlogger.log( err );\n\t\t\t\treject( err );\n\t\t\t}\n\t\t}, false);\n\t}\n} );\n\nexport const entitlementsReady = () => new Promise( ( resolve, reject ) => {\n\tif ( !settings.entitlementsEnabled ) {\n\t\tresolve( false );\n\t} else if ( typeof window.MNGAuthentication !== 'undefined' &&\n\t\ttypeof window.MNGAuthentication.entitlementsReady !== 'undefined' ) {\n\t\tlogger.log( 'Entitlements already ready: ', window.MNGAuthentication.entitlementsReady );\n\t\tresolve( window.MNGAuthentication.entitlementsReady );\n\t} else {\n\t\tlogger.log( 'Adding entitlementsReady listener...' );\n\t\twindow.addEventListener( 'entitlementsReady', async ( event ) => {\n\t\t\ttry {\n\t\t\t\tconst detail = event.detail || {};\n\t\t\t\tlogger.log( 'Utils.js | Event: entitlements ready: ', detail );\n\t\t\t\tresolve( detail );\n\t\t\t} catch ( err ) {\n\t\t\t\tlogger.log( err );\n\t\t\t\treject( err );\n\t\t\t}\n\t\t}, false);\n\t}\n} );\n\nexport const connextReady = (eventToWaitFor = 'onFinish') => new Promise ( (resolve) => {\n\n\t// default timeout in case Connext never loads\n\tconst connextTimeout = setTimeout( () => {\n\t\tif ( typeof Connext !== 'undefined' ) {\n\t\t\tlogger.log( 'Connext actually did load...' );\n\t\t\tclearTimeout(connextTimeout);\n\t\t\tresolve(true);\n\t\t} else {\n\t\t\tlogger.log( 'Connext did not load in time. Resolving false...' );\n\t\t\tclearTimeout(connextTimeout);\n\t\t\tresolve( false );\n\t\t}\n\t}, 6000);\n\n\tif ( typeof Connext !== 'undefined' ) {\n\t\tlogger.log( 'Connext already ready.' );\n\t\tclearTimeout(connextTimeout);\n\t\tresolve( true );\n\t} else {\n\t\tlogger.log( 'Listening for Connext Ready event...' );\n\t\tdocument.addEventListener(\n\t\t\ttypeof eventToWaitFor === 'string' ? eventToWaitFor : 'onFinish',\n\t\t\t() => {\n\t\t\t\tclearTimeout(connextTimeout);\n\t\t\t\tlogger.log( 'Connext loaded!' );\n\t\t\t\tresolve( true );\n\t\t\t}\n\t\t);\n\t}\n});\n\nexport const clearEntitlementsSession = () => {\n\tlogger.log( 'Clearing entitlements...' );\n\ttry {\n\t\tdeleteCookie( CONSTANTS.ENTITLEMENT_COOKIE_KEY, {path: '/'} );\n\t} catch ( e ) {\n\t\tlogger.log( 'Failed to delete legacy cookie: ', e );\n\t}\n\ttry {\n\t\tdeleteCookie( CONSTANTS.ENTITLEMENT_COOKIE_KEY, {\n\t\t\tpath: '/',\n\t\t\tdomain: getRootDomain(),\n\t\t\texpires: 365, // 1 year\n\t\t\tsecure: true, // https\n\t\t} );\n\t} catch ( e ) {\n\t\tlogger.log( 'Failed to delete entitlements cookie: ', e );\n\t}\n\ttry {\n\t\twindow.localStorage.removeItem( CONSTANTS.LOCAL_STORAGE_SESSION_KEY );\n\t} catch ( e ) {\n\t\tlogger.log( 'Failed to remove local storage: ', e );\n\t}\n};\n\nexport const addExpectedEventListeners = (eventName) => new Promise((resolve) =>{\n\tlogger.log('Adding event to wait for: ', eventName);\n\twindow.addEventListener( eventName, ( e ) => {\n\t\ttry {\n\t\t\tconst detail = e.detail || {};\n\t\t\tlogger.log( `Event: ${eventName}} ready: `, detail );\n\t\t\tresolve( detail );\n\t\t} catch ( err ) {\n\t\t\tlogger.log( err );\n\t\t\tresolve();\n\t\t}\n\t}, false);\n});\n\nexport const clearSession = () => {\n\tdeleteCookie( CONSTANTS.AUTH0_SUB_COOKIE_KEY );\n\n\tlocalStorage.removeItem( CONSTANTS.USER_STORAGE_HASH );\n\t// TODO: Clear connext storage, this key is not currently set anywhere\n\t// window.localStorage.removeItem( window.MNGAuthentication.connextStorageKey );\n\tclearEntitlementsSession();\n}\n\nexport const isEnvironmentProduction = () => {\n\tconst nonProdEnvironments = ['local', 'develop', 'preprod', 'trbdev'];\n\tconst currentUrl = getCurrentUrl();\n\treturn !nonProdEnvironments.some(env=>currentUrl.origin.includes(env));\n}\n\nexport const deleteStorageObject = ( objName ) => {\n\tlogger.log('Removing storageObject : ', objName);\n\tif (typeof window.localStorage.getItem( objName ) !== 'undefined') {\n\t\twindow.localStorage.removeItem( objName );\n\t\tlogger.log('Storage Object removed : ', objName);\n\t}\n}\n\nexport const simpleEmailValidation = ( email ) => {\n\tlogger.log('starting simpleEmailValidation');\n\tconst emailPattern = new RegExp(\n\t\t/^(([^<>()[\\]\\\\.,;:\\s@']+(\\.[^<>()[\\]\\\\.,;:\\s@']+)*)|('.+'))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i\n\t);\n\tif (!email) {\n\t\treturn {\n\t\t\tvalid: false,\n\t\t\tmessage: 'Please enter an email.',\n\t\t};\n\t}\n\n\tif (!emailPattern.test(email)) {\n\t\t// if the domain name is on this junk list we dont allow it\n\t\treturn {\n\t\t\tvalid: false,\n\t\t\tmessage: 'Please enter a valid email.',\n\t\t};\n\t}\n\t// if the domain name isn't on this TLD list we dont allow it\n\tconst emailList =[\n\t\t'zzz.pl'\n\t];\n\tconst TLDList = ['AAA','AARP','ABARTH','ABB','ABBOTT','ABBVIE','ABC','ABLE','ABOGADO','ABUDHABI','AC','ACADEMY','ACCENTURE','ACCOUNTANT','ACCOUNTANTS','ACO','ACTOR','AD','ADS','ADULT','AE','AEG','AERO','AETNA','AF','AFL','AFRICA','AG','AGAKHAN','AGENCY','AI','AIG','AIRBUS','AIRFORCE','AIRTEL','AKDN','AL','ALFAROMEO','ALIBABA','ALIPAY','ALLFINANZ','ALLSTATE','ALLY','ALSACE','ALSTOM','AM','AMAZON','AMERICANEXPRESS','AMERICANFAMILY','AMEX','AMFAM','AMICA','AMSTERDAM','ANALYTICS','ANDROID','ANQUAN','ANZ','AO','AOL','APARTMENTS','APP','APPLE','AQ','AQUARELLE','AR','ARAB','ARAMCO','ARCHI','ARMY','ARPA','ART','ARTE','AS','ASDA','ASIA','ASSOCIATES','AT','ATHLETA','ATTORNEY','AU','AUCTION','AUDI','AUDIBLE','AUDIO','AUSPOST','AUTHOR','AUTO','AUTOS','AVIANCA','AW','AWS','AX','AXA','AZ','AZURE','BA','BABY','BAIDU','BANAMEX','BANANAREPUBLIC','BAND','BANK','BAR','BARCELONA','BARCLAYCARD','BARCLAYS','BAREFOOT','BARGAINS','BASEBALL','BASKETBALL','BAUHAUS','BAYERN','BB','BBC','BBT','BBVA','BCG','BCN','BD','BE','BEATS','BEAUTY','BEER','BENTLEY','BERLIN','BEST','BESTBUY','BET','BF','BG','BH','BHARTI','BI','BIBLE','BID','BIKE','BING','BINGO','BIO','BIZ','BJ','BLACK','BLACKFRIDAY','BLOCKBUSTER','BLOG','BLOOMBERG','BLUE','BM','BMS','BMW','BN','BNPPARIBAS','BO','BOATS','BOEHRINGER','BOFA','BOM','BOND','BOO','BOOK','BOOKING','BOSCH','BOSTIK','BOSTON','BOT','BOUTIQUE','BOX','BR','BRADESCO','BRIDGESTONE','BROADWAY','BROKER','BROTHER','BRUSSELS','BS','BT','BUILD','BUILDERS','BUSINESS','BUY','BUZZ','BV','BW','BY','BZ','BZH','CA','CAB','CAFE','CAL','CALL','CALVINKLEIN','CAM','CAMERA','CAMP','CANON','CAPETOWN','CAPITAL','CAPITALONE','CAR','CARAVAN','CARDS','CARE','CAREER','CAREERS','CARS','CASA','CASE','CASH','CASINO','CAT','CATERING','CATHOLIC','CBA','CBN','CBRE','CBS','CC','CD','CENTER','CEO','CERN','CF','CFA','CFD','CG','CH','CHANEL','CHANNEL','CHARITY','CHASE','CHAT','CHEAP','CHINTAI','CHRISTMAS','CHROME','CHURCH','CI','CIPRIANI','CIRCLE','CISCO','CITADEL','CITI','CITIC','CITY','CITYEATS','CK','CL','CLAIMS','CLEANING','CLICK','CLINIC','CLINIQUE','CLOTHING','CLOUD','CLUB','CLUBMED','CM','CN','CO','COACH','CODES','COFFEE','COLLEGE','COLOGNE','COM','COMCAST','COMMBANK','COMMUNITY','COMPANY','COMPARE','COMPUTER','COMSEC','CONDOS','CONSTRUCTION','CONSULTING','CONTACT','CONTRACTORS','COOKING','COOKINGCHANNEL','COOL','COOP','CORSICA','COUNTRY','COUPON','COUPONS','COURSES','CPA','CR','CREDIT','CREDITCARD','CREDITUNION','CRICKET','CROWN','CRS','CRUISE','CRUISES','CU','CUISINELLA','CV','CW','CX','CY','CYMRU','CYOU','CZ','DABUR','DAD','DANCE','DATA','DATE','DATING','DATSUN','DAY','DCLK','DDS','DE','DEAL','DEALER','DEALS','DEGREE','DELIVERY','DELL','DELOITTE','DELTA','DEMOCRAT','DENTAL','DENTIST','DESI','DESIGN','DEV','DHL','DIAMONDS','DIET','DIGITAL','DIRECT','DIRECTORY','DISCOUNT','DISCOVER','DISH','DIY','DJ','DK','DM','DNP','DO','DOCS','DOCTOR','DOG','DOMAINS','DOT','DOWNLOAD','DRIVE','DTV','DUBAI','DUNLOP','DUPONT','DURBAN','DVAG','DVR','DZ','EARTH','EAT','EC','ECO','EDEKA','EDU','EDUCATION','EE','EG','EMAIL','EMERCK','ENERGY','ENGINEER','ENGINEERING','ENTERPRISES','EPSON','EQUIPMENT','ER','ERICSSON','ERNI','ES','ESQ','ESTATE','ET','ETISALAT','EU','EUROVISION','EUS','EVENTS','EXCHANGE','EXPERT','EXPOSED','EXPRESS','EXTRASPACE','FAGE','FAIL','FAIRWINDS','FAITH','FAMILY','FAN','FANS','FARM','FARMERS','FASHION','FAST','FEDEX','FEEDBACK','FERRARI','FERRERO','FI','FIAT','FIDELITY','FIDO','FILM','FINAL','FINANCE','FINANCIAL','FIRE','FIRESTONE','FIRMDALE','FISH','FISHING','FIT','FITNESS','FJ','FK','FLICKR','FLIGHTS','FLIR','FLORIST','FLOWERS','FLY','FM','FO','FOO','FOOD','FOODNETWORK','FOOTBALL','FORD','FOREX','FORSALE','FORUM','FOUNDATION','FOX','FR','FREE','FRESENIUS','FRL','FROGANS','FRONTDOOR','FRONTIER','FTR','FUJITSU','FUN','FUND','FURNITURE','FUTBOL','FYI','GA','GAL','GALLERY','GALLO','GALLUP','GAME','GAMES','GAP','GARDEN','GAY','GB','GBIZ','GD','GDN','GE','GEA','GENT','GENTING','GEORGE','GF','GG','GGEE','GH','GI','GIFT','GIFTS','GIVES','GIVING','GL','GLASS','GLE','GLOBAL','GLOBO','GM','GMAIL','GMBH','GMO','GMX','GN','GODADDY','GOLD','GOLDPOINT','GOLF','GOO','GOODYEAR','GOOG','GOOGLE','GOP','GOT','GOV','GP','GQ','GR','GRAINGER','GRAPHICS','GRATIS','GREEN','GRIPE','GROCERY','GROUP','GS','GT','GU','GUARDIAN','GUCCI','GUGE','GUIDE','GUITARS','GURU','GW','GY','HAIR','HAMBURG','HANGOUT','HAUS','HBO','HDFC','HDFCBANK','HEALTH','HEALTHCARE','HELP','HELSINKI','HERE','HERMES','HGTV','HIPHOP','HISAMITSU','HITACHI','HIV','HK','HKT','HM','HN','HOCKEY','HOLDINGS','HOLIDAY','HOMEDEPOT','HOMEGOODS','HOMES','HOMESENSE','HONDA','HORSE','HOSPITAL','HOST','HOSTING','HOT','HOTELES','HOTELS','HOTMAIL','HOUSE','HOW','HR','HSBC','HT','HU','HUGHES','HYATT','HYUNDAI','IBM','ICBC','ICE','ICU','ID','IE','IEEE','IFM','IKANO','IL','IM','IMAMAT','IMDB','IMMO','IMMOBILIEN','IN','INC','INDUSTRIES','INFINITI','INFO','ING','INK','INSTITUTE','INSURANCE','INSURE','INT','INTERNATIONAL','INTUIT','INVESTMENTS','IO','IPIRANGA','IQ','IR','IRISH','IS','ISMAILI','IST','ISTANBUL','IT','ITAU','ITV','JAGUAR','JAVA','JCB','JE','JEEP','JETZT','JEWELRY','JIO','JLL','JM','JMP','JNJ','JO','JOBS','JOBURG','JOT','JOY','JP','JPMORGAN','JPRS','JUEGOS','JUNIPER','KAUFEN','KDDI','KE','KERRYHOTELS','KERRYLOGISTICS','KERRYPROPERTIES','KFH','KG','KH','KI','KIA','KIDS','KIM','KINDER','KINDLE','KITCHEN','KIWI','KM','KN','KOELN','KOMATSU','KOSHER','KP','KPMG','KPN','KR','KRD','KRED','KUOKGROUP','KW','KY','KYOTO','KZ','LA','LACAIXA','LAMBORGHINI','LAMER','LANCASTER','LANCIA','LAND','LANDROVER','LANXESS','LASALLE','LAT','LATINO','LATROBE','LAW','LAWYER','LB','LC','LDS','LEASE','LECLERC','LEFRAK','LEGAL','LEGO','LEXUS','LGBT','LI','LIDL','LIFE','LIFEINSURANCE','LIFESTYLE','LIGHTING','LIKE','LILLY','LIMITED','LIMO','LINCOLN','LINDE','LINK','LIPSY','LIVE','LIVING','LK','LLC','LLP','LOAN','LOANS','LOCKER','LOCUS','LOFT','LOL','LONDON','LOTTE','LOTTO','LOVE','LPL','LPLFINANCIAL','LR','LS','LT','LTD','LTDA','LU','LUNDBECK','LUXE','LUXURY','LV','LY','MA','MACYS','MADRID','MAIF','MAISON','MAKEUP','MAN','MANAGEMENT','MANGO','MAP','MARKET','MARKETING','MARKETS','MARRIOTT','MARSHALLS','MASERATI','MATTEL','MBA','MC','MCKINSEY','MD','ME','MED','MEDIA','MEET','MELBOURNE','MEME','MEMORIAL','MEN','MENU','MERCKMSD','MG','MH','MIAMI','MICROSOFT','MIL','MINI','MINT','MIT','MITSUBISHI','MK','ML','MLB','MLS','MM','MMA','MN','MO','MOBI','MOBILE','MODA','MOE','MOI','MOM','MONASH','MONEY','MONSTER','MORMON','MORTGAGE','MOSCOW','MOTO','MOTORCYCLES','MOV','MOVIE','MP','MQ','MR','MS','MSD','MT','MTN','MTR','MU','MUSEUM','MUSIC','MUTUAL','MV','MW','MX','MY','MZ','NA','NAB','NAGOYA','NAME','NATURA','NAVY','NBA','NC','NE','NEC','NET','NETBANK','NETFLIX','NETWORK','NEUSTAR','NEW','NEWS','NEXT','NEXTDIRECT','NEXUS','NF','NFL','NG','NGO','NHK','NI','NICO','NIKE','NIKON','NINJA','NISSAN','NISSAY','NL','NO','NOKIA','NORTHWESTERNMUTUAL','NORTON','NOW','NOWRUZ','NOWTV','NP','NR','NRA','NRW','NTT','NU','NYC','NZ','OBI','OBSERVER','OFFICE','OKINAWA','OLAYAN','OLAYANGROUP','OLDNAVY','OLLO','OM','OMEGA','ONE','ONG','ONL','ONLINE','OOO','OPEN','ORACLE','ORANGE','ORG','ORGANIC','ORIGINS','OSAKA','OTSUKA','OTT','OVH','PA','PAGE','PANASONIC','PARIS','PARS','PARTNERS','PARTS','PARTY','PASSAGENS','PAY','PCCW','PE','PET','PF','PFIZER','PG','PH','PHARMACY','PHD','PHILIPS','PHONE','PHOTO','PHOTOGRAPHY','PHOTOS','PHYSIO','PICS','PICTET','PICTURES','PID','PIN','PING','PINK','PIONEER','PIZZA','PK','PL','PLACE','PLAY','PLAYSTATION','PLUMBING','PLUS','PM','PN','PNC','POHL','POKER','POLITIE','PORN','POST','PR','PRAMERICA','PRAXI','PRESS','PRIME','PRO','PROD','PRODUCTIONS','PROF','PROGRESSIVE','PROMO','PROPERTIES','PROPERTY','PROTECTION','PRU','PRUDENTIAL','PS','PT','PUB','PW','PWC','PY','QA','QPON','QUEBEC','QUEST','RACING','RADIO','RE','READ','REALESTATE','REALTOR','REALTY','RECIPES','RED','REDSTONE','REDUMBRELLA','REHAB','REISE','REISEN','REIT','RELIANCE','REN','RENT','RENTALS','REPAIR','REPORT','REPUBLICAN','REST','RESTAURANT','REVIEW','REVIEWS','REXROTH','RICH','RICHARDLI','RICOH','RIL','RIO','RIP','RO','ROCHER','ROCKS','RODEO','ROGERS','ROOM','RS','RSVP','RU','RUGBY','RUHR','RUN','RW','RWE','RYUKYU','SA','SAARLAND','SAFE','SAFETY','SAKURA','SALE','SALON','SAMSCLUB','SAMSUNG','SANDVIK','SANDVIKCOROMANT','SANOFI','SAP','SARL','SAS','SAVE','SAXO','SB','SBI','SBS','SC','SCA','SCB','SCHAEFFLER','SCHMIDT','SCHOLARSHIPS','SCHOOL','SCHULE','SCHWARZ','SCIENCE','SCOT','SD','SE','SEARCH','SEAT','SECURE','SECURITY','SEEK','SELECT','SENER','SERVICES','SES','SEVEN','SEW','SEX','SEXY','SFR','SG','SH','SHANGRILA','SHARP','SHAW','SHELL','SHIA','SHIKSHA','SHOES','SHOP','SHOPPING','SHOUJI','SHOW','SHOWTIME','SI','SILK','SINA','SINGLES','SITE','SJ','SK','SKI','SKIN','SKY','SKYPE','SL','SLING','SM','SMART','SMILE','SN','SNCF','SO','SOCCER','SOCIAL','SOFTBANK','SOFTWARE','SOHU','SOLAR','SOLUTIONS','SONG','SONY','SOY','SPA','SPACE','SPORT','SPOT','SR','SRL','SS','ST','STADA','STAPLES','STAR','STATEBANK','STATEFARM','STC','STCGROUP','STOCKHOLM','STORAGE','STORE','STREAM','STUDIO','STUDY','STYLE','SU','SUCKS','SUPPLIES','SUPPLY','SUPPORT','SURF','SURGERY','SUZUKI','SV','SWATCH','SWISS','SX','SY','SYDNEY','SYSTEMS','SZ','TAB','TAIPEI','TALK','TAOBAO','TARGET','TATAMOTORS','TATAR','TATTOO','TAX','TAXI','TC','TCI','TD','TDK','TEAM','TECH','TECHNOLOGY','TEL','TEMASEK','TENNIS','TEVA','TF','TG','TH','THD','THEATER','THEATRE','TIAA','TICKETS','TIENDA','TIFFANY','TIPS','TIRES','TIROL','TJ','TJMAXX','TJX','TK','TKMAXX','TL','TM','TMALL','TN','TO','TODAY','TOKYO','TOOLS','TOP','TORAY','TOSHIBA','TOTAL','TOURS','TOWN','TOYOTA','TOYS','TR','TRADE','TRADING','TRAINING','TRAVEL','TRAVELCHANNEL','TRAVELERS','TRAVELERSINSURANCE','TRUST','TRV','TT','TUBE','TUI','TUNES','TUSHU','TV','TVS','TW','TZ','UA','UBANK','UBS','UG','UK','UNICOM','UNIVERSITY','UNO','UOL','UPS','US','UY','UZ','VA','VACATIONS','VANA','VANGUARD','VC','VE','VEGAS','VENTURES','VERISIGN','VERSICHERUNG','VET','VG','VI','VIAJES','VIDEO','VIG','VIKING','VILLAS','VIN','VIP','VIRGIN','VISA','VISION','VIVA','VIVO','VLAANDEREN','VN','VODKA','VOLKSWAGEN','VOLVO','VOTE','VOTING','VOTO','VOYAGE','VU','VUELOS','WALES','WALMART','WALTER','WANG','WANGGOU','WATCH','WATCHES','WEATHER','WEATHERCHANNEL','WEBCAM','WEBER','WEBSITE','WED','WEDDING','WEIBO','WEIR','WF','WHOSWHO','WIEN','WIKI','WILLIAMHILL','WIN','WINDOWS','WINE','WINNERS','WME','WOLTERSKLUWER','WOODSIDE','WORK','WORKS','WORLD','WOW','WS','WTC','WTF','XBOX','XEROX','XFINITY','XIHUAN','XIN','XN--11B4C3D','XN--1CK2E1B','XN--1QQW23A','XN--2SCRJ9C','XN--30RR7Y','XN--3BST00M','XN--3DS443G','XN--3E0B707E','XN--3HCRJ9C','XN--3PXU8K','XN--42C2D9A','XN--45BR5CYL','XN--45BRJ9C','XN--45Q11C','XN--4DBRK0CE','XN--4GBRIM','XN--54B7FTA0CC','XN--55QW42G','XN--55QX5D','XN--5SU34J936BGSG','XN--5TZM5G','XN--6FRZ82G','XN--6QQ986B3XL','XN--80ADXHKS','XN--80AO21A','XN--80AQECDR1A','XN--80ASEHDB','XN--80ASWG','XN--8Y0A063A','XN--90A3AC','XN--90AE','XN--90AIS','XN--9DBQ2A','XN--9ET52U','XN--9KRT00A','XN--B4W605FERD','XN--BCK1B9A5DRE4C','XN--C1AVG','XN--C2BR7G','XN--CCK2B3B','XN--CCKWCXETD','XN--CG4BKI','XN--CLCHC0EA0B2G2A9GCD','XN--CZR694B','XN--CZRS0T','XN--CZRU2D','XN--D1ACJ3B','XN--D1ALF','XN--E1A4C','XN--ECKVDTC9D','XN--EFVY88H','XN--FCT429K','XN--FHBEI','XN--FIQ228C5HS','XN--FIQ64B','XN--FIQS8S','XN--FIQZ9S','XN--FJQ720A','XN--FLW351E','XN--FPCRJ9C3D','XN--FZC2C9E2C','XN--FZYS8D69UVGM','XN--G2XX48C','XN--GCKR3F0F','XN--GECRJ9C','XN--GK3AT1E','XN--H2BREG3EVE','XN--H2BRJ9C','XN--H2BRJ9C8C','XN--HXT814E','XN--I1B6B1A6A2E','XN--IMR513N','XN--IO0A7I','XN--J1AEF','XN--J1AMH','XN--J6W193G','XN--JLQ480N2RG','XN--JVR189M','XN--KCRX77D1X4A','XN--KPRW13D','XN--KPRY57D','XN--KPUT3I','XN--L1ACC','XN--LGBBAT1AD8J','XN--MGB9AWBF','XN--MGBA3A3EJT','XN--MGBA3A4F16A','XN--MGBA7C0BBN0A','XN--MGBAAKC7DVF','XN--MGBAAM7A8H','XN--MGBAB2BD','XN--MGBAH1A3HJKRD','XN--MGBAI9AZGQP6J','XN--MGBAYH7GPA','XN--MGBBH1A','XN--MGBBH1A71E','XN--MGBC0A9AZCG','XN--MGBCA7DZDO','XN--MGBCPQ6GPA1A','XN--MGBERP4A5D4AR','XN--MGBGU82A','XN--MGBI4ECEXP','XN--MGBPL2FH','XN--MGBT3DHD','XN--MGBTX2B','XN--MGBX4CD0AB','XN--MIX891F','XN--MK1BU44C','XN--MXTQ1M','XN--NGBC5AZD','XN--NGBE9E0A','XN--NGBRX','XN--NODE','XN--NQV7F','XN--NQV7FS00EMA','XN--NYQY26A','XN--O3CW4H','XN--OGBPF8FL','XN--OTU796D','XN--P1ACF','XN--P1AI','XN--PGBS0DH','XN--PSSY2U','XN--Q7CE6A','XN--Q9JYB4C','XN--QCKA1PMC','XN--QXA6A','XN--QXAM','XN--RHQV96G','XN--ROVU88B','XN--RVC1E0AM3E','XN--S9BRJ9C','XN--SES554G','XN--T60B56A','XN--TCKWE','XN--TIQ49XQYJ','XN--UNUP4Y','XN--VERMGENSBERATER-CTB','XN--VERMGENSBERATUNG-PWB','XN--VHQUV','XN--VUQ861B','XN--W4R85EL8FHU5DNRA','XN--W4RS40L','XN--WGBH1C','XN--WGBL6A','XN--XHQ521B','XN--XKC2AL3HYE2A','XN--XKC2DL3A5EE0H','XN--Y9A3AQ','XN--YFRO4I67O','XN--YGBI2AMMX','XN--ZFR164B','XXX','XYZ','YACHTS','YAHOO','YAMAXUN','YANDEX','YE','YODOBASHI','YOGA','YOKOHAMA','YOU','YOUTUBE','YT','YUN','ZA','ZAPPOS','ZARA','ZERO','ZIP','ZM','ZONE','ZUERICH','ZW'];\n\tconst TLDregex = /\\.([^.\\n\\s]*)$/;\n\tconst TLDsearch = email.match(TLDregex)[1].toUpperCase();\n\tconst TLDsearchList = TLDList.includes(TLDsearch);\n\tlogger.log('simpleEmailValidation: ', `TLD search ${TLDsearchList}`);\n\tif (TLDsearchList === false) {\n\t\treturn {\n\t\t\tvalid: false,\n\t\t\tmessage: 'Please enter a valid email domain.',\n\t\t};\n\t}\n\t// if the domain is on this black list we dont allow it\n\tconst emailSearch = emailList.findIndex(\n\t\t(ref) => ref === email.split('@')[1]\n\t);\n\tif (emailSearch === -1) {\n\t\treturn {\n\t\t\tvalid: true,\n\t\t\tmessage: 'Valid',\n\t\t};\n\t}\n\treturn {\n\t\tvalid: false,\n\t\tmessage: 'Please enter a valid email.'\n\t};\n};\nwindow.simpleEmailValidation = simpleEmailValidation;\n\nconst validatePhoneNumber = (str) => {\n\tconst regExp = /^[0-9]([0-9 -])*[0-9]$/;\n\treturn regExp.test(str);\n}\nwindow.validatePhoneNumber = validatePhoneNumber;\n\n/* eslint-disable-next-line no-underscore-dangle */\nlet _auth0Client;\nexport const getAuth0Client = async () => {\n\tif( typeof _auth0Client !== 'undefined'){\n\t\treturn _auth0Client;\n\t}\n\tconst {\n\t\tauth0Domain,\n\t\tauth0ClientId,\n\t} = settings;\n\t_auth0Client = await createAuth0Client( {\n\t\tdomain: auth0Domain,\n\t\tclient_id: auth0ClientId,\n\t\tuseRefreshTokens: true,\n\t\tcacheLocation: 'localstorage',\n\t\taudience: 'access-extension'\n\t} );\n\treturn _auth0Client;\n};\n\nexport const dispatchAuthenticationReadyEvent = (detail) => {\n\tlogger.log('utils.js | auth event dispathed')\n\tconst event = new CustomEvent(\n\t\t'authenticationReady',\n\t\t{\n\t\t\tdetail,\n\t\t}\n\t);\n\twindow.MNGAuthentication = window.MNGAuthentication || {};\n\twindow.MNGAuthentication.authenticationReady = detail;\n\n\tlogger.log( 'Utils.js | Dispatching authenticationReady Event: ', event );\n\twindow.dispatchEvent( event );\n\tlogger.log( 'Utils.js | Dispatched authenticationReady event!' );\n}\n\n// taken from https://stackoverflow.com/questions/5525071/how-to-wait-until-an-element-exists\nexport const waitForElementToExist = (selector) => new Promise(resolve => {\n\tif (document.querySelector(selector)) {\n\t\tresolve(document.querySelector(selector));\n\t}\n\n\tconst observer = new MutationObserver(() => {\n\t\tif (document.querySelector(selector)) {\n\t\t\tresolve(document.querySelector(selector));\n\t\t\tobserver.disconnect();\n\t\t}\n\t\treturn true;\n\t});\n\n\tobserver.observe(document.body, {\n\t\tchildList: true,\n\t\tsubtree: true\n\t});\n});\n\nexport const subscribeElementToEvent = async ( selector, eventName, event快播视频back ) => {\n\ttry{\n\t\tlogger.log('subscribeElementToEvent', `Waiting for ${selector} to exist...`);\n\t\tconst element = await waitForElementToExist(selector);\n\t\tlogger.log('subscribeElementToEvent', `${selector} does exist, adding listener.`);\n\t\telement.addEventListener(eventName, event快播视频back);\n\t\treturn true;\n\t} catch (e){\n\t\tlogger.log('subscribeElementToEvent: ', `${e}`);\n\t\treturn false;\n\t}\n}\n\nexport const isInViewport = (el) => {\n\tconst rect = el.getBoundingClientRect();\n\treturn (\n\t\trect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n rect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\n\t);\n}\n\nexport const rerunConnextEntitlements = ( rerunOnlyIfSilent = false) => {\n\tif( typeof Connext === 'undefined' ){\n\t\tdocument.addEventListener(\n\t\t\t'onInit',\n\t\t\t() => {\n\t\t\t\t// rerun Connext to remove paywall for new subscribers\n\t\t\t\tif( rerunOnlyIfSilent && Connext.GetOptions().Silentmode ) Connext.Run();\n\t\t\t\telse if( !rerunOnlyIfSilent ) Connext.Run();\n\t\t\t})\n\t} else if( rerunOnlyIfSilent && Connext.GetOptions().Silentmode ) Connext.Run();\n\telse if( !rerunOnlyIfSilent ) Connext.Run();\n\telse {\n\t\tlogger.log('Not rerunning Connext');\n\t}\n}\n\nexport const checkOneTapOptions = ( keyword ) => {\n\tif( typeof window.authentication_config !== 'undefined' ) {\n\t\tconst authConfigs = window.authentication_config;\n\t\tconst findOptions = Object.keys(authConfigs).filter( key => key.includes(keyword) && authConfigs[key] === '1');\n\t\tlogger.log( 'checkOneTapOptions: enabled options', findOptions );\n\t\tif( findOptions.length > 0){\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\treturn false;\n}\nexport const isStringConvertibleToInt = (str) => Number.isInteger(Number(str));\n\n/**\n * Add a dynamic link to a DOM node.\n *\n * @param {string} text - The original text content of the node.\n * @param {HTMLElement} domeNode - The DOM node where link will be added.\n * @param {string} linkText - The portion of the text to be converted into a link.\n * @param {string} href - The URL to be set as the href attribute for the created link.\n * @param {string} className - The class name to be applied to the created link.\n */\n\nexport const addDynamicLinkToNode = (text, linkText, domNode, href, className) => {\n\tconst linkIndex = text.indexOf(linkText);\n\n\t// If linkText is not found, do nothing\n\tif (linkIndex === -1) {\n\t\treturn;\n\t}\n\n\tconst beforeText = text.substring(0, linkIndex);\n\tconst afterText = text.substring(linkIndex + linkText.length);\n\n\tconst link = document.createElement('a');\n\tlink.href = href;\n\tlink.textContent = linkText;\n\tlink.className = className;\n\n\t// Append the beforeText\n\tconst beforeTextNode = document.createTextNode(beforeText);\n\t// eslint-disable-next-line no-param-reassign\n\tdomNode.appendChild(beforeTextNode);\n\n\t// Append the link as a child to domNode\n\t// eslint-disable-next-line no-param-reassign\n\tdomNode.appendChild(link);\n\n\t// Append the remaining text after the link\n\tconst afterTextNode = document.createTextNode(afterText);\n\t// eslint-disable-next-line no-param-reassign\n\tdomNode.appendChild(afterTextNode);\n};\n\n/**\n * Function to escapes any potentially dangerous\n * characters in the text and linkText variables.\n *\n * @param {string} text\n * @returns {string}\n */\n\nexport const escapeHTML = text => {\n\tconst map = {\n\t\t'&': '&',\n\t\t'<': '<',\n\t\t'>': '>',\n\t\t'\"': '"',\n\t\t\"'\": ''',\n\t};\n\treturn text.replace(/[&<>\"']/g, (m) => map[m]);\n};\n\n/**\n * Creates a modal with configurable options and attaches it to the specified element in the DOM.\n * This function constructs a modal based on the provided data object, including text, title, and styling options.\n * It allows for full-screen display, custom ID assignment, and automatic removal with fade-out effects.\n *\n * @param {Object} modalDataObj - The data object containing all necessary options for the modal.\n * @param {string} modalDataObj.text - The main text content of the modal.\n * @param {string} modalDataObj.title - The title of the modal. Optional; if not provided, the title area is hidden.\n * @param {string} modalDataObj.id - The DOM element ID for the modal. This is necessary to ensure unique modals in the document.\n * @param {boolean} [modalDataObj.fullScreen=false] - Determines whether the modal should cover the full screen.\n * @param {string} [modalDataObj.appendToId] - The ID of the DOM element to which the modal will be appended. If not specified, the modal is appended to the body.\n * @param {boolean} modalDataObj.closeConfirm - optional adds a close button\n * @param {string} modalDataObj.buttonText - text for the bottom close button \n * @param {boolean} modalDataObj.autoDismiss - prevents the modal from being dismissed by a timeout\n * @param {boolean} modalDataObj.embedded - modal is embedded into page instead of overlay\n * @returns {HTMLElement} - The created modal element.\n */\n\nexport const createModal = ( modalDataObj ) => {\n\tconst {\n\t\ttext, \n\t\ttitle, \n\t\tid, \n\t\tfullScreen, \n\t\tappendToId, \n\t\tcloseConfirm, \n\t\tbuttonText, \n\t\tautoDismiss = true, \n\t\tembedded = false\n\t} = modalDataObj;\n\n\tlet userMessage = document.querySelector(`#${id}`);\n\n\tconst containerStructure = `
\n
\n
\n
\n\t\t\t\t\t\n\t\t\t\t
\n
\n
\n
\n

${title || ''}

\n
\n
\n\t\t\t\t\t\t\t\t\t${text || ''}\n
\n
\n
\n\t\t\t\t\t\t${closeConfirm ? `
` : ''}\n
\n
\n
\n
\n
`;\n\n\tif(!userMessage){\n\t\tuserMessage = document.createElement('div');\n\t\tuserMessage.id = id;\n\t\tuserMessage.classList = 'mainModalWrapper';\n\t}\n\tuserMessage.innerHTML = '';\n\tuserMessage.innerHTML = containerStructure;\n\n\tconst closeButton = userMessage.querySelector('#modalClose');\n\tcloseButton.addEventListener( 'click', () => {\n\t\tuserMessage.remove();\n\t});\n\n\tif (closeConfirm) {\n\t\tconst closeButtonBottom = userMessage.querySelector('.optional-button-container');\n\t\tcloseButtonBottom.addEventListener( 'click', () => {\n\t\t\tuserMessage.remove();\n\t\t});\n\t}\n\tif (appendToId) {\n\t\tconst appendToElement = document.querySelector(`#${appendToId}`);\n\t\tif (appendToElement && embedded) {\n\t\t\tconst entriesContainer = document.getElementById('userProfileEntriesContainer');\n\t\t\tconst entries = entriesContainer.querySelectorAll('.user-profile-item-row');\n\n\t\t\tif (entries.length >= 2) {\n\t\t\t\t\t\n\t\t\t\tconst parent = entries[1].parentNode;\t\t\t\n\t\t\t\tparent.insertBefore(userMessage, entries[1].nextSibling); \n\t\t\t}\n\t\t} else {\n\t\t\tappendToElement.append(userMessage);\n\t\t}\n\t}\n\n\n\t// remove message after text string length * 50ms with fade\n\t// this sets a minimim of 2.5 seconds before removing the modal and a max of 7000 per AC from DSBU-1282\n\t/** Dev note: If a modal that has to be manually dismissed is needed, the following will need to\n\t\t** be paramaratized and wrapped in an if block\n\t* */\n\tif (autoDismiss) {\n\t\tlet removeModalTime = Math.min(Math.max(text.length * 55, 2500), 7000);\n\t\tremoveModalTime = removeModalTime > 2800 ? removeModalTime : 3000\n\t\tsetTimeout( () => {\n\t\t\tuserMessage.classList.add('fade-out');\n\t\t\tsetTimeout(() => {\n\t\t\t\tuserMessage.remove();\n\t\t\t}, 1500);\n\t\t}, removeModalTime);\n\t}\n\treturn userMessage;\n};\n\n\nexport const getContentId = async ( typeString = 'Content ID' ) => {\n\tconst contentId = await getDataLayerObject(typeString);\n\tlogger.log('utils.js | contentId: Content ID is ', contentId);\n\treturn contentId;\n};\n\nexport const getSection = async ( typeString = 'Section' ) => {\n\tconst obtainSection = await getDataLayerObject(typeString);\n\tlogger.log('utils.js | section: Section is ', obtainSection);\n\treturn obtainSection;\n}\n\nexport const getHomePaper = () => {\n\tconst userInfo = window.localStorage.getItem('__MNG_Session');\n\tif ( userInfo ) {\n\t\tconst userInfoParsed = JSON.parse(userInfo);\n\t\tif ( userInfoParsed.idToken ) {\n\t\t\tconst idToken = decodeToken(userInfoParsed.idToken);\n\t\t\tif (idToken.home_paper) {\n\t\t\t\tlogger.log('Util.js | home paper: Home paper is ', idToken.home_paper);\n\t\t\t\treturn idToken.home_paper.replace( 'www.', '' ).replace( 'develop.', '' ).replace( 'preprod.', '' );\n\t\t\t}\n\t\t}\n\t}\n\t// If homepaper isn't set, is going to return the current domain\n\tlogger.log('Util.js | home paper: Home paper is not set ', getSiteUrl());\n\treturn getSiteUrl();\n}\n\nexport const getTheFollowingMonth = () => {\n\tconst currentDate = new Date();\n\tconst currentMonth = currentDate.getMonth();\n\tconst nextMonthDate = new Date(currentDate.setMonth(currentMonth + 1));\n\tconst options = { month: 'long' };\n\treturn new Intl.DateTimeFormat('en-US', options).format(nextMonthDate);\n}\n\nexport const logDDMetric = ( logEventName ) => {\n\tif( settings.datadogEnabled ){\n\t\twindow.DD_RUM.addTiming( logEventName );\n\t}\n}\n\nexport default {\n\tgetCurrentUrl,\n\tgetCookie,\n\tsetCookie,\n\tdeleteCookie,\n\tdeleteStorageObject,\n\tdocumentBodyLoaded,\n\tsubscribeElementToEvent,\n\tsimpleEmailValidation,\n\tgetEncryptedUuid,\n\tcheckAppleSubStatus,\n\tgetAuth0Client,\n\trerunConnextEntitlements,\n\tconnextReady,\n\tsiteIsTribune,\n\tbcLowaCheck,\n\twaitForElementToExist,\n\tcheckOneTapOptions,\n\tisStringConvertibleToInt,\n\taddDynamicLinkToNode,\n\tgetHomePaper,\n\tescapeHTML,\n\tgetTheFollowingMonth,\n\tlogDDMetric,\n\tcreateModal\n};\n","import {\n\tgetContentId,\n\tentitlementsReady, connextReady,\n\trerunConnextEntitlements, digisubsDataLayerLoaded, pageType, getSiteUrl, getSection,\n} from '../utils';\nimport logger from '../logger';\n\nclass SophiBase {\n\n\trunConnextIfSilentTimer;\n\n\treRunConnextCounter;\n\n\tsimpleHostname;\n\n\tsophiHostname;\n\n\tsophi快播视频StartTime;\n\n\tsection;\n\n\tcontentId;\n\n\tvisitorType;\n\n\tconstructor () {\n\t\tthis.simpleHostname = getSiteUrl();\n\t\tconst loc = window.location.hostname;\n\t\tif ( window.sophi_config.sophiHostname !== '' ) this.sophiHostname = window.sophi_config.sophiHostname;\n\t\telse this.sophiHostname = loc;\n\t\tthis.reRunConnextCounter = 0;\n\n\t\tthis.onDeviceEnabled = window.sophi_config?.sophiOnDevice ? window.sophi_config.sophiOnDevice === '1' : false;\n\t\tthis.sdkEnabled = window.sophi_config?.enableSDK ? window.sophi_config.enableSDK === '1' : false;\n\n\t\tthis.log( `site settings: onDeviceEnabled = ${this.onDeviceEnabled}, sdkEnabled = ${this.sdkEnabled}` );\n\t}\n\n\tasync init () {\n\t\tthis.log( 'Starting normal SDK flow.' );\n\t\tif ( !this.sdkEnabled ) return;\n\t\tconst should快播视频Sophi = await this.setupSophiDecision();\n\t\tif ( should快播视频Sophi ) await this.makeSophi快播视频();\n\t}\n\n\tasync setupSophiDecision () {\n\t\tthis.log( 'Added A/B test listener...' );\n\t\treturn new Promise( ( resolve ) => {\n\t\t\ttry {\n\t\t\t\twindow.addEventListener( 'sophi.abTests:ready', async () => {\n\t\t\t\t\t// Define the error callback\n\t\t\t\t\tconst onError = ( error ) => {\n\t\t\t\t\t\tconsole.error( 'onError callback, rerunning Connext if silent:', error );\n\t\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\t};\n\n\t\t\t\t\tthis.log( 'AB Tests loaded successfully!' );\n\t\t\t\t\t// Check if the function is available and then execute\n\t\t\t\t\tif ( window.sophi?.abTests && typeof window.sophi.abTests.getAllExperiments === 'function' ) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst experiments = await window.sophi.abTests.getAllExperiments();\n\n\t\t\t\t\t\t\tif ( !this.onDeviceEnabled && !experiments || ( experiments && experiments.length < 1 ) ) {\n\t\t\t\t\t\t\t\tthis.log( 'experiments variable was not in the expected format.', experiments );\n\t\t\t\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst entitlements = await entitlementsReady();\n\n\t\t\t\t\t\t\tif ( 'isEntitled' in entitlements ) {\n\t\t\t\t\t\t\t\tthis.visitorType = entitlements.isEntitled ? 'subscriber' : 'registered';\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.visitorType = 'anonymous';\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t// set global var for regiwall use.\n\t\t\t\t\t\t\twindow.sophiUserType = this.visitorType;\n\n\t\t\t\t\t\t\t// check for regilite signup to swap userType.\n\t\t\t\t\t\t\tconst isRegilite = window.localStorage.getItem( 'sophiRegiliteUser' );\n\n\t\t\t\t\t\t\tif ( isRegilite === 'yes' && window.sophiUserType === 'anonymous' ) {\n\t\t\t\t\t\t\t\tthis.log( 'as regilite and is anonymous, setting to registered' );\n\t\t\t\t\t\t\t\twindow.sophiUserType = 'registered';\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst pageTypeCheck = await pageType();\n\t\t\t\t\t\t\tif ( pageTypeCheck !== 'article' ) {\n\t\t\t\t\t\t\t\tthis.log( 'Page type was not article, returning.', experiments );\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tawait digisubsDataLayerLoaded();\n\n\t\t\t\t\t\t\tconst sophiGroup = experiments[0]?.assignedGroup;\n\t\t\t\t\t\t\tthis.log( 'onSuccess callback:', sophiGroup );\n\t\t\t\t\t\t\twindow.dataLayer.push( {\n\t\t\t\t\t\t\t\tevent: 'sophi_cookie',\n\t\t\t\t\t\t\t\tsophi_type: `${this.simpleHostname}UserIsInVariantOrHoldout`,\n\t\t\t\t\t\t\t\tsophi_cookie_val: sophiGroup\n\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t\twindow.sophiCookie = sophiGroup;\n\n\t\t\t\t\t\t\tif ( sophiGroup === 'control' || this.visitorType === 'subscriber' ) {\n\t\t\t\t\t\t\t\tthis.log( `User is in ${sophiGroup}, and is ${this.visitorType}. Ending sophi flow.` );\n\t\t\t\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\t\t\t\tresolve( false );\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tthis.section = await getSection();\n\t\t\t\t\t\t\tthis.contentId = await getContentId();\n\t\t\t\t\t\t\tthis.log( 'Content ID ', this.contentId );\n\t\t\t\t\t\t\tresolve( true );\n\t\t\t\t\t\t} catch ( error ) {\n\t\t\t\t\t\t\tonError( error );\n\t\t\t\t\t\t\tresolve( false );\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.log( 'window.sophi.abTests.getAllExperiments is not available' );\n\t\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\t\tresolve( false );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t} catch ( e ) {\n\t\t\t\tthis.log( 'Event listener', e );\n\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\tresolve( false );\n\t\t\t}\n\t\t} );\n\t}\n\n\tasync rerunConnextIfIsSilent () {\n\t\tconst connextIsReady = await connextReady( 'onInit' );\n\t\tif ( connextIsReady && Connext.GetOptions().Silentmode ) {\n\t\t\tthis.log( 'Silent mode, running Connext now.' );\n\t\t\tif ( this.reRunConnextCounter < 1 ) rerunConnextEntitlements();\n\t\t\tthis.reRunConnextCounter += 1;\n\t\t\tif ( this.runConnextIfSilentTimer ) clearTimeout( this.runConnextIfSilentTimer );\n\t\t}\n\t}\n\n\thandleSophiResponse ( response ) {\n\t\tconst sophiAPITime = Date.now() - this.sophi快播视频StartTime;\n\n\t\tthis.log( `response with response time of ${sophiAPITime} ms: `, response );\n\t\tdelete response.trace;\n\n\t\twindow.dataLayer.push( {\n\t\t\tevent: 'sophi_decision',\n\t\t\tsophi_type: 'getDecision',\n\t\t\tsophi_time: sophiAPITime,\n\t\t\tsophi_response: JSON.stringify( response )\n\t\t} );\n\t\twindow.sophiWallConfig = response;\n\t\tthis.rerunConnextIfIsSilent();\n\t}\n\n\tasync makeSophi快播视频 () {\n\t\treturn new Promise( ( resolve ) => {\n\t\t\ttry {\n\t\t\t\tconst sdk = window.sophi.paywall.init( { hostname: this.sophiHostname, getContentId } );\n\t\t\t\tthis.log( '2.0 SDK init complete: ', sdk );\n\n\t\t\t\tif ( !window.sophi.paywall ) {\n\t\t\t\t\tthis.log( 'window.sophi.paywall was undefined. About to run Connext' );\n\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\twindow.dataLayer.push( {\n\t\t\t\t\tevent: 'sophi_cookie',\n\t\t\t\t\tsophi_type: 'beforeSDK快播视频',\n\t\t\t\t\tsophi_cookie_val: window.sophiCookie\n\t\t\t\t} );\n\t\t\t\tthis.log( `about to call SDK, cookie is ${window.sophiCookie}` );\n\t\t\t\tthis.sophi快播视频StartTime = Date.now();\n\t\t\t} catch ( e ) {\n\t\t\t\tthis.log( 'logic error 1', e );\n\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t}\n\n\t\t\tlet timer = 4000;\n\t\t\tif ( window.sophi_config?.sophiGetDesicionTimer !== '' && typeof window.sophi_config.sophiGetDesicionTimer !== 'number' ) {\n\t\t\t\ttimer = parseInt( window.sophi_config.sophiGetDesicionTimer, 10 );\n\t\t\t}\n\t\t\tthis.log( 'timer is equal to: ', timer );\n\t\t\twindow.sophi.paywall.getDecision( {\n\t\t\t\tcontentId: this.contentId,\n\t\t\t\tsection: this.section,\n\t\t\t\tvisitor: window.sophiUserType,\n\t\t\t\ttimeout: timer\n\t\t\t} )\n\t\t\t\t.then( response => {\n\t\t\t\t\tthis.handleSophiResponse( response );\n\t\t\t\t\tresolve();\n\t\t\t\t} ).catch( error => {\n\t\t\t\t\tconst sophiAPITime = Date.now() - this.sophi快播视频StartTime;\n\n\t\t\t\t\tthis.log( `error sdk, response time of ${sophiAPITime} ms: `, error );\n\t\t\t\t\twindow.dataLayer.push( { event: 'sophi_error', sophi_time: sophiAPITime, sophi_err_msg: error } );\n\t\t\t\t\t// run Connext if Connext Silent Mode is enabled\n\t\t\t\t\tthis.rerunConnextIfIsSilent();\n\t\t\t\t\tresolve();\n\t\t\t\t} );\n\t\t} );\n\t}\n\n\t/* eslint-disable class-methods-use-this */\n\tlog ( ...params ) {\n\t\tlogger.log( 'Sophi: ', ...params );\n\t}\n}\n\nexport default SophiBase;\n","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import superPropBase from \"./superPropBase.js\";\nexport default function _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nexport default function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import _typeof from \"@babel/runtime/helpers/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","import SophiBase from './sophi-base'\nimport { pageType, getSection } from '../utils'\n\n/* eslint-disable import/prefer-default-export */\n\nexport class Sophi extends SophiBase {\n\tasync init(){\n\n\t\tif( this.sdkEnabled ) return;\n\t\t\n\t\tif( typeof demeter === 'undefined'){\n\t\t\tthis.log('demeter undefined, aborting on-device init.');\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif ( this.onDeviceEnabled ) {\n\t\t\tthis.log('On-Device module is enabled.');\n\t\t} else {\n\t\t\tthis.log('On-Device module is NOT enabled, aborting.');\n\t\t\treturn;\n\t\t}\n\n\t\t// ignoring the promise here otherwise the abtest event happens before the promise is fulfilled\n\t\tdemeter('config', {\n\t\t\targs: {\n\t\t\t\tlogLevel: window.authentication_config.debug ? 'warn' : 'debug' // default log level is \"warn\"\n\t\t\t}\n\t\t})\n\n\t\tdemeter('enableAllFeatures');\n\n\t\tthis.log('About to setup SOphi decision.');\n\t\tconst success = await this.setupSophiDecision();\n\t\tif( success ) await this.makeSophi快播视频();\n\t}\n\n\thandleSophiResponse(response) {\n\t\tthis.listenForEventForDemeter();\n\t\tsuper.handleSophiResponse(response);\n\t}\n\n\tasync listenForEventForDemeter() {\n\t\tthis.log('Starting sophi listenForEventForDemeter...');\n\t\tconst pageTypeCheck = await pageType();\n\t\tconst section = await getSection();\n\n\t\tdemeter('pageview', {\n\t\t\targs: {\n\t\t\t\tarticle: pageTypeCheck === 'article' ?? false, // Identifies if this is an article page\n\t\t\t\tsection // Top level section of the article\n\t\t\t}\n\t\t});\n\t\tthis.log(`demeter pagetype tracking sent, pagetype is ${pageTypeCheck} and section is ${section}`);\n\n\t\tthis.log('adding paywall listener');\n\t\tdocument.addEventListener(\n\t\t\t'onPaywallShown',\n\t\t\t(e) => {\n\n\t\t\t\tconst wallType = e.detail?.EventData?.name?.includes('regwall') ? 'regwall' : 'paywall';\n\t\t\t\tthis.log(`paywall event, is ${wallType}`);\n\n\t\t\t\tdemeter('wall', {\n\t\t\t\t\targs: {\n\t\t\t\t\t\twallType, // Type of wall being displayed (paywall/regwall)\n\t\t\t\t\t\tsection // Top level section of the article where wall was triggered\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tthis.log(`demeter paywall tracking sent, wall type is ${wallType}`);\n\t\t\t}\n\t\t);\n\n\t}\n\n\tasync makeSophi快播视频() {\n\t\treturn new Promise((resolve) => {\n\t\t\ttry {\n\t\t\t\tthis.sophi快播视频StartTime = Date.now();\n\t\t\t\tdemeter('getDecision', {\n\t\t\t\t\targs: { visitor: this.visitorType }, // \"registered\" or \"anonymous\"\n\t\t\t\t}).then(decision =>{\n\t\t\t\t\tthis.handleSophiResponse( decision.outcome );\n\t\t\t\t\tresolve();\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconst sophiAPITime = Date.now() - this.sophi快播视频StartTime;\n\n\t\t\t\tthis.log(`error sdk, response time of ${sophiAPITime} ms: `, error);\n\t\t\t\twindow.dataLayer.push({ event: 'sophi_error', sophi_time: sophiAPITime, sophi_err_msg: error });\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t}\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import SophiBase from './sophi-base'\nimport { Sophi } from './sophi'\n\nif( window.sophi_config?.sophiOnDevice === '1' ){\n\tconst sophi = new Sophi();\n\tsophi.init();\n} else {\n\tconst sophiLegacy = new SophiBase();\n\tsophiLegacy.init();\n}"],"names":["module","exports","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","defaults","Cancel","config","Promise","resolve","reject","onCanceled","requestData","data","requestHeaders","headers","responseType","done","cancelToken","unsubscribe","signal","removeEventListener","isFormData","request","XMLHttpRequest","auth","username","password","unescape","encodeURIComponent","Authorization","btoa","fullPath","baseURL","url","onloadend","responseHeaders","getAllResponseHeaders","response","responseText","status","statusText","value","err","open","method","toUpperCase","params","paramsSerializer","timeout","onreadystatechange","readyState","responseURL","indexOf","setTimeout","onabort","onerror","ontimeout","timeoutErrorMessage","transitional","clarifyTimeoutError","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","undefined","xsrfHeaderName","forEach","val","key","toLowerCase","setRequestHeader","isUndefined","onDownloadProgress","addEventListener","onUploadProgress","upload","cancel","type","abort","subscribe","aborted","send","bind","Axios","mergeConfig","axios","createInstance","defaultConfig","context","instance","prototype","extend","create","instanceConfig","CancelToken","isCancel","VERSION","all","promises","spread","isAxiosError","default","message","this","toString","__CANCEL__","executor","TypeError","resolvePromise","promise","token","then","_listeners","i","l","length","onfulfilled","_resolve","reason","throwIfRequested","listener","push","index","splice","source","c","InterceptorManager","dispatchRequest","validator","validators","interceptors","arguments","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","responseInterceptorChain","chain","Array","apply","concat","shift","newConfig","onFulfilled","onRejected","error","getUri","replace","handlers","use","options","eject","id","fn","h","isAbsoluteURL","combineURLs","requestedURL","enhanceError","code","Error","transformData","throwIfCancellationRequested","call","transformRequest","merge","common","adapter","transformResponse","toJSON","name","description","number","fileName","lineNumber","columnNumber","stack","config1","config2","getMergedValue","target","isPlainObject","isArray","slice","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","Object","keys","configValue","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","process","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isObject","rawValue","parser","encoder","isString","JSON","parse","trim","e","stringify","stringifySafely","strictJSONParsing","maxContentLength","maxBodyLength","thisArg","args","encode","serializedParams","parts","v","isDate","toISOString","join","hashmarkIndex","relativeURL","write","expires","path","domain","secure","cookie","isNumber","Date","toGMTString","document","match","RegExp","decodeURIComponent","remove","now","test","payload","originURL","msie","navigator","userAgent","urlParsingNode","createElement","resolveURL","href","setAttribute","protocol","host","search","hash","hostname","port","pathname","charAt","window","location","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","line","substr","callback","arr","thing","deprecatedWarnings","version","formatMessage","opt","desc","opts","console","warn","schema","allowUnknown","result","getPrototypeOf","isFunction","obj","hasOwnProperty","constructor","FormData","ArrayBuffer","isView","pipe","URLSearchParams","product","assignValue","a","b","str","stripBOM","content","charCodeAt","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","n","getter","__esModule","d","definition","o","defineProperty","enumerable","get","Symbol","iterator","asyncGeneratorStep","gen","_next","_throw","arg","info","self","_class快播视频Check","Constructor","_defineProperties","props","descriptor","configurable","writable","_createClass","protoProps","staticProps","atob","authentication_config","sessionManagementEnabled","sessionManagement","debug","sessionServer","entitlementsEnabled","dropdownEnabled","enableReaderDashboardLink","oneTapEnabled","useTribMainGoogle","isAdfreeArticle","auth0Domain","auth0ClientId","entitlementsEndpoint","entitlementsApiKey","entitlementsAPIKey","linaCheckOnArticles","serverEntitlements","googleClientId","newsletterId","connextStorageKey","auth0SubKey","auth0Authenticated","secret","pluginSecret","newslettersEnabled","bcLowaSegements","blueconicEnabled","datadogEnabled","enableDatadog","log","settings","_console","_len","_key","_regeneratorRuntime","t","r","asyncIterator","u","toStringTag","define","wrap","Generator","Context","makeInvokeMethod","tryCatch","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","__await","callInvokeWithMethodAndArg","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","stop","rval","handle","complete","finish","delegateYield","getCurrentUrl","windowLocationhref","URL","getSiteUrl","documentIsLoadedCompletely","digisubsDataLayerLoaded","dataLayer","logger","dataLayerLoaded","setInterval","_asyncToGenerator","_callee7","_context7","clearInterval","getDataLayerObject","_x7","_ref13","_callee11","getObject","dataLayerSearch","dataLayerLoop","_context11","element","some","pageType","_ref14","_callee12","typeString","getPageType","_args12","_context12","entitlementsReady","MNGAuthentication","_ref18","_x8","_callee16","event","detail","_context16","connextReady","eventToWaitFor","connextTimeout","Connext","clearTimeout","simpleEmailValidation","email","emailPattern","valid","TLDsearch","TLDsearchList","includes","findIndex","ref","validatePhoneNumber","rerunConnextEntitlements","rerunOnlyIfSilent","GetOptions","Silentmode","Run","getContentId","_ref21","_callee19","contentId","_args19","_context19","getSection","_ref22","_callee20","obtainSection","_args20","_context20","_init","_setupSophiDecision","_rerunConnextIfIsSilent","_makeSophi快播视频","SophiBase","_window$sophi_config","_window$sophi_config2","simpleHostname","loc","sophi_config","sophiHostname","reRunConnextCounter","onDeviceEnabled","sophiOnDevice","sdkEnabled","enableSDK","_callee","_context","setupSophiDecision","makeSophi快播视频","_callee3","_this","_context3","_callee2","_window$sophi","onError","_experiments$","experiments","entitlements","sophiGroup","_context2","rerunConnextIfIsSilent","sophi","abTests","getAllExperiments","visitorType","isEntitled","sophiUserType","localStorage","getItem","assignedGroup","sophi_type","sophi_cookie_val","sophiCookie","section","t0","_callee4","_context4","runConnextIfSilentTimer","sophiAPITime","sophi快播视频StartTime","trace","sophi_time","sophi_response","sophiWallConfig","_callee5","_this2","_context5","_window$sophi_config3","sdk","paywall","init","timer","sophiGetDesicionTimer","parseInt","getDecision","visitor","handleSophiResponse","sophi_err_msg","_getPrototypeOf","_get","property","receiver","Reflect","base","object","getOwnPropertyDescriptor","_setPrototypeOf","_possibleConstructorReturn","ReferenceError","_createSuper","Derived","hasNativeReflectConstruct","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","Super","NewTarget","Sophi","_SophiBase","_listenForEventForDemeter","subClass","superClass","_inherits","_super","demeter","logLevel","listenForEventForDemeter","_ref","pageTypeCheck","article","_e$detail","_e$detail$EventData","_e$detail$EventData$n","wallType","EventData","decision","outcome"],"sourceRoot":"webpack://"}