// Angular Core
import { Component, Input, OnInit, EventEmitter } from '@angular/core';

// Third Party
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';

@Component({
  standalone: false,
  selector: 'app-messages-modal',
  templateUrl: './messages-modal.component.html',
  styleUrls: ['./messages-modal.component.scss']
})
export class MessagesModalComponent implements OnInit {

  @Input() currentOrder!:any;
  @Input() headerTitle!:string;
  @Input() orders!:any;
  @Input() updateOrderMessages!:EventEmitter<any>;
  @Input() messageHistory:any[] = [];
  @Input() msgLengthError!:string;
  @Input() isUserAllowed!:boolean;
  @Input() messagesModalOpened!:boolean;
  @Input() reply!: (messageText:string, order:any) => void;
  @Input() messagesModalClose!: () => void;

  constructor(public activeModal: NgbActiveModal) { }

  ngOnInit(): void {
  }
  
  /**
   * Method to validate the input messages.
   * @param {object} inputMessage
   * @returns void
   */
  displayValidationMsg(inputMessage: any) {
    this.msgLengthError = '';
    var message = inputMessage.srcElement.value;
    if (message !== '' && (message.length < 3 || message.length > 250)) {
      this.msgLengthError = 'Minimum 3 and Maximum 250 characters allowed.'; 
    }
  }

}
