diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js index 6a9e6f7d80..c9c2597067 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared/wwwroot/libs/abp/aspnetcore-mvc-ui-theme-shared/bootstrap/dom-event-handlers.js @@ -93,6 +93,9 @@ } let name = $(this).attr("name"); let selectedTextInputName = name + "_Text"; + if(name.indexOf(".ExtraProperties[") > 0) { + selectedTextInputName = name.substring(0, name.length - 1) + "_Text]" + } let selectedTextInput = $('', { type: 'hidden', id: selectedTextInputName, 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 6c1027c66f..ebb0515a08 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 @@ -196,7 +196,7 @@ export class ModalComponent implements OnInit, OnDestroy, DismissableModal { .pipe( takeUntil(this.destroy$), debounceTime(150), - filter((key: KeyboardEvent) => key && key.key === 'Escape'), + filter((key: KeyboardEvent) => key && key.key === 'Escape' && this.options.keyboard), ) .subscribe(() => this.close()); } diff --git a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts index a875eb27c7..e89b1b2bb4 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/tests/modal.component.spec.ts @@ -158,8 +158,9 @@ describe('ModalComponent', () => { spectator.dispatchKeyboardEvent(spectator.component.modalWindowRef, 'keyup', 'Escape'); await wait300ms(); + const { keyboard } = spectator.component.options; - expect(spectator.component.visible).toBe(false); + expect(spectator.component.visible).toBe(!keyboard); }); it('should not close when busy is true', async () => {