@3fv/guard
Version:
TypeScript guard suite
65 lines • 2.28 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.PrimitiveProducers = exports.isFunction = void 0;
exports.isNil = isNil;
exports.isDefined = isDefined;
exports.isObject = isObject;
exports.isPromise = isPromise;
exports.isObjectType = isObjectType;
exports.isString = isString;
exports.isNumber = isNumber;
exports.isSymbol = isSymbol;
exports.isBoolean = isBoolean;
exports.isDate = isDate;
exports.isPrimitiveProducer = isPrimitiveProducer;
exports.isPrimitive = isPrimitive;
const isNil_js_1 = __importDefault(require("lodash/isNil.js"));
const isObject_js_1 = __importDefault(require("lodash/isObject.js"));
const isString_js_1 = __importDefault(require("lodash/isString.js"));
const isNumber_js_1 = __importDefault(require("lodash/isNumber.js"));
const isFunction_js_1 = __importDefault(require("lodash/isFunction.js"));
const applyTypeGuardExtras_js_1 = require("../applyTypeGuardExtras.js");
function isNil(o) {
return (0, isNil_js_1.default)(o);
}
function isDefined(o) {
return !isNil(o);
}
function isObject(o) {
return !isNil(o) && (0, isObject_js_1.default)(o);
}
function isPromise(o) {
return !isNil(o) && isObject(o) && (o instanceof Promise || (0, exports.isFunction)(o.then));
}
function isObjectType(o, type) {
return !isNil(o) && (o instanceof type || o.$$clazz === type.name);
}
function isString(o) {
return !isNil(o) && (0, isString_js_1.default)(o);
}
function isNumber(o) {
return !isNil(o) && (0, isNumber_js_1.default)(o) && !isNaN(o);
}
exports.isFunction = (0, applyTypeGuardExtras_js_1.applyTypeGuardExtras)(function isFunction(o) {
return !isNil(o) && (0, isFunction_js_1.default)(o);
});
function isSymbol(o) {
return !isNil(o) && typeof o === 'symbol';
}
function isBoolean(o) {
return typeof o === "boolean";
}
function isDate(o) {
return o instanceof Date;
}
exports.PrimitiveProducers = Array(String, Number, Boolean);
function isPrimitiveProducer(o) {
return exports.PrimitiveProducers.includes(o);
}
function isPrimitive(o) {
return isBoolean(o) || isString(o) || isNumber(o);
}
//# sourceMappingURL=primitive.js.map