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 53 54 55 56 57 58 59 60 61 62 63 64 65 | 58x 215x 215x 215x 36x 36x 50x 2x 48x 48x 48x 48x 16x 32x 36x 55x 55x 22x 22x 22x 22x 22x 22x 55x | import { formatDate } from '~/lib/utils/datetime_utility'; const PERIOD_DATE_FORMAT = 'mmm d, yyyy'; /** * The arguments are two date strings in formatted in ISO 8601 (YYYY-MM-DD) * * @returns {string} ex. "Oct 1, 2021 - Oct 10, 2021" */ export function getIterationPeriod({ startDate, dueDate }) { const start = formatDate(startDate, PERIOD_DATE_FORMAT, true); const due = formatDate(dueDate, PERIOD_DATE_FORMAT, true); return `${start} - ${due}`; } /** * Group a list of iterations by cadence. * * @param iterations A list of iterations * @return {Array} A list of cadences */ export function groupByIterationCadences(iterations) { const cadences = []; iterations.forEach((iteration) => { if (!iteration.iterationCadence) { return; } const { title, id } = iteration.iterationCadence; const cadenceIteration = { id: iteration.id, title: iteration.title, period: getIterationPeriod(iteration), }; const cadence = cadences.find((c) => c.title === title); if (cadence) { cadence.iterations.push(cadenceIteration); } else { cadences.push({ title, iterations: [cadenceIteration], id }); } }); return cadences; } export function groupOptionsByIterationCadences(iterations) { const cadences = []; iterations.forEach((iteration) => { Iif (!iteration.iterationCadence) { return; } const { title } = iteration.iterationCadence; const cadenceIteration = { value: iteration.id, title: iteration.title, text: getIterationPeriod(iteration), }; const cadence = cadences.find((c) => c.text === title); Iif (cadence) { cadence.options.push(cadenceIteration); } else { cadences.push({ text: title, options: [cadenceIteration] }); } }); return cadences; } |