/** * JoinConfig - Konfiguration für Join Nodes * * Props: * - node: React Flow Node object (type='join') * - onChange: (nodeId, updates) => void */ export function JoinConfig({ node, onChange }) { const joinStrategy = node.data.join_strategy || 'wait_all' const skipHandling = node.data.skip_handling || 'ignore_skipped' const minPaths = node.data.min_paths || 2 const handleStrategyChange = (e) => { onChange(node.id, { join_strategy: e.target.value }) } const handleSkipChange = (e) => { onChange(node.id, { skip_handling: e.target.value }) } const handleMinPathsChange = (e) => { const value = parseInt(e.target.value) || 2 onChange(node.id, { min_paths: value }) } return (

Join-Konfiguration

{joinStrategy === 'wait_all' && 'Wartet auf alle eingehenden Pfade. Fehler wenn einer fehlt.'} {joinStrategy === 'wait_any' && 'Wartet auf mindestens einen Pfad. Erste verfügbare Ausführung.'} {joinStrategy === 'best_effort' && 'Fehlertoleranz: Nutzt verfügbare Pfade, auch wenn nicht alle da sind.'}
{skipHandling === 'require_minimum' && ( <> )}
💡 Phase 4: Path Consolidation
) }