{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./resources/js/helpers/url.js","webpack:///./resources/js/helpers/constants.js","webpack:///./resources/js/components/crossection.js","webpack:///./resources/js/http/client.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/axios/lib/core/mergeConfig.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/axios/lib/env/data.js","webpack:///./node_modules/axios/lib/helpers/isAxiosError.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/axios/lib/core/buildFullPath.js","webpack:///./node_modules/axios/lib/helpers/validator.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/axios/index.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/axios/lib/axios.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","url","test","getPageQueryParam","queryParameter","URLSearchParams","window","location","search","parseInt","_document$querySelect","createThreeDots","threeDots","document","createElement","innerText","createATag","className","page","aTag","URL","href","searchParams","set","classList","title","loadMoreArticles","defaultConfig","getElementById","dataset","currentPage","loadBtn","getElementsByClassName","loadBtnText","innerHTML","offset","limit","params","slug","language_id","languageId","post_type_id","postTypeId","JSON","parse","undefined","tag_ids","tagIds","max_items","maxItems","sort_by","sortBy","date_from","dateFrom","date_to","dateTo","apiUrl","axios","headers","then","response","data","error","console","getArticles","pagination","_pagination$first","_pagination$last","paginator","_data$data","items","is_last_page","pages","hideFirstDots","hideLastDots","first","last","articleCards","forEach","articleData","newArticleCard","formattedCreatedAt","Date","created_at","toLocaleDateString","day","month","year","articleCard","readingInfo","concat","reading_time","minuteReadingText","minutesReadingText","articleInfo","articleDownload","downloadText","post","post_type","hero_image","path","articleCardTags","post_translation_tags","filter","tag","is_hidden","map","newTag","textContent","appendChild","createNewArticleCard","active","append","remove","sectionTitle","nextPage","historyStateObject","Title","Url","history","pushState","incrementPage","querySelector","addEventListener","baseURL","relativeURL","replace","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","e","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","length","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","arguments","push","apply","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","utils","require","InterceptorManager","handlers","use","fulfilled","rejected","options","synchronous","runWhen","eject","id","fn","h","buildURL","dispatchRequest","mergeConfig","validator","validators","Axios","instanceConfig","defaults","interceptors","request","config","method","toLowerCase","transitional","assertOptions","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","promise","responseInterceptorChain","chain","Promise","resolve","shift","newConfig","onFulfilled","onRejected","reject","getUri","paramsSerializer","callback","arr","thisArg","normalizeHeaderName","enhanceError","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","isUndefined","adapter","XMLHttpRequest","toString","transformRequest","isFormData","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isObject","rawValue","parser","encoder","isString","trim","stringify","stringifySafely","transformResponse","strictJSONParsing","responseType","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","status","common","merge","message","code","__CANCEL__","encode","val","encodeURIComponent","serializedParams","parts","isArray","v","isDate","toISOString","join","hashmarkIndex","indexOf","slice","isAxiosError","toJSON","description","number","fileName","lineNumber","columnNumber","stack","isStandardBrowserEnv","originURL","msie","navigator","userAgent","urlParsingNode","resolveURL","setAttribute","protocol","host","hash","hostname","port","pathname","charAt","requestURL","parsed","createError","config1","config2","getMergedValue","target","source","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","keys","configValue","transformData","isCancel","Cancel","throwIfCancellationRequested","cancelToken","throwIfRequested","signal","aborted","reason","_typeof","iterator","constructor","payload","write","expires","domain","secure","cookie","isNumber","toGMTString","read","match","RegExp","decodeURIComponent","now","isAbsoluteURL","combineURLs","requestedURL","VERSION","type","thing","deprecatedWarnings","formatMessage","opt","desc","opts","warn","schema","allowUnknown","TypeError","result","CancelToken","executor","resolvePromise","token","cancel","_listeners","onfulfilled","_resolve","subscribe","unsubscribe","listener","index","splice","settle","cookies","buildFullPath","parseHeaders","isURLSameOrigin","onCanceled","requestData","requestHeaders","done","removeEventListener","auth","username","password","unescape","Authorization","btoa","fullPath","onloadend","responseHeaders","getAllResponseHeaders","responseText","statusText","err","open","toUpperCase","onreadystatechange","readyState","responseURL","onabort","onerror","ontimeout","timeoutErrorMessage","xsrfValue","withCredentials","setRequestHeader","onDownloadProgress","onUploadProgress","upload","abort","send","ignoreDuplicateOf","split","line","substr","fns","context","getPrototypeOf","isFunction","obj","FormData","ArrayBuffer","isView","pipe","product","assignValue","extend","a","b","str","stripBOM","content","charCodeAt","normalizedName","createInstance","instance","all","promises","spread"],"mappings":"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","file":"/js/crossection.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\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","export function getPageQueryParam() {\n const urlSearchParams = new URLSearchParams(window.location.search);\n const queryParameter = urlSearchParams.get(\"page\");\n\n if (queryParameter !== null) {\n return parseInt(queryParameter);\n }\n\n return null;\n}\n\nexport function incrementPage(sectionTitle) {\n const currentPage = getPageQueryParam();\n const nextPage = currentPage === null ? 2 : currentPage + 1;\n const url = new URL(window.location.href);\n\n url.searchParams.set(\"page\", nextPage);\n const historyStateObject = {\n Title: sectionTitle,\n Url: url.href,\n };\n\n window.history.pushState(historyStateObject, historyStateObject.Title, historyStateObject.Url);\n}\n","export const LOAD_SPINNER =\n '
Loading...
';\n","import { getArticles } from \"../http/client\";\nimport { getPageQueryParam, incrementPage } from \"../helpers/url\";\nimport { LOAD_SPINNER } from \"../helpers/constants\";\n\nfunction createThreeDots() {\n const threeDots = document.createElement(\"span\");\n\n threeDots.innerText = \"...\";\n\n return threeDots;\n}\n\nfunction createATag(className, page) {\n const aTag = document.createElement(\"a\");\n const url = new URL(window.location.href);\n\n url.searchParams.set(\"page\", page);\n\n aTag.classList = className ? \"active\" : \"\";\n aTag.href = url.href;\n aTag.innerText = page;\n aTag.title = page;\n\n return aTag;\n}\n\nfunction updatePagination(pagination) {\n const paginator = document.getElementsByClassName(\"pagination\")[0];\n\n paginator.innerHTML = \"\";\n\n if (pagination?.first) {\n paginator.appendChild(createATag(pagination.first?.active, pagination.first.page));\n }\n\n if (!pagination?.hideFirstDots) {\n paginator.append(createThreeDots());\n }\n\n if (pagination?.pages) {\n pagination.pages.map((page) => {\n paginator.appendChild(createATag(page?.active, page.page));\n });\n }\n\n if (!pagination?.hideLastDots) {\n paginator.append(createThreeDots());\n }\n\n if (pagination?.last) {\n paginator.appendChild(createATag(pagination.last?.active, pagination.last.page));\n }\n}\n\nfunction createNewArticleCard(articleData, defaultConfig) {\n const createdAt = new Date(Date.parse(articleData.created_at));\n const formattedCreatedAt = createdAt.toLocaleDateString(\"en-GB\", {\n day: \"2-digit\",\n month: \"2-digit\",\n year: \"numeric\",\n });\n const articleCard = document.createElement(\"div\");\n const readingInfo = `${articleData.reading_time} ${\n articleData.reading_time === 1\n ? defaultConfig.minuteReadingText\n : defaultConfig.minutesReadingText\n }`;\n const articleInfo = `\n
\n

\n \n \n \n \n \n \n ${readingInfo}\n \n

\n

\n ${formattedCreatedAt}\n

\n
\n `;\n const articleDownload = `\n

\n \n \n \n \n \n \n \n \n ${defaultConfig.downloadText}\n \n \n

\n `;\n\n articleCard.className = \"col-12 col-sm-6 col-lg-4\";\n articleCard.innerHTML = `\n
\n \n \"${\n\n \n
\n

\n

\n

\n \n ${articleData.title}\n \n

\n ${articleData.post.post_type.name === \"article\" ? articleInfo : articleDownload}\n
\n
\n `;\n\n const articleCardTags = articleCard.getElementsByClassName(\"article__tags tags\")[0];\n\n articleData.post_translation_tags\n .filter((tag) => {\n return tag.is_hidden === 0;\n })\n .map((tag) => {\n const newTag = document.createElement(\"a\");\n\n newTag.className = \"tag\";\n newTag.textContent = tag.name;\n articleCardTags.appendChild(newTag);\n });\n\n return articleCard;\n}\n\nfunction loadMoreArticles() {\n const script = document.getElementById(\"crossection-js\");\n const defaultConfig = script.dataset;\n const currentPage = getPageQueryParam();\n const loadBtn = document.getElementsByClassName(\"load-more-btn\")[0];\n const loadBtnText = loadBtn.innerHTML;\n const offset = currentPage === null ? defaultConfig.limit : defaultConfig.limit * currentPage;\n const params = {\n slug: defaultConfig.slug,\n limit: defaultConfig.limit,\n offset,\n language_id: defaultConfig.languageId,\n post_type_id: defaultConfig?.postTypeId ? JSON.parse(defaultConfig?.postTypeId) : undefined,\n tag_ids: defaultConfig?.tagIds ? JSON.parse(JSON.parse(defaultConfig?.tagIds)) : undefined,\n max_items: defaultConfig.maxItems,\n sort_by: defaultConfig.sortBy,\n date_from: defaultConfig.dateFrom,\n date_to: defaultConfig.dateTo\n };\n\n loadBtn.innerHTML = LOAD_SPINNER;\n getArticles(defaultConfig.apiUrl, params)\n .then((data) => {\n const {\n data: { items, is_last_page, pages, hideFirstDots, hideLastDots, first, last },\n } = data;\n const articleCardsSection =\n document.getElementsByClassName(\"articles__inner u-mb-sm\")[0];\n const articleCards = articleCardsSection.getElementsByClassName(\"row\")[0];\n\n items.forEach((articleData) => {\n const newArticleCard = createNewArticleCard(articleData, defaultConfig);\n\n articleCards.appendChild(newArticleCard);\n });\n\n updatePagination({\n pages,\n hideFirstDots,\n hideLastDots,\n first,\n last,\n });\n\n if (is_last_page) {\n document.getElementsByClassName(\"load-more-btn\")[0].remove();\n }\n\n incrementPage();\n })\n .finally(() => {\n loadBtn.innerHTML = loadBtnText;\n });\n}\n\n(function () {\n document.querySelector(\".load-more-btn\")?.addEventListener(\"click\", () => {\n loadMoreArticles();\n });\n})();\n","import axios from \"axios\";\n\nexport function getArticles(apiUrl, params) {\n return axios\n .get(apiUrl, { params, headers: { \"X-Requested-With\": \"XMLHttpRequest\" } })\n .then((response) => response.data)\n .catch((error) => console.error(error));\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","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\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 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\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\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');\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","'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\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\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 * 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\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 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\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 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","module.exports = {\n \"version\": \"0.24.0\"\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\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 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\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 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 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\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","module.exports = require('./lib/axios');","'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');\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 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","'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');\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"],"sourceRoot":""}