| | |
| | | } |
| | | |
| | | const store = useStoreApi() |
| | | const { getBeforeNodesInSameBranchIncludeParent } = useWorkflow() |
| | | const { getBeforeNodesInSameBranch } = useWorkflow() |
| | | |
| | | const { |
| | | getNodes, |
| | |
| | | const isInIteration = payload.isInIteration |
| | | const iterationNode = isInIteration ? getNodes().find(n => n.id === currentNode!.parentId) : null |
| | | const availableNodes = useMemo(() => { |
| | | return getBeforeNodesInSameBranchIncludeParent(id) |
| | | }, [getBeforeNodesInSameBranchIncludeParent, id]) |
| | | return getBeforeNodesInSameBranch(id) |
| | | }, [getBeforeNodesInSameBranch, id]) |
| | | const { inputs, setInputs } = useNodeCrud<AssignerNodeType>(id, payload) |
| | | const newSetInputs = useCallback((newInputs: AssignerNodeType) => { |
| | | const finalInputs = produce(newInputs, (draft) => { |
| | |
| | | const { getCurrentVariableType } = useWorkflowVariables() |
| | | const getAssignedVarType = useCallback((valueSelector: ValueSelector) => { |
| | | return getCurrentVariableType({ |
| | | parentNode: isInIteration ? iterationNode : null, |
| | | parentNode: iterationNode, |
| | | valueSelector: valueSelector || [], |
| | | availableNodes, |
| | | isChatMode, |
| | | isConstant: false, |
| | | }) |
| | | }, [getCurrentVariableType, isInIteration, iterationNode, availableNodes, isChatMode]) |
| | | }, [getCurrentVariableType, iterationNode, availableNodes, isChatMode]) |
| | | |
| | | const handleOperationListChanges = useCallback((items: AssignerNodeOperation[]) => { |
| | | const newInputs = produce(inputs, (draft) => { |
| | |
| | | newSetInputs(newInputs) |
| | | }, [inputs, newSetInputs]) |
| | | |
| | | const writeModeTypesArr = [WriteMode.overwrite, WriteMode.clear, WriteMode.append, WriteMode.extend, WriteMode.removeFirst, WriteMode.removeLast] |
| | | const writeModeTypesArr = [WriteMode.overwrite, WriteMode.clear, WriteMode.append, WriteMode.extend] |
| | | const writeModeTypes = [WriteMode.overwrite, WriteMode.clear, WriteMode.set] |
| | | const writeModeTypesNum = [WriteMode.increment, WriteMode.decrement, WriteMode.multiply, WriteMode.divide] |
| | | |
| | |
| | | }, []) |
| | | |
| | | const filterAssignedVar = useCallback((varPayload: Var, selector: ValueSelector) => { |
| | | if (varPayload.isLoopVariable) |
| | | return true |
| | | return selector.join('.').startsWith('conversation') |
| | | }, []) |
| | | |