universal_validator 1.0.3 copy "universal_validator: ^1.0.3" to clipboard
universal_validator: ^1.0.3 copied to clipboard

Comprehensive form validation for Flutter. Includes validators & widgets for Email, Phone, Password, and Indian documents like PAN, GST, Aadhaar, IFSC, UPI, & Vehicle.

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.0.3 - 2025-12-31 #

πŸš€ Breaking Changes #

  • Renamed SmartTextField to UTextField for brevity and better naming convention.

✨ Added #

  • Indian Validators
    • AadhaarValidator: Validation for Indian Aadhaar numbers (with Verhoeff algorithm)
    • IFSCValidator: Validation for Indian Financial System Codes
    • UPIIDValidator: Validation for Unified Payments Interface IDs
    • VehicleNumberValidator: Validation for Indian Vehicle Registration numbers
  • Documentation
    • Added comprehensive documentation for new Indian validators
    • Added usage examples for all new validators
    • Updated example app with new fields

1.0.2 - 2024-12-30 #

πŸ”§ Fixed #

  • Shortened package description to meet pub.flutter-io.cn requirements
  • Improved pub points score

1.0.1 - 2024-12-30 #

πŸ”§ Fixed #

  • Fixed pub.flutter-io.cn publication issues
  • Reduced topics to maximum allowed (5)
  • Improved package metadata for better discoverability

1.0.0 - 2024-12-30 #

πŸŽ‰ Initial Release #

Added

  • Core Validators

    • EmailValidator - RFC-compliant email validation with international domain support
    • PhoneValidator - International and Indian phone number validation
    • PasswordValidator - Configurable password strength validation
    • NameValidator - Name validation with cultural character set support
    • PANValidator - Indian PAN card format validation (AAAAA9999A)
    • GSTValidator - Indian GST number validation with checksum verification
  • Smart Widgets

    • UTextField - Intelligent text field with built-in validation and formatting
    • Real-time validation with configurable debouncing
    • Success indicators and error message display
    • Field type-based automatic validation
  • Input Formatters

    • PhoneFormatter - Phone number formatting with separators
    • NameFormatter - Name formatting with proper case handling
    • PANFormatter - PAN card formatting (uppercase)
    • GSTFormatter - GST number formatting (uppercase)
    • GeneralFormatter - Base formatter for custom implementations
  • Configuration System

    • FieldConfiguration - Customizable field behavior
    • ValidationRule - Custom validation rule support
    • PasswordConfig - Configurable password requirements
    • ErrorMessageProvider - Custom error message support
  • Core Architecture

    • ValidationEngine - Central validation processing
    • ValidationResult - Structured validation outcomes
    • ValidationContext - Context-aware validation
    • FieldType enum - Predefined field types

Features

  • βœ… International Support: Phone numbers, email formats, Unicode characters
  • βœ… Real-time Validation: Debounced validation with customizable timing
  • βœ… Custom Error Messages: Override default messages with custom text
  • βœ… Multiple Validation Rules: Chain multiple rules with priority ordering
  • βœ… Input Formatting: Automatic formatting as user types
  • βœ… Cross-platform: Works on iOS, Android, Web, macOS, Windows, Linux
  • βœ… Property-based Testing: Comprehensive test coverage with 100+ test iterations
  • βœ… Localization Ready: Support for custom error message providers

Supported Formats

  • Email: RFC-compliant with international domain support
  • Phone:
    • Indian: 10-digit numbers starting with 6-9
    • International: +country code format
    • US/Canada: +1 followed by 10 digits
    • UK: +44 followed by 10-11 digits
  • Password: Configurable length, character types, complexity
  • PAN: AAAAA9999A format (5 letters, 4 digits, 1 letter)
  • GST: 15-character format with checksum validation
  • Name: Alphabetic characters, spaces, hyphens, apostrophes

Technical Details

  • Minimum Dart SDK: 3.0.0
  • Minimum Flutter: 3.0.0
  • Dependencies: Only Flutter SDK (no external dependencies)
  • Test Coverage: 40+ property-based tests with 100 iterations each
  • Architecture: Modular design with clear separation of concerns

πŸ”§ Technical Implementation #

  • Implemented comprehensive validation engine with context support
  • Added property-based testing for robust validation across input variations
  • Created modular formatter system for extensible input formatting
  • Built smart widget system with automatic field type detection
  • Designed flexible configuration system for customization

πŸ“š Documentation #

  • Comprehensive README with examples and usage guides
  • API documentation for all public classes and methods
  • Property-based test documentation
  • Contributing guidelines and development setup

πŸ§ͺ Testing #

  • 40+ property-based tests covering all validators
  • Edge case testing for boundary conditions
  • International format testing
  • Custom configuration testing
  • Widget integration testing

Future Releases #

Planned Features for v1.1.0 #

  • ❌ Additional country-specific validators
  • ❌ More input formatters (credit card, date, etc.)
  • ❌ Enhanced localization support
  • ❌ Accessibility improvements
  • ❌ Performance optimizations

Planned Features for v1.2.0 #

  • ❌ Form-level validation coordination
  • ❌ Validation rule builder UI
  • ❌ Advanced password strength indicators
  • ❌ Biometric validation integration
  • ❌ Cloud-based validation rules

Migration Guide #

This is the initial release, so no migration is needed. For future versions, migration guides will be provided here.

Breaking Changes #

None in this initial release.

Deprecations #

None in this initial release.


Note: This changelog follows the Keep a Changelog format. Each release will document all notable changes including new features, bug fixes, breaking changes, and deprecations.

1
likes
150
points
63
downloads

Publisher

unverified uploader

Weekly Downloads

Comprehensive form validation for Flutter. Includes validators & widgets for Email, Phone, Password, and Indian documents like PAN, GST, Aadhaar, IFSC, UPI, & Vehicle.

Repository (GitHub)
View/report issues

Topics

#validation #form #widget #validators #flutter

Documentation

Documentation
API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on universal_validator