UNPKG

@schema-render/core-react

Version:

Through a set of simple JSON Schema, efficiently build a set of forms.

97 lines (96 loc) 2.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { isArray: function() { return isArray; }, isBoolean: function() { return isBoolean; }, isFunction: function() { return isFunction; }, isNil: function() { return isNil; }, isNull: function() { return isNull; }, isNumber: function() { return isNumber; }, isObject: function() { return isObject; }, isPlainObject: function() { return isPlainObject; }, isString: function() { return isString; }, isUndefined: function() { return isUndefined; }, typeChecking: function() { return typeChecking; } }); function _type_of(obj) { "@swc/helpers - typeof"; return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; } var funcToString = Function.prototype.toString; var objectCtorString = funcToString.call(Object); function typeChecking(value, type) { // 直接使用 toString.call(value) 在 ie 会下报错 return Object.prototype.toString.call(value) === type; } function isFunction(value) { return typeChecking(value, '[object Function]') || typeChecking(value, '[object AsyncFunction]'); } function isArray(value) { return Array.isArray(value); } function isObject(value) { var type = typeof value === "undefined" ? "undefined" : _type_of(value); return value !== null && (type === 'object' || type === 'function'); } function isPlainObject(value) { if (!typeChecking(value, '[object Object]')) { return false; } // 过滤 Object.create(null) var proto = Object.getPrototypeOf(value); if (proto === null) { return true; } // 过滤 Object.create({}) 与 new Foo() var Ctor = Object.hasOwnProperty.call(proto, 'constructor') && proto.constructor; return typeof Ctor === 'function' && Ctor instanceof Ctor && funcToString.call(Ctor) === objectCtorString; } function isString(value) { return typeof value === 'string'; } function isNumber(value) { return typeof value === 'number'; } function isBoolean(value) { return typeof value === 'boolean'; } function isUndefined(value) { return value === undefined; } function isNull(value) { return value === null; } function isNil(value) { return isUndefined(value) || isNull(value); }