timeAgo
Formats a date as a human-readable relative time string.
Uses Intl.RelativeTimeFormat under the hood, making the output
locale-aware (e.g. “il y a 3 jours” in French).
Returns null if the input date is invalid.
Available since v2.0.0
Import
Section titled “Import”Signature
Section titled “Signature”Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
date | DateLike | The date to describe relative to now |
options | TimeAgoOptions | Optional configuration (reference date, locale, numeric style) |
Returns
Section titled “Returns”string | null — A locale-aware relative time string, or null
Examples
Section titled “Examples”timeAgo
Section titled “timeAgo”Related Types
Section titled “Related Types”TimeAgoOptions
Section titled “TimeAgoOptions”Options for timeAgo.
DateLike
Section titled “DateLike”A value that can be converted to a Date.
Date— used as-is (validated for Invalid Date)number— treated as a timestamp (seconds or milliseconds, auto-detected);0is treated as invalid and producesnullin ensureDatestring— parsed vianew Date(string)EpochMilliseconds— any object with aepochMillisecondsproperty (e.g.Temporal.Instant,Temporal.ZonedDateTime)
// TODO: When the Temporal API reaches Stage 4 and is available without // flags in all major runtimes, consider narrowing the union to the // concrete Temporal types for stricter type-checking.
EpochMilliseconds
Section titled “EpochMilliseconds”An object that exposes an epoch timestamp in milliseconds.
This structural type is satisfied by Temporal.Instant and
Temporal.ZonedDateTime (and any future object that carries the same
property), so callers can pass Temporal values without importing them.
