drag & drop file to export/import tab

This commit is contained in:
Jan Prochazka
2024-09-16 17:28:30 +02:00
parent 88d7e07bea
commit 26c01f43f9
2 changed files with 29 additions and 32 deletions

View File

@@ -67,10 +67,12 @@
import SourceName from './SourceName.svelte'; import SourceName from './SourceName.svelte';
import SourceTargetConfig from './SourceTargetConfig.svelte'; import SourceTargetConfig from './SourceTargetConfig.svelte';
import useEffect from '../utility/useEffect';
// export let uploadedFile = undefined; // export let uploadedFile = undefined;
// export let openedFile = undefined; // export let openedFile = undefined;
export let previewReaderStore; export let previewReaderStore;
export let isTabActive;
const { values, setFieldValue } = getFormContext(); const { values, setFieldValue } = getFormContext();
@@ -113,36 +115,20 @@
previewSource.set previewSource.set
); );
// setFieldValue('sourceList', [...(sourceList || []), file.originalName]); // setFieldValue('sourceList', [...(sourceList || []), file.originalName]);
}; }
onMount(() => { $: effectActiveTab = useEffect(() => {
setUploadListener(addUploadedFile); if (isTabActive) {
// if (uploadedFile) { setUploadListener(addUploadedFile);
// handleUpload(uploadedFile); return () => {
// } setUploadListener(null);
// if (openedFile) { };
// handleUpload(openedFile); } else {
// // addFilesToSourceList( return () => {};
// // $extensions, }
// // [
// // {
// // fileName: openedFile.filePath,
// // shortName: openedFile.shortName,
// // },
// // ],
// // $values,
// // values,
// // !sourceList || sourceList.length == 0 ? openedFile.storageType : null,
// // previewSource.set
// // );
// }
return () => {
setUploadListener(null);
};
}); });
// engine={sourceEngine}
// {setPreviewSource} $effectActiveTab;
</script> </script>
<div class="flex1"> <div class="flex1">

View File

@@ -16,7 +16,14 @@
import { getDefaultFileFormat } from '../plugins/fileformats'; import { getDefaultFileFormat } from '../plugins/fileformats';
import RunnerOutputFiles from '../query/RunnerOutputFiles.svelte'; import RunnerOutputFiles from '../query/RunnerOutputFiles.svelte';
import SocketMessageView from '../query/SocketMessageView.svelte'; import SocketMessageView from '../query/SocketMessageView.svelte';
import { currentArchive, currentDatabase, extensions, visibleWidgetSideBar, selectedWidget } from '../stores'; import {
currentArchive,
currentDatabase,
extensions,
visibleWidgetSideBar,
selectedWidget,
activeTabId,
} from '../stores';
import { apiCall, apiOff, apiOn } from '../utility/api'; import { apiCall, apiOff, apiOn } from '../utility/api';
import createRef from '../utility/createRef'; import createRef from '../utility/createRef';
import openNewTab from '../utility/openNewTab'; import openNewTab from '../utility/openNewTab';
@@ -104,7 +111,7 @@
} }
} }
$: effect = useEffect(() => registerRunnerDone(runnerId)); $: effectRunner = useEffect(() => registerRunnerDone(runnerId));
function registerRunnerDone(rid) { function registerRunnerDone(rid) {
if (rid) { if (rid) {
@@ -117,7 +124,7 @@
} }
} }
$: $effect; $: $effectRunner;
const handleRunnerDone = () => { const handleRunnerDone = () => {
busy = false; busy = false;
@@ -172,7 +179,11 @@
<FormProviderCore values={formValues}> <FormProviderCore values={formValues}>
<HorizontalSplitter initialValue="70%"> <HorizontalSplitter initialValue="70%">
<div class="content" slot="1"> <div class="content" slot="1">
<ImportExportConfigurator bind:this={domConfigurator} {previewReaderStore} /> <ImportExportConfigurator
bind:this={domConfigurator}
{previewReaderStore}
isTabActive={tabid == $activeTabId}
/>
{#if busy} {#if busy}
<LoadingInfo wrapper message="Processing import/export ..." /> <LoadingInfo wrapper message="Processing import/export ..." />