import {AfterViewInit, ChangeDetectorRef, Component, ElementRef, Input} from '@angular/core';
import {NgIf} from "@angular/common";

@Component({
  selector: 'app-code-with-copy-button',
  standalone: true,
  imports: [
    NgIf
  ],
  templateUrl: './code-with-copy-button.component.html',
  styleUrl: './code-with-copy-button.component.css'
})
export class CodeWithCopyButtonComponent  implements AfterViewInit {

  @Input() textToCopy!: string;

  constructor(private elRef: ElementRef, private cdr: ChangeDetectorRef) {}

  ngAfterViewInit() {
    this.textToCopy = this.elRef.nativeElement.innerText.trim();
    this.cdr.detectChanges();
  }

  copyToClipboard() {
    navigator.clipboard.writeText(this.textToCopy).then(() => {

    }).catch(err => {
      console.error('could not copy text:', err);
    });
  }

}
