michangarrito/apps/backend/node_modules/ajv/lib/compile/validate/applicability.ts
rckrdmrd 48dea7a5d0 feat: Initial commit - michangarrito
Marketplace móvil para negocios locales mexicanos.

Estructura inicial:
- apps/backend (NestJS API)
- apps/frontend (React Web)
- apps/mobile (Expo/React Native)
- apps/mcp-server (Claude MCP Server)
- apps/whatsapp-service (WhatsApp Business API)
- database/ (PostgreSQL DDL)
- docs/ (Documentación)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 04:41:02 -06:00

23 lines
739 B
TypeScript

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