scheduler-react
Version:
A scheduler and resource planning component built for React
171 lines (138 loc) • 6.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isCurrentTime = exports.isFridayTime = exports.isNonWorkingTime = exports.getScrollSpecialMoment = exports.getEventImg = exports.getEventLabel = exports.getEventText = exports.getDateLabel = exports.getNonAgendaViewBodyCellBgColor = exports.getCustomDate = exports.getSummary = undefined;
var _index = require('./index');
//getSummary func example
var getSummary = exports.getSummary = function getSummary(schedulerData, headerEvents, slotId, slotName, headerStart, headerEnd) {
return { text: 'Summary', color: 'red', fontSize: '1.2rem' };
};
//getCustomDate example
var getCustomDate = exports.getCustomDate = function getCustomDate(schedulerData, num) {
var date = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
var viewType = schedulerData.viewType;
var selectDate = schedulerData.startDate;
if (date != undefined) selectDate = date;
var startDate = num === 0 ? selectDate : schedulerData.localeMoment(selectDate).add(2 * num, 'days').format(_index.DATE_FORMAT),
endDate = schedulerData.localeMoment(startDate).add(1, 'days').format(_index.DATE_FORMAT),
cellUnit = _index.CellUnits.Hour;
if (viewType === _index.ViewTypes.Custom1) {
var monday = schedulerData.localeMoment(selectDate).startOf('week').format(_index.DATE_FORMAT);
startDate = num === 0 ? monday : schedulerData.localeMoment(monday).add(2 * num, 'weeks').format(_index.DATE_FORMAT);
endDate = schedulerData.localeMoment(startDate).add(1, 'weeks').endOf('week').format(_index.DATE_FORMAT);
cellUnit = _index.CellUnits.Day;
} else if (viewType === _index.ViewTypes.Custom2) {
var firstDayOfMonth = schedulerData.localeMoment(selectDate).startOf('month').format(_index.DATE_FORMAT);
startDate = num === 0 ? firstDayOfMonth : schedulerData.localeMoment(firstDayOfMonth).add(2 * num, 'months').format(_index.DATE_FORMAT);
endDate = schedulerData.localeMoment(startDate).add(1, 'months').endOf('month').format(_index.DATE_FORMAT);
cellUnit = _index.CellUnits.Day;
}
return {
startDate: startDate,
endDate: endDate,
cellUnit: cellUnit
};
};
//getNonAgendaViewBodyCellBgColor example
var getNonAgendaViewBodyCellBgColor = exports.getNonAgendaViewBodyCellBgColor = function getNonAgendaViewBodyCellBgColor(schedulerData, slotId, header) {
if (!header.nonWorkingTime) {
return '#87e8de';
}
return undefined;
};
//getDateLabel func example
var getDateLabel = exports.getDateLabel = function getDateLabel(schedulerData, viewType, startDate, endDate) {
var start = schedulerData.localeMoment(startDate);
var end = schedulerData.localeMoment(endDate);
var dateLabel = start.format('MMM D, YYYY');
if (viewType === _index.ViewTypes.Week || start != end && (viewType === _index.ViewTypes.Custom || viewType === _index.ViewTypes.Custom1 || viewType === _index.ViewTypes.Custom2)) {
dateLabel = start.format('MMM D') + '-' + end.format('D, YYYY');
if (start.month() !== end.month()) dateLabel = start.format('MMM D') + '-' + end.format('MMM D, YYYY');
if (start.year() !== end.year()) dateLabel = start.format('MMM D, YYYY') + '-' + end.format('MMM D, YYYY');
} else if (viewType === _index.ViewTypes.Month) {
dateLabel = start.format('MMMM YYYY');
} else if (viewType === _index.ViewTypes.Quarter) {
dateLabel = start.format('MMM D') + '-' + end.format('MMM D, YYYY');
} else if (viewType === _index.ViewTypes.Year) {
dateLabel = start.format('YYYY');
}
return dateLabel;
};
var getEventText = exports.getEventText = function getEventText(schedulerData, event) {
if (!schedulerData.isEventPerspective) return event.title;
var eventText = event.title;
schedulerData.resources.forEach(function (item) {
if (item.id === event.resourceId) {
eventText = item.name;
}
});
return eventText;
};
var getEventLabel = exports.getEventLabel = function getEventLabel(schedulerData, event) {
if (!schedulerData.isEventPerspective) return event.label;
var eventLabel = event.label;
schedulerData.resources.forEach(function (item) {
if (item.id === event.resourceId) {
eventLabel = item.label;
}
});
return eventLabel;
};
var getEventImg = exports.getEventImg = function getEventImg(schedulerData, event) {
if (!schedulerData.isEventPerspective) return event.img;
var eventImg = event.img;
schedulerData.resources.forEach(function (item) {
if (item.id === event.resourceId) {
eventLabel = item.img;
}
});
return eventImg;
};
var getScrollSpecialMoment = exports.getScrollSpecialMoment = function getScrollSpecialMoment(schedulerData, startMoment, endMoment) {
// return endMoment;
var localeMoment = schedulerData.localeMoment;
return localeMoment();
};
var isNonWorkingTime = exports.isNonWorkingTime = function isNonWorkingTime(schedulerData, time) {
var localeMoment = schedulerData.localeMoment;
if (schedulerData.cellUnit === _index.CellUnits.Hour) {
var hour = localeMoment(time).hour();
if (hour < 9 || hour > 18) return true;
} else {
var dayOfWeek = localeMoment(time).weekday();
if (dayOfWeek === 0 || dayOfWeek === 6) return true;
}
return false;
};
var isFridayTime = exports.isFridayTime = function isFridayTime(schedulerData, time) {
var localeMoment = schedulerData.localeMoment;
var dayOfWeek = localeMoment(time).weekday();
if (dayOfWeek === 5) {
return true;
}
return false;
};
var isCurrentTime = exports.isCurrentTime = function isCurrentTime(schedulerData, time) {
var localeMoment = schedulerData.localeMoment;
var dayOfWeek = localeMoment(time).weekday();
if (dayOfWeek === 5) {
return true;
}
return false;
};
exports.default = {
//getSummaryFunc: getSummary,
getSummaryFunc: undefined,
//getCustomDateFunc: getCustomDate,
getCustomDateFunc: undefined,
// getNonAgendaViewBodyCellBgColorFunc: getNonAgendaViewBodyCellBgColor,
getNonAgendaViewBodyCellBgColorFunc: undefined,
getScrollSpecialMomentFunc: getScrollSpecialMoment,
getDateLabelFunc: getDateLabel,
getEventTextFunc: getEventText,
getEventLabelFunc: getEventLabel,
getEventImgFunc: getEventImg,
isNonWorkingTimeFunc: isNonWorkingTime,
isFridayTimeFunc: isFridayTime
};