feat: reset to last run var

pull/21369/head
Joel 1 year ago
parent e7463273c7
commit 0600f10e12

@ -9,14 +9,17 @@ import {
useEditInspectorVar, useEditInspectorVar,
useInvalidateConversationVarValues, useInvalidateConversationVarValues,
useInvalidateSysVarValues, useInvalidateSysVarValues,
useLastRun,
useSysVarValues, useSysVarValues,
} from '@/service/use-workflow' } from '@/service/use-workflow'
import { useCallback, useEffect, useState } from 'react'
const useInspectVarsCrud = () => { const useInspectVarsCrud = () => {
const workflowStore = useWorkflowStore() const workflowStore = useWorkflowStore()
const { const {
appId, appId,
nodesWithInspectVars, nodesWithInspectVars,
getNodeInspectVars,
setNodeInspectVars, setNodeInspectVars,
setInspectVarValue, setInspectVarValue,
renameInspectVarName: renameInspectVarNameInStore, renameInspectVarName: renameInspectVarNameInStore,
@ -74,14 +77,27 @@ const useInspectVarsCrud = () => {
deleteAllInspectVarsInStore() deleteAllInspectVarsInStore()
} }
const editInspectVarValue = async (nodeId: string, varId: string, value: any) => { const editInspectVarValue = useCallback(async (nodeId: string, varId: string, value: any) => {
await doEditInspectorVar({ await doEditInspectorVar({
nodeId, nodeId,
varId, varId,
value, value,
}) })
setInspectVarValue(nodeId, varId, value) setInspectVarValue(nodeId, varId, value)
}, [doEditInspectorVar, setInspectVarValue])
const [currNodeId, setCurrNodeId] = useState<string | null>(null)
const [currEditVarId, setCurrEditVarId] = useState<string | null>(null)
const { data } = useLastRun(appId, currNodeId || '', !!currNodeId)
useEffect(() => {
if (data && currNodeId && currEditVarId) {
const inspectVar = getNodeInspectVars(currNodeId)?.vars?.find(item => item.id === currEditVarId);
(async () => {
await editInspectVarValue(currNodeId, currEditVarId, data.outputs?.[inspectVar?.selector?.[1] || ''])
setCurrNodeId(null)
})()
} }
}, [data, currNodeId, currEditVarId, getNodeInspectVars, editInspectVarValue])
const renameInspectVarName = async (nodeId: string, varId: string, selector: ValueSelector) => { const renameInspectVarName = async (nodeId: string, varId: string, selector: ValueSelector) => {
await doEditInspectorVar({ await doEditInspectorVar({
@ -96,11 +112,9 @@ const useInspectVarsCrud = () => {
deleteNodeInspectorVars(nodeId) deleteNodeInspectorVars(nodeId)
} }
const resetToLastRunVar = (nodeId: string, key: string) => { const resetToLastRunVar = (nodeId: string, varId: string) => {
// const lastRunVar = getLastRunVar(nodeId, key) setCurrNodeId(nodeId)
// if (lastRunVar) setCurrEditVarId(varId)
// editInspectVarValue(nodeId, key, lastRunVar)
// TODO
} }
// console.log(conversationVars, systemVars) // console.log(conversationVars, systemVars)

Loading…
Cancel
Save