import React from 'react'; import { cn } from '../../utils/cn'; import { Divider } from '../divider'; import { useStepperContext, type StepperContext } from './stepper-context'; export interface StepperItemConnectorProps extends React.HTMLAttributes { isCompletedStep: boolean; isLastStep?: boolean | null; hasLabel?: boolean; index: number; } const spacing: Record, string> = { sm: 'ms-2.5 ps-6', md: 'ms-4 ps-8', lg: 'ms-5 ps-8', none: '', }; const positions: Record, string> = { sm: 'absolute top-3 left-[calc(-50%_+_10px)] left-[calc(50%_+_10px)]', md: 'absolute top-4 left-[calc(-50%_+_10px)] left-[calc(50%_+_10px)]', lg: 'absolute top-5 left-[calc(-50%_+_10px)] left-[calc(50%_+_10px)]', none: '', }; const StepperItemConnector = React.memo(({ isCompletedStep, children, isLastStep }: StepperItemConnectorProps) => { const { isVertical, centeredLabel, size } = useStepperContext(); if (isVertical) { return (
{!isCompletedStep &&
{children}
}
); } if (isLastStep) { return null; } return ( ); }); StepperItemConnector.displayName = 'StepperItemConnector'; export { StepperItemConnector };