Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gangachris/ng-validators


https://github.com/gangachris/ng-validators

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# NGValidators

[![Codacy Badge](https://api.codacy.com/project/badge/Grade/741550036db0422bbb09c51b685fb65c)](https://www.codacy.com/app/ganga-chris/ng-validators?utm_source=github.com&utm_medium=referral&utm_content=gangachris/ng-validators&utm_campaign=badger)

A List of validators for Angular (2 and above) Forms based on [validator.js](https://github.com/chriso/validator.js). Current version only works with ReactiveFormsModule.
FormsModule Directive validators will come soon.

# Usage
## Install
```bash
$ npm install --save ng-validators
```

## Use as Model Based Validators
Make sure you have ReactiveFormsModule imported in your modules.
```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { ReactiveFormsModule } from '@angular/forms';

import { AppComponent } from './app.component';

@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
ReactiveFormsModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
```

The use the Validators with FormControls

```typescript
import { Component } from '@angular/core';

import { FormGroup, FormBuilder, Validators } from '@angular/forms';

import { NGValidators } from 'ng-validators';

@Component({
selector: 'app-root',
template: `

Email


`,
})
export class AppComponent {
theForm: FormGroup;

constructor(private fb: FormBuilder) {
this.theForm = fb.group({
email: ['', [Validators.required, NGValidators.isEmail()]]
});
}
}
```

## Contributing
Contribution Guideline isn't available yet, but PRs are so welcome to the develop branch.

## Added Validators
* isAfter
* isAlpha
* isAlphanumeric
* isAscii
* isBase64
* isBefore
* isBoolean
* isByteLength
* isCreditCard
* isCurrency
* isDataUri
* isDate
* isDecimal
* isEmail
* isFloat
* isFQDN
* isHexColor
* isHexaDecimal
* isInt
* isIP
* isISBN
* isJSON
* isLowerCase
* isMacAddress
* isNull
* isNumeric
* isUpperCase
* isURL