Skip to content

sindresorhus/yn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b0f6903 · Jul 8, 2022

History

39 Commits
Jul 8, 2022
May 12, 2017
Dec 8, 2018
Dec 8, 2018
Dec 8, 2018
Aug 14, 2021
Sep 7, 2021
Aug 14, 2021
Aug 14, 2021
Aug 14, 2021
Aug 14, 2021
Aug 14, 2021
Aug 14, 2021

Repository files navigation

yn

Parse yes/no like values

Useful for validating answers of a CLI prompt.


The following case-insensitive values are recognized:

'y', 'yes', 'true', true, '1', 1, 'n', 'no', 'false', false, '0', 0, 'on', 'off'

Enable lenient mode to gracefully handle typos.

Install

$ npm install yn

Usage

import yn from 'yn';

yn('y');
//=> true

yn('NO');
//=> false

yn(true);
//=> true

yn('abomasum');
//=> undefined

yn('abomasum', {default: false});
//=> false

yn('mo', {lenient: true});
//=> false

Unrecognized values return undefined.

API

yn(input, options?)

input

Type: unknown

The value that should be converted.

options

Type: object

lenient

Type: boolean
Default: false

Use a key distance-based score to leniently accept typos of yes and no.

default

Type: boolean
Default: undefined

The default value if no match was found.