(str2, options)
| 28430 | var isoSentinel = "utf8=%26%2310003%3B"; |
| 28431 | var charsetSentinel = "utf8=%E2%9C%93"; |
| 28432 | var parseValues = function parseQueryStringValues(str2, options) { |
| 28433 | var obj = { __proto__: null }; |
| 28434 | var cleanStr = options.ignoreQueryPrefix ? str2.replace(/^\?/, "") : str2; |
| 28435 | cleanStr = cleanStr.replace(/%5B/gi, "[").replace(/%5D/gi, "]"); |
| 28436 | var limit = options.parameterLimit === Infinity ? void 0 : options.parameterLimit; |
| 28437 | var parts = cleanStr.split(options.delimiter, limit); |
| 28438 | var skipIndex = -1; |
| 28439 | var i3; |
| 28440 | var charset = options.charset; |
| 28441 | if (options.charsetSentinel) { |
| 28442 | for (i3 = 0; i3 < parts.length; ++i3) { |
| 28443 | if (parts[i3].indexOf("utf8=") === 0) { |
| 28444 | if (parts[i3] === charsetSentinel) { |
| 28445 | charset = "utf-8"; |
| 28446 | } else if (parts[i3] === isoSentinel) { |
| 28447 | charset = "iso-8859-1"; |
| 28448 | } |
| 28449 | skipIndex = i3; |
| 28450 | i3 = parts.length; |
| 28451 | } |
| 28452 | } |
| 28453 | } |
| 28454 | for (i3 = 0; i3 < parts.length; ++i3) { |
| 28455 | if (i3 === skipIndex) { |
| 28456 | continue; |
| 28457 | } |
| 28458 | var part = parts[i3]; |
| 28459 | var bracketEqualsPos = part.indexOf("]="); |
| 28460 | var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1; |
| 28461 | var key, val; |
| 28462 | if (pos === -1) { |
| 28463 | key = options.decoder(part, defaults2.decoder, charset, "key"); |
| 28464 | val = options.strictNullHandling ? null : ""; |
| 28465 | } else { |
| 28466 | key = options.decoder(part.slice(0, pos), defaults2.decoder, charset, "key"); |
| 28467 | val = utils.maybeMap( |
| 28468 | parseArrayValue(part.slice(pos + 1), options), |
| 28469 | function(encodedVal) { |
| 28470 | return options.decoder(encodedVal, defaults2.decoder, charset, "value"); |
| 28471 | } |
| 28472 | ); |
| 28473 | } |
| 28474 | if (val && options.interpretNumericEntities && charset === "iso-8859-1") { |
| 28475 | val = interpretNumericEntities(val); |
| 28476 | } |
| 28477 | if (part.indexOf("[]=") > -1) { |
| 28478 | val = isArray2(val) ? [val] : val; |
| 28479 | } |
| 28480 | var existing = has.call(obj, key); |
| 28481 | if (existing && options.duplicates === "combine") { |
| 28482 | obj[key] = utils.combine(obj[key], val); |
| 28483 | } else if (!existing || options.duplicates === "last") { |
| 28484 | obj[key] = val; |
| 28485 | } |
| 28486 | } |
| 28487 | return obj; |
| 28488 | }; |
| 28489 | var parseObject = function(chain, val, options, valuesParsed) { |
no test coverage detected
searching dependent graphs…