mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-17 23:13:04 +00:00
49 lines
1.1 KiB
TypeScript
49 lines
1.1 KiB
TypeScript
import { Component, Input, Output } from '@angular/core';
|
|
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
|
|
import { Subject } from 'rxjs/internal/Subject';
|
|
import { DSpaceObject } from '../../core/shared/dspace-object.model';
|
|
|
|
@Component({
|
|
selector: 'ds-confirmation-modal',
|
|
templateUrl: 'confirmation-modal.component.html',
|
|
})
|
|
export class ConfirmationModalComponent {
|
|
@Input() headerLabel: string;
|
|
@Input() infoLabel: string;
|
|
@Input() cancelLabel: string;
|
|
@Input() confirmLabel: string;
|
|
@Input() dso: DSpaceObject;
|
|
|
|
/**
|
|
* An event fired when the cancel or confirm button is clicked, with respectively false or true
|
|
*/
|
|
@Output()
|
|
response: Subject<boolean> = new Subject();
|
|
|
|
constructor(protected activeModal: NgbActiveModal) {
|
|
}
|
|
|
|
/**
|
|
* Confirm the action that led to the modal
|
|
*/
|
|
confirmPressed() {
|
|
this.response.next(true);
|
|
this.close();
|
|
}
|
|
|
|
/**
|
|
* Cancel the action that led to the modal and close modal
|
|
*/
|
|
cancelPressed() {
|
|
this.response.next(false);
|
|
this.close();
|
|
}
|
|
|
|
/**
|
|
* Close the modal
|
|
*/
|
|
close() {
|
|
this.activeModal.close();
|
|
}
|
|
}
|