obj-valid
Version:
This package can check is your object has correct structure without using typescript. As you know after transpilation interfaces disappear. If you want to check object structure on production or in clean javascript you can use this package.
31 lines • 1.18 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.allSameType = void 0;
var kind_of_1 = __importDefault(require("kind-of"));
var compare_1 = require("../compare");
var typeCheck_1 = require("./typeCheck");
function allSameType(arr) {
var result = true;
var type = kind_of_1.default(arr[0]);
switch (type) {
case 'object':
// @ts-ignore TODO
result = arr.every(function (el) { return compare_1.compare(type, typeCheck_1.typeCheck(el)).score; });
break;
case 'array':
result = arr.every(function (el) { return allSameType(el); });
// if [[1,2,3],['example','values','in','array'], [null, null,null],[]] this return true
// TODO
break;
default:
if (!arr.every(function (el) { return type === typeCheck_1.typeCheck(el); }))
result = false;
break;
}
return result;
}
exports.allSameType = allSameType;
//# sourceMappingURL=allSameType.js.map