28 lines
842 B
JavaScript
28 lines
842 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.parseQueryString = void 0;
|
|
function parseQueryString(querystring) {
|
|
const query = {};
|
|
querystring = querystring.replace(/^\?/, "");
|
|
if (querystring) {
|
|
for (const pair of querystring.split("&")) {
|
|
let [key, value = null] = pair.split("=");
|
|
key = decodeURIComponent(key);
|
|
if (value) {
|
|
value = decodeURIComponent(value);
|
|
}
|
|
if (!(key in query)) {
|
|
query[key] = value;
|
|
}
|
|
else if (Array.isArray(query[key])) {
|
|
query[key].push(value);
|
|
}
|
|
else {
|
|
query[key] = [query[key], value];
|
|
}
|
|
}
|
|
}
|
|
return query;
|
|
}
|
|
exports.parseQueryString = parseQueryString;
|