{"version":3,"file":"7563-0da72.js","mappings":"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","sources":["/home/vsts/work/1/s/node_modules/decode-uri-component/index.js","/home/vsts/work/1/s/node_modules/filter-obj/index.js","/home/vsts/work/1/s/node_modules/query-string/index.js","/home/vsts/work/1/s/node_modules/split-on-first/index.js","/home/vsts/work/1/s/node_modules/strict-uri-encode/index.js"],"sourcesContent":["'use strict';\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp(token, 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn decodeURIComponent(components.join(''));\n\t} catch (err) {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tvar left = components.slice(0, split);\n\tvar right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch (err) {\n\t\tvar tokens = input.match(singleMatcher);\n\n\t\tfor (var i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher);\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tvar replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD'\n\t};\n\n\tvar match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch (err) {\n\t\t\tvar result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tvar entries = Object.keys(replaceMap);\n\n\tfor (var i = 0; i < entries.length; i++) {\n\t\t// Replace all decoded components\n\t\tvar key = entries[i];\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nmodule.exports = function (encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\tencodedURI = encodedURI.replace(/\\+/g, ' ');\n\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch (err) {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n};\n","'use strict';\nmodule.exports = function (obj, predicate) {\n\tvar ret = {};\n\tvar keys = Object.keys(obj);\n\tvar isArr = Array.isArray(predicate);\n\n\tfor (var i = 0; i < keys.length; i++) {\n\t\tvar key = keys[i];\n\t\tvar val = obj[key];\n\n\t\tif (isArr ? predicate.indexOf(key) !== -1 : predicate(key, val, obj)) {\n\t\t\tret[key] = val;\n\t\t}\n\t}\n\n\treturn ret;\n};\n","'use strict';\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\nconst filterObject = require('filter-obj');\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[', index, ']'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')\n\t\t\t\t];\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[]'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (value === null || value === undefined || value.length === 0) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, encode(key, options)];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nfunction parse(query, options) {\n\toptions = Object.assign({\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst ret = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn ret;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn ret;\n\t}\n\n\tfor (const param of query.split('&')) {\n\t\tif (param === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : ['comma', 'separator'].includes(options.arrayFormat) ? value : decode(value, options);\n\t\tformatter(decode(key, options), value, ret);\n\t}\n\n\tfor (const key of Object.keys(ret)) {\n\t\tconst value = ret[key];\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const k of Object.keys(value)) {\n\t\t\t\tvalue[k] = parseValue(value[k], options);\n\t\t\t}\n\t\t} else {\n\t\t\tret[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn ret;\n\t}\n\n\treturn (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = ret[key];\n\t\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexports.extract = extract;\nexports.parse = parse;\n\nexports.stringify = (object, options) => {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ','\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key])) ||\n\t\t(options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const key of Object.keys(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = object[key];\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n};\n\nexports.parseUrl = (url, options) => {\n\toptions = Object.assign({\n\t\tdecode: true\n\t}, options);\n\n\tconst [url_, hash] = splitOnFirst(url, '#');\n\n\treturn Object.assign(\n\t\t{\n\t\t\turl: url_.split('?')[0] || '',\n\t\t\tquery: parse(extract(url), options)\n\t\t},\n\t\toptions && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}\n\t);\n};\n\nexports.stringifyUrl = (object, options) => {\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true\n\t}, options);\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = exports.extract(object.url);\n\tconst parsedQueryFromUrl = exports.parse(queryFromUrl, {sort: false});\n\n\tconst query = Object.assign(parsedQueryFromUrl, object.query);\n\tlet queryString = exports.stringify(query, options);\n\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\tlet hash = getHash(object.url);\n\tif (object.fragmentIdentifier) {\n\t\thash = `#${encode(object.fragmentIdentifier, options)}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n};\n\nexports.pick = (input, filter, options) => {\n\toptions = Object.assign({\n\t\tparseFragmentIdentifier: true\n\t}, options);\n\n\tconst {url, query, fragmentIdentifier} = exports.parseUrl(input, options);\n\treturn exports.stringifyUrl({\n\t\turl,\n\t\tquery: filterObject(query, filter),\n\t\tfragmentIdentifier\n\t}, options);\n};\n\nexports.exclude = (input, filter, options) => {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn exports.pick(input, exclusionFilter, options);\n};\n","'use strict';\n\nmodule.exports = (string, separator) => {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (separator === '') {\n\t\treturn [string];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [string];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n};\n","'use strict';\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n"],"names":["token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","err","length","left","slice","right","Array","prototype","concat","call","decode","input","tokens","match","i","module","exports","encodedURI","TypeError","replace","replaceMap","exec","result","entries","Object","keys","key","customDecodeURIComponent","obj","predicate","ret","isArr","isArray","val","indexOf","strictUriEncode","decodeComponent","splitOnFirst","filterObject","validateArrayFormatSeparator","value","encode","options","strict","encodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","extract","queryStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","parse","query","assign","arrayFormat","arrayFormatSeparator","formatter","accumulator","undefined","includes","isEncodedArray","newValue","item","parserForArrayFormat","create","param","k","reduce","Boolean","stringify","object","shouldFilter","skipNull","skipEmptyString","index","encoderForArrayFormat","objectCopy","filter","x","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryFromUrl","parsedQueryFromUrl","queryString","getHash","pick","exclude","exclusionFilter","string","separator","separatorIndex","str","charCodeAt","toString","toUpperCase"],"sourceRoot":""}