import { chakra } from '@chakra-ui/system' import { useTypebot } from 'contexts/TypebotContext/TypebotContext' import { ChoiceItem } from 'models' import React, { useMemo } from 'react' import { isDefined, isSingleChoiceInput } from 'utils' import { DrawingEdge } from './DrawingEdge' import { Edge } from './Edge' export const Edges = () => { const { typebot } = useTypebot() const stepIdsWithTarget: string[] = useMemo(() => { if (!typebot) return [] return typebot.steps.allIds.filter((stepId) => isDefined(typebot.steps.byId[stepId].target) ) }, [typebot]) const singleChoiceItemsWithTarget: ChoiceItem[] = useMemo(() => { if (!typebot) return [] return typebot.choiceItems.allIds .filter( (itemId) => isDefined(typebot.choiceItems.byId[itemId].target) && isSingleChoiceInput( typebot.steps.byId[typebot.choiceItems.byId[itemId].stepId] ) ) .map((itemId) => typebot.choiceItems.byId[itemId]) }, [typebot]) return ( {stepIdsWithTarget.map((stepId) => ( ))} {singleChoiceItemsWithTarget.map((item) => ( ))} ) }