import { Component, inject } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';

import SharedModule from 'app/shared/shared.module';
import { ITEM_DELETED_EVENT } from 'app/config/navigation.constants';
import { IVariableScope } from '../variable-scope.model';
import { VariableScopeService } from '../service/variable-scope.service';

@Component({
  standalone: true,
  templateUrl: './variable-scope-delete-dialog.component.html',
  imports: [SharedModule, FormsModule],
})
export class VariableScopeDeleteDialogComponent {
  variableScope?: IVariableScope;

  protected variableScopeService = inject(VariableScopeService);
  protected activeModal = inject(NgbActiveModal);

  cancel(): void {
    this.activeModal.dismiss();
  }

  confirmDelete(id: number): void {
    this.variableScopeService.delete(id).subscribe(() => {
      this.activeModal.close(ITEM_DELETED_EVENT);
    });
  }
}
