UNPKG

ajv-json-logic

Version:
41 lines (36 loc) 1.24 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var conditionalRequired = require('../schemas/conditional-required.json.cjs'); 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: conditionalRequired.default, }; } // For CommonJS compatibility if (typeof module !== 'undefined' && typeof module.exports !== 'undefined') { module.exports = getDef; module.exports.default = getDef; } exports.default = getDef; //# sourceMappingURL=conditionalRequired.cjs.map