UNPKG

@whook/whook

Version:

Build strong and efficient REST web services.

31 lines 909 B
import { YError } from 'yerror'; export const BASE_10 = 10; export const DEFAULT_COERCION_OPTIONS = { strictlyReentrant: true, }; export function parseNumber(options, str) { const value = parseFloat(str); if (options.strictlyReentrant && value.toString(BASE_10) !== str) { throw new YError('E_NON_REENTRANT_NUMBER', [str, value.toString(BASE_10)]); } return value; } export function parseBoolean(str) { if ('true' === str) { return true; } else if ('false' === str) { return false; } throw new YError('E_BAD_BOOLEAN', [str]); } export function parseArrayOfStrings(str) { return str.split(','); } export function parseArrayOfNumbers(options, str) { return str.split(',').map(parseNumber.bind(null, options)); } export function parseArrayOfBooleans(str) { return str.split(',').map(parseBoolean); } //# sourceMappingURL=coercion.js.map