UNPKG

@tdb/util

Version:
43 lines 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var value_1 = require("../value"); function toObject(queryString) { var EMPTY = {}; if (!queryString) { return EMPTY; } if (!queryString.trim()) { return EMPTY; } var text = queryString.trim(); text = !text.startsWith('?') ? text : text.substring(1); text = !text.startsWith('#') ? text : text.substring(1); var pairs = text.split('&'); var obj = {}; var pair; for (var i in pairs) { if (pairs[i] === '') { continue; } pair = pairs[i].split('='); var key = decodeURIComponent(pair[0]); var value = pair[1] ? decodeURIComponent(pair[1]) : undefined; obj[key] = value; } return obj; } exports.toObject = toObject; function valueAsFlag(value) { return value === undefined ? false : value === '' ? true : value_1.value.toBool(value, false); } exports.valueAsFlag = valueAsFlag; function isFlag(keys, query) { keys = keys ? (Array.isArray(keys) ? keys : [keys]) : []; return query ? keys.some(function (key) { return valueAsFlag(query[key]); }) : false; } exports.isFlag = isFlag; //# sourceMappingURL=queryString.js.map