dbeaver/pro#7556 hide show sql button for editor and viewer (#3929)

Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
Co-authored-by: sergeyteleshev <iamsergeyteleshev@gmail.com>
This commit is contained in:
alex
2025-11-21 18:21:20 +01:00
committed by GitHub
co-authored by Daria Marutkina sergeyteleshev
parent 9394667673
commit 698ee3cba1
7 changed files with 53 additions and 4 deletions
@@ -29,6 +29,8 @@
"@cloudbeaver/core-dialogs": "workspace:*",
"@cloudbeaver/core-localization": "workspace:*",
"@cloudbeaver/core-navigation-tree": "workspace:*",
"@cloudbeaver/core-settings": "workspace:*",
"@cloudbeaver/core-utils": "workspace:*",
"@cloudbeaver/plugin-codemirror6": "workspace:*",
"@cloudbeaver/plugin-data-viewer": "workspace:*",
"@cloudbeaver/plugin-sql-editor": "workspace:*",
@@ -10,13 +10,18 @@ import { Bootstrap, injectable } from '@cloudbeaver/core-di';
import { importLazyComponent } from '@cloudbeaver/core-blocks';
import { isResultSetDataSource, TableHeaderService } from '@cloudbeaver/plugin-data-viewer';
import { DataViewerRequestQueryViewerSettingsService } from './DataViewerRequestQueryViewerSettingsService.js';
export const DataViewerRequestQueryViewer = importLazyComponent(() =>
import('./DataViewerRequestQueryViewer.js').then(m => m.DataViewerRequestQueryViewer),
);
@injectable(() => [TableHeaderService])
@injectable(() => [TableHeaderService, DataViewerRequestQueryViewerSettingsService])
export class DataViewerRequestQueryViewerBootstrap extends Bootstrap {
constructor(private readonly tableHeaderService: TableHeaderService) {
constructor(
private readonly tableHeaderService: TableHeaderService,
private readonly dataViewerRequestQueryViewerSettingsService: DataViewerRequestQueryViewerSettingsService,
) {
super();
}
@@ -24,7 +29,7 @@ export class DataViewerRequestQueryViewerBootstrap extends Bootstrap {
this.tableHeaderService.tableHeaderPlaceholder.add(
DataViewerRequestQueryViewer,
Number.MIN_SAFE_INTEGER,
props => !isResultSetDataSource(props.model.source),
props => !isResultSetDataSource(props.model.source) || this.dataViewerRequestQueryViewerSettingsService.disabled,
);
}
}
@@ -0,0 +1,31 @@
/*
* CloudBeaver - Cloud Database Manager
* Copyright (C) 2020-2025 DBeaver Corp and others
*
* Licensed under the Apache License, Version 2.0.
* you may not use this file except in compliance with the License.
*/
import { injectable } from '@cloudbeaver/core-di';
import { SettingsProvider, SettingsProviderService } from '@cloudbeaver/core-settings';
import { schema, schemaExtra } from '@cloudbeaver/core-utils';
const defaultSettings = schema.object({
'plugin.data-viewer-request-query-viewer.disabled': schemaExtra.stringedBoolean().default(false),
});
export type DataViewerRequestQueryViewerSettingsSchema = typeof defaultSettings;
export type DataViewerRequestQueryViewerSettings = schema.infer<typeof defaultSettings>;
@injectable(() => [SettingsProviderService])
export class DataViewerRequestQueryViewerSettingsService {
get disabled(): boolean {
return this.settings.getValue('plugin.data-viewer-request-query-viewer.disabled');
}
readonly settings: SettingsProvider<typeof defaultSettings>;
constructor(private readonly settingsProviderService: SettingsProviderService) {
this.settings = this.settingsProviderService.createSettings(defaultSettings);
}
}
@@ -8,3 +8,4 @@
import './module.js';
export * from './DataViewerRequestQueryViewerSettingsService.js';
@@ -10,6 +10,7 @@ import { Bootstrap, ModuleRegistry, proxy } from '@cloudbeaver/core-di';
import { DataViewerRequestQueryViewerBootstrap } from './DataViewerRequestQueryViewerBootstrap.js';
import { LocaleService } from './LocaleService.js';
import { DataViewerRequestQueryViewerSettingsService } from './DataViewerRequestQueryViewerSettingsService.js';
export default ModuleRegistry.add({
name: '@cloudbeaver/plugin-data-viewer-request-query-viewer',
@@ -18,6 +19,7 @@ export default ModuleRegistry.add({
serviceCollection
.addSingleton(Bootstrap, proxy(DataViewerRequestQueryViewerBootstrap))
.addSingleton(Bootstrap, LocaleService)
.addSingleton(DataViewerRequestQueryViewerBootstrap);
.addSingleton(DataViewerRequestQueryViewerBootstrap)
.addSingleton(DataViewerRequestQueryViewerSettingsService);
},
});
@@ -40,6 +40,12 @@
{
"path": "../core-navigation-tree"
},
{
"path": "../core-settings"
},
{
"path": "../core-utils"
},
{
"path": "../plugin-codemirror6"
},
+2
View File
@@ -2944,6 +2944,8 @@ __metadata:
"@cloudbeaver/core-dialogs": "workspace:*"
"@cloudbeaver/core-localization": "workspace:*"
"@cloudbeaver/core-navigation-tree": "workspace:*"
"@cloudbeaver/core-settings": "workspace:*"
"@cloudbeaver/core-utils": "workspace:*"
"@cloudbeaver/plugin-codemirror6": "workspace:*"
"@cloudbeaver/plugin-data-viewer": "workspace:*"
"@cloudbeaver/plugin-sql-editor": "workspace:*"