all_validations_br 5.0.1 copy "all_validations_br: ^5.0.1" to clipboard
all_validations_br: ^5.0.1 copied to clipboard

Complete Flutter toolkit for Brazilian validations, form masks, typed results, structured logging, and authenticated cryptography.

all_validations_br #

🇧🇷 Português | 🇺🇸 English

pub package CI license: MIT

O toolkit completo do ecossistema All para aplicações brasileiras em Flutter: validações, formulários, Result, logging e criptografia em uma única dependência, preservando também os imports históricos do pacote.

all_validations_br toolkit

Por que usar #

all_validations_br é a porta de entrada para projetos Flutter que precisam de vários módulos do ecossistema. Um único import disponibiliza regras brasileiras, máscaras, contratos de resultado, logs estruturados e criptografia autenticada.

  • Uma dependência para os cinco módulos oficiais.
  • APIs especializadas mantidas em pacotes independentes e testáveis.
  • Compatibilidade com projetos que já utilizam os imports históricos.
  • Caminho de migração gradual para dependências menores.
  • Exemplo Flutter integrado com cenários reais.

O que está incluído #

Área Pacote incluído Principais recursos
Validações all_br_validations ^1.0.1 CPF, CNPJ, documentos, BrZod, Contract, formatadores e modelos BR
Formulários all_br_forms ^1.0.0 24 máscaras e TextInputFormatters para Flutter
Resultados all_result ^1.0.0 Result<F, S>, composição síncrona e assíncrona
Logging all_logger ^1.0.1 níveis, filtros, cores, printers e outputs
Criptografia all_crypto ^1.0.1 ChaCha20-Poly1305, AES-GCM, SHA-256, HMAC e envelope v2
Compatibilidade incluída no agregador HelperUtil e barrels históricos

Essas dependências são instaladas automaticamente. Não é necessário declará-las separadamente ao usar o toolkit.

Instalação #

dependencies:
  all_validations_br: ^5.0.1
import 'package:all_validations_br/all_validations_br.dart';

Uso rápido #

Validar e formatar dados brasileiros #

final cpfValido = AllValidations.isCpf('529.982.247-25');
final documento = BrFormatter.formatCpf('52998224725');

final validator = BrZod().required().cpf().build;
final mensagem = validator('529.982.247-25'); // null: valor válido

Máscara e validação no mesmo campo #

TextFormField(
  inputFormatters: const [PhoneMask()],
  autovalidateMode: AutovalidateMode.onUserInteraction,
  validator: BrZod().required().phone().build,
)

A máscara controla a digitação; o BrZod valida o valor. Uma máscara, sozinha, não comprova dígitos verificadores nem regras de domínio.

Falhas explícitas com Result #

Result<String, String> validateCustomer(String cpf) {
  final error = BrZod().required().cpf().build(cpf);
  return error == null
      ? Result.success<String, String>(cpf)
      : Result.failure<String, String>(error);
}

final message = validateCustomer('529.982.247-25').fold(
  (failure) => failure,
  (value) => 'CPF aceito: $value',
);

Logging controlado por ambiente #

final log = BrLogger(tag: 'Checkout');
log.info('pedido validado');
log.warning('gateway com latência elevada');
log.dispose();

O filtro padrão bloqueia logs em release. A liberação em produção precisa ser explícita. O logger não remove dados sensíveis automaticamente.

Criptografia autenticada com chave externa #

final key = AllCrypto.generateKey(); // armazene em keychain, KMS ou cofre
final envelope = AllCrypto.encryptText('segredo', key: key);
final token = envelope.toBase64(); // nunca contém a chave

final restored = CryptEnvelope.fromBase64(token);
final plaintext = AllCrypto.decryptText(restored, key: key);

Para dados novos, prefira AllCrypto e CryptEnvelope. O pacote não fornece cofre de chaves, KDF de senha, TLS ou autenticação de usuários.

Toolkit completo ou módulos separados? #

Use all_validations_br quando a aplicação é Flutter e utiliza vários módulos, ou quando precisa manter compatibilidade enquanto migra. Em projetos novos que usam apenas uma área, instale diretamente o pacote especializado. Projetos Dart puros não devem instalar este agregador, pois all_br_forms adiciona Flutter ao grafo de dependências.

Se você precisa apenas de... Instale diretamente
validações e regras brasileiras all_br_validations
máscaras Flutter all_br_forms
falhas tipadas all_result
logging all_logger
criptografia e hashes all_crypto

Compatibilidade #

O barrel principal e os imports históricos validation.dart, br_zod.dart, br_logger.dart, crypt.dart e regions_validations.dart continuam disponíveis. HelperUtil permanece no agregador para compatibilidade; prefira as APIs especializadas em código novo.

Na versão 5.0.1, HelperUtil reconhece e mascara CNPJ como chave Pix; entradas desconhecidas não vazias são mascaradas como ***. isJwtExpired trata exp ausente ou inválido como expirado, aceita referenceTime opcional e considera expirado o instante exatamente igual ao claim exp.

Na migração da 4.5.2, deep imports em src/ precisam ser substituídos e o logger passa a ficar totalmente desligado em release por padrão. Consulte o guia de migração.

Exemplo integrado #

O aplicativo de exemplo demonstra validações, máscaras, utilitários e criptografia. Execute com:

cd example
flutter pub get
flutter run

Documentação #

Licença MIT.

98
likes
160
points
1.07k
downloads

Documentation

API reference

Publisher

verified publisheropensource.tatamemaster.com.br

Weekly Downloads

Complete Flutter toolkit for Brazilian validations, form masks, typed results, structured logging, and authenticated cryptography.

Repository (GitHub)
View/report issues
Contributing

Topics

#validation #brazil #formatter #mask #cpf

License

MIT (license)

Dependencies

all_br_forms, all_br_validations, all_crypto, all_logger, all_result, flutter

More

Packages that depend on all_validations_br