import React, { useCallback, useState } from 'react';
import { View } from 'react-native';
import type { MockCode } from '../../bluetooth/readMeter';
import type { ReadStrategy } from '../../parsing/ReadStrategy';
import ReadingResult from './components/ReadingResult';
import InteractionWithProbe from './components/InteractionWithProbe';
import styles from './styles';
import NoProbeWrapper from '../NoProbeWrapper';
interface StepsTranslations {
titleWithDate: string;
titleWithoutDate: string;
interactionWithProbeDescription: string;
interactionWithProbeTextButton: string;
readingResultTextButton: string;
titleSuccessWithDate: string;
titleSuccessWithoutDate: string;
onErrorWithDate: string;
onErrorWithoutDate: string;
meterFamilyTypePrepositionBadge: string;
}
interface Props {
onClose: Function;
translations: StepsTranslations;
onSuccess: Function;
loadingCurrentDevice: boolean;
mockCode?: MockCode;
readStrategy: ReadStrategy;
reconnectionOrLinkWithProbeTranslations: any;
goToProbeProbePairing: Function;
time: String;
date?: String;
}
const ChangeDatetime = ({
onClose,
translations,
onSuccess,
loadingCurrentDevice,
readStrategy,
mockCode,
reconnectionOrLinkWithProbeTranslations,
goToProbeProbePairing,
time,
date,
}: Props) => {
const [readingResult, setReadingResult] = useState();
const [error, setError] = useState('');
const meterFamilyType = 'Elster';
const changeDateAndTime = !!date && !!time;
const onError = useCallback(() => {
setError(changeDateAndTime ? translations.onErrorWithDate : translations.onErrorWithoutDate);
}, [changeDateAndTime, translations.onErrorWithDate, translations.onErrorWithoutDate]);
if (readingResult === null || error) {
return (
);
} else {
return (
);
}
};
export default ChangeDatetime;