UNPKG

raid-addons

Version:

Add-ons functions for use with Raid

66 lines (47 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.check = exports.checkTrue = exports.checkFn = exports.checkRegex = exports.checkString = exports.isFn = exports.isRegex = exports.isString = exports.isDefined = void 0; var isDefined = function isDefined(value) { return value !== undefined; }; exports.isDefined = isDefined; var isString = function isString(v) { return typeof v === 'string'; }; exports.isString = isString; var isRegex = function isRegex(v) { return v instanceof RegExp; }; exports.isRegex = isRegex; var isFn = function isFn(v) { return typeof v === 'function'; }; exports.isFn = isFn; var checkString = function checkString(str) { return function (type) { return str === type; }; }; exports.checkString = checkString; var checkRegex = function checkRegex(re) { return function (type) { return re.test(type); }; }; exports.checkRegex = checkRegex; var checkFn = function checkFn(fn) { return function () { return fn.apply(void 0, arguments); }; }; exports.checkFn = checkFn; var checkTrue = function checkTrue() { return true; }; exports.checkTrue = checkTrue; var check = function check(predicate) { return isString(predicate) && checkString(predicate) || isRegex(predicate) && checkRegex(predicate) || isFn(predicate) && checkFn(predicate) || checkTrue; }; exports.check = check;