UNPKG

cleaners

Version:

Cleans & validates untrusted data, with TypeScript & Flow support

20 lines (17 loc) 535 B
import { showValue } from '../showValue.js' export function asValue(...values) { return function asValue(raw) { for (let i = 0; i < values.length; ++i) { if (raw === values[i]) return raw } // Create a fancy error message: let message = 'Expected ' if (values.length !== 1) message += 'one of: ' for (let i = 0; i < values.length; ++i) { if (i > 0) message += ' | ' message += JSON.stringify(values[i]) } message += ', got ' + showValue(raw) throw new TypeError(message) } }