blob: 357ff72fce3054f5a0cb5aab433e47480ba70fff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
import { Component, ComponentRef, Input } from "@angular/core";
import { ModalService } from "./modal.service";
import { RippleAnimationAction } from "../animations/ripple-click.animation.directive";
import { ModalComponent } from "./modal.component";
import { ButtonComponent } from "../buttons/button.component";
@Component({
selector: "sdc-modal-close-button",
template: `
<div class="sdc-modal__close-button"
SdcRippleClickAnimation
[ngClass]="disabled ? 'disabled' : ''"
[rippleOnAction]="!disabled && rippleAnimationAction"
[attr.data-tests-id]="testId"
(click)="!disabled && closeModal()"
>
<svg-icon name="close" [mode]="disabled? 'secondary' : 'info'" size="small"></svg-icon>
</div>
`
})
export class ModalCloseButtonComponent extends ButtonComponent {
@Input() testId: string;
@Input() disabled: boolean;
@Input() modalInstanceRef: ComponentRef<ModalComponent>;
public rippleAnimationAction: RippleAnimationAction = RippleAnimationAction.MOUSE_ENTER;
constructor(private modalService: ModalService) {
super();
}
public closeModal = (): void => {
this.modalInstanceRef.instance.closeModal();
}
}
|