solved configStore problem

This commit is contained in:
Jan Prochazka
2021-03-19 20:57:09 +01:00
parent 7b625c6073
commit dcb4c5071a
2 changed files with 14 additions and 16 deletions

View File

@@ -21,8 +21,7 @@
import _ from 'lodash'; import _ from 'lodash';
export let data; export let data;
export let config; export let configStore;
export let setConfig;
export let conid; export let conid;
export let database; export let database;
export let sql; export let sql;
@@ -31,6 +30,8 @@
let error = null; let error = null;
let loadedData = null; let loadedData = null;
$: config = $configStore;
const getDriver = async () => { const getDriver = async () => {
const conn = await getConnectionInfo({ conid }); const conn = await getConnectionInfo({ conid });
if (!conn) return; if (!conn) return;
@@ -61,18 +62,6 @@
}; };
}; };
const configStore = writable(config);
const changingRef = createRef(false);
$: {
if (!changingRef.get()) {
$configStore = config;
}
}
// $: {
// changingRef.set(true);
// setConfig($configStore);
// changingRef.set(false);
// }
$: { $: {
$extensions; $extensions;
if (sql && conid && database) { if (sql && conid && database) {

View File

@@ -1,5 +1,6 @@
<script lang="ts"> <script lang="ts">
import _ from 'lodash'; import _ from 'lodash';
import { derived } from 'svelte/store';
import ChartEditor from '../charts/ChartEditor.svelte'; import ChartEditor from '../charts/ChartEditor.svelte';
import ErrorInfo from '../elements/ErrorInfo.svelte'; import ErrorInfo from '../elements/ErrorInfo.svelte';
@@ -38,6 +39,15 @@
type: 'compute', type: 'compute',
compute: v => ({ ...v, config: _.isFunction(config) ? config(v.config) : config }), compute: v => ({ ...v, config: _.isFunction(config) ? config(v.config) : config }),
}); });
const configDerivedStore = derived(modelState, ($modelState: any) =>
$modelState.value ? $modelState.value.config || {} : {}
);
const configStore = {
...configDerivedStore,
update: setConfig,
set: setConfig,
};
</script> </script>
{#if $editorState.isLoading} {#if $editorState.isLoading}
@@ -47,8 +57,7 @@
{:else} {:else}
<ChartEditor <ChartEditor
data={$modelState.value && $modelState.value.data} data={$modelState.value && $modelState.value.data}
config={$modelState.value ? $modelState.value.config || {} : {}} {configStore}
{setConfig}
sql={$modelState.value && $modelState.value.sql} sql={$modelState.value && $modelState.value.sql}
{conid} {conid}
{database} {database}