Spaces:
Sleeping
Sleeping
File size: 469 Bytes
1df763a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
import type {MacroKeywordDefinition} from "ajv"
export default function getDef(): MacroKeywordDefinition {
return {
keyword: "allRequired",
type: "object",
schemaType: "boolean",
macro(schema: boolean, parentSchema) {
if (!schema) return true
const required = Object.keys(parentSchema.properties)
if (required.length === 0) return true
return {required}
},
dependencies: ["properties"],
}
}
module.exports = getDef
|