12345678910111213141516171819202122232425262728293031323334353637383940 |
- var parse = require('../parse/index.js')
- var addDays = require('../add_days/index.js')
- function setDay (dirtyDate, dirtyDay, dirtyOptions) {
- var weekStartsOn = dirtyOptions ? (Number(dirtyOptions.weekStartsOn) || 0) : 0
- var date = parse(dirtyDate)
- var day = Number(dirtyDay)
- var currentDay = date.getDay()
- var remainder = day % 7
- var dayIndex = (remainder + 7) % 7
- var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay
- return addDays(date, diff)
- }
- module.exports = setDay
|