devextreme
Version:
JavaScript/TypeScript Component Suite for Responsive Web Development
43 lines (42 loc) • 1.95 kB
JavaScript
/**
* DevExtreme (cjs/__internal/scheduler/appointments_new/utils/get_targeted_appointment.js)
* Version: 26.1.3
* Build date: Wed Jun 10 2026
*
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getTargetedAppointment = void 0;
var _appointment_groups_utils = require("../../../scheduler/utils/resource_manager/appointment_groups_utils");
var _group_utils = require("../../../scheduler/utils/resource_manager/group_utils");
const setTargetedAppointmentResources = (targetedAppointment, appointmentViewModel, resourceManager) => {
const {
groups: groups,
resourceById: resourceById,
groupsLeafs: groupsLeafs
} = resourceManager;
if (groups.length) {
const cellGroups = (0, _group_utils.getLeafGroupValues)(groupsLeafs, appointmentViewModel.groupIndex);
(0, _appointment_groups_utils.setAppointmentGroupValues)(targetedAppointment, resourceById, cellGroups)
}
};
const getTargetedAppointment = (appointmentViewModel, dataAccessor, resourceManager) => {
const {
info: info,
itemData: itemData
} = appointmentViewModel;
const displayDates = "partialDates" in info ? info.partialDates : info.appointment;
const targetedAppointment = Object.assign({}, itemData, {
displayStartDate: new Date(displayDates.startDate),
displayEndDate: new Date(displayDates.endDate)
});
dataAccessor.set("startDate", targetedAppointment, new Date(info.sourceAppointment.startDate));
dataAccessor.set("endDate", targetedAppointment, new Date(info.sourceAppointment.endDate));
setTargetedAppointmentResources(targetedAppointment, appointmentViewModel, resourceManager);
return targetedAppointment
};
exports.getTargetedAppointment = getTargetedAppointment;