advanced-search-params
Version:
[](https://www.npmjs.com/package/advanced-search-params) [](https://www.jsdelivr.com/package/npm/a
2 lines • 906 B
JavaScript
function t(e={}){return {parse:r=>{let a=Number(r);return isNaN(a)?e.defaultValue:a},serialize:r=>r.toString(),validate:e.validate}}function n(e={}){return {parse:r=>{let a=new Date(r);return isNaN(a.getTime())?e.defaultValue:a},serialize:r=>r.toISOString(),validate:e.validate}}function i(e,r={}){return {parse:a=>e.includes(a)?a:r.defaultValue,serialize:a=>a,validate:r.validate??(a=>e.includes(a))}}function u(e={}){return {parse:r=>{let a=Number(r);return isNaN(a)?e.defaultValue:e.min!==void 0&&a<e.min?e.min:e.max!==void 0&&a>e.max?e.max:a},serialize:r=>r.toString(),validate:e.validate}}function s(e={}){return {parse:r=>r==="true"?!0:r==="false"?!1:e.defaultValue,serialize:r=>r.toString(),validate:e.validate}}export{s as parseAsBoolean,n as parseAsIsoDateTime,u as parseAsNumber,i as parseAsStringEnum,t as parseAsTimestamp};//# sourceMappingURL=parsers.js.map
//# sourceMappingURL=parsers.js.map