@syncfusion/ej2-gantt 19.2.62 → 19.3.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/.eslintrc.json +1 -1
  2. package/CHANGELOG.md +38 -0
  3. package/dist/ej2-gantt.umd.min.js +2 -2
  4. package/dist/ej2-gantt.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-gantt.es2015.js +124 -105
  6. package/dist/es6/ej2-gantt.es2015.js.map +1 -1
  7. package/dist/es6/ej2-gantt.es5.js +127 -107
  8. package/dist/es6/ej2-gantt.es5.js.map +1 -1
  9. package/dist/global/ej2-gantt.min.js +2 -2
  10. package/dist/global/ej2-gantt.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +18 -18
  13. package/src/gantt/actions/cell-edit.js +1 -0
  14. package/src/gantt/actions/dialog-edit.js +6 -1
  15. package/src/gantt/actions/edit.js +12 -5
  16. package/src/gantt/actions/filter.js +1 -1
  17. package/src/gantt/actions/taskbar-edit.js +3 -3
  18. package/src/gantt/base/gantt-chart.js +1 -1
  19. package/src/gantt/base/gantt-model.d.ts +3 -30
  20. package/src/gantt/base/gantt.d.ts +2 -30
  21. package/src/gantt/base/gantt.js +59 -4
  22. package/src/gantt/base/interface.d.ts +4 -22
  23. package/src/gantt/base/splitter.js +7 -2
  24. package/src/gantt/base/task-processor.js +11 -3
  25. package/src/gantt/base/tree-grid.js +8 -2
  26. package/src/gantt/base/utils.js +2 -2
  27. package/src/gantt/export/export-helper.js +12 -14
  28. package/src/gantt/models/column.d.ts +11 -6
  29. package/src/gantt/models/day-working-time-model.d.ts +0 -4
  30. package/src/gantt/models/day-working-time.d.ts +0 -4
  31. package/src/gantt/models/selection-settings-model.d.ts +0 -4
  32. package/src/gantt/models/selection-settings.d.ts +0 -4
  33. package/src/gantt/renderer/chart-rows.d.ts +0 -1
  34. package/src/gantt/renderer/chart-rows.js +3 -71
  35. package/src/gantt/renderer/nonworking-day.js +1 -1
  36. package/styles/bootstrap-dark.css +17 -0
  37. package/styles/bootstrap.css +17 -0
  38. package/styles/bootstrap4.css +22 -0
  39. package/styles/bootstrap5-dark.css +1922 -0
  40. package/styles/bootstrap5-dark.scss +1 -0
  41. package/styles/bootstrap5.css +1922 -0
  42. package/styles/bootstrap5.scss +1 -0
  43. package/styles/fabric-dark.css +17 -0
  44. package/styles/fabric.css +17 -0
  45. package/styles/gantt/_bootstrap-dark-definition.scss +3 -0
  46. package/styles/gantt/_bootstrap-definition.scss +3 -0
  47. package/styles/gantt/_bootstrap4-definition.scss +3 -0
  48. package/styles/gantt/_bootstrap5-dark-definition.scss +1 -0
  49. package/styles/gantt/_bootstrap5-definition.scss +164 -0
  50. package/styles/gantt/_fabric-dark-definition.scss +3 -0
  51. package/styles/gantt/_fabric-definition.scss +3 -0
  52. package/styles/gantt/_highcontrast-definition.scss +3 -0
  53. package/styles/gantt/_highcontrast-light-definition.scss +3 -0
  54. package/styles/gantt/_layout.scss +15 -3
  55. package/styles/gantt/_material-dark-definition.scss +3 -0
  56. package/styles/gantt/_material-definition.scss +3 -0
  57. package/styles/gantt/_tailwind-dark-definition.scss +1 -156
  58. package/styles/gantt/_tailwind-definition.scss +67 -60
  59. package/styles/gantt/_theme.scss +8 -1
  60. package/styles/gantt/bootstrap-dark.css +17 -0
  61. package/styles/gantt/bootstrap.css +17 -0
  62. package/styles/gantt/bootstrap4.css +22 -0
  63. package/styles/gantt/bootstrap5-dark.css +1922 -0
  64. package/styles/gantt/bootstrap5-dark.scss +22 -0
  65. package/styles/gantt/bootstrap5.css +1922 -0
  66. package/styles/gantt/bootstrap5.scss +22 -0
  67. package/styles/gantt/fabric-dark.css +17 -0
  68. package/styles/gantt/fabric.css +17 -0
  69. package/styles/gantt/highcontrast-light.css +17 -0
  70. package/styles/gantt/highcontrast.css +17 -0
  71. package/styles/gantt/icons/_bootstrap5-dark.scss +1 -0
  72. package/styles/gantt/icons/_bootstrap5.scss +112 -0
  73. package/styles/gantt/icons/_tailwind-dark.scss +112 -112
  74. package/styles/gantt/material-dark.css +19 -2
  75. package/styles/gantt/material.css +17 -0
  76. package/styles/gantt/tailwind-dark.css +41 -25
  77. package/styles/gantt/tailwind.css +39 -23
  78. package/styles/highcontrast-light.css +17 -0
  79. package/styles/highcontrast.css +17 -0
  80. package/styles/material-dark.css +19 -2
  81. package/styles/material.css +17 -0
  82. package/styles/tailwind-dark.css +41 -25
  83. package/styles/tailwind.css +39 -23
@@ -398,10 +398,7 @@ export interface PredecessorTooltip {
398
398
  export interface BeforeTooltipRenderEventArgs {
399
399
  /** Defines the data. */
400
400
  data?: BeforeTooltipRenderEventArgsData;
401
- /** Defines the original event arguments of tooltip control.
402
- *
403
- * @blazorType Syncfusion.EJ2.Blazor.Popups.TooltipEventArgs
404
- */
401
+ /** Defines the original event arguments of tooltip control. */
405
402
  args?: TooltipEventArgs;
406
403
  /** Defines the content. */
407
404
  content?: string | Element;
@@ -490,13 +487,7 @@ export interface ContextMenuOpenEventArgs extends GridContextMenuOpenEventArgs {
490
487
  disableItems?: string[];
491
488
  /** Defines the target element. */
492
489
  target?: Element;
493
- /**
494
- * @blazorType double?
495
- */
496
490
  top?: number;
497
- /**
498
- * @blazorType double?
499
- */
500
491
  left?: number;
501
492
  }
502
493
  export interface ContextMenuClickEventArgs extends GridContextMenuClickEventArgs {
@@ -577,17 +568,11 @@ export interface RowDataBoundEventArgs extends GridRowDataBoundEventArgs {
577
568
  row?: Element;
578
569
  }
579
570
  export interface RowDeselectEventArgs extends GridRowDeselectEventArgs {
580
- /** Defines the selected/deselected row index.
581
- *
582
- * @blazorType double[]
583
- */
571
+ /** Defines the selected/deselected row index. */
584
572
  rowIndex?: number;
585
573
  /** Defines the data collections. */
586
574
  data?: IGanttData[];
587
- /** Defines the selected/deselected row.
588
- *
589
- * @blazorType List<DOM>
590
- */
575
+ /** Defines the selected/deselected row. */
591
576
  row?: Element;
592
577
  }
593
578
  export interface ActionCompleteArgs extends ZoomEventArgs, IKeyPressedEventArgs {
@@ -668,10 +653,7 @@ export interface CellEditArgs {
668
653
  primaryKey?: string[];
669
654
  }
670
655
  export interface CellSelectingEventArgs extends GridCellSelectingEventArgs {
671
- /** Defines the previously selected cell index.
672
- *
673
- * @blazorType object
674
- */
656
+ /** Defines the previously selected cell index */
675
657
  previousRowCellIndex?: number;
676
658
  }
677
659
  export interface ScrollArgs {
@@ -86,8 +86,13 @@ var Splitter = /** @class */ (function () {
86
86
  return this.getSpliterPositionInPercentage(splitter.position);
87
87
  }
88
88
  else if (!isNullOrUndefined(splitter.columnIndex) && splitter.columnIndex >= 0) {
89
- return isDynamic ? this.getSpliterPositionInPercentage(this.getTotalColumnWidthByIndex(splitter.columnIndex).toString() + 'px') :
90
- this.getSpliterPositionInPercentage((splitter.columnIndex * 150) + 'px');
89
+ if ((splitter.columnIndex * 150) < this.parent.ganttWidth || !this.parent.element.classList.contains('e-device')) {
90
+ return isDynamic ? this.getSpliterPositionInPercentage(this.getTotalColumnWidthByIndex(splitter.columnIndex).toString() + 'px') :
91
+ this.getSpliterPositionInPercentage((splitter.columnIndex * 150) + 'px');
92
+ }
93
+ else {
94
+ return this.getSpliterPositionInPercentage((splitter.columnIndex * 130) + 'px');
95
+ }
91
96
  }
92
97
  else {
93
98
  return this.getSpliterPositionInPercentage('250px');
@@ -364,6 +364,7 @@ var TaskProcessor = /** @class */ (function (_super) {
364
364
  this.parent.setRecordValue('isAutoSchedule', autoSchedule, ganttProperties, true);
365
365
  this.parent.setRecordValue('resourceInfo', this.setResourceInfo(data), ganttProperties, true);
366
366
  this.parent.setRecordValue('isMilestone', false, ganttProperties, true);
367
+ this.parent.setRecordValue('indicators', data[taskSettings.indicators], ganttProperties, true);
367
368
  this.updateResourceName(ganttData);
368
369
  this.calculateScheduledValues(ganttData, data, isLoad);
369
370
  this.parent.setRecordValue('baselineStartDate', this.checkBaselineStartDate(baselineStartDate), ganttProperties, true);
@@ -375,7 +376,6 @@ var TaskProcessor = /** @class */ (function (_super) {
375
376
  this.parent.setRecordValue('progress', progress, ganttProperties, true);
376
377
  this.parent.setRecordValue('totalProgress', progress, ganttProperties, true);
377
378
  this.parent.setRecordValue('predecessorsName', predecessors, ganttProperties, true);
378
- this.parent.setRecordValue('indicators', data[taskSettings.indicators], ganttProperties, true);
379
379
  this.parent.setRecordValue('notes', notes, ganttProperties, true);
380
380
  this.parent.setRecordValue('cssClass', data[taskSettings.cssClass], ganttProperties, true);
381
381
  this.parent.setRecordValue('parentItem', this.getCloneParent(parentItem), ganttData);
@@ -650,6 +650,7 @@ var TaskProcessor = /** @class */ (function (_super) {
650
650
  }
651
651
  };
652
652
  TaskProcessor.prototype.addTaskData = function (ganttData, data, isLoad) {
653
+ var _this = this;
653
654
  var taskSettings = this.parent.taskFields;
654
655
  var dataManager = this.parent.dataSource;
655
656
  if (isLoad) {
@@ -658,8 +659,15 @@ var TaskProcessor = /** @class */ (function (_super) {
658
659
  if (taskSettings.parentID) {
659
660
  var id = data[taskSettings.id];
660
661
  var index = this.taskIds.indexOf(id.toString());
661
- var tempData = (index > -1) ? this.dataArray[index] : {};
662
- this.parent.setRecordValue('taskData', tempData, ganttData);
662
+ var tempData_1 = (index > -1) ? this.dataArray[index] : {};
663
+ if (!isNullOrUndefined(this.parent.taskFields.segmentId)) {
664
+ var segmentDataCollection = this.segmentCollection.
665
+ filter(function (x) { return x.key === tempData_1[_this.parent.taskFields.id]; });
666
+ if (segmentDataCollection.length > 0) {
667
+ tempData_1[this.parent.taskFields.segments] = segmentDataCollection[0].items;
668
+ }
669
+ }
670
+ this.parent.setRecordValue('taskData', tempData_1, ganttData);
663
671
  }
664
672
  else {
665
673
  this.parent.setRecordValue('taskData', data, ganttData);
@@ -294,8 +294,14 @@ var GanttTreeGrid = /** @class */ (function () {
294
294
  setValue('action', 'CellEditing', updatedArgs);
295
295
  this.parent.isCancelled = false;
296
296
  }
297
- if (getValue('requestType', args) === 'refresh' && isNullOrUndefined(getValue('type', args))) {
298
- this.parent.selectRow(this.parent.selectedRowIndex);
297
+ if (getValue('requestType', args) === 'refresh' && isNullOrUndefined(getValue('type', args)) && this.parent.addDeleteRecord) {
298
+ if (this.parent.selectedRowIndex != -1) {
299
+ this.parent.selectRow(this.parent.selectedRowIndex);
300
+ }
301
+ else {
302
+ this.parent.selectRow(0);
303
+ }
304
+ this.parent.addDeleteRecord = false;
299
305
  }
300
306
  this.parent.trigger('actionComplete', updatedArgs);
301
307
  };
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { isNullOrUndefined, extend, getValue } from '@syncfusion/ej2-base';
5
5
  import { DataManager, UrlAdaptor, WebApiAdaptor, ODataAdaptor } from '@syncfusion/ej2-data';
6
- import { WebMethodAdaptor, CacheAdaptor, RemoteSaveAdaptor, ODataV4Adaptor, JsonAdaptor } from '@syncfusion/ej2-data';
6
+ import { WebMethodAdaptor, CacheAdaptor, RemoteSaveAdaptor, ODataV4Adaptor } from '@syncfusion/ej2-data';
7
7
  /**
8
8
  * @param {Element} elem .
9
9
  * @param {string} selector .
@@ -75,7 +75,7 @@ export function isRemoteData(dataSource) {
75
75
  return (adaptor instanceof ODataAdaptor || (adaptor instanceof ODataV4Adaptor) ||
76
76
  (adaptor instanceof WebApiAdaptor) || (adaptor instanceof WebMethodAdaptor) ||
77
77
  (adaptor instanceof CacheAdaptor) || (adaptor instanceof RemoteSaveAdaptor) ||
78
- (adaptor instanceof JsonAdaptor) || adaptor instanceof UrlAdaptor);
78
+ adaptor instanceof UrlAdaptor);
79
79
  }
80
80
  return false;
81
81
  }
@@ -171,7 +171,7 @@ var ExportHelper = /** @class */ (function () {
171
171
  var taskFields = this.parent.taskFields;
172
172
  var ganttProps = data.ganttProperties;
173
173
  if (column.editType === 'datepickeredit' || column.editType === 'datetimepickeredit') {
174
- cell.value = this.parent.getFormatedDate(data[column.field], this.parent.getDateFormat());
174
+ cell.value = data[column.field];
175
175
  }
176
176
  else if (column.field === taskFields.duration) {
177
177
  cell.value = this.parent.getDurationString(ganttProps.duration, ganttProps.durationUnit);
@@ -194,20 +194,18 @@ var ExportHelper = /** @class */ (function () {
194
194
  else {
195
195
  cell.style.format.paragraphIndent = cell.row.level * 10;
196
196
  }
197
- if (this.parent.pdfQueryCellInfo != null) {
198
- var args = {
199
- data: data,
200
- value: cell.value,
201
- column: column,
202
- style: cell.style,
203
- cell: cell
204
- };
205
- args.value = this.exportValueFormatter.formatCellValue(args);
206
- if (this.parent.pdfQueryCellInfo) {
207
- this.parent.trigger('pdfQueryCellInfo', args);
208
- }
209
- cell.value = args.value;
197
+ var args = {
198
+ data: data,
199
+ value: cell.value,
200
+ column: column,
201
+ style: cell.style,
202
+ cell: cell
203
+ };
204
+ args.value = this.exportValueFormatter.formatCellValue(args);
205
+ if (this.parent.pdfQueryCellInfo) {
206
+ this.parent.trigger('pdfQueryCellInfo', args);
210
207
  }
208
+ cell.value = args.value;
211
209
  };
212
210
  /**
213
211
  * Method for create the taskbar collection for rendering
@@ -1,6 +1,7 @@
1
1
  import { NumberFormatOptions, DateFormatOptions } from '@syncfusion/ej2-base';
2
2
  import { TextAlign, ClipMode, ValueAccessor, IEditCell, IFilter } from '@syncfusion/ej2-grids';
3
3
  import { IGanttCellFormatter } from '../base/interface';
4
+ import { SortComparer } from '@syncfusion/ej2-grids';
4
5
  /**
5
6
  * Configures column collection in Gantt.
6
7
  */
@@ -60,7 +61,6 @@ export declare class Column {
60
61
  * @default Syncfusion.EJ2.Grids.ClipMode.EllipsisWithTooltip
61
62
  * @isEnumeration true
62
63
  * @aspType Syncfusion.EJ2.Grids.ClipMode
63
- * @blazorType Syncfusion.EJ2.Blazor.Grids.ClipMode
64
64
  */
65
65
  clipMode: ClipMode;
66
66
  /**
@@ -89,6 +89,10 @@ export declare class Column {
89
89
  * @default 'stringedit'
90
90
  */
91
91
  editType: string;
92
+ /**
93
+ * Defines the custom sort comparer function.
94
+ */
95
+ sortComparer: SortComparer | string;
92
96
  /**
93
97
  * Defines the field name of column which is mapped with mapping name of DataSource.
94
98
  * The `field` name must be a valid JavaScript identifier,
@@ -103,7 +107,6 @@ export declare class Column {
103
107
  *
104
108
  * @default null
105
109
  * @aspType string
106
- * @blazorType object
107
110
  */
108
111
  format: string | NumberFormatOptions | DateFormatOptions;
109
112
  /**
@@ -261,7 +264,6 @@ export interface ColumnModel {
261
264
  * @default Syncfusion.EJ2.Grids.ClipMode.EllipsisWithTooltip
262
265
  * @isEnumeration true
263
266
  * @aspType Syncfusion.EJ2.Grids.ClipMode
264
- * @blazorType Syncfusion.EJ2.Blazor.Grids.ClipMode
265
267
  */
266
268
  clipMode?: ClipMode;
267
269
  /**
@@ -306,7 +308,6 @@ export interface ColumnModel {
306
308
  *
307
309
  * @default null
308
310
  * @aspType string
309
- * @blazorType object
310
311
  */
311
312
  format?: string | NumberFormatOptions | DateFormatOptions;
312
313
  /**
@@ -337,7 +338,6 @@ export interface ColumnModel {
337
338
  * @default Syncfusion.EJ2.Grids.TextAlign.Left
338
339
  * @isEnumeration true
339
340
  * @aspType Syncfusion.EJ2.Grids.TextAlign
340
- * @blazorType Syncfusion.EJ2.Blazor.Grids.TextAlign
341
341
  */
342
342
  headerTextAlign?: TextAlign;
343
343
  /**
@@ -372,7 +372,6 @@ export interface ColumnModel {
372
372
  * @default Syncfusion.EJ2.Grids.TextAlign.Left
373
373
  * @isEnumeration true
374
374
  * @aspType Syncfusion.EJ2.Grids.TextAlign
375
- * @blazorType Syncfusion.EJ2.Blazor.Grids.TextAlign
376
375
  */
377
376
  textAlign?: TextAlign;
378
377
  /**
@@ -411,4 +410,10 @@ export interface ColumnModel {
411
410
  * @private
412
411
  */
413
412
  type?: string;
413
+ /**
414
+ * Defines the sort comparer property.
415
+ *
416
+ * @default null
417
+ */
418
+ sortComparer?: SortComparer | string;
414
419
  }
@@ -9,8 +9,6 @@ export interface DayWorkingTimeModel {
9
9
  * Defines start time of working time range.
10
10
  *
11
11
  * @default null
12
- * @blazorType double?
13
- * @blazorDefaultValue null
14
12
  */
15
13
  from?: number;
16
14
 
@@ -18,8 +16,6 @@ export interface DayWorkingTimeModel {
18
16
  * Defines end time of working time range.
19
17
  *
20
18
  * @default null
21
- * @blazorType double?
22
- * @blazorDefaultValue null
23
19
  */
24
20
  to?: number;
25
21
 
@@ -7,16 +7,12 @@ export declare class DayWorkingTime extends ChildProperty<DayWorkingTime> {
7
7
  * Defines start time of working time range.
8
8
  *
9
9
  * @default null
10
- * @blazorType double?
11
- * @blazorDefaultValue null
12
10
  */
13
11
  from: number;
14
12
  /**
15
13
  * Defines end time of working time range.
16
14
  *
17
15
  * @default null
18
- * @blazorType double?
19
- * @blazorDefaultValue null
20
16
  */
21
17
  to: number;
22
18
  }
@@ -11,7 +11,6 @@ export interface SelectionSettingsModel {
11
11
  * @default Syncfusion.EJ2.Grids.SelectionMode.Row
12
12
  * @isEnumeration true
13
13
  * @aspType Syncfusion.EJ2.Grids.SelectionMode
14
- * @blazorType Syncfusion.EJ2.Blazor.Grids.SelectionMode
15
14
  */
16
15
  mode?: SelectionMode;
17
16
 
@@ -21,7 +20,6 @@ export interface SelectionSettingsModel {
21
20
  * @default Syncfusion.EJ2.Grids.CellSelectionMode.Flow
22
21
  * @isEnumeration true
23
22
  * @aspType Syncfusion.EJ2.Grids.CellSelectionMode
24
- * @blazorType Syncfusion.EJ2.Blazor.Grids.CellSelectionMode
25
23
  */
26
24
  cellSelectionMode?: CellSelectionMode;
27
25
 
@@ -32,10 +30,8 @@ export interface SelectionSettingsModel {
32
30
  *
33
31
  * @default Syncfusion.EJ2.Grids.SelectionType.Single
34
32
  * @aspDefaultValueIgnore
35
- * @blazorDefaultValueIgnore
36
33
  * @isEnumeration true
37
34
  * @aspType Syncfusion.EJ2.Grids.SelectionType
38
- * @blazorType Syncfusion.EJ2.Blazor.Grids.SelectionType
39
35
  */
40
36
  type?: SelectionType;
41
37
 
@@ -10,7 +10,6 @@ export declare class SelectionSettings extends ChildProperty<SelectionSettings>
10
10
  * @default Syncfusion.EJ2.Grids.SelectionMode.Row
11
11
  * @isEnumeration true
12
12
  * @aspType Syncfusion.EJ2.Grids.SelectionMode
13
- * @blazorType Syncfusion.EJ2.Blazor.Grids.SelectionMode
14
13
  */
15
14
  mode: SelectionMode;
16
15
  /**
@@ -19,7 +18,6 @@ export declare class SelectionSettings extends ChildProperty<SelectionSettings>
19
18
  * @default Syncfusion.EJ2.Grids.CellSelectionMode.Flow
20
19
  * @isEnumeration true
21
20
  * @aspType Syncfusion.EJ2.Grids.CellSelectionMode
22
- * @blazorType Syncfusion.EJ2.Blazor.Grids.CellSelectionMode
23
21
  */
24
22
  cellSelectionMode: CellSelectionMode;
25
23
  /**
@@ -29,10 +27,8 @@ export declare class SelectionSettings extends ChildProperty<SelectionSettings>
29
27
  *
30
28
  * @default Syncfusion.EJ2.Grids.SelectionType.Single
31
29
  * @aspDefaultValueIgnore
32
- * @blazorDefaultValueIgnore
33
30
  * @isEnumeration true
34
31
  * @aspType Syncfusion.EJ2.Grids.SelectionType
35
- * @blazorType Syncfusion.EJ2.Blazor.Grids.SelectionType
36
32
  */
37
33
  type: SelectionType;
38
34
  /**
@@ -172,7 +172,6 @@ export declare class ChartRows extends DateProcessor {
172
172
  * @private
173
173
  */
174
174
  getTemplateID(templateName: string): string;
175
- private updateTaskbarBlazorTemplate;
176
175
  private leftLabelContainer;
177
176
  private taskbarContainer;
178
177
  private rightLabelContainer;
@@ -12,7 +12,7 @@ var __extends = (this && this.__extends) || (function () {
12
12
  };
13
13
  })();
14
14
  import { createElement, isNullOrUndefined, extend, compile, getValue, setValue } from '@syncfusion/ej2-base';
15
- import { formatUnit, updateBlazorTemplate, resetBlazorTemplate, addClass } from '@syncfusion/ej2-base';
15
+ import { formatUnit, addClass } from '@syncfusion/ej2-base';
16
16
  import { isScheduledTask } from '../base/utils';
17
17
  import { DataManager, Query } from '@syncfusion/ej2-data';
18
18
  import * as cls from '../base/css-constants';
@@ -174,7 +174,7 @@ var ChartRows = /** @class */ (function (_super) {
174
174
  labelString = this.getTaskLabel(this.parent.labelSettings.taskLabel);
175
175
  labelString = labelString === 'isCustomTemplate' ? this.parent.labelSettings.taskLabel : labelString;
176
176
  }
177
- if (labelString) {
177
+ if (labelString !== 'null') {
178
178
  taskLabel = '<span class="' + cls.taskLabel + '" style="line-height:' +
179
179
  (this.taskBarHeight - 1) + 'px; text-align:' + (this.parent.viewType === 'ResourceView' ? 'left;' : '') +
180
180
  'display:' + (this.parent.viewType === 'ResourceView' ? 'inline-flex;' : '') +
@@ -777,7 +777,7 @@ var ChartRows = /** @class */ (function (_super) {
777
777
  labelString = this.getTaskLabel(this.parent.labelSettings.taskLabel);
778
778
  labelString = labelString === 'isCustomTemplate' ? this.parent.labelSettings.taskLabel : labelString;
779
779
  }
780
- if (labelString !== '') {
780
+ if (labelString !== 'null') {
781
781
  labelDiv = this.createDivElement('<span class="' +
782
782
  cls.taskLabel + '" style="line-height:' +
783
783
  (this.taskBarHeight - 1) + 'px; display:' + (this.parent.viewType === 'ResourceView' ? 'inline-flex;' : '') + 'width:' +
@@ -866,70 +866,6 @@ var ChartRows = /** @class */ (function (_super) {
866
866
  var ganttID = this.parent.element.id;
867
867
  return ganttID + templateName;
868
868
  };
869
- ChartRows.prototype.updateTaskbarBlazorTemplate = function (isUpdate, ganttData) {
870
- var isMilestone = true;
871
- var isParent = true;
872
- var isChild = true;
873
- if (ganttData) {
874
- if (ganttData.ganttProperties.isMilestone) {
875
- isParent = isChild = false;
876
- }
877
- else if (ganttData.hasChildRecords) {
878
- isMilestone = isChild = false;
879
- }
880
- else if (!ganttData.hasChildRecords) {
881
- isParent = isMilestone = false;
882
- }
883
- }
884
- if (this.parentTaskbarTemplateFunction && isParent) {
885
- if (isUpdate) {
886
- updateBlazorTemplate(this.getTemplateID('ParentTaskbarTemplate'), 'ParentTaskbarTemplate', this.parent, false);
887
- }
888
- else {
889
- resetBlazorTemplate(this.getTemplateID('ParentTaskbarTemplate'), 'ParentTaskbarTemplate');
890
- }
891
- }
892
- if (this.childTaskbarTemplateFunction && isChild) {
893
- if (isUpdate) {
894
- updateBlazorTemplate(this.getTemplateID('TaskbarTemplate'), 'TaskbarTemplate', this.parent, false);
895
- }
896
- else {
897
- resetBlazorTemplate(this.getTemplateID('TaskbarTemplate'), 'TaskbarTemplate');
898
- }
899
- }
900
- if (this.milestoneTemplateFunction && isMilestone) {
901
- if (isUpdate) {
902
- updateBlazorTemplate(this.getTemplateID('MilestoneTemplate'), 'MilestoneTemplate', this.parent, false);
903
- }
904
- else {
905
- resetBlazorTemplate(this.getTemplateID('MilestoneTemplate'), 'MilestoneTemplate');
906
- }
907
- }
908
- if (this.leftTaskLabelTemplateFunction) {
909
- if (isUpdate) {
910
- updateBlazorTemplate(this.getTemplateID('LeftLabelTemplate'), 'LeftLabelTemplate', this.parent.labelSettings, false);
911
- }
912
- else {
913
- resetBlazorTemplate(this.getTemplateID('LeftLabelTemplate'), 'LeftLabelTemplate');
914
- }
915
- }
916
- if (this.rightTaskLabelTemplateFunction) {
917
- if (isUpdate) {
918
- updateBlazorTemplate(this.getTemplateID('RightLabelTemplate'), 'RightLabelTemplate', this.parent.labelSettings, false);
919
- }
920
- else {
921
- resetBlazorTemplate(this.getTemplateID('RightLabelTemplate'), 'RightLabelTemplate');
922
- }
923
- }
924
- if (this.taskLabelTemplateFunction && (isParent || isChild)) {
925
- if (isUpdate) {
926
- updateBlazorTemplate(this.getTemplateID('TaskLabelTemplate'), 'TaskLabelTemplate', this.parent.labelSettings, false);
927
- }
928
- else {
929
- resetBlazorTemplate(this.getTemplateID('TaskLabelTemplate'), 'TaskLabelTemplate');
930
- }
931
- }
932
- };
933
869
  ChartRows.prototype.leftLabelContainer = function () {
934
870
  var template = '<div class="' + ((this.leftTaskLabelTemplateFunction) ? cls.leftLabelTempContainer :
935
871
  cls.leftLabelContainer) + ' ' + '" tabindex="-1" style="height:' +
@@ -1221,7 +1157,6 @@ var ChartRows = /** @class */ (function (_super) {
1221
1157
  * @private
1222
1158
  */
1223
1159
  ChartRows.prototype.createTaskbarTemplate = function () {
1224
- this.updateTaskbarBlazorTemplate(false);
1225
1160
  var trs = [].slice.call(this.ganttChartTableBody.querySelectorAll('tr'));
1226
1161
  this.ganttChartTableBody.innerHTML = '';
1227
1162
  var collapsedResourceRecord = [];
@@ -1280,7 +1215,6 @@ var ChartRows = /** @class */ (function (_super) {
1280
1215
  }
1281
1216
  }
1282
1217
  this.parent.renderTemplates();
1283
- this.updateTaskbarBlazorTemplate(true);
1284
1218
  };
1285
1219
  /**
1286
1220
  * To render taskbars.
@@ -1697,7 +1631,6 @@ var ChartRows = /** @class */ (function (_super) {
1697
1631
  */
1698
1632
  ChartRows.prototype.refreshRecords = function (items, isValidateRange) {
1699
1633
  if (this.parent.isGanttChartRendered) {
1700
- this.updateTaskbarBlazorTemplate(false);
1701
1634
  this.parent.renderTemplates();
1702
1635
  if (this.parent.viewType === 'ResourceView' && this.parent.enableMultiTaskbar) {
1703
1636
  var sortedRecords = [];
@@ -1710,7 +1643,6 @@ var ChartRows = /** @class */ (function (_super) {
1710
1643
  this.refreshRow(index, isValidateRange);
1711
1644
  }
1712
1645
  this.parent.ganttChartModule.updateLastRowBottomWidth();
1713
- this.updateTaskbarBlazorTemplate(true);
1714
1646
  }
1715
1647
  };
1716
1648
  ChartRows.prototype.removeEventListener = function () {
@@ -37,7 +37,7 @@ var NonWorkingDay = /** @class */ (function () {
37
37
  }
38
38
  this.holidayContainer.innerHTML = this.getHolidaysElement().innerHTML;
39
39
  }
40
- else if (this.holidayContainer) {
40
+ else if (this.holidayContainer && this.holidayContainer.parentNode) {
41
41
  remove(this.holidayContainer);
42
42
  if (this.nonworkingContainer && this.nonworkingContainer.childNodes.length === 0) {
43
43
  remove(this.nonworkingContainer);
@@ -738,6 +738,10 @@
738
738
  user-select: none;
739
739
  }
740
740
 
741
+ .e-gantt .e-gantt-chart .e-chart-rows-container {
742
+ line-height: initial;
743
+ }
744
+
741
745
  .e-gantt .e-gantt-chart .e-taskbar-left-resizer,
742
746
  .e-gantt .e-gantt-chart .e-taskbar-right-resizer {
743
747
  display: inline-block;
@@ -1183,6 +1187,14 @@
1183
1187
  opacity: 1;
1184
1188
  }
1185
1189
 
1190
+ .e-gantt .e-cloneproperties.e-draganddrop .e-row .e-rowcell .e-treecolumn-container .e-icons.e-none::before {
1191
+ content: '';
1192
+ }
1193
+
1194
+ .e-bigger .e-gantt .e-gantt-chart .e-label {
1195
+ font-size: 14px;
1196
+ }
1197
+
1186
1198
  .e-gantt-tooltip-label {
1187
1199
  padding-bottom: 2px;
1188
1200
  padding-right: 2px;
@@ -1272,6 +1284,10 @@
1272
1284
  border-radius: 4px;
1273
1285
  }
1274
1286
 
1287
+ .e-gantt .e-gantt-splitter-height {
1288
+ height: calc(100% - 41px) !important;
1289
+ }
1290
+
1275
1291
  .e-gantt .e-cloneproperties.e-draganddrop {
1276
1292
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
1277
1293
  opacity: .95;
@@ -1381,6 +1397,7 @@
1381
1397
 
1382
1398
  .e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active {
1383
1399
  background: #484848;
1400
+ opacity: 1;
1384
1401
  }
1385
1402
 
1386
1403
  .e-gantt .e-gantt-chart .e-timeline-header-container {
@@ -888,6 +888,10 @@
888
888
  user-select: none;
889
889
  }
890
890
 
891
+ .e-gantt .e-gantt-chart .e-chart-rows-container {
892
+ line-height: initial;
893
+ }
894
+
891
895
  .e-gantt .e-gantt-chart .e-taskbar-left-resizer,
892
896
  .e-gantt .e-gantt-chart .e-taskbar-right-resizer {
893
897
  display: inline-block;
@@ -1333,6 +1337,14 @@
1333
1337
  opacity: 1;
1334
1338
  }
1335
1339
 
1340
+ .e-gantt .e-cloneproperties.e-draganddrop .e-row .e-rowcell .e-treecolumn-container .e-icons.e-none::before {
1341
+ content: '';
1342
+ }
1343
+
1344
+ .e-bigger .e-gantt .e-gantt-chart .e-label {
1345
+ font-size: 14px;
1346
+ }
1347
+
1336
1348
  .e-gantt-tooltip-label {
1337
1349
  padding-bottom: 2px;
1338
1350
  padding-right: 2px;
@@ -1422,6 +1434,10 @@
1422
1434
  border-radius: 4px;
1423
1435
  }
1424
1436
 
1437
+ .e-gantt .e-gantt-splitter-height {
1438
+ height: calc(100% - 41px) !important;
1439
+ }
1440
+
1425
1441
  .e-gantt .e-cloneproperties.e-draganddrop {
1426
1442
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
1427
1443
  opacity: .95;
@@ -1531,6 +1547,7 @@
1531
1547
 
1532
1548
  .e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active {
1533
1549
  background: #c6ddf0;
1550
+ opacity: 1;
1534
1551
  }
1535
1552
 
1536
1553
  .e-gantt .e-gantt-chart .e-timeline-header-container {
@@ -358,6 +358,11 @@
358
358
  background: transparent;
359
359
  }
360
360
 
361
+ .e-input-group.e-control-wrapper.e-ddl.e-readonly .e-input[readonly],
362
+ .e-float-input.e-control-wrapper.e-ddl.e-readonly input[readonly] {
363
+ background: #e9ecef;
364
+ }
365
+
361
366
  .e-input-group:not(.e-disabled) .e-control.e-dropdownlist ~ .e-ddl-icon:active,
362
367
  .e-input-group:not(.e-disabled) .e-control.e-dropdownlist ~ .e-ddl-icon:hover,
363
368
  .e-control.e-dropdownlist .e-input-group:not(.e-disabled) .e-ddl-icon:active,
@@ -1100,6 +1105,10 @@
1100
1105
  user-select: none;
1101
1106
  }
1102
1107
 
1108
+ .e-gantt .e-gantt-chart .e-chart-rows-container {
1109
+ line-height: initial;
1110
+ }
1111
+
1103
1112
  .e-gantt .e-gantt-chart .e-taskbar-left-resizer,
1104
1113
  .e-gantt .e-gantt-chart .e-taskbar-right-resizer {
1105
1114
  display: inline-block;
@@ -1545,6 +1554,14 @@
1545
1554
  opacity: 1;
1546
1555
  }
1547
1556
 
1557
+ .e-gantt .e-cloneproperties.e-draganddrop .e-row .e-rowcell .e-treecolumn-container .e-icons.e-none::before {
1558
+ content: '';
1559
+ }
1560
+
1561
+ .e-bigger .e-gantt .e-gantt-chart .e-label {
1562
+ font-size: 16px;
1563
+ }
1564
+
1548
1565
  .e-gantt-tooltip-label {
1549
1566
  padding-bottom: 2px;
1550
1567
  padding-right: 2px;
@@ -1634,6 +1651,10 @@
1634
1651
  border-radius: 0px;
1635
1652
  }
1636
1653
 
1654
+ .e-gantt .e-gantt-splitter-height {
1655
+ height: calc(100% - 38px) !important;
1656
+ }
1657
+
1637
1658
  .e-gantt .e-cloneproperties.e-draganddrop {
1638
1659
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
1639
1660
  opacity: .95;
@@ -1743,6 +1764,7 @@
1743
1764
 
1744
1765
  .e-gantt .e-gantt-tree-grid-pane .e-grid td.e-active {
1745
1766
  background: rgba(0, 123, 255, 0.16);
1767
+ opacity: 1;
1746
1768
  }
1747
1769
 
1748
1770
  .e-gantt .e-gantt-chart .e-timeline-header-container {