UNPKG

hu

Version:

Functional utility helper library

112 lines 3.74 kB
{ var _ns_ = { id: 'hu.lib.macros', doc: void 0 }; var hu_lib_function = require('./function'); var curry = hu_lib_function.curry; var compose = hu_lib_function.compose; var hu_lib_type = require('./type'); var isString = hu_lib_type.isString; var isArray = hu_lib_type.isArray; var isNumber = hu_lib_type.isNumber; var isUndef = hu_lib_type.isUndef; var isObject = hu_lib_type.isObject; } void 0; void 0; void 0; void 0; void 0; void 0; void 0; void 0; void 0; void 0; void 0; { var _ns_ = { id: 'hu.lib.type', doc: void 0 }; var hu_lib_misc = require('./misc'); var isBrowser = hu_lib_misc.isBrowser; var _global = hu_lib_misc._global; } var objToStr = Object.prototype.toString; var toStr = function toStr(x) { return objToStr.call(x); }; var isNull = exports.isNull = function isNull(x) { return x === null; }; var isUndef = exports.isUndef = function isUndef(x) { return typeof(x) === 'undefined' || isNull(x); }; var isUndefined = exports.isUndefined = isUndef; var isBool = exports.isBool = function isBool(x) { return x === true || x === false || toString.call(x) === '[object Boolean]'; }; var isBoolean = exports.isBoolean = isBool; var isNumber = exports.isNumber = function isNumber(x) { return toStr(x) === '[object Number]'; }; var isFinite = exports.isFinite = function isFinite(x) { return _global.isFinite(x) && !isNaN(parseFloat, x); }; var isNaN = exports.isNaN = function isNaN(x) { return x === x ? false : true; }; var isSymbol = exports.isSymbol = function isSymbol(x) { return toStr(x) === '[object Symbol]'; }; var isString = exports.isString = function isString(x) { return toStr(x) === '[object String]'; }; var isDate = exports.isDate = function isDate(x) { return toStr(x) === '[object Date]'; }; var isRegExp = exports.isRegExp = function isRegExp(x) { return toStr(x) === '[object RegExp]'; }; var isPattern = exports.isPattern = isRegExp; var isArgs = exports.isArgs = function isArgs(x) { return toStr(x) === '[object Arguments]'; }; var isArguments = exports.isArguments = isArgs; var isFunction = exports.isFunction = function isFunction(x) { return typeof(x) === 'function'; }; var isFn = exports.isFn = isFunction; var isObject = exports.isObject = function isObject(x) { return toStr(x) === '[object Object]'; }; var isArray = exports.isArray = isFn(Array.isArray) ? Array.isArray : function (x) { return toStr(x) === '[object Array]'; }; var isError = exports.isError = function isError(x) { return toStr(x) === '[object Error]'; }; var isPlainObject = exports.isPlainObject = function isPlainObject(x) { return isObject(x) && isObject(Object.getPrototypeOf(x)) && isNull(Object.getPrototypeOf(Object.getPrototypeOf(x))); }; var isElement = exports.isElement = function isElement(x) { return isBrowser ? toStr(x).indexOf('Element') >= 0 : false; }; var isMutable = exports.isMutable = function isMutable(x) { return isObject(x) || isArray(x) || isError(x) || isArgs(x) || isDate(x) || isFunction(x); }; var isEmpty = exports.isEmpty = function isEmpty(x) { return isUndef(x) || (isObject(x) ? Object.keys(x).length === 0 ? true : false : false) || x.length === 0; }; var notEmpty = exports.notEmpty = function notEmpty(x) { return !isEmpty(x); }; var isNotEmpty = exports.isNotEmpty = notEmpty; var isPrimitive = exports.isPrimitive = function isPrimitive(x) { return isNull(x) || isBool(x) || isRegExp(x) || isString(x) || isNumber(x) || isSymbol(x); }; var isIterable = exports.isIterable = function isIterable(x) { return isObject(x) || isArray(x) || isArgs(x); }; var canIterate = exports.canIterate = isIterable;