Replacing mucus default with secondarySymptom
This commit is contained in:
+4
-1
@@ -16,7 +16,10 @@ export default function getSymptoThermalStatus(cycleInfo) {
|
||||
// if there was no first higher measurement in the previous cycle,
|
||||
// no infertile pre-ovulatory phase may be assumed
|
||||
if (previousCycle) {
|
||||
const statusForLast = getSymptoThermalStatus({ cycle: previousCycle })
|
||||
const statusForLast = getSymptoThermalStatus({
|
||||
cycle: previousCycle,
|
||||
secondarySymptom: secondarySymptom
|
||||
})
|
||||
if (statusForLast.temperatureShift) {
|
||||
const preOvuPhase = getPreOvulatoryPhase(
|
||||
cycle,
|
||||
|
||||
@@ -12,7 +12,7 @@ export default function(cycle, previousCycles) {
|
||||
const maybePreOvuDays = cycle.slice(0, preOvuPhaseLength).filter(d => {
|
||||
return d.date <= preOvuEndDate
|
||||
})
|
||||
const preOvulatoryDays = getDaysUntilFertileMucus(maybePreOvuDays)
|
||||
const preOvulatoryDays = getDaysUntilFertileSecondarySymptom(maybePreOvuDays)
|
||||
// if mucus occurs on the 1st cycle day, there is no pre-ovu phase
|
||||
if (!preOvulatoryDays.length) return null
|
||||
|
||||
@@ -34,13 +34,17 @@ export default function(cycle, previousCycles) {
|
||||
}
|
||||
}
|
||||
|
||||
function getDaysUntilFertileMucus(days) {
|
||||
const firstFertileMucusDayIndex = days.findIndex(day => {
|
||||
return day.mucus && day.mucus.value > 1
|
||||
function getDaysUntilFertileSecondarySymptom(days, secondarySymptom) {
|
||||
const firstFertileSecondarySymptomDayIndex = days.findIndex(day => {
|
||||
if (secondarySymptom === 'mucus') {
|
||||
return day.mucus && day.mucus.value > 1
|
||||
} else if (secondarySymptom === 'cervix') {
|
||||
return day.cervix && !day.cervix.isClosedAndHard
|
||||
}
|
||||
})
|
||||
|
||||
if (firstFertileMucusDayIndex > -1) {
|
||||
return days.slice(0, firstFertileMucusDayIndex)
|
||||
if (firstFertileSecondarySymptomDayIndex > -1) {
|
||||
return days.slice(0, firstFertileSecondarySymptomDayIndex)
|
||||
}
|
||||
return days
|
||||
}
|
||||
Reference in New Issue
Block a user