phx-react
Version:
PHX REACT
212 lines • 8.04 kB
JavaScript
;
exports.__esModule = true;
exports.classNames = exports.isValidDateFormat = exports.checkDisabled = exports.checkActive = exports.getMinutes = exports.getHour = exports.dateStrToDate = exports.getMonthName = exports.createMonthCalendarWithAdjacentMonths = exports.formatViewResult = exports.formatDate = void 0;
var formatDate = function (date) {
var year = date.getFullYear();
var month = String(date.getMonth() + 1).padStart(2, '0');
var day = String(date.getDate()).padStart(2, '0');
return "".concat(day, "-").concat(month, "-").concat(year);
};
exports.formatDate = formatDate;
function formatViewResult(startDate, endDate) {
var today = new Date();
var yesterday = new Date(today);
yesterday.setDate(yesterday.getDate() - 1);
var sevenDaysAgo = new Date(today);
sevenDaysAgo.setDate(sevenDaysAgo.getDate() - 7);
var thirtyDaysAgo = new Date(today);
thirtyDaysAgo.setDate(thirtyDaysAgo.getDate() - 30);
var startDateResult = formatDate2(startDate);
var endDateResult = formatDate2(endDate);
if (isEqualDates(today, startDate) && isEqualDates(today, endDate)) {
return 'Ngày hôm nay';
}
else if (isEqualDates(yesterday, startDate) && isEqualDates(yesterday, endDate)) {
return 'Ngày hôm qua';
}
else if (isNDaysAgo(startDate, endDate, 7)) {
return '7 ngày qua';
}
else if (isNDaysAgo(startDate, endDate, 30)) {
return '30 ngày qua';
}
else if (isNDaysAgo(startDate, endDate, 90)) {
return '90 ngày qua';
}
else if (isNDaysAgo(startDate, endDate, 365)) {
return '365 ngày qua';
}
else {
var startYear = startDate.getFullYear();
var endYear = endDate.getFullYear();
var viewResult = void 0;
if (startYear === endYear) {
viewResult = startDateResult.substring(0, 5) + ' - ' + endDateResult;
}
else {
viewResult = startDateResult + ' - ' + endDateResult;
}
return viewResult;
}
}
exports.formatViewResult = formatViewResult;
function isEqualDates(date1, date2) {
return date1.toDateString() === date2.toDateString();
}
function formatDate2(date) {
var day = ('0' + date.getDate()).slice(-2);
var month = ('0' + (date.getMonth() + 1)).slice(-2);
var year = date.getFullYear();
return day + '/' + month + '/' + year;
}
function isNDaysAgo(startDate, endDate, daysAgo) {
var today = new Date();
var nDaysAgo = new Date(today);
nDaysAgo.setDate(nDaysAgo.getDate() - (daysAgo - 1));
return startDate.toDateString() === nDaysAgo.toDateString() && endDate.toDateString() === today.toDateString();
}
var createMonthCalendarWithAdjacentMonths = function (year, month) {
var getFirstDayOfMonth = function (years, months) {
var firstDay = new Date(years, months, 1);
var dayOfWeek = firstDay.getDay();
return { date: firstDay, dayOfWeek: dayOfWeek };
};
var getDaysInMonth = function (years, months) { return new Date(years, months + 1, 0).getDate(); };
var firstDayInfo = getFirstDayOfMonth(year, month);
var daysInMonth = getDaysInMonth(year, month);
var calendar = [];
for (var day = 1; day <= daysInMonth; day++) {
calendar.push({
date: (0, exports.formatDate)(new Date(year, month, day)),
dayOfWeek: (firstDayInfo.dayOfWeek + day - 1) % 7,
isCurrentMonth: true,
isToday: (0, exports.formatDate)(new Date(year, month, day)) === (0, exports.formatDate)(new Date())
});
}
return calendar;
};
exports.createMonthCalendarWithAdjacentMonths = createMonthCalendarWithAdjacentMonths;
var getMonthName = function (month) {
var currentMonth;
switch (month) {
case 0:
currentMonth = 'Tháng 1';
break;
case 1:
currentMonth = 'Tháng 2';
break;
case 2:
currentMonth = 'Tháng 3';
break;
case 3:
currentMonth = 'Tháng 4';
break;
case 4:
currentMonth = 'Tháng 5';
break;
case 5:
currentMonth = 'Tháng 6';
break;
case 6:
currentMonth = 'Tháng 7';
break;
case 7:
currentMonth = 'Tháng 8';
break;
case 8:
currentMonth = 'Tháng 9';
break;
case 9:
currentMonth = 'Tháng 10';
break;
case 10:
currentMonth = 'Tháng 11';
break;
case 11:
currentMonth = 'Tháng 12';
break;
default:
break;
}
return currentMonth;
};
exports.getMonthName = getMonthName;
var dateStrToDate = function (date) {
var fullDate = date === null || date === void 0 ? void 0 : date.split('-');
return new Date(parseInt(fullDate[2]), parseInt(fullDate[1]) - 1, parseInt(fullDate[0]));
};
exports.dateStrToDate = dateStrToDate;
var getHour = function () {
var currentHour = new Date().getHours();
var hourInDay = [];
for (var i = 0; i < 24; i++) {
// eslint-disable-next-line no-unused-expressions
i < 10 ? hourInDay.push("0".concat(i)) : hourInDay.push("".concat(i));
}
var arrayHour = hourInDay.map(function (item) { return ({
name: item,
current: parseInt(item) === currentHour
}); });
return arrayHour;
};
exports.getHour = getHour;
var getMinutes = function () {
var currentMinute = new Date().getMinutes();
var minutes = [];
for (var i = 0; i < 60; i++) {
// eslint-disable-next-line no-unused-expressions
i < 10 ? minutes.push("0".concat(i)) : minutes.push("".concat(i));
}
var arrayMinutes = minutes.map(function (item) { return ({
name: item,
current: parseInt(item) === currentMinute
}); });
return arrayMinutes;
};
exports.getMinutes = getMinutes;
var checkActive = function (select, date) {
var dateArr = date.split('-');
var selectArr = select.split('-');
return (parseInt(dateArr[0]) === parseInt(selectArr[0]) &&
parseInt(dateArr[1]) === parseInt(selectArr[1]) &&
parseInt(dateArr[2]) === parseInt(selectArr[2]));
};
exports.checkActive = checkActive;
var checkDisabled = function (allDate) {
if ((allDate === null || allDate === void 0 ? void 0 : allDate.startDisabled) && (allDate === null || allDate === void 0 ? void 0 : allDate.endDisabled)) {
return ((0, exports.dateStrToDate)(allDate.date) >= (0, exports.dateStrToDate)(allDate.startDisabled) &&
(0, exports.dateStrToDate)(allDate.date) <= (0, exports.dateStrToDate)(allDate.endDisabled));
}
if (allDate === null || allDate === void 0 ? void 0 : allDate.disabledDate) {
return allDate.disabledDate.includes(allDate.date);
}
if (allDate === null || allDate === void 0 ? void 0 : allDate.max) {
return (0, exports.dateStrToDate)(allDate.date) > (0, exports.dateStrToDate)(allDate.max);
}
if (allDate === null || allDate === void 0 ? void 0 : allDate.min) {
return (0, exports.dateStrToDate)(allDate.date) < (0, exports.dateStrToDate)(allDate.min);
}
};
exports.checkDisabled = checkDisabled;
function isValidDateFormat(dateString) {
var regex = /^\d{2}-\d{2}-\d{4}$/;
if (!regex.test(dateString)) {
return false;
}
var parts = dateString.split('-');
var day = parseInt(parts[0], 10);
var month = parseInt(parts[1], 10) - 1;
var year = parseInt(parts[2], 10);
var date = new Date(year, month, day);
return date.getDate() === day && date.getMonth() === month && date.getFullYear() === year;
}
exports.isValidDateFormat = isValidDateFormat;
function classNames() {
var classes = [];
for (var _i = 0; _i < arguments.length; _i++) {
classes[_i] = arguments[_i];
}
return classes.filter(Boolean).join(' ');
}
exports.classNames = classNames;
//# sourceMappingURL=utils.js.map