mirror of
https://github.com/Fabio286/antares.git
synced 2025-06-05 21:59:22 +02:00
Merge pull request #633 from digitalgopnik/feat/ssh-keep-alive-interval
feat: customize keep-alive-interval for ssh-tunnel
This commit is contained in:
@ -65,6 +65,7 @@ export interface ConnectionParams {
|
|||||||
sshKey?: string;
|
sshKey?: string;
|
||||||
sshPort?: number;
|
sshPort?: number;
|
||||||
sshPassphrase?: string;
|
sshPassphrase?: string;
|
||||||
|
sshKeepAliveInterval?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface TypeInformations {
|
export interface TypeInformations {
|
||||||
|
@ -24,6 +24,7 @@ export default (connections: {[key: string]: antares.Client}) => {
|
|||||||
port: number;
|
port: number;
|
||||||
privateKey: string;
|
privateKey: string;
|
||||||
passphrase: string;
|
passphrase: string;
|
||||||
|
keepaliveInterval: number;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -50,7 +51,8 @@ export default (connections: {[key: string]: antares.Client}) => {
|
|||||||
password: conn.sshPass,
|
password: conn.sshPass,
|
||||||
port: conn.sshPort ? conn.sshPort : 22,
|
port: conn.sshPort ? conn.sshPort : 22,
|
||||||
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
|
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
|
||||||
passphrase: conn.sshPassphrase
|
passphrase: conn.sshPassphrase,
|
||||||
|
keepaliveInterval: conn.sshKeepAliveInterval ?? conn.sshKeepAliveInterval*1000
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,6 +101,7 @@ export default (connections: {[key: string]: antares.Client}) => {
|
|||||||
port: number;
|
port: number;
|
||||||
privateKey: string;
|
privateKey: string;
|
||||||
passphrase: string;
|
passphrase: string;
|
||||||
|
keepaliveInterval: number;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -128,7 +131,8 @@ export default (connections: {[key: string]: antares.Client}) => {
|
|||||||
password: conn.sshPass,
|
password: conn.sshPass,
|
||||||
port: conn.sshPort ? conn.sshPort : 22,
|
port: conn.sshPort ? conn.sshPort : 22,
|
||||||
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
|
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
|
||||||
passphrase: conn.sshPassphrase
|
passphrase: conn.sshPassphrase,
|
||||||
|
keepaliveInterval: conn.sshKeepAliveInterval ?? conn.sshKeepAliveInterval*1000
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,7 +156,6 @@ export class MySQLClient extends AntaresCore {
|
|||||||
|
|
||||||
this._ssh = new SSH2Promise({
|
this._ssh = new SSH2Promise({
|
||||||
...this._params.ssh,
|
...this._params.ssh,
|
||||||
keepaliveInterval: 30*60*1000,
|
|
||||||
debug: process.env.NODE_ENV !== 'production' ? (s) => console.log(s) : null
|
debug: process.env.NODE_ENV !== 'production' ? (s) => console.log(s) : null
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -168,7 +168,6 @@ export class PostgreSQLClient extends AntaresCore {
|
|||||||
try {
|
try {
|
||||||
this._ssh = new SSH2Promise({
|
this._ssh = new SSH2Promise({
|
||||||
...this._params.ssh,
|
...this._params.ssh,
|
||||||
keepaliveInterval: 30*60*1000,
|
|
||||||
debug: process.env.NODE_ENV !== 'production' ? (s) => console.log(s) : null
|
debug: process.env.NODE_ENV !== 'production' ? (s) => console.log(s) : null
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -33,10 +33,10 @@
|
|||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<fieldset class="m-0" :disabled="isBusy">
|
<fieldset class="m-0" :disabled="isBusy">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.connectionName') }}</label>
|
<label class="form-label cut-text">{{ t('connection.connectionName') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="firstInput"
|
ref="firstInput"
|
||||||
v-model="connection.name"
|
v-model="connection.name"
|
||||||
@ -46,10 +46,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.client') }}</label>
|
<label class="form-label cut-text">{{ t('connection.client') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseSelect
|
<BaseSelect
|
||||||
v-model="connection.client"
|
v-model="connection.client"
|
||||||
:options="clients"
|
:options="clients"
|
||||||
@ -60,10 +60,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="connection.client === 'pg'" class="form-group columns">
|
<div v-if="connection.client === 'pg'" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.connectionString') }}</label>
|
<label class="form-label cut-text">{{ t('connection.connectionString') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="pgString"
|
ref="pgString"
|
||||||
v-model="connection.pgConnString"
|
v-model="connection.pgConnString"
|
||||||
@ -73,10 +73,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.host"
|
v-model="connection.host"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -85,10 +85,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="connection.databasePath"
|
:model-value="connection.databasePath"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -98,10 +98,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.port"
|
v-model="connection.port"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -112,10 +112,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.database" class="form-group columns">
|
<div v-if="clientCustomizations.database" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.database"
|
v-model="connection.database"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -125,10 +125,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.user"
|
v-model="connection.user"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -138,10 +138,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.password"
|
v-model="connection.password"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -151,10 +151,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.connectionSchema" class="form-group columns">
|
<div v-if="clientCustomizations.connectionSchema" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.schema') }}</label>
|
<label class="form-label cut-text">{{ t('database.schema') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.schema"
|
v-model="connection.schema"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -164,16 +164,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.readOnlyMode" class="form-group columns">
|
<div v-if="clientCustomizations.readOnlyMode" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="connection.readonly" type="checkbox"><i class="form-icon" /> {{ t('connection.readOnlyMode') }}
|
<input v-model="connection.readonly" type="checkbox"><i class="form-icon" /> {{ t('connection.readOnlyMode') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="connection.ask" type="checkbox"><i class="form-icon" /> {{ t('connection.askCredentials') }}
|
<input v-model="connection.ask" type="checkbox"><i class="form-icon" /> {{ t('connection.askCredentials') }}
|
||||||
</label>
|
</label>
|
||||||
@ -187,12 +187,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">
|
<label class="form-label cut-text">
|
||||||
{{ t('connection.enableSsl') }}
|
{{ t('connection.enableSsl') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-switch d-inline-block" @click.prevent="toggleSsl">
|
<label class="form-switch d-inline-block" @click.prevent="toggleSsl">
|
||||||
<input type="checkbox" :checked="connection.ssl">
|
<input type="checkbox" :checked="connection.ssl">
|
||||||
<i class="form-icon" />
|
<i class="form-icon" />
|
||||||
@ -201,10 +201,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<fieldset class="m-0" :disabled="isBusy || !connection.ssl">
|
<fieldset class="m-0" :disabled="isBusy || !connection.ssl">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="connection.key"
|
:model-value="connection.key"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -214,10 +214,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.certificate') }}</label>
|
<label class="form-label cut-text">{{ t('connection.certificate') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="connection.cert"
|
:model-value="connection.cert"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -227,10 +227,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.caCertificate') }}</label>
|
<label class="form-label cut-text">{{ t('connection.caCertificate') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="connection.ca"
|
:model-value="connection.ca"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -240,10 +240,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.ciphers') }}</label>
|
<label class="form-label cut-text">{{ t('connection.ciphers') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="firstInput"
|
ref="firstInput"
|
||||||
v-model="connection.ciphers"
|
v-model="connection.ciphers"
|
||||||
@ -253,8 +253,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="connection.untrustedConnection" type="checkbox"><i class="form-icon" /> {{ t('connection.untrustedConnection') }}
|
<input v-model="connection.untrustedConnection" type="checkbox"><i class="form-icon" /> {{ t('connection.untrustedConnection') }}
|
||||||
</label>
|
</label>
|
||||||
@ -268,12 +268,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">
|
<label class="form-label cut-text">
|
||||||
{{ t('connection.enableSsh') }}
|
{{ t('connection.enableSsh') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-switch d-inline-block" @click.prevent="toggleSsh">
|
<label class="form-switch d-inline-block" @click.prevent="toggleSsh">
|
||||||
<input type="checkbox" :checked="connection.ssh">
|
<input type="checkbox" :checked="connection.ssh">
|
||||||
<i class="form-icon" />
|
<i class="form-icon" />
|
||||||
@ -282,10 +282,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<fieldset class="m-0" :disabled="isBusy || !connection.ssh">
|
<fieldset class="m-0" :disabled="isBusy || !connection.ssh">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.sshHost"
|
v-model="connection.sshHost"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -294,10 +294,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.sshUser"
|
v-model="connection.sshUser"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -306,10 +306,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.sshPass"
|
v-model="connection.sshPass"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -318,10 +318,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.sshPort"
|
v-model="connection.sshPort"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -332,10 +332,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="connection.sshKey"
|
:model-value="connection.sshKey"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -345,10 +345,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.passphrase') }}</label>
|
<label class="form-label cut-text">{{ t('connection.passphrase') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="connection.sshPassphrase"
|
v-model="connection.sshPassphrase"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -356,6 +356,22 @@
|
|||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group columns">
|
||||||
|
<div class="column col-5 col-sm-12">
|
||||||
|
<label class="form-label cut-text">{{ t('connection.keepAliveInterval') }}</label>
|
||||||
|
</div>
|
||||||
|
<div class="column col-7 col-sm-12">
|
||||||
|
<div class="input-group">
|
||||||
|
<input
|
||||||
|
v-model="connection.sshKeepAliveInterval"
|
||||||
|
class="form-input"
|
||||||
|
type="number"
|
||||||
|
min="1"
|
||||||
|
>
|
||||||
|
<span class="input-group-addon">{{ t('general.seconds') }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
@ -443,8 +459,10 @@ const connection = ref({
|
|||||||
sshHost: '',
|
sshHost: '',
|
||||||
sshUser: '',
|
sshUser: '',
|
||||||
sshPass: '',
|
sshPass: '',
|
||||||
|
sshPassphrase: null,
|
||||||
sshKey: '',
|
sshKey: '',
|
||||||
sshPort: 22,
|
sshPort: 22,
|
||||||
|
sshKeepAliveInterval: 1800,
|
||||||
pgConnString: ''
|
pgConnString: ''
|
||||||
}) as Ref<ConnectionParams & { pgConnString: string }>;
|
}) as Ref<ConnectionParams & { pgConnString: string }>;
|
||||||
|
|
||||||
|
@ -33,10 +33,10 @@
|
|||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<fieldset class="m-0" :disabled="isBusy">
|
<fieldset class="m-0" :disabled="isBusy">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.connectionName') }}</label>
|
<label class="form-label cut-text">{{ t('connection.connectionName') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="firstInput"
|
ref="firstInput"
|
||||||
v-model="localConnection.name"
|
v-model="localConnection.name"
|
||||||
@ -46,10 +46,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.client') }}</label>
|
<label class="form-label cut-text">{{ t('connection.client') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseSelect
|
<BaseSelect
|
||||||
v-model="localConnection.client"
|
v-model="localConnection.client"
|
||||||
:options="clients"
|
:options="clients"
|
||||||
@ -62,10 +62,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="localConnection.client === 'pg'" class="form-group columns">
|
<div v-if="localConnection.client === 'pg'" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.connectionString') }}</label>
|
<label class="form-label cut-text">{{ t('connection.connectionString') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="pgString"
|
ref="pgString"
|
||||||
v-model="localConnection.pgConnString"
|
v-model="localConnection.pgConnString"
|
||||||
@ -75,10 +75,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.host"
|
v-model="localConnection.host"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -87,10 +87,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="localConnection.databasePath"
|
:model-value="localConnection.databasePath"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -100,10 +100,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.port"
|
v-model="localConnection.port"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -114,10 +114,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.database" class="form-group columns">
|
<div v-if="clientCustomizations.database" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
<label class="form-label cut-text">{{ t('database.database') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.database"
|
v-model="localConnection.database"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -127,10 +127,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.user"
|
v-model="localConnection.user"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -140,10 +140,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.password"
|
v-model="localConnection.password"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -153,10 +153,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.connectionSchema" class="form-group columns">
|
<div v-if="clientCustomizations.connectionSchema" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('database.schema') }}</label>
|
<label class="form-label cut-text">{{ t('database.schema') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.schema"
|
v-model="localConnection.schema"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -166,16 +166,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="clientCustomizations.readOnlyMode" class="form-group columns">
|
<div v-if="clientCustomizations.readOnlyMode" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="localConnection.readonly" type="checkbox"><i class="form-icon" /> {{ t('connection.readOnlyMode') }}
|
<input v-model="localConnection.readonly" type="checkbox"><i class="form-icon" /> {{ t('connection.readOnlyMode') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
<div v-if="!clientCustomizations.fileConnection" class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="localConnection.ask" type="checkbox"><i class="form-icon" /> {{ t('connection.askCredentials') }}
|
<input v-model="localConnection.ask" type="checkbox"><i class="form-icon" /> {{ t('connection.askCredentials') }}
|
||||||
</label>
|
</label>
|
||||||
@ -189,12 +189,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">
|
<label class="form-label cut-text">
|
||||||
{{ t('connection.enableSsl') }}
|
{{ t('connection.enableSsl') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-switch d-inline-block" @click.prevent="toggleSsl">
|
<label class="form-switch d-inline-block" @click.prevent="toggleSsl">
|
||||||
<input type="checkbox" :checked="localConnection.ssl">
|
<input type="checkbox" :checked="localConnection.ssl">
|
||||||
<i class="form-icon" />
|
<i class="form-icon" />
|
||||||
@ -203,10 +203,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<fieldset class="m-0" :disabled="isBusy || !localConnection.ssl">
|
<fieldset class="m-0" :disabled="isBusy || !localConnection.ssl">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="localConnection.key"
|
:model-value="localConnection.key"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -216,10 +216,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.certificate') }}</label>
|
<label class="form-label cut-text">{{ t('connection.certificate') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="localConnection.cert"
|
:model-value="localConnection.cert"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -229,10 +229,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.caCertificate') }}</label>
|
<label class="form-label cut-text">{{ t('connection.caCertificate') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="localConnection.ca"
|
:model-value="localConnection.ca"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -242,10 +242,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.ciphers') }}</label>
|
<label class="form-label cut-text">{{ t('connection.ciphers') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
ref="firstInput"
|
ref="firstInput"
|
||||||
v-model="localConnection.ciphers"
|
v-model="localConnection.ciphers"
|
||||||
@ -255,8 +255,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12" />
|
<div class="column col-5 col-sm-12" />
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-checkbox form-inline">
|
<label class="form-checkbox form-inline">
|
||||||
<input v-model="localConnection.untrustedConnection" type="checkbox"><i class="form-icon" /> {{ t('connection.untrustedConnection') }}
|
<input v-model="localConnection.untrustedConnection" type="checkbox"><i class="form-icon" /> {{ t('connection.untrustedConnection') }}
|
||||||
</label>
|
</label>
|
||||||
@ -270,12 +270,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<form class="form-horizontal">
|
<form class="form-horizontal">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">
|
<label class="form-label cut-text">
|
||||||
{{ t('connection.enableSsh') }}
|
{{ t('connection.enableSsh') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<label class="form-switch d-inline-block" @click.prevent="toggleSsh">
|
<label class="form-switch d-inline-block" @click.prevent="toggleSsh">
|
||||||
<input type="checkbox" :checked="localConnection.ssh">
|
<input type="checkbox" :checked="localConnection.ssh">
|
||||||
<i class="form-icon" />
|
<i class="form-icon" />
|
||||||
@ -284,10 +284,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<fieldset class="m-0" :disabled="isBusy || !localConnection.ssh">
|
<fieldset class="m-0" :disabled="isBusy || !localConnection.ssh">
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
<label class="form-label cut-text">{{ t('connection.hostName') }}/IP</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.sshHost"
|
v-model="localConnection.sshHost"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -296,10 +296,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
<label class="form-label cut-text">{{ t('connection.user') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.sshUser"
|
v-model="localConnection.sshUser"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -308,10 +308,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
<label class="form-label cut-text">{{ t('connection.password') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.sshPass"
|
v-model="localConnection.sshPass"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -320,10 +320,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
<label class="form-label cut-text">{{ t('connection.port') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.sshPort"
|
v-model="localConnection.sshPort"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -334,10 +334,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
<label class="form-label cut-text">{{ t('connection.privateKey') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<BaseUploadInput
|
<BaseUploadInput
|
||||||
:model-value="localConnection.sshKey"
|
:model-value="localConnection.sshKey"
|
||||||
:message="t('general.browse')"
|
:message="t('general.browse')"
|
||||||
@ -347,10 +347,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group columns">
|
<div class="form-group columns">
|
||||||
<div class="column col-4 col-sm-12">
|
<div class="column col-5 col-sm-12">
|
||||||
<label class="form-label cut-text">{{ t('connection.passphrase') }}</label>
|
<label class="form-label cut-text">{{ t('connection.passphrase') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="column col-8 col-sm-12">
|
<div class="column col-7 col-sm-12">
|
||||||
<input
|
<input
|
||||||
v-model="localConnection.sshPassphrase"
|
v-model="localConnection.sshPassphrase"
|
||||||
class="form-input"
|
class="form-input"
|
||||||
@ -358,6 +358,22 @@
|
|||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group columns">
|
||||||
|
<div class="column col-5 col-sm-12">
|
||||||
|
<label class="form-label cut-text">{{ t('connection.keepAliveInterval') }}</label>
|
||||||
|
</div>
|
||||||
|
<div class="column col-7 col-sm-12">
|
||||||
|
<div class="input-group">
|
||||||
|
<input
|
||||||
|
v-model="localConnection.sshKeepAliveInterval"
|
||||||
|
class="form-input"
|
||||||
|
type="number"
|
||||||
|
min="1"
|
||||||
|
>
|
||||||
|
<span class="input-group-addon">{{ t('general.seconds') }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -67,7 +67,8 @@ export const deDE = {
|
|||||||
deleteConnection: 'Verbindung löschen',
|
deleteConnection: 'Verbindung löschen',
|
||||||
connectionSuccessfullyMade: 'Verbindung erfolgreich erstellt!',
|
connectionSuccessfullyMade: 'Verbindung erfolgreich erstellt!',
|
||||||
enableSsl: 'Aktiviere SSL',
|
enableSsl: 'Aktiviere SSL',
|
||||||
enableSsh: 'Aktiviere SSH'
|
enableSsh: 'Aktiviere SSH',
|
||||||
|
keepAliveInterval: 'Keep-Alive-Intervall'
|
||||||
},
|
},
|
||||||
database: {
|
database: {
|
||||||
schema: 'Schema',
|
schema: 'Schema',
|
||||||
|
@ -100,7 +100,8 @@ export const enUS = {
|
|||||||
connectionSuccessfullyMade: 'Connection successfully made!',
|
connectionSuccessfullyMade: 'Connection successfully made!',
|
||||||
readOnlyMode: 'Read-only mode',
|
readOnlyMode: 'Read-only mode',
|
||||||
allConnections: 'All connections',
|
allConnections: 'All connections',
|
||||||
searchForConnections: 'Search for connections'
|
searchForConnections: 'Search for connections',
|
||||||
|
keepAliveInterval: 'Keep alive interval'
|
||||||
},
|
},
|
||||||
database: { // Database related terms
|
database: { // Database related terms
|
||||||
schema: 'Schema',
|
schema: 'Schema',
|
||||||
|
Reference in New Issue
Block a user