@syncfusion/ej2-gantt 20.2.46 → 20.2.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { Browser, ChildProperty, Collection, Complex, Component, Event, EventHandler, Internationalization, KeyboardEvents, L10n, NotifyPropertyChanges, Property, addClass, append, classList, closest, compile, createElement, deleteObject, extend, formatUnit, getValue, isNullOrUndefined, isObject, isObjectArray, isUndefined, merge, remove, removeClass, setValue } from '@syncfusion/ej2-base';
2
2
  import { Dialog, Tooltip, createSpinner, hideSpinner, showSpinner } from '@syncfusion/ej2-popups';
3
- import { Edit, ForeignKey, Grid, Page, Predicate, Toolbar, ValueFormatter, click, filterAfterOpen, getActualProperties, getCustomDateFormat, getFilterMenuPostion, getForeignData, getObject, getUid, parentsUntil, setCssInGridPopUp } from '@syncfusion/ej2-grids';
3
+ import { Edit, ForeignKey, Grid, Page, Predicate, Toolbar, ValueFormatter, click, filterAfterOpen, getActualProperties, getCustomDateFormat, getForeignData, getObject, getUid, parentsUntil, setCssInGridPopUp } from '@syncfusion/ej2-grids';
4
4
  import { CacheAdaptor, DataManager, DataUtil, Deferred, ODataAdaptor, ODataV4Adaptor, Query, RemoteSaveAdaptor, UrlAdaptor, WebApiAdaptor, WebMethodAdaptor } from '@syncfusion/ej2-data';
5
5
  import { ColumnMenu, ContextMenu, Edit as Edit$1, ExcelExport, Filter, Reorder, Resize, RowDD, Selection, Sort, TreeGrid, VirtualScroll } from '@syncfusion/ej2-treegrid';
6
6
  import { Splitter } from '@syncfusion/ej2-layouts';
@@ -653,6 +653,9 @@ var DateProcessor = /** @__PURE__ @class */ (function () {
653
653
  */
654
654
  DateProcessor.prototype.getProjectStartDate = function (ganttProp, isLoad) {
655
655
  if (!isNullOrUndefined(this.parent.cloneProjectStartDate)) {
656
+ if (typeof this.parent.cloneProjectStartDate === 'string') {
657
+ this.parent.cloneProjectStartDate = this.getDateFromFormat(this.parent.cloneProjectStartDate);
658
+ }
656
659
  var cloneStartDate = this.checkStartDate(this.parent.cloneProjectStartDate);
657
660
  this.parent.cloneProjectStartDate = cloneStartDate;
658
661
  return new Date(cloneStartDate.getTime());
@@ -20414,7 +20417,20 @@ var DialogEdit = /** @__PURE__ @class */ (function () {
20414
20417
  var rowResource = ganttData.ganttProperties.resourceInfo;
20415
20418
  var inputModel = this.beforeOpenArgs[itemName];
20416
20419
  var resourceTreeGridId = ganttObj.element.id + '' + itemName + 'TabContainer';
20417
- var resourceData = extend([], [], ganttObj.resources, true);
20420
+ var resourceData = [];
20421
+ if (this.parent.viewType === 'ResourceView') {
20422
+ for (var i = 0; i < ganttObj.currentViewData.length; i++) {
20423
+ for (var j = 0; j < ganttObj.resources.length; j++) {
20424
+ if (ganttObj.currentViewData[i][ganttObj.taskFields.id] === ganttObj.resources[j][resourceSettings.id] &&
20425
+ (ganttObj.currentViewData[i].hasChildRecords || isNullOrUndefined(ganttObj.currentViewData[i].parentItem))) {
20426
+ resourceData.push(ganttObj.resources[j]);
20427
+ }
20428
+ }
20429
+ }
20430
+ }
20431
+ else {
20432
+ resourceData = extend([], [], ganttObj.resources, true);
20433
+ }
20418
20434
  this.parent.dataOperation.updateResourceUnit(resourceData);
20419
20435
  if (!isNullOrUndefined(rowResource)) {
20420
20436
  var count = void 0;
@@ -22288,7 +22304,7 @@ var Edit$2 = /** @__PURE__ @class */ (function () {
22288
22304
  this.parent.dataOperation.updateMappingData(ganttData, 'duration');
22289
22305
  this.parent.dataOperation.updateMappingData(ganttData, 'endDate');
22290
22306
  }
22291
- else if (key === 'taskType') {
22307
+ else if (key === tasks.type) {
22292
22308
  ganttObj.setRecordValue('taskType', data[key], ganttData.ganttProperties, true);
22293
22309
  //this.parent.dataOperation.updateMappingData(ganttData, 'taskType');
22294
22310
  }
@@ -23380,14 +23396,22 @@ var Edit$2 = /** @__PURE__ @class */ (function () {
23380
23396
  */
23381
23397
  Edit$$1.prototype.deleteResourceRecords = function (selectedRecords) {
23382
23398
  var deleteRecords = [];
23383
- for (var i = 0; i < selectedRecords.length; i++) {
23399
+ var _loop_1 = function (i) {
23384
23400
  if (selectedRecords[i].parentItem) {
23385
23401
  var data = selectedRecords[i];
23386
- var ids = data.ganttProperties.sharedTaskUniqueIds;
23387
- for (var j = 0; j < ids.length; j++) {
23388
- deleteRecords.push(this.parent.flatData[this.parent.ids.indexOf(ids[j].toString())]);
23389
- }
23402
+ deleteRecords.push(this_1.parent.flatData[this_1.parent.ids.indexOf(data.ganttProperties.rowUniqueID)]);
23390
23403
  }
23404
+ else {
23405
+ var resourceParent = this_1.parent.flatData.filter(function (data) {
23406
+ return (parseInt(data.ganttProperties.taskId) == parseInt(selectedRecords[i].ganttProperties.taskId) &&
23407
+ data.hasChildRecords);
23408
+ })[0];
23409
+ deleteRecords.push(resourceParent);
23410
+ }
23411
+ };
23412
+ var this_1 = this;
23413
+ for (var i = 0; i < selectedRecords.length; i++) {
23414
+ _loop_1(i);
23391
23415
  }
23392
23416
  this.deleteRow(deleteRecords);
23393
23417
  };
@@ -23834,6 +23858,14 @@ var Edit$2 = /** @__PURE__ @class */ (function () {
23834
23858
  eventArgs.modifiedTaskData = getTaskData(args.updatedRecordCollection, null, null, this.parent);
23835
23859
  setValue('action', args.action, eventArgs);
23836
23860
  this.parent.isOnDelete = false;
23861
+ if (this.parent.viewType === 'ResourceView') {
23862
+ var updateUnAssignedResources = eventArgs.data.filter(function (data) {
23863
+ return !data.hasChildRecords;
23864
+ });
23865
+ for (var i = 0; i < updateUnAssignedResources.length; i++) {
23866
+ this.checkWithUnassignedTask(updateUnAssignedResources[i]);
23867
+ }
23868
+ }
23837
23869
  this.parent.trigger('actionComplete', eventArgs);
23838
23870
  this.deletedTaskDetails = [];
23839
23871
  this.parent.initiateEditAction(false);
@@ -24251,27 +24283,27 @@ var Edit$2 = /** @__PURE__ @class */ (function () {
24251
24283
  }
24252
24284
  }
24253
24285
  }
24254
- var _loop_1 = function (i) {
24255
- var originalData = this_1.parent.modifiedRecords[i];
24256
- var treeIndex = this_1.parent.allowRowDragAndDrop ? 1 : 0;
24257
- var uniqueTaskID = this_1.parent.taskFields.id;
24258
- originalIndex = this_1.parent.currentViewData.findIndex(function (data) {
24286
+ var _loop_2 = function (i) {
24287
+ var originalData = this_2.parent.modifiedRecords[i];
24288
+ var treeIndex = this_2.parent.allowRowDragAndDrop ? 1 : 0;
24289
+ var uniqueTaskID = this_2.parent.taskFields.id;
24290
+ originalIndex = this_2.parent.currentViewData.findIndex(function (data) {
24259
24291
  return (data[uniqueTaskID] == originalData[uniqueTaskID]);
24260
24292
  });
24261
- if (this_1.parent.treeGrid.getRows()[originalIndex]) {
24262
- this_1.parent.treeGrid.renderModule.cellRender({
24263
- data: originalData, cell: this_1.parent.treeGrid.getRows()[originalIndex].cells[this_1.parent.treeColumnIndex + treeIndex],
24264
- column: this_1.parent.treeGrid.grid.getColumns()[this_1.parent.treeColumnIndex],
24293
+ if (this_2.parent.treeGrid.getRows()[originalIndex]) {
24294
+ this_2.parent.treeGrid.renderModule.cellRender({
24295
+ data: originalData, cell: this_2.parent.treeGrid.getRows()[originalIndex].cells[this_2.parent.treeColumnIndex + treeIndex],
24296
+ column: this_2.parent.treeGrid.grid.getColumns()[this_2.parent.treeColumnIndex],
24265
24297
  requestType: 'rowDragAndDrop'
24266
24298
  });
24267
- this_1.parent.treeGrid.renderModule.RowModifier({
24268
- data: originalData, row: this_1.parent.treeGrid.getRows()[originalIndex], rowHeight: this_1.parent.rowHeight
24299
+ this_2.parent.treeGrid.renderModule.RowModifier({
24300
+ data: originalData, row: this_2.parent.treeGrid.getRows()[originalIndex], rowHeight: this_2.parent.rowHeight
24269
24301
  });
24270
24302
  }
24271
24303
  };
24272
- var this_1 = this, originalIndex;
24304
+ var this_2 = this, originalIndex;
24273
24305
  for (var i = 0; i < this.parent.modifiedRecords.length; i++) {
24274
- _loop_1(i);
24306
+ _loop_2(i);
24275
24307
  }
24276
24308
  };
24277
24309
  /**
@@ -25628,45 +25660,9 @@ var Filter$1 = /** @__PURE__ @class */ (function () {
25628
25660
  }
25629
25661
  }
25630
25662
  };
25631
- Filter$$1.prototype.setPosition = function (li, ul) {
25632
- var gridPos = this.parent.element.getBoundingClientRect();
25633
- var liPos = li.getBoundingClientRect();
25634
- var left = liPos.right + window.scrollX;
25635
- var top = liPos.top + window.scrollY;
25636
- if (gridPos.right < (left + ul.offsetWidth)) {
25637
- if ((liPos.left - ul.offsetWidth) > gridPos.left) {
25638
- left = (liPos.left - ul.offsetWidth);
25639
- }
25640
- else {
25641
- left -= (left + ul.offsetWidth) - gridPos.right;
25642
- }
25643
- }
25644
- ul.style.top = top + 'px';
25645
- ul.style.left = left + 'px';
25646
- };
25647
25663
  Filter$$1.prototype.updateFilterMenuPosition = function (element, args) {
25648
25664
  addClass([element], 'e-gantt');
25649
- document.querySelector('#' + this.parent.controlId).appendChild(element);
25650
- var targetElement;
25651
- if (this.parent.showColumnMenu) {
25652
- targetElement = document.querySelector('#treeGrid' + this.parent.controlId + '_gridcontrol_colmenu_Filter');
25653
- element.style.zIndex = targetElement.parentElement.style.zIndex;
25654
- if (this.parent.treeGrid.filterSettings.type === 'Menu') {
25655
- this.setPosition(targetElement, getValue('filterModel.dlgObj.element', args));
25656
- }
25657
- else {
25658
- this.setPosition(targetElement, getValue('filterModel.dialogObj.element', args));
25659
- }
25660
- }
25661
- else {
25662
- targetElement = this.parent.treeGrid.grid.getColumnHeaderByField(args.columnName).querySelector('.e-filtermenudiv');
25663
- if (this.parent.treeGrid.filterSettings.type === 'Menu') {
25664
- getFilterMenuPostion(targetElement, getValue('filterModel.dlgObj', args));
25665
- }
25666
- else {
25667
- getFilterMenuPostion(targetElement, getValue('filterModel.dialogObj', args));
25668
- }
25669
- }
25665
+ document.querySelector('#' + this.parent.treeGrid.grid.element.id).appendChild(element);
25670
25666
  if (this.parent.treeGrid.filterSettings.type === 'Menu') {
25671
25667
  element.querySelector('.e-valid-input').focus();
25672
25668
  }
@@ -26702,7 +26698,7 @@ var Toolbar$3 = /** @__PURE__ @class */ (function () {
26702
26698
  var isDeleteSelected = gObj.selectionModule ? gObj.selectionModule.selectedRowIndexes.length > 0 ||
26703
26699
  gObj.selectionModule.getSelectedRowCellIndexes().length > 0 ? true : false : false;
26704
26700
  // eslint-disable-next-line
26705
- edit.allowDeleting && isResouceParent && hasData && isDeleteSelected && !touchEdit ?
26701
+ edit.allowDeleting && hasData && isDeleteSelected && !touchEdit ?
26706
26702
  enableItems.push(gID + '_delete') : disableItems.push(gID + '_delete');
26707
26703
  if (gObj.editSettings.mode === 'Auto' && !isNullOrUndefined(gObj.editModule.cellEditModule)
26708
26704
  && gObj.editModule.cellEditModule.isCellEdit) {