formatDuration
import { formatDuration } from "https://esm.sh/v135/date-fns@3.6.0/index.d.mts";
@example
// Format full duration
formatDuration({
years: 2,
months: 9,
weeks: 1,
days: 7,
hours: 5,
minutes: 9,
seconds: 30
})
//=> '2 years 9 months 1 week 7 days 5 hours 9 minutes 30 seconds'
@example
// Format partial duration
formatDuration({ months: 9, days: 2 })
//=> '9 months 2 days'
@example
// Customize the format
formatDuration(
{
years: 2,
months: 9,
weeks: 1,
days: 7,
hours: 5,
minutes: 9,
seconds: 30
},
{ format: ['months', 'weeks'] }
) === '9 months 1 week'
@example
// Customize the zeros presence
formatDuration({ years: 0, months: 9 })
//=> '9 months'
formatDuration({ years: 0, months: 9 }, { zero: true })
//=> '0 years 9 months'
@example
// Customize the delimiter
formatDuration({ years: 2, months: 9, weeks: 3 }, { delimiter: ', ' })
//=> '2 years, 9 months, 3 weeks'