1.3.0 • Published 5 years ago

@justa/ng-validators v1.3.0

Weekly downloads
69
License
MIT
Repository
github
Last release
5 years ago

Some Angular Reactive Forms custom validators. npm bundle size

Install

run npm install --save @justa/ng-validators

Install the peerDependecies:

npm install --save moment @brazilian-utils/validators

Examples

Using the validators:

Import ReactiveFormsModule in app.module.ts

Example with CNPJ Validator

import { Component, OnInit } from "@angular/core";
import { FormBuilder, FormGroup } from "@angular/forms";
import { jstValidators } from '@justa/ng-validators';

@Component({
  selector: 'app-form',
  templateUrl: './app-form.component.html',
  styleUrls: ['./app-form.component.scss'],
})
export class AppFormComponent implements OnInit {
  form: FormGroup;

  constructor(private fb: FormBuilder) {}

    ngOnInit() {
    this.form = this.fb.group({
      field: ['', jstValidators.validateCNPJ],
    });    
    }

}

Example on Stackblitz:

Available custom validators for controls

Validator nameusage
validateDatejstValidators.validateDate()
validateCNPJjstValidators.validateCNPJ
validateCPFjstValidators.validateCPF
validatePhonejstValidators.validatePhone
validateURLjstValidators.validateURL

Available custom validators for FormGroup

Validator nameusage
mustMatchMinMaxValuejstValidators.mustMatchMinMaxValue('minControl', 'maxControl')

Using Validators for FormGroup

Example:

import { Component, OnInit } from "@angular/core";
import { FormBuilder, FormGroup } from "@angular/forms";
import { jstValidators } from '@justa/ng-validators';

@Component({
  selector: 'app-form',
  templateUrl: './app-form.component.html',
  styleUrls: ['./app-form.component.scss'],
})
export class AppFormComponent implements OnInit {
  form: FormGroup;

  constructor(private fb: FormBuilder) {}

    ngOnInit() {
    this.form = this.fb.group(
      {
        minValue: [''],
        maxValue: [''],
      },
      {
        validators: [
          jstValidators.mustMatchMinMaxValue('minValue', 'maxValue'),
        ],
      },
    );
    }
}

Build (dev only)

Run ng build @justa/ng-validators on project root folder to build the project. The build artifacts will be stored in the dist/ directory.

To build the package, run ng build @justa/validators. (See angular.json to more info about build proccess)

License

MIT