MCPcopy Create free account
hub / github.com/scottrogowski/code2flow / dayOfYearFromWeekInfo

Function dayOfYearFromWeekInfo

tests/test_code/js/moment/moment.js:2666–2725  ·  view source on GitHub ↗
(config)

Source from the content-addressed store, hash-verified

2664 }
2665
2666 function dayOfYearFromWeekInfo(config) {
2667 var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;
2668
2669 w = config._w;
2670 if (w.GG != null || w.W != null || w.E != null) {
2671 dow = 1;
2672 doy = 4;
2673
2674 // TODO: We need to take the current isoWeekYear, but that depends on
2675 // how we interpret now (local, utc, fixed offset). So create
2676 // a now version of current config (take local/utc/offset flags, and
2677 // create now).
2678 weekYear = defaults(
2679 w.GG,
2680 config._a[YEAR],
2681 weekOfYear(createLocal(), 1, 4).year
2682 );
2683 week = defaults(w.W, 1);
2684 weekday = defaults(w.E, 1);
2685 if (weekday < 1 || weekday > 7) {
2686 weekdayOverflow = true;
2687 }
2688 } else {
2689 dow = config._locale._week.dow;
2690 doy = config._locale._week.doy;
2691
2692 curWeek = weekOfYear(createLocal(), dow, doy);
2693
2694 weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);
2695
2696 // Default to current week.
2697 week = defaults(w.w, curWeek.week);
2698
2699 if (w.d != null) {
2700 // weekday -- low day numbers are considered next week
2701 weekday = w.d;
2702 if (weekday < 0 || weekday > 6) {
2703 weekdayOverflow = true;
2704 }
2705 } else if (w.e != null) {
2706 // local weekday -- counting starts from beginning of week
2707 weekday = w.e + dow;
2708 if (w.e < 0 || w.e > 6) {
2709 weekdayOverflow = true;
2710 }
2711 } else {
2712 // default to beginning of week
2713 weekday = dow;
2714 }
2715 }
2716 if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {
2717 getParsingFlags(config)._overflowWeeks = true;
2718 } else if (weekdayOverflow != null) {
2719 getParsingFlags(config)._overflowWeekday = true;
2720 } else {
2721 temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);
2722 config._a[YEAR] = temp.year;
2723 config._dayOfYear = temp.dayOfYear;

Callers 1

configFromArrayFunction · 0.85

Calls 6

defaultsFunction · 0.85
weekOfYearFunction · 0.85
createLocalFunction · 0.85
weeksInYearFunction · 0.85
getParsingFlagsFunction · 0.85
dayOfYearFromWeeksFunction · 0.85

Tested by

no test coverage detected