'use strict'; const lenient = require('./lenient'); const yn = (input, options) => { input = String(input).trim(); options = Object.assign({ lenient: false, default: null }, options); if (options.default !== null && typeof options.default !== 'boolean') { throw new TypeError(`Expected the \`default\` option to be of type \`boolean\`, got \`${typeof options.default}\``); } if (/^(?:y|yes|true|1)$/i.test(input)) { return true; } if (/^(?:n|no|false|0)$/i.test(input)) { return false; } if (options.lenient === true) { return lenient(input, options); } return options.default; }; module.exports = yn; // TODO: Remove this for the next major release module.exports.default = yn;