From 288cdc8ee8478ddc85e67ba73e7fa894bdda7dcc Mon Sep 17 00:00:00 2001 From: Yurii Date: Thu, 14 May 2026 21:46:51 +0300 Subject: [PATCH] Fix modifyDetailLayout --- client/src/views/admin/authentication.js | 2 ++ .../authentication-provider/record/detail.js | 2 ++ .../authentication-provider/record/edit.js | 2 ++ .../src/views/email-account/record/detail.js | 2 ++ client/src/views/email-account/record/edit.js | 2 ++ .../src/views/inbound-email/record/detail.js | 2 ++ client/src/views/inbound-email/record/edit.js | 2 ++ client/src/views/record/detail.ts | 19 +++++++++++++++---- 8 files changed, 29 insertions(+), 4 deletions(-) diff --git a/client/src/views/admin/authentication.js b/client/src/views/admin/authentication.js index 31fffdc80e..bd43b39cf3 100644 --- a/client/src/views/admin/authentication.js +++ b/client/src/views/admin/authentication.js @@ -68,6 +68,8 @@ class AdminAuthenticationRecordView extends SettingsEditRecordView { panels: {}, } + hasModifyDetailLayout = true + setup() { this.methodList = []; diff --git a/client/src/views/authentication-provider/record/detail.js b/client/src/views/authentication-provider/record/detail.js index 3f1a7bce29..82c74f60c5 100644 --- a/client/src/views/authentication-provider/record/detail.js +++ b/client/src/views/authentication-provider/record/detail.js @@ -39,6 +39,8 @@ export default class extends DetailRecordView { */ helper + hasModifyDetailLayout = true + setup() { this.helper = new Helper(this); diff --git a/client/src/views/authentication-provider/record/edit.js b/client/src/views/authentication-provider/record/edit.js index 22f9ae3066..d088c3328a 100644 --- a/client/src/views/authentication-provider/record/edit.js +++ b/client/src/views/authentication-provider/record/edit.js @@ -39,6 +39,8 @@ export default class extends EditRecordView { */ helper + hasModifyDetailLayout = true; + setup() { this.helper = new Helper(this); diff --git a/client/src/views/email-account/record/detail.js b/client/src/views/email-account/record/detail.js index 980285eae1..1835bf02a6 100644 --- a/client/src/views/email-account/record/detail.js +++ b/client/src/views/email-account/record/detail.js @@ -30,6 +30,8 @@ import DetailRecordView from 'views/record/detail'; export default class extends DetailRecordView { + hasModifyDetailLayout = true + setup() { super.setup(); diff --git a/client/src/views/email-account/record/edit.js b/client/src/views/email-account/record/edit.js index d384213bfb..8568bcf65d 100644 --- a/client/src/views/email-account/record/edit.js +++ b/client/src/views/email-account/record/edit.js @@ -31,6 +31,8 @@ import Detail from 'views/email-account/record/detail'; export default class extends EditRecordView { + hasModifyDetailLayout = true + setup() { super.setup(); diff --git a/client/src/views/inbound-email/record/detail.js b/client/src/views/inbound-email/record/detail.js index 200b89ce20..83e7d9c5d9 100644 --- a/client/src/views/inbound-email/record/detail.js +++ b/client/src/views/inbound-email/record/detail.js @@ -30,6 +30,8 @@ import DetailRecordView from 'views/record/detail'; export default class extends DetailRecordView { + hasModifyDetailLayout = true + setup() { super.setup(); diff --git a/client/src/views/inbound-email/record/edit.js b/client/src/views/inbound-email/record/edit.js index ab68c41812..0a2157edb2 100644 --- a/client/src/views/inbound-email/record/edit.js +++ b/client/src/views/inbound-email/record/edit.js @@ -31,6 +31,8 @@ import Detail from 'views/inbound-email/record/detail'; export default class extends EditRecordView { + hasModifyDetailLayout = true + setup() { super.setup(); diff --git a/client/src/views/record/detail.ts b/client/src/views/record/detail.ts index a3a2d13c6b..31dc006015 100644 --- a/client/src/views/record/detail.ts +++ b/client/src/views/record/detail.ts @@ -691,15 +691,18 @@ class DetailRecordView void) | undefined = undefined - private recordUpdateWebSocketTopic: string private isSubscribedToWebSocket: boolean = false private updateWebSocketIsBlocked: boolean = false - private _hasMiddleTabs: boolean; + private _hasMiddleTabs: boolean + + /** + * @internal + */ + protected hasModifyDetailLayout: boolean = false /** * A shortcut-key => action map. @@ -3000,7 +3003,7 @@ class DetailRecordView { - if (typeof this.modifyDetailLayout === 'function') { + if (this.hasModifyDetailLayout) { detailLayout = Utils.cloneDeep(detailLayout); this.modifyDetailLayout(detailLayout); @@ -3836,6 +3839,14 @@ class DetailRecordView