UNPKG

nestjs-angolan-validator

Version:

A NestJS validator decorator for Angolan documents (BI, IBAN, NIF, Phone)

20 lines (18 loc) 704 B
import { ValidatorConstraint, ValidatorConstraintInterface, } from "class-validator"; @ValidatorConstraint({ name: "AngolanPhoneValidator", async: false }) export class AngolanPhoneValidator implements ValidatorConstraintInterface { validate(phone: string): Promise<boolean> | boolean { const cleaned = phone.replace(/\D/g, ""); // Valida números angolanos: // - Começa com 244, 00244 ou +244 seguido de 9 dígitos // - Ou começa com 9 seguido de 8 dígitos const regex = /^((\+|00)?244)?[9][1-9]\d{7}$/; return regex.test(cleaned); } defaultMessage(): string { return "Número de telefone inválido. Exemplos válidos: +244 923000123"; } }