diff --git a/webapp/packages/core/locales/en.json b/webapp/packages/core/locales/en.json index bc1f311fde..3cd2791c2f 100644 --- a/webapp/packages/core/locales/en.json +++ b/webapp/packages/core/locales/en.json @@ -53,6 +53,8 @@ "app_shared_settingsMenu_config": "Configuration", "app_shared_settingsMenu_theme": "Theme", "app_shared_settingsMenu_lang": "Language", + "app_navigationTree_openNodeTab": "Open", + "app_navigationTree_refreshNode": "Refresh", "core_eventsLog_dbeaverErrorDetails": "Error details", "app_shared_inlineEditor_dialog_title": "Edit mode", "app_shared_inlineEditor_dialog_apply": "Apply", @@ -62,4 +64,4 @@ "app_log_view_entry_timestamp": "Timestamp", "app_log_view_entry_message": "Message", "app_log_view_entry_details": "Details" -} \ No newline at end of file +} diff --git a/webapp/packages/core/locales/ru.json b/webapp/packages/core/locales/ru.json index d5283948fc..4817fabfff 100644 --- a/webapp/packages/core/locales/ru.json +++ b/webapp/packages/core/locales/ru.json @@ -53,6 +53,8 @@ "app_shared_settingsMenu_config": "Настройки", "app_shared_settingsMenu_theme": "Тема", "app_shared_settingsMenu_lang": "Язык", + "app_navigationTree_openNodeTab": "Открыть", + "app_navigationTree_refreshNode": "Обновить", "core_eventsLog_dbeaverErrorDetails": "Детали ошибки", "app_shared_inlineEditor_dialog_title": "Редактирование", "app_shared_inlineEditor_dialog_apply": "Применить", @@ -62,4 +64,4 @@ "app_log_view_entry_timestamp": "Время", "app_log_view_entry_message": "Сообщение", "app_log_view_entry_details": "Детали" -} \ No newline at end of file +} diff --git a/webapp/packages/core/src/app/NavigationTree/NavigationTreeContextMenuService.ts b/webapp/packages/core/src/app/NavigationTree/NavigationTreeContextMenuService.ts index dc9acbc04d..16b7a004c5 100644 --- a/webapp/packages/core/src/app/NavigationTree/NavigationTreeContextMenuService.ts +++ b/webapp/packages/core/src/app/NavigationTree/NavigationTreeContextMenuService.ts @@ -44,12 +44,26 @@ export class NavigationTreeContextMenuService { return context.contextType === NavigationTreeContextMenuService.nodeContextType; }, order: 1, - title: 'Open', + title: 'app_navigationTree_openNodeTab', onClick: (context: IMenuContext) => { const node = context.data; this.nodesManagerService.navToNode(node.id); }, }; this.contextMenuService.addMenuItem(this.contextMenuService.getRootMenuToken(), openNodeTab); + + const refreshNode: IContextMenuItem = { + id: 'refreshNode', + isPresent(context) { + return context.contextType === NavigationTreeContextMenuService.nodeContextType; + }, + order: 1000, + title: 'app_navigationTree_refreshNode', + onClick: (context: IMenuContext) => { + const node = context.data; + this.nodesManagerService.refreshNode(node.id); + }, + }; + this.contextMenuService.addMenuItem(this.contextMenuService.getRootMenuToken(), refreshNode); } } diff --git a/webapp/packages/core/src/app/shared/NodesManager/NodesManagerService.ts b/webapp/packages/core/src/app/shared/NodesManager/NodesManagerService.ts index df9372b677..b8fa78d390 100644 --- a/webapp/packages/core/src/app/shared/NodesManager/NodesManagerService.ts +++ b/webapp/packages/core/src/app/shared/NodesManager/NodesManagerService.ts @@ -80,6 +80,10 @@ export class NodesManagerService { }); } + refreshNode(nodeId: string) { + console.log('refresh', nodeId); + } + getDatabaseObjectInfo(nodeId: string): DatabaseObjectInfoWithId | undefined { return this.nodesStore.getDatabaseObjectInfo(nodeId); }