import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core'; import { FormGroup, FormBuilder, Validators } from '@angular/forms'; @Component({ selector: 'of-member-modify-password', templateUrl: './member-modify-password.component.html', }) export class MemberModifyPasswordComponent implements OnInit { @Input() token: string; @Output() modifyPassword = new EventEmitter<{token: string, password: string, confirmPassword: string}>(); @Output() signin = new EventEmitter(); modifyPasswordForm: FormGroup; formErrors = { 'pw': '', 'confirmPw': '' }; constructor( private formBuilder: FormBuilder, ) { } ngOnInit() { this.initForm(); } initForm() { this.modifyPasswordForm = this.formBuilder.group({ 'pw': [ '', [ // Validators.required, ] ], 'confirmPw': [ '', [ // Validators.pattern('^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$'), // Validators.minLength(6), // Validators.maxLength(25) ] ], }); } modifyPasswordFormSubmit() { const formValue = Object.assign({}, this.modifyPasswordForm.value); this.modifyPassword.emit({token: this.token, password: formValue.pw, confirmPassword: formValue.confirmPw}); } }