import React from 'react'; import { ArrowDown, ArrowRight, ArrowUp } from 'lucide-react'; const CircularRNAPipeline = ({ title = "Bioinformatics Pipeline", leftSteps = [ "Raw Sequencing Data (fastq files)", "Quality Control and Preprocessing of Data", "High Quality Sequencing Data (fastq file)", "Alignment to Reference Genome" ], rightSteps = [ "Downstream Advanced Analysis", "Circular RNA Identification", "Circular RNA Prediction", "Back Splicing Junction Reads" ], backgroundColor = "bg-gray-50", cardColor = "bg-gray-300", textColor = "text-teal-600", arrowColor = "text-gray-600", className = "", cardClassName = "", titleClassName = "" }) => { // Combine steps for mobile layout const mobileSteps = [...leftSteps, ...rightSteps.slice().reverse()]; return (

{title}

{/* Pipeline Flowchart */}
{/* Mobile Layout - Single Column */}
{mobileSteps.map((step, index) => (

{step}

{index < mobileSteps.length - 1 && ( )}
))}
{/* Tablet and Desktop Layout - Two Columns */}
{/* Left Column */}
{leftSteps.map((step, index) => (

{step}

{index < leftSteps.length - 1 && ( )}
))}
{/* Right Column */}
{rightSteps.map((step, index) => (

{step}

{index < rightSteps.length - 1 && ( )}
))}
{/* Custom arrows from "Alignment to Reference Genome" */}
{/* Arrow 1: Straight horizontal to "Back Splicing Junction Reads" (Unmapped Reads) */}
{/* Horizontal line */}
{/* Arrowhead */}
{/* Label */}
Unmapped Reads
{/* Arrow 2: Diagonal upward to "Circular RNA Prediction" (Mapped Reads) */}
{/* Diagonal line going up and right */}
{/* Arrowhead positioned at the end of diagonal line */}
{/* Label */}
Mapped Reads
); }; export default CircularRNAPipeline;