import React from 'react'; import {TimelineStepStyle as S} from './styles/timeline-step.style'; import {DotLineComponent as DotLine} from '../../molecules/dot-line'; import {getVariantHof} from './utils/timeline-step-variant'; import {generateSubtitle} from './utils/timeline-step-subtitle'; import type { ITimelineStep, ITimelineStepItem, TimelineGetVariantType, } from './timeline-step.type'; export const TimelineStepComponent = ({ steps, status, hasSubtitle = true, startDateTitle = 'StartDate:', endDateTitle = 'Deadline:', }: ITimelineStep): React.ReactNode => { const getVariant: TimelineGetVariantType = getVariantHof(steps, status); return ( {steps.map((step: ITimelineStepItem, index: number) => { const variant = getVariant(index); const subtitle = hasSubtitle ? generateSubtitle(step, startDateTitle, endDateTitle) : undefined; return ( ); })} ); };