/** @module support */ __PluginManager__.register('support', function(module, exports, require, global){ var str = { ucFirst: function (str) { if (!str) return str; return str[0].toUpperCase() + str.slice(1); } }; var arr = { isKey: function (key) { var n = Number(key); return isInteger(n) && (''+n === ''+key); } }; function uniqueId (length = 32, firstLetter = true) { var idStr = ''; if(length < 1) return idStr; if(firstLetter) { length && (idStr = (Math.floor((Math.random() * 25)) + 10).toString(36)); if (length === 1) return idStr; } do { idStr += (Math.floor((Math.random() * 35))).toString(36); } while (idStr.length < length); return (idStr); } function valueEx(value) { var arg = []; if(arguments.length > 1) for(var i = 1; arguments.length - 1 >= i;i++) { arg.push(arguments[i]); } if(typeof value === 'function') { return value.apply(this, arg); } return value; } function empty(val){ return arguments.length === 0 || val === undefined || val === null || Number.isNaN(val) === true || val === '' || val === 0 || val === false; } function typeOf(value) { return typeof value; } function isObject(value) { return typeOf(value) === 'object' ? value !== null : typeof value === 'function'; } function isNumber(value) { return !Number.isNaN(value) && isFinite(value) && typeof value === 'number'; } function isInteger(value) { return isNumber(value) && (value % 1) === 0; } function isFloat(value) { return isNumber(value); } /** * @memberOf kit */ var support = { str: str, arr: arr, uniqueId, valueEx, empty, isNumber, typeOf, isObject, isInteger, isFloat, }; return module.exports = support; });