datocms-client
Version:
For new DatoCMS users, we recommend @datocms/cma-client-node
43 lines (33 loc) • 878 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.findEntityInData = findEntityInData;
exports["default"] = findInfoForProperty;
function findEntityInData(schema) {
if (!schema || !schema.properties.data) {
return null;
}
if (schema.properties.data.type === 'array') {
if (schema.properties.data.items) {
return schema.properties.data.items;
}
return null;
}
if (schema.properties.data.type === 'object') {
return schema.properties.data;
}
if (schema.properties.data.anyOf) {
return schema.properties.data.anyOf.find(function (x) {
return x.definitions.type.example !== 'job';
});
}
return null;
}
function findInfoForProperty(propertyName, schema) {
var entity = findEntityInData(schema);
if (!entity) {
return null;
}
return entity.properties[propertyName];
}