mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
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:
co-authored by
Daria Marutkina
sergeyteleshev
parent
9394667673
commit
698ee3cba1
@@ -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:*",
|
||||
|
||||
+8
-3
@@ -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,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
+31
@@ -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"
|
||||
},
|
||||
|
||||
@@ -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:*"
|
||||
|
||||
Reference in New Issue
Block a user