2
0

(engine) Implement skip on engine v2

This commit is contained in:
Baptiste Arnaud
2023-01-27 18:32:20 +01:00
parent f93bc2fcb2
commit d54822af2b
2 changed files with 13 additions and 6 deletions

View File

@ -52,7 +52,11 @@ export const continueBotFlow =
const formattedReply = formatReply(reply, block.type)
if (!formattedReply || !isReplyValid(formattedReply, block))
if (
!formattedReply ||
!isReplyValid(formattedReply, block) ||
(!formatReply && !canSkip(block.type))
)
return parseRetryMessage(block)
const newVariables = await processAndSaveAnswer(
@ -229,3 +233,6 @@ export const isReplyValid = (inputValue: string, block: Block): boolean => {
}
return true
}
export const canSkip = (inputType: InputBlockType) =>
inputType === InputBlockType.FILE

View File

@ -64,9 +64,9 @@ export const ConversationContainer = (props: Props) => {
)
})
const sendMessage = async (message: string) => {
const sendMessage = async (message: string | undefined) => {
const currentBlockId = chatChunks().at(-1)?.input?.id
if (currentBlockId && props.onAnswer)
if (currentBlockId && props.onAnswer && message)
props.onAnswer({ message, blockId: currentBlockId })
const longRequest = setTimeout(() => {
setIsSending(true)
@ -133,6 +133,8 @@ export const ConversationContainer = (props: Props) => {
}
}
const handleSkip = () => sendMessage(undefined)
return (
<div
ref={chatContainer}
@ -151,9 +153,7 @@ export const ConversationContainer = (props: Props) => {
onAllBubblesDisplayed={handleAllBubblesDisplayed}
onSubmit={sendMessage}
onScrollToBottom={autoScrollToBottom}
onSkip={() => {
// TODO: implement skip
}}
onSkip={handleSkip}
context={props.context}
/>
)}