add-operator-dialog.component.ts 1.43 KB
import { Component, OnInit, Inject } from '@angular/core';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';
import { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';
import { CustomValidators } from 'ng2-validation';

@Component({
  selector: 'app-add-operator-dialog',
  templateUrl: './add-operator-dialog.component.html',
  styleUrls: ['./add-operator-dialog.component.scss']
})
export class AddOperatorDialogComponent implements OnInit {

  public form: FormGroup;
  public actionsAlignment: string;

  constructor(public dialogRef: MatDialogRef<AddOperatorDialogComponent>,
    @Inject(MAT_DIALOG_DATA) public data: any, private fb: FormBuilder) { }

  ngOnInit() {
    this.form = this.fb.group({
      fname: [null, Validators.compose([Validators.required, Validators.minLength(5), Validators.maxLength(10)])],
      lname: [null, Validators.compose([Validators.required, Validators.minLength(5), Validators.maxLength(10)])],
      uname: [null, Validators.compose([Validators.required, Validators.minLength(5), Validators.maxLength(10)])],
      email: [null, Validators.compose([Validators.required, CustomValidators.email])],
      range: [null, Validators.compose([Validators.required, CustomValidators.range([5, 9])])],
      password: [null, Validators.compose([Validators.required])],
      role: [null, Validators.compose([Validators.required, Validators.minLength(2), Validators.maxLength(10)])]
    });
  }
}