i_validator 1.0.0 copy "i_validator: ^1.0.0" to clipboard
i_validator: ^1.0.0 copied to clipboard

i_validator package provides a collection of common validation utilities such as email, password, phone number, OTP, and required fields validation. It also includes custom validation for confirm pass [...]

example/main.dart

import 'package:flutter/foundation.dart';
import 'package:i_validator/i_validator.dart';

void main() {
  debugPrint('--- πŸ“Œ OtpValidator ---');
  final otpValidator = OtpValidator(length: 6);
  debugPrint('Valid OTP: ${otpValidator.validate("123456") ?? "βœ”"}');
  debugPrint('Invalid OTP: ${otpValidator.validate("123") ?? "βœ”"}');

  debugPrint('\n--- πŸ” PasswordValidator (strong) ---');
  final passwordValidator = PasswordValidator(
    minLength: 8,
    strength: PasswordStrength.strong,
  );
  debugPrint(
    'Valid Password: ${passwordValidator.validate("Strong@123") ?? "βœ”"}',
  );
  debugPrint('Weak Password: ${passwordValidator.validate("12345") ?? "βœ”"}');

  debugPrint('\n--- πŸ” ConfirmPasswordValidator ---');
  final confirmValidator = ConfirmPasswordValidator(password: "Strong@123");
  debugPrint('Match: ${confirmValidator.validate("Strong@123") ?? "βœ”"}');
  debugPrint('Mismatch: ${confirmValidator.validate("WrongOne") ?? "βœ”"}');

  debugPrint('\n--- πŸ“± PhoneNumberValidator ---');
  final phoneValidator = PhoneNumberValidator();
  debugPrint('Valid phone: ${phoneValidator.validate("01712345678") ?? "βœ”"}');
  debugPrint('Invalid phone: ${phoneValidator.validate("12345") ?? "βœ”"}');

  debugPrint('\n--- πŸ“§ EmailValidator ---');
  final emailValidator = EmailValidator();
  debugPrint('Valid email: ${emailValidator.validate("me@mail.com") ?? "βœ”"}');
  debugPrint('Invalid email: ${emailValidator.validate("bademail") ?? "βœ”"}');

  debugPrint('\n--- πŸ”’ PinNumberValidator ---');
  final pinValidator = PinNumberValidator();
  debugPrint('Valid 4-digit PIN: ${pinValidator.validate("1234") ?? "βœ”"}');
  debugPrint('Valid 6-digit PIN: ${pinValidator.validate("123456") ?? "βœ”"}');
  debugPrint('Invalid PIN: ${pinValidator.validate("999") ?? "βœ”"}');

  debugPrint('\n--- ❗ RequiredFieldValidator<int> ---');
  final requiredInt = RequiredFieldValidator<int>();
  debugPrint('Valid int: ${requiredInt.validate(0) ?? "βœ”"}');
  debugPrint('Invalid int: ${requiredInt.validate(null) ?? "βœ”"}');

  debugPrint('\n--- πŸ“ RequiredStringValidator (non-empty) ---');
  final requiredStr = NonEmptyStringValidator();
  debugPrint('Valid text: ${requiredStr.validate("Hello") ?? "βœ”"}');
  debugPrint('Empty text: ${requiredStr.validate("") ?? "βœ”"}');

  debugPrint('\n--- πŸ”’ MinValueValidator<int> ---');
  final minIntValidator = MinValueValidator<int>(min: 10);
  debugPrint('Above min: ${minIntValidator.validate(15) ?? "βœ”"}');
  debugPrint('Below min: ${minIntValidator.validate(5) ?? "βœ”"}');

  debugPrint('\n--- πŸ”’ MaxValueValidator<double> ---');
  final maxDoubleValidator = MaxValueValidator<double>(max: 99.5);
  debugPrint('Within max: ${maxDoubleValidator.validate(88.88) ?? "βœ”"}');
  debugPrint('Exceed max: ${maxDoubleValidator.validate(120.0) ?? "βœ”"}');
}

// void main() {
//   // Example usage of validators
//
//   // Email Validation
//   String email = "test@example.com";
//   String? emailError = EmailValidator().validate(email);
//   debugdebugPrint("main | $emailError ?? Valid Email");
//
//   // Password Validation
//   String password = "Test@123";
//   String? passwordError = PasswordValidator().validate(password);
//   debugdebugPrint(passwordError ?? "Valid Password");
//
//   // Confirm Password Validation
//   String confirmPassword = "Test@123";
//   String? confirmPasswordError = ConfirmPasswordValidator(
//     password: password,
//   ).validate(confirmPassword);
//   debugdebugPrint(confirmPasswordError ?? "Passwords Match");
//
//   // Phone Number Validation
//   String phoneNumber = "+1234567890";
//   String? phoneError = PhoneNumberValidator().validate(phoneNumber);
//   debugdebugPrint(phoneError ?? "Valid Phone Number");
//
//   // OTP Validation
//   String otp = "123456";
//   String? otpError = OtpValidator().validate(otp);
//   debugdebugPrint(otpError ?? "Valid OTP");
//
//   // Required Field Validation
//   String requiredField = "";
//   String? requiredFieldError = RequiredFieldValidator().validate(requiredField);
//   debugdebugPrint(requiredFieldError ?? "Field is filled");
// }
11
likes
0
points
136
downloads

Publisher

unverified uploader

Weekly Downloads

i_validator package provides a collection of common validation utilities such as email, password, phone number, OTP, and required fields validation. It also includes custom validation for confirm passwords and file formats, along with mixins for Stream-based validation.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on i_validator