diff --git a/packages/web/src/appobj/AppObjectCore.svelte b/packages/web/src/appobj/AppObjectCore.svelte
index 66c00ddb0..02ed23eaa 100644
--- a/packages/web/src/appobj/AppObjectCore.svelte
+++ b/packages/web/src/appobj/AppObjectCore.svelte
@@ -3,6 +3,8 @@
import contextMenu from '../utility/contextMenu';
import { createEventDispatcher } from 'svelte';
import CheckboxField from '../forms/CheckboxField.svelte';
+ import { copyTextToClipboard } from '../utility/clipboard';
+ import { showSnackbarSuccess } from '../utility/snackbar';
const dispatch = createEventDispatcher();
@@ -16,6 +18,7 @@
export let statusIcon = undefined;
export let statusIconBefore = undefined;
export let statusTitle = undefined;
+ export let statusTitleToCopy = undefined;
export let extInfo = undefined;
export let menu = undefined;
export let expandIcon = undefined;
@@ -114,7 +117,16 @@
{/if}
{#if statusIcon}
-
+ {
+ if (statusTitleToCopy) {
+ copyTextToClipboard(statusTitleToCopy);
+ showSnackbarSuccess('Copied to clipboard');
+ }
+ }}
+ />
{/if}
{#if extInfo}
diff --git a/packages/web/src/appobj/ConnectionAppObject.svelte b/packages/web/src/appobj/ConnectionAppObject.svelte
index 88a71f67a..e0b0c08bf 100644
--- a/packages/web/src/appobj/ConnectionAppObject.svelte
+++ b/packages/web/src/appobj/ConnectionAppObject.svelte
@@ -323,6 +323,7 @@
: _.get($currentDatabase, 'connection._id') == data._id}
statusIcon={statusIcon || engineStatusIcon}
statusTitle={statusTitle || engineStatusTitle}
+ statusTitleToCopy={statusTitle || engineStatusTitle}
statusIconBefore={data.isReadOnly ? 'icon lock' : null}
{extInfo}
colorMark={passProps?.connectionColorFactory && passProps?.connectionColorFactory({ conid: data._id })}
diff --git a/packages/web/src/settings/ConnectionDriverFields.svelte b/packages/web/src/settings/ConnectionDriverFields.svelte
index 24f1bcd5d..b5d54404d 100644
--- a/packages/web/src/settings/ConnectionDriverFields.svelte
+++ b/packages/web/src/settings/ConnectionDriverFields.svelte
@@ -58,13 +58,17 @@
/>
{#if driver?.showConnectionField('databaseFile', $values, showConnectionFieldArgs)}
-
+
{/if}
{#if driver?.showConnectionField('useDatabaseUrl', $values, showConnectionFieldArgs)}
!!option.value == !!value}
options={[
@@ -80,7 +84,7 @@
label="Database URL"
name="databaseUrl"
placeholder={driver?.databaseUrlPlaceholder}
- disabled={isConnected}
+ disabled={isConnected || disabledFields.includes('databaseUrl')}
/>
{/if}
@@ -101,15 +105,19 @@
{/if}
{#if driver?.showConnectionField('endpoint', $values, showConnectionFieldArgs)}
-
+
{/if}
{#if driver?.showConnectionField('endpointKey', $values, showConnectionFieldArgs)}
-
+
{/if}
{#if driver?.showConnectionField('clientLibraryPath', $values, showConnectionFieldArgs)}
-
+
{/if}
{#if driver?.showConnectionField('server', $values, showConnectionFieldArgs)}
@@ -250,7 +258,11 @@
{/if}
{#if driver?.showConnectionField('useSeparateSchemas', $values, showConnectionFieldArgs)}
-
+
{/if}
{#if driver}