/* eslint-disable eslint-comments/no-unlimited-disable */ /* eslint-disable */ // @ts-nocheck import { constructFrom } from '../constructFrom/index.ts'; import type { ContextFn, DateArg } from '../types.ts'; /** * @name constructNow * @category Generic Helpers * @summary Constructs a new current date using the passed value constructor. * @pure false * * @description * The function constructs a new current date using the constructor from * the reference date. It helps to build generic functions that accept date * extensions and use the current date. * * It defaults to `Date` if the passed reference date is a number or a string. * * @param date - The reference date to take constructor from * * @returns Current date initialized using the given date constructor * * @example * import { constructNow, isSameDay } from 'date-fns' * * function isToday( * date: DateArg, * ): boolean { * // If we were to use `new Date()` directly, the function would behave * // differently in different timezones and return false for the same date. * return isSameDay(date, constructNow(date)); * } */ export function constructNow( date: DateArg | ContextFn | undefined, ): ResultDate { return constructFrom(date, Date.now()); } /* eslint-enable */