MCPcopy Index your code
hub / github.com/FlowiseAI/Flowise / NodeInputHandler

Function NodeInputHandler

packages/ui/src/views/canvas/NodeInputHandler.jsx:130–1663  ·  view source on GitHub ↗
({
    inputAnchor,
    inputParam,
    data,
    disabled = false,
    isAdditionalParams = false,
    disablePadding = false,
    parentParamForArray = null,
    arrayIndex = null,
    onHideNodeInfoDialog,
    onCustomDataChange
})

Source from the content-addressed store, hash-verified

128// ===========================|| NodeInputHandler ||=========================== //
129
130const NodeInputHandler = ({
131 inputAnchor,
132 inputParam,
133 data,
134 disabled = false,
135 isAdditionalParams = false,
136 disablePadding = false,
137 parentParamForArray = null,
138 arrayIndex = null,
139 onHideNodeInfoDialog,
140 onCustomDataChange
141}) => {
142 const { id: chatflowIdFromParams } = useParams()
143 const canvasChatflow = useSelector((state) => state.canvas.chatflow)
144 const chatflowId = chatflowIdFromParams || canvasChatflow?.id
145
146 const theme = useTheme()
147 const customization = useSelector((state) => state.customization)
148 const ref = useRef(null)
149 const { reactFlowInstance, deleteEdge, onNodeDataChange } = useContext(flowContext)
150 const updateNodeInternals = useUpdateNodeInternals()
151
152 useNotifier()
153 const dispatch = useDispatch()
154 const enqueueSnackbar = (...args) => dispatch(enqueueSnackbarAction(...args))
155 const closeSnackbar = (...args) => dispatch(closeSnackbarAction(...args))
156
157 const [position, setPosition] = useState(0)
158 const [showExpandDialog, setShowExpandDialog] = useState(false)
159 const [expandDialogProps, setExpandDialogProps] = useState({})
160 const [showExpandRichDialog, setShowExpandRichDialog] = useState(false)
161 const [expandRichDialogProps, setExpandRichDialogProps] = useState({})
162 const [showAsyncOptionDialog, setAsyncOptionEditDialog] = useState('')
163 const [asyncOptionEditDialogProps, setAsyncOptionEditDialogProps] = useState({})
164 const [reloadTimestamp, setReloadTimestamp] = useState(Date.now().toString())
165 const [showFormatPromptValuesDialog, setShowFormatPromptValuesDialog] = useState(false)
166 const [formatPromptValuesDialogProps, setFormatPromptValuesDialogProps] = useState({})
167 const [showPromptHubDialog, setShowPromptHubDialog] = useState(false)
168 const [showManageScrapedLinksDialog, setShowManageScrapedLinksDialog] = useState(false)
169 const [manageScrapedLinksDialogProps, setManageScrapedLinksDialogProps] = useState({})
170 const [showInputHintDialog, setShowInputHintDialog] = useState(false)
171 const [inputHintDialogProps, setInputHintDialogProps] = useState({})
172 const [showConditionDialog, setShowConditionDialog] = useState(false)
173 const [conditionDialogProps, setConditionDialogProps] = useState({})
174 const [isNvidiaNIMDialogOpen, setIsNvidiaNIMDialogOpen] = useState(false)
175 const [tabValue, setTabValue] = useState(0)
176
177 // Webhook secret — holds plaintext only for the current session (generate/regenerate response).
178 // Cleared on page reload; the configured state comes from canvasChatflow.webhookSecretConfigured.
179 const [webhookSecretPlaintext, setWebhookSecretPlaintext] = useState(null)
180
181 const handleSetWebhookSecret = async () => {
182 if (!chatflowId) return
183 try {
184 const resp = await chatflowsApi.setWebhookSecret(chatflowId)
185 setWebhookSecretPlaintext(resp.data.webhookSecret)
186 dispatch({ type: SET_CHATFLOW, chatflow: { ...canvasChatflow, webhookSecretConfigured: true } })
187 enqueueSnackbar({

Callers

nothing calls this directly

Calls 15

useUpdateNodeInternalsFunction · 0.90
isValidConnectionFunction · 0.90
enqueueSnackbarFunction · 0.90
initNodeFunction · 0.90
closeSnackbarFunction · 0.90
useNotifierFunction · 0.85
onInputHintDialogClickedFunction · 0.85
getTabValueFunction · 0.85
getDataGridColDefFunction · 0.85
getJSONValueFunction · 0.85
onEditJSONClickedFunction · 0.85

Tested by

no test coverage detected