UNPKG

ajv-json-logic

Version:
37 lines (34 loc) 1.16 kB
import conditionalRequiredSchema from '../schemas/conditional-required.json.js'; function getDef() { return { keyword: 'conditionalRequired', macro: function (schema, parentSchema) { if (!schema) { return {}; } const allOf = []; if (!Array.isArray(schema)) schema = [schema]; if (schema && Array.isArray(schema)) { schema.forEach(({ content, rule }) => { if (content in parentSchema['properties']) { allOf.push({ if: { jsonLogic: rule }, then: { required: [content] }, }); } }); return { allOf }; } return {}; }, metaSchema: conditionalRequiredSchema, }; } // For CommonJS compatibility if (typeof module !== 'undefined' && typeof module.exports !== 'undefined') { module.exports = getDef; module.exports.default = getDef; } export { getDef as default }; //# sourceMappingURL=conditionalRequired.js.map