1 line
78 KiB
Plaintext

{"version":3,"file":"page.js","sources":["../../src/utils/index.ts","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/bind.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/buildURL.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/InterceptorManager.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/normalizeHeaderName.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/enhanceError.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/createError.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/settle.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/cookies.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAbsoluteURL.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/combineURLs.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/buildFullPath.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/parseHeaders.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isURLSameOrigin.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/adapters/xhr.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/transformData.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/isCancel.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/dispatchRequest.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/mergeConfig.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/env/data.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/validator.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/Axios.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/CancelToken.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/spread.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAxiosError.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/axios.js","../../../../node_modules/.pnpm/axios@0.25.0/node_modules/axios/index.js","../../src/utils/request.ts","../../src/page/App.vue","../../src/page/main.ts"],"sourcesContent":["/*\n * Tencent is pleased to support the open source community by making TMagicEditor available.\n *\n * Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { MApp } from '@tmagic/schema';\n\nexport const getLocalConfig = (): MApp[] => {\n const configStr = localStorage.getItem('magicDSL');\n if (!configStr) return [];\n try {\n // eslint-disable-next-line no-eval\n return [eval(`(${configStr})`)];\n } catch (err) {\n return [];\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 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 Array.isArray(val);\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 toString.call(val) === '[object 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) && (isArrayBuffer(val.buffer));\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 toString.call(val) === '[object 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\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, 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');\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 status: this.response && this.response.status ? this.response.status : null\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 \"<scheme>://\" 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\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');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar 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 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\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\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","module.exports = {\n \"version\": \"0.25.0\"\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 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(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n if (!config.url) {\n throw new Error('Provided config url is not valid');\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 if (!config.url) {\n throw new Error('Provided config url is not valid');\n }\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar 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\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');\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 utils.isObject(payload) && (payload.isAxiosError === true);\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","module.exports = require('./lib/axios');","/*\n * Tencent is pleased to support the open source community by making TMagicEditor available.\n *\n * Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { App } from 'vue';\nimport axios, { AxiosResponse } from 'axios';\n\nconst service = axios.create({\n withCredentials: true,\n timeout: 7000,\n});\n\nconst requestHandler = function (config: Record<any, any>) {\n return config;\n};\n\nconst responseHandler = function (response: AxiosResponse) {\n return response;\n};\n\nservice.interceptors.request.use(requestHandler);\nservice.interceptors.response.use(responseHandler);\n\nexport default {\n install(app: App) {\n app.provide('request', service);\n },\n};\n","<template>\n <magic-ui-page :config=\"pageConfig\"></magic-ui-page>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, reactive } from 'vue';\n\nimport Core from '@tmagic/core';\n\nexport default defineComponent({\n name: 'App',\n\n setup() {\n const app = inject<Core | undefined>('app');\n const pageConfig = reactive(app?.page?.data || {});\n\n return {\n pageConfig,\n };\n },\n});\n</script>\n\n<style lang=\"scss\">\nhtml,\nbody,\n#app {\n width: 100%;\n height: 100%;\n}\n\n#app {\n position: relative;\n overflow: auto;\n}\n\n#app::-webkit-scrollbar {\n width: 0 !important;\n display: none;\n}\n</style>\n","/*\n * Tencent is pleased to support the open source community by making TMagicEditor available.\n *\n * Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createApp } from 'vue';\n\nimport Core from '@tmagic/core';\nimport { getUrlParam } from '@tmagic/utils';\n\nimport entry from '../comp-entry';\nimport { getLocalConfig } from '../utils';\nimport request from '../utils/request';\n\nimport AppComponent from './App.vue';\n\nconst magicApp = createApp(AppComponent);\n\nmagicApp.use(request);\n\nObject.values(entry.components).forEach((component: any) => {\n magicApp.component(component.name, component);\n});\n\nObject.values(entry.plugins).forEach((plugin: any) => {\n magicApp.use(plugin);\n});\n\nconst app = new Core({\n config: ((getUrlParam('localPreview') ? getLocalConfig() : window.magicDSL) || [])[0] || {},\n curPage: getUrlParam('page'),\n});\n\nmagicApp.config.globalProperties.app = app;\nmagicApp.provide('app', app);\n\nmagicApp.mount('#app');\n"],"names":["bind","require$$0","utils","buildURL","InterceptorManager","normalizeHeaderName","enhanceError","createError","settle","cookies","isAbsoluteURL","combineURLs","require$$1","buildFullPath","parseHeaders","isURLSameOrigin","Cancel","require$$2","require$$3","require$$4","require$$5","require$$6","require$$7","defaults","require$$8","require$$9","transformData","isCancel","dispatchRequest","mergeConfig","validators","validator","Axios","axios","require$$10","axiosModule","axios_1","Core"],"mappings":"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"}