diff --git a/node_modules/.vite/deps/_metadata.json b/node_modules/.vite/deps/_metadata.json new file mode 100644 index 0000000..894dcc2 --- /dev/null +++ b/node_modules/.vite/deps/_metadata.json @@ -0,0 +1,23 @@ +{ + "hash": "92b13695", + "browserHash": "a62746a0", + "optimized": { + "axios": { + "src": "../../axios/index.js", + "file": "axios.js", + "fileHash": "d3fbe7a1", + "needsInterop": false + }, + "uniapp-axios-adapter": { + "src": "../../uniapp-axios-adapter/lib/index.esm.js", + "file": "uniapp-axios-adapter.js", + "fileHash": "2aa8be57", + "needsInterop": false + } + }, + "chunks": { + "chunk-GGWXBEBB": { + "file": "chunk-GGWXBEBB.js" + } + } +} \ No newline at end of file diff --git a/node_modules/.vite/deps/axios.js b/node_modules/.vite/deps/axios.js new file mode 100644 index 0000000..779816f --- /dev/null +++ b/node_modules/.vite/deps/axios.js @@ -0,0 +1,39 @@ +import { + Axios, + AxiosError, + AxiosHeaders, + Cancel, + CancelToken, + CanceledError, + HttpStatusCode, + VERSION, + all, + axios_default, + formToJSON, + getAdapter, + isAxiosError, + isCancel, + mergeConfig, + spread, + toFormData +} from "./chunk-GGWXBEBB.js"; +export { + Axios, + AxiosError, + AxiosHeaders, + Cancel, + CancelToken, + CanceledError, + HttpStatusCode, + VERSION, + all, + axios_default as default, + formToJSON, + getAdapter, + isAxiosError, + isCancel, + mergeConfig, + spread, + toFormData +}; +//# sourceMappingURL=axios.js.map diff --git a/node_modules/.vite/deps/axios.js.map b/node_modules/.vite/deps/axios.js.map new file mode 100644 index 0000000..9865211 --- /dev/null +++ b/node_modules/.vite/deps/axios.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": [], + "sourcesContent": [], + "mappings": "", + "names": [] +} diff --git a/node_modules/.vite/deps/chunk-GGWXBEBB.js b/node_modules/.vite/deps/chunk-GGWXBEBB.js new file mode 100644 index 0000000..dd6ee17 --- /dev/null +++ b/node_modules/.vite/deps/chunk-GGWXBEBB.js @@ -0,0 +1,2534 @@ +var __defProp = Object.defineProperty; +var __export = (target, all3) => { + for (var name in all3) + __defProp(target, name, { get: all3[name], enumerable: true }); +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/bind.js +function bind(fn, thisArg) { + return function wrap() { + return fn.apply(thisArg, arguments); + }; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/utils.js +var { toString } = Object.prototype; +var { getPrototypeOf } = Object; +var kindOf = ((cache) => (thing) => { + const str = toString.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); +})(/* @__PURE__ */ Object.create(null)); +var kindOfTest = (type) => { + type = type.toLowerCase(); + return (thing) => kindOf(thing) === type; +}; +var typeOfTest = (type) => (thing) => typeof thing === type; +var { isArray } = Array; +var isUndefined = typeOfTest("undefined"); +function isBuffer(val) { + return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); +} +var isArrayBuffer = kindOfTest("ArrayBuffer"); +function isArrayBufferView(val) { + let result; + if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { + result = ArrayBuffer.isView(val); + } else { + result = val && val.buffer && isArrayBuffer(val.buffer); + } + return result; +} +var isString = typeOfTest("string"); +var isFunction = typeOfTest("function"); +var isNumber = typeOfTest("number"); +var isObject = (thing) => thing !== null && typeof thing === "object"; +var isBoolean = (thing) => thing === true || thing === false; +var isPlainObject = (val) => { + if (kindOf(val) !== "object") { + return false; + } + const prototype3 = getPrototypeOf(val); + return (prototype3 === null || prototype3 === Object.prototype || Object.getPrototypeOf(prototype3) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); +}; +var isDate = kindOfTest("Date"); +var isFile = kindOfTest("File"); +var isBlob = kindOfTest("Blob"); +var isFileList = kindOfTest("FileList"); +var isStream = (val) => isObject(val) && isFunction(val.pipe); +var isFormData = (thing) => { + let kind; + return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance + kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); +}; +var isURLSearchParams = kindOfTest("URLSearchParams"); +var [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); +var trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); +function forEach(obj, fn, { allOwnKeys = false } = {}) { + if (obj === null || typeof obj === "undefined") { + return; + } + let i; + let l; + if (typeof obj !== "object") { + obj = [obj]; + } + if (isArray(obj)) { + for (i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + fn.call(null, obj[key], key, obj); + } + } +} +function findKey(obj, key) { + key = key.toLowerCase(); + const keys = Object.keys(obj); + let i = keys.length; + let _key; + while (i-- > 0) { + _key = keys[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; +} +var _global = (() => { + if (typeof globalThis !== "undefined") + return globalThis; + return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; +})(); +var isContextDefined = (context) => !isUndefined(context) && context !== _global; +function merge() { + const { caseless } = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject(result[targetKey]) && isPlainObject(val)) { + result[targetKey] = merge(result[targetKey], val); + } else if (isPlainObject(val)) { + result[targetKey] = merge({}, val); + } else if (isArray(val)) { + result[targetKey] = val.slice(); + } else { + result[targetKey] = val; + } + }; + for (let i = 0, l = arguments.length; i < l; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; +} +var extend = (a, b, thisArg, { allOwnKeys } = {}) => { + forEach(b, (val, key) => { + if (thisArg && isFunction(val)) { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }, { allOwnKeys }); + return a; +}; +var stripBOM = (content) => { + if (content.charCodeAt(0) === 65279) { + content = content.slice(1); + } + return content; +}; +var inherits = (constructor, superConstructor, props, descriptors2) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors2); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, "super", { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); +}; +var toFlatObject = (sourceObj, destObj, filter2, propFilter) => { + let props; + let i; + let prop; + const merged = {}; + destObj = destObj || {}; + if (sourceObj == null) + return destObj; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; + } + } + sourceObj = filter2 !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); + return destObj; +}; +var endsWith = (str, searchString, position) => { + str = String(str); + if (position === void 0 || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; +}; +var toArray = (thing) => { + if (!thing) + return null; + if (isArray(thing)) + return thing; + let i = thing.length; + if (!isNumber(i)) + return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; +}; +var isTypedArray = ((TypedArray) => { + return (thing) => { + return TypedArray && thing instanceof TypedArray; + }; +})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); +var forEachEntry = (obj, fn) => { + const generator = obj && obj[Symbol.iterator]; + const iterator = generator.call(obj); + let result; + while ((result = iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj, pair[0], pair[1]); + } +}; +var matchAll = (regExp, str) => { + let matches; + const arr = []; + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } + return arr; +}; +var isHTMLForm = kindOfTest("HTMLFormElement"); +var toCamelCase = (str) => { + return str.toLowerCase().replace( + /[-_\s]([a-z\d])(\w*)/g, + function replacer(m, p1, p2) { + return p1.toUpperCase() + p2; + } + ); +}; +var hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); +var isRegExp = kindOfTest("RegExp"); +var reduceDescriptors = (obj, reducer) => { + const descriptors2 = Object.getOwnPropertyDescriptors(obj); + const reducedDescriptors = {}; + forEach(descriptors2, (descriptor, name) => { + let ret; + if ((ret = reducer(descriptor, name, obj)) !== false) { + reducedDescriptors[name] = ret || descriptor; + } + }); + Object.defineProperties(obj, reducedDescriptors); +}; +var freezeMethods = (obj) => { + reduceDescriptors(obj, (descriptor, name) => { + if (isFunction(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { + return false; + } + const value = obj[name]; + if (!isFunction(value)) + return; + descriptor.enumerable = false; + if ("writable" in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error("Can not rewrite read-only method '" + name + "'"); + }; + } + }); +}; +var toObjectSet = (arrayOrString, delimiter) => { + const obj = {}; + const define = (arr) => { + arr.forEach((value) => { + obj[value] = true; + }); + }; + isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); + return obj; +}; +var noop = () => { +}; +var toFiniteNumber = (value, defaultValue) => { + return value != null && Number.isFinite(value = +value) ? value : defaultValue; +}; +var ALPHA = "abcdefghijklmnopqrstuvwxyz"; +var DIGIT = "0123456789"; +var ALPHABET = { + DIGIT, + ALPHA, + ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT +}; +var generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { + let str = ""; + const { length } = alphabet; + while (size--) { + str += alphabet[Math.random() * length | 0]; + } + return str; +}; +function isSpecCompliantForm(thing) { + return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); +} +var toJSONObject = (obj) => { + const stack = new Array(10); + const visit = (source, i) => { + if (isObject(source)) { + if (stack.indexOf(source) >= 0) { + return; + } + if (!("toJSON" in source)) { + stack[i] = source; + const target = isArray(source) ? [] : {}; + forEach(source, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); + stack[i] = void 0; + return target; + } + } + return source; + }; + return visit(obj, 0); +}; +var isAsyncFn = kindOfTest("AsyncFunction"); +var isThenable = (thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); +var _setImmediate = ((setImmediateSupported, postMessageSupported) => { + if (setImmediateSupported) { + return setImmediate; + } + return postMessageSupported ? ((token, callbacks) => { + _global.addEventListener("message", ({ source, data }) => { + if (source === _global && data === token) { + callbacks.length && callbacks.shift()(); + } + }, false); + return (cb) => { + callbacks.push(cb); + _global.postMessage(token, "*"); + }; + })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); +})( + typeof setImmediate === "function", + isFunction(_global.postMessage) +); +var asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate; +var utils_default = { + isArray, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString, + isNumber, + isBoolean, + isObject, + isPlainObject, + isReadableStream, + isRequest, + isResponse, + isHeaders, + isUndefined, + isDate, + isFile, + isBlob, + isRegExp, + isFunction, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend, + trim, + stripBOM, + inherits, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty, + hasOwnProp: hasOwnProperty, + // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + ALPHABET, + generateString, + isSpecCompliantForm, + toJSONObject, + isAsyncFn, + isThenable, + setImmediate: _setImmediate, + asap +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/AxiosError.js +function AxiosError(message, code, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack; + } + this.message = message; + this.name = "AxiosError"; + code && (this.code = code); + config && (this.config = config); + request && (this.request = request); + if (response) { + this.response = response; + this.status = response.status ? response.status : null; + } +} +utils_default.inherits(AxiosError, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: utils_default.toJSONObject(this.config), + code: this.code, + status: this.status + }; + } +}); +var prototype = AxiosError.prototype; +var descriptors = {}; +[ + "ERR_BAD_OPTION_VALUE", + "ERR_BAD_OPTION", + "ECONNABORTED", + "ETIMEDOUT", + "ERR_NETWORK", + "ERR_FR_TOO_MANY_REDIRECTS", + "ERR_DEPRECATED", + "ERR_BAD_RESPONSE", + "ERR_BAD_REQUEST", + "ERR_CANCELED", + "ERR_NOT_SUPPORT", + "ERR_INVALID_URL" + // eslint-disable-next-line func-names +].forEach((code) => { + descriptors[code] = { value: code }; +}); +Object.defineProperties(AxiosError, descriptors); +Object.defineProperty(prototype, "isAxiosError", { value: true }); +AxiosError.from = (error, code, config, request, response, customProps) => { + const axiosError = Object.create(prototype); + utils_default.toFlatObject(error, axiosError, function filter2(obj) { + return obj !== Error.prototype; + }, (prop) => { + return prop !== "isAxiosError"; + }); + AxiosError.call(axiosError, error.message, code, config, request, response); + axiosError.cause = error; + axiosError.name = error.name; + customProps && Object.assign(axiosError, customProps); + return axiosError; +}; +var AxiosError_default = AxiosError; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/null.js +var null_default = null; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/toFormData.js +function isVisitable(thing) { + return utils_default.isPlainObject(thing) || utils_default.isArray(thing); +} +function removeBrackets(key) { + return utils_default.endsWith(key, "[]") ? key.slice(0, -2) : key; +} +function renderKey(path, key, dots) { + if (!path) + return key; + return path.concat(key).map(function each(token, i) { + token = removeBrackets(token); + return !dots && i ? "[" + token + "]" : token; + }).join(dots ? "." : ""); +} +function isFlatArray(arr) { + return utils_default.isArray(arr) && !arr.some(isVisitable); +} +var predicates = utils_default.toFlatObject(utils_default, {}, null, function filter(prop) { + return /^is[A-Z]/.test(prop); +}); +function toFormData(obj, formData, options) { + if (!utils_default.isObject(obj)) { + throw new TypeError("target must be an object"); + } + formData = formData || new (null_default || FormData)(); + options = utils_default.toFlatObject(options, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source) { + return !utils_default.isUndefined(source[option]); + }); + const metaTokens = options.metaTokens; + const visitor = options.visitor || defaultVisitor; + const dots = options.dots; + const indexes = options.indexes; + const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; + const useBlob = _Blob && utils_default.isSpecCompliantForm(formData); + if (!utils_default.isFunction(visitor)) { + throw new TypeError("visitor must be a function"); + } + function convertValue(value) { + if (value === null) + return ""; + if (utils_default.isDate(value)) { + return value.toISOString(); + } + if (!useBlob && utils_default.isBlob(value)) { + throw new AxiosError_default("Blob is not supported. Use a Buffer instead."); + } + if (utils_default.isArrayBuffer(value) || utils_default.isTypedArray(value)) { + return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); + } + return value; + } + function defaultVisitor(value, key, path) { + let arr = value; + if (value && !path && typeof value === "object") { + if (utils_default.endsWith(key, "{}")) { + key = metaTokens ? key : key.slice(0, -2); + value = JSON.stringify(value); + } else if (utils_default.isArray(value) && isFlatArray(value) || (utils_default.isFileList(value) || utils_default.endsWith(key, "[]")) && (arr = utils_default.toArray(value))) { + key = removeBrackets(key); + arr.forEach(function each(el, index) { + !(utils_default.isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", + convertValue(el) + ); + }); + return false; + } + } + if (isVisitable(value)) { + return true; + } + formData.append(renderKey(path, key, dots), convertValue(value)); + return false; + } + const stack = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path) { + if (utils_default.isUndefined(value)) + return; + if (stack.indexOf(value) !== -1) { + throw Error("Circular reference detected in " + path.join(".")); + } + stack.push(value); + utils_default.forEach(value, function each(el, key) { + const result = !(utils_default.isUndefined(el) || el === null) && visitor.call( + formData, + el, + utils_default.isString(key) ? key.trim() : key, + path, + exposedHelpers + ); + if (result === true) { + build(el, path ? path.concat(key) : [key]); + } + }); + stack.pop(); + } + if (!utils_default.isObject(obj)) { + throw new TypeError("data must be an object"); + } + build(obj); + return formData; +} +var toFormData_default = toFormData; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +function encode(str) { + const charMap = { + "!": "%21", + "'": "%27", + "(": "%28", + ")": "%29", + "~": "%7E", + "%20": "+", + "%00": "\0" + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { + return charMap[match]; + }); +} +function AxiosURLSearchParams(params, options) { + this._pairs = []; + params && toFormData_default(params, this, options); +} +var prototype2 = AxiosURLSearchParams.prototype; +prototype2.append = function append(name, value) { + this._pairs.push([name, value]); +}; +prototype2.toString = function toString2(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode); + } : encode; + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + "=" + _encode(pair[1]); + }, "").join("&"); +}; +var AxiosURLSearchParams_default = AxiosURLSearchParams; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/buildURL.js +function encode2(val) { + return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); +} +function buildURL(url, params, options) { + if (!params) { + return url; + } + const _encode = options && options.encode || encode2; + if (utils_default.isFunction(options)) { + options = { + serialize: options + }; + } + const serializeFn = options && options.serialize; + let serializedParams; + if (serializeFn) { + serializedParams = serializeFn(params, options); + } else { + serializedParams = utils_default.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams_default(params, options).toString(_encode); + } + if (serializedParams) { + const hashmarkIndex = url.indexOf("#"); + if (hashmarkIndex !== -1) { + url = url.slice(0, hashmarkIndex); + } + url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/InterceptorManager.js +var InterceptorManager = class { + constructor() { + this.handlers = []; + } + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options ? options.synchronous : false, + runWhen: options ? options.runWhen : null + }); + return this.handlers.length - 1; + } + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } + } + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; + } + } + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + utils_default.forEach(this.handlers, function forEachHandler(h) { + if (h !== null) { + fn(h); + } + }); + } +}; +var InterceptorManager_default = InterceptorManager; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/defaults/transitional.js +var transitional_default = { + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +var URLSearchParams_default = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams_default; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/browser/classes/FormData.js +var FormData_default = typeof FormData !== "undefined" ? FormData : null; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/browser/classes/Blob.js +var Blob_default = typeof Blob !== "undefined" ? Blob : null; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/browser/index.js +var browser_default = { + isBrowser: true, + classes: { + URLSearchParams: URLSearchParams_default, + FormData: FormData_default, + Blob: Blob_default + }, + protocols: ["http", "https", "file", "blob", "url", "data"] +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/common/utils.js +var utils_exports = {}; +__export(utils_exports, { + hasBrowserEnv: () => hasBrowserEnv, + hasStandardBrowserEnv: () => hasStandardBrowserEnv, + hasStandardBrowserWebWorkerEnv: () => hasStandardBrowserWebWorkerEnv, + navigator: () => _navigator, + origin: () => origin +}); +var hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; +var _navigator = typeof navigator === "object" && navigator || void 0; +var hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); +var hasStandardBrowserWebWorkerEnv = (() => { + return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef + self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; +})(); +var origin = hasBrowserEnv && window.location.href || "http://localhost"; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/platform/index.js +var platform_default = { + ...utils_exports, + ...browser_default +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/toURLEncodedForm.js +function toURLEncodedForm(data, options) { + return toFormData_default(data, new platform_default.classes.URLSearchParams(), Object.assign({ + visitor: function(value, key, path, helpers) { + if (platform_default.isNode && utils_default.isBuffer(value)) { + this.append(key, value.toString("base64")); + return false; + } + return helpers.defaultVisitor.apply(this, arguments); + } + }, options)); +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/formDataToJSON.js +function parsePropPath(name) { + return utils_default.matchAll(/\w+|\[(\w*)]/g, name).map((match) => { + return match[0] === "[]" ? "" : match[1] || match[0]; + }); +} +function arrayToObject(arr) { + const obj = {}; + const keys = Object.keys(arr); + let i; + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + obj[key] = arr[key]; + } + return obj; +} +function formDataToJSON(formData) { + function buildPath(path, value, target, index) { + let name = path[index++]; + if (name === "__proto__") + return true; + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path.length; + name = !name && utils_default.isArray(target) ? target.length : name; + if (isLast) { + if (utils_default.hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; + } + return !isNumericKey; + } + if (!target[name] || !utils_default.isObject(target[name])) { + target[name] = []; + } + const result = buildPath(path, value, target[name], index); + if (result && utils_default.isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + return !isNumericKey; + } + if (utils_default.isFormData(formData) && utils_default.isFunction(formData.entries)) { + const obj = {}; + utils_default.forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj, 0); + }); + return obj; + } + return null; +} +var formDataToJSON_default = formDataToJSON; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/defaults/index.js +function stringifySafely(rawValue, parser, encoder) { + if (utils_default.isString(rawValue)) { + try { + (parser || JSON.parse)(rawValue); + return utils_default.trim(rawValue); + } catch (e) { + if (e.name !== "SyntaxError") { + throw e; + } + } + } + return (encoder || JSON.stringify)(rawValue); +} +var defaults = { + transitional: transitional_default, + adapter: ["xhr", "http", "fetch"], + transformRequest: [function transformRequest(data, headers) { + const contentType = headers.getContentType() || ""; + const hasJSONContentType = contentType.indexOf("application/json") > -1; + const isObjectPayload = utils_default.isObject(data); + if (isObjectPayload && utils_default.isHTMLForm(data)) { + data = new FormData(data); + } + const isFormData2 = utils_default.isFormData(data); + if (isFormData2) { + return hasJSONContentType ? JSON.stringify(formDataToJSON_default(data)) : data; + } + if (utils_default.isArrayBuffer(data) || utils_default.isBuffer(data) || utils_default.isStream(data) || utils_default.isFile(data) || utils_default.isBlob(data) || utils_default.isReadableStream(data)) { + return data; + } + if (utils_default.isArrayBufferView(data)) { + return data.buffer; + } + if (utils_default.isURLSearchParams(data)) { + headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); + return data.toString(); + } + let isFileList2; + if (isObjectPayload) { + if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { + return toURLEncodedForm(data, this.formSerializer).toString(); + } + if ((isFileList2 = utils_default.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { + const _FormData = this.env && this.env.FormData; + return toFormData_default( + isFileList2 ? { "files[]": data } : data, + _FormData && new _FormData(), + this.formSerializer + ); + } + } + if (isObjectPayload || hasJSONContentType) { + headers.setContentType("application/json", false); + return stringifySafely(data); + } + return data; + }], + transformResponse: [function transformResponse(data) { + const transitional2 = this.transitional || defaults.transitional; + const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; + const JSONRequested = this.responseType === "json"; + if (utils_default.isResponse(data) || utils_default.isReadableStream(data)) { + return data; + } + if (data && utils_default.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) { + const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; + try { + return JSON.parse(data); + } catch (e) { + if (strictJSONParsing) { + if (e.name === "SyntaxError") { + throw AxiosError_default.from(e, AxiosError_default.ERR_BAD_RESPONSE, this, null, this.response); + } + throw e; + } + } + } + return data; + }], + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, + xsrfCookieName: "XSRF-TOKEN", + xsrfHeaderName: "X-XSRF-TOKEN", + maxContentLength: -1, + maxBodyLength: -1, + env: { + FormData: platform_default.classes.FormData, + Blob: platform_default.classes.Blob + }, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, + headers: { + common: { + "Accept": "application/json, text/plain, */*", + "Content-Type": void 0 + } + } +}; +utils_default.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { + defaults.headers[method] = {}; +}); +var defaults_default = defaults; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/parseHeaders.js +var ignoreDuplicateOf = utils_default.toObjectSet([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" +]); +var parseHeaders_default = (rawHeaders) => { + const parsed = {}; + let key; + let val; + let i; + rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { + i = line.indexOf(":"); + key = line.substring(0, i).trim().toLowerCase(); + val = line.substring(i + 1).trim(); + if (!key || parsed[key] && ignoreDuplicateOf[key]) { + return; + } + if (key === "set-cookie") { + if (parsed[key]) { + parsed[key].push(val); + } else { + parsed[key] = [val]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; + } + }); + return parsed; +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/AxiosHeaders.js +var $internals = Symbol("internals"); +function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); +} +function normalizeValue(value) { + if (value === false || value == null) { + return value; + } + return utils_default.isArray(value) ? value.map(normalizeValue) : String(value); +} +function parseTokens(str) { + const tokens = /* @__PURE__ */ Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match; + while (match = tokensRE.exec(str)) { + tokens[match[1]] = match[2]; + } + return tokens; +} +var isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); +function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { + if (utils_default.isFunction(filter2)) { + return filter2.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!utils_default.isString(value)) + return; + if (utils_default.isString(filter2)) { + return value.indexOf(filter2) !== -1; + } + if (utils_default.isRegExp(filter2)) { + return filter2.test(value); + } +} +function formatHeader(header) { + return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { + return char.toUpperCase() + str; + }); +} +function buildAccessors(obj, header) { + const accessorName = utils_default.toCamelCase(" " + header); + ["get", "set", "has"].forEach((methodName) => { + Object.defineProperty(obj, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); +} +var AxiosHeaders = class { + constructor(headers) { + headers && this.set(headers); + } + set(header, valueOrRewrite, rewrite) { + const self2 = this; + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + if (!lHeader) { + throw new Error("header name must be a non-empty string"); + } + const key = utils_default.findKey(self2, lHeader); + if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { + self2[key || _header] = normalizeValue(_value); + } + } + const setHeaders = (headers, _rewrite) => utils_default.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + if (utils_default.isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite); + } else if (utils_default.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders(parseHeaders_default(header), valueOrRewrite); + } else if (utils_default.isHeaders(header)) { + for (const [key, value] of header.entries()) { + setHeader(value, key, rewrite); + } + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); + } + return this; + } + get(header, parser) { + header = normalizeHeader(header); + if (header) { + const key = utils_default.findKey(this, header); + if (key) { + const value = this[key]; + if (!parser) { + return value; + } + if (parser === true) { + return parseTokens(value); + } + if (utils_default.isFunction(parser)) { + return parser.call(this, value, key); + } + if (utils_default.isRegExp(parser)) { + return parser.exec(value); + } + throw new TypeError("parser must be boolean|regexp|function"); + } + } + } + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = utils_default.findKey(this, header); + return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self2 = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = utils_default.findKey(self2, _header); + if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { + delete self2[key]; + deleted = true; + } + } + } + if (utils_default.isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); + } + return deleted; + } + clear(matcher) { + const keys = Object.keys(this); + let i = keys.length; + let deleted = false; + while (i--) { + const key = keys[i]; + if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format) { + const self2 = this; + const headers = {}; + utils_default.forEach(this, (value, header) => { + const key = utils_default.findKey(headers, header); + if (key) { + self2[key] = normalizeValue(value); + delete self2[header]; + return; + } + const normalized = format ? formatHeader(header) : String(header).trim(); + if (normalized !== header) { + delete self2[header]; + } + self2[normalized] = normalizeValue(value); + headers[normalized] = true; + }); + return this; + } + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj = /* @__PURE__ */ Object.create(null); + utils_default.forEach(this, (value, header) => { + value != null && value !== false && (obj[header] = asStrings && utils_default.isArray(value) ? value.join(", ") : value); + }); + return obj; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); + } + get [Symbol.toStringTag]() { + return "AxiosHeaders"; + } + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } + static concat(first, ...targets) { + const computed = new this(first); + targets.forEach((target) => computed.set(target)); + return computed; + } + static accessor(header) { + const internals = this[$internals] = this[$internals] = { + accessors: {} + }; + const accessors = internals.accessors; + const prototype3 = this.prototype; + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + if (!accessors[lHeader]) { + buildAccessors(prototype3, _header); + accessors[lHeader] = true; + } + } + utils_default.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + return this; + } +}; +AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); +utils_default.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { + let mapped = key[0].toUpperCase() + key.slice(1); + return { + get: () => value, + set(headerValue) { + this[mapped] = headerValue; + } + }; +}); +utils_default.freezeMethods(AxiosHeaders); +var AxiosHeaders_default = AxiosHeaders; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/transformData.js +function transformData(fns, response) { + const config = this || defaults_default; + const context = response || config; + const headers = AxiosHeaders_default.from(context.headers); + let data = context.data; + utils_default.forEach(fns, function transform(fn) { + data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); + }); + headers.normalize(); + return data; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/cancel/isCancel.js +function isCancel(value) { + return !!(value && value.__CANCEL__); +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/cancel/CanceledError.js +function CanceledError(message, config, request) { + AxiosError_default.call(this, message == null ? "canceled" : message, AxiosError_default.ERR_CANCELED, config, request); + this.name = "CanceledError"; +} +utils_default.inherits(CanceledError, AxiosError_default, { + __CANCEL__: true +}); +var CanceledError_default = CanceledError; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/settle.js +function settle(resolve, reject, response) { + const validateStatus2 = response.config.validateStatus; + if (!response.status || !validateStatus2 || validateStatus2(response.status)) { + resolve(response); + } else { + reject(new AxiosError_default( + "Request failed with status code " + response.status, + [AxiosError_default.ERR_BAD_REQUEST, AxiosError_default.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); + } +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/parseProtocol.js +function parseProtocol(url) { + const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); + return match && match[1] || ""; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/speedometer.js +function speedometer(samplesCount, min) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + min = min !== void 0 ? min : 1e3; + return function push(chunkLength) { + const now = Date.now(); + const startedAt = timestamps[tail]; + if (!firstSampleTS) { + firstSampleTS = now; + } + bytes[head] = chunkLength; + timestamps[head] = now; + let i = tail; + let bytesCount = 0; + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + head = (head + 1) % samplesCount; + if (head === tail) { + tail = (tail + 1) % samplesCount; + } + if (now - firstSampleTS < min) { + return; + } + const passed = startedAt && now - startedAt; + return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; + }; +} +var speedometer_default = speedometer; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/throttle.js +function throttle(fn, freq) { + let timestamp = 0; + let threshold = 1e3 / freq; + let lastArgs; + let timer; + const invoke = (args, now = Date.now()) => { + timestamp = now; + lastArgs = null; + if (timer) { + clearTimeout(timer); + timer = null; + } + fn.apply(null, args); + }; + const throttled = (...args) => { + const now = Date.now(); + const passed = now - timestamp; + if (passed >= threshold) { + invoke(args, now); + } else { + lastArgs = args; + if (!timer) { + timer = setTimeout(() => { + timer = null; + invoke(lastArgs); + }, threshold - passed); + } + } + }; + const flush = () => lastArgs && invoke(lastArgs); + return [throttled, flush]; +} +var throttle_default = throttle; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/progressEventReducer.js +var progressEventReducer = (listener, isDownloadStream, freq = 3) => { + let bytesNotified = 0; + const _speedometer = speedometer_default(50, 250); + return throttle_default((e) => { + const loaded = e.loaded; + const total = e.lengthComputable ? e.total : void 0; + const progressBytes = loaded - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded <= total; + bytesNotified = loaded; + const data = { + loaded, + total, + progress: total ? loaded / total : void 0, + bytes: progressBytes, + rate: rate ? rate : void 0, + estimated: rate && total && inRange ? (total - loaded) / rate : void 0, + event: e, + lengthComputable: total != null, + [isDownloadStream ? "download" : "upload"]: true + }; + listener(data); + }, freq); +}; +var progressEventDecorator = (total, throttled) => { + const lengthComputable = total != null; + return [(loaded) => throttled[0]({ + lengthComputable, + total, + loaded + }), throttled[1]]; +}; +var asyncDecorator = (fn) => (...args) => utils_default.asap(() => fn(...args)); + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/isURLSameOrigin.js +var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? ((origin2, isMSIE) => (url) => { + url = new URL(url, platform_default.origin); + return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); +})( + new URL(platform_default.origin), + platform_default.navigator && /(msie|trident)/i.test(platform_default.navigator.userAgent) +) : () => true; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/cookies.js +var cookies_default = platform_default.hasStandardBrowserEnv ? ( + // Standard browser envs support document.cookie + { + write(name, value, expires, path, domain, secure) { + const cookie = [name + "=" + encodeURIComponent(value)]; + utils_default.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); + utils_default.isString(path) && cookie.push("path=" + path); + utils_default.isString(domain) && cookie.push("domain=" + domain); + secure === true && cookie.push("secure"); + document.cookie = cookie.join("; "); + }, + read(name) { + const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); + return match ? decodeURIComponent(match[3]) : null; + }, + remove(name) { + this.write(name, "", Date.now() - 864e5); + } + } +) : ( + // Non-standard browser env (web workers, react-native) lack needed support. + { + write() { + }, + read() { + return null; + }, + remove() { + } + } +); + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/isAbsoluteURL.js +function isAbsoluteURL(url) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/combineURLs.js +function combineURLs(baseURL, relativeURL) { + return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/buildFullPath.js +function buildFullPath(baseURL, requestedURL) { + if (baseURL && !isAbsoluteURL(requestedURL)) { + return combineURLs(baseURL, requestedURL); + } + return requestedURL; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/mergeConfig.js +var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? { ...thing } : thing; +function mergeConfig(config1, config2) { + config2 = config2 || {}; + const config = {}; + function getMergedValue(target, source, prop, caseless) { + if (utils_default.isPlainObject(target) && utils_default.isPlainObject(source)) { + return utils_default.merge.call({ caseless }, target, source); + } else if (utils_default.isPlainObject(source)) { + return utils_default.merge({}, source); + } else if (utils_default.isArray(source)) { + return source.slice(); + } + return source; + } + function mergeDeepProperties(a, b, prop, caseless) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(a, b, prop, caseless); + } else if (!utils_default.isUndefined(a)) { + return getMergedValue(void 0, a, prop, caseless); + } + } + function valueFromConfig2(a, b) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(void 0, b); + } + } + function defaultToConfig2(a, b) { + if (!utils_default.isUndefined(b)) { + return getMergedValue(void 0, b); + } else if (!utils_default.isUndefined(a)) { + return getMergedValue(void 0, a); + } + } + function mergeDirectKeys(a, b, prop) { + if (prop in config2) { + return getMergedValue(a, b); + } else if (prop in config1) { + return getMergedValue(void 0, a); + } + } + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + withXSRFToken: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true) + }; + utils_default.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { + const merge2 = mergeMap[prop] || mergeDeepProperties; + const configValue = merge2(config1[prop], config2[prop], prop); + utils_default.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); + }); + return config; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/resolveConfig.js +var resolveConfig_default = (config) => { + const newConfig = mergeConfig({}, config); + let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; + newConfig.headers = headers = AxiosHeaders_default.from(headers); + newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); + if (auth) { + headers.set( + "Authorization", + "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) + ); + } + let contentType; + if (utils_default.isFormData(data)) { + if (platform_default.hasStandardBrowserEnv || platform_default.hasStandardBrowserWebWorkerEnv) { + headers.setContentType(void 0); + } else if ((contentType = headers.getContentType()) !== false) { + const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : []; + headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); + } + } + if (platform_default.hasStandardBrowserEnv) { + withXSRFToken && utils_default.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); + if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin_default(newConfig.url)) { + const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies_default.read(xsrfCookieName); + if (xsrfValue) { + headers.set(xsrfHeaderName, xsrfValue); + } + } + } + return newConfig; +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/adapters/xhr.js +var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; +var xhr_default = isXHRAdapterSupported && function(config) { + return new Promise(function dispatchXhrRequest(resolve, reject) { + const _config = resolveConfig_default(config); + let requestData = _config.data; + const requestHeaders = AxiosHeaders_default.from(_config.headers).normalize(); + let { responseType, onUploadProgress, onDownloadProgress } = _config; + let onCanceled; + let uploadThrottled, downloadThrottled; + let flushUpload, flushDownload; + function done() { + flushUpload && flushUpload(); + flushDownload && flushDownload(); + _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); + _config.signal && _config.signal.removeEventListener("abort", onCanceled); + } + let request = new XMLHttpRequest(); + request.open(_config.method.toUpperCase(), _config.url, true); + request.timeout = _config.timeout; + function onloadend() { + if (!request) { + return; + } + const responseHeaders = AxiosHeaders_default.from( + "getAllResponseHeaders" in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + settle(function _resolve(value) { + resolve(value); + done(); + }, function _reject(err) { + reject(err); + done(); + }, response); + request = null; + } + if ("onloadend" in request) { + request.onloadend = onloadend; + } else { + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { + return; + } + setTimeout(onloadend); + }; + } + request.onabort = function handleAbort() { + if (!request) { + return; + } + reject(new AxiosError_default("Request aborted", AxiosError_default.ECONNABORTED, config, request)); + request = null; + }; + request.onerror = function handleError() { + reject(new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request)); + request = null; + }; + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional2 = _config.transitional || transitional_default; + if (_config.timeoutErrorMessage) { + timeoutErrorMessage = _config.timeoutErrorMessage; + } + reject(new AxiosError_default( + timeoutErrorMessage, + transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, + config, + request + )); + request = null; + }; + requestData === void 0 && requestHeaders.setContentType(null); + if ("setRequestHeader" in request) { + utils_default.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { + request.setRequestHeader(key, val); + }); + } + if (!utils_default.isUndefined(_config.withCredentials)) { + request.withCredentials = !!_config.withCredentials; + } + if (responseType && responseType !== "json") { + request.responseType = _config.responseType; + } + if (onDownloadProgress) { + [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); + request.addEventListener("progress", downloadThrottled); + } + if (onUploadProgress && request.upload) { + [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); + request.upload.addEventListener("progress", uploadThrottled); + request.upload.addEventListener("loadend", flushUpload); + } + if (_config.cancelToken || _config.signal) { + onCanceled = (cancel) => { + if (!request) { + return; + } + reject(!cancel || cancel.type ? new CanceledError_default(null, config, request) : cancel); + request.abort(); + request = null; + }; + _config.cancelToken && _config.cancelToken.subscribe(onCanceled); + if (_config.signal) { + _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); + } + } + const protocol = parseProtocol(_config.url); + if (protocol && platform_default.protocols.indexOf(protocol) === -1) { + reject(new AxiosError_default("Unsupported protocol " + protocol + ":", AxiosError_default.ERR_BAD_REQUEST, config)); + return; + } + request.send(requestData || null); + }); +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/composeSignals.js +var composeSignals = (signals, timeout) => { + const { length } = signals = signals ? signals.filter(Boolean) : []; + if (timeout || length) { + let controller = new AbortController(); + let aborted; + const onabort = function(reason) { + if (!aborted) { + aborted = true; + unsubscribe(); + const err = reason instanceof Error ? reason : this.reason; + controller.abort(err instanceof AxiosError_default ? err : new CanceledError_default(err instanceof Error ? err.message : err)); + } + }; + let timer = timeout && setTimeout(() => { + timer = null; + onabort(new AxiosError_default(`timeout ${timeout} of ms exceeded`, AxiosError_default.ETIMEDOUT)); + }, timeout); + const unsubscribe = () => { + if (signals) { + timer && clearTimeout(timer); + timer = null; + signals.forEach((signal2) => { + signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); + }); + signals = null; + } + }; + signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); + const { signal } = controller; + signal.unsubscribe = () => utils_default.asap(unsubscribe); + return signal; + } +}; +var composeSignals_default = composeSignals; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/trackStream.js +var streamChunk = function* (chunk, chunkSize) { + let len = chunk.byteLength; + if (!chunkSize || len < chunkSize) { + yield chunk; + return; + } + let pos = 0; + let end; + while (pos < len) { + end = pos + chunkSize; + yield chunk.slice(pos, end); + pos = end; + } +}; +var readBytes = async function* (iterable, chunkSize) { + for await (const chunk of readStream(iterable)) { + yield* streamChunk(chunk, chunkSize); + } +}; +var readStream = async function* (stream) { + if (stream[Symbol.asyncIterator]) { + yield* stream; + return; + } + const reader = stream.getReader(); + try { + for (; ; ) { + const { done, value } = await reader.read(); + if (done) { + break; + } + yield value; + } + } finally { + await reader.cancel(); + } +}; +var trackStream = (stream, chunkSize, onProgress, onFinish) => { + const iterator = readBytes(stream, chunkSize); + let bytes = 0; + let done; + let _onFinish = (e) => { + if (!done) { + done = true; + onFinish && onFinish(e); + } + }; + return new ReadableStream({ + async pull(controller) { + try { + const { done: done2, value } = await iterator.next(); + if (done2) { + _onFinish(); + controller.close(); + return; + } + let len = value.byteLength; + if (onProgress) { + let loadedBytes = bytes += len; + onProgress(loadedBytes); + } + controller.enqueue(new Uint8Array(value)); + } catch (err) { + _onFinish(err); + throw err; + } + }, + cancel(reason) { + _onFinish(reason); + return iterator.return(); + } + }, { + highWaterMark: 2 + }); +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/adapters/fetch.js +var isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; +var isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; +var encodeText = isFetchSupported && (typeof TextEncoder === "function" ? ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); +var test = (fn, ...args) => { + try { + return !!fn(...args); + } catch (e) { + return false; + } +}; +var supportsRequestStream = isReadableStreamSupported && test(() => { + let duplexAccessed = false; + const hasContentType = new Request(platform_default.origin, { + body: new ReadableStream(), + method: "POST", + get duplex() { + duplexAccessed = true; + return "half"; + } + }).headers.has("Content-Type"); + return duplexAccessed && !hasContentType; +}); +var DEFAULT_CHUNK_SIZE = 64 * 1024; +var supportsResponseStream = isReadableStreamSupported && test(() => utils_default.isReadableStream(new Response("").body)); +var resolvers = { + stream: supportsResponseStream && ((res) => res.body) +}; +isFetchSupported && ((res) => { + ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { + !resolvers[type] && (resolvers[type] = utils_default.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => { + throw new AxiosError_default(`Response type '${type}' is not supported`, AxiosError_default.ERR_NOT_SUPPORT, config); + }); + }); +})(new Response()); +var getBodyLength = async (body) => { + if (body == null) { + return 0; + } + if (utils_default.isBlob(body)) { + return body.size; + } + if (utils_default.isSpecCompliantForm(body)) { + const _request = new Request(platform_default.origin, { + method: "POST", + body + }); + return (await _request.arrayBuffer()).byteLength; + } + if (utils_default.isArrayBufferView(body) || utils_default.isArrayBuffer(body)) { + return body.byteLength; + } + if (utils_default.isURLSearchParams(body)) { + body = body + ""; + } + if (utils_default.isString(body)) { + return (await encodeText(body)).byteLength; + } +}; +var resolveBodyLength = async (headers, body) => { + const length = utils_default.toFiniteNumber(headers.getContentLength()); + return length == null ? getBodyLength(body) : length; +}; +var fetch_default = isFetchSupported && (async (config) => { + let { + url, + method, + data, + signal, + cancelToken, + timeout, + onDownloadProgress, + onUploadProgress, + responseType, + headers, + withCredentials = "same-origin", + fetchOptions + } = resolveConfig_default(config); + responseType = responseType ? (responseType + "").toLowerCase() : "text"; + let composedSignal = composeSignals_default([signal, cancelToken && cancelToken.toAbortSignal()], timeout); + let request; + const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { + composedSignal.unsubscribe(); + }); + let requestContentLength; + try { + if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) { + let _request = new Request(url, { + method: "POST", + body: data, + duplex: "half" + }); + let contentTypeHeader; + if (utils_default.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) { + headers.setContentType(contentTypeHeader); + } + if (_request.body) { + const [onProgress, flush] = progressEventDecorator( + requestContentLength, + progressEventReducer(asyncDecorator(onUploadProgress)) + ); + data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); + } + } + if (!utils_default.isString(withCredentials)) { + withCredentials = withCredentials ? "include" : "omit"; + } + const isCredentialsSupported = "credentials" in Request.prototype; + request = new Request(url, { + ...fetchOptions, + signal: composedSignal, + method: method.toUpperCase(), + headers: headers.normalize().toJSON(), + body: data, + duplex: "half", + credentials: isCredentialsSupported ? withCredentials : void 0 + }); + let response = await fetch(request); + const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); + if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { + const options = {}; + ["status", "statusText", "headers"].forEach((prop) => { + options[prop] = response[prop]; + }); + const responseContentLength = utils_default.toFiniteNumber(response.headers.get("content-length")); + const [onProgress, flush] = onDownloadProgress && progressEventDecorator( + responseContentLength, + progressEventReducer(asyncDecorator(onDownloadProgress), true) + ) || []; + response = new Response( + trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { + flush && flush(); + unsubscribe && unsubscribe(); + }), + options + ); + } + responseType = responseType || "text"; + let responseData = await resolvers[utils_default.findKey(resolvers, responseType) || "text"](response, config); + !isStreamResponse && unsubscribe && unsubscribe(); + return await new Promise((resolve, reject) => { + settle(resolve, reject, { + data: responseData, + headers: AxiosHeaders_default.from(response.headers), + status: response.status, + statusText: response.statusText, + config, + request + }); + }); + } catch (err) { + unsubscribe && unsubscribe(); + if (err && err.name === "TypeError" && /fetch/i.test(err.message)) { + throw Object.assign( + new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request), + { + cause: err.cause || err + } + ); + } + throw AxiosError_default.from(err, err && err.code, config, request); + } +}); + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/adapters/adapters.js +var knownAdapters = { + http: null_default, + xhr: xhr_default, + fetch: fetch_default +}; +utils_default.forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, "name", { value }); + } catch (e) { + } + Object.defineProperty(fn, "adapterName", { value }); + } +}); +var renderReason = (reason) => `- ${reason}`; +var isResolvedHandle = (adapter) => utils_default.isFunction(adapter) || adapter === null || adapter === false; +var adapters_default = { + getAdapter: (adapters) => { + adapters = utils_default.isArray(adapters) ? adapters : [adapters]; + const { length } = adapters; + let nameOrAdapter; + let adapter; + const rejectedReasons = {}; + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters[i]; + let id; + adapter = nameOrAdapter; + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; + if (adapter === void 0) { + throw new AxiosError_default(`Unknown adapter '${id}'`); + } + } + if (adapter) { + break; + } + rejectedReasons[id || "#" + i] = adapter; + } + if (!adapter) { + const reasons = Object.entries(rejectedReasons).map( + ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") + ); + let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; + throw new AxiosError_default( + `There is no suitable adapter to dispatch the request ` + s, + "ERR_NOT_SUPPORT" + ); + } + return adapter; + }, + adapters: knownAdapters +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/dispatchRequest.js +function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new CanceledError_default(null, config); + } +} +function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = AxiosHeaders_default.from(config.headers); + config.data = transformData.call( + config, + config.transformRequest + ); + if (["post", "put", "patch"].indexOf(config.method) !== -1) { + config.headers.setContentType("application/x-www-form-urlencoded", false); + } + const adapter = adapters_default.getAdapter(config.adapter || defaults_default.adapter); + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + response.data = transformData.call( + config, + config.transformResponse, + response + ); + response.headers = AxiosHeaders_default.from(response.headers); + return response; + }, function onAdapterRejection(reason) { + if (!isCancel(reason)) { + throwIfCancellationRequested(config); + if (reason && reason.response) { + reason.response.data = transformData.call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = AxiosHeaders_default.from(reason.response.headers); + } + } + return Promise.reject(reason); + }); +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/env/data.js +var VERSION = "1.7.9"; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/validator.js +var validators = {}; +["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { + validators[type] = function validator(thing) { + return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; + }; +}); +var deprecatedWarnings = {}; +validators.transitional = function transitional(validator, version, message) { + function formatMessage(opt, desc) { + return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); + } + return (value, opt, opts) => { + if (validator === false) { + throw new AxiosError_default( + formatMessage(opt, " has been removed" + (version ? " in " + version : "")), + AxiosError_default.ERR_DEPRECATED + ); + } + if (version && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + console.warn( + formatMessage( + opt, + " has been deprecated since v" + version + " and will be removed in the near future" + ) + ); + } + return validator ? validator(value, opt, opts) : true; + }; +}; +validators.spelling = function spelling(correctSpelling) { + return (value, opt) => { + console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); + return true; + }; +}; +function assertOptions(options, schema, allowUnknown) { + if (typeof options !== "object") { + throw new AxiosError_default("options must be an object", AxiosError_default.ERR_BAD_OPTION_VALUE); + } + const keys = Object.keys(options); + let i = keys.length; + while (i-- > 0) { + const opt = keys[i]; + const validator = schema[opt]; + if (validator) { + const value = options[opt]; + const result = value === void 0 || validator(value, opt, options); + if (result !== true) { + throw new AxiosError_default("option " + opt + " must be " + result, AxiosError_default.ERR_BAD_OPTION_VALUE); + } + continue; + } + if (allowUnknown !== true) { + throw new AxiosError_default("Unknown option " + opt, AxiosError_default.ERR_BAD_OPTION); + } + } +} +var validator_default = { + assertOptions, + validators +}; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/core/Axios.js +var validators2 = validator_default.validators; +var Axios = class { + constructor(instanceConfig) { + this.defaults = instanceConfig; + this.interceptors = { + request: new InterceptorManager_default(), + response: new InterceptorManager_default() + }; + } + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + async request(configOrUrl, config) { + try { + return await this._request(configOrUrl, config); + } catch (err) { + if (err instanceof Error) { + let dummy = {}; + Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error(); + const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; + try { + if (!err.stack) { + err.stack = stack; + } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ""))) { + err.stack += "\n" + stack; + } + } catch (e) { + } + } + throw err; + } + } + _request(configOrUrl, config) { + if (typeof configOrUrl === "string") { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } + config = mergeConfig(this.defaults, config); + const { transitional: transitional2, paramsSerializer, headers } = config; + if (transitional2 !== void 0) { + validator_default.assertOptions(transitional2, { + silentJSONParsing: validators2.transitional(validators2.boolean), + forcedJSONParsing: validators2.transitional(validators2.boolean), + clarifyTimeoutError: validators2.transitional(validators2.boolean) + }, false); + } + if (paramsSerializer != null) { + if (utils_default.isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + }; + } else { + validator_default.assertOptions(paramsSerializer, { + encode: validators2.function, + serialize: validators2.function + }, true); + } + } + validator_default.assertOptions(config, { + baseUrl: validators2.spelling("baseURL"), + withXsrfToken: validators2.spelling("withXSRFToken") + }, true); + config.method = (config.method || this.defaults.method || "get").toLowerCase(); + let contextHeaders = headers && utils_default.merge( + headers.common, + headers[config.method] + ); + headers && utils_default.forEach( + ["delete", "get", "head", "post", "put", "patch", "common"], + (method) => { + delete headers[method]; + } + ); + config.headers = AxiosHeaders_default.concat(contextHeaders, headers); + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { + return; + } + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + let promise; + let i = 0; + let len; + if (!synchronousRequestInterceptors) { + const chain = [dispatchRequest.bind(this), void 0]; + chain.unshift.apply(chain, requestInterceptorChain); + chain.push.apply(chain, responseInterceptorChain); + len = chain.length; + promise = Promise.resolve(config); + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + return promise; + } + len = requestInterceptorChain.length; + let newConfig = config; + i = 0; + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = dispatchRequest.call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } + getUri(config) { + config = mergeConfig(this.defaults, config); + const fullPath = buildFullPath(config.baseURL, config.url); + return buildURL(fullPath, config.params, config.paramsSerializer); + } +}; +utils_default.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { + Axios.prototype[method] = function(url, config) { + return this.request(mergeConfig(config || {}, { + method, + url, + data: (config || {}).data + })); + }; +}); +utils_default.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { + function generateHTTPMethod(isForm) { + return function httpMethod(url, data, config) { + return this.request(mergeConfig(config || {}, { + method, + headers: isForm ? { + "Content-Type": "multipart/form-data" + } : {}, + url, + data + })); + }; + } + Axios.prototype[method] = generateHTTPMethod(); + Axios.prototype[method + "Form"] = generateHTTPMethod(true); +}); +var Axios_default = Axios; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/cancel/CancelToken.js +var CancelToken = class { + constructor(executor) { + if (typeof executor !== "function") { + throw new TypeError("executor must be a function."); + } + let resolvePromise; + this.promise = new Promise(function promiseExecutor(resolve) { + resolvePromise = resolve; + }); + const token = this; + this.promise.then((cancel) => { + if (!token._listeners) + return; + let i = token._listeners.length; + while (i-- > 0) { + token._listeners[i](cancel); + } + token._listeners = null; + }); + this.promise.then = (onfulfilled) => { + let _resolve; + const promise = new Promise((resolve) => { + token.subscribe(resolve); + _resolve = resolve; + }).then(onfulfilled); + promise.cancel = function reject() { + token.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message, config, request) { + if (token.reason) { + return; + } + token.reason = new CanceledError_default(message, config, request); + resolvePromise(token.reason); + }); + } + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } + /** + * Subscribe to the cancel signal + */ + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + toAbortSignal() { + const controller = new AbortController(); + const abort = (err) => { + controller.abort(err); + }; + this.subscribe(abort); + controller.signal.unsubscribe = () => this.unsubscribe(abort); + return controller.signal; + } + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token = new CancelToken(function executor(c) { + cancel = c; + }); + return { + token, + cancel + }; + } +}; +var CancelToken_default = CancelToken; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/spread.js +function spread(callback) { + return function wrap(arr) { + return callback.apply(null, arr); + }; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/isAxiosError.js +function isAxiosError(payload) { + return utils_default.isObject(payload) && payload.isAxiosError === true; +} + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/helpers/HttpStatusCode.js +var HttpStatusCode = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511 +}; +Object.entries(HttpStatusCode).forEach(([key, value]) => { + HttpStatusCode[value] = key; +}); +var HttpStatusCode_default = HttpStatusCode; + +// ../../../../../Desktop/uni-fans/node_modules/axios/lib/axios.js +function createInstance(defaultConfig) { + const context = new Axios_default(defaultConfig); + const instance = bind(Axios_default.prototype.request, context); + utils_default.extend(instance, Axios_default.prototype, context, { allOwnKeys: true }); + utils_default.extend(instance, context, null, { allOwnKeys: true }); + instance.create = function create(instanceConfig) { + return createInstance(mergeConfig(defaultConfig, instanceConfig)); + }; + return instance; +} +var axios = createInstance(defaults_default); +axios.Axios = Axios_default; +axios.CanceledError = CanceledError_default; +axios.CancelToken = CancelToken_default; +axios.isCancel = isCancel; +axios.VERSION = VERSION; +axios.toFormData = toFormData_default; +axios.AxiosError = AxiosError_default; +axios.Cancel = axios.CanceledError; +axios.all = function all(promises) { + return Promise.all(promises); +}; +axios.spread = spread; +axios.isAxiosError = isAxiosError; +axios.mergeConfig = mergeConfig; +axios.AxiosHeaders = AxiosHeaders_default; +axios.formToJSON = (thing) => formDataToJSON_default(utils_default.isHTMLForm(thing) ? new FormData(thing) : thing); +axios.getAdapter = adapters_default.getAdapter; +axios.HttpStatusCode = HttpStatusCode_default; +axios.default = axios; +var axios_default = axios; + +// ../../../../../Desktop/uni-fans/node_modules/axios/index.js +var { + Axios: Axios2, + AxiosError: AxiosError2, + CanceledError: CanceledError2, + isCancel: isCancel2, + CancelToken: CancelToken2, + VERSION: VERSION2, + all: all2, + Cancel, + isAxiosError: isAxiosError2, + spread: spread2, + toFormData: toFormData2, + AxiosHeaders: AxiosHeaders2, + HttpStatusCode: HttpStatusCode2, + formToJSON, + getAdapter, + mergeConfig: mergeConfig2 +} = axios_default; + +export { + axios_default, + Axios2 as Axios, + AxiosError2 as AxiosError, + CanceledError2 as CanceledError, + isCancel2 as isCancel, + CancelToken2 as CancelToken, + VERSION2 as VERSION, + all2 as all, + Cancel, + isAxiosError2 as isAxiosError, + spread2 as spread, + toFormData2 as toFormData, + AxiosHeaders2 as AxiosHeaders, + HttpStatusCode2 as HttpStatusCode, + formToJSON, + getAdapter, + mergeConfig2 as mergeConfig +}; +//# sourceMappingURL=chunk-GGWXBEBB.js.map diff --git a/node_modules/.vite/deps/chunk-GGWXBEBB.js.map b/node_modules/.vite/deps/chunk-GGWXBEBB.js.map new file mode 100644 index 0000000..85a5225 --- /dev/null +++ b/node_modules/.vite/deps/chunk-GGWXBEBB.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../axios/lib/helpers/bind.js", "../../axios/lib/utils.js", "../../axios/lib/core/AxiosError.js", "../../axios/lib/helpers/null.js", "../../axios/lib/helpers/toFormData.js", "../../axios/lib/helpers/AxiosURLSearchParams.js", "../../axios/lib/helpers/buildURL.js", "../../axios/lib/core/InterceptorManager.js", "../../axios/lib/defaults/transitional.js", "../../axios/lib/platform/browser/classes/URLSearchParams.js", "../../axios/lib/platform/browser/classes/FormData.js", "../../axios/lib/platform/browser/classes/Blob.js", "../../axios/lib/platform/browser/index.js", "../../axios/lib/platform/common/utils.js", "../../axios/lib/platform/index.js", "../../axios/lib/helpers/toURLEncodedForm.js", "../../axios/lib/helpers/formDataToJSON.js", "../../axios/lib/defaults/index.js", "../../axios/lib/helpers/parseHeaders.js", "../../axios/lib/core/AxiosHeaders.js", "../../axios/lib/core/transformData.js", "../../axios/lib/cancel/isCancel.js", "../../axios/lib/cancel/CanceledError.js", "../../axios/lib/core/settle.js", "../../axios/lib/helpers/parseProtocol.js", "../../axios/lib/helpers/speedometer.js", "../../axios/lib/helpers/throttle.js", "../../axios/lib/helpers/progressEventReducer.js", "../../axios/lib/helpers/isURLSameOrigin.js", "../../axios/lib/helpers/cookies.js", "../../axios/lib/helpers/isAbsoluteURL.js", "../../axios/lib/helpers/combineURLs.js", "../../axios/lib/core/buildFullPath.js", "../../axios/lib/core/mergeConfig.js", "../../axios/lib/helpers/resolveConfig.js", "../../axios/lib/adapters/xhr.js", "../../axios/lib/helpers/composeSignals.js", "../../axios/lib/helpers/trackStream.js", "../../axios/lib/adapters/fetch.js", "../../axios/lib/adapters/adapters.js", "../../axios/lib/core/dispatchRequest.js", "../../axios/lib/env/data.js", "../../axios/lib/helpers/validator.js", "../../axios/lib/core/Axios.js", "../../axios/lib/cancel/CancelToken.js", "../../axios/lib/helpers/spread.js", "../../axios/lib/helpers/isAxiosError.js", "../../axios/lib/helpers/HttpStatusCode.js", "../../axios/lib/axios.js", "../../axios/index.js"], + "sourcesContent": ["'use strict';\r\n\r\nexport default function bind(fn, thisArg) {\r\n return function wrap() {\r\n return fn.apply(thisArg, arguments);\r\n };\r\n}\r\n", "'use strict';\r\n\r\nimport bind from './helpers/bind.js';\r\n\r\n// utils is a library of generic helper functions non-specific to axios\r\n\r\nconst {toString} = Object.prototype;\r\nconst {getPrototypeOf} = Object;\r\n\r\nconst kindOf = (cache => thing => {\r\n const str = toString.call(thing);\r\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\r\n})(Object.create(null));\r\n\r\nconst kindOfTest = (type) => {\r\n type = type.toLowerCase();\r\n return (thing) => kindOf(thing) === type\r\n}\r\n\r\nconst typeOfTest = type => thing => typeof thing === type;\r\n\r\n/**\r\n * Determine if a value is an Array\r\n *\r\n * @param {Object} val The value to test\r\n *\r\n * @returns {boolean} True if value is an Array, otherwise false\r\n */\r\nconst {isArray} = Array;\r\n\r\n/**\r\n * Determine if a value is undefined\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if the value is undefined, otherwise false\r\n */\r\nconst isUndefined = typeOfTest('undefined');\r\n\r\n/**\r\n * Determine if a value is a Buffer\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a Buffer, otherwise false\r\n */\r\nfunction isBuffer(val) {\r\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\r\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\r\n}\r\n\r\n/**\r\n * Determine if a value is an ArrayBuffer\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\r\n */\r\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\r\n\r\n\r\n/**\r\n * Determine if a value is a view on an ArrayBuffer\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\r\n */\r\nfunction isArrayBufferView(val) {\r\n let result;\r\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\r\n result = ArrayBuffer.isView(val);\r\n } else {\r\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\r\n }\r\n return result;\r\n}\r\n\r\n/**\r\n * Determine if a value is a String\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a String, otherwise false\r\n */\r\nconst isString = typeOfTest('string');\r\n\r\n/**\r\n * Determine if a value is a Function\r\n *\r\n * @param {*} val The value to test\r\n * @returns {boolean} True if value is a Function, otherwise false\r\n */\r\nconst isFunction = typeOfTest('function');\r\n\r\n/**\r\n * Determine if a value is a Number\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a Number, otherwise false\r\n */\r\nconst isNumber = typeOfTest('number');\r\n\r\n/**\r\n * Determine if a value is an Object\r\n *\r\n * @param {*} thing The value to test\r\n *\r\n * @returns {boolean} True if value is an Object, otherwise false\r\n */\r\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\r\n\r\n/**\r\n * Determine if a value is a Boolean\r\n *\r\n * @param {*} thing The value to test\r\n * @returns {boolean} True if value is a Boolean, otherwise false\r\n */\r\nconst isBoolean = thing => thing === true || thing === false;\r\n\r\n/**\r\n * Determine if a value is a plain Object\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a plain Object, otherwise false\r\n */\r\nconst isPlainObject = (val) => {\r\n if (kindOf(val) !== 'object') {\r\n return false;\r\n }\r\n\r\n const prototype = getPrototypeOf(val);\r\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\r\n}\r\n\r\n/**\r\n * Determine if a value is a Date\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a Date, otherwise false\r\n */\r\nconst isDate = kindOfTest('Date');\r\n\r\n/**\r\n * Determine if a value is a File\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a File, otherwise false\r\n */\r\nconst isFile = kindOfTest('File');\r\n\r\n/**\r\n * Determine if a value is a Blob\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a Blob, otherwise false\r\n */\r\nconst isBlob = kindOfTest('Blob');\r\n\r\n/**\r\n * Determine if a value is a FileList\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a File, otherwise false\r\n */\r\nconst isFileList = kindOfTest('FileList');\r\n\r\n/**\r\n * Determine if a value is a Stream\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a Stream, otherwise false\r\n */\r\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\r\n\r\n/**\r\n * Determine if a value is a FormData\r\n *\r\n * @param {*} thing The value to test\r\n *\r\n * @returns {boolean} True if value is an FormData, otherwise false\r\n */\r\nconst isFormData = (thing) => {\r\n let kind;\r\n return thing && (\r\n (typeof FormData === 'function' && thing instanceof FormData) || (\r\n isFunction(thing.append) && (\r\n (kind = kindOf(thing)) === 'formdata' ||\r\n // detect form-data instance\r\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\r\n )\r\n )\r\n )\r\n}\r\n\r\n/**\r\n * Determine if a value is a URLSearchParams object\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\r\n */\r\nconst isURLSearchParams = kindOfTest('URLSearchParams');\r\n\r\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\r\n\r\n/**\r\n * Trim excess whitespace off the beginning and end of a string\r\n *\r\n * @param {String} str The String to trim\r\n *\r\n * @returns {String} The String freed of excess whitespace\r\n */\r\nconst trim = (str) => str.trim ?\r\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\r\n\r\n/**\r\n * Iterate over an Array or an Object invoking a function for each item.\r\n *\r\n * If `obj` is an Array callback will be called passing\r\n * the value, index, and complete array for each item.\r\n *\r\n * If 'obj' is an Object callback will be called passing\r\n * the value, key, and complete object for each property.\r\n *\r\n * @param {Object|Array} obj The object to iterate\r\n * @param {Function} fn The callback to invoke for each item\r\n *\r\n * @param {Boolean} [allOwnKeys = false]\r\n * @returns {any}\r\n */\r\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\r\n // Don't bother if no value provided\r\n if (obj === null || typeof obj === 'undefined') {\r\n return;\r\n }\r\n\r\n let i;\r\n let l;\r\n\r\n // Force an array if not already something iterable\r\n if (typeof obj !== 'object') {\r\n /*eslint no-param-reassign:0*/\r\n obj = [obj];\r\n }\r\n\r\n if (isArray(obj)) {\r\n // Iterate over array values\r\n for (i = 0, l = obj.length; i < l; i++) {\r\n fn.call(null, obj[i], i, obj);\r\n }\r\n } else {\r\n // Iterate over object keys\r\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\r\n const len = keys.length;\r\n let key;\r\n\r\n for (i = 0; i < len; i++) {\r\n key = keys[i];\r\n fn.call(null, obj[key], key, obj);\r\n }\r\n }\r\n}\r\n\r\nfunction findKey(obj, key) {\r\n key = key.toLowerCase();\r\n const keys = Object.keys(obj);\r\n let i = keys.length;\r\n let _key;\r\n while (i-- > 0) {\r\n _key = keys[i];\r\n if (key === _key.toLowerCase()) {\r\n return _key;\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nconst _global = (() => {\r\n /*eslint no-undef:0*/\r\n if (typeof globalThis !== \"undefined\") return globalThis;\r\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\r\n})();\r\n\r\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\r\n\r\n/**\r\n * Accepts varargs expecting each argument to be an object, then\r\n * immutably merges the properties of each object and returns result.\r\n *\r\n * When multiple objects contain the same key the later object in\r\n * the arguments list will take precedence.\r\n *\r\n * Example:\r\n *\r\n * ```js\r\n * var result = merge({foo: 123}, {foo: 456});\r\n * console.log(result.foo); // outputs 456\r\n * ```\r\n *\r\n * @param {Object} obj1 Object to merge\r\n *\r\n * @returns {Object} Result of all merge properties\r\n */\r\nfunction merge(/* obj1, obj2, obj3, ... */) {\r\n const {caseless} = isContextDefined(this) && this || {};\r\n const result = {};\r\n const assignValue = (val, key) => {\r\n const targetKey = caseless && findKey(result, key) || key;\r\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\r\n result[targetKey] = merge(result[targetKey], val);\r\n } else if (isPlainObject(val)) {\r\n result[targetKey] = merge({}, val);\r\n } else if (isArray(val)) {\r\n result[targetKey] = val.slice();\r\n } else {\r\n result[targetKey] = val;\r\n }\r\n }\r\n\r\n for (let i = 0, l = arguments.length; i < l; i++) {\r\n arguments[i] && forEach(arguments[i], assignValue);\r\n }\r\n return result;\r\n}\r\n\r\n/**\r\n * Extends object a by mutably adding to it the properties of object b.\r\n *\r\n * @param {Object} a The object to be extended\r\n * @param {Object} b The object to copy properties from\r\n * @param {Object} thisArg The object to bind function to\r\n *\r\n * @param {Boolean} [allOwnKeys]\r\n * @returns {Object} The resulting value of object a\r\n */\r\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\r\n forEach(b, (val, key) => {\r\n if (thisArg && isFunction(val)) {\r\n a[key] = bind(val, thisArg);\r\n } else {\r\n a[key] = val;\r\n }\r\n }, {allOwnKeys});\r\n return a;\r\n}\r\n\r\n/**\r\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\r\n *\r\n * @param {string} content with BOM\r\n *\r\n * @returns {string} content value without BOM\r\n */\r\nconst stripBOM = (content) => {\r\n if (content.charCodeAt(0) === 0xFEFF) {\r\n content = content.slice(1);\r\n }\r\n return content;\r\n}\r\n\r\n/**\r\n * Inherit the prototype methods from one constructor into another\r\n * @param {function} constructor\r\n * @param {function} superConstructor\r\n * @param {object} [props]\r\n * @param {object} [descriptors]\r\n *\r\n * @returns {void}\r\n */\r\nconst inherits = (constructor, superConstructor, props, descriptors) => {\r\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\r\n constructor.prototype.constructor = constructor;\r\n Object.defineProperty(constructor, 'super', {\r\n value: superConstructor.prototype\r\n });\r\n props && Object.assign(constructor.prototype, props);\r\n}\r\n\r\n/**\r\n * Resolve object with deep prototype chain to a flat object\r\n * @param {Object} sourceObj source object\r\n * @param {Object} [destObj]\r\n * @param {Function|Boolean} [filter]\r\n * @param {Function} [propFilter]\r\n *\r\n * @returns {Object}\r\n */\r\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\r\n let props;\r\n let i;\r\n let prop;\r\n const merged = {};\r\n\r\n destObj = destObj || {};\r\n // eslint-disable-next-line no-eq-null,eqeqeq\r\n if (sourceObj == null) return destObj;\r\n\r\n do {\r\n props = Object.getOwnPropertyNames(sourceObj);\r\n i = props.length;\r\n while (i-- > 0) {\r\n prop = props[i];\r\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\r\n destObj[prop] = sourceObj[prop];\r\n merged[prop] = true;\r\n }\r\n }\r\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\r\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\r\n\r\n return destObj;\r\n}\r\n\r\n/**\r\n * Determines whether a string ends with the characters of a specified string\r\n *\r\n * @param {String} str\r\n * @param {String} searchString\r\n * @param {Number} [position= 0]\r\n *\r\n * @returns {boolean}\r\n */\r\nconst endsWith = (str, searchString, position) => {\r\n str = String(str);\r\n if (position === undefined || position > str.length) {\r\n position = str.length;\r\n }\r\n position -= searchString.length;\r\n const lastIndex = str.indexOf(searchString, position);\r\n return lastIndex !== -1 && lastIndex === position;\r\n}\r\n\r\n\r\n/**\r\n * Returns new array from array like object or null if failed\r\n *\r\n * @param {*} [thing]\r\n *\r\n * @returns {?Array}\r\n */\r\nconst toArray = (thing) => {\r\n if (!thing) return null;\r\n if (isArray(thing)) return thing;\r\n let i = thing.length;\r\n if (!isNumber(i)) return null;\r\n const arr = new Array(i);\r\n while (i-- > 0) {\r\n arr[i] = thing[i];\r\n }\r\n return arr;\r\n}\r\n\r\n/**\r\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\r\n * thing passed in is an instance of Uint8Array\r\n *\r\n * @param {TypedArray}\r\n *\r\n * @returns {Array}\r\n */\r\n// eslint-disable-next-line func-names\r\nconst isTypedArray = (TypedArray => {\r\n // eslint-disable-next-line func-names\r\n return thing => {\r\n return TypedArray && thing instanceof TypedArray;\r\n };\r\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\r\n\r\n/**\r\n * For each entry in the object, call the function with the key and value.\r\n *\r\n * @param {Object} obj - The object to iterate over.\r\n * @param {Function} fn - The function to call for each entry.\r\n *\r\n * @returns {void}\r\n */\r\nconst forEachEntry = (obj, fn) => {\r\n const generator = obj && obj[Symbol.iterator];\r\n\r\n const iterator = generator.call(obj);\r\n\r\n let result;\r\n\r\n while ((result = iterator.next()) && !result.done) {\r\n const pair = result.value;\r\n fn.call(obj, pair[0], pair[1]);\r\n }\r\n}\r\n\r\n/**\r\n * It takes a regular expression and a string, and returns an array of all the matches\r\n *\r\n * @param {string} regExp - The regular expression to match against.\r\n * @param {string} str - The string to search.\r\n *\r\n * @returns {Array}\r\n */\r\nconst matchAll = (regExp, str) => {\r\n let matches;\r\n const arr = [];\r\n\r\n while ((matches = regExp.exec(str)) !== null) {\r\n arr.push(matches);\r\n }\r\n\r\n return arr;\r\n}\r\n\r\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\r\nconst isHTMLForm = kindOfTest('HTMLFormElement');\r\n\r\nconst toCamelCase = str => {\r\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\r\n function replacer(m, p1, p2) {\r\n return p1.toUpperCase() + p2;\r\n }\r\n );\r\n};\r\n\r\n/* Creating a function that will check if an object has a property. */\r\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\r\n\r\n/**\r\n * Determine if a value is a RegExp object\r\n *\r\n * @param {*} val The value to test\r\n *\r\n * @returns {boolean} True if value is a RegExp object, otherwise false\r\n */\r\nconst isRegExp = kindOfTest('RegExp');\r\n\r\nconst reduceDescriptors = (obj, reducer) => {\r\n const descriptors = Object.getOwnPropertyDescriptors(obj);\r\n const reducedDescriptors = {};\r\n\r\n forEach(descriptors, (descriptor, name) => {\r\n let ret;\r\n if ((ret = reducer(descriptor, name, obj)) !== false) {\r\n reducedDescriptors[name] = ret || descriptor;\r\n }\r\n });\r\n\r\n Object.defineProperties(obj, reducedDescriptors);\r\n}\r\n\r\n/**\r\n * Makes all methods read-only\r\n * @param {Object} obj\r\n */\r\n\r\nconst freezeMethods = (obj) => {\r\n reduceDescriptors(obj, (descriptor, name) => {\r\n // skip restricted props in strict mode\r\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\r\n return false;\r\n }\r\n\r\n const value = obj[name];\r\n\r\n if (!isFunction(value)) return;\r\n\r\n descriptor.enumerable = false;\r\n\r\n if ('writable' in descriptor) {\r\n descriptor.writable = false;\r\n return;\r\n }\r\n\r\n if (!descriptor.set) {\r\n descriptor.set = () => {\r\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\r\n };\r\n }\r\n });\r\n}\r\n\r\nconst toObjectSet = (arrayOrString, delimiter) => {\r\n const obj = {};\r\n\r\n const define = (arr) => {\r\n arr.forEach(value => {\r\n obj[value] = true;\r\n });\r\n }\r\n\r\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\r\n\r\n return obj;\r\n}\r\n\r\nconst noop = () => {}\r\n\r\nconst toFiniteNumber = (value, defaultValue) => {\r\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\r\n}\r\n\r\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\r\n\r\nconst DIGIT = '0123456789';\r\n\r\nconst ALPHABET = {\r\n DIGIT,\r\n ALPHA,\r\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\r\n}\r\n\r\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\r\n let str = '';\r\n const {length} = alphabet;\r\n while (size--) {\r\n str += alphabet[Math.random() * length|0]\r\n }\r\n\r\n return str;\r\n}\r\n\r\n/**\r\n * If the thing is a FormData object, return true, otherwise return false.\r\n *\r\n * @param {unknown} thing - The thing to check.\r\n *\r\n * @returns {boolean}\r\n */\r\nfunction isSpecCompliantForm(thing) {\r\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\r\n}\r\n\r\nconst toJSONObject = (obj) => {\r\n const stack = new Array(10);\r\n\r\n const visit = (source, i) => {\r\n\r\n if (isObject(source)) {\r\n if (stack.indexOf(source) >= 0) {\r\n return;\r\n }\r\n\r\n if(!('toJSON' in source)) {\r\n stack[i] = source;\r\n const target = isArray(source) ? [] : {};\r\n\r\n forEach(source, (value, key) => {\r\n const reducedValue = visit(value, i + 1);\r\n !isUndefined(reducedValue) && (target[key] = reducedValue);\r\n });\r\n\r\n stack[i] = undefined;\r\n\r\n return target;\r\n }\r\n }\r\n\r\n return source;\r\n }\r\n\r\n return visit(obj, 0);\r\n}\r\n\r\nconst isAsyncFn = kindOfTest('AsyncFunction');\r\n\r\nconst isThenable = (thing) =>\r\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\r\n\r\n// original code\r\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\r\n\r\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\r\n if (setImmediateSupported) {\r\n return setImmediate;\r\n }\r\n\r\n return postMessageSupported ? ((token, callbacks) => {\r\n _global.addEventListener(\"message\", ({source, data}) => {\r\n if (source === _global && data === token) {\r\n callbacks.length && callbacks.shift()();\r\n }\r\n }, false);\r\n\r\n return (cb) => {\r\n callbacks.push(cb);\r\n _global.postMessage(token, \"*\");\r\n }\r\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\r\n})(\r\n typeof setImmediate === 'function',\r\n isFunction(_global.postMessage)\r\n);\r\n\r\nconst asap = typeof queueMicrotask !== 'undefined' ?\r\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\r\n\r\n// *********************\r\n\r\nexport default {\r\n isArray,\r\n isArrayBuffer,\r\n isBuffer,\r\n isFormData,\r\n isArrayBufferView,\r\n isString,\r\n isNumber,\r\n isBoolean,\r\n isObject,\r\n isPlainObject,\r\n isReadableStream,\r\n isRequest,\r\n isResponse,\r\n isHeaders,\r\n isUndefined,\r\n isDate,\r\n isFile,\r\n isBlob,\r\n isRegExp,\r\n isFunction,\r\n isStream,\r\n isURLSearchParams,\r\n isTypedArray,\r\n isFileList,\r\n forEach,\r\n merge,\r\n extend,\r\n trim,\r\n stripBOM,\r\n inherits,\r\n toFlatObject,\r\n kindOf,\r\n kindOfTest,\r\n endsWith,\r\n toArray,\r\n forEachEntry,\r\n matchAll,\r\n isHTMLForm,\r\n hasOwnProperty,\r\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\r\n reduceDescriptors,\r\n freezeMethods,\r\n toObjectSet,\r\n toCamelCase,\r\n noop,\r\n toFiniteNumber,\r\n findKey,\r\n global: _global,\r\n isContextDefined,\r\n ALPHABET,\r\n generateString,\r\n isSpecCompliantForm,\r\n toJSONObject,\r\n isAsyncFn,\r\n isThenable,\r\n setImmediate: _setImmediate,\r\n asap\r\n};\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\n\r\n/**\r\n * Create an Error with the specified message, config, error code, request and response.\r\n *\r\n * @param {string} message The error message.\r\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\r\n * @param {Object} [config] The config.\r\n * @param {Object} [request] The request.\r\n * @param {Object} [response] The response.\r\n *\r\n * @returns {Error} The created error.\r\n */\r\nfunction AxiosError(message, code, config, request, response) {\r\n Error.call(this);\r\n\r\n if (Error.captureStackTrace) {\r\n Error.captureStackTrace(this, this.constructor);\r\n } else {\r\n this.stack = (new Error()).stack;\r\n }\r\n\r\n this.message = message;\r\n this.name = 'AxiosError';\r\n code && (this.code = code);\r\n config && (this.config = config);\r\n request && (this.request = request);\r\n if (response) {\r\n this.response = response;\r\n this.status = response.status ? response.status : null;\r\n }\r\n}\r\n\r\nutils.inherits(AxiosError, Error, {\r\n toJSON: function toJSON() {\r\n return {\r\n // Standard\r\n message: this.message,\r\n name: this.name,\r\n // Microsoft\r\n description: this.description,\r\n number: this.number,\r\n // Mozilla\r\n fileName: this.fileName,\r\n lineNumber: this.lineNumber,\r\n columnNumber: this.columnNumber,\r\n stack: this.stack,\r\n // Axios\r\n config: utils.toJSONObject(this.config),\r\n code: this.code,\r\n status: this.status\r\n };\r\n }\r\n});\r\n\r\nconst prototype = AxiosError.prototype;\r\nconst descriptors = {};\r\n\r\n[\r\n 'ERR_BAD_OPTION_VALUE',\r\n 'ERR_BAD_OPTION',\r\n 'ECONNABORTED',\r\n 'ETIMEDOUT',\r\n 'ERR_NETWORK',\r\n 'ERR_FR_TOO_MANY_REDIRECTS',\r\n 'ERR_DEPRECATED',\r\n 'ERR_BAD_RESPONSE',\r\n 'ERR_BAD_REQUEST',\r\n 'ERR_CANCELED',\r\n 'ERR_NOT_SUPPORT',\r\n 'ERR_INVALID_URL'\r\n// eslint-disable-next-line func-names\r\n].forEach(code => {\r\n descriptors[code] = {value: code};\r\n});\r\n\r\nObject.defineProperties(AxiosError, descriptors);\r\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\r\n\r\n// eslint-disable-next-line func-names\r\nAxiosError.from = (error, code, config, request, response, customProps) => {\r\n const axiosError = Object.create(prototype);\r\n\r\n utils.toFlatObject(error, axiosError, function filter(obj) {\r\n return obj !== Error.prototype;\r\n }, prop => {\r\n return prop !== 'isAxiosError';\r\n });\r\n\r\n AxiosError.call(axiosError, error.message, code, config, request, response);\r\n\r\n axiosError.cause = error;\r\n\r\n axiosError.name = error.name;\r\n\r\n customProps && Object.assign(axiosError, customProps);\r\n\r\n return axiosError;\r\n};\r\n\r\nexport default AxiosError;\r\n", "// eslint-disable-next-line strict\r\nexport default null;\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport AxiosError from '../core/AxiosError.js';\r\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\r\nimport PlatformFormData from '../platform/node/classes/FormData.js';\r\n\r\n/**\r\n * Determines if the given thing is a array or js object.\r\n *\r\n * @param {string} thing - The object or array to be visited.\r\n *\r\n * @returns {boolean}\r\n */\r\nfunction isVisitable(thing) {\r\n return utils.isPlainObject(thing) || utils.isArray(thing);\r\n}\r\n\r\n/**\r\n * It removes the brackets from the end of a string\r\n *\r\n * @param {string} key - The key of the parameter.\r\n *\r\n * @returns {string} the key without the brackets.\r\n */\r\nfunction removeBrackets(key) {\r\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\r\n}\r\n\r\n/**\r\n * It takes a path, a key, and a boolean, and returns a string\r\n *\r\n * @param {string} path - The path to the current key.\r\n * @param {string} key - The key of the current object being iterated over.\r\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\r\n *\r\n * @returns {string} The path to the current key.\r\n */\r\nfunction renderKey(path, key, dots) {\r\n if (!path) return key;\r\n return path.concat(key).map(function each(token, i) {\r\n // eslint-disable-next-line no-param-reassign\r\n token = removeBrackets(token);\r\n return !dots && i ? '[' + token + ']' : token;\r\n }).join(dots ? '.' : '');\r\n}\r\n\r\n/**\r\n * If the array is an array and none of its elements are visitable, then it's a flat array.\r\n *\r\n * @param {Array} arr - The array to check\r\n *\r\n * @returns {boolean}\r\n */\r\nfunction isFlatArray(arr) {\r\n return utils.isArray(arr) && !arr.some(isVisitable);\r\n}\r\n\r\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\r\n return /^is[A-Z]/.test(prop);\r\n});\r\n\r\n/**\r\n * Convert a data object to FormData\r\n *\r\n * @param {Object} obj\r\n * @param {?Object} [formData]\r\n * @param {?Object} [options]\r\n * @param {Function} [options.visitor]\r\n * @param {Boolean} [options.metaTokens = true]\r\n * @param {Boolean} [options.dots = false]\r\n * @param {?Boolean} [options.indexes = false]\r\n *\r\n * @returns {Object}\r\n **/\r\n\r\n/**\r\n * It converts an object into a FormData object\r\n *\r\n * @param {Object} obj - The object to convert to form data.\r\n * @param {string} formData - The FormData object to append to.\r\n * @param {Object} options\r\n *\r\n * @returns\r\n */\r\nfunction toFormData(obj, formData, options) {\r\n if (!utils.isObject(obj)) {\r\n throw new TypeError('target must be an object');\r\n }\r\n\r\n // eslint-disable-next-line no-param-reassign\r\n formData = formData || new (PlatformFormData || FormData)();\r\n\r\n // eslint-disable-next-line no-param-reassign\r\n options = utils.toFlatObject(options, {\r\n metaTokens: true,\r\n dots: false,\r\n indexes: false\r\n }, false, function defined(option, source) {\r\n // eslint-disable-next-line no-eq-null,eqeqeq\r\n return !utils.isUndefined(source[option]);\r\n });\r\n\r\n const metaTokens = options.metaTokens;\r\n // eslint-disable-next-line no-use-before-define\r\n const visitor = options.visitor || defaultVisitor;\r\n const dots = options.dots;\r\n const indexes = options.indexes;\r\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\r\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\r\n\r\n if (!utils.isFunction(visitor)) {\r\n throw new TypeError('visitor must be a function');\r\n }\r\n\r\n function convertValue(value) {\r\n if (value === null) return '';\r\n\r\n if (utils.isDate(value)) {\r\n return value.toISOString();\r\n }\r\n\r\n if (!useBlob && utils.isBlob(value)) {\r\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\r\n }\r\n\r\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\r\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n /**\r\n * Default visitor.\r\n *\r\n * @param {*} value\r\n * @param {String|Number} key\r\n * @param {Array} path\r\n * @this {FormData}\r\n *\r\n * @returns {boolean} return true to visit the each prop of the value recursively\r\n */\r\n function defaultVisitor(value, key, path) {\r\n let arr = value;\r\n\r\n if (value && !path && typeof value === 'object') {\r\n if (utils.endsWith(key, '{}')) {\r\n // eslint-disable-next-line no-param-reassign\r\n key = metaTokens ? key : key.slice(0, -2);\r\n // eslint-disable-next-line no-param-reassign\r\n value = JSON.stringify(value);\r\n } else if (\r\n (utils.isArray(value) && isFlatArray(value)) ||\r\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\r\n )) {\r\n // eslint-disable-next-line no-param-reassign\r\n key = removeBrackets(key);\r\n\r\n arr.forEach(function each(el, index) {\r\n !(utils.isUndefined(el) || el === null) && formData.append(\r\n // eslint-disable-next-line no-nested-ternary\r\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\r\n convertValue(el)\r\n );\r\n });\r\n return false;\r\n }\r\n }\r\n\r\n if (isVisitable(value)) {\r\n return true;\r\n }\r\n\r\n formData.append(renderKey(path, key, dots), convertValue(value));\r\n\r\n return false;\r\n }\r\n\r\n const stack = [];\r\n\r\n const exposedHelpers = Object.assign(predicates, {\r\n defaultVisitor,\r\n convertValue,\r\n isVisitable\r\n });\r\n\r\n function build(value, path) {\r\n if (utils.isUndefined(value)) return;\r\n\r\n if (stack.indexOf(value) !== -1) {\r\n throw Error('Circular reference detected in ' + path.join('.'));\r\n }\r\n\r\n stack.push(value);\r\n\r\n utils.forEach(value, function each(el, key) {\r\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\r\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\r\n );\r\n\r\n if (result === true) {\r\n build(el, path ? path.concat(key) : [key]);\r\n }\r\n });\r\n\r\n stack.pop();\r\n }\r\n\r\n if (!utils.isObject(obj)) {\r\n throw new TypeError('data must be an object');\r\n }\r\n\r\n build(obj);\r\n\r\n return formData;\r\n}\r\n\r\nexport default toFormData;\r\n", "'use strict';\r\n\r\nimport toFormData from './toFormData.js';\r\n\r\n/**\r\n * It encodes a string by replacing all characters that are not in the unreserved set with\r\n * their percent-encoded equivalents\r\n *\r\n * @param {string} str - The string to encode.\r\n *\r\n * @returns {string} The encoded string.\r\n */\r\nfunction encode(str) {\r\n const charMap = {\r\n '!': '%21',\r\n \"'\": '%27',\r\n '(': '%28',\r\n ')': '%29',\r\n '~': '%7E',\r\n '%20': '+',\r\n '%00': '\\x00'\r\n };\r\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\r\n return charMap[match];\r\n });\r\n}\r\n\r\n/**\r\n * It takes a params object and converts it to a FormData object\r\n *\r\n * @param {Object} params - The parameters to be converted to a FormData object.\r\n * @param {Object} options - The options object passed to the Axios constructor.\r\n *\r\n * @returns {void}\r\n */\r\nfunction AxiosURLSearchParams(params, options) {\r\n this._pairs = [];\r\n\r\n params && toFormData(params, this, options);\r\n}\r\n\r\nconst prototype = AxiosURLSearchParams.prototype;\r\n\r\nprototype.append = function append(name, value) {\r\n this._pairs.push([name, value]);\r\n};\r\n\r\nprototype.toString = function toString(encoder) {\r\n const _encode = encoder ? function(value) {\r\n return encoder.call(this, value, encode);\r\n } : encode;\r\n\r\n return this._pairs.map(function each(pair) {\r\n return _encode(pair[0]) + '=' + _encode(pair[1]);\r\n }, '').join('&');\r\n};\r\n\r\nexport default AxiosURLSearchParams;\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\r\n\r\n/**\r\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\r\n * URI encoded counterparts\r\n *\r\n * @param {string} val The value to be encoded.\r\n *\r\n * @returns {string} The encoded value.\r\n */\r\nfunction encode(val) {\r\n return encodeURIComponent(val).\r\n replace(/%3A/gi, ':').\r\n replace(/%24/g, '$').\r\n replace(/%2C/gi, ',').\r\n replace(/%20/g, '+').\r\n replace(/%5B/gi, '[').\r\n replace(/%5D/gi, ']');\r\n}\r\n\r\n/**\r\n * Build a URL by appending params to the end\r\n *\r\n * @param {string} url The base of the url (e.g., http://www.google.com)\r\n * @param {object} [params] The params to be appended\r\n * @param {?(object|Function)} options\r\n *\r\n * @returns {string} The formatted url\r\n */\r\nexport default function buildURL(url, params, options) {\r\n /*eslint no-param-reassign:0*/\r\n if (!params) {\r\n return url;\r\n }\r\n \r\n const _encode = options && options.encode || encode;\r\n\r\n if (utils.isFunction(options)) {\r\n options = {\r\n serialize: options\r\n };\r\n } \r\n\r\n const serializeFn = options && options.serialize;\r\n\r\n let serializedParams;\r\n\r\n if (serializeFn) {\r\n serializedParams = serializeFn(params, options);\r\n } else {\r\n serializedParams = utils.isURLSearchParams(params) ?\r\n params.toString() :\r\n new AxiosURLSearchParams(params, options).toString(_encode);\r\n }\r\n\r\n if (serializedParams) {\r\n const hashmarkIndex = url.indexOf(\"#\");\r\n\r\n if (hashmarkIndex !== -1) {\r\n url = url.slice(0, hashmarkIndex);\r\n }\r\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\r\n }\r\n\r\n return url;\r\n}\r\n", "'use strict';\r\n\r\nimport utils from './../utils.js';\r\n\r\nclass InterceptorManager {\r\n constructor() {\r\n this.handlers = [];\r\n }\r\n\r\n /**\r\n * Add a new interceptor to the stack\r\n *\r\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\r\n * @param {Function} rejected The function to handle `reject` for a `Promise`\r\n *\r\n * @return {Number} An ID used to remove interceptor later\r\n */\r\n use(fulfilled, rejected, options) {\r\n this.handlers.push({\r\n fulfilled,\r\n rejected,\r\n synchronous: options ? options.synchronous : false,\r\n runWhen: options ? options.runWhen : null\r\n });\r\n return this.handlers.length - 1;\r\n }\r\n\r\n /**\r\n * Remove an interceptor from the stack\r\n *\r\n * @param {Number} id The ID that was returned by `use`\r\n *\r\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\r\n */\r\n eject(id) {\r\n if (this.handlers[id]) {\r\n this.handlers[id] = null;\r\n }\r\n }\r\n\r\n /**\r\n * Clear all interceptors from the stack\r\n *\r\n * @returns {void}\r\n */\r\n clear() {\r\n if (this.handlers) {\r\n this.handlers = [];\r\n }\r\n }\r\n\r\n /**\r\n * Iterate over all the registered interceptors\r\n *\r\n * This method is particularly useful for skipping over any\r\n * interceptors that may have become `null` calling `eject`.\r\n *\r\n * @param {Function} fn The function to call for each interceptor\r\n *\r\n * @returns {void}\r\n */\r\n forEach(fn) {\r\n utils.forEach(this.handlers, function forEachHandler(h) {\r\n if (h !== null) {\r\n fn(h);\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport default InterceptorManager;\r\n", "'use strict';\r\n\r\nexport default {\r\n silentJSONParsing: true,\r\n forcedJSONParsing: true,\r\n clarifyTimeoutError: false\r\n};\r\n", "'use strict';\r\n\r\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\r\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\r\n", "'use strict';\r\n\r\nexport default typeof FormData !== 'undefined' ? FormData : null;\r\n", "'use strict'\r\n\r\nexport default typeof Blob !== 'undefined' ? Blob : null\r\n", "import URLSearchParams from './classes/URLSearchParams.js'\r\nimport FormData from './classes/FormData.js'\r\nimport Blob from './classes/Blob.js'\r\n\r\nexport default {\r\n isBrowser: true,\r\n classes: {\r\n URLSearchParams,\r\n FormData,\r\n Blob\r\n },\r\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\r\n};\r\n", "const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\r\n\r\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\r\n\r\n/**\r\n * Determine if we're running in a standard browser environment\r\n *\r\n * This allows axios to run in a web worker, and react-native.\r\n * Both environments support XMLHttpRequest, but not fully standard globals.\r\n *\r\n * web workers:\r\n * typeof window -> undefined\r\n * typeof document -> undefined\r\n *\r\n * react-native:\r\n * navigator.product -> 'ReactNative'\r\n * nativescript\r\n * navigator.product -> 'NativeScript' or 'NS'\r\n *\r\n * @returns {boolean}\r\n */\r\nconst hasStandardBrowserEnv = hasBrowserEnv &&\r\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\r\n\r\n/**\r\n * Determine if we're running in a standard browser webWorker environment\r\n *\r\n * Although the `isStandardBrowserEnv` method indicates that\r\n * `allows axios to run in a web worker`, the WebWorker will still be\r\n * filtered out due to its judgment standard\r\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\r\n * This leads to a problem when axios post `FormData` in webWorker\r\n */\r\nconst hasStandardBrowserWebWorkerEnv = (() => {\r\n return (\r\n typeof WorkerGlobalScope !== 'undefined' &&\r\n // eslint-disable-next-line no-undef\r\n self instanceof WorkerGlobalScope &&\r\n typeof self.importScripts === 'function'\r\n );\r\n})();\r\n\r\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\r\n\r\nexport {\r\n hasBrowserEnv,\r\n hasStandardBrowserWebWorkerEnv,\r\n hasStandardBrowserEnv,\r\n _navigator as navigator,\r\n origin\r\n}\r\n", "import platform from './node/index.js';\r\nimport * as utils from './common/utils.js';\r\n\r\nexport default {\r\n ...utils,\r\n ...platform\r\n}\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport toFormData from './toFormData.js';\r\nimport platform from '../platform/index.js';\r\n\r\nexport default function toURLEncodedForm(data, options) {\r\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\r\n visitor: function(value, key, path, helpers) {\r\n if (platform.isNode && utils.isBuffer(value)) {\r\n this.append(key, value.toString('base64'));\r\n return false;\r\n }\r\n\r\n return helpers.defaultVisitor.apply(this, arguments);\r\n }\r\n }, options));\r\n}\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\n\r\n/**\r\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\r\n *\r\n * @param {string} name - The name of the property to get.\r\n *\r\n * @returns An array of strings.\r\n */\r\nfunction parsePropPath(name) {\r\n // foo[x][y][z]\r\n // foo.x.y.z\r\n // foo-x-y-z\r\n // foo x y z\r\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\r\n return match[0] === '[]' ? '' : match[1] || match[0];\r\n });\r\n}\r\n\r\n/**\r\n * Convert an array to an object.\r\n *\r\n * @param {Array} arr - The array to convert to an object.\r\n *\r\n * @returns An object with the same keys and values as the array.\r\n */\r\nfunction arrayToObject(arr) {\r\n const obj = {};\r\n const keys = Object.keys(arr);\r\n let i;\r\n const len = keys.length;\r\n let key;\r\n for (i = 0; i < len; i++) {\r\n key = keys[i];\r\n obj[key] = arr[key];\r\n }\r\n return obj;\r\n}\r\n\r\n/**\r\n * It takes a FormData object and returns a JavaScript object\r\n *\r\n * @param {string} formData The FormData object to convert to JSON.\r\n *\r\n * @returns {Object | null} The converted object.\r\n */\r\nfunction formDataToJSON(formData) {\r\n function buildPath(path, value, target, index) {\r\n let name = path[index++];\r\n\r\n if (name === '__proto__') return true;\r\n\r\n const isNumericKey = Number.isFinite(+name);\r\n const isLast = index >= path.length;\r\n name = !name && utils.isArray(target) ? target.length : name;\r\n\r\n if (isLast) {\r\n if (utils.hasOwnProp(target, name)) {\r\n target[name] = [target[name], value];\r\n } else {\r\n target[name] = value;\r\n }\r\n\r\n return !isNumericKey;\r\n }\r\n\r\n if (!target[name] || !utils.isObject(target[name])) {\r\n target[name] = [];\r\n }\r\n\r\n const result = buildPath(path, value, target[name], index);\r\n\r\n if (result && utils.isArray(target[name])) {\r\n target[name] = arrayToObject(target[name]);\r\n }\r\n\r\n return !isNumericKey;\r\n }\r\n\r\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\r\n const obj = {};\r\n\r\n utils.forEachEntry(formData, (name, value) => {\r\n buildPath(parsePropPath(name), value, obj, 0);\r\n });\r\n\r\n return obj;\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport default formDataToJSON;\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport AxiosError from '../core/AxiosError.js';\r\nimport transitionalDefaults from './transitional.js';\r\nimport toFormData from '../helpers/toFormData.js';\r\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\r\nimport platform from '../platform/index.js';\r\nimport formDataToJSON from '../helpers/formDataToJSON.js';\r\n\r\n/**\r\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\r\n * of the input\r\n *\r\n * @param {any} rawValue - The value to be stringified.\r\n * @param {Function} parser - A function that parses a string into a JavaScript object.\r\n * @param {Function} encoder - A function that takes a value and returns a string.\r\n *\r\n * @returns {string} A stringified version of the rawValue.\r\n */\r\nfunction stringifySafely(rawValue, parser, encoder) {\r\n if (utils.isString(rawValue)) {\r\n try {\r\n (parser || JSON.parse)(rawValue);\r\n return utils.trim(rawValue);\r\n } catch (e) {\r\n if (e.name !== 'SyntaxError') {\r\n throw e;\r\n }\r\n }\r\n }\r\n\r\n return (encoder || JSON.stringify)(rawValue);\r\n}\r\n\r\nconst defaults = {\r\n\r\n transitional: transitionalDefaults,\r\n\r\n adapter: ['xhr', 'http', 'fetch'],\r\n\r\n transformRequest: [function transformRequest(data, headers) {\r\n const contentType = headers.getContentType() || '';\r\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\r\n const isObjectPayload = utils.isObject(data);\r\n\r\n if (isObjectPayload && utils.isHTMLForm(data)) {\r\n data = new FormData(data);\r\n }\r\n\r\n const isFormData = utils.isFormData(data);\r\n\r\n if (isFormData) {\r\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\r\n }\r\n\r\n if (utils.isArrayBuffer(data) ||\r\n utils.isBuffer(data) ||\r\n utils.isStream(data) ||\r\n utils.isFile(data) ||\r\n utils.isBlob(data) ||\r\n utils.isReadableStream(data)\r\n ) {\r\n return data;\r\n }\r\n if (utils.isArrayBufferView(data)) {\r\n return data.buffer;\r\n }\r\n if (utils.isURLSearchParams(data)) {\r\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\r\n return data.toString();\r\n }\r\n\r\n let isFileList;\r\n\r\n if (isObjectPayload) {\r\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\r\n return toURLEncodedForm(data, this.formSerializer).toString();\r\n }\r\n\r\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\r\n const _FormData = this.env && this.env.FormData;\r\n\r\n return toFormData(\r\n isFileList ? {'files[]': data} : data,\r\n _FormData && new _FormData(),\r\n this.formSerializer\r\n );\r\n }\r\n }\r\n\r\n if (isObjectPayload || hasJSONContentType ) {\r\n headers.setContentType('application/json', false);\r\n return stringifySafely(data);\r\n }\r\n\r\n return data;\r\n }],\r\n\r\n transformResponse: [function transformResponse(data) {\r\n const transitional = this.transitional || defaults.transitional;\r\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\r\n const JSONRequested = this.responseType === 'json';\r\n\r\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\r\n return data;\r\n }\r\n\r\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\r\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\r\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\r\n\r\n try {\r\n return JSON.parse(data);\r\n } catch (e) {\r\n if (strictJSONParsing) {\r\n if (e.name === 'SyntaxError') {\r\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\r\n }\r\n throw e;\r\n }\r\n }\r\n }\r\n\r\n return data;\r\n }],\r\n\r\n /**\r\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\r\n * timeout is not created.\r\n */\r\n timeout: 0,\r\n\r\n xsrfCookieName: 'XSRF-TOKEN',\r\n xsrfHeaderName: 'X-XSRF-TOKEN',\r\n\r\n maxContentLength: -1,\r\n maxBodyLength: -1,\r\n\r\n env: {\r\n FormData: platform.classes.FormData,\r\n Blob: platform.classes.Blob\r\n },\r\n\r\n validateStatus: function validateStatus(status) {\r\n return status >= 200 && status < 300;\r\n },\r\n\r\n headers: {\r\n common: {\r\n 'Accept': 'application/json, text/plain, */*',\r\n 'Content-Type': undefined\r\n }\r\n }\r\n};\r\n\r\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\r\n defaults.headers[method] = {};\r\n});\r\n\r\nexport default defaults;\r\n", "'use strict';\r\n\r\nimport utils from './../utils.js';\r\n\r\n// RawAxiosHeaders whose duplicates are ignored by node\r\n// c.f. https://nodejs.org/api/http.html#http_message_headers\r\nconst ignoreDuplicateOf = utils.toObjectSet([\r\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\r\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\r\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\r\n 'referer', 'retry-after', 'user-agent'\r\n]);\r\n\r\n/**\r\n * Parse headers into an object\r\n *\r\n * ```\r\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\r\n * Content-Type: application/json\r\n * Connection: keep-alive\r\n * Transfer-Encoding: chunked\r\n * ```\r\n *\r\n * @param {String} rawHeaders Headers needing to be parsed\r\n *\r\n * @returns {Object} Headers parsed into an object\r\n */\r\nexport default rawHeaders => {\r\n const parsed = {};\r\n let key;\r\n let val;\r\n let i;\r\n\r\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\r\n i = line.indexOf(':');\r\n key = line.substring(0, i).trim().toLowerCase();\r\n val = line.substring(i + 1).trim();\r\n\r\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\r\n return;\r\n }\r\n\r\n if (key === 'set-cookie') {\r\n if (parsed[key]) {\r\n parsed[key].push(val);\r\n } else {\r\n parsed[key] = [val];\r\n }\r\n } else {\r\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\r\n }\r\n });\r\n\r\n return parsed;\r\n};\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport parseHeaders from '../helpers/parseHeaders.js';\r\n\r\nconst $internals = Symbol('internals');\r\n\r\nfunction normalizeHeader(header) {\r\n return header && String(header).trim().toLowerCase();\r\n}\r\n\r\nfunction normalizeValue(value) {\r\n if (value === false || value == null) {\r\n return value;\r\n }\r\n\r\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\r\n}\r\n\r\nfunction parseTokens(str) {\r\n const tokens = Object.create(null);\r\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\r\n let match;\r\n\r\n while ((match = tokensRE.exec(str))) {\r\n tokens[match[1]] = match[2];\r\n }\r\n\r\n return tokens;\r\n}\r\n\r\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\r\n\r\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\r\n if (utils.isFunction(filter)) {\r\n return filter.call(this, value, header);\r\n }\r\n\r\n if (isHeaderNameFilter) {\r\n value = header;\r\n }\r\n\r\n if (!utils.isString(value)) return;\r\n\r\n if (utils.isString(filter)) {\r\n return value.indexOf(filter) !== -1;\r\n }\r\n\r\n if (utils.isRegExp(filter)) {\r\n return filter.test(value);\r\n }\r\n}\r\n\r\nfunction formatHeader(header) {\r\n return header.trim()\r\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\r\n return char.toUpperCase() + str;\r\n });\r\n}\r\n\r\nfunction buildAccessors(obj, header) {\r\n const accessorName = utils.toCamelCase(' ' + header);\r\n\r\n ['get', 'set', 'has'].forEach(methodName => {\r\n Object.defineProperty(obj, methodName + accessorName, {\r\n value: function(arg1, arg2, arg3) {\r\n return this[methodName].call(this, header, arg1, arg2, arg3);\r\n },\r\n configurable: true\r\n });\r\n });\r\n}\r\n\r\nclass AxiosHeaders {\r\n constructor(headers) {\r\n headers && this.set(headers);\r\n }\r\n\r\n set(header, valueOrRewrite, rewrite) {\r\n const self = this;\r\n\r\n function setHeader(_value, _header, _rewrite) {\r\n const lHeader = normalizeHeader(_header);\r\n\r\n if (!lHeader) {\r\n throw new Error('header name must be a non-empty string');\r\n }\r\n\r\n const key = utils.findKey(self, lHeader);\r\n\r\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\r\n self[key || _header] = normalizeValue(_value);\r\n }\r\n }\r\n\r\n const setHeaders = (headers, _rewrite) =>\r\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\r\n\r\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\r\n setHeaders(header, valueOrRewrite)\r\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\r\n setHeaders(parseHeaders(header), valueOrRewrite);\r\n } else if (utils.isHeaders(header)) {\r\n for (const [key, value] of header.entries()) {\r\n setHeader(value, key, rewrite);\r\n }\r\n } else {\r\n header != null && setHeader(valueOrRewrite, header, rewrite);\r\n }\r\n\r\n return this;\r\n }\r\n\r\n get(header, parser) {\r\n header = normalizeHeader(header);\r\n\r\n if (header) {\r\n const key = utils.findKey(this, header);\r\n\r\n if (key) {\r\n const value = this[key];\r\n\r\n if (!parser) {\r\n return value;\r\n }\r\n\r\n if (parser === true) {\r\n return parseTokens(value);\r\n }\r\n\r\n if (utils.isFunction(parser)) {\r\n return parser.call(this, value, key);\r\n }\r\n\r\n if (utils.isRegExp(parser)) {\r\n return parser.exec(value);\r\n }\r\n\r\n throw new TypeError('parser must be boolean|regexp|function');\r\n }\r\n }\r\n }\r\n\r\n has(header, matcher) {\r\n header = normalizeHeader(header);\r\n\r\n if (header) {\r\n const key = utils.findKey(this, header);\r\n\r\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\r\n }\r\n\r\n return false;\r\n }\r\n\r\n delete(header, matcher) {\r\n const self = this;\r\n let deleted = false;\r\n\r\n function deleteHeader(_header) {\r\n _header = normalizeHeader(_header);\r\n\r\n if (_header) {\r\n const key = utils.findKey(self, _header);\r\n\r\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\r\n delete self[key];\r\n\r\n deleted = true;\r\n }\r\n }\r\n }\r\n\r\n if (utils.isArray(header)) {\r\n header.forEach(deleteHeader);\r\n } else {\r\n deleteHeader(header);\r\n }\r\n\r\n return deleted;\r\n }\r\n\r\n clear(matcher) {\r\n const keys = Object.keys(this);\r\n let i = keys.length;\r\n let deleted = false;\r\n\r\n while (i--) {\r\n const key = keys[i];\r\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\r\n delete this[key];\r\n deleted = true;\r\n }\r\n }\r\n\r\n return deleted;\r\n }\r\n\r\n normalize(format) {\r\n const self = this;\r\n const headers = {};\r\n\r\n utils.forEach(this, (value, header) => {\r\n const key = utils.findKey(headers, header);\r\n\r\n if (key) {\r\n self[key] = normalizeValue(value);\r\n delete self[header];\r\n return;\r\n }\r\n\r\n const normalized = format ? formatHeader(header) : String(header).trim();\r\n\r\n if (normalized !== header) {\r\n delete self[header];\r\n }\r\n\r\n self[normalized] = normalizeValue(value);\r\n\r\n headers[normalized] = true;\r\n });\r\n\r\n return this;\r\n }\r\n\r\n concat(...targets) {\r\n return this.constructor.concat(this, ...targets);\r\n }\r\n\r\n toJSON(asStrings) {\r\n const obj = Object.create(null);\r\n\r\n utils.forEach(this, (value, header) => {\r\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\r\n });\r\n\r\n return obj;\r\n }\r\n\r\n [Symbol.iterator]() {\r\n return Object.entries(this.toJSON())[Symbol.iterator]();\r\n }\r\n\r\n toString() {\r\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\r\n }\r\n\r\n get [Symbol.toStringTag]() {\r\n return 'AxiosHeaders';\r\n }\r\n\r\n static from(thing) {\r\n return thing instanceof this ? thing : new this(thing);\r\n }\r\n\r\n static concat(first, ...targets) {\r\n const computed = new this(first);\r\n\r\n targets.forEach((target) => computed.set(target));\r\n\r\n return computed;\r\n }\r\n\r\n static accessor(header) {\r\n const internals = this[$internals] = (this[$internals] = {\r\n accessors: {}\r\n });\r\n\r\n const accessors = internals.accessors;\r\n const prototype = this.prototype;\r\n\r\n function defineAccessor(_header) {\r\n const lHeader = normalizeHeader(_header);\r\n\r\n if (!accessors[lHeader]) {\r\n buildAccessors(prototype, _header);\r\n accessors[lHeader] = true;\r\n }\r\n }\r\n\r\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\r\n\r\n return this;\r\n }\r\n}\r\n\r\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\r\n\r\n// reserved names hotfix\r\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\r\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\r\n return {\r\n get: () => value,\r\n set(headerValue) {\r\n this[mapped] = headerValue;\r\n }\r\n }\r\n});\r\n\r\nutils.freezeMethods(AxiosHeaders);\r\n\r\nexport default AxiosHeaders;\r\n", "'use strict';\r\n\r\nimport utils from './../utils.js';\r\nimport defaults from '../defaults/index.js';\r\nimport AxiosHeaders from '../core/AxiosHeaders.js';\r\n\r\n/**\r\n * Transform the data for a request or a response\r\n *\r\n * @param {Array|Function} fns A single function or Array of functions\r\n * @param {?Object} response The response object\r\n *\r\n * @returns {*} The resulting transformed data\r\n */\r\nexport default function transformData(fns, response) {\r\n const config = this || defaults;\r\n const context = response || config;\r\n const headers = AxiosHeaders.from(context.headers);\r\n let data = context.data;\r\n\r\n utils.forEach(fns, function transform(fn) {\r\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\r\n });\r\n\r\n headers.normalize();\r\n\r\n return data;\r\n}\r\n", "'use strict';\r\n\r\nexport default function isCancel(value) {\r\n return !!(value && value.__CANCEL__);\r\n}\r\n", "'use strict';\r\n\r\nimport AxiosError from '../core/AxiosError.js';\r\nimport utils from '../utils.js';\r\n\r\n/**\r\n * A `CanceledError` is an object that is thrown when an operation is canceled.\r\n *\r\n * @param {string=} message The message.\r\n * @param {Object=} config The config.\r\n * @param {Object=} request The request.\r\n *\r\n * @returns {CanceledError} The created error.\r\n */\r\nfunction CanceledError(message, config, request) {\r\n // eslint-disable-next-line no-eq-null,eqeqeq\r\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\r\n this.name = 'CanceledError';\r\n}\r\n\r\nutils.inherits(CanceledError, AxiosError, {\r\n __CANCEL__: true\r\n});\r\n\r\nexport default CanceledError;\r\n", "'use strict';\r\n\r\nimport AxiosError from './AxiosError.js';\r\n\r\n/**\r\n * Resolve or reject a Promise based on response status.\r\n *\r\n * @param {Function} resolve A function that resolves the promise.\r\n * @param {Function} reject A function that rejects the promise.\r\n * @param {object} response The response.\r\n *\r\n * @returns {object} The response.\r\n */\r\nexport default function settle(resolve, reject, response) {\r\n const validateStatus = response.config.validateStatus;\r\n if (!response.status || !validateStatus || validateStatus(response.status)) {\r\n resolve(response);\r\n } else {\r\n reject(new AxiosError(\r\n 'Request failed with status code ' + response.status,\r\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\r\n response.config,\r\n response.request,\r\n response\r\n ));\r\n }\r\n}\r\n", "'use strict';\r\n\r\nexport default function parseProtocol(url) {\r\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\r\n return match && match[1] || '';\r\n}\r\n", "'use strict';\r\n\r\n/**\r\n * Calculate data maxRate\r\n * @param {Number} [samplesCount= 10]\r\n * @param {Number} [min= 1000]\r\n * @returns {Function}\r\n */\r\nfunction speedometer(samplesCount, min) {\r\n samplesCount = samplesCount || 10;\r\n const bytes = new Array(samplesCount);\r\n const timestamps = new Array(samplesCount);\r\n let head = 0;\r\n let tail = 0;\r\n let firstSampleTS;\r\n\r\n min = min !== undefined ? min : 1000;\r\n\r\n return function push(chunkLength) {\r\n const now = Date.now();\r\n\r\n const startedAt = timestamps[tail];\r\n\r\n if (!firstSampleTS) {\r\n firstSampleTS = now;\r\n }\r\n\r\n bytes[head] = chunkLength;\r\n timestamps[head] = now;\r\n\r\n let i = tail;\r\n let bytesCount = 0;\r\n\r\n while (i !== head) {\r\n bytesCount += bytes[i++];\r\n i = i % samplesCount;\r\n }\r\n\r\n head = (head + 1) % samplesCount;\r\n\r\n if (head === tail) {\r\n tail = (tail + 1) % samplesCount;\r\n }\r\n\r\n if (now - firstSampleTS < min) {\r\n return;\r\n }\r\n\r\n const passed = startedAt && now - startedAt;\r\n\r\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\r\n };\r\n}\r\n\r\nexport default speedometer;\r\n", "/**\r\n * Throttle decorator\r\n * @param {Function} fn\r\n * @param {Number} freq\r\n * @return {Function}\r\n */\r\nfunction throttle(fn, freq) {\r\n let timestamp = 0;\r\n let threshold = 1000 / freq;\r\n let lastArgs;\r\n let timer;\r\n\r\n const invoke = (args, now = Date.now()) => {\r\n timestamp = now;\r\n lastArgs = null;\r\n if (timer) {\r\n clearTimeout(timer);\r\n timer = null;\r\n }\r\n fn.apply(null, args);\r\n }\r\n\r\n const throttled = (...args) => {\r\n const now = Date.now();\r\n const passed = now - timestamp;\r\n if ( passed >= threshold) {\r\n invoke(args, now);\r\n } else {\r\n lastArgs = args;\r\n if (!timer) {\r\n timer = setTimeout(() => {\r\n timer = null;\r\n invoke(lastArgs)\r\n }, threshold - passed);\r\n }\r\n }\r\n }\r\n\r\n const flush = () => lastArgs && invoke(lastArgs);\r\n\r\n return [throttled, flush];\r\n}\r\n\r\nexport default throttle;\r\n", "import speedometer from \"./speedometer.js\";\r\nimport throttle from \"./throttle.js\";\r\nimport utils from \"../utils.js\";\r\n\r\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\r\n let bytesNotified = 0;\r\n const _speedometer = speedometer(50, 250);\r\n\r\n return throttle(e => {\r\n const loaded = e.loaded;\r\n const total = e.lengthComputable ? e.total : undefined;\r\n const progressBytes = loaded - bytesNotified;\r\n const rate = _speedometer(progressBytes);\r\n const inRange = loaded <= total;\r\n\r\n bytesNotified = loaded;\r\n\r\n const data = {\r\n loaded,\r\n total,\r\n progress: total ? (loaded / total) : undefined,\r\n bytes: progressBytes,\r\n rate: rate ? rate : undefined,\r\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\r\n event: e,\r\n lengthComputable: total != null,\r\n [isDownloadStream ? 'download' : 'upload']: true\r\n };\r\n\r\n listener(data);\r\n }, freq);\r\n}\r\n\r\nexport const progressEventDecorator = (total, throttled) => {\r\n const lengthComputable = total != null;\r\n\r\n return [(loaded) => throttled[0]({\r\n lengthComputable,\r\n total,\r\n loaded\r\n }), throttled[1]];\r\n}\r\n\r\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\r\n", "import platform from '../platform/index.js';\r\n\r\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\r\n url = new URL(url, platform.origin);\r\n\r\n return (\r\n origin.protocol === url.protocol &&\r\n origin.host === url.host &&\r\n (isMSIE || origin.port === url.port)\r\n );\r\n})(\r\n new URL(platform.origin),\r\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\r\n) : () => true;\r\n", "import utils from './../utils.js';\r\nimport platform from '../platform/index.js';\r\n\r\nexport default platform.hasStandardBrowserEnv ?\r\n\r\n // Standard browser envs support document.cookie\r\n {\r\n write(name, value, expires, path, domain, secure) {\r\n const cookie = [name + '=' + encodeURIComponent(value)];\r\n\r\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\r\n\r\n utils.isString(path) && cookie.push('path=' + path);\r\n\r\n utils.isString(domain) && cookie.push('domain=' + domain);\r\n\r\n secure === true && cookie.push('secure');\r\n\r\n document.cookie = cookie.join('; ');\r\n },\r\n\r\n read(name) {\r\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\r\n return (match ? decodeURIComponent(match[3]) : null);\r\n },\r\n\r\n remove(name) {\r\n this.write(name, '', Date.now() - 86400000);\r\n }\r\n }\r\n\r\n :\r\n\r\n // Non-standard browser env (web workers, react-native) lack needed support.\r\n {\r\n write() {},\r\n read() {\r\n return null;\r\n },\r\n remove() {}\r\n };\r\n\r\n", "'use strict';\r\n\r\n/**\r\n * Determines whether the specified URL is absolute\r\n *\r\n * @param {string} url The URL to test\r\n *\r\n * @returns {boolean} True if the specified URL is absolute, otherwise false\r\n */\r\nexport default function isAbsoluteURL(url) {\r\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\r\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\r\n // by any combination of letters, digits, plus, period, or hyphen.\r\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\r\n}\r\n", "'use strict';\r\n\r\n/**\r\n * Creates a new URL by combining the specified URLs\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} relativeURL The relative URL\r\n *\r\n * @returns {string} The combined URL\r\n */\r\nexport default function combineURLs(baseURL, relativeURL) {\r\n return relativeURL\r\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\r\n : baseURL;\r\n}\r\n", "'use strict';\r\n\r\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\r\nimport combineURLs from '../helpers/combineURLs.js';\r\n\r\n/**\r\n * Creates a new URL by combining the baseURL with the requestedURL,\r\n * only when the requestedURL is not already an absolute URL.\r\n * If the requestURL is absolute, this function returns the requestedURL untouched.\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} requestedURL Absolute or relative URL to combine\r\n *\r\n * @returns {string} The combined full path\r\n */\r\nexport default function buildFullPath(baseURL, requestedURL) {\r\n if (baseURL && !isAbsoluteURL(requestedURL)) {\r\n return combineURLs(baseURL, requestedURL);\r\n }\r\n return requestedURL;\r\n}\r\n", "'use strict';\r\n\r\nimport utils from '../utils.js';\r\nimport AxiosHeaders from \"./AxiosHeaders.js\";\r\n\r\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\r\n\r\n/**\r\n * Config-specific merge-function which creates a new config-object\r\n * by merging two configuration objects together.\r\n *\r\n * @param {Object} config1\r\n * @param {Object} config2\r\n *\r\n * @returns {Object} New object resulting from merging config2 to config1\r\n */\r\nexport default function mergeConfig(config1, config2) {\r\n // eslint-disable-next-line no-param-reassign\r\n config2 = config2 || {};\r\n const config = {};\r\n\r\n function getMergedValue(target, source, prop, caseless) {\r\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\r\n return utils.merge.call({caseless}, target, source);\r\n } else if (utils.isPlainObject(source)) {\r\n return utils.merge({}, source);\r\n } else if (utils.isArray(source)) {\r\n return source.slice();\r\n }\r\n return source;\r\n }\r\n\r\n // eslint-disable-next-line consistent-return\r\n function mergeDeepProperties(a, b, prop , caseless) {\r\n if (!utils.isUndefined(b)) {\r\n return getMergedValue(a, b, prop , caseless);\r\n } else if (!utils.isUndefined(a)) {\r\n return getMergedValue(undefined, a, prop , caseless);\r\n }\r\n }\r\n\r\n // eslint-disable-next-line consistent-return\r\n function valueFromConfig2(a, b) {\r\n if (!utils.isUndefined(b)) {\r\n return getMergedValue(undefined, b);\r\n }\r\n }\r\n\r\n // eslint-disable-next-line consistent-return\r\n function defaultToConfig2(a, b) {\r\n if (!utils.isUndefined(b)) {\r\n return getMergedValue(undefined, b);\r\n } else if (!utils.isUndefined(a)) {\r\n return getMergedValue(undefined, a);\r\n }\r\n }\r\n\r\n // eslint-disable-next-line consistent-return\r\n function mergeDirectKeys(a, b, prop) {\r\n if (prop in config2) {\r\n return getMergedValue(a, b);\r\n } else if (prop in config1) {\r\n return getMergedValue(undefined, a);\r\n }\r\n }\r\n\r\n const mergeMap = {\r\n url: valueFromConfig2,\r\n method: valueFromConfig2,\r\n data: valueFromConfig2,\r\n baseURL: defaultToConfig2,\r\n transformRequest: defaultToConfig2,\r\n transformResponse: defaultToConfig2,\r\n paramsSerializer: defaultToConfig2,\r\n timeout: defaultToConfig2,\r\n timeoutMessage: defaultToConfig2,\r\n withCredentials: defaultToConfig2,\r\n withXSRFToken: defaultToConfig2,\r\n adapter: defaultToConfig2,\r\n responseType: defaultToConfig2,\r\n xsrfCookieName: defaultToConfig2,\r\n xsrfHeaderName: defaultToConfig2,\r\n onUploadProgress: defaultToConfig2,\r\n onDownloadProgress: defaultToConfig2,\r\n decompress: defaultToConfig2,\r\n maxContentLength: defaultToConfig2,\r\n maxBodyLength: defaultToConfig2,\r\n beforeRedirect: defaultToConfig2,\r\n transport: defaultToConfig2,\r\n httpAgent: defaultToConfig2,\r\n httpsAgent: defaultToConfig2,\r\n cancelToken: defaultToConfig2,\r\n socketPath: defaultToConfig2,\r\n responseEncoding: defaultToConfig2,\r\n validateStatus: mergeDirectKeys,\r\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\r\n };\r\n\r\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\r\n const merge = mergeMap[prop] || mergeDeepProperties;\r\n const configValue = merge(config1[prop], config2[prop], prop);\r\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\r\n });\r\n\r\n return config;\r\n}\r\n", "import platform from \"../platform/index.js\";\r\nimport utils from \"../utils.js\";\r\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\r\nimport cookies from \"./cookies.js\";\r\nimport buildFullPath from \"../core/buildFullPath.js\";\r\nimport mergeConfig from \"../core/mergeConfig.js\";\r\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\r\nimport buildURL from \"./buildURL.js\";\r\n\r\nexport default (config) => {\r\n const newConfig = mergeConfig({}, config);\r\n\r\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\r\n\r\n newConfig.headers = headers = AxiosHeaders.from(headers);\r\n\r\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\r\n\r\n // HTTP basic authentication\r\n if (auth) {\r\n headers.set('Authorization', 'Basic ' +\r\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\r\n );\r\n }\r\n\r\n let contentType;\r\n\r\n if (utils.isFormData(data)) {\r\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\r\n headers.setContentType(undefined); // Let the browser set it\r\n } else if ((contentType = headers.getContentType()) !== false) {\r\n // fix semicolon duplication issue for ReactNative FormData implementation\r\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\r\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\r\n }\r\n }\r\n\r\n // Add xsrf header\r\n // This is only done if running in a standard browser environment.\r\n // Specifically not if we're in a web worker, or react-native.\r\n\r\n if (platform.hasStandardBrowserEnv) {\r\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\r\n\r\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\r\n // Add xsrf header\r\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\r\n\r\n if (xsrfValue) {\r\n headers.set(xsrfHeaderName, xsrfValue);\r\n }\r\n }\r\n }\r\n\r\n return newConfig;\r\n}\r\n\r\n", "import utils from './../utils.js';\r\nimport settle from './../core/settle.js';\r\nimport transitionalDefaults from '../defaults/transitional.js';\r\nimport AxiosError from '../core/AxiosError.js';\r\nimport CanceledError from '../cancel/CanceledError.js';\r\nimport parseProtocol from '../helpers/parseProtocol.js';\r\nimport platform from '../platform/index.js';\r\nimport AxiosHeaders from '../core/AxiosHeaders.js';\r\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\r\nimport resolveConfig from \"../helpers/resolveConfig.js\";\r\n\r\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\r\n\r\nexport default isXHRAdapterSupported && function (config) {\r\n return new Promise(function dispatchXhrRequest(resolve, reject) {\r\n const _config = resolveConfig(config);\r\n let requestData = _config.data;\r\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\r\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\r\n let onCanceled;\r\n let uploadThrottled, downloadThrottled;\r\n let flushUpload, flushDownload;\r\n\r\n function done() {\r\n flushUpload && flushUpload(); // flush events\r\n flushDownload && flushDownload(); // flush events\r\n\r\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\r\n\r\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\r\n }\r\n\r\n let request = new XMLHttpRequest();\r\n\r\n request.open(_config.method.toUpperCase(), _config.url, true);\r\n\r\n // Set the request timeout in MS\r\n request.timeout = _config.timeout;\r\n\r\n function onloadend() {\r\n if (!request) {\r\n return;\r\n }\r\n // Prepare the response\r\n const responseHeaders = AxiosHeaders.from(\r\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\r\n );\r\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\r\n request.responseText : request.response;\r\n const response = {\r\n data: responseData,\r\n status: request.status,\r\n statusText: request.statusText,\r\n headers: responseHeaders,\r\n config,\r\n request\r\n };\r\n\r\n settle(function _resolve(value) {\r\n resolve(value);\r\n done();\r\n }, function _reject(err) {\r\n reject(err);\r\n done();\r\n }, response);\r\n\r\n // Clean up request\r\n request = null;\r\n }\r\n\r\n if ('onloadend' in request) {\r\n // Use onloadend if available\r\n request.onloadend = onloadend;\r\n } else {\r\n // Listen for ready state to emulate onloadend\r\n request.onreadystatechange = function handleLoad() {\r\n if (!request || request.readyState !== 4) {\r\n return;\r\n }\r\n\r\n // The request errored out and we didn't get a response, this will be\r\n // handled by onerror instead\r\n // With one exception: request that using file: protocol, most browsers\r\n // will return status as 0 even though it's a successful request\r\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\r\n return;\r\n }\r\n // readystate handler is calling before onerror or ontimeout handlers,\r\n // so we should call onloadend on the next 'tick'\r\n setTimeout(onloadend);\r\n };\r\n }\r\n\r\n // Handle browser request cancellation (as opposed to a manual cancellation)\r\n request.onabort = function handleAbort() {\r\n if (!request) {\r\n return;\r\n }\r\n\r\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\r\n\r\n // Clean up request\r\n request = null;\r\n };\r\n\r\n // Handle low level network errors\r\n request.onerror = function handleError() {\r\n // Real errors are hidden from us by the browser\r\n // onerror should only fire if it's a network error\r\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\r\n\r\n // Clean up request\r\n request = null;\r\n };\r\n\r\n // Handle timeout\r\n request.ontimeout = function handleTimeout() {\r\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\r\n const transitional = _config.transitional || transitionalDefaults;\r\n if (_config.timeoutErrorMessage) {\r\n timeoutErrorMessage = _config.timeoutErrorMessage;\r\n }\r\n reject(new AxiosError(\r\n timeoutErrorMessage,\r\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\r\n config,\r\n request));\r\n\r\n // Clean up request\r\n request = null;\r\n };\r\n\r\n // Remove Content-Type if data is undefined\r\n requestData === undefined && requestHeaders.setContentType(null);\r\n\r\n // Add headers to the request\r\n if ('setRequestHeader' in request) {\r\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\r\n request.setRequestHeader(key, val);\r\n });\r\n }\r\n\r\n // Add withCredentials to request if needed\r\n if (!utils.isUndefined(_config.withCredentials)) {\r\n request.withCredentials = !!_config.withCredentials;\r\n }\r\n\r\n // Add responseType to request if needed\r\n if (responseType && responseType !== 'json') {\r\n request.responseType = _config.responseType;\r\n }\r\n\r\n // Handle progress if needed\r\n if (onDownloadProgress) {\r\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\r\n request.addEventListener('progress', downloadThrottled);\r\n }\r\n\r\n // Not all browsers support upload events\r\n if (onUploadProgress && request.upload) {\r\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\r\n\r\n request.upload.addEventListener('progress', uploadThrottled);\r\n\r\n request.upload.addEventListener('loadend', flushUpload);\r\n }\r\n\r\n if (_config.cancelToken || _config.signal) {\r\n // Handle cancellation\r\n // eslint-disable-next-line func-names\r\n onCanceled = cancel => {\r\n if (!request) {\r\n return;\r\n }\r\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\r\n request.abort();\r\n request = null;\r\n };\r\n\r\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\r\n if (_config.signal) {\r\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\r\n }\r\n }\r\n\r\n const protocol = parseProtocol(_config.url);\r\n\r\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\r\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\r\n return;\r\n }\r\n\r\n\r\n // Send the request\r\n request.send(requestData || null);\r\n });\r\n}\r\n", "import CanceledError from \"../cancel/CanceledError.js\";\r\nimport AxiosError from \"../core/AxiosError.js\";\r\nimport utils from '../utils.js';\r\n\r\nconst composeSignals = (signals, timeout) => {\r\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\r\n\r\n if (timeout || length) {\r\n let controller = new AbortController();\r\n\r\n let aborted;\r\n\r\n const onabort = function (reason) {\r\n if (!aborted) {\r\n aborted = true;\r\n unsubscribe();\r\n const err = reason instanceof Error ? reason : this.reason;\r\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\r\n }\r\n }\r\n\r\n let timer = timeout && setTimeout(() => {\r\n timer = null;\r\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\r\n }, timeout)\r\n\r\n const unsubscribe = () => {\r\n if (signals) {\r\n timer && clearTimeout(timer);\r\n timer = null;\r\n signals.forEach(signal => {\r\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\r\n });\r\n signals = null;\r\n }\r\n }\r\n\r\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\r\n\r\n const {signal} = controller;\r\n\r\n signal.unsubscribe = () => utils.asap(unsubscribe);\r\n\r\n return signal;\r\n }\r\n}\r\n\r\nexport default composeSignals;\r\n", "\r\nexport const streamChunk = function* (chunk, chunkSize) {\r\n let len = chunk.byteLength;\r\n\r\n if (!chunkSize || len < chunkSize) {\r\n yield chunk;\r\n return;\r\n }\r\n\r\n let pos = 0;\r\n let end;\r\n\r\n while (pos < len) {\r\n end = pos + chunkSize;\r\n yield chunk.slice(pos, end);\r\n pos = end;\r\n }\r\n}\r\n\r\nexport const readBytes = async function* (iterable, chunkSize) {\r\n for await (const chunk of readStream(iterable)) {\r\n yield* streamChunk(chunk, chunkSize);\r\n }\r\n}\r\n\r\nconst readStream = async function* (stream) {\r\n if (stream[Symbol.asyncIterator]) {\r\n yield* stream;\r\n return;\r\n }\r\n\r\n const reader = stream.getReader();\r\n try {\r\n for (;;) {\r\n const {done, value} = await reader.read();\r\n if (done) {\r\n break;\r\n }\r\n yield value;\r\n }\r\n } finally {\r\n await reader.cancel();\r\n }\r\n}\r\n\r\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\r\n const iterator = readBytes(stream, chunkSize);\r\n\r\n let bytes = 0;\r\n let done;\r\n let _onFinish = (e) => {\r\n if (!done) {\r\n done = true;\r\n onFinish && onFinish(e);\r\n }\r\n }\r\n\r\n return new ReadableStream({\r\n async pull(controller) {\r\n try {\r\n const {done, value} = await iterator.next();\r\n\r\n if (done) {\r\n _onFinish();\r\n controller.close();\r\n return;\r\n }\r\n\r\n let len = value.byteLength;\r\n if (onProgress) {\r\n let loadedBytes = bytes += len;\r\n onProgress(loadedBytes);\r\n }\r\n controller.enqueue(new Uint8Array(value));\r\n } catch (err) {\r\n _onFinish(err);\r\n throw err;\r\n }\r\n },\r\n cancel(reason) {\r\n _onFinish(reason);\r\n return iterator.return();\r\n }\r\n }, {\r\n highWaterMark: 2\r\n })\r\n}\r\n", "import platform from \"../platform/index.js\";\r\nimport utils from \"../utils.js\";\r\nimport AxiosError from \"../core/AxiosError.js\";\r\nimport composeSignals from \"../helpers/composeSignals.js\";\r\nimport {trackStream} from \"../helpers/trackStream.js\";\r\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\r\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\r\nimport resolveConfig from \"../helpers/resolveConfig.js\";\r\nimport settle from \"../core/settle.js\";\r\n\r\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\r\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\r\n\r\n// used only inside the fetch adapter\r\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\r\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\r\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\r\n);\r\n\r\nconst test = (fn, ...args) => {\r\n try {\r\n return !!fn(...args);\r\n } catch (e) {\r\n return false\r\n }\r\n}\r\n\r\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\r\n let duplexAccessed = false;\r\n\r\n const hasContentType = new Request(platform.origin, {\r\n body: new ReadableStream(),\r\n method: 'POST',\r\n get duplex() {\r\n duplexAccessed = true;\r\n return 'half';\r\n },\r\n }).headers.has('Content-Type');\r\n\r\n return duplexAccessed && !hasContentType;\r\n});\r\n\r\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\r\n\r\nconst supportsResponseStream = isReadableStreamSupported &&\r\n test(() => utils.isReadableStream(new Response('').body));\r\n\r\n\r\nconst resolvers = {\r\n stream: supportsResponseStream && ((res) => res.body)\r\n};\r\n\r\nisFetchSupported && (((res) => {\r\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\r\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\r\n (_, config) => {\r\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\r\n })\r\n });\r\n})(new Response));\r\n\r\nconst getBodyLength = async (body) => {\r\n if (body == null) {\r\n return 0;\r\n }\r\n\r\n if(utils.isBlob(body)) {\r\n return body.size;\r\n }\r\n\r\n if(utils.isSpecCompliantForm(body)) {\r\n const _request = new Request(platform.origin, {\r\n method: 'POST',\r\n body,\r\n });\r\n return (await _request.arrayBuffer()).byteLength;\r\n }\r\n\r\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\r\n return body.byteLength;\r\n }\r\n\r\n if(utils.isURLSearchParams(body)) {\r\n body = body + '';\r\n }\r\n\r\n if(utils.isString(body)) {\r\n return (await encodeText(body)).byteLength;\r\n }\r\n}\r\n\r\nconst resolveBodyLength = async (headers, body) => {\r\n const length = utils.toFiniteNumber(headers.getContentLength());\r\n\r\n return length == null ? getBodyLength(body) : length;\r\n}\r\n\r\nexport default isFetchSupported && (async (config) => {\r\n let {\r\n url,\r\n method,\r\n data,\r\n signal,\r\n cancelToken,\r\n timeout,\r\n onDownloadProgress,\r\n onUploadProgress,\r\n responseType,\r\n headers,\r\n withCredentials = 'same-origin',\r\n fetchOptions\r\n } = resolveConfig(config);\r\n\r\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\r\n\r\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\r\n\r\n let request;\r\n\r\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\r\n composedSignal.unsubscribe();\r\n });\r\n\r\n let requestContentLength;\r\n\r\n try {\r\n if (\r\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\r\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\r\n ) {\r\n let _request = new Request(url, {\r\n method: 'POST',\r\n body: data,\r\n duplex: \"half\"\r\n });\r\n\r\n let contentTypeHeader;\r\n\r\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\r\n headers.setContentType(contentTypeHeader)\r\n }\r\n\r\n if (_request.body) {\r\n const [onProgress, flush] = progressEventDecorator(\r\n requestContentLength,\r\n progressEventReducer(asyncDecorator(onUploadProgress))\r\n );\r\n\r\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\r\n }\r\n }\r\n\r\n if (!utils.isString(withCredentials)) {\r\n withCredentials = withCredentials ? 'include' : 'omit';\r\n }\r\n\r\n // Cloudflare Workers throws when credentials are defined\r\n // see https://github.com/cloudflare/workerd/issues/902\r\n const isCredentialsSupported = \"credentials\" in Request.prototype;\r\n request = new Request(url, {\r\n ...fetchOptions,\r\n signal: composedSignal,\r\n method: method.toUpperCase(),\r\n headers: headers.normalize().toJSON(),\r\n body: data,\r\n duplex: \"half\",\r\n credentials: isCredentialsSupported ? withCredentials : undefined\r\n });\r\n\r\n let response = await fetch(request);\r\n\r\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\r\n\r\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\r\n const options = {};\r\n\r\n ['status', 'statusText', 'headers'].forEach(prop => {\r\n options[prop] = response[prop];\r\n });\r\n\r\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\r\n\r\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\r\n responseContentLength,\r\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\r\n ) || [];\r\n\r\n response = new Response(\r\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\r\n flush && flush();\r\n unsubscribe && unsubscribe();\r\n }),\r\n options\r\n );\r\n }\r\n\r\n responseType = responseType || 'text';\r\n\r\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\r\n\r\n !isStreamResponse && unsubscribe && unsubscribe();\r\n\r\n return await new Promise((resolve, reject) => {\r\n settle(resolve, reject, {\r\n data: responseData,\r\n headers: AxiosHeaders.from(response.headers),\r\n status: response.status,\r\n statusText: response.statusText,\r\n config,\r\n request\r\n })\r\n })\r\n } catch (err) {\r\n unsubscribe && unsubscribe();\r\n\r\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\r\n throw Object.assign(\r\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\r\n {\r\n cause: err.cause || err\r\n }\r\n )\r\n }\r\n\r\n throw AxiosError.from(err, err && err.code, config, request);\r\n }\r\n});\r\n\r\n\r\n", "import utils from '../utils.js';\r\nimport httpAdapter from './http.js';\r\nimport xhrAdapter from './xhr.js';\r\nimport fetchAdapter from './fetch.js';\r\nimport AxiosError from \"../core/AxiosError.js\";\r\n\r\nconst knownAdapters = {\r\n http: httpAdapter,\r\n xhr: xhrAdapter,\r\n fetch: fetchAdapter\r\n}\r\n\r\nutils.forEach(knownAdapters, (fn, value) => {\r\n if (fn) {\r\n try {\r\n Object.defineProperty(fn, 'name', {value});\r\n } catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n Object.defineProperty(fn, 'adapterName', {value});\r\n }\r\n});\r\n\r\nconst renderReason = (reason) => `- ${reason}`;\r\n\r\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\r\n\r\nexport default {\r\n getAdapter: (adapters) => {\r\n adapters = utils.isArray(adapters) ? adapters : [adapters];\r\n\r\n const {length} = adapters;\r\n let nameOrAdapter;\r\n let adapter;\r\n\r\n const rejectedReasons = {};\r\n\r\n for (let i = 0; i < length; i++) {\r\n nameOrAdapter = adapters[i];\r\n let id;\r\n\r\n adapter = nameOrAdapter;\r\n\r\n if (!isResolvedHandle(nameOrAdapter)) {\r\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\r\n\r\n if (adapter === undefined) {\r\n throw new AxiosError(`Unknown adapter '${id}'`);\r\n }\r\n }\r\n\r\n if (adapter) {\r\n break;\r\n }\r\n\r\n rejectedReasons[id || '#' + i] = adapter;\r\n }\r\n\r\n if (!adapter) {\r\n\r\n const reasons = Object.entries(rejectedReasons)\r\n .map(([id, state]) => `adapter ${id} ` +\r\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\r\n );\r\n\r\n let s = length ?\r\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\r\n 'as no adapter specified';\r\n\r\n throw new AxiosError(\r\n `There is no suitable adapter to dispatch the request ` + s,\r\n 'ERR_NOT_SUPPORT'\r\n );\r\n }\r\n\r\n return adapter;\r\n },\r\n adapters: knownAdapters\r\n}\r\n", "'use strict';\r\n\r\nimport transformData from './transformData.js';\r\nimport isCancel from '../cancel/isCancel.js';\r\nimport defaults from '../defaults/index.js';\r\nimport CanceledError from '../cancel/CanceledError.js';\r\nimport AxiosHeaders from '../core/AxiosHeaders.js';\r\nimport adapters from \"../adapters/adapters.js\";\r\n\r\n/**\r\n * Throws a `CanceledError` if cancellation has been requested.\r\n *\r\n * @param {Object} config The config that is to be used for the request\r\n *\r\n * @returns {void}\r\n */\r\nfunction throwIfCancellationRequested(config) {\r\n if (config.cancelToken) {\r\n config.cancelToken.throwIfRequested();\r\n }\r\n\r\n if (config.signal && config.signal.aborted) {\r\n throw new CanceledError(null, config);\r\n }\r\n}\r\n\r\n/**\r\n * Dispatch a request to the server using the configured adapter.\r\n *\r\n * @param {object} config The config that is to be used for the request\r\n *\r\n * @returns {Promise} The Promise to be fulfilled\r\n */\r\nexport default function dispatchRequest(config) {\r\n throwIfCancellationRequested(config);\r\n\r\n config.headers = AxiosHeaders.from(config.headers);\r\n\r\n // Transform request data\r\n config.data = transformData.call(\r\n config,\r\n config.transformRequest\r\n );\r\n\r\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\r\n config.headers.setContentType('application/x-www-form-urlencoded', false);\r\n }\r\n\r\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\r\n\r\n return adapter(config).then(function onAdapterResolution(response) {\r\n throwIfCancellationRequested(config);\r\n\r\n // Transform response data\r\n response.data = transformData.call(\r\n config,\r\n config.transformResponse,\r\n response\r\n );\r\n\r\n response.headers = AxiosHeaders.from(response.headers);\r\n\r\n return response;\r\n }, function onAdapterRejection(reason) {\r\n if (!isCancel(reason)) {\r\n throwIfCancellationRequested(config);\r\n\r\n // Transform response data\r\n if (reason && reason.response) {\r\n reason.response.data = transformData.call(\r\n config,\r\n config.transformResponse,\r\n reason.response\r\n );\r\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\r\n }\r\n }\r\n\r\n return Promise.reject(reason);\r\n });\r\n}\r\n", "export const VERSION = \"1.7.9\";", "'use strict';\r\n\r\nimport {VERSION} from '../env/data.js';\r\nimport AxiosError from '../core/AxiosError.js';\r\n\r\nconst validators = {};\r\n\r\n// eslint-disable-next-line func-names\r\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\r\n validators[type] = function validator(thing) {\r\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\r\n };\r\n});\r\n\r\nconst deprecatedWarnings = {};\r\n\r\n/**\r\n * Transitional option validator\r\n *\r\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\r\n * @param {string?} version - deprecated version / removed since version\r\n * @param {string?} message - some message with additional info\r\n *\r\n * @returns {function}\r\n */\r\nvalidators.transitional = function transitional(validator, version, message) {\r\n function formatMessage(opt, desc) {\r\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\r\n }\r\n\r\n // eslint-disable-next-line func-names\r\n return (value, opt, opts) => {\r\n if (validator === false) {\r\n throw new AxiosError(\r\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\r\n AxiosError.ERR_DEPRECATED\r\n );\r\n }\r\n\r\n if (version && !deprecatedWarnings[opt]) {\r\n deprecatedWarnings[opt] = true;\r\n // eslint-disable-next-line no-console\r\n console.warn(\r\n formatMessage(\r\n opt,\r\n ' has been deprecated since v' + version + ' and will be removed in the near future'\r\n )\r\n );\r\n }\r\n\r\n return validator ? validator(value, opt, opts) : true;\r\n };\r\n};\r\n\r\nvalidators.spelling = function spelling(correctSpelling) {\r\n return (value, opt) => {\r\n // eslint-disable-next-line no-console\r\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\r\n return true;\r\n }\r\n};\r\n\r\n/**\r\n * Assert object's properties type\r\n *\r\n * @param {object} options\r\n * @param {object} schema\r\n * @param {boolean?} allowUnknown\r\n *\r\n * @returns {object}\r\n */\r\n\r\nfunction assertOptions(options, schema, allowUnknown) {\r\n if (typeof options !== 'object') {\r\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\r\n }\r\n const keys = Object.keys(options);\r\n let i = keys.length;\r\n while (i-- > 0) {\r\n const opt = keys[i];\r\n const validator = schema[opt];\r\n if (validator) {\r\n const value = options[opt];\r\n const result = value === undefined || validator(value, opt, options);\r\n if (result !== true) {\r\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\r\n }\r\n continue;\r\n }\r\n if (allowUnknown !== true) {\r\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\r\n }\r\n }\r\n}\r\n\r\nexport default {\r\n assertOptions,\r\n validators\r\n};\r\n", "'use strict';\r\n\r\nimport utils from './../utils.js';\r\nimport buildURL from '../helpers/buildURL.js';\r\nimport InterceptorManager from './InterceptorManager.js';\r\nimport dispatchRequest from './dispatchRequest.js';\r\nimport mergeConfig from './mergeConfig.js';\r\nimport buildFullPath from './buildFullPath.js';\r\nimport validator from '../helpers/validator.js';\r\nimport AxiosHeaders from './AxiosHeaders.js';\r\n\r\nconst validators = validator.validators;\r\n\r\n/**\r\n * Create a new instance of Axios\r\n *\r\n * @param {Object} instanceConfig The default config for the instance\r\n *\r\n * @return {Axios} A new instance of Axios\r\n */\r\nclass Axios {\r\n constructor(instanceConfig) {\r\n this.defaults = instanceConfig;\r\n this.interceptors = {\r\n request: new InterceptorManager(),\r\n response: new InterceptorManager()\r\n };\r\n }\r\n\r\n /**\r\n * Dispatch a request\r\n *\r\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\r\n * @param {?Object} config\r\n *\r\n * @returns {Promise} The Promise to be fulfilled\r\n */\r\n async request(configOrUrl, config) {\r\n try {\r\n return await this._request(configOrUrl, config);\r\n } catch (err) {\r\n if (err instanceof Error) {\r\n let dummy = {};\r\n\r\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\r\n\r\n // slice off the Error: ... line\r\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\r\n try {\r\n if (!err.stack) {\r\n err.stack = stack;\r\n // match without the 2 top stack lines\r\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\r\n err.stack += '\\n' + stack\r\n }\r\n } catch (e) {\r\n // ignore the case where \"stack\" is an un-writable property\r\n }\r\n }\r\n\r\n throw err;\r\n }\r\n }\r\n\r\n _request(configOrUrl, config) {\r\n /*eslint no-param-reassign:0*/\r\n // Allow for axios('example/url'[, config]) a la fetch API\r\n if (typeof configOrUrl === 'string') {\r\n config = config || {};\r\n config.url = configOrUrl;\r\n } else {\r\n config = configOrUrl || {};\r\n }\r\n\r\n config = mergeConfig(this.defaults, config);\r\n\r\n const {transitional, paramsSerializer, headers} = config;\r\n\r\n if (transitional !== undefined) {\r\n validator.assertOptions(transitional, {\r\n silentJSONParsing: validators.transitional(validators.boolean),\r\n forcedJSONParsing: validators.transitional(validators.boolean),\r\n clarifyTimeoutError: validators.transitional(validators.boolean)\r\n }, false);\r\n }\r\n\r\n if (paramsSerializer != null) {\r\n if (utils.isFunction(paramsSerializer)) {\r\n config.paramsSerializer = {\r\n serialize: paramsSerializer\r\n }\r\n } else {\r\n validator.assertOptions(paramsSerializer, {\r\n encode: validators.function,\r\n serialize: validators.function\r\n }, true);\r\n }\r\n }\r\n\r\n validator.assertOptions(config, {\r\n baseUrl: validators.spelling('baseURL'),\r\n withXsrfToken: validators.spelling('withXSRFToken')\r\n }, true);\r\n\r\n // Set config.method\r\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\r\n\r\n // Flatten headers\r\n let contextHeaders = headers && utils.merge(\r\n headers.common,\r\n headers[config.method]\r\n );\r\n\r\n headers && utils.forEach(\r\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\r\n (method) => {\r\n delete headers[method];\r\n }\r\n );\r\n\r\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\r\n\r\n // filter out skipped interceptors\r\n const requestInterceptorChain = [];\r\n let synchronousRequestInterceptors = true;\r\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\r\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\r\n return;\r\n }\r\n\r\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\r\n\r\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\r\n });\r\n\r\n const responseInterceptorChain = [];\r\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\r\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\r\n });\r\n\r\n let promise;\r\n let i = 0;\r\n let len;\r\n\r\n if (!synchronousRequestInterceptors) {\r\n const chain = [dispatchRequest.bind(this), undefined];\r\n chain.unshift.apply(chain, requestInterceptorChain);\r\n chain.push.apply(chain, responseInterceptorChain);\r\n len = chain.length;\r\n\r\n promise = Promise.resolve(config);\r\n\r\n while (i < len) {\r\n promise = promise.then(chain[i++], chain[i++]);\r\n }\r\n\r\n return promise;\r\n }\r\n\r\n len = requestInterceptorChain.length;\r\n\r\n let newConfig = config;\r\n\r\n i = 0;\r\n\r\n while (i < len) {\r\n const onFulfilled = requestInterceptorChain[i++];\r\n const onRejected = requestInterceptorChain[i++];\r\n try {\r\n newConfig = onFulfilled(newConfig);\r\n } catch (error) {\r\n onRejected.call(this, error);\r\n break;\r\n }\r\n }\r\n\r\n try {\r\n promise = dispatchRequest.call(this, newConfig);\r\n } catch (error) {\r\n return Promise.reject(error);\r\n }\r\n\r\n i = 0;\r\n len = responseInterceptorChain.length;\r\n\r\n while (i < len) {\r\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\r\n }\r\n\r\n return promise;\r\n }\r\n\r\n getUri(config) {\r\n config = mergeConfig(this.defaults, config);\r\n const fullPath = buildFullPath(config.baseURL, config.url);\r\n return buildURL(fullPath, config.params, config.paramsSerializer);\r\n }\r\n}\r\n\r\n// Provide aliases for supported request methods\r\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\r\n /*eslint func-names:0*/\r\n Axios.prototype[method] = function(url, config) {\r\n return this.request(mergeConfig(config || {}, {\r\n method,\r\n url,\r\n data: (config || {}).data\r\n }));\r\n };\r\n});\r\n\r\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\r\n /*eslint func-names:0*/\r\n\r\n function generateHTTPMethod(isForm) {\r\n return function httpMethod(url, data, config) {\r\n return this.request(mergeConfig(config || {}, {\r\n method,\r\n headers: isForm ? {\r\n 'Content-Type': 'multipart/form-data'\r\n } : {},\r\n url,\r\n data\r\n }));\r\n };\r\n }\r\n\r\n Axios.prototype[method] = generateHTTPMethod();\r\n\r\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\r\n});\r\n\r\nexport default Axios;\r\n", "'use strict';\r\n\r\nimport CanceledError from './CanceledError.js';\r\n\r\n/**\r\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\r\n *\r\n * @param {Function} executor The executor function.\r\n *\r\n * @returns {CancelToken}\r\n */\r\nclass CancelToken {\r\n constructor(executor) {\r\n if (typeof executor !== 'function') {\r\n throw new TypeError('executor must be a function.');\r\n }\r\n\r\n let resolvePromise;\r\n\r\n this.promise = new Promise(function promiseExecutor(resolve) {\r\n resolvePromise = resolve;\r\n });\r\n\r\n const token = this;\r\n\r\n // eslint-disable-next-line func-names\r\n this.promise.then(cancel => {\r\n if (!token._listeners) return;\r\n\r\n let i = token._listeners.length;\r\n\r\n while (i-- > 0) {\r\n token._listeners[i](cancel);\r\n }\r\n token._listeners = null;\r\n });\r\n\r\n // eslint-disable-next-line func-names\r\n this.promise.then = onfulfilled => {\r\n let _resolve;\r\n // eslint-disable-next-line func-names\r\n const promise = new Promise(resolve => {\r\n token.subscribe(resolve);\r\n _resolve = resolve;\r\n }).then(onfulfilled);\r\n\r\n promise.cancel = function reject() {\r\n token.unsubscribe(_resolve);\r\n };\r\n\r\n return promise;\r\n };\r\n\r\n executor(function cancel(message, config, request) {\r\n if (token.reason) {\r\n // Cancellation has already been requested\r\n return;\r\n }\r\n\r\n token.reason = new CanceledError(message, config, request);\r\n resolvePromise(token.reason);\r\n });\r\n }\r\n\r\n /**\r\n * Throws a `CanceledError` if cancellation has been requested.\r\n */\r\n throwIfRequested() {\r\n if (this.reason) {\r\n throw this.reason;\r\n }\r\n }\r\n\r\n /**\r\n * Subscribe to the cancel signal\r\n */\r\n\r\n subscribe(listener) {\r\n if (this.reason) {\r\n listener(this.reason);\r\n return;\r\n }\r\n\r\n if (this._listeners) {\r\n this._listeners.push(listener);\r\n } else {\r\n this._listeners = [listener];\r\n }\r\n }\r\n\r\n /**\r\n * Unsubscribe from the cancel signal\r\n */\r\n\r\n unsubscribe(listener) {\r\n if (!this._listeners) {\r\n return;\r\n }\r\n const index = this._listeners.indexOf(listener);\r\n if (index !== -1) {\r\n this._listeners.splice(index, 1);\r\n }\r\n }\r\n\r\n toAbortSignal() {\r\n const controller = new AbortController();\r\n\r\n const abort = (err) => {\r\n controller.abort(err);\r\n };\r\n\r\n this.subscribe(abort);\r\n\r\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\r\n\r\n return controller.signal;\r\n }\r\n\r\n /**\r\n * Returns an object that contains a new `CancelToken` and a function that, when called,\r\n * cancels the `CancelToken`.\r\n */\r\n static source() {\r\n let cancel;\r\n const token = new CancelToken(function executor(c) {\r\n cancel = c;\r\n });\r\n return {\r\n token,\r\n cancel\r\n };\r\n }\r\n}\r\n\r\nexport default CancelToken;\r\n", "'use strict';\r\n\r\n/**\r\n * Syntactic sugar for invoking a function and expanding an array for arguments.\r\n *\r\n * Common use case would be to use `Function.prototype.apply`.\r\n *\r\n * ```js\r\n * function f(x, y, z) {}\r\n * var args = [1, 2, 3];\r\n * f.apply(null, args);\r\n * ```\r\n *\r\n * With `spread` this example can be re-written.\r\n *\r\n * ```js\r\n * spread(function(x, y, z) {})([1, 2, 3]);\r\n * ```\r\n *\r\n * @param {Function} callback\r\n *\r\n * @returns {Function}\r\n */\r\nexport default function spread(callback) {\r\n return function wrap(arr) {\r\n return callback.apply(null, arr);\r\n };\r\n}\r\n", "'use strict';\r\n\r\nimport utils from './../utils.js';\r\n\r\n/**\r\n * Determines whether the payload is an error thrown by Axios\r\n *\r\n * @param {*} payload The value to test\r\n *\r\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\r\n */\r\nexport default function isAxiosError(payload) {\r\n return utils.isObject(payload) && (payload.isAxiosError === true);\r\n}\r\n", "const HttpStatusCode = {\r\n Continue: 100,\r\n SwitchingProtocols: 101,\r\n Processing: 102,\r\n EarlyHints: 103,\r\n Ok: 200,\r\n Created: 201,\r\n Accepted: 202,\r\n NonAuthoritativeInformation: 203,\r\n NoContent: 204,\r\n ResetContent: 205,\r\n PartialContent: 206,\r\n MultiStatus: 207,\r\n AlreadyReported: 208,\r\n ImUsed: 226,\r\n MultipleChoices: 300,\r\n MovedPermanently: 301,\r\n Found: 302,\r\n SeeOther: 303,\r\n NotModified: 304,\r\n UseProxy: 305,\r\n Unused: 306,\r\n TemporaryRedirect: 307,\r\n PermanentRedirect: 308,\r\n BadRequest: 400,\r\n Unauthorized: 401,\r\n PaymentRequired: 402,\r\n Forbidden: 403,\r\n NotFound: 404,\r\n MethodNotAllowed: 405,\r\n NotAcceptable: 406,\r\n ProxyAuthenticationRequired: 407,\r\n RequestTimeout: 408,\r\n Conflict: 409,\r\n Gone: 410,\r\n LengthRequired: 411,\r\n PreconditionFailed: 412,\r\n PayloadTooLarge: 413,\r\n UriTooLong: 414,\r\n UnsupportedMediaType: 415,\r\n RangeNotSatisfiable: 416,\r\n ExpectationFailed: 417,\r\n ImATeapot: 418,\r\n MisdirectedRequest: 421,\r\n UnprocessableEntity: 422,\r\n Locked: 423,\r\n FailedDependency: 424,\r\n TooEarly: 425,\r\n UpgradeRequired: 426,\r\n PreconditionRequired: 428,\r\n TooManyRequests: 429,\r\n RequestHeaderFieldsTooLarge: 431,\r\n UnavailableForLegalReasons: 451,\r\n InternalServerError: 500,\r\n NotImplemented: 501,\r\n BadGateway: 502,\r\n ServiceUnavailable: 503,\r\n GatewayTimeout: 504,\r\n HttpVersionNotSupported: 505,\r\n VariantAlsoNegotiates: 506,\r\n InsufficientStorage: 507,\r\n LoopDetected: 508,\r\n NotExtended: 510,\r\n NetworkAuthenticationRequired: 511,\r\n};\r\n\r\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\r\n HttpStatusCode[value] = key;\r\n});\r\n\r\nexport default HttpStatusCode;\r\n", "'use strict';\r\n\r\nimport utils from './utils.js';\r\nimport bind from './helpers/bind.js';\r\nimport Axios from './core/Axios.js';\r\nimport mergeConfig from './core/mergeConfig.js';\r\nimport defaults from './defaults/index.js';\r\nimport formDataToJSON from './helpers/formDataToJSON.js';\r\nimport CanceledError from './cancel/CanceledError.js';\r\nimport CancelToken from './cancel/CancelToken.js';\r\nimport isCancel from './cancel/isCancel.js';\r\nimport {VERSION} from './env/data.js';\r\nimport toFormData from './helpers/toFormData.js';\r\nimport AxiosError from './core/AxiosError.js';\r\nimport spread from './helpers/spread.js';\r\nimport isAxiosError from './helpers/isAxiosError.js';\r\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\r\nimport adapters from './adapters/adapters.js';\r\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\r\n\r\n/**\r\n * Create an instance of Axios\r\n *\r\n * @param {Object} defaultConfig The default config for the instance\r\n *\r\n * @returns {Axios} A new instance of Axios\r\n */\r\nfunction createInstance(defaultConfig) {\r\n const context = new Axios(defaultConfig);\r\n const instance = bind(Axios.prototype.request, context);\r\n\r\n // Copy axios.prototype to instance\r\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\r\n\r\n // Copy context to instance\r\n utils.extend(instance, context, null, {allOwnKeys: true});\r\n\r\n // Factory for creating new instances\r\n instance.create = function create(instanceConfig) {\r\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\r\n };\r\n\r\n return instance;\r\n}\r\n\r\n// Create the default instance to be exported\r\nconst axios = createInstance(defaults);\r\n\r\n// Expose Axios class to allow class inheritance\r\naxios.Axios = Axios;\r\n\r\n// Expose Cancel & CancelToken\r\naxios.CanceledError = CanceledError;\r\naxios.CancelToken = CancelToken;\r\naxios.isCancel = isCancel;\r\naxios.VERSION = VERSION;\r\naxios.toFormData = toFormData;\r\n\r\n// Expose AxiosError class\r\naxios.AxiosError = AxiosError;\r\n\r\n// alias for CanceledError for backward compatibility\r\naxios.Cancel = axios.CanceledError;\r\n\r\n// Expose all/spread\r\naxios.all = function all(promises) {\r\n return Promise.all(promises);\r\n};\r\n\r\naxios.spread = spread;\r\n\r\n// Expose isAxiosError\r\naxios.isAxiosError = isAxiosError;\r\n\r\n// Expose mergeConfig\r\naxios.mergeConfig = mergeConfig;\r\n\r\naxios.AxiosHeaders = AxiosHeaders;\r\n\r\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\r\n\r\naxios.getAdapter = adapters.getAdapter;\r\n\r\naxios.HttpStatusCode = HttpStatusCode;\r\n\r\naxios.default = axios;\r\n\r\n// this module should only have a default export\r\nexport default axios\r\n", "import axios from './lib/axios.js';\r\n\r\n// This module is intended to unwrap Axios default export as named.\r\n// Keep top-level export same with static properties\r\n// so that it can keep same with es module or cjs\r\nconst {\r\n Axios,\r\n AxiosError,\r\n CanceledError,\r\n isCancel,\r\n CancelToken,\r\n VERSION,\r\n all,\r\n Cancel,\r\n isAxiosError,\r\n spread,\r\n toFormData,\r\n AxiosHeaders,\r\n HttpStatusCode,\r\n formToJSON,\r\n getAdapter,\r\n mergeConfig\r\n} = axios;\r\n\r\nexport {\r\n axios as default,\r\n Axios,\r\n AxiosError,\r\n CanceledError,\r\n isCancel,\r\n CancelToken,\r\n VERSION,\r\n all,\r\n Cancel,\r\n isAxiosError,\r\n spread,\r\n toFormData,\r\n AxiosHeaders,\r\n HttpStatusCode,\r\n formToJSON,\r\n getAdapter,\r\n mergeConfig\r\n}\r\n"], + "mappings": "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", + "names": ["prototype", "descriptors", "filter", "hasOwnProperty", "filter", "prototype", "toString", "encode", "isFormData", "isFileList", "transitional", "filter", "self", "prototype", "validateStatus", "origin", "merge", "transitional", "signal", "done", "res", "validators", "transitional", "Axios", "AxiosError", "CanceledError", "isCancel", "CancelToken", "VERSION", "all", "isAxiosError", "spread", "toFormData", "AxiosHeaders", "HttpStatusCode", "mergeConfig"] +} diff --git a/node_modules/.vite/deps/package.json b/node_modules/.vite/deps/package.json new file mode 100644 index 0000000..7c34deb --- /dev/null +++ b/node_modules/.vite/deps/package.json @@ -0,0 +1 @@ +{"type":"module"} \ No newline at end of file diff --git a/node_modules/.vite/deps/uniapp-axios-adapter.js b/node_modules/.vite/deps/uniapp-axios-adapter.js new file mode 100644 index 0000000..3354544 --- /dev/null +++ b/node_modules/.vite/deps/uniapp-axios-adapter.js @@ -0,0 +1,54 @@ +import { + axios_default +} from "./chunk-GGWXBEBB.js"; + +// ../../../../../Desktop/uni-fans/node_modules/uniapp-axios-adapter/lib/index.esm.js +var getResponse = (res, config) => { + const { statusCode, errMsg } = res; + const response = { + ...res, + status: statusCode, + statusText: errMsg, + config, + request: null + }; + return response; +}; +var uniAdapter = (config) => { + if (!uni) { + throw new Error("please use this in uni-app project!"); + } + return new Promise((resolve, reject) => { + const { baseURL, url, headers, data, params } = config; + const uniConfig = { + ...config, + url: baseURL + url, + header: headers + }; + if (data || params) { + try { + uniConfig.data = JSON.parse(data || params); + } catch (e) { + uniConfig.data = data || params; + } + } + uni.request({ + ...uniConfig, + success(res) { + const response = getResponse(res, config); + resolve(response); + }, + fail(res) { + const response = getResponse(res, config); + reject(response); + } + }); + }); +}; +var UniAdapter = uniAdapter; +axios_default.defaults.adapter = uniAdapter; +export { + UniAdapter, + axios_default as default +}; +//# sourceMappingURL=uniapp-axios-adapter.js.map diff --git a/node_modules/.vite/deps/uniapp-axios-adapter.js.map b/node_modules/.vite/deps/uniapp-axios-adapter.js.map new file mode 100644 index 0000000..fe17ec2 --- /dev/null +++ b/node_modules/.vite/deps/uniapp-axios-adapter.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../uniapp-axios-adapter/lib/index.esm.js"], + "sourcesContent": ["import axios from 'axios';\r\nexport { default } from 'axios';\r\n\r\nconst getResponse = (res, config) => {\r\n const { statusCode, errMsg } = res;\r\n const response = {\r\n ...res,\r\n status: statusCode,\r\n statusText: errMsg,\r\n config,\r\n request: null,\r\n };\r\n\r\n return response;\r\n};\r\n\r\nconst uniAdapter = (config) => {\r\n if (!uni) {\r\n throw new Error(\"please use this in uni-app project!\");\r\n }\r\n return new Promise((resolve, reject) => {\r\n const { baseURL, url, headers, data, params } = config;\r\n const uniConfig = {\r\n ...config,\r\n url: baseURL + url,\r\n header: headers,\r\n };\r\n\r\n if (data || params) {\r\n try {\r\n uniConfig.data = JSON.parse(data || params);\r\n } catch (e) {\r\n uniConfig.data = data || params;\r\n }\r\n }\r\n uni.request({\r\n ...uniConfig,\r\n success(res) {\r\n const response = getResponse(res, config);\r\n resolve(response);\r\n },\r\n fail(res) {\r\n const response = getResponse(res, config);\r\n reject(response);\r\n },\r\n });\r\n });\r\n};\r\n\r\nconst UniAdapter = uniAdapter;\r\n\r\naxios.defaults.adapter = uniAdapter;\r\n\r\nexport { UniAdapter };\r\n"], + "mappings": ";;;;;AAGA,IAAM,cAAc,CAAC,KAAK,WAAW;AACnC,QAAM,EAAE,YAAY,OAAO,IAAI;AAC/B,QAAM,WAAW;AAAA,IACf,GAAG;AAAA,IACH,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ;AAAA,IACA,SAAS;AAAA,EACX;AAEA,SAAO;AACT;AAEA,IAAM,aAAa,CAAC,WAAW;AAC7B,MAAI,CAAC,KAAK;AACR,UAAM,IAAI,MAAM,qCAAqC;AAAA,EACvD;AACA,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,UAAM,EAAE,SAAS,KAAK,SAAS,MAAM,OAAO,IAAI;AAChD,UAAM,YAAY;AAAA,MAChB,GAAG;AAAA,MACH,KAAK,UAAU;AAAA,MACf,QAAQ;AAAA,IACV;AAEA,QAAI,QAAQ,QAAQ;AAClB,UAAI;AACF,kBAAU,OAAO,KAAK,MAAM,QAAQ,MAAM;AAAA,MAC5C,SAAS,GAAP;AACA,kBAAU,OAAO,QAAQ;AAAA,MAC3B;AAAA,IACF;AACA,QAAI,QAAQ;AAAA,MACV,GAAG;AAAA,MACH,QAAQ,KAAK;AACX,cAAM,WAAW,YAAY,KAAK,MAAM;AACxC,gBAAQ,QAAQ;AAAA,MAClB;AAAA,MACA,KAAK,KAAK;AACR,cAAM,WAAW,YAAY,KAAK,MAAM;AACxC,eAAO,QAAQ;AAAA,MACjB;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH;AAEA,IAAM,aAAa;AAEnB,cAAM,SAAS,UAAU;", + "names": [] +} diff --git a/pages.json b/pages.json index 8c7b5b3..26bbb9f 100644 --- a/pages.json +++ b/pages.json @@ -62,11 +62,15 @@ "list": [ { "pagePath": "pages/index/index", - "text": "首页" + "text": "首页", + "iconPath": "static/home.png", + "selectedIconPath": "static/home-active.png" }, { "pagePath": "pages/my/index", - "text": "我的" + "text": "我的", + "iconPath": "static/profile.png", + "selectedIconPath": "static/profile-active.png" } ] } diff --git a/pages/index/index.vue b/pages/index/index.vue index d0e9e7d..c1be1dd 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -11,13 +11,19 @@ - 扫码租借 - 快速租借风扇 + + + 扫码租借 + + 快速租借风扇 - 扫码归还 - 轻松完成归还 + + + 扫码归还 + + 轻松完成归还 @@ -73,26 +79,26 @@ padding: 20rpx; .temp-banner { - height: 320rpx; - background: linear-gradient(135deg, #1976D2, #64B5F6); - border-radius: 24rpx; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - color: #fff; - box-shadow: 0 4rpx 20rpx rgba(25, 118, 210, 0.2); - - .banner-text { - font-size: 48rpx; - font-weight: bold; - margin-bottom: 16rpx; - } - - .banner-subtitle { - font-size: 28rpx; - opacity: 0.9; - } + height: 320rpx; + background: linear-gradient(135deg, rgba(25, 118, 210, 0.8), rgba(100, 181, 246, 0.8)); + border-radius: 24rpx; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + color: #fff; + box-shadow: 0 4rpx 20rpx rgba(25, 118, 210, 0.2); + + .banner-text { + font-size: 48rpx; + font-weight: bold; + margin-bottom: 16rpx; + } + + .banner-subtitle { + font-size: 28rpx; + opacity: 0.9; + } } } @@ -102,45 +108,61 @@ justify-content: space-between; .function-btn { - width: 320rpx; - height: 180rpx; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - background: #fff; - border-radius: 20rpx; - box-shadow: 0 4rpx 16rpx rgba(0,0,0,0.06); - transition: all 0.3s; - - &:active { - transform: scale(0.98); - } - - .btn-text { - font-size: 36rpx; - font-weight: 500; - margin-bottom: 8rpx; - } - - .btn-desc { - font-size: 24rpx; - color: #666; - } - - &.rent { - background: linear-gradient(135deg, #4CAF50, #81C784); - .btn-text, .btn-desc { - color: #fff; - } - } - - &.return { - background: linear-gradient(135deg, #FF9800, #FFB74D); - .btn-text, .btn-desc { - color: #fff; - } - } + width: 320rpx; + height: 180rpx; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: #fff; + border-radius: 20rpx; + box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.06); + transition: all 0.3s; + + &:active { + transform: scale(0.98); + } + + .btn-content { + display: flex; + align-items: center; + justify-content: center; + margin-bottom: 8rpx; + + .btn-icon { + width: 36rpx; + height: 36rpx; + margin-right: 8rpx; + } + + .btn-text { + font-size: 36rpx; + font-weight: 500; + } + } + + .btn-desc { + font-size: 24rpx; + color: #666; + } + + &.rent { + background: linear-gradient(135deg, #4CAF50, #81C784); + + .btn-text, + .btn-desc { + color: #fff; + } + } + + &.return { + background: linear-gradient(135deg, #FF9800, #FFB74D); + + .btn-text, + .btn-desc { + color: #fff; + } + } } } diff --git a/pages/my/index.vue b/pages/my/index.vue index 4afc5d4..ef7803c 100644 --- a/pages/my/index.vue +++ b/pages/my/index.vue @@ -29,7 +29,7 @@ - + 租借记录 @@ -40,7 +40,7 @@ 投诉与建议 @@ -51,7 +51,7 @@ - + 帮助中心 @@ -116,7 +116,7 @@ export default { height: 120rpx; border-radius: 60rpx; overflow: hidden; - background: #fff; + background: url('../../static/head.png') center/cover no-repeat; margin-right: 30rpx; border: 4rpx solid rgba(255,255,255,0.3); @@ -233,15 +233,15 @@ export default { .icon-wrap { width: 80rpx; height: 80rpx; - border-radius: 16rpx; margin-right: 20rpx; display: flex; align-items: center; justify-content: center; &.order { - background: #E3F2FD; - color: #1976D2; + background: url('../../static/jl.png') center/cover no-repeat; + width: 50rpx; + height: 50rpx; } &.deposit { @@ -250,13 +250,15 @@ export default { } &.feedback { - background: #E8F5E9; - color: #4CAF50; + background: url('../../static/complaint.png') center/cover no-repeat; + width: 50rpx; + height: 50rpx; } &.help { - background: #F3E5F5; - color: #9C27B0; + background: url('../../static/hlep.png') center/cover no-repeat; + width: 50rpx; + height: 50rpx; } .icon-placeholder { diff --git a/static/banner.jpg b/static/banner.jpg new file mode 100644 index 0000000..3c5c1c5 Binary files /dev/null and b/static/banner.jpg differ diff --git a/static/complaint.png b/static/complaint.png new file mode 100644 index 0000000..b4343a9 Binary files /dev/null and b/static/complaint.png differ diff --git a/static/head.png b/static/head.png new file mode 100644 index 0000000..4ebeb16 Binary files /dev/null and b/static/head.png differ diff --git a/static/hlep.png b/static/hlep.png new file mode 100644 index 0000000..4d9475a Binary files /dev/null and b/static/hlep.png differ diff --git a/static/home-active.png b/static/home-active.png new file mode 100644 index 0000000..2b9c61a Binary files /dev/null and b/static/home-active.png differ diff --git a/static/home.png b/static/home.png new file mode 100644 index 0000000..1cf632f Binary files /dev/null and b/static/home.png differ diff --git a/static/jl.png b/static/jl.png new file mode 100644 index 0000000..f6083bb Binary files /dev/null and b/static/jl.png differ diff --git a/static/profile-active.png b/static/profile-active.png new file mode 100644 index 0000000..d25d872 Binary files /dev/null and b/static/profile-active.png differ diff --git a/static/profile.png b/static/profile.png new file mode 100644 index 0000000..690ecd7 Binary files /dev/null and b/static/profile.png differ diff --git a/static/scan-icon.png b/static/scan-icon.png new file mode 100644 index 0000000..7fb452d Binary files /dev/null and b/static/scan-icon.png differ