2466e67c2e692902ae2af0596080acd3.json
18.3 KB
{"ast":null,"code":"'use strict';\n\nvar has = Object.prototype.hasOwnProperty;\n\nvar hexTable = function () {\n var array = [];\n\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}();\n\nvar compactQueue = function compactQueue(queue) {\n var obj;\n\n while (queue.length) {\n var item = queue.pop();\n obj = item.obj[item.prop];\n\n if (Array.isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n\n return obj;\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (Array.isArray(target)) {\n target.push(source);\n } else if (typeof target === 'object') {\n if (options.plainObjects || options.allowPrototypes || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n\n if (Array.isArray(target) && !Array.isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (Array.isArray(target) && Array.isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n if (target[i] && typeof target[i] === 'object') {\n target[i] = merge(target[i], item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str) {\n try {\n return decodeURIComponent(str.replace(/\\+/g, ' '));\n } catch (e) {\n return str;\n }\n};\n\nvar encode = function encode(str) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = typeof str === 'string' ? str : String(str);\n var out = '';\n\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || c >= 0x30 && c <= 0x39 // 0-9\n || c >= 0x41 && c <= 0x5A // a-z\n || c >= 0x61 && c <= 0x7A // A-Z\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | c >> 6] + hexTable[0x80 | c & 0x3F]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | c >> 12] + hexTable[0x80 | c >> 6 & 0x3F] + hexTable[0x80 | c & 0x3F]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + ((c & 0x3FF) << 10 | string.charCodeAt(i) & 0x3FF);\n out += hexTable[0xF0 | c >> 18] + hexTable[0x80 | c >> 12 & 0x3F] + hexTable[0x80 | c >> 6 & 0x3F] + hexTable[0x80 | c & 0x3F];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{\n obj: {\n o: value\n },\n prop: 'o'\n }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n var keys = Object.keys(obj);\n\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({\n obj: obj,\n prop: key\n });\n refs.push(val);\n }\n }\n }\n\n return compactQueue(queue);\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (obj === null || typeof obj === 'undefined') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n merge: merge\n};","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/qs/lib/utils.js"],"names":["has","Object","prototype","hasOwnProperty","hexTable","array","i","push","toString","toUpperCase","compactQueue","queue","obj","length","item","pop","prop","Array","isArray","compacted","j","arrayToObject","source","options","plainObjects","create","merge","target","allowPrototypes","call","concat","mergeTarget","forEach","keys","reduce","acc","key","value","assign","assignSingleSource","decode","str","decodeURIComponent","replace","e","encode","string","String","out","c","charCodeAt","charAt","compact","o","refs","val","indexOf","isRegExp","isBuffer","constructor","module","exports"],"mappings":"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","sourcesContent":["'use strict';\n\nvar has = Object.prototype.hasOwnProperty;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n var obj;\n\n while (queue.length) {\n var item = queue.pop();\n obj = item.obj[item.prop];\n\n if (Array.isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n\n return obj;\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (Array.isArray(target)) {\n target.push(source);\n } else if (typeof target === 'object') {\n if (options.plainObjects || options.allowPrototypes || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (Array.isArray(target) && !Array.isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (Array.isArray(target) && Array.isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n if (target[i] && typeof target[i] === 'object') {\n target[i] = merge(target[i], item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str) {\n try {\n return decodeURIComponent(str.replace(/\\+/g, ' '));\n } catch (e) {\n return str;\n }\n};\n\nvar encode = function encode(str) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = typeof str === 'string' ? str : String(str);\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n return compactQueue(queue);\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (obj === null || typeof obj === 'undefined') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n merge: merge\n};\n"]},"metadata":{},"sourceType":"script"}