| | |
| | | passedInAvailableNodes?: Node[] |
| | | } |
| | | |
| | | // TODO: loop type? |
| | | const useAvailableVarList = (nodeId: string, { |
| | | onlyLeafNodeVar, |
| | | filterVar, |
| | |
| | | onlyLeafNodeVar: false, |
| | | filterVar: () => true, |
| | | }) => { |
| | | const { getTreeLeafNodes, getBeforeNodesInSameBranchIncludeParent } = useWorkflow() |
| | | const { getTreeLeafNodes, getBeforeNodesInSameBranch } = useWorkflow() |
| | | const { getNodeAvailableVars } = useWorkflowVariables() |
| | | const isChatMode = useIsChatMode() |
| | | |
| | | const availableNodes = passedInAvailableNodes || (onlyLeafNodeVar ? getTreeLeafNodes(nodeId) : getBeforeNodesInSameBranchIncludeParent(nodeId)) |
| | | const availableNodes = passedInAvailableNodes || (onlyLeafNodeVar ? getTreeLeafNodes(nodeId) : getBeforeNodesInSameBranch(nodeId)) |
| | | |
| | | const { |
| | | parentNode: iterationNode, |
| | |
| | | return { |
| | | availableVars, |
| | | availableNodes, |
| | | availableNodesWithParent: availableNodes, |
| | | availableNodesWithParent: iterationNode ? [...availableNodes, iterationNode] : availableNodes, |
| | | } |
| | | } |
| | | |