diff --git a/frontend/src/lib/components/apps/components/display/table/AppAggridInfiniteTable.svelte b/frontend/src/lib/components/apps/components/display/table/AppAggridInfiniteTable.svelte index 3b9b2e0281..86c3267a0d 100644 --- a/frontend/src/lib/components/apps/components/display/table/AppAggridInfiniteTable.svelte +++ b/frontend/src/lib/components/apps/components/display/table/AppAggridInfiniteTable.svelte @@ -31,17 +31,11 @@ let runnableComponent: RunnableComponent | undefined = undefined function clear() { - lastComponentInput = componentInput - setTimeout(() => { aggrid?.clearRows() }, 0) } - let lastComponentInput = componentInput - - $: JSON.stringify(lastComponentInput) !== JSON.stringify(componentInput) && clear() - const context = getContext('AppViewerContext') const { app, worldStore } = context @@ -182,6 +176,9 @@ {render} autoRefresh={true} allowConcurentRequests + on:argsChanged={() => { + clear() + }} >
{#if resolvedConfig.searchEnabled} diff --git a/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte b/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte index 2e735ca9dc..bff80635d4 100644 --- a/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte +++ b/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte @@ -137,6 +137,8 @@ resultJobLoader && refreshIfAutoRefresh('arg changed') + $: runnableInputValues && dispatch('argsChanged') + $: refreshOn = runnable && runnable.type === 'runnableByName' ? runnable.inlineScript?.refreshOn ?? [] : [] diff --git a/frontend/src/lib/components/apps/components/helpers/RunnableWrapper.svelte b/frontend/src/lib/components/apps/components/helpers/RunnableWrapper.svelte index 612bd96a82..09098cd712 100644 --- a/frontend/src/lib/components/apps/components/helpers/RunnableWrapper.svelte +++ b/frontend/src/lib/components/apps/components/helpers/RunnableWrapper.svelte @@ -275,6 +275,7 @@ on:done on:doneError on:cancel + on:argsChanged on:resultSet={() => (initializing = false)} on:success={(e) => { onSuccess(e.detail)