UNPKG

devextreme-angular

Version:

Angular UI and visualization components based on DevExtreme widgets

1,214 lines (1,147 loc) • 76.8 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/platform-browser'), require('@angular/core'), require('devextreme/ui/scheduler'), require('devextreme-angular/core'), require('devextreme-angular/ui/nested')) : typeof define === 'function' && define.amd ? define('devextreme-angular/ui/scheduler', ['exports', '@angular/platform-browser', '@angular/core', 'devextreme/ui/scheduler', 'devextreme-angular/core', 'devextreme-angular/ui/nested'], factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["devextreme-angular"] = global["devextreme-angular"] || {}, global["devextreme-angular"].ui = global["devextreme-angular"].ui || {}, global["devextreme-angular"].ui.scheduler = {}), global.ng.platformBrowser, global.ng.core, global.DxScheduler, global["devextreme-angular"].core, global["devextreme-angular"].ui.nested)); })(this, (function (exports, i2, i0, DxScheduler, i1, nested) { 'use strict'; function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } function _interopNamespace(e) { if (e && e.__esModule) return e; var n = Object.create(null); if (e) { Object.keys(e).forEach(function (k) { if (k !== 'default') { var d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, get: function () { return e[k]; } }); } }); } n["default"] = e; return Object.freeze(n); } var i2__namespace = /*#__PURE__*/_interopNamespace(i2); var i0__namespace = /*#__PURE__*/_interopNamespace(i0); var DxScheduler__default = /*#__PURE__*/_interopDefaultLegacy(DxScheduler); var i1__namespace = /*#__PURE__*/_interopNamespace(i1); /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */ /* global Reflect, Promise */ var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; function __extends(d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); } var __assign = function () { __assign = Object.assign || function __assign(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; function __rest(s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; } function __decorate(decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; } function __param(paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); }; } function __metadata(metadataKey, metadataValue) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); } function __awaiter(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } function __generator(thisArg, body) { var _ = { label: 0, sent: function () { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } } function __createBinding(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; } function __exportStar(m, exports) { for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p]; } function __values(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); } function __read(o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; } function __spread() { for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; } function __spreadArrays() { for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j]; return r; } ; function __await(v) { return this instanceof __await ? (this.v = v, this) : new __await(v); } function __asyncGenerator(thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } function fulfill(value) { resume("next", value); } function reject(value) { resume("throw", value); } function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } } function __asyncDelegator(o) { var i, p; return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } } function __asyncValues(o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator], i; return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); } } function __makeTemplateObject(cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; } ; function __importStar(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result.default = mod; return result; } function __importDefault(mod) { return (mod && mod.__esModule) ? mod : { default: mod }; } function __classPrivateFieldGet(receiver, privateMap) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return privateMap.get(receiver); } function __classPrivateFieldSet(receiver, privateMap, value) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to set private field on non-instance"); } privateMap.set(receiver, value); return value; } /** * The Scheduler is a UI component that represents scheduled data and allows a user to manage and edit it. */ var DxSchedulerComponent = /** @class */ (function (_super) { __extends(DxSchedulerComponent, _super); function DxSchedulerComponent(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) { var _this = _super.call(this, elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId) || this; _this._watcherHelper = _watcherHelper; _this._idh = _idh; _this._createEventEmitters([ { subscribe: 'appointmentAdded', emit: 'onAppointmentAdded' }, { subscribe: 'appointmentAdding', emit: 'onAppointmentAdding' }, { subscribe: 'appointmentClick', emit: 'onAppointmentClick' }, { subscribe: 'appointmentContextMenu', emit: 'onAppointmentContextMenu' }, { subscribe: 'appointmentDblClick', emit: 'onAppointmentDblClick' }, { subscribe: 'appointmentDeleted', emit: 'onAppointmentDeleted' }, { subscribe: 'appointmentDeleting', emit: 'onAppointmentDeleting' }, { subscribe: 'appointmentFormOpening', emit: 'onAppointmentFormOpening' }, { subscribe: 'appointmentRendered', emit: 'onAppointmentRendered' }, { subscribe: 'appointmentTooltipShowing', emit: 'onAppointmentTooltipShowing' }, { subscribe: 'appointmentUpdated', emit: 'onAppointmentUpdated' }, { subscribe: 'appointmentUpdating', emit: 'onAppointmentUpdating' }, { subscribe: 'cellClick', emit: 'onCellClick' }, { subscribe: 'cellContextMenu', emit: 'onCellContextMenu' }, { subscribe: 'contentReady', emit: 'onContentReady' }, { subscribe: 'disposing', emit: 'onDisposing' }, { subscribe: 'initialized', emit: 'onInitialized' }, { subscribe: 'optionChanged', emit: 'onOptionChanged' }, { emit: 'accessKeyChange' }, { emit: 'adaptivityEnabledChange' }, { emit: 'allDayExprChange' }, { emit: 'allDayPanelModeChange' }, { emit: 'appointmentCollectorTemplateChange' }, { emit: 'appointmentDraggingChange' }, { emit: 'appointmentTemplateChange' }, { emit: 'appointmentTooltipTemplateChange' }, { emit: 'cellDurationChange' }, { emit: 'crossScrollingEnabledChange' }, { emit: 'currentDateChange' }, { emit: 'currentViewChange' }, { emit: 'customizeDateNavigatorTextChange' }, { emit: 'dataCellTemplateChange' }, { emit: 'dataSourceChange' }, { emit: 'dateCellTemplateChange' }, { emit: 'dateSerializationFormatChange' }, { emit: 'descriptionExprChange' }, { emit: 'disabledChange' }, { emit: 'dropDownAppointmentTemplateChange' }, { emit: 'editingChange' }, { emit: 'elementAttrChange' }, { emit: 'endDateExprChange' }, { emit: 'endDateTimeZoneExprChange' }, { emit: 'endDayHourChange' }, { emit: 'firstDayOfWeekChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'groupByDateChange' }, { emit: 'groupsChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'indicatorUpdateIntervalChange' }, { emit: 'maxChange' }, { emit: 'maxAppointmentsPerCellChange' }, { emit: 'minChange' }, { emit: 'noDataTextChange' }, { emit: 'recurrenceEditModeChange' }, { emit: 'recurrenceExceptionExprChange' }, { emit: 'recurrenceRuleExprChange' }, { emit: 'remoteFilteringChange' }, { emit: 'resourceCellTemplateChange' }, { emit: 'resourcesChange' }, { emit: 'rtlEnabledChange' }, { emit: 'scrollingChange' }, { emit: 'selectedCellDataChange' }, { emit: 'shadeUntilCurrentTimeChange' }, { emit: 'showAllDayPanelChange' }, { emit: 'showCurrentTimeIndicatorChange' }, { emit: 'startDateExprChange' }, { emit: 'startDateTimeZoneExprChange' }, { emit: 'startDayHourChange' }, { emit: 'tabIndexChange' }, { emit: 'textExprChange' }, { emit: 'timeCellTemplateChange' }, { emit: 'timeZoneChange' }, { emit: 'useDropDownViewSwitcherChange' }, { emit: 'viewsChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } ]); _this._idh.setHost(_this); optionHost.setHost(_this); return _this; } Object.defineProperty(DxSchedulerComponent.prototype, "accessKey", { /** * Specifies the shortcut key that sets focus on the UI component. */ get: function () { return this._getOption('accessKey'); }, set: function (value) { this._setOption('accessKey', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "adaptivityEnabled", { /** * Specifies whether the UI component adapts to small screens. */ get: function () { return this._getOption('adaptivityEnabled'); }, set: function (value) { this._setOption('adaptivityEnabled', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "allDayExpr", { /** * Specifies the name of the data source item field whose value defines whether or not the corresponding appointment is an all-day appointment. */ get: function () { return this._getOption('allDayExpr'); }, set: function (value) { this._setOption('allDayExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "allDayPanelMode", { /** * Specifies the display mode for the All day panel. */ get: function () { return this._getOption('allDayPanelMode'); }, set: function (value) { this._setOption('allDayPanelMode', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "appointmentCollectorTemplate", { /** * Specifies a custom template for cell overflow indicators. */ get: function () { return this._getOption('appointmentCollectorTemplate'); }, set: function (value) { this._setOption('appointmentCollectorTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "appointmentDragging", { /** * Configures appointment reordering using drag and drop gestures. */ get: function () { return this._getOption('appointmentDragging'); }, set: function (value) { this._setOption('appointmentDragging', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "appointmentTemplate", { /** * Specifies a custom template for appointments. */ get: function () { return this._getOption('appointmentTemplate'); }, set: function (value) { this._setOption('appointmentTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "appointmentTooltipTemplate", { /** * Specifies a custom template for tooltips displayed when users click an appointment or cell overflow indicator. */ get: function () { return this._getOption('appointmentTooltipTemplate'); }, set: function (value) { this._setOption('appointmentTooltipTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "cellDuration", { /** * Specifies cell duration in minutes. This property&apos;s value should divide the interval between startDayHour and endDayHour into even parts. */ get: function () { return this._getOption('cellDuration'); }, set: function (value) { this._setOption('cellDuration', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "crossScrollingEnabled", { /** * Specifies whether or not an end user can scroll the view in both directions at the same time. */ get: function () { return this._getOption('crossScrollingEnabled'); }, set: function (value) { this._setOption('crossScrollingEnabled', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "currentDate", { /** * Specifies the current date. */ get: function () { return this._getOption('currentDate'); }, set: function (value) { this._setOption('currentDate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "currentView", { /** * Specifies the displayed view. Accepts name or type of a view available in the views array. */ get: function () { return this._getOption('currentView'); }, set: function (value) { this._setOption('currentView', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "customizeDateNavigatorText", { /** * Customizes the date navigator&apos;s text. */ get: function () { return this._getOption('customizeDateNavigatorText'); }, set: function (value) { this._setOption('customizeDateNavigatorText', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "dataCellTemplate", { /** * Specifies a custom template for table cells. */ get: function () { return this._getOption('dataCellTemplate'); }, set: function (value) { this._setOption('dataCellTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "dataSource", { /** * Binds the UI component to data. */ get: function () { return this._getOption('dataSource'); }, set: function (value) { this._setOption('dataSource', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "dateCellTemplate", { /** * Specifies a custom template for day scale items. */ get: function () { return this._getOption('dateCellTemplate'); }, set: function (value) { this._setOption('dateCellTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "dateSerializationFormat", { /** * Specifies the format in which date-time values should be sent to the server. */ get: function () { return this._getOption('dateSerializationFormat'); }, set: function (value) { this._setOption('dateSerializationFormat', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "descriptionExpr", { /** * Specifies the name of the data source item field whose value holds the description of the corresponding appointment. */ get: function () { return this._getOption('descriptionExpr'); }, set: function (value) { this._setOption('descriptionExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "disabled", { /** * Specifies whether the UI component responds to user interaction. */ get: function () { return this._getOption('disabled'); }, set: function (value) { this._setOption('disabled', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "dropDownAppointmentTemplate", { /** * Specifies a custom template for tooltips displayed when users click a cell overflow indicator. * @deprecated Use the appointmentTooltipTemplate option instead. */ get: function () { return this._getOption('dropDownAppointmentTemplate'); }, set: function (value) { this._setOption('dropDownAppointmentTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "editing", { /** * Specifies which editing operations a user can perform on appointments. */ get: function () { return this._getOption('editing'); }, set: function (value) { this._setOption('editing', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "elementAttr", { /** * Specifies the global attributes to be attached to the UI component&apos;s container element. */ get: function () { return this._getOption('elementAttr'); }, set: function (value) { this._setOption('elementAttr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "endDateExpr", { /** * Specifies the name of the data source item field that defines the ending of an appointment. */ get: function () { return this._getOption('endDateExpr'); }, set: function (value) { this._setOption('endDateExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "endDateTimeZoneExpr", { /** * Specifies the name of the data source item field that defines the timezone of the appointment end date. */ get: function () { return this._getOption('endDateTimeZoneExpr'); }, set: function (value) { this._setOption('endDateTimeZoneExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "endDayHour", { /** * Specifies the last hour on the time scale. Accepts integer values from 0 to 24. */ get: function () { return this._getOption('endDayHour'); }, set: function (value) { this._setOption('endDayHour', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "firstDayOfWeek", { /** * Specifies the first day of a week. Does not apply to the agenda view. */ get: function () { return this._getOption('firstDayOfWeek'); }, set: function (value) { this._setOption('firstDayOfWeek', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "focusStateEnabled", { /** * Specifies whether the UI component can be focused using keyboard navigation. */ get: function () { return this._getOption('focusStateEnabled'); }, set: function (value) { this._setOption('focusStateEnabled', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "groupByDate", { /** * If true, appointments are grouped by date first and then by resource; opposite if false. Applies only if appointments are grouped and groupOrientation is &apos;horizontal&apos;. */ get: function () { return this._getOption('groupByDate'); }, set: function (value) { this._setOption('groupByDate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "groups", { /** * Specifies the resource kinds by which the scheduler&apos;s appointments are grouped in a timetable. */ get: function () { return this._getOption('groups'); }, set: function (value) { this._setOption('groups', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "height", { /** * Specifies the UI component&apos;s height. */ get: function () { return this._getOption('height'); }, set: function (value) { this._setOption('height', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "hint", { /** * Specifies text for a hint that appears when a user pauses on the UI component. */ get: function () { return this._getOption('hint'); }, set: function (value) { this._setOption('hint', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "indicatorUpdateInterval", { /** * Specifies the time interval between when the date-time indicator changes its position, in milliseconds. */ get: function () { return this._getOption('indicatorUpdateInterval'); }, set: function (value) { this._setOption('indicatorUpdateInterval', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "max", { /** * The latest date the UI component allows you to select. */ get: function () { return this._getOption('max'); }, set: function (value) { this._setOption('max', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "maxAppointmentsPerCell", { /** * Specifies the limit of full-sized appointments displayed per cell. Applies to all views except &apos;agenda&apos;. */ get: function () { return this._getOption('maxAppointmentsPerCell'); }, set: function (value) { this._setOption('maxAppointmentsPerCell', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "min", { /** * The earliest date the UI component allows you to select. */ get: function () { return this._getOption('min'); }, set: function (value) { this._setOption('min', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "noDataText", { /** * Specifies the text or HTML markup displayed by the UI component if the item collection is empty. Available for the Agenda view only. */ get: function () { return this._getOption('noDataText'); }, set: function (value) { this._setOption('noDataText', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "recurrenceEditMode", { /** * Specifies the edit mode for recurring appointments. */ get: function () { return this._getOption('recurrenceEditMode'); }, set: function (value) { this._setOption('recurrenceEditMode', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "recurrenceExceptionExpr", { /** * Specifies the name of the data source item field that defines exceptions for the current recurring appointment. */ get: function () { return this._getOption('recurrenceExceptionExpr'); }, set: function (value) { this._setOption('recurrenceExceptionExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "recurrenceRuleExpr", { /** * Specifies the name of the data source item field that defines a recurrence rule for generating recurring appointments. */ get: function () { return this._getOption('recurrenceRuleExpr'); }, set: function (value) { this._setOption('recurrenceRuleExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "remoteFiltering", { /** * Specifies whether filtering is performed on the server or client side. */ get: function () { return this._getOption('remoteFiltering'); }, set: function (value) { this._setOption('remoteFiltering', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "resourceCellTemplate", { /** * Specifies a custom template for resource headers. */ get: function () { return this._getOption('resourceCellTemplate'); }, set: function (value) { this._setOption('resourceCellTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "resources", { /** * Specifies an array of resources available in the scheduler. */ get: function () { return this._getOption('resources'); }, set: function (value) { this._setOption('resources', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "rtlEnabled", { /** * Switches the UI component to a right-to-left representation. */ get: function () { return this._getOption('rtlEnabled'); }, set: function (value) { this._setOption('rtlEnabled', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "scrolling", { /** * Configures scrolling. */ get: function () { return this._getOption('scrolling'); }, set: function (value) { this._setOption('scrolling', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "selectedCellData", { /** * The data of the currently selected cells. */ get: function () { return this._getOption('selectedCellData'); }, set: function (value) { this._setOption('selectedCellData', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "shadeUntilCurrentTime", { /** * Specifies whether to apply shading to cover the timetable up to the current time. */ get: function () { return this._getOption('shadeUntilCurrentTime'); }, set: function (value) { this._setOption('shadeUntilCurrentTime', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "showAllDayPanel", { /** * Specifies the &apos;All-day&apos; panel&apos;s visibility. Setting this property to false hides the panel along with the all-day appointments. */ get: function () { return this._getOption('showAllDayPanel'); }, set: function (value) { this._setOption('showAllDayPanel', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "showCurrentTimeIndicator", { /** * Specifies the current date-time indicator&apos;s visibility. */ get: function () { return this._getOption('showCurrentTimeIndicator'); }, set: function (value) { this._setOption('showCurrentTimeIndicator', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "startDateExpr", { /** * Specifies the name of the data source item field that defines the start of an appointment. */ get: function () { return this._getOption('startDateExpr'); }, set: function (value) { this._setOption('startDateExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "startDateTimeZoneExpr", { /** * Specifies the name of the data source item field that defines the timezone of the appointment start date. */ get: function () { return this._getOption('startDateTimeZoneExpr'); }, set: function (value) { this._setOption('startDateTimeZoneExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "startDayHour", { /** * Specifies the first hour on the time scale. Accepts integer values from 0 to 24. */ get: function () { return this._getOption('startDayHour'); }, set: function (value) { this._setOption('startDayHour', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "tabIndex", { /** * Specifies the number of the element when the Tab key is used for navigating. */ get: function () { return this._getOption('tabIndex'); }, set: function (value) { this._setOption('tabIndex', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "textExpr", { /** * Specifies the name of the data source item field that holds the subject of an appointment. */ get: function () { return this._getOption('textExpr'); }, set: function (value) { this._setOption('textExpr', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "timeCellTemplate", { /** * Specifies a custom template for time scale items. */ get: function () { return this._getOption('timeCellTemplate'); }, set: function (value) { this._setOption('timeCellTemplate', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "timeZone", { /** * Specifies the time zone for the Scheduler&apos;s grid. Accepts values from the IANA time zone database. */ get: function () { return this._getOption('timeZone'); }, set: function (value) { this._setOption('timeZone', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "useDropDownViewSwitcher", { /** * Specifies whether a user can switch views using tabs or a drop-down menu. */ get: function () { return this._getOption('useDropDownViewSwitcher'); }, set: function (value) { this._setOption('useDropDownViewSwitcher', value); }, enumerable: false, configurable: true }); Object.defineProperty(DxSchedulerComponent.prototype, "views", { /** * Specifies and configures the views to be available in the view switcher. */ get: function () { return this._getOption('views'); }, set: function (value) { this._setOption('views', value); },