UNPKG

@newdash/newdash

Version:

javascript/typescript utility library

110 lines (109 loc) 2.43 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.logic = exports.asyncAnyTrue = exports.anyTrue = exports.asyncAllTrue = exports.allTrue = void 0; const isFunction_1 = __importDefault(require("./isFunction")); /** * (sync) allTrue * * @since 5.15.0 * @param expressions * @returns all expressions return true */ function allTrue(...expressions) { for (const expression of expressions) { let b; if ((0, isFunction_1.default)(expression)) { b = expression(); } else { b = expression; } if (b === false) { return false; } } return true; } exports.allTrue = allTrue; /** * * (async) allTrue * @since 5.15.0 * @param expressions * @returns all expressions return true */ async function asyncAllTrue(...expressions) { for (const expression of expressions) { let b; if ((0, isFunction_1.default)(expression)) { b = expression(); if (b instanceof Promise) { b = await b; } } else { b = expression; } if (b === false) { return false; } } return true; } exports.asyncAllTrue = asyncAllTrue; /** * (sync) anyTrue * * @since 5.15.0 * @param expressions */ function anyTrue(...expressions) { for (const expression of expressions) { let b; if ((0, isFunction_1.default)(expression)) { b = expression(); } else { b = expression; } if (b) { return true; } } return false; } exports.anyTrue = anyTrue; /** * (async) anyTrue * * @since 5.15.0 * @param expressions */ async function asyncAnyTrue(...expressions) { for (const expression of expressions) { let b; if ((0, isFunction_1.default)(expression)) { b = expression(); if (b instanceof Promise) { b = await b; } } else { b = expression; } if (b) { return true; } } return false; } exports.asyncAnyTrue = asyncAnyTrue; exports.logic = { asyncAllTrue, asyncAnyTrue, allTrue, anyTrue };