import type { AnySchemaObject } from "../../types" ; import type { SchemaObjCxt } from ".." ; import type { JSONType , RuleGroup , Rule } from "../rules" ; export function schemaHasRulesForType ( { schema , self } , type ) { const group = self . RULES . types [ type ] ; return group && group !== true && shouldUseGroup ( schema , group ) ; } export function shouldUseGroup ( schema , group ) { return group . rules . some ( ( rule ) => shouldUseRule ( schema , rule ) ) ; } export function shouldUseRule ( schema , rule ) { return ( schema [ rule . keyword ] !== undefined || rule . definition . implements ?. some ( ( kwd ) => schema [ kwd ] !== undefined ) ) ; }