UNPKG

shelving

Version:

Toolkit for using data in JavaScript.

47 lines (46 loc) 1.51 kB
import { RequiredError } from "../error/RequiredError.js"; /** Is a value a boolean? */ export function isBoolean(value) { return typeof value === "boolean"; } /** Is a value true? */ export function isTrue(value) { return value === true; } /** Is a value false? */ export function isFalse(value) { return value === false; } /** Is a value truthy? */ export function isTruthy(value) { return !!value; } /** Is a value falsey? */ export function isFalsey(value) { return !value; } /** Assert that a value is a boolean. */ export function assertBoolean(value, caller = assertBoolean) { if (typeof value !== "boolean") throw new RequiredError("Must be boolean", { received: value, caller }); } /** Assert that a value is true. */ export function assertTrue(value, caller = assertTrue) { if (value !== true) throw new RequiredError("Must be true", { received: value, caller }); } /** Assert that a value is false. */ export function assertFalse(value, caller = assertFalse) { if (value !== false) throw new RequiredError("Must be false", { received: value, caller }); } /** Assert that a value is truthy. */ export function assertTruthy(value, caller = assertTruthy) { if (!value) throw new RequiredError("Must be truthy", { received: value, caller }); } /** Assert that a value is falsy. */ export function assertFalsy(value, caller = assertFalsy) { if (value) throw new RequiredError("Must be falsy", { received: value, caller }); }