| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120 | 1×
1×
1×
1×
720×
720×
1×
825×
215×
175×
175×
175×
215×
215×
610×
1×
620×
2×
2×
1×
215×
215×
215×
215×
215×
215×
215×
276×
273×
273×
273×
273×
273×
272×
273×
273×
273×
273×
273×
273×
7×
266×
273×
273×
259×
259×
259×
259×
258×
259×
7×
252×
259×
259×
259×
259×
259×
259×
259×
273×
191×
273×
273×
273×
215×
1×
843×
219×
1×
1×
| define(["require", "exports", "@syncfusion/ej2-base", "../base/css-constants"], function (require, exports, ej2_base_1, cls) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var EventMarker = (function () {
function EventMarker(gantt) {
this.parent = gantt;
this.eventMarkersContainer = null;
}
EventMarker.prototype.renderEventMarkers = function () {
if (this.parent.eventMarkers && this.parent.eventMarkers.length > 0) {
if (!this.parent.ganttChartModule.chartBodyContent.contains(this.eventMarkersContainer)) {
this.eventMarkersContainer = ej2_base_1.createElement('div', {
className: cls.eventMarkersContainer
});
this.eventMarkersContainer.setAttribute('role', 'term');
this.parent.ganttChartModule.chartBodyContent.appendChild(this.eventMarkersContainer);
}
this.eventMarkersContainer.innerHTML = '';
this.getEventMarkersElements(this.eventMarkersContainer);
}
else {
this.removeContainer();
}
};
EventMarker.prototype.removeContainer = function () {
if (this.eventMarkersContainer) {
ej2_base_1.remove(this.eventMarkersContainer);
this.eventMarkersContainer = null;
}
};
EventMarker.prototype.getEventMarkersElements = function (container) {
var left;
var eventMarkerElement;
var spanElement;
var rightArrow;
var top;
var eventMarkerCollection = [];
for (var i = 0; i < this.parent.eventMarkers.length; i++) {
if (!ej2_base_1.isNullOrUndefined(this.parent.eventMarkers[i].day)) {
this.parent['isFromEventMarker'] = true;
left = this.parent.dataOperation.getTaskLeft(this.parent.dateValidationModule.getDateFromFormat(this.parent.eventMarkers[i].day, true), false, this.parent.defaultCalendarContext, true);
top = this.parent.eventMarkers[i]['properties'].top;
var heightException = true;
if (this.parent.ganttHeight) {
heightException = parseFloat(top) <= (this.parent.ganttHeight - 155);
}
var markerTop = (top && parseFloat(top) >= 0 && heightException && top.includes('px')) ? top : '50px';
Iif (!top && document.body.className.includes('e-bigger')) {
markerTop = parseFloat(markerTop) + 15 + "px";
}
this.parent['isFromEventMarker'] = false;
eventMarkerCollection.push({ id: i, left: left, label: this.parent.eventMarkers[i].label,
date: this.parent.dateValidationModule.getDateFromFormat(this.parent.eventMarkers[i].day, true),
top: markerTop });
var align = void 0;
if (this.parent.enableRtl) {
align = "right:" + left + "px;";
}
else {
align = "left:" + left + "px;";
}
eventMarkerElement = ej2_base_1.createElement('div', {
className: cls.eventMarkersChild, styles: align + " height:100%;",
id: 'stripline' + i
});
if (this.parent.eventMarkers[i].label) {
spanElement = ej2_base_1.createElement('div', {
className: cls.eventMarkersSpan
});
var property = this.parent.disableHtmlEncode ? 'textContent' : 'innerHTML';
spanElement[property] = this.parent.eventMarkers[i].label;
if (this.parent.enableHtmlSanitizer && typeof (spanElement[property]) === 'string') {
spanElement[property] = ej2_base_1.SanitizeHtmlHelper.sanitize(spanElement[property]);
}
if (this.parent.enableRtl) {
spanElement.style.right = '5px';
}
else {
spanElement.style.left = '5px';
}
spanElement.style.setProperty('top', markerTop, 'important');
eventMarkerElement.appendChild(spanElement);
rightArrow = ej2_base_1.createElement('div', {
className: 'e-gantt-right-arrow'
});
var rightArrowTop = parseFloat(spanElement.style.top) < 10
? parseFloat(spanElement.style.top) - 1
: parseFloat(spanElement.style.top);
Iif (document.body.className.includes('e-bigger')) {
rightArrow.style.setProperty('top', rightArrowTop + 8 + "px", 'important');
}
else {
rightArrow.style.setProperty('top', rightArrowTop + 10 + "px", 'important');
}
eventMarkerElement.appendChild(rightArrow);
}
if (this.parent.eventMarkers[i].cssClass) {
eventMarkerElement.classList.add(this.parent.eventMarkers[i].cssClass);
}
eventMarkerElement.setAttribute('tabindex', '-1');
eventMarkerElement.setAttribute('aria-label', this.parent.localeObj.getConstant('eventMarkers') + ' '
+ (typeof this.parent.eventMarkers[i].day === 'string' ?
this.parent.eventMarkers[i].day :
this.parent.getFormatedDate(this.parent.eventMarkers[i].day))
+ ' ' + this.parent.eventMarkers[i].label);
container.appendChild(eventMarkerElement);
}
}
this.parent.eventMarkerColloction = eventMarkerCollection;
};
EventMarker.prototype.updateContainerHeight = function () {
if (this.eventMarkersContainer) {
this.eventMarkersContainer.style.height = ej2_base_1.formatUnit(this.parent.getContentHeight());
}
};
return EventMarker;
}());
exports.EventMarker = EventMarker;
});
|