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}