@philiprehberger/query-string-ts
v0.1.4
Published
Type-safe URL query string parsing and building
Readme
@philiprehberger/query-string-ts
Type-safe URL query string parsing and building
Installation
npm install @philiprehberger/query-string-tsUsage
import { parseQuery, buildQuery, appendQuery } from '@philiprehberger/query-string-ts';
const params = parseQuery('?page=2&tags=a&tags=b', {
page: 'number',
tags: 'string[]',
});
// { page: 2, tags: ['a', 'b'] } — typed
buildQuery({ page: 2, tags: ['a', 'b'] }); // "page=2&tags=a&tags=b"
appendQuery('https://example.com?a=1', { b: '2' }); // "https://example.com?a=1&b=2"Array Formats
buildQuery({ tags: ['a', 'b'] }, { arrayFormat: 'comma' }); // "tags=a,b"
buildQuery({ tags: ['a', 'b'] }, { arrayFormat: 'brackets' }); // "tags[]=a&tags[]=b"API
| Function | Description |
|----------|-------------|
| parseQuery(search, schema?) | Parse with optional type coercion |
| buildQuery(params, options?) | Serialize object to query string |
| appendQuery(url, params) | Append params to existing URL |
| pickQuery(search, keys) | Extract subset of params |
| omitQuery(search, keys) | Remove params by key |
Development
npm install
npm run build
npm testSupport
If you find this project useful:
