datafire
Version:
[![Travis][travis-image]][travis-link] [![Downloads][downloads-image]][npm-link] [![NPM version][npm-image]][npm-link] [](https://www.npmjs.com/package/datafire) <!--[![Dependency status][deps-i
20 lines (18 loc) • 455 B
JavaScript
module.exports = {};
module.exports.getSchemaFromArray = function(arr) {
let hasRequired = !!arr.filter(i => i.default === undefined).length;
let schema = {
type: 'object',
properties: {}
};
schema.required = arr
.filter(i => i.default === undefined)
.map(i => i.title);
if (!schema.required.length) {
delete schema.required;
}
arr.forEach(input => {
schema.properties[input.title] = input;
});
return schema;
}