import { Component } FROM '@angular/core'; import { FormControl, FormGroup, Validators } FROM '@angular/forms'; import { environment } FROM 'environments/environment'; import { Subject } FROM 'rxjs'; import { MessageService } FROM 'app/data-access/message/message.service'; @Component({ templateUrl: './contact.component.html', styleUrls: ['./contact.component.scss'], }) export class ContactComponent { recaptchaSiteKey = environment.recaptchaSiteKey; resolved(captchaResponse: string) { console.log(`Resolved captcha with response: ${captchaResponse}`); } success$ = NEW Subject(); error$ = NEW Subject(); form: FormGroup = NEW FormGroup({ email: NEW FormControl(NULL, [Validators.required, Validators.email]), msg: NEW FormControl(NULL, [Validators.required]), recaptchaReactive: NEW FormControl(NULL, Validators.required), }); onSubmit(form): void { this.success$.next(FALSE); this.error$.next(FALSE); this.messageService .create({ id: +NEW DATE(), createDate: NEW DATE(), content: this.form.controls.msg.value, email: this.form.controls.email.value, }) .subscribe({ NEXT: (message) => { // console.log(message); this.success$.next(TRUE); }, error: (error) => { // console.log(error.message); this.error$.next(error); }, }); } constructor(private messageService: MessageService) {} }