diff --git a/frontend/src/lib/components/apps/components/inputs/AppS3FileInput.svelte b/frontend/src/lib/components/apps/components/inputs/AppS3FileInput.svelte index 002ec519fb..32f99024c6 100644 --- a/frontend/src/lib/components/apps/components/inputs/AppS3FileInput.svelte +++ b/frontend/src/lib/components/apps/components/inputs/AppS3FileInput.svelte @@ -44,8 +44,9 @@ } } + let value: { path: string; filename: string }[] | undefined = undefined const outputs = initOutput($worldStore, id, { - result: [] as { path: string; filename: string }[] | undefined, + result: value ?? ([] as { path: string; filename: string }[] | undefined), loading: false, jobId: undefined }) @@ -124,15 +125,18 @@ customResourceType="s3" customClass={css?.container?.class} customStyle={css?.container?.style} + {fileUploads} {workspace} on:addition={(evt) => { const curr = outputs.result.peak() - outputs.result.set(curr.concat(evt.detail)) + value = curr.concat(evt.detail) + outputs.result.set(value) onFileChange?.forEach((id) => $runnableComponents?.[id]?.cb?.forEach((cb) => cb?.())) }} on:deletion={(evt) => { const curr = outputs.result.peak() - outputs.result.set(curr.filter((file) => file.path !== evt.detail?.path)) + value = curr.filter((file) => file.path !== evt.detail?.path) + outputs.result.set(value) }} {forceDisplayUploads} /> diff --git a/frontend/src/lib/components/apps/components/inputs/AppTextInput.svelte b/frontend/src/lib/components/apps/components/inputs/AppTextInput.svelte index b7cf25c245..546125c410 100644 --- a/frontend/src/lib/components/apps/components/inputs/AppTextInput.svelte +++ b/frontend/src/lib/components/apps/components/inputs/AppTextInput.svelte @@ -43,7 +43,7 @@ let value: string | undefined = resolvedConfig.defaultValue let outputs = initOutput($worldStore, id, { - result: '' + result: value ?? '' }) onDestroy(() => { diff --git a/frontend/src/lib/components/common/fileUpload/FileUpload.svelte b/frontend/src/lib/components/common/fileUpload/FileUpload.svelte index 507bf8b6a7..4ba06e3d99 100644 --- a/frontend/src/lib/components/common/fileUpload/FileUpload.svelte +++ b/frontend/src/lib/components/common/fileUpload/FileUpload.svelte @@ -24,6 +24,7 @@ export let forceDisplayUploads: boolean = false export let defaultValue: string | undefined = undefined export let workspace: string | undefined = undefined + export let fileUploads: Writable = writable([]) const dispatch = createEventDispatcher() @@ -37,8 +38,6 @@ file?: File } - let fileUploads: Writable = writable([]) - async function handleChange(files: File[] | undefined) { for (const file of files ?? []) { uploadFileToS3(file, file.name)