@syncfusion/ej2-schedule 20.2.45 → 20.3.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/ej2-schedule.min.js +10 -0
  3. package/dist/ej2-schedule.umd.min.js +2 -2
  4. package/dist/ej2-schedule.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-schedule.es2015.js +603 -218
  6. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  7. package/dist/es6/ej2-schedule.es5.js +621 -230
  8. package/dist/es6/ej2-schedule.es5.js.map +1 -1
  9. package/dist/global/ej2-schedule.min.js +2 -2
  10. package/dist/global/ej2-schedule.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +16 -16
  13. package/src/recurrence-editor/recurrence-editor-model.d.ts +1 -1
  14. package/src/recurrence-editor/recurrence-editor.d.ts +1 -0
  15. package/src/recurrence-editor/recurrence-editor.js +37 -10
  16. package/src/schedule/actions/action-base.js +5 -3
  17. package/src/schedule/actions/crud.js +1 -2
  18. package/src/schedule/actions/drag.js +17 -14
  19. package/src/schedule/actions/resize.js +1 -3
  20. package/src/schedule/actions/touch.js +2 -2
  21. package/src/schedule/actions/virtual-scroll.d.ts +12 -3
  22. package/src/schedule/actions/virtual-scroll.js +206 -54
  23. package/src/schedule/base/interface.d.ts +2 -1
  24. package/src/schedule/base/schedule-model.d.ts +7 -0
  25. package/src/schedule/base/schedule.d.ts +13 -0
  26. package/src/schedule/base/schedule.js +13 -4
  27. package/src/schedule/base/util.d.ts +15 -0
  28. package/src/schedule/base/util.js +29 -3
  29. package/src/schedule/event-renderer/agenda-base.js +3 -5
  30. package/src/schedule/event-renderer/event-base.d.ts +2 -1
  31. package/src/schedule/event-renderer/event-base.js +30 -3
  32. package/src/schedule/event-renderer/month.d.ts +1 -0
  33. package/src/schedule/event-renderer/month.js +8 -6
  34. package/src/schedule/event-renderer/vertical-view.d.ts +3 -0
  35. package/src/schedule/event-renderer/vertical-view.js +32 -12
  36. package/src/schedule/event-renderer/year.js +1 -1
  37. package/src/schedule/popups/event-window.d.ts +1 -0
  38. package/src/schedule/popups/event-window.js +35 -7
  39. package/src/schedule/popups/quick-popups.js +18 -5
  40. package/src/schedule/renderer/agenda.js +1 -0
  41. package/src/schedule/renderer/header-renderer.js +3 -3
  42. package/src/schedule/renderer/month.js +25 -6
  43. package/src/schedule/renderer/renderer.js +8 -2
  44. package/src/schedule/renderer/timeline-view.js +2 -2
  45. package/src/schedule/renderer/timeline-year.d.ts +1 -0
  46. package/src/schedule/renderer/timeline-year.js +20 -12
  47. package/src/schedule/renderer/vertical-view.d.ts +1 -1
  48. package/src/schedule/renderer/vertical-view.js +48 -44
  49. package/src/schedule/renderer/view-base.d.ts +2 -0
  50. package/src/schedule/renderer/view-base.js +31 -1
  51. package/src/schedule/renderer/year.d.ts +1 -1
  52. package/src/schedule/renderer/year.js +49 -30
  53. package/styles/bootstrap-dark.css +50 -33
  54. package/styles/bootstrap.css +50 -33
  55. package/styles/bootstrap4.css +50 -33
  56. package/styles/bootstrap5-dark.css +51 -38
  57. package/styles/bootstrap5.css +51 -38
  58. package/styles/fabric-dark.css +50 -33
  59. package/styles/fabric.css +50 -33
  60. package/styles/fluent-dark.css +52 -39
  61. package/styles/fluent.css +52 -39
  62. package/styles/highcontrast-light.css +50 -33
  63. package/styles/highcontrast.css +50 -33
  64. package/styles/material-dark.css +50 -33
  65. package/styles/material.css +50 -33
  66. package/styles/recurrence-editor/_all.scss +1 -1
  67. package/styles/recurrence-editor/_bootstrap-dark-definition.scss +1 -3
  68. package/styles/recurrence-editor/_bootstrap-definition.scss +1 -3
  69. package/styles/recurrence-editor/_bootstrap4-definition.scss +1 -3
  70. package/styles/recurrence-editor/_bootstrap5-definition.scss +1 -3
  71. package/styles/recurrence-editor/_fabric-dark-definition.scss +1 -4
  72. package/styles/recurrence-editor/_fabric-definition.scss +1 -3
  73. package/styles/recurrence-editor/_fluent-definition.scss +1 -3
  74. package/styles/recurrence-editor/_fusionnew-definition.scss +1 -3
  75. package/styles/recurrence-editor/_highcontrast-definition.scss +1 -3
  76. package/styles/recurrence-editor/_highcontrast-light-definition.scss +1 -3
  77. package/styles/recurrence-editor/_layout.scss +28 -38
  78. package/styles/recurrence-editor/_material-dark-definition.scss +1 -3
  79. package/styles/recurrence-editor/_material-definition.scss +1 -3
  80. package/styles/recurrence-editor/_material3-definition.scss +1 -3
  81. package/styles/recurrence-editor/_tailwind-definition.scss +1 -3
  82. package/styles/recurrence-editor/bootstrap-dark.css +21 -27
  83. package/styles/recurrence-editor/bootstrap.css +21 -27
  84. package/styles/recurrence-editor/bootstrap4.css +21 -27
  85. package/styles/recurrence-editor/bootstrap5-dark.css +21 -27
  86. package/styles/recurrence-editor/bootstrap5.css +21 -27
  87. package/styles/recurrence-editor/fabric-dark.css +21 -27
  88. package/styles/recurrence-editor/fabric.css +21 -27
  89. package/styles/recurrence-editor/fluent-dark.css +21 -27
  90. package/styles/recurrence-editor/fluent.css +21 -27
  91. package/styles/recurrence-editor/highcontrast-light.css +21 -27
  92. package/styles/recurrence-editor/highcontrast.css +21 -27
  93. package/styles/recurrence-editor/material-dark.css +21 -27
  94. package/styles/recurrence-editor/material.css +21 -27
  95. package/styles/recurrence-editor/tailwind-dark.css +21 -27
  96. package/styles/recurrence-editor/tailwind.css +21 -27
  97. package/styles/schedule/_all.scss +1 -1
  98. package/styles/schedule/_bootstrap4-definition.scss +0 -1
  99. package/styles/schedule/_bootstrap5-definition.scss +1 -1
  100. package/styles/schedule/_fusionnew-definition.scss +1 -1
  101. package/styles/schedule/_layout.scss +57 -32
  102. package/styles/schedule/_material3-definition.scss +1 -1
  103. package/styles/schedule/_theme.scss +12 -10
  104. package/styles/schedule/bootstrap-dark.css +29 -6
  105. package/styles/schedule/bootstrap.css +29 -6
  106. package/styles/schedule/bootstrap4.css +29 -6
  107. package/styles/schedule/bootstrap5-dark.css +30 -11
  108. package/styles/schedule/bootstrap5.css +30 -11
  109. package/styles/schedule/fabric-dark.css +29 -6
  110. package/styles/schedule/fabric.css +29 -6
  111. package/styles/schedule/fluent-dark.css +31 -12
  112. package/styles/schedule/fluent.css +31 -12
  113. package/styles/schedule/highcontrast-light.css +29 -6
  114. package/styles/schedule/highcontrast.css +29 -6
  115. package/styles/schedule/icons/_bootstrap5.scss +0 -1
  116. package/styles/schedule/icons/_fluent.scss +0 -1
  117. package/styles/schedule/icons/_fusionnew.scss +0 -1
  118. package/styles/schedule/icons/_material3.scss +0 -1
  119. package/styles/schedule/icons/_tailwind.scss +0 -1
  120. package/styles/schedule/material-dark.css +29 -6
  121. package/styles/schedule/material.css +29 -6
  122. package/styles/schedule/tailwind-dark.css +29 -6
  123. package/styles/schedule/tailwind.css +29 -6
  124. package/styles/tailwind-dark.css +50 -33
  125. package/styles/tailwind.css +50 -33
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 20.2.45
3
+ * version : 20.3.47
4
4
  * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-schedule@*",
3
- "_id": "@syncfusion/ej2-schedule@20.2.40",
3
+ "_id": "@syncfusion/ej2-schedule@19.21.4",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-kU/0Be1pH5yFXhucutY7aGY+0JD6l+S/dOwICMpItjm794B1hhepBKqgexfw9BuGB0hDGOnNHsQEwVnZ+yXt+w==",
5
+ "_integrity": "sha512-M+BaZwECMrpaP1PoECh5YaWVfc0tXyXvJ97JMDWpzU5AX97NYPE5V+ofpVrSR8gvaixGMCkGlHq/kIFvHhL25Q==",
6
6
  "_location": "/@syncfusion/ej2-schedule",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,8 +23,8 @@
23
23
  "/@syncfusion/ej2-react-schedule",
24
24
  "/@syncfusion/ej2-vue-schedule"
25
25
  ],
26
- "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-schedule/-/ej2-schedule-20.2.40.tgz",
27
- "_shasum": "d9b88f81c4941440ba79cefcb0ec412a5b581ccb",
26
+ "_resolved": "http://nexus.syncfusion.com/repository/ej2-release/@syncfusion/ej2-schedule/-/ej2-schedule-19.21.4.tgz",
27
+ "_shasum": "ec843edf9eb8697f3ff6329d79eca23f1cabe730",
28
28
  "_spec": "@syncfusion/ej2-schedule@*",
29
29
  "_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
30
30
  "author": {
@@ -35,21 +35,21 @@
35
35
  },
36
36
  "bundleDependencies": false,
37
37
  "dependencies": {
38
- "@syncfusion/ej2-base": "~20.2.45",
39
- "@syncfusion/ej2-buttons": "~20.2.45",
40
- "@syncfusion/ej2-calendars": "~20.2.45",
41
- "@syncfusion/ej2-data": "~20.2.45",
42
- "@syncfusion/ej2-dropdowns": "~20.2.45",
43
- "@syncfusion/ej2-excel-export": "~20.2.45",
44
- "@syncfusion/ej2-inputs": "~20.2.45",
45
- "@syncfusion/ej2-lists": "~20.2.45",
46
- "@syncfusion/ej2-navigations": "~20.2.45",
47
- "@syncfusion/ej2-popups": "~20.2.45"
38
+ "@syncfusion/ej2-base": "~20.3.47",
39
+ "@syncfusion/ej2-buttons": "~20.3.47",
40
+ "@syncfusion/ej2-calendars": "~20.3.47",
41
+ "@syncfusion/ej2-data": "~20.3.47",
42
+ "@syncfusion/ej2-dropdowns": "~20.3.47",
43
+ "@syncfusion/ej2-excel-export": "~20.3.47",
44
+ "@syncfusion/ej2-inputs": "~20.3.47",
45
+ "@syncfusion/ej2-lists": "~20.3.47",
46
+ "@syncfusion/ej2-navigations": "~20.3.47",
47
+ "@syncfusion/ej2-popups": "~20.3.47"
48
48
  },
49
49
  "deprecated": false,
50
50
  "description": "Flexible scheduling library with more built-in features and enhanced customization options similar to outlook and google calendar, allowing the users to plan and manage their appointments with efficient data-binding support.",
51
51
  "devDependencies": {},
52
- "es2015": "./dist/es6/ej2-schedule.es2015.js",
52
+ "es2015": "./dist/es6/ej2-schedule.es5.js",
53
53
  "homepage": "https://github.com/syncfusion/ej2-javascript-ui-controls#readme",
54
54
  "keywords": [
55
55
  "ej2",
@@ -81,6 +81,6 @@
81
81
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
82
82
  },
83
83
  "typings": "index.d.ts",
84
- "version": "20.2.45",
84
+ "version": "20.3.47",
85
85
  "sideEffects": false
86
86
  }
@@ -1,4 +1,4 @@
1
- import { Component, Property, NotifyPropertyChanges, INotifyPropertyChanged, Event, Browser } from '@syncfusion/ej2-base';import { EmitType, getDefaultDateObject, getValue, cldrData, L10n, isNullOrUndefined, removeClass, addClass } from '@syncfusion/ej2-base';import { DropDownList, ChangeEventArgs } from '@syncfusion/ej2-dropdowns';import { NumericTextBox } from '@syncfusion/ej2-inputs';import { DatePicker, ChangedEventArgs } from '@syncfusion/ej2-calendars';import { Button, RadioButton } from '@syncfusion/ej2-buttons';import { EventHandler, MouseEventArgs, classList } from '@syncfusion/ej2-base';import { EJ2Instance } from '../schedule/base/interface';import { RecRule, extractObjectFromRule, generate, generateSummary, getRecurrenceStringFromDate, getCalendarUtil } from './date-generator';import { CalendarUtil, CalendarType } from '../common/calendar-util';import { capitalizeFirstWord } from '../schedule/base/util';
1
+ import { Component, Property, NotifyPropertyChanges, INotifyPropertyChanged, Event, Browser, detach } from '@syncfusion/ej2-base';import { EmitType, getDefaultDateObject, getValue, cldrData, L10n, isNullOrUndefined, removeClass, addClass } from '@syncfusion/ej2-base';import { DropDownList, ChangeEventArgs } from '@syncfusion/ej2-dropdowns';import { NumericTextBox } from '@syncfusion/ej2-inputs';import { DatePicker, ChangedEventArgs } from '@syncfusion/ej2-calendars';import { Button, RadioButton } from '@syncfusion/ej2-buttons';import { EventHandler, MouseEventArgs, classList } from '@syncfusion/ej2-base';import { EJ2Instance } from '../schedule/base/interface';import { RecRule, extractObjectFromRule, generate, generateSummary, getRecurrenceStringFromDate, getCalendarUtil } from './date-generator';import { CalendarUtil, CalendarType } from '../common/calendar-util';import { capitalizeFirstWord } from '../schedule/base/util';
2
2
  import {RepeatType,RecurrenceEditorChangeEventArgs} from "./recurrence-editor";
3
3
  import {ComponentModel} from '@syncfusion/ej2-base';
4
4
 
@@ -159,6 +159,7 @@ export declare class RecurrenceEditor extends Component<HTMLElement> implements
159
159
  getRecurrenceDates(startDate: Date, rule: string, excludeDate?: string, maximumCount?: number, viewDate?: Date): number[];
160
160
  getRecurrenceRule(): string;
161
161
  setRecurrenceRule(rule: string, startDate?: Date): void;
162
+ private detachInputs;
162
163
  /**
163
164
  * Destroys the widget.
164
165
  *
@@ -17,7 +17,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
17
17
  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;
18
18
  return c > 3 && r && Object.defineProperty(target, key, r), r;
19
19
  };
20
- import { Component, Property, NotifyPropertyChanges, Event, Browser } from '@syncfusion/ej2-base';
20
+ import { Component, Property, NotifyPropertyChanges, Event, Browser, detach } from '@syncfusion/ej2-base';
21
21
  import { getDefaultDateObject, getValue, cldrData, L10n, isNullOrUndefined, removeClass, addClass } from '@syncfusion/ej2-base';
22
22
  import { DropDownList } from '@syncfusion/ej2-dropdowns';
23
23
  import { NumericTextBox } from '@syncfusion/ej2-inputs';
@@ -869,30 +869,47 @@ var RecurrenceEditor = /** @class */ (function (_super) {
869
869
  RecurrenceEditor.prototype.destroyComponents = function () {
870
870
  if (!this.recurrenceCount.isDestroyed) {
871
871
  this.recurrenceCount.destroy();
872
+ this.recurrenceCount = null;
872
873
  }
873
874
  if (!this.monthDate.isDestroyed) {
874
875
  this.monthDate.destroy();
876
+ this.monthDate = null;
875
877
  }
876
878
  if (!this.repeatInterval.isDestroyed) {
877
879
  this.repeatInterval.destroy();
880
+ this.repeatInterval = null;
878
881
  }
879
882
  if (!this.untilDateObj.isDestroyed) {
880
883
  this.untilDateObj.destroy();
884
+ this.untilDateObj = null;
881
885
  }
882
886
  if (!this.repeatType.isDestroyed) {
883
887
  this.repeatType.destroy();
888
+ this.repeatType = null;
884
889
  }
885
890
  if (!this.endType.isDestroyed) {
886
891
  this.endType.destroy();
892
+ this.endType = null;
887
893
  }
888
894
  if (!this.monthWeekPos.isDestroyed) {
889
895
  this.monthWeekPos.destroy();
896
+ this.monthWeekPos = null;
890
897
  }
891
898
  if (!this.monthWeekDays.isDestroyed) {
892
899
  this.monthWeekDays.destroy();
900
+ this.monthWeekDays = null;
893
901
  }
894
902
  if (!this.monthValue.isDestroyed) {
895
903
  this.monthValue.destroy();
904
+ this.monthValue = null;
905
+ }
906
+ if (!this.onMonthDay.isDestroyed) {
907
+ this.onMonthDay.destroy();
908
+ this.onMonthDay = null;
909
+ }
910
+ if (!this.onWeekDay.isDestroyed) {
911
+ this.onWeekDay.destroy();
912
+ this.onWeekDay = null;
896
913
  }
897
914
  this.dayButtons.forEach(function (element) {
898
915
  if (!element.isDestroyed) {
@@ -988,21 +1005,31 @@ var RecurrenceEditor = /** @class */ (function (_super) {
988
1005
  this.renderStatus = true;
989
1006
  this.triggerChangeEvent();
990
1007
  };
1008
+ RecurrenceEditor.prototype.detachInputs = function () {
1009
+ var inputElements = [].slice.call(this.element.querySelectorAll('input'));
1010
+ for (var _i = 0, inputElements_1 = inputElements; _i < inputElements_1.length; _i++) {
1011
+ var element = inputElements_1[_i];
1012
+ detach(element);
1013
+ }
1014
+ };
991
1015
  /**
992
1016
  * Destroys the widget.
993
1017
  *
994
1018
  * @returns {void}
995
1019
  */
996
1020
  RecurrenceEditor.prototype.destroy = function () {
997
- this.destroyComponents();
998
- _super.prototype.destroy.call(this);
999
- var removeClasses = ['e-' + this.getModuleName()];
1000
- if (this.cssClass) {
1001
- removeClasses = removeClasses.concat(this.cssClass.split(' '));
1002
- }
1003
- removeClass([this.element], removeClasses);
1004
- while (this.element.firstElementChild) {
1005
- this.element.removeChild(this.element.firstElementChild);
1021
+ if (!this.isDestroyed) {
1022
+ this.destroyComponents();
1023
+ _super.prototype.destroy.call(this);
1024
+ var removeClasses = ['e-' + this.getModuleName()];
1025
+ if (this.cssClass) {
1026
+ removeClasses = removeClasses.concat(this.cssClass.split(' '));
1027
+ }
1028
+ removeClass([this.element], removeClasses);
1029
+ this.detachInputs();
1030
+ while (this.element.firstElementChild) {
1031
+ this.element.removeChild(this.element.firstElementChild);
1032
+ }
1006
1033
  }
1007
1034
  };
1008
1035
  /**
@@ -94,7 +94,7 @@ var ActionBase = /** @class */ (function () {
94
94
  var viewElement = this.parent.element.querySelector('.' + cls.CONTENT_WRAP_CLASS);
95
95
  var trElement = [].slice.call(viewElement.querySelector('tr').children);
96
96
  if (!this.parent.activeView.isTimelineView() && this.parent.activeViewOptions.group.resources.length > 0 &&
97
- !this.parent.isAdaptive && !this.parent.enableAdaptiveUI) {
97
+ !this.parent.isAdaptive && !this.parent.enableAdaptiveUI && !this.parent.virtualScrollModule) {
98
98
  trElement = this.getResourceElements(trElement);
99
99
  }
100
100
  var leftOffset = trElement[0].getBoundingClientRect();
@@ -190,7 +190,7 @@ var ActionBase = /** @class */ (function () {
190
190
  var originalElement;
191
191
  var guid = element.getAttribute('data-guid');
192
192
  var isMorePopup = element.offsetParent && element.offsetParent.classList.contains(cls.MORE_EVENT_POPUP_CLASS);
193
- if (isMorePopup || this.parent.activeView.isTimelineView()) {
193
+ if (isMorePopup || this.parent.activeView.isTimelineView() || (this.actionObj.action !== 'resize' && this.parent.virtualScrollModule)) {
194
194
  originalElement = [].slice.call(this.parent.element.querySelectorAll('[data-guid="' + guid + '"]'));
195
195
  }
196
196
  else {
@@ -409,7 +409,9 @@ var ActionBase = /** @class */ (function () {
409
409
  var workDays = this.parent.activeViewOptions.workDays;
410
410
  var groupOrder;
411
411
  if (this.parent.activeViewOptions.group.resources.length > 0) {
412
- var resources = this.parent.resourceBase.lastResourceLevel.
412
+ var renderedResource = this.parent.virtualScrollModule && this.parent.virtualScrollModule.isHorizontalScroll ?
413
+ this.parent.resourceBase.renderedResources : this.parent.resourceBase.lastResourceLevel;
414
+ var resources = renderedResource.
413
415
  filter(function (res) { return res.groupIndex === _this.actionObj.groupIndex; });
414
416
  dateRender = resources[0].renderDates;
415
417
  var elementSelector = "." + cls.WORK_CELLS_CLASS + "[data-group-index=\"" + this.actionObj.groupIndex + "\"]";
@@ -100,8 +100,7 @@ var Crud = /** @class */ (function () {
100
100
  if (this.parent.resizeModule && this.parent.resizeModule.actionObj && this.parent.resizeModule.actionObj.element) {
101
101
  this.parent.resizeModule.actionObj.element.style.display = 'none';
102
102
  }
103
- if (this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.activeViewOptions.group.allowGroupEdit
104
- && !this.parent.rowAutoHeight && !this.parent.virtualScrollModule && this.parent.activeViewOptions.group.byGroupID) {
103
+ if (this.parent.isSpecificResourceEvents()) {
105
104
  if (args.requestType === 'eventCreated' || args.requestType === 'eventRemoved') {
106
105
  this.crudObj.isCrudAction = true;
107
106
  this.crudObj.sourceEvent = [];
@@ -376,7 +376,6 @@ var DragAndDrop = /** @class */ (function (_super) {
376
376
  this.actionObj.scrollInterval = null;
377
377
  this.actionClass('removeClass');
378
378
  this.parent.uiStateValues.action = false;
379
- this.actionObj.action = null;
380
379
  if (this.isAllowDrop(e)) {
381
380
  return;
382
381
  }
@@ -386,12 +385,12 @@ var DragAndDrop = /** @class */ (function (_super) {
386
385
  cancel: false, data: this.getChangedData(this.updatedData), selectedData: this.updatedData,
387
386
  event: e, element: this.actionObj.element, target: target
388
387
  };
388
+ this.actionObj.action = null;
389
389
  this.parent.trigger(events.dragStop, dragArgs, function (dragEventArgs) {
390
390
  if (dragEventArgs.cancel) {
391
391
  return;
392
392
  }
393
- if (_this.parent.activeViewOptions.group.resources.length > 0 && !_this.parent.activeViewOptions.group.allowGroupEdit
394
- && !_this.parent.rowAutoHeight && !_this.parent.virtualScrollModule && _this.parent.activeViewOptions.group.byGroupID) {
393
+ if (_this.parent.isSpecificResourceEvents()) {
395
394
  _this.parent.crudModule.crudObj.isCrudAction = true;
396
395
  _this.parent.crudModule.crudObj.sourceEvent =
397
396
  [_this.parent.resourceBase.lastResourceLevel[parseInt(dragArgs.element.getAttribute('data-group-index'), 10)]];
@@ -631,7 +630,9 @@ var DragAndDrop = /** @class */ (function (_super) {
631
630
  this.actionObj.clone.classList.contains(cls.ALLDAY_APPOINTMENT_CLASS)) {
632
631
  dragEnd = util.addDays(util.resetTime(dragEnd), 1);
633
632
  }
634
- this.updateAllDayEvents(dragStart, dragEnd, this.parent.activeViewOptions.group.byDate ? colIndex : undefined);
633
+ var index_1 = this.parent.activeViewOptions.group.byDate || (this.parent.virtualScrollModule &&
634
+ !this.parent.activeViewOptions.timeScale.enable) ? colIndex : undefined;
635
+ this.updateAllDayEvents(dragStart, dragEnd, index_1);
635
636
  }
636
637
  this.actionObj.start = new Date(+dragStart);
637
638
  this.actionObj.end = new Date(+dragEnd);
@@ -665,17 +666,17 @@ var DragAndDrop = /** @class */ (function (_super) {
665
666
  this.startTime = eventObj_1[this.parent.eventFields.startTime].getTime();
666
667
  }
667
668
  var startTimeDiff = event[this.parent.eventFields.startTime].getTime() - this.startTime;
668
- for (var index_1 = 0; index_1 < this.multiData.length; index_1++) {
669
- this.updatedData[index_1] = this.updateMultipleData(this.multiData[index_1], startTimeDiff);
670
- var dayIndex = this.getDayIndex(this.updatedData[index_1]);
669
+ for (var index_2 = 0; index_2 < this.multiData.length; index_2++) {
670
+ this.updatedData[index_2] = this.updateMultipleData(this.multiData[index_2], startTimeDiff);
671
+ var dayIndex = this.getDayIndex(this.updatedData[index_2]);
671
672
  if (dayIndex >= 0) {
672
- var wrapper = this.getEventWrapper(dayIndex, this.updatedData[index_1][this.parent.eventFields.isAllDay]);
673
- this.appendCloneElement(wrapper, this.actionObj.cloneElement[index_1]);
674
- this.updateEventHeight(this.updatedData[index_1], index_1, dayIndex);
673
+ var wrapper = this.getEventWrapper(dayIndex, this.updatedData[index_2][this.parent.eventFields.isAllDay]);
674
+ this.appendCloneElement(wrapper, this.actionObj.cloneElement[index_2]);
675
+ this.updateEventHeight(this.updatedData[index_2], index_2, dayIndex);
675
676
  }
676
677
  else {
677
- if (!isNullOrUndefined(this.actionObj.cloneElement[index_1].parentNode)) {
678
- remove(this.actionObj.cloneElement[index_1]);
678
+ if (!isNullOrUndefined(this.actionObj.cloneElement[index_2].parentNode)) {
679
+ remove(this.actionObj.cloneElement[index_2]);
679
680
  }
680
681
  }
681
682
  }
@@ -757,10 +758,12 @@ var DragAndDrop = /** @class */ (function (_super) {
757
758
  };
758
759
  DragAndDrop.prototype.updateEventHeight = function (event, index, colIndex) {
759
760
  this.verticalEvent.initializeValues();
760
- var datesCount = 0;
761
+ var datesCount = this.verticalEvent.getStartCount();
761
762
  if (!this.parent.uiStateValues.isGroupAdaptive) {
762
763
  for (var i = 0; i < this.actionObj.groupIndex; i++) {
763
- datesCount = datesCount + this.verticalEvent.dateRender[i].length;
764
+ if (this.verticalEvent.dateRender[i]) {
765
+ datesCount = datesCount + this.verticalEvent.dateRender[i].length;
766
+ }
764
767
  }
765
768
  }
766
769
  var indexGroup = this.parent.uiStateValues.isGroupAdaptive ? datesCount : this.actionObj.groupIndex;
@@ -309,9 +309,7 @@ var Resize = /** @class */ (function (_super) {
309
309
  if (resizeEventArgs.cancel) {
310
310
  return;
311
311
  }
312
- if (_this.parent.activeViewOptions.group.resources.length > 0 && !_this.parent.rowAutoHeight
313
- && !_this.parent.activeViewOptions.group.allowGroupEdit && !_this.parent.virtualScrollModule
314
- && _this.parent.activeViewOptions.group.byGroupID) {
312
+ if (_this.parent.isSpecificResourceEvents()) {
315
313
  _this.parent.crudModule.crudObj.sourceEvent =
316
314
  [_this.parent.resourceBase.lastResourceLevel[parseInt(resizeEventArgs.element.getAttribute('data-group-index'), 10)]];
317
315
  _this.parent.crudModule.crudObj.targetEvent = _this.parent.crudModule.crudObj.sourceEvent;
@@ -21,7 +21,7 @@ var ScheduleTouch = /** @class */ (function () {
21
21
  this.touchRightDirection = this.parent.enableRtl ? 'Left' : 'Right';
22
22
  }
23
23
  ScheduleTouch.prototype.scrollHandler = function (e) {
24
- if (this.parent.currentView === 'Agenda' || this.parent.uiStateValues.action ||
24
+ if (this.parent.currentView === 'Agenda' || this.parent.uiStateValues.action || !this.parent.allowSwiping ||
25
25
  (e.originalEvent && (e.originalEvent.target.classList.contains(cls.APPOINTMENT_CLASS) ||
26
26
  closest(e.originalEvent.target, '.' + cls.APPOINTMENT_CLASS)))) {
27
27
  return;
@@ -76,7 +76,7 @@ var ScheduleTouch = /** @class */ (function () {
76
76
  }
77
77
  };
78
78
  ScheduleTouch.prototype.swipeHandler = function (e) {
79
- if (!this.isScrollTriggered || this.parent.uiStateValues.action) {
79
+ if (!this.isScrollTriggered || this.parent.uiStateValues.action || !this.parent.allowSwiping) {
80
80
  return;
81
81
  }
82
82
  this.isScrollTriggered = false;
@@ -11,27 +11,36 @@ export declare class VirtualScroll {
11
11
  private renderedLength;
12
12
  private averageRowHeight;
13
13
  private timeValue;
14
- private isScrollHeightNull;
15
14
  private focusedEle;
16
15
  private isResourceCell;
16
+ isHorizontalScroll: boolean;
17
+ private startIndex;
17
18
  constructor(parent: Schedule);
18
19
  private addEventListener;
19
20
  private removeEventListener;
20
21
  getRenderedCount(): number;
21
- setTranslateValue(): void;
22
- private renderVirtualTrackHeight;
23
22
  renderVirtualTrack(contentWrap: Element): void;
24
23
  updateVirtualScrollHeight(): void;
25
24
  updateVirtualTrackHeight(wrap: HTMLElement): void;
26
25
  setItemSize(): void;
27
26
  private renderEvents;
28
27
  virtualScrolling(): void;
28
+ private horizontalScrolling;
29
29
  private upScroll;
30
30
  private downScroll;
31
+ private leftScroll;
32
+ private rightScroll;
33
+ private getCollection;
34
+ private getResCollection;
35
+ private getByDateCollection;
36
+ private getByIdCollection;
37
+ private setStartEndIndex;
31
38
  updateContent(resWrap: HTMLElement, conWrap: HTMLElement, eventWrap: HTMLElement, resCollection: TdData[]): void;
39
+ private updateHorizontalContent;
32
40
  private getBufferCollection;
33
41
  private setTranslate;
34
42
  updateFocusedWorkCell(): void;
43
+ setRenderedDates(resCollection: TdData[]): void;
35
44
  private setTabIndex;
36
45
  destroy(): void;
37
46
  }