{"version":3,"file":"cobrowsing.client.js","sources":["../../node_modules/regenerator-runtime/runtime.js","../../node_modules/@babel/runtime/regenerator/index.js","../../node_modules/axios/lib/helpers/bind.js","../../node_modules/axios/lib/utils.js","../../node_modules/axios/lib/helpers/buildURL.js","../../node_modules/axios/lib/core/InterceptorManager.js","../../node_modules/axios/lib/core/transformData.js","../../node_modules/axios/lib/cancel/isCancel.js","../../node_modules/axios/lib/helpers/normalizeHeaderName.js","../../node_modules/axios/lib/core/enhanceError.js","../../node_modules/axios/lib/core/createError.js","../../node_modules/axios/lib/core/settle.js","../../node_modules/axios/lib/helpers/cookies.js","../../node_modules/axios/lib/helpers/isAbsoluteURL.js","../../node_modules/axios/lib/helpers/combineURLs.js","../../node_modules/axios/lib/core/buildFullPath.js","../../node_modules/axios/lib/helpers/parseHeaders.js","../../node_modules/axios/lib/helpers/isURLSameOrigin.js","../../node_modules/axios/lib/adapters/xhr.js","../../node_modules/axios/lib/defaults.js","../../node_modules/axios/lib/core/dispatchRequest.js","../../node_modules/axios/lib/core/mergeConfig.js","../../node_modules/axios/lib/core/Axios.js","../../node_modules/axios/lib/cancel/Cancel.js","../../node_modules/axios/lib/cancel/CancelToken.js","../../node_modules/axios/lib/helpers/spread.js","../../node_modules/axios/lib/axios.js","../../node_modules/axios/index.js","../../src/Log.js","../../src/SessionState.js","../../src/CobrowsingClient.js","../../src/CobrowsingComponent.js"],"sourcesContent":["/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","module.exports = require(\"regenerator-runtime\");\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 bind = require('./helpers/bind');\n\n/*global toString:true*/\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.replace(/^\\s*/, '').replace(/\\s*$/, '');\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","'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\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) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\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 utils = require('./../utils');\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 /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\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\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 };\n };\n return error;\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 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');\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 * 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 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 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\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');\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');\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\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 // Listen for ready state\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\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? 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(resolve, reject, response);\n\n // Clean up request\n request = null;\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 = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(timeoutErrorMessage, config, '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 (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\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) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\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 normalizeHeaderName = require('./helpers/normalizeHeaderName');\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\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\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)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\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\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\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","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\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\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(\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(\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(\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\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 var valueFromConfig2Keys = ['url', 'method', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\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 function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\n\n return config;\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');\n\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 // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.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\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 this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\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 * 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\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 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 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// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","module.exports = require('./lib/axios');","import pkg from '../package.json';\r\nexport default {\r\n debug: (...args) => console.log(pkg.name, args),\r\n error: (...args) => console.error(pkg.name, args)\r\n};\r\n","export var SessionState;\r\n(function (SessionState) {\r\n SessionState[SessionState[\"STOPPED\"] = 0] = \"STOPPED\";\r\n SessionState[SessionState[\"ACTIVE\"] = 1] = \"ACTIVE\";\r\n})(SessionState || (SessionState = {}));\r\n","import axios from 'axios';\r\nimport log from './Log';\r\nimport { SessionState } from './SessionState';\r\nconst DebouceTimeout = 100;\r\nexport class CobrowsingClient {\r\n constructor(host, options, shadowRoot) {\r\n this.active = false;\r\n this.dirty = false;\r\n this.waiting = 0;\r\n this.endpoint = (path) => {\r\n return `${this.host}/api/session/${path}`;\r\n };\r\n /**\r\n * Register update callbacks\r\n */\r\n this.register = () => {\r\n this.createConsoleElement(\"register\");\r\n this.active = true;\r\n const focusables = document.querySelectorAll(\"input, textarea, select, button, a\");\r\n for (let i = 0; i < focusables.length; i++) {\r\n const focusable = focusables.item(i);\r\n for (const ev of [\"focus\", \"blur\"]) {\r\n focusable.addEventListener(ev, async () => {\r\n this.createConsoleElement(\"> update stream by \");\r\n await this.debouceUpdate(true);\r\n });\r\n }\r\n }\r\n this.observer = new MutationObserver(async (_) => {\r\n await this.debouceUpdate(true);\r\n });\r\n const target = document.querySelector('body');\r\n const config = { attributes: true, childList: true, characterData: true, subtree: true };\r\n this.observer.observe(target, config);\r\n for (const ev of [\"scroll\", \"resize\", \"load\"]) {\r\n window.addEventListener(ev, async () => {\r\n await this.debouceUpdate(ev === \"load\");\r\n });\r\n }\r\n };\r\n /**\r\n * Unregister update callbacks\r\n */\r\n this.unregister = () => {\r\n this.createConsoleElement(\"unregister\");\r\n this.active = false;\r\n if (this.updater) {\r\n clearTimeout(this.updater);\r\n this.updater = null;\r\n }\r\n if (this.observer) {\r\n this.observer.disconnect();\r\n this.observer = null;\r\n }\r\n };\r\n this.createConsoleElement(\"constructor from CobrowsingClient\");\r\n this.options = options;\r\n this.host = host;\r\n this.shadowRoot = shadowRoot;\r\n this.updater = null;\r\n this.observer = null;\r\n //this.ping(true)\r\n }\r\n createConsoleElement(className) {\r\n const consoleElement = document.createElement('pre');\r\n consoleElement.className = className;\r\n if (this.shadowRoot) {\r\n this.shadowRoot?.appendChild(consoleElement);\r\n }\r\n else {\r\n var cobrowsing = document.querySelector('cobrowsing-client');\r\n cobrowsing?.appendChild(consoleElement);\r\n }\r\n }\r\n /**\r\n * Debouce update callbacks\r\n * @param includeDocument Include document in update\r\n */\r\n async debouceUpdate(includeDocument) {\r\n if (this.updater) {\r\n clearTimeout(this.updater);\r\n }\r\n if (includeDocument) {\r\n this.dirty = true;\r\n }\r\n if (this.active) {\r\n if (this.waiting > 10) {\r\n await this.dispatchUpdate(includeDocument || this.dirty);\r\n this.updater = null;\r\n this.waiting = 0;\r\n this.dirty = false;\r\n }\r\n else {\r\n this.updater = setTimeout(async () => {\r\n await this.dispatchUpdate(includeDocument || this.dirty);\r\n this.updater = null;\r\n this.waiting = 0;\r\n this.dirty = false;\r\n }, DebouceTimeout);\r\n this.waiting += 1;\r\n }\r\n }\r\n }\r\n /**\r\n * Create update\r\n * @param includeDocument Include document in update\r\n */\r\n createUpdate(includeDocument = false) {\r\n let documentUpdate = null;\r\n if (includeDocument) {\r\n /* apply transforms to window.document */\r\n // const nodes = document.querySelectorAll(\"*\")\r\n // for (const node of nodes) {\r\n // if (!node.hasAttribute(\"__observer_id\"))\r\n // node.setAttribute(\"__observer_id\", Math.floor(Math.random() * 1000000).toString())\r\n // }\r\n // urlsToAbsolute(document.images);\r\n // urlsToAbsolute(document.querySelectorAll(\"link[rel='stylesheet']\"));\r\n /* clone document and apply transforms */\r\n // Clone the document structure\r\n const clone = document.documentElement.cloneNode(true);\r\n const styleRules = [];\r\n // Iterate over elements in the original document and gather computed styles\r\n document.documentElement.querySelectorAll('*').forEach((element, index) => {\r\n const computedStyle = window.getComputedStyle(element);\r\n let inlineStyle = '';\r\n // Generate inline CSS from computed styles\r\n for (let i = 0; i < computedStyle.length; i++) {\r\n const property = computedStyle[i];\r\n inlineStyle += `${property}: ${computedStyle.getPropertyValue(property)}; `;\r\n }\r\n // Assign a unique data attribute to each element in the cloned document\r\n const uniqueAttr = `data-clone-id-${index}`;\r\n const clonedElement = clone.querySelectorAll('*')[index];\r\n clonedElement.setAttribute(uniqueAttr, '');\r\n // Add the computed styles as a CSS rule targeting the unique attribute\r\n styleRules.push(`[${uniqueAttr}] { ${inlineStyle} }`);\r\n });\r\n // Capture and inject existing \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Een van onze medewerkers wil met u meekijken

\r\n \r\n \r\n
\r\n\r\n
\r\n

Heeft u hulp nodig in deze online omgeving? Wij kijken graag met u mee.

\r\n Hoe werkt het?\r\n
    \r\n
  • U geeft toestemming aan onze medewerker om met u mee te kijken;
  • \r\n
  • Onze medewerker kan alleen meekijken op deze online omgeving en ziet geen andere pagina’s of programma’s;
  • \r\n
  • U kan het meekijken op elk moment stoppen door op het kruisje te klikken.
  • \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n

Activeringscode

\r\n \r\n \r\n
\r\n \r\n
\r\n
Geef onderstaande code door, zodat onze medewerker met u mee kan kijken.
\r\n
0
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n `;\r\n console.log(\"Start of the consts\");\r\n const cobrowsingActive = shadowRoot.querySelector(\".cobrowsing--active\");\r\n const cobrowsingStopped = shadowRoot.querySelector(\".cobrowsing--stopped\");\r\n const cobrowsingStarted = shadowRoot.querySelector(\".cobrowsing--started\");\r\n const cobrowsingStop = shadowRoot.querySelector(\".cobrowsing--stop\");\r\n const cobrowsingTooltip = shadowRoot.querySelector(\".cobrowsing--stopped_tooltip\");\r\n const cobrowsingStart = document.querySelector(\".cobrowsing--start\");\r\n const cobrowsingPrestartPopup = shadowRoot.querySelector(\".cobrowsing--prestart\");\r\n const cobrowsingStartResume = shadowRoot.querySelector(\".cobrowsing--start-resume\");\r\n const cobrowsingClosePopup = shadowRoot.querySelector(\".cobrowsing__close-popup\");\r\n console.log(\"End of the costs also window\", window);\r\n window.dataLayer = window.dataLayer || [];\r\n if (cobrowsingClosePopup) {\r\n cobrowsingClosePopup.onclick = () => {\r\n showCobrowingPrestart(false);\r\n };\r\n }\r\n if (cobrowsingStart) {\r\n console.log(\"cobrowsingStart\", cobrowsingStart);\r\n createConsoleElement(\"cobrowsing-start-function\");\r\n cobrowsingStart.onclick = () => {\r\n showCobrowingPrestart(true);\r\n };\r\n }\r\n if (cobrowsingStartResume) {\r\n cobrowsingStartResume.onclick = () => {\r\n showCobrowingPrestart(false);\r\n this.client?.start();\r\n if (typeof window === \"undefined\")\r\n return;\r\n window.dataLayer.push({\r\n event: \"click_button\",\r\n buttonId: \"primary_button\",\r\n componentName: \"Co-browsing\",\r\n buttonText: \"Start meekijken\",\r\n click_url: undefined,\r\n page: window.location?.pathname\r\n });\r\n };\r\n }\r\n if (cobrowsingStop) {\r\n cobrowsingStop.onclick = () => {\r\n this.client?.stop();\r\n if (typeof window === \"undefined\")\r\n return;\r\n window.dataLayer.push({\r\n event: \"click_button\",\r\n buttonId: \"primary_button\",\r\n componentName: \"Co-browsing\",\r\n buttonText: \"Stop meekijken\",\r\n click_url: undefined,\r\n page: window.location?.pathname\r\n });\r\n };\r\n }\r\n if (cobrowsingTooltip) {\r\n cobrowsingTooltip.onclick = () => {\r\n showCobrowsingStopped(false);\r\n };\r\n }\r\n if (cobrowsingStarted) {\r\n cobrowsingStarted.onclick = () => {\r\n showCobrowsingStarted(false);\r\n };\r\n }\r\n function showCobrowingPrestart(visible) {\r\n console.log(\"showCobrowingPrestart\", visible);\r\n if (!visible) {\r\n cobrowsingPrestartPopup?.classList.remove(\"cobrowsing--visible\");\r\n }\r\n else {\r\n cobrowsingPrestartPopup?.classList.add(\"cobrowsing--visible\");\r\n }\r\n }\r\n function showCobrowingActive(visible) {\r\n if (!visible) {\r\n cobrowsingActive?.classList.remove(\"cobrowsing--visible\");\r\n document.body.classList.remove('cobrowsing-active');\r\n }\r\n else {\r\n cobrowsingActive?.classList.add(\"cobrowsing--visible\");\r\n document.body.classList.add('cobrowsing-active');\r\n }\r\n }\r\n function showCobrowsingStopped(visible) {\r\n if (!visible) {\r\n cobrowsingStopped?.classList.remove(\"cobrowsing--visible\");\r\n }\r\n else {\r\n cobrowsingStopped?.classList.add(\"cobrowsing--visible\");\r\n setTimeout(function () {\r\n showCobrowsingStopped(false);\r\n }, 10000);\r\n }\r\n }\r\n function showCobrowsingStarted(visible, session) {\r\n console.log(\"showCobrowsingStarted\", visible, session);\r\n if (!visible) {\r\n cobrowsingStarted?.classList.remove(\"cobrowsing--visible\");\r\n }\r\n else {\r\n shadowRoot.querySelector(\".cobrowsing--started_session\").innerText = (session || -1).toString();\r\n cobrowsingStarted?.classList.add(\"cobrowsing--visible\");\r\n }\r\n }\r\n function showCobrowsingStart(visible) {\r\n console.log(\"showCobrowsingStart\", visible);\r\n if (cobrowsingStart) {\r\n if (!visible) {\r\n cobrowsingStart.style.display = 'none';\r\n }\r\n else {\r\n cobrowsingStart.style.display = 'inline-flex';\r\n }\r\n }\r\n }\r\n function createConsoleElement(className) {\r\n const consoleElement = document.createElement('pre');\r\n consoleElement.className = className;\r\n shadowRoot.appendChild(consoleElement);\r\n }\r\n this.client = new CobrowsingClient(this.host || \"\", {\r\n onStopped: function (notify) {\r\n self._active = false;\r\n createConsoleElement(\"cobrowsing-onStopped\");\r\n console.log(\"onStopped CobrowsingClient\", notify);\r\n localStorage.removeItem(\"sessionId\");\r\n if (notify) {\r\n showCobrowsingStopped(true);\r\n }\r\n showCobrowsingStarted(false);\r\n showCobrowingActive(false);\r\n showCobrowsingStart(true);\r\n self.dispatchEvent(self.stoppedEvent);\r\n },\r\n onStarted: function (session) {\r\n createConsoleElement(\"cobrowsing-onStarted\");\r\n self._active = true;\r\n localStorage.setItem(\"sessionId\", session.toString());\r\n showCobrowsingStopped(false);\r\n showCobrowsingStarted(true, session);\r\n showCobrowingActive(true);\r\n showCobrowsingStart(false);\r\n self.dispatchEvent(self.startedEvent);\r\n },\r\n onResumed: function () {\r\n self._active = true;\r\n createConsoleElement(\"cobrowsing-onResumed\");\r\n showCobrowsingStopped(false);\r\n showCobrowsingStarted(false);\r\n showCobrowingActive(true);\r\n showCobrowsingStart(false);\r\n self.dispatchEvent(self.resumedEvent);\r\n }\r\n }, shadowRoot);\r\n console.log(\"this.start CobrowsingClient\");\r\n this.start = () => showCobrowingPrestart(true);\r\n if (localStorage.getItem(\"sessionId\")) {\r\n const sessionId = parseInt(localStorage.getItem(\"sessionId\") ?? '0');\r\n if (sessionId) {\r\n this.client.start(sessionId);\r\n }\r\n }\r\n createConsoleElement(\"cobrowsing-this-start\");\r\n }\r\n disconnectedCallback() {\r\n }\r\n attributeChangedCallback(_attrName, _oldVal, _newVal) {\r\n }\r\n adoptedCallback() {\r\n }\r\n}\r\n// Registers custom element\r\nwindow.customElements.define('cobrowsing-client', CobrowsingClientElement);\r\n"],"names":["runtime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","undefined","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","obj","key","value","defineProperty","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","_invoke","makeInvokeMethod","tryCatch","fn","arg","type","call","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","constructor","displayName","defineIteratorMethods","forEach","method","isGeneratorFunction","genFun","ctor","name","mark","setPrototypeOf","__proto__","awrap","__await","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","then","unwrapped","error","previousPromise","enqueue","callInvokeWithMethodAndArg","async","Promise","iter","next","done","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","info","resultName","nextLoc","toString","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","keys","object","reverse","length","pop","iterable","iteratorMethod","isNaN","i","skipTempReset","prev","charAt","slice","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","module","regeneratorRuntime","accidentalStrictMode","Function","require$$0","bind","thisArg","args","Array","arguments","apply","isArray","val","isUndefined","isBuffer","isArrayBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isNumber","isObject","isPlainObject","isDate","isFile","isBlob","isFunction","isStream","pipe","isURLSearchParams","URLSearchParams","trim","str","replace","isStandardBrowserEnv","navigator","product","window","document","l","merge","assignValue","extend","a","b","stripBOM","content","charCodeAt","encode","encodeURIComponent","buildURL","url","params","paramsSerializer","serializedParams","utils","parts","serialize","parseValue","v","toISOString","JSON","stringify","join","hashmarkIndex","indexOf","InterceptorManager","handlers","use","fulfilled","rejected","eject","id","forEachHandler","h","transformData","data","headers","fns","transform","isCancel","__CANCEL__","normalizeHeaderName","normalizedName","processHeader","toUpperCase","enhanceError","config","code","request","response","isAxiosError","toJSON","message","description","number","fileName","lineNumber","columnNumber","stack","createError","settle","validateStatus","status","standardBrowserEnv","write","expires","path","domain","secure","cookie","Date","toGMTString","read","match","RegExp","decodeURIComponent","remove","now","nonStandardBrowserEnv","isAbsoluteURL","test","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","ignoreDuplicateOf","parseHeaders","parsed","split","parser","line","substr","toLowerCase","concat","msie","userAgent","urlParsingNode","createElement","originURL","resolveURL","href","setAttribute","protocol","host","search","hash","hostname","port","pathname","location","isURLSameOrigin","requestURL","xhrAdapter","dispatchXhrRequest","requestData","requestHeaders","XMLHttpRequest","auth","username","password","unescape","Authorization","btoa","fullPath","open","timeout","onreadystatechange","handleLoad","readyState","responseURL","responseHeaders","getAllResponseHeaders","responseData","responseType","responseText","statusText","onabort","handleAbort","onerror","handleError","ontimeout","handleTimeout","timeoutErrorMessage","xsrfValue","withCredentials","xsrfCookieName","cookies","xsrfHeaderName","setRequestHeader","e","onDownloadProgress","addEventListener","onUploadProgress","upload","cancelToken","promise","onCanceled","cancel","abort","send","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","getDefaultAdapter","adapter","process","require$$1","defaults","transformRequest","transformResponse","parse","maxContentLength","maxBodyLength","common","forEachMethodNoData","forEachMethodWithData","throwIfCancellationRequested","throwIfRequested","dispatchRequest","cleanHeaderConfig","onAdapterResolution","onAdapterRejection","reason","mergeConfig","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","target","source","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","axiosKeys","otherKeys","filter","filterAxiosKeys","Axios","instanceConfig","interceptors","chain","unshiftRequestInterceptors","interceptor","unshift","pushResponseInterceptors","shift","getUri","Cancel","CancelToken","executor","resolvePromise","promiseExecutor","token","c","spread","callback","arr","createInstance","defaultConfig","instance","axios","require$$2","all","promises","require$$3","debug","console","SessionState","DebouceTimeout","CobrowsingClient","options","shadowRoot","active","dirty","waiting","endpoint","register","createConsoleElement","focusables","querySelectorAll","focusable","item","ev","debouceUpdate","observer","MutationObserver","_","querySelector","attributes","childList","characterData","subtree","observe","unregister","updater","clearTimeout","disconnect","className","consoleElement","appendChild","cobrowsing","includeDocument","dispatchUpdate","setTimeout","documentUpdate","clone","documentElement","cloneNode","styleRules","element","index","computedStyle","getComputedStyle","inlineStyle","property","getPropertyValue","uniqueAttr","clonedElement","originalHead","head","cloneHead","styleTags","from","styleTag","newStyleTag","innerHTML","inlineStyleTag","noops","noop","parentNode","removeChild","frames","frame","src","inputs","checked","classList","contains","textareas","innerText","focused","activeElement","observer_id","getAttribute","focusClone","style","outline","base","insertBefore","firstChild","pointerEvents","userSelect","overflow","outerHTML","update","clientWidth","Math","round","scrollWidth","body","clientHeight","scrollHeight","scrollX","scrollY","createUpdate","post","catch","log","force","ping","endPointPing","get","pong","ACTIVE","STOPPED","sessionId","endPointStart","onStarted","onResumed","notify","shouldNotify","onStopped","CobrowsingClientElement","client","start","_active","stoppedEvent","CustomEvent","startedEvent","resumedEvent","attachShadow","mode","getGtm","theme","cobrowsingActive","cobrowsingStopped","cobrowsingStarted","cobrowsingStop","cobrowsingTooltip","cobrowsingStart","cobrowsingPrestartPopup","cobrowsingStartResume","cobrowsingClosePopup","dataLayer","onclick","showCobrowingPrestart","event","buttonId","componentName","buttonText","click_url","page","showCobrowsingStopped","showCobrowsingStarted","visible","add","showCobrowingActive","session","showCobrowsingStart","display","localStorage","removeItem","dispatchEvent","setItem","getItem","parseInt","_attrName","_oldVal","_newVal","HTMLElement","customElements"],"mappings":"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"}