import React, { useState } from 'react' import { StyleSheet, View } from 'react-native' import PropTypes from 'prop-types' import AppPage from '../common/app-page' import SymptomBox from './symptom-box' import SymptomPageTitle from './symptom-page-title' import { getCycleDay } from '../../db' import { getData, nextDate, prevDate } from '../helpers/cycle-day' import { sexTrackingCategoryObservable } from '../../local-storage' import { Spacing } from '../../styles' import { SYMPTOMS } from '../../config' const CycleDayOverView = ({ date, setDate, isTemperatureEditView }) => { const cycleDay = getCycleDay(date) const [editedSymptom, setEditedSymptom] = useState( isTemperatureEditView ? 'temperature' : '' ) const showNextCycleDay = () => { setDate(nextDate(date)) } const showPrevCycleDay = () => { setDate(prevDate(date)) } const isSexEnabled = sexTrackingCategoryObservable.value const allesymptoms = SYMPTOMS.map((symptom) => { if (symptom === 'sex') { if (isSexEnabled) { return symptom } } else { return symptom } }) const cleanSymptoms = allesymptoms.filter(Boolean) return ( {cleanSymptoms.map((symptom) => { const symptomData = cycleDay && cycleDay[symptom] ? cycleDay[symptom] : null return ( ) })} ) } CycleDayOverView.propTypes = { cycleDay: PropTypes.object, date: PropTypes.string, setDate: PropTypes.func, isTemperatureEditView: PropTypes.bool, } const styles = StyleSheet.create({ container: { flexDirection: 'row', flexWrap: 'wrap', justifyContent: 'space-between', padding: Spacing.base, }, }) export default CycleDayOverView