diff --git a/webapp/packages/core-connections/src/Administration/Connections/ConnectionForm/Options/Options.tsx b/webapp/packages/core-connections/src/Administration/Connections/ConnectionForm/Options/Options.tsx index abf1a2a619..4eea72655c 100644 --- a/webapp/packages/core-connections/src/Administration/Connections/ConnectionForm/Options/Options.tsx +++ b/webapp/packages/core-connections/src/Administration/Connections/ConnectionForm/Options/Options.tsx @@ -57,18 +57,6 @@ export const Options = observer(function Options({ - {isOriginLocal && ( - - - - )} + {isOriginLocal && ( + + + + )} - {formController.isUrlConnection - ? ( - - - {translate('customConnection_url_JDBC')} - - - ) - : ( - + - )} + autoComplete={`section-${controller.driver?.id || 'driver'} section-jdbc`} + mod='surface' + > + {translate('customConnection_url_JDBC')} + + + ) : ( + + )} {(controller.authModel && !controller.driver?.anonymousAccess) && ( <> diff --git a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/ConnectionForm.tsx b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/ConnectionForm.tsx index 1b733a55c0..6e923843b2 100644 --- a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/ConnectionForm.tsx +++ b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/ConnectionForm.tsx @@ -10,7 +10,6 @@ import { observer } from 'mobx-react'; import styled, { css } from 'reshadow'; import { - Radio, InputField, useFocus, ObjectPropertyInfoForm, @@ -20,13 +19,11 @@ import { FormBox, FormBoxElement, FormGroup, - RadioGroup } from '@cloudbeaver/core-blocks'; import { DBDriver } from '@cloudbeaver/core-connections'; import { useTranslate } from '@cloudbeaver/core-localization'; import { useStyles } from '@cloudbeaver/core-theming'; -import { ConnectionType } from '../ConnectionFormDialogController'; import { IFormController } from './IFormController'; import { ParametersForm } from './ParametersForm'; @@ -43,16 +40,7 @@ const connectionFormStyles = css` flex: 1; } FormBox { - padding: 4px 24px 18px; - } - connection-type { - padding: 12px; - margin-left: 160px; - } - Radio { - composes: theme-typography--body2 from global; - font-weight: 500; - padding: 0 12px; + padding: 24px 4px 24px; } `; @@ -67,29 +55,7 @@ export const ConnectionForm = observer(function ConnectionForm({ - - - - - {translate('customConnection_connectionType_custom')} - - - {translate('customConnection_connectionType_url')} - - - - - {controller.connectionType === ConnectionType.Attributes ? ( - - ) : ( + {controller.isUrlConnection ? ( + ) : ( + )} {controller.authModel && ( <> diff --git a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/IFormController.ts b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/IFormController.ts index 318afd88b6..0f300f5d2f 100644 --- a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/IFormController.ts +++ b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionForm/IFormController.ts @@ -8,13 +8,10 @@ import { ConnectionConfig, DatabaseAuthModel } from '@cloudbeaver/core-sdk'; -import { ConnectionType } from '../ConnectionFormDialogController'; - export interface IFormController { authModel?: DatabaseAuthModel; config: ConnectionConfig; - connectionType: ConnectionType; + isUrlConnection: boolean; isConnecting: boolean; - onChangeType: (type: ConnectionType) => void; onChange: (property: T, value: ConnectionConfig[T]) => void; } diff --git a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionFormDialogController.ts b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionFormDialogController.ts index 4bb6f66a3c..34b5c9165e 100644 --- a/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionFormDialogController.ts +++ b/webapp/packages/plugin-connection-custom/src/CustomConnection/ConnectionFormDialog/ConnectionFormDialogController.ts @@ -16,16 +16,9 @@ import { ErrorDetailsDialog } from '@cloudbeaver/core-notifications'; import { ConnectionConfig, GQLErrorCatcher, DatabaseAuthModel } from '@cloudbeaver/core-sdk'; import { CustomConnectionService } from '../../CustomConnectionService'; - -export enum ConnectionType { - Attributes, - URL -} - @injectable() export class ConnectionFormDialogController implements IInitializableController, IDestructibleController { - @observable connectionType = ConnectionType.Attributes; @observable isLoading = true; @observable isConnecting = false; @observable driver!: DBDriver; @@ -42,6 +35,10 @@ implements IInitializableController, IDestructibleController { saveCredentials: false, }; + get isUrlConnection() { + return !this.driver.sampleURL; + } + readonly error = new GQLErrorCatcher(); private onClose!: () => void; private isDistructed = false; @@ -64,10 +61,6 @@ implements IInitializableController, IDestructibleController { this.isDistructed = true; } - onChangeType = (type: ConnectionType) => { - this.connectionType = type; - }; - onChange = (property: keyof ConnectionConfig, value: any) => { this.config[property] = value; }; @@ -112,7 +105,7 @@ implements IInitializableController, IDestructibleController { config.name = this.config.name; config.driverId = this.config.driverId; - if (this.connectionType === ConnectionType.Attributes) { + if (!this.isUrlConnection) { config.name = this.config.databaseName; if (!this.driver?.embedded) { config.host = this.config.host;