| 
                        1234567891011121314151617181920212223242526272829303132333435363738394041 | 
                        - import { useCallback } from 'react'
 - import produce from 'immer'
 - import useVarList from '../_base/hooks/use-var-list'
 - import type { Var } from '../../types'
 - import { VarType } from '../../types'
 - import type { AnswerNodeType } from './types'
 - import useNodeCrud from '@/app/components/workflow/nodes/_base/hooks/use-node-crud'
 - import {
 -   useNodesReadOnly,
 - } from '@/app/components/workflow/hooks'
 - 
 - const useConfig = (id: string, payload: AnswerNodeType) => {
 -   const { nodesReadOnly: readOnly } = useNodesReadOnly()
 -   const { inputs, setInputs } = useNodeCrud<AnswerNodeType>(id, payload)
 -   // variables
 -   const { handleVarListChange, handleAddVariable } = useVarList<AnswerNodeType>({
 -     inputs,
 -     setInputs,
 -   })
 - 
 -   const handleAnswerChange = useCallback((value: string) => {
 -     const newInputs = produce(inputs, (draft) => {
 -       draft.answer = value
 -     })
 -     setInputs(newInputs)
 -   }, [inputs, setInputs])
 - 
 -   const filterVar = useCallback((varPayload: Var) => {
 -     return varPayload.type !== VarType.arrayObject
 -   }, [])
 -   return {
 -     readOnly,
 -     inputs,
 -     handleVarListChange,
 -     handleAddVariable,
 -     handleAnswerChange,
 -     filterVar,
 -   }
 - }
 - 
 - export default useConfig
 
 
  |