UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

53 lines (52 loc) 2.12 kB
/** * DevExtreme (esm/renovation/ui/scheduler/common.js) * Version: 21.2.4 * Build date: Mon Dec 06 2021 * * Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { utils } from "../../../ui/scheduler/utils"; import { TimeZoneCalculator } from "./timeZoneCalculator/utils"; import timeZoneUtils from "../../../ui/scheduler/utils.timeZone"; import { createExpressions } from "../../../ui/scheduler/resources/utils"; export var createDataAccessors = function(props) { var forceIsoDateParsing = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : false; var dataAccessors = utils.dataAccessors.create({ startDate: props.startDateExpr, endDate: props.endDateExpr, startDateTimeZone: props.startDateTimeZoneExpr, endDateTimeZone: props.endDateTimeZoneExpr, allDay: props.allDayExpr, text: props.textExpr, description: props.descriptionExpr, recurrenceRule: props.recurrenceRuleExpr, recurrenceException: props.recurrenceExceptionExpr }, null, forceIsoDateParsing, props.dateSerializationFormat); dataAccessors.resources = createExpressions(props.resources); return dataAccessors }; export var createTimeZoneCalculator = currentTimeZone => new TimeZoneCalculator({ getClientOffset: date => timeZoneUtils.getClientTimezoneOffset(date), getCommonOffset: date => timeZoneUtils.calculateTimezoneByValue(currentTimeZone, date), getAppointmentOffset: (date, appointmentTimezone) => timeZoneUtils.calculateTimezoneByValue(appointmentTimezone, date) }); export var isViewDataProviderConfigValid = (viewDataProviderConfig, currentViewOptions) => { if (!viewDataProviderConfig) { return false } var result = true; Object.entries(viewDataProviderConfig).forEach(_ref => { var [key, value] = _ref; if (value !== currentViewOptions[key]) { result = false } }); return result };