( dates: Array<DateArg<DateType>>, options?: MinOptions<ResultDate> | undefined, )
| 35 | * //=> Wed Feb 11 1987 00:00:00 |
| 36 | */ |
| 37 | export function min<DateType extends Date, ResultDate extends Date = DateType>( |
| 38 | dates: Array<DateArg<DateType>>, |
| 39 | options?: MinOptions<ResultDate> | undefined, |
| 40 | ): ResultDate { |
| 41 | let result: ResultDate | undefined; |
| 42 | let context = options?.in; |
| 43 | |
| 44 | dates.forEach((date) => { |
| 45 | // Use the first date object as the context function |
| 46 | if (!context && typeof date === "object") |
| 47 | context = constructFrom.bind(null, date) as ContextFn<ResultDate>; |
| 48 | |
| 49 | const date_ = toDate(date, context); |
| 50 | if (!result || result > date_ || isNaN(+date_)) result = date_; |
| 51 | }); |
| 52 | |
| 53 | return constructFrom(context, result || NaN); |
| 54 | } |
no test coverage detected