パッケージ、リポジトリ、アプリカテゴリを検索

brasil_fields のカバー
パッケージ詳細v1.21.1

brasil_fields

Dart プロジェクトでブラジルのパターンやフォーマットを使用する最も簡単な方法。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
3.5万
いいね数
579
Pub ポイント
160

パッケージをインストール

flutter pub add brasil_fields

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

BrasilFields は、Flutter アプリケーションでブラジル形式および検証パターンを使用することを簡素化するための Dart パッケージです。CPF、CNPJ、電話番号、日付、通貨などの一般的なブラジルデータ形式を処理するための即時利用可能なウィジェットとユーティリティを提供します。パッケージは一貫した入力フォーマットとリアルタイムの検証を保証し、ブラジルユーザーの体験を向上させます。すべての主要プラットフォームに対応しており、ローカライズ固有の入力処理が必要な任意の Flutter プロジェクトにスムーズに統合できます。

用途

  • ブラジル形式のフォーム入力
  • CPF/CNPJ 検証
  • 電話番号のマスキング
  • 通貨および日付の入力形式
  • リアルタイムデータ検証
  • ブラジル向けアプリのローカライズ

主な機能

  • 事前定義されたブラジル形式パターン
  • 自動入力マスキング
  • 組み込みの検証ルール
  • クロスプラットフォーム互換性
  • TextFormField との簡単な統合
  • 複数のブラジルデータ型のサポート

適している対象

  • ブラジルのユーザーをターゲットにしたFlutterアプリ
  • 厳密なデータ検証を必要とするフォーム
  • 迅速なブラジル形式のソリューションが必要な開発者
  • 国際化のニーズを持つプロジェクト
  • 金融または個人データを扱うアプリ

注意事項

  • カスタムフォーマット用に手動設定が必要です
  • ブラジル固有のパターンに限定
  • UIの一貫性を確保するために追加のスタイル設定が必要になる場合があります
  • Flutter のテキスト入力システムに依存しています
  • ブラジル以外のロケールには適していません

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

brasil_fields

Brasil Fields

O jeito mais fácil de utilizar padrões e formatos brasileiros em seu projeto.

Testar agora

codecov

Apresentação

Este package facilita o desenvolvimento de projetos que utilizam campos com os padrões e formatos brasileiros.

Como utilizar

Incluir o formatter no parâmetro inputFormatters.

É necessário adicionar o FilteringTextInputFormatter.digitsOnly para garantir que o campo aceite apenas valores numéricos.

TextFormField(
  inputFormatters: [
    // obrigatório
    FilteringTextInputFormatter.digitsOnly,
    CepInputFormatter(),
  ],
);
EXCEÇÃO: CNPJ 2026 E Placa de veículos

CnpjAlfanumericoInputFormatter e PlacaVeiculoInputFormatter são formatters alfanuméricos, sendo assim, o FilteringTextInputFormatter.digitsOnly não deve ser informado.

Formatters
Padrão Formatter Formato
Altura AlturaInputFormatter() 2,22
Cartão CartaoBancarioInputFormatter() 0000 1111 2222 3333 4444
Centavos CentavosInputFormatter() 7,194
CEP CepInputFormatter() 99.999-999
CPF CpfInputFormatter() 999.999.99-99
CNPJ CnpjInputFormatter() 99.999.999/9999-99
CNPJ (2026) CnpjAlfanumericoInputFormatter() 99.999.999/9999-99 ou A1.B2C.3D4/E5F6-99 (*)
CPF / CNPJ CpfOuCnpjFormatter() Se adapta conforme os números são inseridos
CEST CESTInputFormatter() 12.345.67
CNS CNSInputFormatter() 111 2222 3333 4444
Data DataInputFormatter() 01/01/1900
Hora HoraInputFormatter() 23:59
IOF IOFInputFormatter() 1,234567
KM KmInputFormatter() 999.999
Cert. nascimento CertNascimentoInputFormatter() 000000 11 22 3333 4 55555 666 7777777 88
NCM NCMInputFormatter() 1234.56.78
NUP NUPInputFormatter() 1234567-89.0123.4.56.7890
Peso PesoInputFormatter() 111,1
Placa PlacaVeiculoInputFormatter() AAA-1234 (*)
Real RealInputFormatter() 20.550
Telefone TelefoneInputFormatter() (99) 9999-9999
Validade cartão ValidadeCartaoInputFormatter() 12/24 ou 12/2024
Temperatura TemperaturaInputFormatter() 27,1

(*) Não utilizar FilteringTextInputFormatter.digitsOnly. Estes formatters são alfanuméricos.

Modelos
Estados.listaEstados
Estados.listaEstadosSigla
Meses.listaMeses
Meses.mapaMeses
Regioes.listaRegioes
Semana.listaDiasUteis
Semana.mapaDiasUteis
Semana.listaDiasUteisAbvr
Semana.mapaDiasUteisAbvr
Semana.listaDiasSemana
Semana.listaDiasSemanaOrdenada
Semana.mapaDiasSemanaOrdenada
Semana.mapaDiasSemanaOrdenadaAbvr
UtilData

Métodos que facilitam obter o valor de um objeto DateTime em formato String (e no padrão brasileiro).

  • UtilData.obterDataDDMMAAAA (DD/MM/AAAA)
  • UtilData.obterDataMMAAAA (MM/AAAA)
  • UtilData.obterDataDDMM (DD/MM)
  • UtilData.obterHoraHHMMSS (hh:mm:ss)
  • UtilData.obterHoraHHMM (hh:mm)
  • UtilData.obterMes
  • UtilData.obterDia
  • UtilData.obterDateTime
  • UtilData.obterDateTimeHora
  • UtilData.obterDateTimeHoraMinuto
UtilBrasilFields

Métodos que facilitam manipular valores:

  • UtilBrasilFields.gerarCPF() (XXX.XXX.XXX-XX)
  • UtilBrasilFields.gerarCPF(false) (XXXXXXXXXXX)
  • UtilBrasilFields.gerarCNPJ() (XX.YYY.ZZZ/NNNN-SS)
  • UtilBrasilFields.gerarCNPJ(false) (XXYYYZZZNNNNSS)
  • UtilBrasilFields.obterCpf('11122233344') (111.222.333-44)
  • UtilBrasilFields.obterCnpj('11222333444455') (11.222.333/4444-55)
  • UtilBrasilFields.obterCep('11222333') (11.222-333)
  • UtilBrasilFields.obterCep('11222333', ponto: false) (11222-333)
  • UtilBrasilFields.obterNUP('06010642120226000000') (0601064-21.2022.6.00.0000)
  • UtilBrasilFields.obterTelefone('00999998877') ((00) 99999-8877)
  • UtilBrasilFields.obterTelefone('(00) 99999-8877', mascara: false) (00999998877)
  • UtilBrasilFields.obterTelefone('999998877', ddd: false) (99999-8877)
  • UtilBrasilFields.obterTelefone('99999-8877', ddd: false, mascara: false) (999998877)
  • UtilBrasilFields.obterReal (R$ 50.000,00 ou 50.000,00)
  • UtilBrasilFields.obterReal(85437107.04) (R$ 85.437.107,04)
  • UtilBrasilFields.obterReal(85437107.04, moeda: false) (85.437.107,04)
  • UtilBrasilFields.obterReal(85437107.04, moeda: false, decimal: 0) (85.437.107)
  • UtilBrasilFields.obterDDD('00999998877') (00)
  • UtilBrasilFields.obterKM(999999) (999.999)
  • UtilBrasilFields.removeCaracteres (remove caracteres especiais)
  • UtilBrasilFields.removerSimboloMoeda (remove o R$)
  • UtilBrasilFields.converterMoedaParaDouble (remove o R$ e retorna um double)
  • UtilBrasilFields.isCPFValido (retorna true se o CPF for válido, caso contrário, retorna false)
  • UtilBrasilFields.isCNPJValido (retorna true se o CNPJ for válido, caso contrário, retorna false)
  • UtilBrasilFields.isNUPValido (retorna true se o NUP for válido, caso contrário, retorna false)

Para inicializar um TextEditingController com o texto já formatado, basta escolher o método com o formato desejado e setar no atributo text:

TextEditingController
final dataController = TextEditingController(
  text: UtilData.obterDataDDMMAAAA(DateTime(2024, 12, 31)),
);
final cnpjController = TextEditingController(
  text: UtilBrasilFields.obterCnpj('11222333444455'),
);

Made with contrib.rocks.

カテゴリー

依存関係

依存関係一覧 1 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。