import { Component, Input, Output, EventEmitter } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';

@Component({
  selector: 'app-input-card',
  standalone: true,
  imports: [CommonModule, FormsModule],
  templateUrl: './input-card.component.html',
  styleUrl: './input-card.component.css',
})
export class InputCardComponent {
  @Input() label: string = '';
  @Input() placeholder: string = '';
  @Input() buttonLabel: string = 'Send';
  @Input() inputType: 'input' | 'textarea' = 'input';
  @Input() value: string = '';
  @Input() cardClass: string = '';
  @Input() hintText: string = '';
  @Input() rows: number = 4;

  @Output() valueChange = new EventEmitter<string>();
  @Output() buttonClick = new EventEmitter<void>();

  onValueChange(newValue: string): void {
    this.value = newValue;
    this.valueChange.emit(newValue);
  }

  onButtonClick(): void {
    this.buttonClick.emit();
  }
}
