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

Function setWeekYear

pkgs/core/src/setWeekYear/index.ts:63–92  ·  view source on GitHub ↗
(
  date: DateArg<DateType>,
  weekYear: number,
  options?: SetWeekYearOptions<ResultDate>,
)

Source from the content-addressed store, hash-verified

61 * //=> Sat Jan 01 2005 00:00:00
62 */
63export function setWeekYear<
64 DateType extends Date,
65 ResultDate extends Date = DateType,
66>(
67 date: DateArg<DateType>,
68 weekYear: number,
69 options?: SetWeekYearOptions<ResultDate>,
70): ResultDate {
71 const defaultOptions = getDefaultOptions();
72 const firstWeekContainsDate =
73 options?.firstWeekContainsDate ??
74 options?.locale?.options?.firstWeekContainsDate ??
75 defaultOptions.firstWeekContainsDate ??
76 defaultOptions.locale?.options?.firstWeekContainsDate ??
77 1;
78
79 const diff = differenceInCalendarDays(
80 toDate(date, options?.in),
81 startOfWeekYear(date, options),
82 options,
83 );
84
85 const firstWeek = constructFrom(options?.in || date, 0);
86 firstWeek.setFullYear(weekYear, 0, firstWeekContainsDate);
87 firstWeek.setHours(0, 0, 0, 0);
88
89 const date_ = startOfWeekYear(firstWeek, options);
90 date_.setDate(date_.getDate() + diff);
91 return date_;
92}

Callers 2

test.tsFile · 0.90
test.tsFile · 0.90

Calls 5

getDefaultOptionsFunction · 0.90
differenceInCalendarDaysFunction · 0.90
toDateFunction · 0.90
startOfWeekYearFunction · 0.90
constructFromFunction · 0.90

Tested by

no test coverage detected