Add default action attribute to modal
This commit is contained in:
parent
cebbdb0a16
commit
a89d473e62
@ -135,7 +135,7 @@
|
||||
<button class="flat"
|
||||
(click)="removeBoard()"
|
||||
[disabled]="saving">Yes</button>
|
||||
<button
|
||||
<button #defaultAction
|
||||
(click)="modal.close(MODAL_CONFIRM_ID)"
|
||||
[disabled]="saving">No</button>
|
||||
</div>
|
||||
@ -272,7 +272,7 @@
|
||||
</div>
|
||||
|
||||
<div class="buttons">
|
||||
<button (click)="addEditBoard()" [disabled]="saving">
|
||||
<button #defaultAction (click)="addEditBoard()" [disabled]="saving">
|
||||
<i class="icon"
|
||||
[ngClass]="{ 'icon-plus': modalProps.title === 'Add', 'icon-floppy': modalProps.title !== 'Add' }"></i>
|
||||
{{ modalProps.title === 'Add' ? 'Add' : 'Save' }}
|
||||
|
@ -33,6 +33,7 @@
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div *ngIf="loading" class="center">
|
||||
<div class="spinner"></div>
|
||||
</div>
|
||||
@ -48,8 +49,10 @@
|
||||
modal-id="{{ MODAL_CONFIRM_ID }}">
|
||||
<div class="center">Removing a user cannot be undone.<br>Continue?</div>
|
||||
<div class="buttons">
|
||||
<button class="flat" (click)="removeUser()">Yes</button>
|
||||
<button (click)="modal.close(MODAL_CONFIRM_ID)">No</button>
|
||||
<button class="flat"
|
||||
(click)="removeUser()">Yes</button>
|
||||
<button #defaultAction
|
||||
(click)="modal.close(MODAL_CONFIRM_ID)">No</button>
|
||||
</div>
|
||||
</tb-modal>
|
||||
|
||||
@ -110,7 +113,8 @@
|
||||
</label>
|
||||
|
||||
<div class="buttons">
|
||||
<button (click)="addEditUser()" [disabled]="saving">
|
||||
<button #defaultAction
|
||||
(click)="addEditUser()" [disabled]="saving">
|
||||
<i class="icon"
|
||||
[ngClass]="{ 'icon-plus': modalProps.prefix === '',
|
||||
'icon-floppy': modalProps.prefix !== '' }"></i>
|
||||
|
@ -4,7 +4,8 @@
|
||||
|
||||
<div class="modal"
|
||||
[ngClass]="{ wide: wide, animated: animate, 'modal-closed': !isOpen }"
|
||||
(click)="filterClick($event)">
|
||||
(click)="filterClick($event)"
|
||||
(keyup.enter)="clickDefaultAction()">
|
||||
<div class="title" *ngIf="modalTitle">
|
||||
<h2>
|
||||
{{ modalTitle }}
|
||||
|
@ -19,6 +19,7 @@ export class Modal implements OnInit {
|
||||
@Input() wide = false;
|
||||
|
||||
@ContentChild('focusMe') focusElement: any;
|
||||
@ContentChild('defaultAction') defaulActionElement: any;
|
||||
|
||||
isOpen = false;
|
||||
animate = true;
|
||||
@ -43,11 +44,18 @@ export class Modal implements OnInit {
|
||||
private filterClick(event: Event): void {
|
||||
event = event || window.event;
|
||||
|
||||
// Prevent click from propagating to modal container
|
||||
if (event.stopPropagation) {
|
||||
event.stopPropagation();
|
||||
} else {
|
||||
event.cancelBubble = true;
|
||||
}
|
||||
}
|
||||
|
||||
private clickDefaultAction(): void {
|
||||
if (this.defaulActionElement) {
|
||||
this.defaulActionElement.nativeElement.click();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user