@syncfusion/ej2-schedule 20.1.52 → 20.1.55
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 +46 -11
- 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 +133 -46
- package/dist/es6/ej2-schedule.es2015.js.map +1 -1
- package/dist/es6/ej2-schedule.es5.js +133 -46
- 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 +15 -15
- package/src/recurrence-editor/date-generator.js +11 -1
- package/src/schedule/base/schedule.js +4 -0
- package/src/schedule/event-renderer/agenda-base.js +1 -1
- package/src/schedule/event-renderer/event-base.js +3 -0
- package/src/schedule/event-renderer/month.d.ts +1 -0
- package/src/schedule/event-renderer/month.js +38 -29
- package/src/schedule/event-renderer/vertical-view.js +3 -0
- package/src/schedule/event-renderer/year.js +3 -1
- package/src/schedule/exports/calendar-export.js +1 -1
- package/src/schedule/popups/event-window.js +4 -2
- package/src/schedule/renderer/month.js +8 -5
- package/src/schedule/renderer/renderer.js +2 -1
- package/src/schedule/renderer/timeline-year.d.ts +2 -1
- package/src/schedule/renderer/timeline-year.js +49 -4
- package/src/schedule/renderer/vertical-view.js +2 -1
- package/src/schedule/renderer/year.js +4 -0
- package/styles/bootstrap-dark.css +83 -968
- package/styles/bootstrap.css +83 -967
- package/styles/bootstrap4.css +83 -990
- package/styles/bootstrap5-dark.css +83 -988
- package/styles/bootstrap5.css +83 -988
- package/styles/fabric-dark.css +83 -968
- package/styles/fabric.css +83 -970
- package/styles/fluent-dark.css +83 -968
- package/styles/fluent.css +83 -968
- package/styles/highcontrast-light.css +83 -967
- package/styles/highcontrast.css +83 -972
- package/styles/material-dark.css +83 -967
- package/styles/material.css +83 -967
- package/styles/recurrence-editor/bootstrap-dark.css +6 -94
- package/styles/recurrence-editor/bootstrap.css +6 -94
- package/styles/recurrence-editor/bootstrap4.css +6 -94
- package/styles/recurrence-editor/bootstrap5-dark.css +6 -94
- package/styles/recurrence-editor/bootstrap5.css +6 -94
- package/styles/recurrence-editor/fabric-dark.css +6 -94
- package/styles/recurrence-editor/fabric.css +6 -94
- package/styles/recurrence-editor/fluent-dark.css +6 -94
- package/styles/recurrence-editor/fluent.css +6 -94
- package/styles/recurrence-editor/highcontrast-light.css +6 -94
- package/styles/recurrence-editor/highcontrast.css +6 -94
- package/styles/recurrence-editor/material-dark.css +6 -94
- package/styles/recurrence-editor/material.css +6 -94
- package/styles/recurrence-editor/tailwind-dark.css +6 -94
- package/styles/recurrence-editor/tailwind.css +6 -94
- package/styles/schedule/bootstrap-dark.css +78 -875
- package/styles/schedule/bootstrap.css +78 -874
- package/styles/schedule/bootstrap4.css +78 -897
- package/styles/schedule/bootstrap5-dark.css +78 -895
- package/styles/schedule/bootstrap5.css +78 -895
- package/styles/schedule/fabric-dark.css +78 -875
- package/styles/schedule/fabric.css +78 -877
- package/styles/schedule/fluent-dark.css +78 -875
- package/styles/schedule/fluent.css +78 -875
- package/styles/schedule/highcontrast-light.css +78 -874
- package/styles/schedule/highcontrast.css +78 -879
- package/styles/schedule/material-dark.css +78 -874
- package/styles/schedule/material.css +78 -874
- package/styles/schedule/tailwind-dark.css +78 -895
- package/styles/schedule/tailwind.css +78 -895
- package/styles/tailwind-dark.css +83 -988
- package/styles/tailwind.css +83 -988
|
@@ -3660,6 +3660,10 @@ function generate(startDate, rule, excludeDate, startDayOfWeek, maximumCount, vi
|
|
|
3660
3660
|
}
|
|
3661
3661
|
maxOccurrence = maximumCount;
|
|
3662
3662
|
setFirstDayOfWeek(DAYINDEX[startDayOfWeek]);
|
|
3663
|
+
if (ruleObject.until) {
|
|
3664
|
+
var end = resetTime(ruleObject.until);
|
|
3665
|
+
ruleObject.until = new Date(end.getFullYear(), end.getMonth(), end.getDate(), 23, 59, 59);
|
|
3666
|
+
}
|
|
3663
3667
|
switch (ruleObject.freq) {
|
|
3664
3668
|
case 'DAILY':
|
|
3665
3669
|
dailyType(modifiedDate, ruleObject.until, data, ruleObject);
|
|
@@ -3756,6 +3760,9 @@ function dailyType(startDate, endDate, data, ruleObject) {
|
|
|
3756
3760
|
}
|
|
3757
3761
|
}
|
|
3758
3762
|
tempDate.setDate(tempDate.getDate() + interval);
|
|
3763
|
+
if (tempDate.getHours() !== startDate.getHours()) {
|
|
3764
|
+
tempDate.setHours(startDate.getHours());
|
|
3765
|
+
}
|
|
3759
3766
|
}
|
|
3760
3767
|
}
|
|
3761
3768
|
/**
|
|
@@ -3800,6 +3807,9 @@ function weeklyType(startDate, endDate, data, ruleObject) {
|
|
|
3800
3807
|
break;
|
|
3801
3808
|
}
|
|
3802
3809
|
tempDate.setDate(tempDate.getDate() + 1);
|
|
3810
|
+
if (tempDate.getHours() !== startDate.getHours()) {
|
|
3811
|
+
tempDate.setHours(startDate.getHours());
|
|
3812
|
+
}
|
|
3803
3813
|
compareTempDate = new Date(tempDate.getTime());
|
|
3804
3814
|
compareTempDate = resetTime(compareTempDate);
|
|
3805
3815
|
}
|
|
@@ -4682,7 +4692,7 @@ function insertDateCollection(state, startDate, endDate, data, ruleObject, dayDa
|
|
|
4682
4692
|
function weekCount(year, startDayOfWeek, monthCollection, week, ruleObject) {
|
|
4683
4693
|
var firstDayOfWeek = startDayOfWeek || 0;
|
|
4684
4694
|
var firstOfMonth = new Date(year, ruleObject.month[0] - 1, 1);
|
|
4685
|
-
var lastOfMonth = new Date(year, ruleObject.month[0]
|
|
4695
|
+
var lastOfMonth = new Date(year, ruleObject.month[0], 0);
|
|
4686
4696
|
var numberOfDaysInMonth = lastOfMonth.getDate();
|
|
4687
4697
|
var firstWeekDay = (firstOfMonth.getDay() - firstDayOfWeek + 7) % 7;
|
|
4688
4698
|
var used = firstWeekDay + numberOfDaysInMonth;
|
|
@@ -5672,6 +5682,9 @@ var EventBase = /** @__PURE__ @class */ (function () {
|
|
|
5672
5682
|
this.parent.removeSelectedClass();
|
|
5673
5683
|
}
|
|
5674
5684
|
addClass(cells, APPOINTMENT_BORDER);
|
|
5685
|
+
if (cells.length > 0) {
|
|
5686
|
+
cells[cells.length - 1].focus();
|
|
5687
|
+
}
|
|
5675
5688
|
};
|
|
5676
5689
|
EventBase.prototype.getSelectedAppointments = function () {
|
|
5677
5690
|
return [].slice.call(this.parent.element.querySelectorAll('.' + APPOINTMENT_BORDER + ',.' + APPOINTMENT_CLASS + ':focus'));
|
|
@@ -6910,6 +6923,9 @@ var VerticalEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
6910
6923
|
var currentDate = resetTime(new Date(this.dateRender[resource][dayIndex].getTime()));
|
|
6911
6924
|
var schedule = getStartEndHours(currentDate, this.startHour, this.endHour);
|
|
6912
6925
|
var isValidEvent = this.isValidEvent(eventObj, eStart, eEnd, schedule);
|
|
6926
|
+
if ((eStart.getTime() < this.parent.minDate.getTime()) || (eEnd.getTime() > this.parent.maxDate.getTime())) {
|
|
6927
|
+
return;
|
|
6928
|
+
}
|
|
6913
6929
|
if (eStart <= eEnd && isValidEvent) {
|
|
6914
6930
|
var appHeight_1 = this.getHeight(eStart, eEnd);
|
|
6915
6931
|
if (eStart.getTime() > schedule.startHour.getTime()) {
|
|
@@ -7262,7 +7278,7 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7262
7278
|
appElement = (this.parent.currentView === 'Month') ? appElement : [appElement[0]];
|
|
7263
7279
|
for (var _i = 0, appElement_1 = appElement; _i < appElement_1.length; _i++) {
|
|
7264
7280
|
var wrap = appElement_1[_i];
|
|
7265
|
-
if (
|
|
7281
|
+
if (wrap.parentElement && wrap.parentElement.parentNode) {
|
|
7266
7282
|
remove(wrap.parentElement);
|
|
7267
7283
|
}
|
|
7268
7284
|
}
|
|
@@ -7393,12 +7409,19 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7393
7409
|
var filteredDates = this.getRenderedDates(dateRender);
|
|
7394
7410
|
this.getSlotDates(workDays || this.parent.activeViewOptions.workDays);
|
|
7395
7411
|
this.processBlockEvents(blockList, resIndex, resData);
|
|
7412
|
+
var events = [];
|
|
7396
7413
|
for (var _i = 0, eventsList_1 = eventsList; _i < eventsList_1.length; _i++) {
|
|
7397
7414
|
var event_1 = eventsList_1[_i];
|
|
7398
7415
|
if (this.parent.resourceBase && !resData) {
|
|
7399
7416
|
this.cssClass = this.parent.resourceBase.getCssClass(event_1);
|
|
7400
7417
|
}
|
|
7401
|
-
|
|
7418
|
+
events = events.concat(this.splitEvent(event_1, filteredDates || this.dateRender));
|
|
7419
|
+
}
|
|
7420
|
+
for (var level = 0; level < this.slots.length; level++) {
|
|
7421
|
+
this.renderedEvents = [];
|
|
7422
|
+
var slot = this.slots[level];
|
|
7423
|
+
var endDate = addDays(new Date(slot[slot.length - 1]), 1);
|
|
7424
|
+
var spannedEvents = this.filterEvents(new Date(slot[0]), endDate, events);
|
|
7402
7425
|
for (var _a = 0, spannedEvents_1 = spannedEvents; _a < spannedEvents_1.length; _a++) {
|
|
7403
7426
|
var event_2 = spannedEvents_1[_a];
|
|
7404
7427
|
if (this.maxHeight) {
|
|
@@ -7700,24 +7723,20 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7700
7723
|
var startTime = event[this.fields.startTime];
|
|
7701
7724
|
var endTime = event[this.fields.endTime];
|
|
7702
7725
|
var day = this.parent.getIndexOfDate(this.dateRender, resetTime(startTime));
|
|
7703
|
-
if (day < 0) {
|
|
7704
|
-
return;
|
|
7705
|
-
}
|
|
7706
|
-
if ((startTime.getTime() < this.parent.minDate.getTime()) || (endTime.getTime() > this.parent.maxDate.getTime())) {
|
|
7726
|
+
if ((day < 0) || (startTime.getTime() < this.parent.minDate.getTime()) || (endTime.getTime() > this.parent.maxDate.getTime())) {
|
|
7707
7727
|
return;
|
|
7708
7728
|
}
|
|
7709
7729
|
var overlapCount = this.getIndex(startTime);
|
|
7710
7730
|
event.Index = overlapCount;
|
|
7711
|
-
var appHeight = this.eventHeight;
|
|
7712
|
-
this.renderedEvents.push(extend({}, event, null, true));
|
|
7713
7731
|
var diffInDays = event.data.count;
|
|
7714
7732
|
if (startTime.getTime() <= endTime.getTime()) {
|
|
7715
7733
|
var appWidth = (diffInDays * this.cellWidth) - 5;
|
|
7716
7734
|
var cellTd = this.workCells[day];
|
|
7717
|
-
var appTop = (overlapCount * (
|
|
7718
|
-
var height = this.monthHeaderHeight + ((overlapCount + 1) * (
|
|
7735
|
+
var appTop = (overlapCount * (this.eventHeight + EVENT_GAP));
|
|
7736
|
+
var height = this.monthHeaderHeight + ((overlapCount + 1) * (this.eventHeight + EVENT_GAP)) + this.moreIndicatorHeight;
|
|
7719
7737
|
var enableAppRender = this.maxOrIndicator ? overlapCount < 1 ? true : false : this.cellHeight > height;
|
|
7720
7738
|
if (this.parent.rowAutoHeight || enableAppRender) {
|
|
7739
|
+
this.renderedEvents.push(extend({}, event, null, true));
|
|
7721
7740
|
var appointmentElement = void 0;
|
|
7722
7741
|
if (this.inlineValue) {
|
|
7723
7742
|
appointmentElement = this.parent.inlineModule.createInlineAppointmentElement();
|
|
@@ -7736,24 +7755,26 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7736
7755
|
}
|
|
7737
7756
|
else {
|
|
7738
7757
|
for (var i = 0; i < diffInDays; i++) {
|
|
7739
|
-
|
|
7740
|
-
|
|
7741
|
-
|
|
7742
|
-
|
|
7743
|
-
|
|
7744
|
-
|
|
7745
|
-
|
|
7746
|
-
|
|
7747
|
-
|
|
7748
|
-
|
|
7749
|
-
|
|
7750
|
-
|
|
7751
|
-
|
|
7758
|
+
if (this.workCells[day + i]) {
|
|
7759
|
+
var indicator = this.workCells[day + i].querySelector('.' + MORE_INDICATOR_CLASS);
|
|
7760
|
+
if (indicator) {
|
|
7761
|
+
var count = parseInt(indicator.getAttribute('data-count'), 10) + 1;
|
|
7762
|
+
indicator.setAttribute('data-count', count.toString());
|
|
7763
|
+
indicator.innerHTML = this.getMoreIndicatorText(count);
|
|
7764
|
+
}
|
|
7765
|
+
else {
|
|
7766
|
+
var startDate = new Date(this.dateRender[day + i].getTime());
|
|
7767
|
+
var endDate = addDays(this.dateRender[day + i], 1);
|
|
7768
|
+
var groupIndex = this.workCells[day + i].getAttribute('data-group-index');
|
|
7769
|
+
var moreIndicatorElement = this.getMoreIndicatorElement(1, startDate, endDate);
|
|
7770
|
+
if (!isNullOrUndefined(groupIndex)) {
|
|
7771
|
+
moreIndicatorElement.setAttribute('data-group-index', groupIndex);
|
|
7772
|
+
}
|
|
7773
|
+
moreIndicatorElement.style.top = (this.cellHeight - this.monthHeaderHeight - this.moreIndicatorHeight) + 'px';
|
|
7774
|
+
moreIndicatorElement.style.width = this.cellWidth - 2 + 'px';
|
|
7775
|
+
this.renderElement(this.workCells[day + i], moreIndicatorElement);
|
|
7776
|
+
EventHandler.add(moreIndicatorElement, 'click', this.moreIndicatorClick, this);
|
|
7752
7777
|
}
|
|
7753
|
-
moreIndicatorElement.style.top = appArea + 'px';
|
|
7754
|
-
moreIndicatorElement.style.width = this.cellWidth - 2 + 'px';
|
|
7755
|
-
this.renderElement(cellTd_1, moreIndicatorElement);
|
|
7756
|
-
EventHandler.add(moreIndicatorElement, 'click', this.moreIndicatorClick, this);
|
|
7757
7778
|
}
|
|
7758
7779
|
}
|
|
7759
7780
|
}
|
|
@@ -7790,9 +7811,9 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7790
7811
|
};
|
|
7791
7812
|
MonthEvent.prototype.getOverlapEvents = function (date, appointments) {
|
|
7792
7813
|
var appointmentsList = [];
|
|
7814
|
+
var dateTime = resetTime(date).getTime();
|
|
7793
7815
|
for (var _i = 0, appointments_1 = appointments; _i < appointments_1.length; _i++) {
|
|
7794
7816
|
var app = appointments_1[_i];
|
|
7795
|
-
var dateTime = resetTime(date).getTime();
|
|
7796
7817
|
if ((resetTime(app[this.fields.startTime]).getTime() <= dateTime) &&
|
|
7797
7818
|
(resetTime(app[this.fields.endTime]).getTime() >= dateTime)) {
|
|
7798
7819
|
appointmentsList.push(app);
|
|
@@ -7876,9 +7897,10 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7876
7897
|
MonthEvent.prototype.getMoreIndicatorElement = function (count, startDate, endDate) {
|
|
7877
7898
|
var moreIndicatorElement = createElement('div', {
|
|
7878
7899
|
className: MORE_INDICATOR_CLASS,
|
|
7879
|
-
innerHTML:
|
|
7900
|
+
innerHTML: this.getMoreIndicatorText(count),
|
|
7880
7901
|
attrs: {
|
|
7881
7902
|
'tabindex': '0',
|
|
7903
|
+
'data-count': count.toString(),
|
|
7882
7904
|
'data-start-date': startDate.getTime().toString(),
|
|
7883
7905
|
'data-end-date': endDate.getTime().toString(),
|
|
7884
7906
|
'role': 'list'
|
|
@@ -7886,6 +7908,9 @@ var MonthEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
7886
7908
|
});
|
|
7887
7909
|
return moreIndicatorElement;
|
|
7888
7910
|
};
|
|
7911
|
+
MonthEvent.prototype.getMoreIndicatorText = function (count) {
|
|
7912
|
+
return '+' + this.parent.globalize.formatNumber(count) + ' ' + (this.parent.isAdaptive ? '' : this.parent.localeObj.getConstant('more'));
|
|
7913
|
+
};
|
|
7889
7914
|
MonthEvent.prototype.removeHeightProperty = function (selector) {
|
|
7890
7915
|
var rows = [].slice.call(this.element.querySelectorAll('.' + selector + ' tbody tr'));
|
|
7891
7916
|
for (var _i = 0, rows_1 = rows; _i < rows_1.length; _i++) {
|
|
@@ -12008,7 +12033,8 @@ var EventWindow = /** @__PURE__ @class */ (function () {
|
|
|
12008
12033
|
return labelText;
|
|
12009
12034
|
};
|
|
12010
12035
|
EventWindow.prototype.onChange = function (args) {
|
|
12011
|
-
var
|
|
12036
|
+
var targetSelector = "." + EVENT_WINDOW_ALL_DAY_CLASS + ",." + TIME_ZONE_CLASS + ",." + EVENT_WINDOW_REPEAT_CLASS;
|
|
12037
|
+
var target = closest(args.event.target, targetSelector);
|
|
12012
12038
|
if (target.classList.contains(EVENT_WINDOW_ALL_DAY_CLASS)) {
|
|
12013
12039
|
this.onAllDayChange(args.checked);
|
|
12014
12040
|
}
|
|
@@ -12174,7 +12200,8 @@ var EventWindow = /** @__PURE__ @class */ (function () {
|
|
|
12174
12200
|
};
|
|
12175
12201
|
EventWindow.prototype.showDetails = function (eventData) {
|
|
12176
12202
|
var eventObj = extend({}, eventData, null, true);
|
|
12177
|
-
if (
|
|
12203
|
+
if ((!this.cellClickAction || this.cellClickAction && !isNullOrUndefined(this.parent.editorTemplate)) &&
|
|
12204
|
+
eventObj[this.fields.endTime].getHours() === 0 && eventObj[this.fields.endTime].getMinutes() === 0) {
|
|
12178
12205
|
this.trimAllDay(eventObj);
|
|
12179
12206
|
}
|
|
12180
12207
|
this.eventData = eventObj;
|
|
@@ -13489,7 +13516,8 @@ var Render = /** @__PURE__ @class */ (function () {
|
|
|
13489
13516
|
this.parent.virtualScrollModule.destroy();
|
|
13490
13517
|
this.parent.virtualScrollModule = null;
|
|
13491
13518
|
}
|
|
13492
|
-
if (this.parent.currentView.indexOf('Timeline') !== -1 && this.parent.currentView.indexOf('Year') === -1
|
|
13519
|
+
if (this.parent.currentView.indexOf('Timeline') !== -1 && (this.parent.currentView.indexOf('Year') === -1 ||
|
|
13520
|
+
(this.parent.currentView === 'TimelineYear' && this.parent.activeViewOptions.orientation === 'Vertical'))
|
|
13493
13521
|
&& this.parent.activeViewOptions.allowVirtualScrolling
|
|
13494
13522
|
&& this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
13495
13523
|
this.parent.virtualScrollModule = new VirtualScroll(this.parent);
|
|
@@ -16325,6 +16353,7 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
|
|
|
16325
16353
|
};
|
|
16326
16354
|
_this.trigger(navigating, navArgs, function (navigationArgs) {
|
|
16327
16355
|
if (!navigationArgs.cancel) {
|
|
16356
|
+
_this.uiStateValues.isInitial = view.indexOf('Timeline') > -1 || _this.currentView.indexOf('Timeline') > -1 ? true : _this.uiStateValues.isInitial;
|
|
16328
16357
|
_this.viewIndex = navigationArgs.viewIndex;
|
|
16329
16358
|
_this.setProperties({ currentView: view }, true);
|
|
16330
16359
|
if (_this.headerModule) {
|
|
@@ -16949,6 +16978,9 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
|
|
|
16949
16978
|
if (document.querySelectorAll(template).length) {
|
|
16950
16979
|
return compile(document.querySelector(template).innerHTML.trim());
|
|
16951
16980
|
}
|
|
16981
|
+
else {
|
|
16982
|
+
return compile(template);
|
|
16983
|
+
}
|
|
16952
16984
|
}
|
|
16953
16985
|
catch (error) {
|
|
16954
16986
|
return compile(template);
|
|
@@ -19834,7 +19866,9 @@ var YearEvent = /** @__PURE__ @class */ (function (_super) {
|
|
|
19834
19866
|
this.eventHeight = getElementHeightFromClass(eventTable, APPOINTMENT_CLASS);
|
|
19835
19867
|
var wrapperCollection = [].slice.call(this.parent.element.querySelectorAll('.' + APPOINTMENT_CONTAINER_CLASS));
|
|
19836
19868
|
var resources = this.parent.uiStateValues.isGroupAdaptive ?
|
|
19837
|
-
[this.parent.resourceBase.lastResourceLevel[this.parent.uiStateValues.groupIndex]] :
|
|
19869
|
+
[this.parent.resourceBase.lastResourceLevel[this.parent.uiStateValues.groupIndex]] :
|
|
19870
|
+
this.parent.activeViewOptions.allowVirtualScrolling ? this.parent.resourceBase.renderedResources :
|
|
19871
|
+
this.parent.resourceBase.lastResourceLevel;
|
|
19838
19872
|
var months = this.getMonths();
|
|
19839
19873
|
if (this.parent.activeViewOptions.orientation === 'Horizontal') {
|
|
19840
19874
|
for (var month = 0; month < months.length; month++) {
|
|
@@ -22685,8 +22719,9 @@ var VerticalView = /** @__PURE__ @class */ (function (_super) {
|
|
|
22685
22719
|
var msStartHour = startHour.getTime();
|
|
22686
22720
|
var msEndHour = endHour.getTime();
|
|
22687
22721
|
if (msStartHour !== msEndHour) {
|
|
22722
|
+
var duration = this.parent.activeViewOptions.timeScale.interval / this.parent.activeViewOptions.timeScale.slotCount;
|
|
22688
22723
|
length = (Math.abs(msEndHour - msStartHour) / msInterval) - ((new Date(msEndHour).getTimezoneOffset()
|
|
22689
|
-
- new Date(msStartHour).getTimezoneOffset()) /
|
|
22724
|
+
- new Date(msStartHour).getTimezoneOffset()) / duration);
|
|
22690
22725
|
}
|
|
22691
22726
|
if (!this.parent.activeViewOptions.timeScale.enable) {
|
|
22692
22727
|
length = 1;
|
|
@@ -22960,16 +22995,16 @@ var Month = /** @__PURE__ @class */ (function (_super) {
|
|
|
22960
22995
|
}
|
|
22961
22996
|
this.setColWidth(content);
|
|
22962
22997
|
if (args.scrollPosition || !args.isPreventScrollUpdate && this.parent.currentView === 'TimelineMonth') {
|
|
22998
|
+
var top_1 = this.parent.currentView === 'TimelineMonth' ? this.parent.uiStateValues.top : args.scrollPosition.top;
|
|
22999
|
+
if (leftPanel) {
|
|
23000
|
+
leftPanel.scrollTop = top_1;
|
|
23001
|
+
}
|
|
23002
|
+
content.scrollTop = top_1;
|
|
22963
23003
|
if (this.parent.uiStateValues.isInitial) {
|
|
22964
23004
|
this.scrollToSelectedDate();
|
|
22965
23005
|
this.parent.uiStateValues.isInitial = false;
|
|
22966
23006
|
}
|
|
22967
23007
|
else {
|
|
22968
|
-
var top_1 = this.parent.currentView === 'TimelineMonth' ? this.parent.uiStateValues.top : args.scrollPosition.top;
|
|
22969
|
-
if (leftPanel) {
|
|
22970
|
-
leftPanel.scrollTop = top_1;
|
|
22971
|
-
}
|
|
22972
|
-
content.scrollTop = top_1;
|
|
22973
23008
|
content.scrollLeft = this.parent.currentView === 'TimelineMonth' ? this.parent.uiStateValues.left :
|
|
22974
23009
|
args.scrollPosition.left;
|
|
22975
23010
|
}
|
|
@@ -22990,6 +23025,9 @@ var Month = /** @__PURE__ @class */ (function (_super) {
|
|
|
22990
23025
|
else {
|
|
22991
23026
|
content.scrollLeft = 0;
|
|
22992
23027
|
}
|
|
23028
|
+
if (content.scrollLeft === 0 && this.parent.uiStateValues.isInitial) {
|
|
23029
|
+
this.parent.uiStateValues.left = 0;
|
|
23030
|
+
}
|
|
22993
23031
|
};
|
|
22994
23032
|
Month.prototype.setContentHeight = function (content, leftPanelElement, height) {
|
|
22995
23033
|
content.style.height = 'auto';
|
|
@@ -23564,6 +23602,9 @@ var Year = /** @__PURE__ @class */ (function (_super) {
|
|
|
23564
23602
|
var viewTypeClass = this.parent.activeViewOptions.orientation === 'Horizontal' ? 'e-horizontal' : 'e-vertical';
|
|
23565
23603
|
addClass([this.element], [this.viewClass, viewTypeClass, className]);
|
|
23566
23604
|
this.renderPanel(className);
|
|
23605
|
+
if (this.parent.activeViewOptions.allowVirtualScrolling) {
|
|
23606
|
+
addClass([this.element], [VIRTUAL_SCROLL_CLASS]);
|
|
23607
|
+
}
|
|
23567
23608
|
var calendarTable = this.createTableLayout(OUTER_TABLE_CLASS);
|
|
23568
23609
|
this.element.appendChild(calendarTable);
|
|
23569
23610
|
this.element.querySelector('table').setAttribute('role', 'presentation');
|
|
@@ -23784,6 +23825,7 @@ var Year = /** @__PURE__ @class */ (function (_super) {
|
|
|
23784
23825
|
Year.prototype.onContentScroll = function (e) {
|
|
23785
23826
|
var target = e.target;
|
|
23786
23827
|
var headerWrapper = this.getDatesHeaderElement();
|
|
23828
|
+
this.parent.notify(virtualScroll, e);
|
|
23787
23829
|
if (headerWrapper) {
|
|
23788
23830
|
headerWrapper.firstElementChild.scrollLeft = target.scrollLeft;
|
|
23789
23831
|
}
|
|
@@ -23956,7 +23998,7 @@ var AgendaBase = /** @__PURE__ @class */ (function (_super) {
|
|
|
23956
23998
|
moduleName: 'agenda',
|
|
23957
23999
|
listClass: this.parent.activeView.viewClass,
|
|
23958
24000
|
itemClass: this.parent.activeView.viewClass,
|
|
23959
|
-
template:
|
|
24001
|
+
template: "<div class=\"" + AGENDA_NO_EVENT_CLASS + "\">" + this.parent.localeObj.getConstant('noEvents') + "</div>"
|
|
23960
24002
|
});
|
|
23961
24003
|
}
|
|
23962
24004
|
else {
|
|
@@ -25608,7 +25650,7 @@ var TimelineYear = /** @__PURE__ @class */ (function (_super) {
|
|
|
25608
25650
|
!this.parent.uiStateValues.isGroupAdaptive) {
|
|
25609
25651
|
tdCollection.push(firstTd);
|
|
25610
25652
|
firstTd.appendChild(this.parent.resourceBase.createResourceColumn());
|
|
25611
|
-
this.rowCount = this.parent.resourceBase.
|
|
25653
|
+
this.rowCount = this.parent.resourceBase.renderedResources.length;
|
|
25612
25654
|
}
|
|
25613
25655
|
else {
|
|
25614
25656
|
tdCollection.push(firstTd);
|
|
@@ -25625,6 +25667,9 @@ var TimelineYear = /** @__PURE__ @class */ (function (_super) {
|
|
|
25625
25667
|
content.appendChild(contentTable);
|
|
25626
25668
|
var eventWrapper = createElement('div', { className: EVENT_TABLE_CLASS });
|
|
25627
25669
|
content.appendChild(eventWrapper);
|
|
25670
|
+
if (this.parent.virtualScrollModule) {
|
|
25671
|
+
this.parent.virtualScrollModule.renderVirtualTrack(content);
|
|
25672
|
+
}
|
|
25628
25673
|
var contentTBody = contentTable.querySelector('tbody');
|
|
25629
25674
|
if (this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
25630
25675
|
if (this.parent.rowAutoHeight) {
|
|
@@ -25742,6 +25787,47 @@ var TimelineYear = /** @__PURE__ @class */ (function (_super) {
|
|
|
25742
25787
|
}
|
|
25743
25788
|
}
|
|
25744
25789
|
};
|
|
25790
|
+
TimelineYear.prototype.getContentRows = function () {
|
|
25791
|
+
var tRow = [];
|
|
25792
|
+
var monthCells = this.getMonths();
|
|
25793
|
+
for (var row = 0; row < this.parent.resourceBase.renderedResources.length; row++) {
|
|
25794
|
+
var tr = createElement('tr', { attrs: { 'role': 'row' } });
|
|
25795
|
+
tRow.push(tr);
|
|
25796
|
+
var resData = void 0;
|
|
25797
|
+
if (this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
25798
|
+
resData = this.parent.resourceBase.renderedResources[row];
|
|
25799
|
+
}
|
|
25800
|
+
var monthDate = new Date(this.parent.selectedDate.getFullYear(), monthCells[row], 1);
|
|
25801
|
+
var date = this.parent.calendarUtil.getMonthStartDate(new Date(monthDate.getTime()));
|
|
25802
|
+
for (var month = 0; month < this.columnCount; month++) {
|
|
25803
|
+
var classList$$1 = [];
|
|
25804
|
+
var groupIndex = resData.groupIndex;
|
|
25805
|
+
classList$$1 = classList$$1.concat(resData.className);
|
|
25806
|
+
if (classList$$1.indexOf(RESOURCE_PARENT_CLASS) > -1) {
|
|
25807
|
+
classList$$1.push(RESOURCE_GROUP_CELLS_CLASS);
|
|
25808
|
+
}
|
|
25809
|
+
else {
|
|
25810
|
+
classList$$1.push(WORKDAY_CLASS);
|
|
25811
|
+
}
|
|
25812
|
+
monthDate = new Date(this.parent.selectedDate.getFullYear(), monthCells[month], 1);
|
|
25813
|
+
date = this.parent.calendarUtil.getMonthStartDate(new Date(monthDate.getTime()));
|
|
25814
|
+
var tdELe = createElement('td', {
|
|
25815
|
+
className: WORK_CELLS_CLASS,
|
|
25816
|
+
attrs: {
|
|
25817
|
+
'role': 'gridcell', 'aria-selected': 'false',
|
|
25818
|
+
'data-date': date.getTime().toString()
|
|
25819
|
+
}
|
|
25820
|
+
});
|
|
25821
|
+
addClass([tdELe], classList$$1);
|
|
25822
|
+
tdELe.setAttribute('data-group-index', groupIndex.toString());
|
|
25823
|
+
this.renderCellTemplate({ date: date, type: 'resourceGroupCells', groupIndex: groupIndex }, tdELe);
|
|
25824
|
+
this.wireEvents(tdELe, 'cell');
|
|
25825
|
+
this.parent.trigger(renderCell, { elementType: 'resourceGroupCells', element: tdELe, date: date });
|
|
25826
|
+
tr.appendChild(tdELe);
|
|
25827
|
+
}
|
|
25828
|
+
}
|
|
25829
|
+
return tRow;
|
|
25830
|
+
};
|
|
25745
25831
|
TimelineYear.prototype.renderResourceContent = function (wrapper, monthBody, contentBody) {
|
|
25746
25832
|
var months = this.getMonths();
|
|
25747
25833
|
for (var row = 0; row < this.rowCount; row++) {
|
|
@@ -25749,8 +25835,8 @@ var TimelineYear = /** @__PURE__ @class */ (function (_super) {
|
|
|
25749
25835
|
var tr = createElement('tr', { attrs: { 'role': 'row' } });
|
|
25750
25836
|
contentBody.appendChild(tr);
|
|
25751
25837
|
var resData = void 0;
|
|
25752
|
-
if (this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
25753
|
-
resData = this.parent.resourceBase.
|
|
25838
|
+
if (this.parent.activeViewOptions.orientation === 'Vertical' && this.parent.activeViewOptions.group.resources.length > 0 && !this.parent.uiStateValues.isGroupAdaptive) {
|
|
25839
|
+
resData = this.parent.resourceBase.renderedResources[row];
|
|
25754
25840
|
}
|
|
25755
25841
|
var monthDate = new Date(this.parent.selectedDate.getFullYear(), months[row], 1);
|
|
25756
25842
|
var date = this.parent.calendarUtil.getMonthStartDate(new Date(monthDate.getTime()));
|
|
@@ -25771,8 +25857,9 @@ var TimelineYear = /** @__PURE__ @class */ (function (_super) {
|
|
|
25771
25857
|
}
|
|
25772
25858
|
for (var month = 0; month < this.columnCount; month++) {
|
|
25773
25859
|
var classList$$1 = [];
|
|
25774
|
-
var groupIndex =
|
|
25860
|
+
var groupIndex = void 0;
|
|
25775
25861
|
if (this.parent.activeViewOptions.orientation === 'Vertical') {
|
|
25862
|
+
groupIndex = resData.groupIndex;
|
|
25776
25863
|
classList$$1 = classList$$1.concat(resData.className);
|
|
25777
25864
|
if (classList$$1.indexOf(RESOURCE_PARENT_CLASS) > -1) {
|
|
25778
25865
|
classList$$1.push(RESOURCE_GROUP_CELLS_CLASS);
|
|
@@ -25876,7 +25963,7 @@ var ICalendarExport = /** @__PURE__ @class */ (function () {
|
|
|
25876
25963
|
var editedExDate = [];
|
|
25877
25964
|
if (eventObj[fields.recurrenceID]) {
|
|
25878
25965
|
var filter = _this.filterEvents(filterCollection, fields.id, eventObj[fields.recurrenceID]);
|
|
25879
|
-
uId = filter[0].UID;
|
|
25966
|
+
uId = filter.length > 0 ? filter[0].UID : uId;
|
|
25880
25967
|
}
|
|
25881
25968
|
if (!eventObj[fields.recurrenceID] && eventObj[fields.recurrenceRule] && eventObj[fields.recurrenceException]) {
|
|
25882
25969
|
var exDate = (eventObj[fields.recurrenceException]).split(',');
|