MCPcopy
hub / github.com/date-fns/date-fns / closestTo

Function closestTo

pkgs/core/src/closestTo/index.ts:58–84  ·  view source on GitHub ↗
(
  dateToCompare: DateToCompare,
  dates: DatesType,
  options?: Options | undefined,
)

Source from the content-addressed store, hash-verified

56 * //=> Tue Jan 01 2030 00:00:00
57 */
58export function closestTo<
59 DateToCompare extends DateArg<Date>,
60 DatesType extends DateArg<Date>[],
61 Options extends ClosestToOptions | undefined = undefined,
62>(
63 dateToCompare: DateToCompare,
64 dates: DatesType,
65 options?: Options | undefined,
66): ClosestToResult<DateToCompare, DatesType, Options> | undefined {
67 const [dateToCompare_, ...dates_] = normalizeDates(
68 options?.in,
69 dateToCompare,
70 ...dates,
71 );
72
73 const index = closestIndexTo(dateToCompare_, dates_);
74
75 if (typeof index === "number" && isNaN(index))
76 return constructFrom(dateToCompare_, NaN) as ClosestToResult<
77 DateToCompare,
78 DatesType,
79 Options
80 >;
81
82 if (index !== undefined)
83 return dates_[index] as ClosestToResult<DateToCompare, DatesType, Options>;
84}

Callers 1

test.tsFile · 0.90

Calls 3

normalizeDatesFunction · 0.90
closestIndexToFunction · 0.90
constructFromFunction · 0.90

Tested by

no test coverage detected