@syncfusion/ej2-schedule 25.1.35 → 25.1.39
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/CHANGELOG.md +19 -0
- package/dist/ej2-schedule.min.js +2 -2
- 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 +183 -44
- package/dist/es6/ej2-schedule.es2015.js.map +1 -1
- package/dist/es6/ej2-schedule.es5.js +192 -45
- 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 +12 -12
- package/src/recurrence-editor/recurrence-editor.js +1 -2
- package/src/schedule/actions/crud.js +3 -0
- package/src/schedule/actions/virtual-scroll.d.ts +2 -0
- package/src/schedule/actions/virtual-scroll.js +24 -1
- package/src/schedule/base/css-constant.d.ts +4 -0
- package/src/schedule/base/css-constant.js +4 -0
- package/src/schedule/base/interface.d.ts +1 -0
- package/src/schedule/base/resource.js +1 -0
- package/src/schedule/base/schedule.d.ts +1 -0
- package/src/schedule/base/schedule.js +20 -4
- package/src/schedule/base/type.d.ts +1 -0
- package/src/schedule/event-renderer/agenda-base.d.ts +1 -1
- package/src/schedule/event-renderer/agenda-base.js +36 -14
- package/src/schedule/event-renderer/event-base.js +4 -2
- package/src/schedule/event-renderer/month.js +1 -2
- package/src/schedule/event-renderer/timeline-view.js +17 -5
- package/src/schedule/event-renderer/vertical-view.js +18 -2
- package/src/schedule/popups/quick-popups.js +3 -1
- package/src/schedule/renderer/agenda.d.ts +1 -0
- package/src/schedule/renderer/agenda.js +38 -9
- package/src/schedule/renderer/header-renderer.js +3 -2
- package/src/schedule/renderer/renderer.js +1 -0
- package/src/schedule/renderer/timeline-year.js +4 -1
- package/src/schedule/renderer/vertical-view.js +14 -0
- package/src/schedule/renderer/view-base.js +1 -1
- package/styles/bootstrap-dark.css +11 -1
- package/styles/bootstrap.css +11 -1
- package/styles/bootstrap4.css +11 -1
- package/styles/bootstrap5-dark.css +11 -1
- package/styles/bootstrap5.css +11 -1
- package/styles/fabric-dark.css +11 -1
- package/styles/fabric.css +11 -1
- package/styles/fluent-dark.css +12 -2
- package/styles/fluent.css +12 -2
- package/styles/highcontrast-light.css +11 -1
- package/styles/highcontrast.css +11 -1
- package/styles/material-dark.css +20 -1
- package/styles/material.css +20 -1
- package/styles/material3-dark.css +11 -1
- package/styles/material3.css +11 -1
- package/styles/schedule/_layout.scss +22 -1
- package/styles/schedule/bootstrap-dark.css +11 -1
- package/styles/schedule/bootstrap.css +11 -1
- package/styles/schedule/bootstrap4.css +11 -1
- package/styles/schedule/bootstrap5-dark.css +11 -1
- package/styles/schedule/bootstrap5.css +11 -1
- package/styles/schedule/fabric-dark.css +11 -1
- package/styles/schedule/fabric.css +11 -1
- package/styles/schedule/fluent-dark.css +12 -2
- package/styles/schedule/fluent.css +12 -2
- package/styles/schedule/highcontrast-light.css +11 -1
- package/styles/schedule/highcontrast.css +11 -1
- package/styles/schedule/material-dark.css +20 -1
- package/styles/schedule/material.css +20 -1
- package/styles/schedule/material3-dark.css +11 -1
- package/styles/schedule/material3.css +11 -1
- package/styles/schedule/tailwind-dark.css +11 -1
- package/styles/schedule/tailwind.css +11 -1
- package/styles/tailwind-dark.css +11 -1
- package/styles/tailwind.css +11 -1
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 25.1.
|
|
3
|
+
* version : 25.1.39
|
|
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@25.1.37",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-flwr+93nCa0OS6J4KbFw5HBmUmNW4HFDJfV9KGRqIT9OhErmQTpp8ImOzZBuUohD27V/3dQ+MdOf9kD9rZlKcw==",
|
|
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": "https://nexus.syncfusioninternal.com/repository/ej2-
|
|
27
|
-
"_shasum": "
|
|
26
|
+
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-schedule/-/ej2-schedule-25.1.37.tgz",
|
|
27
|
+
"_shasum": "5d67d711e5b35889656ed5b772293682a3d896cb",
|
|
28
28
|
"_spec": "@syncfusion/ej2-schedule@*",
|
|
29
29
|
"_where": "/jenkins/workspace/elease-automation_release_25.1.1/packages/included",
|
|
30
30
|
"author": {
|
|
@@ -36,15 +36,15 @@
|
|
|
36
36
|
"bundleDependencies": false,
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@syncfusion/ej2-base": "~25.1.35",
|
|
39
|
-
"@syncfusion/ej2-buttons": "~25.1.
|
|
40
|
-
"@syncfusion/ej2-calendars": "~25.1.
|
|
39
|
+
"@syncfusion/ej2-buttons": "~25.1.39",
|
|
40
|
+
"@syncfusion/ej2-calendars": "~25.1.39",
|
|
41
41
|
"@syncfusion/ej2-data": "~25.1.35",
|
|
42
|
-
"@syncfusion/ej2-dropdowns": "~25.1.
|
|
42
|
+
"@syncfusion/ej2-dropdowns": "~25.1.39",
|
|
43
43
|
"@syncfusion/ej2-excel-export": "~25.1.35",
|
|
44
|
-
"@syncfusion/ej2-inputs": "~25.1.
|
|
45
|
-
"@syncfusion/ej2-lists": "~25.1.
|
|
46
|
-
"@syncfusion/ej2-navigations": "~25.1.
|
|
47
|
-
"@syncfusion/ej2-popups": "~25.1.
|
|
44
|
+
"@syncfusion/ej2-inputs": "~25.1.38",
|
|
45
|
+
"@syncfusion/ej2-lists": "~25.1.39",
|
|
46
|
+
"@syncfusion/ej2-navigations": "~25.1.39",
|
|
47
|
+
"@syncfusion/ej2-popups": "~25.1.39"
|
|
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.",
|
|
@@ -73,6 +73,6 @@
|
|
|
73
73
|
"url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
|
74
74
|
},
|
|
75
75
|
"typings": "index.d.ts",
|
|
76
|
-
"version": "25.1.
|
|
76
|
+
"version": "25.1.39",
|
|
77
77
|
"sideEffects": false
|
|
78
78
|
}
|
|
@@ -716,7 +716,6 @@ var RecurrenceEditor = /** @class */ (function (_super) {
|
|
|
716
716
|
RecurrenceEditor.prototype.setTemplate = function () {
|
|
717
717
|
var dayData = this.getDayData('narrow');
|
|
718
718
|
var fullDay = this.getDayData('wide');
|
|
719
|
-
var labelId = this.element.id + '_' + 'end_label';
|
|
720
719
|
this.element.innerHTML = '<div class="' + HEADER + '">' +
|
|
721
720
|
'<div class="' + INPUTWARAPPER + ' ' + FORMLEFT + '">' +
|
|
722
721
|
'<input type="text" tabindex="0" class="' + REPEATELEMENT +
|
|
@@ -763,7 +762,7 @@ var RecurrenceEditor = /** @class */ (function (_super) {
|
|
|
763
762
|
'</div></div>' +
|
|
764
763
|
'<div class="' + INPUTWARAPPERSIDE + ' ' + ENDON + ' ' + FORMRIGHT + '">' +
|
|
765
764
|
'<div class="' + INPUTWARAPPER + ' ' + ENDONLEFT + '">' +
|
|
766
|
-
'<input type="text" tabindex="0" class="' + ENDONELEMENT + '"
|
|
765
|
+
'<input type="text" tabindex="0" class="' + ENDONELEMENT + '"title="' + this.localeObj.getConstant(END) + '" />' +
|
|
767
766
|
'</div>' +
|
|
768
767
|
'<div class="' + INPUTWARAPPER + ' ' + ENDONDATE + '" >' +
|
|
769
768
|
'<input type="text" tabindex="0" class="' + UNTILDATE + '"title="' + this.localeObj.getConstant(UNTIL) + '" />' +
|
|
@@ -46,6 +46,9 @@ var Crud = /** @class */ (function () {
|
|
|
46
46
|
return;
|
|
47
47
|
}
|
|
48
48
|
this.parent.trigger(events.dataBinding, e, function (args) {
|
|
49
|
+
if (args.cancel) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
49
52
|
var resultData = extend([], args.result, null, true);
|
|
50
53
|
_this.parent.eventsData = resultData.filter(function (data) { return !data[_this.parent.eventFields.isBlock]; });
|
|
51
54
|
_this.parent.blockData = resultData.filter(function (data) { return data[_this.parent.eventFields.isBlock]; });
|
|
@@ -14,6 +14,7 @@ export declare class VirtualScroll {
|
|
|
14
14
|
private focusedEle;
|
|
15
15
|
private isResourceCell;
|
|
16
16
|
isHorizontalScroll: boolean;
|
|
17
|
+
isRemoteRefresh: boolean;
|
|
17
18
|
private startIndex;
|
|
18
19
|
constructor(parent: Schedule);
|
|
19
20
|
private addEventListener;
|
|
@@ -23,6 +24,7 @@ export declare class VirtualScroll {
|
|
|
23
24
|
updateVirtualScrollHeight(): void;
|
|
24
25
|
updateVirtualTrackHeight(wrap: HTMLElement): void;
|
|
25
26
|
setItemSize(): void;
|
|
27
|
+
refreshLayout(): void;
|
|
26
28
|
private renderEvents;
|
|
27
29
|
virtualScrolling(): void;
|
|
28
30
|
private horizontalScrolling;
|
|
@@ -92,6 +92,27 @@ var VirtualScroll = /** @class */ (function () {
|
|
|
92
92
|
this.itemSize = util.getElementHeightFromClass(this.parent.activeView.element, cls.WORK_CELLS_CLASS) || this.itemSize;
|
|
93
93
|
}
|
|
94
94
|
};
|
|
95
|
+
VirtualScroll.prototype.refreshLayout = function () {
|
|
96
|
+
var initialHeight = this.parent.uiStateValues.scheduleHeight;
|
|
97
|
+
this.parent.uiStateValues.scheduleHeight = this.parent.element.offsetHeight;
|
|
98
|
+
var preRenderedLength = this.renderedLength;
|
|
99
|
+
if (this.parent.uiStateValues.scheduleHeight !== initialHeight) {
|
|
100
|
+
if (preRenderedLength < this.getRenderedCount()) {
|
|
101
|
+
this.isRemoteRefresh = true;
|
|
102
|
+
}
|
|
103
|
+
var resWrap = this.parent.element.querySelector('.' + cls.RESOURCE_COLUMN_WRAP_CLASS);
|
|
104
|
+
var conWrap = this.parent.element.querySelector('.' + cls.CONTENT_WRAP_CLASS);
|
|
105
|
+
var eventWrap = this.parent.element.querySelector('.' + cls.EVENT_TABLE_CLASS);
|
|
106
|
+
var firstTDIndex = parseInt(resWrap.querySelector('tbody td').getAttribute('data-group-index'), 10);
|
|
107
|
+
var endIndex = (firstTDIndex + this.renderedLength);
|
|
108
|
+
firstTDIndex = (endIndex > this.parent.resourceBase.expandedResources.length) ?
|
|
109
|
+
(this.parent.resourceBase.expandedResources.length - this.renderedLength) : firstTDIndex;
|
|
110
|
+
this.parent.resourceBase.renderedResources = this.parent.resourceBase.expandedResources.slice(firstTDIndex, endIndex);
|
|
111
|
+
if (this.parent.resourceBase.renderedResources.length > 0) {
|
|
112
|
+
this.updateContent(resWrap, conWrap, eventWrap, this.parent.resourceBase.renderedResources);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
95
116
|
VirtualScroll.prototype.renderEvents = function () {
|
|
96
117
|
this.setTabIndex();
|
|
97
118
|
var dynamicData = this.triggerScrollEvent(events.virtualScrollStop);
|
|
@@ -127,7 +148,9 @@ var VirtualScroll = /** @class */ (function () {
|
|
|
127
148
|
var eventWrap = this.parent.element.querySelector('.' + cls.EVENT_TABLE_CLASS);
|
|
128
149
|
var timeIndicator = this.parent.element.querySelector('.' + cls.CURRENT_TIMELINE_CLASS);
|
|
129
150
|
var conTable = this.parent.element.querySelector('.' + cls.CONTENT_TABLE_CLASS);
|
|
130
|
-
|
|
151
|
+
if (!this.parent.rowAutoHeight) {
|
|
152
|
+
addClass([conWrap, resWrap], 'e-transition');
|
|
153
|
+
}
|
|
131
154
|
this.renderedLength = resWrap.querySelector('tbody').children.length;
|
|
132
155
|
var firstTDIndex = parseInt(resWrap.querySelector('tbody td').getAttribute('data-group-index'), 10);
|
|
133
156
|
var scrollHeight = this.parent.rowAutoHeight ?
|
|
@@ -8,6 +8,8 @@ export declare const RTL: string;
|
|
|
8
8
|
/** @private */
|
|
9
9
|
export declare const DEVICE_CLASS: string;
|
|
10
10
|
/** @private */
|
|
11
|
+
export declare const ADAPTIVE_CLASS: string;
|
|
12
|
+
/** @private */
|
|
11
13
|
export declare const MULTI_DRAG: string;
|
|
12
14
|
/** @private */
|
|
13
15
|
export declare const ICON: string;
|
|
@@ -122,6 +124,8 @@ export declare const TIMELINE_WRAPPER_CLASS: string;
|
|
|
122
124
|
/** @private */
|
|
123
125
|
export declare const APPOINTMENT_WRAPPER_CLASS: string;
|
|
124
126
|
/** @private */
|
|
127
|
+
export declare const APPOINTMENT_WRAPPER_HIDDEN_CLASS: string;
|
|
128
|
+
/** @private */
|
|
125
129
|
export declare const DAY_WRAPPER_CLASS: string;
|
|
126
130
|
/** @private */
|
|
127
131
|
export declare const TOOLBAR_CONTAINER: string;
|
|
@@ -8,6 +8,8 @@ export var RTL = 'e-rtl';
|
|
|
8
8
|
/** @private */
|
|
9
9
|
export var DEVICE_CLASS = 'e-device';
|
|
10
10
|
/** @private */
|
|
11
|
+
export var ADAPTIVE_CLASS = 'e-adaptive';
|
|
12
|
+
/** @private */
|
|
11
13
|
export var MULTI_DRAG = 'e-multi-drag';
|
|
12
14
|
/** @private */
|
|
13
15
|
export var ICON = 'e-icons';
|
|
@@ -122,6 +124,8 @@ export var TIMELINE_WRAPPER_CLASS = 'e-timeline-wrapper';
|
|
|
122
124
|
/** @private */
|
|
123
125
|
export var APPOINTMENT_WRAPPER_CLASS = 'e-appointment-wrapper';
|
|
124
126
|
/** @private */
|
|
127
|
+
export var APPOINTMENT_WRAPPER_HIDDEN_CLASS = 'e-appointment-wrapper-hidden';
|
|
128
|
+
/** @private */
|
|
125
129
|
export var DAY_WRAPPER_CLASS = 'e-day-wrapper';
|
|
126
130
|
/** @private */
|
|
127
131
|
export var TOOLBAR_CONTAINER = 'e-schedule-toolbar-container';
|
|
@@ -493,6 +493,7 @@ var ResourceBase = /** @class */ (function () {
|
|
|
493
493
|
args = {
|
|
494
494
|
cancel: false, event: (event) ? event.event : null, groupIndex: _this.parent.uiStateValues.groupIndex, requestType: 'resourceChanged'
|
|
495
495
|
};
|
|
496
|
+
_this.parent.adaptiveGroupIndex = _this.parent.uiStateValues.groupIndex;
|
|
496
497
|
_this.parent.trigger(events.actionComplete, args);
|
|
497
498
|
}
|
|
498
499
|
});
|
|
@@ -137,6 +137,7 @@ export declare class Schedule extends Component<HTMLElement> implements INotifyP
|
|
|
137
137
|
scrollTop: number;
|
|
138
138
|
scrollLeft: number;
|
|
139
139
|
isPrinting: boolean;
|
|
140
|
+
adaptiveGroupIndex: number;
|
|
140
141
|
/**
|
|
141
142
|
* Sets the `width` of the Schedule component, accepting both string and number values.
|
|
142
143
|
*
|
|
@@ -72,7 +72,9 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
72
72
|
* @param {string | HTMLElement} element Accepts the DOM element reference
|
|
73
73
|
*/
|
|
74
74
|
function Schedule(options, element) {
|
|
75
|
-
|
|
75
|
+
var _this = _super.call(this, options, element) || this;
|
|
76
|
+
_this.adaptiveGroupIndex = 0;
|
|
77
|
+
return _this;
|
|
76
78
|
}
|
|
77
79
|
/**
|
|
78
80
|
* Core method that initializes the control rendering.
|
|
@@ -96,6 +98,12 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
96
98
|
else {
|
|
97
99
|
removeClasses.push(cls.DEVICE_CLASS);
|
|
98
100
|
}
|
|
101
|
+
if (this.enableAdaptiveUI) {
|
|
102
|
+
addClasses.push(cls.ADAPTIVE_CLASS);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
removeClasses.push(cls.ADAPTIVE_CLASS);
|
|
106
|
+
}
|
|
99
107
|
if (this.allowMultiDrag) {
|
|
100
108
|
addClasses.push(cls.MULTI_DRAG);
|
|
101
109
|
}
|
|
@@ -708,7 +716,7 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
708
716
|
if (this && isNullOrUndefined(this.uiStateValues) || !(this.enablePersistence)) {
|
|
709
717
|
this.uiStateValues = {
|
|
710
718
|
expand: false, isInitial: true, left: 0, top: 0, isGroupAdaptive: false,
|
|
711
|
-
isIgnoreOccurrence: false, groupIndex:
|
|
719
|
+
isIgnoreOccurrence: false, groupIndex: this.adaptiveGroupIndex, action: false, isBlock: false, isCustomMonth: true, isPreventTimezone: false
|
|
712
720
|
};
|
|
713
721
|
}
|
|
714
722
|
this.currentTimezoneDate = this.getCurrentTime();
|
|
@@ -1202,6 +1210,9 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
1202
1210
|
&& document.activeElement.classList.contains(cls.SUBJECT_CLASS))) {
|
|
1203
1211
|
return;
|
|
1204
1212
|
}
|
|
1213
|
+
if (this.virtualScrollModule && this.activeView.isTimelineView()) {
|
|
1214
|
+
this.virtualScrollModule.refreshLayout();
|
|
1215
|
+
}
|
|
1205
1216
|
if (this.activeViewOptions.timeScale.enable && this.activeView) {
|
|
1206
1217
|
this.activeView.highlightCurrentTime();
|
|
1207
1218
|
}
|
|
@@ -1213,7 +1224,12 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
1213
1224
|
&& !this.activeViewOptions.timeScale.enable) || this.activeView.isTimelineView()) {
|
|
1214
1225
|
this.activeView.resetColWidth();
|
|
1215
1226
|
this.notify(events.scrollUiUpdate, { cssProperties: this.getCssProperties(), isPreventScrollUpdate: true });
|
|
1216
|
-
|
|
1227
|
+
var isRemoteRefresh = false;
|
|
1228
|
+
if (this.activeViewOptions.enableLazyLoading && this.virtualScrollModule && this.virtualScrollModule.isRemoteRefresh) {
|
|
1229
|
+
isRemoteRefresh = this.virtualScrollModule.isRemoteRefresh;
|
|
1230
|
+
this.virtualScrollModule.isRemoteRefresh = false;
|
|
1231
|
+
}
|
|
1232
|
+
this.refreshEvents(isRemoteRefresh);
|
|
1217
1233
|
}
|
|
1218
1234
|
else {
|
|
1219
1235
|
this.notify(events.contentReady, {});
|
|
@@ -1396,7 +1412,7 @@ var Schedule = /** @class */ (function (_super) {
|
|
|
1396
1412
|
* @private
|
|
1397
1413
|
*/
|
|
1398
1414
|
Schedule.prototype.getPersistData = function () {
|
|
1399
|
-
return this.addOnPersist(['currentView', 'selectedDate', 'scrollTop', 'scrollLeft']);
|
|
1415
|
+
return this.addOnPersist(['currentView', 'selectedDate', 'scrollTop', 'scrollLeft', 'adaptiveGroupIndex']);
|
|
1400
1416
|
};
|
|
1401
1417
|
/**
|
|
1402
1418
|
* Called internally, if any of the property value changed.
|
|
@@ -6,7 +6,7 @@ export declare class AgendaBase extends ViewBase {
|
|
|
6
6
|
createAppointment(event: Record<string, any>): HTMLElement[];
|
|
7
7
|
processAgendaEvents(events: Record<string, any>[]): Record<string, any>[];
|
|
8
8
|
wireEventActions(): void;
|
|
9
|
-
calculateResourceTableElement(tBody: Element, noOfDays: number, agendaDate: Date): void;
|
|
9
|
+
calculateResourceTableElement(tBody: Element, noOfDays: number, agendaDate: Date, agendaEnd?: Date): void;
|
|
10
10
|
private createResourceTableRow;
|
|
11
11
|
createDateHeaderElement(date: Date): Element;
|
|
12
12
|
renderEmptyContent(tBody: Element, agendaDate: Date): void;
|
|
@@ -163,7 +163,8 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
163
163
|
EventHandler.add(element, 'click', this.parent.agendaModule.dayNavigationClick, this);
|
|
164
164
|
}
|
|
165
165
|
};
|
|
166
|
-
AgendaBase.prototype.calculateResourceTableElement = function (tBody, noOfDays, agendaDate) {
|
|
166
|
+
AgendaBase.prototype.calculateResourceTableElement = function (tBody, noOfDays, agendaDate, agendaEnd) {
|
|
167
|
+
if (agendaEnd === void 0) { agendaEnd = null; }
|
|
167
168
|
if (isNullOrUndefined(this.parent.resourceBase.lastResourceLevel)) {
|
|
168
169
|
var level = this.getDateSlots(this.renderDates, this.parent.activeViewOptions.workDays);
|
|
169
170
|
this.parent.resourceBase.generateResourceLevels(level);
|
|
@@ -172,7 +173,9 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
172
173
|
var days = (this.parent.activeViewOptions.group.byDate || this.parent.currentView === 'MonthAgenda') ? noOfDays : 1;
|
|
173
174
|
var resColl = this.parent.resourceBase.resourceCollection;
|
|
174
175
|
var resData = this.parent.resourceBase.lastResourceLevel;
|
|
176
|
+
var agendaStart = agendaDate;
|
|
175
177
|
var initialDate = agendaDate;
|
|
178
|
+
var showWeekend = this.parent.activeViewOptions.showWeekend;
|
|
176
179
|
for (var i = 0; i < days; i++) {
|
|
177
180
|
var lastLevelInfo = [];
|
|
178
181
|
var tempLastLevelInfo = [];
|
|
@@ -180,6 +183,21 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
180
183
|
var eventObj = void 0;
|
|
181
184
|
var dateObj = void 0;
|
|
182
185
|
var firstDate = util.addDays(initialDate, i);
|
|
186
|
+
if (this.parent.currentView === 'Agenda' && this.parent.activeViewOptions.group.byDate &&
|
|
187
|
+
this.parent.activeViewOptions.allowVirtualScrolling && !showWeekend && !this.isWorkDay(firstDate)) {
|
|
188
|
+
do {
|
|
189
|
+
firstDate = util.addDays(firstDate, 1);
|
|
190
|
+
if (firstDate >= agendaEnd) {
|
|
191
|
+
break;
|
|
192
|
+
}
|
|
193
|
+
} while (!this.isWorkDay(firstDate) ||
|
|
194
|
+
this.parent.eventBase.filterEvents(firstDate, util.addDays(firstDate, 1)).length < 1);
|
|
195
|
+
if (firstDate >= agendaEnd) {
|
|
196
|
+
break;
|
|
197
|
+
}
|
|
198
|
+
initialDate = util.addDays(firstDate, -i);
|
|
199
|
+
agendaLastDate = util.addDays(firstDate, 1);
|
|
200
|
+
}
|
|
183
201
|
var finalDate = (this.parent.activeViewOptions.group.byDate || this.parent.currentView === 'MonthAgenda')
|
|
184
202
|
? util.addDays(firstDate, 1) : agendaLastDate;
|
|
185
203
|
var agendaCollection = this.parent.eventBase.filterEvents(firstDate, finalDate);
|
|
@@ -194,7 +212,9 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
194
212
|
for (var r = 0; r < noOfDays; r++) {
|
|
195
213
|
// eslint-disable-next-line max-len
|
|
196
214
|
var resDayCollection = this.parent.eventBase.filterEvents(agendaDate, util.addDays(agendaDate, 1), resDataCollection, undefined);
|
|
197
|
-
if (
|
|
215
|
+
if (((showWeekend || !showWeekend && (this.parent.group.byDate ? this.isWorkDay(agendaDate) :
|
|
216
|
+
this.isWorkDay(agendaDate, resData[parseInt(res.toString(), 10)].workDays)))
|
|
217
|
+
&& (resDayCollection.length > 0 || !this.parent.hideEmptyAgendaDays)) ||
|
|
198
218
|
this.parent.currentView === 'MonthAgenda') {
|
|
199
219
|
data.push(resDayCollection[0]);
|
|
200
220
|
eventObj = {
|
|
@@ -220,16 +240,18 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
220
240
|
agendaDate = util.addDays(agendaDate, 1);
|
|
221
241
|
if (agendaDate.getTime() >= agendaLastDate.getTime() || this.parent.activeViewOptions.group.byDate
|
|
222
242
|
|| this.parent.currentView === 'MonthAgenda') {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
243
|
+
if (data.length > 0) {
|
|
244
|
+
lastLevelInfo[lastLevelInfo.length - 1][1].cssClass = cls.AGENDA_DAY_BORDER_CLASS;
|
|
245
|
+
var tempObj = {
|
|
246
|
+
rowSpan: data.length, type: 'resourceColumn', resource: resColl[parseInt((resColl.length - 1).toString(), 10)],
|
|
247
|
+
groupOrder: resData[parseInt(res.toString(), 10)].groupOrder.slice(0, -1),
|
|
248
|
+
resourceData: resData[parseInt(res.toString(), 10)].resourceData,
|
|
249
|
+
groupIndex: (lastLevelInfo.length - data.length), className: [cls.RESOURCE_NAME],
|
|
250
|
+
date: agendaDate
|
|
251
|
+
};
|
|
252
|
+
lastLevelInfo[parseInt((lastLevelInfo.length - data.length).toString(), 10)].push(tempObj);
|
|
253
|
+
tempLastLevelInfo.push(extend({}, tempObj, null, true));
|
|
254
|
+
}
|
|
233
255
|
break;
|
|
234
256
|
}
|
|
235
257
|
}
|
|
@@ -264,9 +286,9 @@ var AgendaBase = /** @class */ (function (_super) {
|
|
|
264
286
|
this.createResourceTableRow(lastLevelInfo, tBody);
|
|
265
287
|
}
|
|
266
288
|
}
|
|
267
|
-
var totalCollection = this.parent.eventBase.filterEvents(
|
|
289
|
+
var totalCollection = this.parent.eventBase.filterEvents(agendaStart, agendaLastDate);
|
|
268
290
|
if (totalCollection.length === 0 && !this.parent.activeViewOptions.allowVirtualScrolling && this.parent.hideEmptyAgendaDays) {
|
|
269
|
-
this.renderEmptyContent(tBody,
|
|
291
|
+
this.renderEmptyContent(tBody, agendaStart);
|
|
270
292
|
}
|
|
271
293
|
};
|
|
272
294
|
AgendaBase.prototype.createResourceTableRow = function (tContent, tBody) {
|
|
@@ -1281,11 +1281,13 @@ var EventBase = /** @class */ (function () {
|
|
|
1281
1281
|
if (index === void 0) { index = 0; }
|
|
1282
1282
|
var tr = createElement('tr');
|
|
1283
1283
|
var levels = this.parent.activeView.colLevels.slice(-1)[0];
|
|
1284
|
+
var className = this.parent.isReact && this.parent.activeViewOptions.eventTemplate ?
|
|
1285
|
+
' ' + cls.APPOINTMENT_WRAPPER_HIDDEN_CLASS : '';
|
|
1284
1286
|
for (var i = 0, len = levels.length; i < len; i++) {
|
|
1285
1287
|
var col = levels[parseInt(i.toString(), 10)];
|
|
1286
1288
|
var appointmentWrap = createElement('td', {
|
|
1287
|
-
className: (type === 'allDay') ? cls.ALLDAY_APPOINTMENT_WRAPPER_CLASS : (type === 'timeIndicator') ?
|
|
1288
|
-
cls.TIMELINE_WRAPPER_CLASS : cls.DAY_WRAPPER_CLASS, attrs: { 'data-date': col.date.getTime().toString() }
|
|
1289
|
+
className: (type === 'allDay') ? cls.ALLDAY_APPOINTMENT_WRAPPER_CLASS + className : (type === 'timeIndicator') ?
|
|
1290
|
+
cls.TIMELINE_WRAPPER_CLASS : cls.DAY_WRAPPER_CLASS + className, attrs: { 'data-date': col.date.getTime().toString() }
|
|
1289
1291
|
});
|
|
1290
1292
|
if (!isNullOrUndefined(col.groupIndex)) {
|
|
1291
1293
|
appointmentWrap.setAttribute('data-group-index', col.groupIndex.toString());
|
|
@@ -676,8 +676,7 @@ var MonthEvent = /** @class */ (function (_super) {
|
|
|
676
676
|
attrs: {
|
|
677
677
|
'role': 'button',
|
|
678
678
|
'tabindex': '0',
|
|
679
|
-
'aria-label': this.parent.globalize.formatNumber(count) + '
|
|
680
|
-
+ (this.parent.isAdaptive ? '' : this.parent.localeObj.getConstant('more')),
|
|
679
|
+
'aria-label': this.parent.globalize.formatNumber(count) + ' ' + this.parent.localeObj.getConstant('moreEvents'),
|
|
681
680
|
'data-count': count.toString(),
|
|
682
681
|
'data-start-date': startDate.getTime().toString(),
|
|
683
682
|
'data-end-date': endDate.getTime().toString()
|
|
@@ -90,11 +90,18 @@ var TimelineEvent = /** @class */ (function (_super) {
|
|
|
90
90
|
};
|
|
91
91
|
TimelineEvent.prototype.getOverlapSortComparerEvents = function (startDate, endDate, appointmentsCollection) {
|
|
92
92
|
var appointments = [];
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
93
|
+
var _loop_1 = function (app) {
|
|
94
|
+
if (this_1.renderType === 'day') {
|
|
95
|
+
var start_1 = util.resetTime(startDate).getTime();
|
|
96
|
+
var end_1 = util.resetTime(endDate).getTime();
|
|
97
|
+
var appStart_1 = util.resetTime(app[this_1.fields.startTime]).getTime();
|
|
98
|
+
var appEnd_1 = util.resetTime(app[this_1.fields.endTime]).getTime();
|
|
99
|
+
var isEndOverlap = function () {
|
|
100
|
+
var endTime = (end_1 - (util.getDateInMs(endDate) <= 0 ? util.MS_PER_DAY : 0));
|
|
101
|
+
endTime = start_1 > endTime ? start_1 : endTime;
|
|
102
|
+
return appEnd_1 >= endTime && appStart_1 <= endTime;
|
|
103
|
+
};
|
|
104
|
+
if (appStart_1 <= start_1 && appEnd_1 >= start_1 || isEndOverlap() || appStart_1 > start_1 && appEnd_1 < end_1) {
|
|
98
105
|
appointments.push(app);
|
|
99
106
|
}
|
|
100
107
|
}
|
|
@@ -105,6 +112,11 @@ var TimelineEvent = /** @class */ (function (_super) {
|
|
|
105
112
|
appointments.push(app);
|
|
106
113
|
}
|
|
107
114
|
}
|
|
115
|
+
};
|
|
116
|
+
var this_1 = this;
|
|
117
|
+
for (var _i = 0, appointmentsCollection_1 = appointmentsCollection; _i < appointmentsCollection_1.length; _i++) {
|
|
118
|
+
var app = appointmentsCollection_1[_i];
|
|
119
|
+
_loop_1(app);
|
|
108
120
|
}
|
|
109
121
|
return appointments;
|
|
110
122
|
};
|
|
@@ -12,7 +12,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
12
12
|
};
|
|
13
13
|
})();
|
|
14
14
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
15
|
-
import { append, createElement, extend, EventHandler, Animation, formatUnit } from '@syncfusion/ej2-base';
|
|
15
|
+
import { append, createElement, extend, EventHandler, Animation, formatUnit, closest } from '@syncfusion/ej2-base';
|
|
16
16
|
import { isNullOrUndefined, setStyleAttribute, remove, removeClass, addClass } from '@syncfusion/ej2-base';
|
|
17
17
|
import { EventBase } from './event-base';
|
|
18
18
|
import * as util from '../base/util';
|
|
@@ -44,6 +44,7 @@ var VerticalEvent = /** @class */ (function (_super) {
|
|
|
44
44
|
return _this;
|
|
45
45
|
}
|
|
46
46
|
VerticalEvent.prototype.renderAppointments = function () {
|
|
47
|
+
var _this = this;
|
|
47
48
|
if (isNullOrUndefined(this.parent)) {
|
|
48
49
|
return;
|
|
49
50
|
}
|
|
@@ -54,6 +55,14 @@ var VerticalEvent = /** @class */ (function (_super) {
|
|
|
54
55
|
var wrapperElements = [].slice.call(this.parent.element.querySelectorAll('.' + cls.BLOCK_APPOINTMENT_CLASS +
|
|
55
56
|
',.' + cls.APPOINTMENT_CLASS + ',.' + cls.ROW_COUNT_WRAPPER_CLASS));
|
|
56
57
|
var isDragging = (this.parent.crudModule && this.parent.crudModule.crudObj.isCrudAction) ? true : false;
|
|
58
|
+
var hideWrapper = function (wrapper) {
|
|
59
|
+
if (_this.parent.isReact && !isNullOrUndefined(_this.parent.activeViewOptions.eventTemplate)) {
|
|
60
|
+
var appWrapper = closest(wrapper, '.' + cls.DAY_WRAPPER_CLASS + ',.' + cls.ALLDAY_APPOINTMENT_WRAPPER_CLASS);
|
|
61
|
+
if (appWrapper && !appWrapper.classList.contains(cls.APPOINTMENT_WRAPPER_HIDDEN_CLASS)) {
|
|
62
|
+
addClass([appWrapper], cls.APPOINTMENT_WRAPPER_HIDDEN_CLASS);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
57
66
|
for (var _i = 0, wrapperElements_1 = wrapperElements; _i < wrapperElements_1.length; _i++) {
|
|
58
67
|
var wrapper = wrapperElements_1[_i];
|
|
59
68
|
if (isDragging && !(wrapper.classList.contains(cls.ALLDAY_APPOINTMENT_CLASS) ||
|
|
@@ -62,11 +71,13 @@ var VerticalEvent = /** @class */ (function (_super) {
|
|
|
62
71
|
for (var j = 0, len = this.parent.crudModule.crudObj.sourceEvent.length; j < len; j++) {
|
|
63
72
|
if (groupIndex === this.parent.crudModule.crudObj.sourceEvent[parseInt(j.toString(), 10)].groupIndex ||
|
|
64
73
|
groupIndex === this.parent.crudModule.crudObj.targetEvent[parseInt(j.toString(), 10)].groupIndex) {
|
|
74
|
+
hideWrapper(wrapper);
|
|
65
75
|
remove(wrapper);
|
|
66
76
|
}
|
|
67
77
|
}
|
|
68
78
|
}
|
|
69
79
|
else {
|
|
80
|
+
hideWrapper(wrapper);
|
|
70
81
|
remove(wrapper);
|
|
71
82
|
}
|
|
72
83
|
}
|
|
@@ -103,7 +114,12 @@ var VerticalEvent = /** @class */ (function (_super) {
|
|
|
103
114
|
if (isDragging) {
|
|
104
115
|
this.parent.crudModule.crudObj.isCrudAction = false;
|
|
105
116
|
}
|
|
106
|
-
this.parent.renderTemplates()
|
|
117
|
+
this.parent.renderTemplates(function () {
|
|
118
|
+
if (_this.parent.isReact && _this.parent.activeViewOptions.eventTemplate) {
|
|
119
|
+
var wraps = [].slice.call(_this.parent.element.querySelectorAll('.' + cls.APPOINTMENT_WRAPPER_HIDDEN_CLASS));
|
|
120
|
+
removeClass(wraps, cls.APPOINTMENT_WRAPPER_HIDDEN_CLASS);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
107
123
|
};
|
|
108
124
|
VerticalEvent.prototype.initializeValues = function () {
|
|
109
125
|
this.resources = (this.parent.activeViewOptions.group.resources.length > 0) ? this.parent.uiStateValues.isGroupAdaptive ?
|
|
@@ -53,7 +53,7 @@ var QuickPopups = /** @class */ (function () {
|
|
|
53
53
|
QuickPopups.prototype.renderMorePopup = function () {
|
|
54
54
|
var moreEventPopup = "<div class=\"" + cls.MORE_EVENT_POPUP_CLASS + "\"><div class=\"" + cls.MORE_EVENT_HEADER_CLASS + "\">" +
|
|
55
55
|
("<div class=\"" + cls.MORE_EVENT_CLOSE_CLASS + "\" title=\"" + this.l10n.getConstant('close') + "\" tabindex=\"0\" role=\"button\"></div>") +
|
|
56
|
-
("<div class=\"" + cls.MORE_EVENT_DATE_HEADER_CLASS + "\"><div class=\"" + cls.MORE_EVENT_HEADER_DAY_CLASS + "\"></div>") +
|
|
56
|
+
("<div class=\"" + cls.MORE_EVENT_DATE_HEADER_CLASS + "\"><div class=\"" + cls.MORE_EVENT_HEADER_DAY_CLASS + "\" id=\"" + this.parent.element.id + "_more_popup\"></div>") +
|
|
57
57
|
("<div class=\"" + cls.MORE_EVENT_HEADER_DATE_CLASS + " " + cls.NAVIGATE_CLASS + "\" tabindex=\"0\" role=\"link\"></div></div></div></div>");
|
|
58
58
|
var moreEventWrapper = createElement('div', {
|
|
59
59
|
className: cls.MORE_POPUP_WRAPPER_CLASS + ' e-popup-close',
|
|
@@ -78,6 +78,8 @@ var QuickPopups = /** @class */ (function () {
|
|
|
78
78
|
viewPortElement: (this.parent.isAdaptive ? document.body : this.parent.element),
|
|
79
79
|
zIndex: (this.parent.isAdaptive ? 1002 : 2)
|
|
80
80
|
});
|
|
81
|
+
this.morePopup.element.setAttribute('role', 'dialog');
|
|
82
|
+
this.morePopup.element.setAttribute('aria-labelledby', this.parent.element.id + '_more_popup');
|
|
81
83
|
var closeButton = this.morePopup.element.querySelector('.' + cls.MORE_EVENT_CLOSE_CLASS);
|
|
82
84
|
this.renderButton('e-round', cls.ICON + ' ' + cls.CLOSE_ICON_CLASS, false, closeButton, this.closeClick);
|
|
83
85
|
EventHandler.add(this.morePopup.element.querySelector('.' + cls.MORE_EVENT_HEADER_DATE_CLASS), 'click', this.navigationClick, this);
|
|
@@ -20,6 +20,7 @@ export declare class Agenda extends AgendaBase implements IRenderer {
|
|
|
20
20
|
refreshHeader(): void;
|
|
21
21
|
private renderInitialContent;
|
|
22
22
|
renderContent(tBody: Element, agendaDate: Date, lastDate: Date): void;
|
|
23
|
+
private isAgendaWorkDay;
|
|
23
24
|
private agendaScrolling;
|
|
24
25
|
private virtualScrolling;
|
|
25
26
|
private getElementFromScrollerPosition;
|
|
@@ -150,9 +150,20 @@ var Agenda = /** @class */ (function (_super) {
|
|
|
150
150
|
var firstDate = new Date(agendaDate.getTime());
|
|
151
151
|
var isObject = this.appointmentFiltering(firstDate, lastDate);
|
|
152
152
|
if (isObject.length > 0 && this.parent.activeViewOptions.allowVirtualScrolling && this.parent.hideEmptyAgendaDays) {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
153
|
+
if (!this.parent.activeViewOptions.showWeekend && !this.isAgendaWorkDay(isObject[0][fieldMapping.startTime])) {
|
|
154
|
+
for (var _i = 0, isObject_1 = isObject; _i < isObject_1.length; _i++) {
|
|
155
|
+
var event_2 = isObject_1[_i];
|
|
156
|
+
if (this.isAgendaWorkDay(event_2[fieldMapping.startTime])) {
|
|
157
|
+
agendaDate = new Date(new Date(event_2[fieldMapping.startTime].getTime()).setHours(0, 0, 0, 0));
|
|
158
|
+
this.updateHeaderText(event_2[fieldMapping.startTime]);
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
agendaDate = new Date(new Date(isObject[0][fieldMapping.startTime].getTime()).setHours(0, 0, 0, 0));
|
|
165
|
+
this.updateHeaderText(isObject[0][fieldMapping.startTime]);
|
|
166
|
+
}
|
|
156
167
|
}
|
|
157
168
|
var endDate;
|
|
158
169
|
if (!this.parent.hideEmptyAgendaDays || (this.parent.agendaDaysCount > 0 && isObject.length > 0)) {
|
|
@@ -166,18 +177,25 @@ var Agenda = /** @class */ (function (_super) {
|
|
|
166
177
|
this.parent.headerModule.updateHeaderItems('remove');
|
|
167
178
|
}
|
|
168
179
|
}
|
|
169
|
-
this.calculateResourceTableElement(tBody, this.parent.agendaDaysCount, date);
|
|
180
|
+
this.calculateResourceTableElement(tBody, this.parent.agendaDaysCount, date, lastDate);
|
|
170
181
|
}
|
|
171
182
|
else {
|
|
172
183
|
for (var day = 0; day < this.parent.agendaDaysCount; day++) {
|
|
173
|
-
var filterData = this.appointmentFiltering(agendaDate);
|
|
174
184
|
var nTr = this.createTableRowElement(agendaDate, 'data');
|
|
175
|
-
|
|
185
|
+
var virtualContent = this.element.querySelector('tr[data-row-index="' + (+(nTr.dataset.rowIndex)) + '"]');
|
|
186
|
+
if (virtualContent || !this.parent.activeViewOptions.showWeekend && !this.isAgendaWorkDay(agendaDate)) {
|
|
176
187
|
agendaDate = util.addDays(agendaDate, 1);
|
|
188
|
+
if (!virtualContent && this.parent.activeViewOptions.allowVirtualScrolling) {
|
|
189
|
+
day--;
|
|
190
|
+
}
|
|
191
|
+
if (agendaDate.getTime() > lastDate.getTime()) {
|
|
192
|
+
break;
|
|
193
|
+
}
|
|
177
194
|
continue;
|
|
178
195
|
}
|
|
179
196
|
var dTd = nTr.children[0];
|
|
180
197
|
var aTd = nTr.children[1];
|
|
198
|
+
var filterData = this.appointmentFiltering(agendaDate);
|
|
181
199
|
if (filterData.length > 0 || (!this.parent.hideEmptyAgendaDays && filterData.length === 0)) {
|
|
182
200
|
var elementType = (!this.parent.hideEmptyAgendaDays && filterData.length === 0) ? 'noEvents' : 'data';
|
|
183
201
|
dTd.appendChild(this.createDateHeaderElement(agendaDate));
|
|
@@ -204,6 +222,14 @@ var Agenda = /** @class */ (function (_super) {
|
|
|
204
222
|
}
|
|
205
223
|
this.agendaDates = { start: firstDate, end: endDate };
|
|
206
224
|
};
|
|
225
|
+
Agenda.prototype.isAgendaWorkDay = function (date) {
|
|
226
|
+
if (this.parent.uiStateValues.isGroupAdaptive && !this.parent.group.byDate) {
|
|
227
|
+
return this.isWorkDay(date, this.parent.resourceBase.lastResourceLevel[this.parent.uiStateValues.groupIndex].workDays);
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
return this.isWorkDay(date);
|
|
231
|
+
}
|
|
232
|
+
};
|
|
207
233
|
Agenda.prototype.agendaScrolling = function (event) {
|
|
208
234
|
if (this.parent.quickPopup) {
|
|
209
235
|
this.parent.quickPopup.quickPopupHide();
|
|
@@ -308,9 +334,12 @@ var Agenda = /** @class */ (function (_super) {
|
|
|
308
334
|
var lastDate = this.getEndDateFromStartDate(date);
|
|
309
335
|
var daysCount = 0;
|
|
310
336
|
do {
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
337
|
+
if (this.parent.activeViewOptions.showWeekend || !this.parent.activeViewOptions.showWeekend &&
|
|
338
|
+
this.isAgendaWorkDay(currentDate)) {
|
|
339
|
+
var filterData = this.appointmentFiltering(currentDate);
|
|
340
|
+
if (filterData.length > 0 || !this.parent.hideEmptyAgendaDays) {
|
|
341
|
+
daysCount++;
|
|
342
|
+
}
|
|
314
343
|
}
|
|
315
344
|
currentDate = util.addDays(currentDate, (type === 'next') ? 1 : -1);
|
|
316
345
|
if (currentDate < firstDate || currentDate > lastDate) {
|