2
0

Introduce bot v2 in builder (#328)

Also, the new engine is the default for updated typebots for viewer

Closes #211
This commit is contained in:
Baptiste Arnaud
2023-02-21 15:25:14 +01:00
committed by GitHub
parent 527dc8a5b1
commit debdac12ff
208 changed files with 4462 additions and 5236 deletions

View File

@ -64,6 +64,7 @@ export const BlockNode = ({
setFocusedGroupId,
previewingEdge,
isReadOnly,
previewingBlock,
} = useGraph()
const { mouseOverBlock, setMouseOverBlock } = useBlockDnd()
const { typebot, updateBlock } = useTypebot()
@ -76,7 +77,10 @@ export const BlockNode = ({
)
const blockRef = useRef<HTMLDivElement | null>(null)
const isPreviewing = isConnecting || previewingEdge?.to.blockId === block.id
const isPreviewing =
isConnecting ||
previewingEdge?.to.blockId === block.id ||
previewingBlock?.id === block.id
const onDrag = (position: NodePosition) => {
if (block.type === 'start' || !onMouseDown) return

View File

@ -61,6 +61,7 @@ const NonMemoizedDraggableGroupNode = ({
connectingIds,
setConnectingIds,
previewingEdge,
previewingBlock,
isReadOnly,
focusedGroupId,
setFocusedGroupId,
@ -91,6 +92,7 @@ const NonMemoizedDraggableGroupNode = ({
}, [group.title])
const isPreviewing =
previewingBlock?.groupId === group.id ||
previewingEdge?.from.groupId === group.id ||
(previewingEdge?.to.groupId === group.id &&
isNotDefined(previewingEdge.to.blockId))

View File

@ -62,11 +62,18 @@ export type Endpoint = {
export type GroupsCoordinates = IdMap<Coordinates>
type PreviewingBlock = {
id: string
groupId: string
}
const graphContext = createContext<{
graphPosition: Position
setGraphPosition: Dispatch<SetStateAction<Position>>
connectingIds: ConnectingIds | null
setConnectingIds: Dispatch<SetStateAction<ConnectingIds | null>>
previewingBlock?: PreviewingBlock
setPreviewingBlock: Dispatch<SetStateAction<PreviewingBlock | undefined>>
previewingEdge?: Edge
setPreviewingEdge: Dispatch<SetStateAction<Edge | undefined>>
sourceEndpoints: IdMap<Endpoint>
@ -99,6 +106,7 @@ export const GraphProvider = ({
)
const [connectingIds, setConnectingIds] = useState<ConnectingIds | null>(null)
const [previewingEdge, setPreviewingEdge] = useState<Edge>()
const [previewingBlock, setPreviewingBlock] = useState<PreviewingBlock>()
const [sourceEndpoints, setSourceEndpoints] = useState<IdMap<Endpoint>>({})
const [targetEndpoints, setTargetEndpoints] = useState<IdMap<Endpoint>>({})
const [openedBlockId, setOpenedBlockId] = useState<string>()
@ -139,6 +147,8 @@ export const GraphProvider = ({
isReadOnly,
focusedGroupId,
setFocusedGroupId,
setPreviewingBlock,
previewingBlock,
}}
>
{children}