From 095c1c10a5907991770bdb975c6be2f7504f2449 Mon Sep 17 00:00:00 2001 From: Naumov Alexey Date: Tue, 29 Sep 2020 14:17:06 +0300 Subject: [PATCH] fix(core-connections): disconnect btn disabled logic CB-62 --- .../src/shared/NodesManager/ConnectionDialogsService.ts | 1 + .../core-connections/src/ConnectionsManagerService.ts | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/webapp/packages/core-app/src/shared/NodesManager/ConnectionDialogsService.ts b/webapp/packages/core-app/src/shared/NodesManager/ConnectionDialogsService.ts index 518be18daf..006bf32a81 100644 --- a/webapp/packages/core-app/src/shared/NodesManager/ConnectionDialogsService.ts +++ b/webapp/packages/core-app/src/shared/NodesManager/ConnectionDialogsService.ts @@ -46,6 +46,7 @@ export class ConnectionDialogsService { order: 2, title: 'app_shared_connectionMenu_disconnect', onClick: () => this.connectionsManagerService.closeAllConnections(), + isDisabled: () => !this.connectionsManagerService.hasAnyConnection(true), } ); diff --git a/webapp/packages/core-connections/src/ConnectionsManagerService.ts b/webapp/packages/core-connections/src/ConnectionsManagerService.ts index 8f4eef9d7a..2dd5584f94 100644 --- a/webapp/packages/core-connections/src/ConnectionsManagerService.ts +++ b/webapp/packages/core-connections/src/ConnectionsManagerService.ts @@ -59,7 +59,10 @@ export class ConnectionsManagerService { await this.afterConnectionClose(id); } - hasAnyConnection(): boolean { + hasAnyConnection(connected?: boolean): boolean { + if (connected) { + return Array.from(this.connectionInfo.data.values()).some(connection => connection.connected); + } return !!Array.from(this.connectionInfo.data.values()).length; }