UNPKG

@thisismanta/pessimist

Version:

This is a Node.js library that helps derive `process.argv` array into a flexible, value-strict, TypeScript-friendly object.

23 lines (22 loc) 600 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseBoolean = parseBoolean; const FalsyExpression = /^(false|0|n|no|off)$/i; function parseBoolean(value, defaultValue = false) { if (value === undefined) { return defaultValue; } if (value === null || value === '') { return false; } if (typeof value === 'boolean') { return value; } if (typeof value === 'number' && isNaN(value)) { return false; } if (FalsyExpression.test(String(value).trim())) { return false; } return true; }