@syncfusion/ej2-schedule 26.2.14 → 27.1.50
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.
- package/dist/ej2-schedule.umd.min.js +2 -2
- package/dist/ej2-schedule.umd.min.js.map +1 -1
- package/dist/es6/ej2-schedule.es2015.js +166 -32
- package/dist/es6/ej2-schedule.es2015.js.map +1 -1
- package/dist/es6/ej2-schedule.es5.js +169 -32
- package/dist/es6/ej2-schedule.es5.js.map +1 -1
- package/dist/global/ej2-schedule.min.js +2 -2
- package/dist/global/ej2-schedule.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +16 -17
- package/src/schedule/actions/crud.js +2 -2
- package/src/schedule/actions/keyboard.d.ts +1 -0
- package/src/schedule/actions/keyboard.js +45 -3
- package/src/schedule/actions/resize.js +1 -0
- package/src/schedule/actions/virtual-scroll.d.ts +1 -0
- package/src/schedule/actions/virtual-scroll.js +35 -4
- package/src/schedule/base/interface.d.ts +1 -0
- package/src/schedule/base/resource.js +5 -0
- package/src/schedule/base/schedule.js +2 -1
- package/src/schedule/event-renderer/event-base.js +18 -3
- package/src/schedule/event-renderer/inline-edit.js +9 -1
- package/src/schedule/event-renderer/month.js +4 -1
- package/src/schedule/event-renderer/timeline-view.js +4 -1
- package/src/schedule/event-renderer/year.js +2 -2
- package/src/schedule/renderer/header-renderer.d.ts +1 -0
- package/src/schedule/renderer/header-renderer.js +9 -1
- package/src/schedule/renderer/month.js +6 -0
- package/src/schedule/renderer/timeline-header-row.js +1 -1
- package/src/schedule/renderer/timeline-view.js +5 -0
- package/src/schedule/renderer/timeline-year.js +6 -2
- package/src/schedule/renderer/vertical-view.js +2 -6
- package/src/schedule/renderer/view-base.d.ts +1 -0
- package/src/schedule/renderer/view-base.js +9 -0
- package/src/schedule/renderer/year.js +4 -4
- package/styles/bootstrap-dark-lite.css +4169 -0
- package/styles/bootstrap-dark-lite.scss +18 -0
- package/styles/bootstrap-dark.css +818 -596
- package/styles/bootstrap-dark.scss +3 -2
- package/styles/bootstrap-lite.css +4164 -0
- package/styles/bootstrap-lite.scss +18 -0
- package/styles/bootstrap.css +818 -596
- package/styles/bootstrap.scss +3 -2
- package/styles/bootstrap4-lite.css +4211 -0
- package/styles/bootstrap4-lite.scss +18 -0
- package/styles/bootstrap4.css +803 -636
- package/styles/bootstrap4.scss +3 -2
- package/styles/bootstrap5-dark-lite.css +4210 -0
- package/styles/bootstrap5-dark-lite.scss +18 -0
- package/styles/bootstrap5-dark.css +819 -597
- package/styles/bootstrap5-dark.scss +3 -2
- package/styles/bootstrap5-lite.css +4210 -0
- package/styles/bootstrap5-lite.scss +18 -0
- package/styles/bootstrap5.3-lite.css +4256 -0
- package/styles/bootstrap5.3-lite.scss +18 -0
- package/styles/bootstrap5.3.css +5017 -0
- package/styles/bootstrap5.3.scss +20 -0
- package/styles/bootstrap5.css +819 -597
- package/styles/bootstrap5.scss +3 -2
- package/styles/fabric-dark-lite.css +4139 -0
- package/styles/fabric-dark-lite.scss +18 -0
- package/styles/fabric-dark.css +825 -595
- package/styles/fabric-dark.scss +3 -2
- package/styles/fabric-lite.css +4136 -0
- package/styles/fabric-lite.scss +18 -0
- package/styles/fabric.css +825 -588
- package/styles/fabric.scss +3 -2
- package/styles/fluent-dark-lite.css +4202 -0
- package/styles/fluent-dark-lite.scss +18 -0
- package/styles/fluent-dark.css +823 -593
- package/styles/fluent-dark.scss +3 -2
- package/styles/fluent-lite.css +4202 -0
- package/styles/fluent-lite.scss +18 -0
- package/styles/fluent.css +823 -593
- package/styles/fluent.scss +3 -2
- package/styles/fluent2-lite.css +4422 -0
- package/styles/fluent2-lite.scss +18 -0
- package/styles/fluent2.css +860 -602
- package/styles/fluent2.scss +3 -2
- package/styles/highcontrast-light-lite.css +4228 -0
- package/styles/highcontrast-light-lite.scss +18 -0
- package/styles/highcontrast-light.css +828 -584
- package/styles/highcontrast-light.scss +3 -2
- package/styles/highcontrast-lite.css +4237 -0
- package/styles/highcontrast-lite.scss +18 -0
- package/styles/highcontrast.css +829 -585
- package/styles/highcontrast.scss +3 -2
- package/styles/material-dark-lite.css +4216 -0
- package/styles/material-dark-lite.scss +18 -0
- package/styles/material-dark.css +828 -581
- package/styles/material-dark.scss +3 -2
- package/styles/material-lite.css +4242 -0
- package/styles/material-lite.scss +18 -0
- package/styles/material.css +826 -600
- package/styles/material.scss +3 -2
- package/styles/material3-dark-lite.css +4233 -0
- package/styles/material3-dark-lite.scss +18 -0
- package/styles/material3-dark.css +825 -602
- package/styles/material3-dark.scss +3 -2
- package/styles/material3-lite.css +4235 -0
- package/styles/material3-lite.scss +18 -0
- package/styles/material3.css +825 -602
- package/styles/material3.scss +3 -2
- package/styles/recurrence-editor/_bigger.scss +134 -0
- package/styles/recurrence-editor/_layout.scss +0 -110
- package/styles/recurrence-editor/bootstrap-dark.css +87 -131
- package/styles/recurrence-editor/bootstrap-dark.scss +1 -0
- package/styles/recurrence-editor/bootstrap.css +87 -131
- package/styles/recurrence-editor/bootstrap.scss +1 -0
- package/styles/recurrence-editor/bootstrap4.css +87 -149
- package/styles/recurrence-editor/bootstrap4.scss +1 -0
- package/styles/recurrence-editor/bootstrap5-dark.css +87 -135
- package/styles/recurrence-editor/bootstrap5-dark.scss +1 -0
- package/styles/recurrence-editor/bootstrap5.3.css +501 -0
- package/styles/recurrence-editor/bootstrap5.3.scss +9 -0
- package/styles/recurrence-editor/bootstrap5.css +87 -135
- package/styles/recurrence-editor/bootstrap5.scss +1 -0
- package/styles/recurrence-editor/fabric-dark.css +87 -130
- package/styles/recurrence-editor/fabric-dark.scss +1 -0
- package/styles/recurrence-editor/fabric.css +87 -123
- package/styles/recurrence-editor/fabric.scss +1 -0
- package/styles/recurrence-editor/fluent-dark.css +87 -122
- package/styles/recurrence-editor/fluent-dark.scss +1 -0
- package/styles/recurrence-editor/fluent.css +87 -122
- package/styles/recurrence-editor/fluent.scss +1 -0
- package/styles/recurrence-editor/fluent2.css +91 -117
- package/styles/recurrence-editor/fluent2.scss +1 -0
- package/styles/recurrence-editor/highcontrast-light.css +87 -118
- package/styles/recurrence-editor/highcontrast-light.scss +1 -0
- package/styles/recurrence-editor/highcontrast.css +87 -118
- package/styles/recurrence-editor/highcontrast.scss +1 -0
- package/styles/recurrence-editor/material-dark.css +87 -115
- package/styles/recurrence-editor/material-dark.scss +1 -0
- package/styles/recurrence-editor/material.css +87 -136
- package/styles/recurrence-editor/material.scss +1 -0
- package/styles/recurrence-editor/material3-dark.css +87 -140
- package/styles/recurrence-editor/material3-dark.scss +1 -0
- package/styles/recurrence-editor/material3.css +87 -140
- package/styles/recurrence-editor/material3.scss +1 -0
- package/styles/recurrence-editor/tailwind-dark.css +87 -116
- package/styles/recurrence-editor/tailwind-dark.scss +1 -0
- package/styles/recurrence-editor/tailwind.css +87 -116
- package/styles/recurrence-editor/tailwind.scss +1 -0
- package/styles/schedule/_bds-definition.scss +1 -1
- package/styles/schedule/_bigger.scss +809 -0
- package/styles/schedule/_bootstrap4-definition.scss +1 -1
- package/styles/schedule/_bootstrap5-definition.scss +1 -1
- package/styles/schedule/_bootstrap5.3-definition.scss +9 -6
- package/styles/schedule/_fluent-definition.scss +1 -1
- package/styles/schedule/_fluent2-definition.scss +6 -6
- package/styles/schedule/_fusionnew-definition.scss +1 -1
- package/styles/schedule/_layout.scss +5 -442
- package/styles/schedule/_tailwind-definition.scss +1 -1
- package/styles/schedule/_theme.scss +23 -1
- package/styles/schedule/bootstrap-dark.css +699 -483
- package/styles/schedule/bootstrap-dark.scss +1 -0
- package/styles/schedule/bootstrap.css +699 -483
- package/styles/schedule/bootstrap.scss +1 -0
- package/styles/schedule/bootstrap4.css +684 -523
- package/styles/schedule/bootstrap4.scss +1 -0
- package/styles/schedule/bootstrap5-dark.css +707 -491
- package/styles/schedule/bootstrap5-dark.scss +1 -0
- package/styles/schedule/bootstrap5.3.css +4615 -0
- package/styles/schedule/bootstrap5.3.scss +17 -0
- package/styles/schedule/bootstrap5.css +707 -491
- package/styles/schedule/bootstrap5.scss +1 -0
- package/styles/schedule/fabric-dark.css +706 -482
- package/styles/schedule/fabric-dark.scss +1 -0
- package/styles/schedule/fabric.css +706 -475
- package/styles/schedule/fabric.scss +1 -0
- package/styles/schedule/fluent-dark.css +716 -492
- package/styles/schedule/fluent-dark.scss +1 -0
- package/styles/schedule/fluent.css +716 -492
- package/styles/schedule/fluent.scss +1 -0
- package/styles/schedule/fluent2.css +746 -497
- package/styles/schedule/fluent2.scss +1 -0
- package/styles/schedule/highcontrast-light.css +714 -476
- package/styles/schedule/highcontrast-light.scss +1 -0
- package/styles/schedule/highcontrast.css +714 -476
- package/styles/schedule/highcontrast.scss +1 -0
- package/styles/schedule/material-dark.css +724 -483
- package/styles/schedule/material-dark.scss +1 -0
- package/styles/schedule/material.css +720 -500
- package/styles/schedule/material.scss +1 -0
- package/styles/schedule/material3-dark.css +714 -497
- package/styles/schedule/material3-dark.scss +1 -0
- package/styles/schedule/material3.css +714 -497
- package/styles/schedule/material3.scss +1 -0
- package/styles/schedule/tailwind-dark.css +718 -483
- package/styles/schedule/tailwind-dark.scss +1 -0
- package/styles/schedule/tailwind.css +718 -483
- package/styles/schedule/tailwind.scss +1 -0
- package/styles/tailwind-dark-lite.css +4179 -0
- package/styles/tailwind-dark-lite.scss +18 -0
- package/styles/tailwind-dark.css +827 -586
- package/styles/tailwind-dark.scss +3 -2
- package/styles/tailwind-lite.css +4179 -0
- package/styles/tailwind-lite.scss +18 -0
- package/styles/tailwind.css +827 -586
- package/styles/tailwind.scss +3 -2
- package/dist/ej2-schedule.min.js +0 -10
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version :
|
|
3
|
+
* version : 27.1.50
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. 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@
|
|
3
|
+
"_id": "@syncfusion/ej2-schedule@27.1.48",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-GQffkT4ABTCmTBf9pPJpeeK5ygE2veOdOPvSKFQOGA0ydZXSzDDbYhNSvfLGyHcybcJWj6NxNyNbbJ7kHI3deg==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-schedule",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
"/@syncfusion/ej2-react-schedule",
|
|
24
24
|
"/@syncfusion/ej2-vue-schedule"
|
|
25
25
|
],
|
|
26
|
-
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-schedule/-/ej2-schedule-
|
|
27
|
-
"_shasum": "
|
|
26
|
+
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-schedule/-/ej2-schedule-27.1.48.tgz",
|
|
27
|
+
"_shasum": "e574faa7c52c4a0332da422baa23137a282c4c42",
|
|
28
28
|
"_spec": "@syncfusion/ej2-schedule@*",
|
|
29
|
-
"_where": "/jenkins/workspace/elease-
|
|
29
|
+
"_where": "/jenkins/workspace/elease-automation_release_27.1.1/packages/included",
|
|
30
30
|
"author": {
|
|
31
31
|
"name": "Syncfusion Inc."
|
|
32
32
|
},
|
|
@@ -35,17 +35,16 @@
|
|
|
35
35
|
},
|
|
36
36
|
"bundleDependencies": false,
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@syncfusion/ej2-base": "~
|
|
39
|
-
"@syncfusion/ej2-buttons": "~
|
|
40
|
-
"@syncfusion/ej2-calendars": "~
|
|
41
|
-
"@syncfusion/ej2-data": "~
|
|
42
|
-
"@syncfusion/ej2-dropdowns": "~
|
|
43
|
-
"@syncfusion/ej2-excel-export": "~
|
|
44
|
-
"@syncfusion/ej2-inputs": "~
|
|
45
|
-
"@syncfusion/ej2-lists": "~
|
|
46
|
-
"@syncfusion/ej2-navigations": "~
|
|
47
|
-
"@syncfusion/ej2-popups": "~
|
|
48
|
-
"@types/requirejs": "^2.1.37"
|
|
38
|
+
"@syncfusion/ej2-base": "~27.1.50",
|
|
39
|
+
"@syncfusion/ej2-buttons": "~27.1.50",
|
|
40
|
+
"@syncfusion/ej2-calendars": "~27.1.50",
|
|
41
|
+
"@syncfusion/ej2-data": "~27.1.50",
|
|
42
|
+
"@syncfusion/ej2-dropdowns": "~27.1.50",
|
|
43
|
+
"@syncfusion/ej2-excel-export": "~27.1.50",
|
|
44
|
+
"@syncfusion/ej2-inputs": "~27.1.50",
|
|
45
|
+
"@syncfusion/ej2-lists": "~27.1.50",
|
|
46
|
+
"@syncfusion/ej2-navigations": "~27.1.50",
|
|
47
|
+
"@syncfusion/ej2-popups": "~27.1.50"
|
|
49
48
|
},
|
|
50
49
|
"deprecated": false,
|
|
51
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.",
|
|
@@ -74,6 +73,6 @@
|
|
|
74
73
|
"url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
|
75
74
|
},
|
|
76
75
|
"typings": "index.d.ts",
|
|
77
|
-
"version": "
|
|
76
|
+
"version": "27.1.50",
|
|
78
77
|
"sideEffects": false
|
|
79
78
|
}
|
|
@@ -112,10 +112,10 @@ var Crud = /** @class */ (function () {
|
|
|
112
112
|
addedRecords: args.editParams.addedRecords, changedRecords: args.editParams.changedRecords,
|
|
113
113
|
deletedRecords: args.editParams.deletedRecords
|
|
114
114
|
};
|
|
115
|
-
if (this.parent.dragAndDropModule && this.parent.dragAndDropModule.actionObj && this.parent.dragAndDropModule.actionObj.element) {
|
|
115
|
+
if (this.parent.dragAndDropModule && this.parent.dragAndDropModule.actionObj && this.parent.dragAndDropModule.actionObj.element && this.parent.dragAndDropModule.actionObj.action) {
|
|
116
116
|
this.parent.dragAndDropModule.actionObj.element.style.display = 'none';
|
|
117
117
|
}
|
|
118
|
-
if (this.parent.resizeModule && this.parent.resizeModule.actionObj && this.parent.resizeModule.actionObj.element) {
|
|
118
|
+
if (this.parent.resizeModule && this.parent.resizeModule.actionObj && this.parent.resizeModule.actionObj.element && this.parent.resizeModule.actionObj.action) {
|
|
119
119
|
this.parent.resizeModule.actionObj.element.style.display = 'none';
|
|
120
120
|
}
|
|
121
121
|
if (this.parent.isSpecificResourceEvents()) {
|
|
@@ -43,7 +43,9 @@ var KeyboardInteraction = /** @class */ (function () {
|
|
|
43
43
|
ctrlShiftUpArrow: 'ctrl+shift+uparrow',
|
|
44
44
|
ctrlShiftDownArrow: 'ctrl+shift+downarrow',
|
|
45
45
|
ctrlShiftLeftArrow: 'ctrl+shift+leftarrow',
|
|
46
|
-
ctrlShiftRightArrow: 'ctrl+shift+rightarrow'
|
|
46
|
+
ctrlShiftRightArrow: 'ctrl+shift+rightarrow',
|
|
47
|
+
shiftAltY: 'shift+alt+y',
|
|
48
|
+
shiftAltN: 'shift+alt+n'
|
|
47
49
|
};
|
|
48
50
|
this.parent = parent;
|
|
49
51
|
this.parent.element.tabIndex = this.parent.element.tabIndex === -1 ? 0 : this.parent.element.tabIndex;
|
|
@@ -124,6 +126,43 @@ var KeyboardInteraction = /** @class */ (function () {
|
|
|
124
126
|
this.processFTwelve(e);
|
|
125
127
|
}
|
|
126
128
|
break;
|
|
129
|
+
case 'shiftAltY':
|
|
130
|
+
this.parent.changeDate(new Date(), e);
|
|
131
|
+
break;
|
|
132
|
+
case 'shiftAltN':
|
|
133
|
+
if (this.parent.currentView === 'Agenda' || this.parent.currentView === 'MonthAgenda' ||
|
|
134
|
+
this.parent.currentView === 'Year') {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
this.processShiftAltN(e);
|
|
138
|
+
break;
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
KeyboardInteraction.prototype.processShiftAltN = function (e) {
|
|
142
|
+
var selectedCells = this.parent.getSelectedCells();
|
|
143
|
+
var target = e.target;
|
|
144
|
+
var cellData = extend({}, null, true);
|
|
145
|
+
if (selectedCells.length > 0 && (closest(target, '.' + cls.WORK_CELLS_CLASS)
|
|
146
|
+
|| closest(target, '.' + cls.ALLDAY_CELLS_CLASS) || closest(target, '.' + cls.HEADER_CELLS_CLASS))) {
|
|
147
|
+
cellData = this.getSelectedElements(target);
|
|
148
|
+
}
|
|
149
|
+
else if (closest(target, '.' + cls.APPOINTMENT_CLASS) && !isNullOrUndefined(this.parent.activeEventData.event)) {
|
|
150
|
+
var event_1 = this.parent.activeEventData.event;
|
|
151
|
+
cellData.startTime = event_1.StartTime;
|
|
152
|
+
cellData.endTime = event_1.EndTime;
|
|
153
|
+
cellData.isAllDay = event_1.IsAllDay;
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
var workHour = this.parent.getStartEndTime(this.parent.workHours.start);
|
|
157
|
+
var slotInterval = this.parent.activeViewOptions.timeScale.interval /
|
|
158
|
+
this.parent.activeViewOptions.timeScale.slotCount;
|
|
159
|
+
cellData.startTime = new Date(this.parent.selectedDate);
|
|
160
|
+
cellData.startTime.setHours(workHour.getHours(), workHour.getMinutes(), 0, 0);
|
|
161
|
+
cellData.endTime = new Date(cellData.startTime.getTime() + slotInterval * 60000);
|
|
162
|
+
}
|
|
163
|
+
var args = extend(cellData, { cancel: false, event: e });
|
|
164
|
+
if (args != null) {
|
|
165
|
+
this.parent.eventWindow.openEditor(args, 'Add');
|
|
127
166
|
}
|
|
128
167
|
};
|
|
129
168
|
KeyboardInteraction.prototype.processFTwelve = function (e) {
|
|
@@ -549,8 +588,11 @@ var KeyboardInteraction = /** @class */ (function () {
|
|
|
549
588
|
return this.parent.eventBase.selectWorkCellByTime([selectedObject]);
|
|
550
589
|
};
|
|
551
590
|
KeyboardInteraction.prototype.processViewNavigation = function (e) {
|
|
552
|
-
|
|
553
|
-
|
|
591
|
+
if (isNullOrUndefined(e.code)) {
|
|
592
|
+
return;
|
|
593
|
+
}
|
|
594
|
+
var index = parseInt(e.code.slice(e.code.length - 1), 10) - 1;
|
|
595
|
+
if (!isNaN(index) && !isNullOrUndefined(this.parent.views) && index < this.parent.views.length) {
|
|
554
596
|
var view = this.parent.viewCollections[parseInt(index.toString(), 10)].option;
|
|
555
597
|
this.parent.changeView(view, e, undefined, index);
|
|
556
598
|
if (this.parent.headerModule) {
|
|
@@ -321,6 +321,7 @@ var Resize = /** @class */ (function (_super) {
|
|
|
321
321
|
EventHandler.remove(document, Browser.touchEndEvent, this.resizeStop);
|
|
322
322
|
clearInterval(this.actionObj.scrollInterval);
|
|
323
323
|
this.actionObj.scrollInterval = null;
|
|
324
|
+
this.actionObj.action = null;
|
|
324
325
|
this.removeCloneElementClasses();
|
|
325
326
|
this.removeCloneElement();
|
|
326
327
|
this.actionClass('removeClass');
|
|
@@ -41,6 +41,7 @@ export declare class VirtualScroll {
|
|
|
41
41
|
private getByIdCollection;
|
|
42
42
|
private setStartEndIndex;
|
|
43
43
|
updateContent(resWrap: HTMLElement, conWrap: HTMLElement, eventWrap: HTMLElement, resCollection: TdData[]): void;
|
|
44
|
+
private removeObsoleteRows;
|
|
44
45
|
private updateHorizontalContent;
|
|
45
46
|
private updateMonthViewContent;
|
|
46
47
|
private updateOtherViewContent;
|
|
@@ -114,6 +114,7 @@ var VirtualScroll = /** @class */ (function () {
|
|
|
114
114
|
firstTDIndex = (endIndex > this.parent.resourceBase.expandedResources.length) ?
|
|
115
115
|
(this.parent.resourceBase.expandedResources.length - this.renderedLength) : firstTDIndex;
|
|
116
116
|
firstTDIndex = firstTDIndex < 0 ? 0 : firstTDIndex;
|
|
117
|
+
this.existingDataCollection = this.parent.resourceBase.renderedResources;
|
|
117
118
|
this.parent.resourceBase.renderedResources = this.parent.resourceBase.expandedResources.slice(firstTDIndex, endIndex);
|
|
118
119
|
if (this.parent.resourceBase.renderedResources.length > 0) {
|
|
119
120
|
this.updateContent(resWrap, conWrap, eventWrap, this.parent.resourceBase.renderedResources);
|
|
@@ -163,6 +164,7 @@ var VirtualScroll = /** @class */ (function () {
|
|
|
163
164
|
var scrollHeight = this.parent.rowAutoHeight ?
|
|
164
165
|
(conTable.offsetHeight - conWrap.offsetHeight) : this.bufferCount * this.itemSize;
|
|
165
166
|
var resCollection = [];
|
|
167
|
+
this.existingDataCollection = this.parent.resourceBase.renderedResources;
|
|
166
168
|
if ((conWrap.scrollTop) - this.translateY < 0) {
|
|
167
169
|
resCollection = this.upScroll(conWrap, firstTDIndex);
|
|
168
170
|
}
|
|
@@ -366,18 +368,47 @@ var VirtualScroll = /** @class */ (function () {
|
|
|
366
368
|
this.parent.element.focus();
|
|
367
369
|
}
|
|
368
370
|
for (var i = 0; i < renderedLength; i++) {
|
|
369
|
-
remove(resWrap.querySelector('tbody tr'));
|
|
370
|
-
remove(conWrap.querySelector('tbody tr'));
|
|
371
371
|
remove(eventWrap.querySelector('div'));
|
|
372
372
|
}
|
|
373
373
|
this.parent.resourceBase.renderedResources = resCollection;
|
|
374
|
+
var currentGroupIndices = this.parent.activeView.getGroupIndices(resCollection);
|
|
375
|
+
var previousGroupIndices = this.parent.activeView.getGroupIndices(this.existingDataCollection);
|
|
376
|
+
var newGroupIndices = currentGroupIndices.filter(function (index) { return previousGroupIndices.indexOf(index) < 0; });
|
|
377
|
+
var resWrapRows = Array.from(resWrap.querySelectorAll('tbody tr'));
|
|
378
|
+
var conWrapRows = Array.from(conWrap.querySelectorAll('tbody tr'));
|
|
379
|
+
var resWrapBody = resWrap.querySelector('tbody');
|
|
380
|
+
var conWrapBody = conWrap.querySelector('tbody');
|
|
381
|
+
this.removeObsoleteRows(resWrapRows, currentGroupIndices);
|
|
382
|
+
this.removeObsoleteRows(conWrapRows, currentGroupIndices);
|
|
374
383
|
var resourceRows = this.parent.resourceBase.getContentRows(resCollection, true);
|
|
375
384
|
var contentRows = this.parent.activeView.getContentRows();
|
|
376
385
|
var eventRows = this.parent.activeView.getEventRows(resCollection.length);
|
|
377
|
-
|
|
378
|
-
|
|
386
|
+
for (var i = 0; i < newGroupIndices.length; i++) {
|
|
387
|
+
var index = currentGroupIndices.indexOf(newGroupIndices[parseInt(i.toString(), 10)]);
|
|
388
|
+
if (index === 0) {
|
|
389
|
+
prepend([resourceRows[parseInt(i.toString(), 10)]], resWrapBody);
|
|
390
|
+
prepend([contentRows[parseInt(i.toString(), 10)]], conWrapBody);
|
|
391
|
+
}
|
|
392
|
+
else if (resWrapBody && conWrapBody && resWrapBody.children[parseInt(index.toString(), 10)] &&
|
|
393
|
+
conWrapBody.children[parseInt(index.toString(), 10)]) {
|
|
394
|
+
resWrapBody.insertBefore(resourceRows[parseInt(i.toString(), 10)], resWrapBody.children[parseInt(index.toString(), 10)]);
|
|
395
|
+
conWrapBody.insertBefore(contentRows[parseInt(i.toString(), 10)], conWrapBody.children[parseInt(index.toString(), 10)]);
|
|
396
|
+
}
|
|
397
|
+
else {
|
|
398
|
+
append([resourceRows[parseInt(i.toString(), 10)]], resWrapBody);
|
|
399
|
+
append([contentRows[parseInt(i.toString(), 10)]], conWrapBody);
|
|
400
|
+
}
|
|
401
|
+
}
|
|
379
402
|
append(eventRows, eventWrap);
|
|
380
403
|
};
|
|
404
|
+
VirtualScroll.prototype.removeObsoleteRows = function (elements, currentGroupIndices) {
|
|
405
|
+
elements.forEach(function (element) {
|
|
406
|
+
var groupIndex = parseInt(element.firstElementChild.getAttribute('data-group-index'), 10);
|
|
407
|
+
if (currentGroupIndices.indexOf(groupIndex) < 0) {
|
|
408
|
+
remove(element);
|
|
409
|
+
}
|
|
410
|
+
});
|
|
411
|
+
};
|
|
381
412
|
VirtualScroll.prototype.updateHorizontalContent = function (conWrap, resCollection) {
|
|
382
413
|
this.existingDataCollection = this.parent.resourceBase.expandedResources;
|
|
383
414
|
this.parent.resourceBase.expandedResources = resCollection;
|
|
@@ -449,6 +449,7 @@ export interface IRenderer {
|
|
|
449
449
|
getAdjustedDate?(date: Date): Date;
|
|
450
450
|
viewIndex: number;
|
|
451
451
|
colLevels: TdData[][];
|
|
452
|
+
getGroupIndices(dataCollection?: TdData[]): number[];
|
|
452
453
|
}
|
|
453
454
|
/** @private */
|
|
454
455
|
export interface EJ2Instance extends HTMLElement {
|
|
@@ -96,7 +96,11 @@ var ResourceBase = /** @class */ (function () {
|
|
|
96
96
|
var resColl = this.resourceCollection;
|
|
97
97
|
var tr = createElement('tr');
|
|
98
98
|
var td = createElement('td', { attrs: { tabindex: isVirtualScroll ? '-1' : '0' } });
|
|
99
|
+
var existingGroupIndices = this.parent.activeView.getGroupIndices();
|
|
99
100
|
for (var i = 0; i < resData.length; i++) {
|
|
101
|
+
if (existingGroupIndices.length > 0 && existingGroupIndices.indexOf(resData[parseInt(i.toString(), 10)].groupIndex) > -1) {
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
100
104
|
var ntd = td.cloneNode();
|
|
101
105
|
rIndex = util.findIndexInData(resColl, 'name', resData[parseInt(i.toString(), 10)].resource.name);
|
|
102
106
|
if (rIndex === resColl.length - 1) {
|
|
@@ -277,6 +281,7 @@ var ResourceBase = /** @class */ (function () {
|
|
|
277
281
|
this.setExpandedResources();
|
|
278
282
|
var resourceCount = this.parent.virtualScrollModule.getRenderedCount();
|
|
279
283
|
var startIndex = this.expandedResources.indexOf(this.renderedResources[0]);
|
|
284
|
+
this.parent.virtualScrollModule.existingDataCollection = this.renderedResources;
|
|
280
285
|
this.renderedResources = this.expandedResources.slice(startIndex, startIndex + resourceCount);
|
|
281
286
|
if (this.renderedResources.length < resourceCount) {
|
|
282
287
|
var sIndex = this.expandedResources.length - resourceCount;
|
|
@@ -1257,7 +1257,8 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
1257
1257
|
};
|
|
1258
1258
|
Schedule.prototype.onScheduleResize = function () {
|
|
1259
1259
|
if (isNullOrUndefined(this.activeView) || ((this.isAdaptive || util.isMobile()) && document.activeElement
|
|
1260
|
-
&& document.activeElement.classList.contains(cls.SUBJECT_CLASS)
|
|
1260
|
+
&& (document.activeElement.classList.contains(cls.SUBJECT_CLASS) ||
|
|
1261
|
+
document.activeElement.classList.contains(cls.INLINE_SUBJECT_CLASS))) || this.uiStateValues.isTapHold) {
|
|
1261
1262
|
return;
|
|
1262
1263
|
}
|
|
1263
1264
|
if (this.virtualScrollModule && this.activeView.isTimelineView()) {
|
|
@@ -897,6 +897,7 @@ var EventBase = /** @class */ (function () {
|
|
|
897
897
|
this.parent.activeEventData = { event: eventObject, element: target };
|
|
898
898
|
};
|
|
899
899
|
EventBase.prototype.generateOccurrence = function (event, viewDate, isMaxCount) {
|
|
900
|
+
var _this = this;
|
|
900
901
|
var startDate = event[this.parent.eventFields.startTime];
|
|
901
902
|
var endDate = event[this.parent.eventFields.endTime];
|
|
902
903
|
var eventRule = event[this.parent.eventFields.recurrenceRule];
|
|
@@ -911,6 +912,10 @@ var EventBase = /** @class */ (function () {
|
|
|
911
912
|
var newTimezone = this.parent.timezone || this.parent.tzModule.getLocalTimezoneName();
|
|
912
913
|
var firstDay = this.parent.activeViewOptions.firstDayOfWeek;
|
|
913
914
|
var calendarMode = this.parent.calendarMode;
|
|
915
|
+
if (event[this.parent.eventFields.recurrenceRule] && event[this.parent.eventFields.recurrenceRule].includes('BYMONTHDAY') &&
|
|
916
|
+
this.parent.timezone && event[this.parent.eventFields.startTimezone] && event[this.parent.eventFields.endTimezone]) {
|
|
917
|
+
startDate = this.parent.tzModule.convert(event[this.parent.eventFields.startTime], this.parent.timezone, event[this.parent.eventFields.startTimezone]);
|
|
918
|
+
}
|
|
914
919
|
var dates = generate(startDate, eventRule, exception, firstDay, maxCount, viewDate, calendarMode, newTimezone);
|
|
915
920
|
if (this.parent.currentView === 'Agenda' && eventRule.indexOf('COUNT') === -1 && eventRule.indexOf('UNTIL') === -1) {
|
|
916
921
|
if (isNullOrUndefined(event.generatedDates)) {
|
|
@@ -925,11 +930,21 @@ var EventBase = /** @class */ (function () {
|
|
|
925
930
|
}
|
|
926
931
|
}
|
|
927
932
|
}
|
|
933
|
+
var isDSTAdjusted = false;
|
|
934
|
+
var convertedDates = [];
|
|
935
|
+
if (event[this.parent.eventFields.recurrenceRule] && event[this.parent.eventFields.recurrenceRule].includes('BYMONTHDAY') &&
|
|
936
|
+
this.parent.timezone && event[this.parent.eventFields.startTimezone] && event[this.parent.eventFields.endTimezone]) {
|
|
937
|
+
isDSTAdjusted = true;
|
|
938
|
+
convertedDates.push.apply(convertedDates, dates.map(function (date) {
|
|
939
|
+
return _this.parent.tzModule.convert(new Date(date), event[_this.parent.eventFields.startTimezone], _this.parent.timezone).getTime();
|
|
940
|
+
}));
|
|
941
|
+
}
|
|
942
|
+
convertedDates = convertedDates.length > 0 ? convertedDates : dates;
|
|
928
943
|
var occurrenceCollection = [];
|
|
929
|
-
for (var _i = 0,
|
|
930
|
-
var date =
|
|
944
|
+
for (var _i = 0, convertedDates_1 = convertedDates; _i < convertedDates_1.length; _i++) {
|
|
945
|
+
var date = convertedDates_1[_i];
|
|
931
946
|
var clonedObject = extend({}, event, null, true);
|
|
932
|
-
date = this.getDSTAdjustedTime(date, clonedObject);
|
|
947
|
+
date = !isDSTAdjusted ? this.getDSTAdjustedTime(date, clonedObject) : date;
|
|
933
948
|
clonedObject[this.parent.eventFields.startTime] = new Date(date);
|
|
934
949
|
clonedObject[this.parent.eventFields.endTime] = new Date(new Date(date).setMilliseconds(duration));
|
|
935
950
|
clonedObject[this.parent.eventFields.recurrenceID] = clonedObject[this.parent.eventFields.id];
|
|
@@ -90,7 +90,15 @@ var InlineEdit = /** @class */ (function () {
|
|
|
90
90
|
subjectWrap.insertBefore(inlineSubject, subjectWrap.firstChild);
|
|
91
91
|
}
|
|
92
92
|
else {
|
|
93
|
-
|
|
93
|
+
var elementSelector = ['TimelineDay', 'TimelineWeek', 'TimelineWorkWeek', 'TimelineMonth'].indexOf(this.parent.currentView) > -1 ?
|
|
94
|
+
'.e-inner-wrap' : '.e-appointment-details';
|
|
95
|
+
var innerWrapElement = args.element.querySelector(elementSelector);
|
|
96
|
+
if (isNullOrUndefined(innerWrapElement)) {
|
|
97
|
+
args.element.querySelector('.e-appointment-details').prepend(inlineSubject);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
innerWrapElement.prepend(inlineSubject);
|
|
101
|
+
}
|
|
94
102
|
}
|
|
95
103
|
inlineSubject.focus();
|
|
96
104
|
}
|
|
@@ -347,7 +347,10 @@ var MonthEvent = /** @class */ (function (_super) {
|
|
|
347
347
|
if (this.parent.crudModule && this.parent.crudModule.crudObj.isCrudAction) {
|
|
348
348
|
for (var i = 0, len = this.parent.crudModule.crudObj.sourceEvent.length; i < len; i++) {
|
|
349
349
|
var sourceRes = this.parent.crudModule.crudObj.sourceEvent[parseInt(i.toString(), 10)];
|
|
350
|
-
this.
|
|
350
|
+
if (!this.parent.uiStateValues.isGroupAdaptive ||
|
|
351
|
+
(this.parent.uiStateValues.groupIndex === sourceRes.groupIndex && this.parent.uiStateValues.isGroupAdaptive)) {
|
|
352
|
+
this.renderEventsHandler(sourceRes.renderDates, sourceRes.workDays, sourceRes);
|
|
353
|
+
}
|
|
351
354
|
if (this.parent.crudModule.crudObj.sourceEvent[parseInt(i.toString(), 10)].groupIndex !==
|
|
352
355
|
this.parent.crudModule.crudObj.targetEvent[parseInt(i.toString(), 10)].groupIndex) {
|
|
353
356
|
var target = this.parent.crudModule.crudObj.targetEvent[parseInt(i.toString(), 10)];
|
|
@@ -133,7 +133,10 @@ var TimelineEvent = /** @class */ (function (_super) {
|
|
|
133
133
|
for (var i = 0, len = this.parent.crudModule.crudObj.sourceEvent.length; i < len; i++) {
|
|
134
134
|
var source = this.parent.crudModule.crudObj.sourceEvent[parseInt(i.toString(), 10)];
|
|
135
135
|
this.rowIndex = source.groupIndex;
|
|
136
|
-
|
|
136
|
+
if (!this.parent.uiStateValues.isGroupAdaptive ||
|
|
137
|
+
(this.parent.uiStateValues.groupIndex === source.groupIndex && this.parent.uiStateValues.isGroupAdaptive)) {
|
|
138
|
+
this.renderEventsHandler(this.parent.activeView.renderDates, this.parent.activeViewOptions.workDays, source);
|
|
139
|
+
}
|
|
137
140
|
if (this.parent.crudModule.crudObj.targetEvent[parseInt(i.toString(), 10)] && this.parent.crudModule.crudObj.sourceEvent[parseInt(i.toString(), 10)].groupIndex !==
|
|
138
141
|
this.parent.crudModule.crudObj.targetEvent[parseInt(i.toString(), 10)].groupIndex) {
|
|
139
142
|
var target = this.parent.crudModule.crudObj.targetEvent[parseInt(i.toString(), 10)];
|
|
@@ -67,8 +67,8 @@ var YearEvent = /** @class */ (function (_super) {
|
|
|
67
67
|
var monthDate = new Date(this.parent.selectedDate.getFullYear(), month, 1);
|
|
68
68
|
var monthStart = this.parent.calendarUtil.getMonthStartDate(new Date(monthDate.getTime()));
|
|
69
69
|
var monthEnd = this.parent.calendarUtil.getMonthEndDate(new Date(monthDate.getTime()));
|
|
70
|
-
var startDate = util.getWeekFirstDate(monthStart, this.parent.firstDayOfWeek);
|
|
71
|
-
var endDate = util.addDays(util.getWeekLastDate(monthEnd, this.parent.firstDayOfWeek), 1);
|
|
70
|
+
var startDate = util.getWeekFirstDate(monthStart, this.parent.activeViewOptions.firstDayOfWeek);
|
|
71
|
+
var endDate = util.addDays(util.getWeekLastDate(monthEnd, this.parent.activeViewOptions.firstDayOfWeek), 1);
|
|
72
72
|
for (var index = 0; startDate.getTime() < endDate.getTime(); index++) {
|
|
73
73
|
var start = util.resetTime(new Date(startDate.getTime()));
|
|
74
74
|
var end = util.addDays(new Date(start.getTime()), 1);
|
|
@@ -81,10 +81,12 @@ var HeaderRenderer = /** @class */ (function () {
|
|
|
81
81
|
items: args.items,
|
|
82
82
|
overflowMode: 'Popup',
|
|
83
83
|
clicked: _this.toolbarClickHandler.bind(_this),
|
|
84
|
+
created: _this.toolbarCreateHandler.bind(_this),
|
|
84
85
|
enableRtl: _this.parent.enableRtl,
|
|
85
86
|
enableHtmlSanitizer: _this.parent.enableHtmlSanitizer,
|
|
86
87
|
locale: _this.parent.locale
|
|
87
88
|
});
|
|
89
|
+
_this.toolbarObj.isStringTemplate = true;
|
|
88
90
|
_this.toolbarObj.root = _this.parent.root ? _this.parent.root : _this.parent;
|
|
89
91
|
_this.toolbarObj.appendTo(_this.parent.element.querySelector('.' + cls.HEADER_TOOLBAR));
|
|
90
92
|
_this.toolbarObj.element.setAttribute('aria-label', 'Scheduler');
|
|
@@ -517,6 +519,12 @@ var HeaderRenderer = /** @class */ (function () {
|
|
|
517
519
|
var views = [].slice.call(this.element.querySelectorAll('.e-views'));
|
|
518
520
|
return views.indexOf(target);
|
|
519
521
|
};
|
|
522
|
+
HeaderRenderer.prototype.toolbarCreateHandler = function () {
|
|
523
|
+
if (this.parent && this.parent.portals && this.toolbarObj && this.toolbarObj.portals) {
|
|
524
|
+
this.parent.portals = this.parent.portals.concat(this.toolbarObj.portals);
|
|
525
|
+
this.parent['renderReactTemplates']();
|
|
526
|
+
}
|
|
527
|
+
};
|
|
520
528
|
HeaderRenderer.prototype.toolbarClickHandler = function (args) {
|
|
521
529
|
if (!args.item) {
|
|
522
530
|
return;
|
|
@@ -660,7 +668,7 @@ var HeaderRenderer = /** @class */ (function () {
|
|
|
660
668
|
var firstDate = new Date(dates[0].getTime());
|
|
661
669
|
var lastDate = new Date(dates[dates.length - 1].getTime());
|
|
662
670
|
if (this.parent.currentView === 'WorkWeek' || this.parent.currentView === 'TimelineWorkWeek') {
|
|
663
|
-
firstDate = util.getWeekFirstDate(util.resetTime(this.parent.selectedDate), this.parent.firstDayOfWeek);
|
|
671
|
+
firstDate = util.getWeekFirstDate(util.resetTime(this.parent.selectedDate), this.parent.activeViewOptions.firstDayOfWeek);
|
|
664
672
|
lastDate = util.addDays(firstDate, 7 * this.parent.activeViewOptions.interval);
|
|
665
673
|
}
|
|
666
674
|
else if (this.parent.currentView === 'Month') {
|
|
@@ -483,7 +483,13 @@ var Month = /** @class */ (function (_super) {
|
|
|
483
483
|
var tr = createElement('tr');
|
|
484
484
|
var td = createElement('td', { attrs: { 'aria-selected': 'false' } });
|
|
485
485
|
var slotDatas = this.getContentSlots();
|
|
486
|
+
var isTimeline = this.parent.currentView === 'TimelineMonth';
|
|
487
|
+
var existingGroupIndices = isTimeline ? this.getGroupIndices() : [];
|
|
486
488
|
for (var row = 0; row < slotDatas.length; row++) {
|
|
489
|
+
if (existingGroupIndices.length > 0 &&
|
|
490
|
+
existingGroupIndices.indexOf(slotDatas[parseInt(row.toString(), 10)][0].groupIndex) > -1) {
|
|
491
|
+
continue;
|
|
492
|
+
}
|
|
487
493
|
var ntr = tr.cloneNode();
|
|
488
494
|
for (var col = 0; col < slotDatas[parseInt(row.toString(), 10)].length; col++) {
|
|
489
495
|
var ntd = this.createContentTd(slotDatas[parseInt(row.toString(), 10)][parseInt(col.toString(), 10)], td);
|
|
@@ -35,7 +35,7 @@ var TimelineHeaderRow = /** @class */ (function () {
|
|
|
35
35
|
var jsDate = +new Date(1970, 0, 1);
|
|
36
36
|
var tzOffsetDiff = d.getTimezoneOffset() - new Date(1970, 0, 1).getTimezoneOffset();
|
|
37
37
|
var key = Math.ceil(((((+d - jsDate) - (tzOffsetDiff * 60 * 1000)) / MS_PER_DAY) + new Date(jsDate).getDay() + 1) / 7);
|
|
38
|
-
if (this.parent.firstDayOfWeek && this.parent.firstDayOfWeek > new Date(+d).getDay()) {
|
|
38
|
+
if (this.parent.activeViewOptions.firstDayOfWeek && this.parent.activeViewOptions.firstDayOfWeek > new Date(+d).getDay()) {
|
|
39
39
|
key = key - 1;
|
|
40
40
|
}
|
|
41
41
|
result[parseInt(key.toString(), 10)] = result[parseInt(key.toString(), 10)] || [];
|
|
@@ -237,7 +237,12 @@ var TimelineViews = /** @class */ (function (_super) {
|
|
|
237
237
|
var tr = createElement('tr');
|
|
238
238
|
var td = createElement('td', { attrs: { 'aria-selected': 'false' } });
|
|
239
239
|
var trCount = this.getRowCount();
|
|
240
|
+
var existingGroupIndices = this.getGroupIndices();
|
|
240
241
|
for (var i = 0; i < trCount; i++) {
|
|
242
|
+
if (existingGroupIndices.length > 0 &&
|
|
243
|
+
existingGroupIndices.indexOf(this.parent.resourceBase.renderedResources[parseInt(i.toString(), 10)].groupIndex) > -1) {
|
|
244
|
+
continue;
|
|
245
|
+
}
|
|
241
246
|
var ntr = tr.cloneNode();
|
|
242
247
|
for (var _i = 0, _a = this.colLevels[this.colLevels.length - 1]; _i < _a.length; _i++) {
|
|
243
248
|
var tdData = _a[_i];
|
|
@@ -301,13 +301,17 @@ var TimelineYear = /** @class */ (function (_super) {
|
|
|
301
301
|
TimelineYear.prototype.getContentRows = function () {
|
|
302
302
|
var tRow = [];
|
|
303
303
|
var monthCells = this.getMonths();
|
|
304
|
+
var existingGroupIndices = this.getGroupIndices();
|
|
304
305
|
for (var row = 0; row < this.parent.resourceBase.renderedResources.length; row++) {
|
|
305
|
-
var tr = createElement('tr');
|
|
306
|
-
tRow.push(tr);
|
|
307
306
|
var resData = void 0;
|
|
308
307
|
if (this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
309
308
|
resData = this.parent.resourceBase.renderedResources[parseInt(row.toString(), 10)];
|
|
309
|
+
if (existingGroupIndices.length > 0 && existingGroupIndices.indexOf(resData.groupIndex) > -1) {
|
|
310
|
+
continue;
|
|
311
|
+
}
|
|
310
312
|
}
|
|
313
|
+
var tr = createElement('tr');
|
|
314
|
+
tRow.push(tr);
|
|
311
315
|
var monthDate = new Date(this.parent.selectedDate.getFullYear(), monthCells[parseInt(row.toString(), 10)], 1);
|
|
312
316
|
var date = this.parent.calendarUtil.getMonthStartDate(new Date(monthDate.getTime()));
|
|
313
317
|
for (var month = 0; month < this.columnCount; month++) {
|
|
@@ -678,18 +678,14 @@ var VerticalView = /** @class */ (function (_super) {
|
|
|
678
678
|
var rows = [];
|
|
679
679
|
var tr = createElement('tr');
|
|
680
680
|
var td = createElement('td', { attrs: { 'aria-selected': 'false' } });
|
|
681
|
-
var existingGroupIndices =
|
|
682
|
-
if (this.parent.virtualScrollModule && this.parent.activeViewOptions.group.resources.length > 0 &&
|
|
683
|
-
this.parent.virtualScrollModule.existingDataCollection.length > 0) {
|
|
684
|
-
existingGroupIndices = new Set(this.parent.virtualScrollModule.existingDataCollection.map(function (data) { return data.groupIndex; }));
|
|
685
|
-
}
|
|
681
|
+
var existingGroupIndices = this.getGroupIndices();
|
|
686
682
|
var handler = function (r) {
|
|
687
683
|
var ntr = tr.cloneNode();
|
|
688
684
|
for (var _i = 0, _a = _this.colLevels[_this.colLevels.length - 1]; _i < _a.length; _i++) {
|
|
689
685
|
var tdData = _a[_i];
|
|
690
686
|
var isAllowTdCreation = true;
|
|
691
687
|
if (_this.parent.virtualScrollModule && _this.parent.activeViewOptions.group.resources.length > 0) {
|
|
692
|
-
if (existingGroupIndices.
|
|
688
|
+
if (existingGroupIndices.indexOf(tdData.groupIndex) > -1) {
|
|
693
689
|
isAllowTdCreation = false;
|
|
694
690
|
}
|
|
695
691
|
}
|
|
@@ -625,6 +625,15 @@ var ViewBase = /** @class */ (function () {
|
|
|
625
625
|
this.parent.resourceBase.expandedResources = this.colLevels[this.colLevels.length - 1];
|
|
626
626
|
}
|
|
627
627
|
};
|
|
628
|
+
ViewBase.prototype.getGroupIndices = function (dataCollection) {
|
|
629
|
+
var groupIndices = [];
|
|
630
|
+
if (this.parent.virtualScrollModule && this.parent.activeViewOptions.group.resources.length > 0 && (dataCollection ||
|
|
631
|
+
this.parent.virtualScrollModule.existingDataCollection.length > 0) && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
632
|
+
dataCollection = isNullOrUndefined(dataCollection) ? this.parent.virtualScrollModule.existingDataCollection : dataCollection;
|
|
633
|
+
groupIndices = dataCollection.map(function (data) { return data.groupIndex; });
|
|
634
|
+
}
|
|
635
|
+
return groupIndices;
|
|
636
|
+
};
|
|
628
637
|
ViewBase.prototype.destroy = function () {
|
|
629
638
|
if (this.element && this.element.parentNode) {
|
|
630
639
|
remove(this.element);
|
|
@@ -113,7 +113,7 @@ var Year = /** @class */ (function (_super) {
|
|
|
113
113
|
this.setAriaAttributes(contentTable);
|
|
114
114
|
var thead = createElement('thead', { className: 'e-week-header' });
|
|
115
115
|
var tr = createElement('tr');
|
|
116
|
-
var currentWeek = util.getWeekFirstDate(util.firstDateOfMonth(currentDate), this.parent.firstDayOfWeek);
|
|
116
|
+
var currentWeek = util.getWeekFirstDate(util.firstDateOfMonth(currentDate), this.parent.activeViewOptions.firstDayOfWeek);
|
|
117
117
|
if (this.parent.activeViewOptions.showWeekNumber) {
|
|
118
118
|
tr.appendChild(createElement('th'));
|
|
119
119
|
}
|
|
@@ -242,7 +242,7 @@ var Year = /** @class */ (function (_super) {
|
|
|
242
242
|
return dateCol;
|
|
243
243
|
};
|
|
244
244
|
Year.prototype.getMonthDates = function (date) {
|
|
245
|
-
var startDate = util.getWeekFirstDate(util.firstDateOfMonth(date), this.parent.firstDayOfWeek);
|
|
245
|
+
var startDate = util.getWeekFirstDate(util.firstDateOfMonth(date), this.parent.activeViewOptions.firstDayOfWeek);
|
|
246
246
|
var endDate = util.addDays(new Date(+startDate), (6 * util.WEEK_LENGTH));
|
|
247
247
|
var dateCollection = [];
|
|
248
248
|
for (var start = startDate; start.getTime() < endDate.getTime(); start = util.addDays(start, 1)) {
|
|
@@ -378,10 +378,10 @@ var Year = /** @class */ (function (_super) {
|
|
|
378
378
|
return util.addDays(util.addMonths(this.getStartDate(), this.parent.monthsCount), -1);
|
|
379
379
|
};
|
|
380
380
|
Year.prototype.startDate = function () {
|
|
381
|
-
return this.parent.currentView === 'Year' ? util.getWeekFirstDate(this.getStartDate(), this.parent.firstDayOfWeek) : this.getStartDate();
|
|
381
|
+
return this.parent.currentView === 'Year' ? util.getWeekFirstDate(this.getStartDate(), this.parent.activeViewOptions.firstDayOfWeek) : this.getStartDate();
|
|
382
382
|
};
|
|
383
383
|
Year.prototype.endDate = function () {
|
|
384
|
-
return this.parent.currentView === 'Year' ? util.addDays(util.getWeekLastDate(this.getEndDate(), this.parent.firstDayOfWeek), 1) :
|
|
384
|
+
return this.parent.currentView === 'Year' ? util.addDays(util.getWeekLastDate(this.getEndDate(), this.parent.activeViewOptions.firstDayOfWeek), 1) :
|
|
385
385
|
util.addDays(this.getEndDate(), 1);
|
|
386
386
|
};
|
|
387
387
|
Year.prototype.getEndDateFromStartDate = function (start) {
|