auto_validate 3.0.6 copy "auto_validate: ^3.0.6" to clipboard
auto_validate: ^3.0.6 copied to clipboard

The Auto Validate package streamlines input validation by leveraging customizable regular expressions, allowing for efficient verification of various data formats.

example/README.md

Auto Validate Example #

Form Validator Usage #

import 'package:auto_validate/auto_validate.dart';
import 'package:flutter/material.dart';

/// Created By Mahmoud El Shenawy (Dev.M.ElShenawy@Icloud.com)

void main() => runApp(AutoValidateApp());

/// Main widget for the Auto Validate application.
class AutoValidateApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Auto Validate Package',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: Scaffold(
        appBar: AppBar(
          title: Text("Auto Validate"),
        ),
        body: AutoValidateHome(),
      ),
    );
  }
}

/// Home screen widget for displaying form validation.
class AutoValidateHome extends StatelessWidget {
  // Controllers for the form fields.
  final TextEditingController emailController = TextEditingController();
  final TextEditingController passwordController = TextEditingController();
  final TextEditingController strongPasswordController =
  TextEditingController();
  final TextEditingController phoneController = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return Stack(
      children: [
        Padding(
          padding: const EdgeInsets.symmetric(vertical: 15.0, horizontal: 12.5),
          child: Column(
            children: [
              Flexible(
                flex: 5,
                child: FlutterLogo(size: 200),
              ),
              Flexible(
                flex: 7,
                child: Column(
                  mainAxisAlignment: MainAxisAlignment.center,
                  children: [
                    _buildTextField(
                      controller: emailController,
                      hintText: "Email",
                      validator: FormValidator.email(
                        errorMessage: 'Please Enter Valid Email',
                      ),
                    ),
                    _buildTextField(
                      controller: passwordController,
                      hintText: "Password",
                      validator: FormValidator.password(
                        errorMessage: 'Please Enter Valid Password',
                      ),
                    ),
                    _buildTextField(
                      controller: strongPasswordController,
                      hintText: "Strong Password",
                      validator: FormValidator.passwordStrong(
                        errorMessage: 'Please Enter Valid Strong Password',
                      ),
                    ),
                    _buildTextField(
                      controller: phoneController,
                      hintText: "Phone",
                      validator: FormValidator.phone(
                        errorMessage: 'Please Enter Valid Phone',
                      ),
                    ),
                  ],
                ),
              ),
            ],
          ),
        ),
      ],
    );
  }

  /// Builds a text field with validation.
  Widget _buildTextField({
    required TextEditingController controller,
    required String hintText,
    required String? Function(String?)? validator,
  }) {
    return Padding(
      padding: const EdgeInsets.symmetric(vertical: 5.0, horizontal: 2.0),
      child: TextFormField(
        controller: controller,
        decoration: InputDecoration(
          hintText: hintText,
          border: OutlineInputBorder(
            borderSide: BorderSide(),
          ),
        ),
        validator: validator,
      ),
    );
  }
}

Auto Validate Usage #

import 'package:auto_validate/auto_validate.dart';

/// Created By Mahmoud El Shenawy (Dev.M.ElShenawy@Icloud.com)

class AutoValidateExample {
  validation() {
    var email = 'Dev.Mahmoud.ElShenawy@gmail.com';
    var name = 'Mahmud El Shenawy';
    var password = '@MahmoudElShenawy2021';
    var phone = '+201098415860';

      // You can validate the input using the AutoValidate class
    AutoValidate.email(email.toString())
        ? print('Email is Valid')
        : print('Email is Invalid');

    AutoValidate.userName(name.toString())
        ? print('User Name is Valid')
        : print('User Name is Invalid');

    AutoValidate.password(password.toString())
        ? print('Password is Valid')
        : print('Password is Invalid');

    AutoValidate.phone(phone.toString())
        ? print('Phone is Valid')
        : print('Phone is Invalid');

    // You can also use the extension methods to validate the input
    email.isValidEmail
        ? print('Email is Valid')
        : print('Email is Invalid');

    name.isValidUsername
        ? print('User Name is Valid')
        : print('User Name is Invalid');

    password.isValidPassword
        ? print('Password is Valid')
        : print('Password is Invalid');

    phone.isValidPhone
        ? print('Phone is Valid')
        : print('Phone is Invalid');
  }
}
58
likes
150
points
163
downloads

Publisher

unverified uploader

Weekly Downloads

The Auto Validate package streamlines input validation by leveraging customizable regular expressions, allowing for efficient verification of various data formats.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

collection, flutter, freezed_annotation

More

Packages that depend on auto_validate