From dd916b213688dbddbaab350b7bbd2a3567d8cb06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sinan=20=C3=96zt=C3=BCrk?= Date: Tue, 20 Feb 2024 11:45:47 +0300 Subject: [PATCH 1/2] close modal when pressed esc key --- .../src/lib/components/modal/modal-close.directive.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts index a20c8d8a34..c6e891a2e9 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts @@ -13,4 +13,9 @@ export class ModalCloseDirective { onClick() { this.modal?.close(); } -} + + @HostListener('document:keydown.escape') + handleKeyboardEvent(event: KeyboardEvent) { + this.modal?.close(); + } +} \ No newline at end of file From f1913754bd2375c62832b1f6796352b7a0f22767 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sinan=20=C3=96zt=C3=BCrk?= Date: Wed, 21 Feb 2024 10:21:19 +0300 Subject: [PATCH 2/2] Refactor modal component and directive --- .../src/lib/components/modal/modal-close.directive.ts | 5 ----- .../theme-shared/src/lib/components/modal/modal.component.ts | 4 +++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts index c6e891a2e9..97d6b14fb9 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal-close.directive.ts @@ -13,9 +13,4 @@ export class ModalCloseDirective { onClick() { this.modal?.close(); } - - @HostListener('document:keydown.escape') - handleKeyboardEvent(event: KeyboardEvent) { - this.modal?.close(); - } } \ No newline at end of file diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts index ebb0515a08..297fa23c56 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/modal/modal.component.ts @@ -51,7 +51,9 @@ export class ModalComponent implements OnInit, OnDestroy, DismissableModal { this._busy = value; } - @Input() options: NgbModalOptions = {}; + @Input() options: NgbModalOptions = { + keyboard: true, + }; @Input() suppressUnsavedChangesWarning = this.suppressUnsavedChangesWarningToken;