Files
dbgate/packages/web/src/query/SqlEditor.svelte
Jan Prochazka 904d35d26a execute query
2021-03-08 18:23:41 +01:00

28 lines
618 B
Svelte

<script lang="ts" context="module">
const engineToMode = {
mssql: 'sqlserver',
mysql: 'mysql',
postgres: 'pgsql',
};
</script>
<script lang="ts">
import AceEditor from './AceEditor.svelte';
import * as ace from 'ace-builds/src-noconflict/ace';
export let engine;
let domEditor;
let mode;
$: {
const match = (engine || '').match(/^([^@]*)@/);
mode = engineToMode[match ? match[1] : engine] || 'sql';
}
export function getEditor(): ace.Editor {
return domEditor.getEditor();
}
</script>
<AceEditor {mode} {...$$props} on:input on:focus on:blur bind:this={domEditor} />