fix(date-utils): Stop mutating the moment prototype

This commit is contained in:
Juan Tejada 2016-02-24 09:57:38 -08:00
parent b106bed2a4
commit b7a6643f76

View file

@ -12,16 +12,16 @@ const Days = {
ThisWeekend: 6,
}
moment.prototype.oclock = function oclock() {
return this.minute(0).second(0)
function oclock(momentDate) {
return momentDate.minute(0).second(0)
}
moment.prototype.morning = function morning(morningHour = Hours.Morning) {
return this.hour(morningHour).oclock()
function morning(momentDate, morningHour = Hours.Morning) {
return oclock(momentDate.hour(morningHour))
}
moment.prototype.evening = function evening(eveningHour = Hours.Evening) {
return this.hour(eveningHour).oclock()
function evening(momentDate, eveningHour = Hours.Evening) {
return oclock(momentDate.hour(eveningHour))
}
@ -50,34 +50,34 @@ const DateUtils = {
},
laterToday(now = moment()) {
return now.add(3, 'hours').oclock();
return oclock(now.add(3, 'hours'));
},
tonight(now = moment()) {
if (now.hour() >= Hours.Evening) {
return DateUtils.tomorrowEvening();
}
return now.evening();
return evening(now)
},
tomorrow(now = moment()) {
return now.add(1, 'day').morning();
return morning(now.add(1, 'day'));
},
tomorrowEvening(now = moment()) {
return now.add(1, 'day').evening()
return evening(now.add(1, 'day'));
},
thisWeekend(now = moment()) {
return now.day(Days.ThisWeekend).morning()
return morning(now.day(Days.ThisWeekend))
},
nextWeek(now = moment()) {
return now.day(Days.NextMonday).morning()
return morning(now.day(Days.NextMonday))
},
nextMonth(now = moment()) {
return now.add(1, 'month').date(1).morning()
return morning(now.add(1, 'month').date(1))
},
/**