You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
24 KiB
1 lines
24 KiB
{"ast":null,"code":"'use strict';\n\nvar bind = require('./helpers/bind');\n/*global toString:true*/\n// utils is a library of generic helper functions non-specific to axios\n\n\nvar toString = Object.prototype.toString;\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\n\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\n\n\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\n\n\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\n\n\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\n\n\nfunction isFormData(val) {\n return typeof FormData !== 'undefined' && val instanceof FormData;\n}\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\n\n\nfunction isArrayBufferView(val) {\n var result;\n\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && val.buffer instanceof ArrayBuffer;\n }\n\n return result;\n}\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\n\n\nfunction isString(val) {\n return typeof val === 'string';\n}\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\n\n\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\n\n\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\n\n\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\n\n\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\n\n\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\n\n\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\n\n\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\n\n\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\n\n\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\n\n\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\n\n\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n } // Force an array if not already something iterable\n\n\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\n\n\nfunction merge()\n/* obj1, obj2, obj3, ... */\n{\n var result = {};\n\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n\n return result;\n}\n/**\n * Function equal to merge with the difference being that no reference\n * to original objects is kept.\n *\n * @see merge\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\n\n\nfunction deepMerge()\n/* obj1, obj2, obj3, ... */\n{\n var result = {};\n\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (typeof val === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n\n return result;\n}\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\n\n\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};","map":{"version":3,"sources":["/home/sigonasr2/Please-Contain-Yourself/ecommerce_docker/frontend_server/node_modules/axios/lib/utils.js"],"names":["bind","require","toString","Object","prototype","isArray","val","call","isUndefined","isBuffer","constructor","isArrayBuffer","isFormData","FormData","isArrayBufferView","result","ArrayBuffer","isView","buffer","isString","isNumber","isObject","isDate","isFile","isBlob","isFunction","isStream","pipe","isURLSearchParams","URLSearchParams","trim","str","replace","isStandardBrowserEnv","navigator","product","window","document","forEach","obj","fn","i","l","length","key","hasOwnProperty","merge","assignValue","arguments","deepMerge","extend","a","b","thisArg","module","exports"],"mappings":"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","sourcesContent":["'use strict';\n\nvar bind = require('./helpers/bind');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Function equal to merge with the difference being that no reference\n * to original objects is kept.\n *\n * @see merge\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction deepMerge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (typeof val === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};\n"]},"metadata":{},"sourceType":"script"} |