@momentum-ui/react
Version:
Cisco Momentum UI framework for ReactJs applications
85 lines (81 loc) • 2.43 kB
JavaScript
import moment from 'moment';
export function newDateWithOffset(utcOffset) {
return moment().utc().utcOffset(utcOffset);
}
export function now(maybeFixedUtcOffset) {
if (maybeFixedUtcOffset == null) {
return moment();
}
return newDateWithOffset(maybeFixedUtcOffset);
}
export function getStartOfWeek(date) {
return date.startOf('week');
}
export function getStartOfMonth(date) {
return date.startOf('month');
} // Returns day of month
export function getDate(date) {
return date.get('date');
}
export function getMonth(date) {
return date.get('month');
}
export function addDays(date, amount) {
return date.add(amount, 'days');
}
export function addWeeks(date, amount) {
return date.add(amount, 'weeks');
}
export function addMonths(date, amount) {
return date.add(amount, 'months');
}
export function subtractDays(date, amount) {
return date.subtract(amount, "days");
}
export function subtractWeeks(date, amount) {
return date.subtract(amount, "weeks");
}
export function subtractMonths(date, amount) {
return date.subtract(amount, 'months');
}
export function getLocaleData(date) {
return date.localeData();
}
export function getWeekdayMinInLocale(locale, date) {
return locale.weekdaysMin(date).substr(0, 1);
}
export function localizeDate(date, locale) {
if (locale === void 0) {
locale = moment.locale();
}
return date.clone().locale(locale);
}
export function isSameDay(moment1, moment2) {
if (moment1 && moment2) {
return moment1.isSame(moment2, 'day');
} else {
return !moment1 && !moment2;
}
}
export function isSameMonth(date1, date2) {
if (date1 && date2) {
return date1.isSame(date2, 'month');
} else {
return !date1 && !date2;
}
}
export function isDayDisabled(day, _temp) {
var _ref = _temp === void 0 ? {} : _temp,
minDate = _ref.minDate,
maxDate = _ref.maxDate,
filterDate = _ref.filterDate;
return minDate && day.isBefore(moment(minDate), 'day') || maxDate && day.isAfter(moment(maxDate), 'day') || filterDate && filterDate(day.clone()) || false;
}
export function shouldPrevMonthDisable(day, minDate) {
var firstDayOfCurrMonth = day.clone().startOf('month');
return minDate && !moment(minDate).isBefore(firstDayOfCurrMonth);
}
export function shouldNextMonthDisable(day, maxDate) {
var lastDayOfCurrMonth = day.clone().endOf('month');
return maxDate && !moment(maxDate).isAfter(lastDayOfCurrMonth);
}