query-params-store
Version:
[](https://travis-ci.org/IliaIdakiev/query-param-store)
24 lines • 2.75 kB
JavaScript
import { compressToEncodedURIComponent, decompressFromEncodedURIComponent } from 'lz-string';
export function binaryToNumber(...args) {
if (args.length === 1 && Array.isArray(args[0])) {
args = args[0];
}
return args.reduce((acc, curr, index) => {
if (!curr) {
return acc;
}
return acc + Math.pow(2, index);
}, 0);
}
export function compress(queryParams) {
return compressToEncodedURIComponent(JSON.stringify(queryParams));
}
export function decompress(compression) {
try {
return JSON.parse(decompressFromEncodedURIComponent(compression));
}
catch {
return null;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9xdWVyeS1wYXJhbXMtc3RvcmUvc3JjL2xpYi91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0YsTUFBTSxVQUFVLGNBQWMsQ0FBQyxHQUFHLElBQVc7SUFDM0MsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUFFO0lBQ3BFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDdEMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUFFLE9BQU8sR0FBRyxDQUFDO1NBQUU7UUFDMUIsT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRLENBQUMsV0FBbUI7SUFDMUMsT0FBTyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7QUFDcEUsQ0FBQztBQUVELE1BQU0sVUFBVSxVQUFVLENBQUMsV0FBbUI7SUFDNUMsSUFBSTtRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxXQUFXLENBQUUsQ0FBQyxDQUFDO0tBQ3BFO0lBQUMsTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDO0tBQ2I7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHJlc3NUb0VuY29kZWRVUklDb21wb25lbnQsIGRlY29tcHJlc3NGcm9tRW5jb2RlZFVSSUNvbXBvbmVudCB9IGZyb20gJ2x6LXN0cmluZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBiaW5hcnlUb051bWJlciguLi5hcmdzOiBhbnlbXSkge1xuICBpZiAoYXJncy5sZW5ndGggPT09IDEgJiYgQXJyYXkuaXNBcnJheShhcmdzWzBdKSkgeyBhcmdzID0gYXJnc1swXTsgfVxuICByZXR1cm4gYXJncy5yZWR1Y2UoKGFjYywgY3VyciwgaW5kZXgpID0+IHtcbiAgICBpZiAoIWN1cnIpIHsgcmV0dXJuIGFjYzsgfVxuICAgIHJldHVybiBhY2MgKyBNYXRoLnBvdygyLCBpbmRleCk7XG4gIH0sIDApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcHJlc3MocXVlcnlQYXJhbXM6IG9iamVjdCkge1xuICByZXR1cm4gY29tcHJlc3NUb0VuY29kZWRVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkocXVlcnlQYXJhbXMpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29tcHJlc3MoY29tcHJlc3Npb246IHN0cmluZykge1xuICB0cnkge1xuICAgIHJldHVybiBKU09OLnBhcnNlKGRlY29tcHJlc3NGcm9tRW5jb2RlZFVSSUNvbXBvbmVudChjb21wcmVzc2lvbikhKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdfQ==