All files / src/components/organizer/PartnerManagement PartnershipDatePicker.tsx

100% Statements 2/2
100% Branches 5/5
100% Functions 1/1
100% Lines 2/2

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52                            9x                   70x                                                      
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
import { FormControl, FormHelperText } from '@mui/material';
 
interface PartnershipDatePickerProps {
  label: string;
  value: Date | null;
  onChange: (date: Date | null) => void;
  name: string;
  minDate?: Date;
  maxDate?: Date;
  error?: string;
  disabled?: boolean;
}
 
export const PartnershipDatePicker: React.FC<PartnershipDatePickerProps> = ({
  label,
  value,
  onChange,
  name,
  minDate,
  maxDate,
  error,
  disabled = false,
}) => {
  return (
    <FormControl fullWidth error={!!error}>
      <DatePicker
        label={label}
        value={value}
        onChange={onChange}
        minDate={minDate}
        maxDate={maxDate}
        disabled={disabled}
        slotProps={{
          textField: {
            name,
            error: !!error,
            fullWidth: true,
            'aria-describedby': error ? `${name}-error` : undefined,
            inputProps: { 'data-testid': name },
          },
        }}
      />
      {error && (
        <FormHelperText id={`${name}-error`} error>
          {error}
        </FormHelperText>
      )}
    </FormControl>
  );
};