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 { ISecurityGroup } from '../security-group.model';
import { SecurityGroupService } from '../service/security-group.service';

@Component({
  standalone: true,
  templateUrl: './security-group-delete-dialog.component.html',
  imports: [SharedModule, FormsModule],
})
export class SecurityGroupDeleteDialogComponent {
  securityGroup?: ISecurityGroup;

  protected securityGroupService = inject(SecurityGroupService);
  protected activeModal = inject(NgbActiveModal);

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

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