flowise / packages /ui /src /hooks /useConfirm.js
rohan13's picture
Flowise Changes
4114d85
raw
history blame contribute delete
862 Bytes
import { useContext } from 'react'
import ConfirmContext from 'store/context/ConfirmContext'
import { HIDE_CONFIRM, SHOW_CONFIRM } from 'store/actions'
let resolveCallback
const useConfirm = () => {
const [confirmState, dispatch] = useContext(ConfirmContext)
const closeConfirm = () => {
dispatch({
type: HIDE_CONFIRM
})
}
const onConfirm = () => {
closeConfirm()
resolveCallback(true)
}
const onCancel = () => {
closeConfirm()
resolveCallback(false)
}
const confirm = (confirmPayload) => {
dispatch({
type: SHOW_CONFIRM,
payload: confirmPayload
})
return new Promise((res) => {
resolveCallback = res
})
}
return { confirm, onConfirm, onCancel, confirmState }
}
export default useConfirm