vxe-gantt 3.0.0-beta.0 → 3.0.0-beta.2

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 (40) hide show
  1. package/es/gantt/src/gantt-body.js +77 -36
  2. package/es/gantt/src/gantt-chart.js +87 -60
  3. package/es/gantt/src/gantt-view.js +63 -7
  4. package/es/gantt/src/gantt.js +27 -7
  5. package/es/gantt/style.css +37 -11
  6. package/es/gantt/style.min.css +1 -1
  7. package/es/style.css +1 -1
  8. package/es/style.min.css +1 -1
  9. package/es/ui/index.js +7 -2
  10. package/es/ui/src/log.js +1 -1
  11. package/es/vxe-gantt/style.css +37 -11
  12. package/es/vxe-gantt/style.min.css +1 -1
  13. package/lib/gantt/src/gantt-body.js +98 -40
  14. package/lib/gantt/src/gantt-body.min.js +1 -1
  15. package/lib/gantt/src/gantt-chart.js +95 -62
  16. package/lib/gantt/src/gantt-chart.min.js +1 -1
  17. package/lib/gantt/src/gantt-view.js +72 -6
  18. package/lib/gantt/src/gantt-view.min.js +1 -1
  19. package/lib/gantt/src/gantt.js +27 -7
  20. package/lib/gantt/src/gantt.min.js +1 -1
  21. package/lib/gantt/style/style.css +37 -11
  22. package/lib/gantt/style/style.min.css +1 -1
  23. package/lib/index.umd.js +296 -123
  24. package/lib/index.umd.min.js +1 -1
  25. package/lib/style.css +1 -1
  26. package/lib/style.min.css +1 -1
  27. package/lib/ui/index.js +13 -2
  28. package/lib/ui/index.min.js +1 -1
  29. package/lib/ui/src/log.js +1 -1
  30. package/lib/ui/src/log.min.js +1 -1
  31. package/lib/vxe-gantt/style/style.css +37 -11
  32. package/lib/vxe-gantt/style/style.min.css +1 -1
  33. package/package.json +4 -4
  34. package/packages/gantt/src/gantt-body.ts +85 -39
  35. package/packages/gantt/src/gantt-chart.ts +99 -66
  36. package/packages/gantt/src/gantt-view.ts +65 -7
  37. package/packages/gantt/src/gantt.ts +27 -7
  38. package/packages/ui/index.ts +9 -1
  39. package/styles/components/gantt-module/gantt-chart.scss +1 -0
  40. package/styles/components/gantt.scss +43 -14
package/lib/index.umd.js CHANGED
@@ -7581,11 +7581,19 @@ var es_object_to_string = __webpack_require__(6099);
7581
7581
  var web_dom_collections_for_each = __webpack_require__(3500);
7582
7582
  // EXTERNAL MODULE: external {"root":"VxeUI","commonjs":"@vxe-ui/core","commonjs2":"@vxe-ui/core","amd":"@vxe-ui/core"}
7583
7583
  var core_ = __webpack_require__(4345);
7584
+ ;// CONCATENATED MODULE: ./packages/ui/src/log.ts
7585
+
7586
+ var log = core_.VxeUI.log;
7587
+ var version = "gantt v".concat("3.0.0-beta.2");
7588
+ var warnLog = log.create('warn', version);
7589
+ var errLog = log.create('error', version);
7584
7590
  ;// CONCATENATED MODULE: ./packages/ui/index.ts
7585
7591
 
7592
+
7586
7593
  var setConfig = core_.VxeUI.setConfig,
7587
- setIcon = core_.VxeUI.setIcon;
7588
- core_.VxeUI.ganttVersion = "3.0.0-beta.0";
7594
+ setIcon = core_.VxeUI.setIcon,
7595
+ checkVersion = core_.VxeUI.checkVersion;
7596
+ core_.VxeUI.ganttVersion = "3.0.0-beta.2";
7589
7597
  setConfig({
7590
7598
  gantt: {
7591
7599
  // size: null,
@@ -7640,6 +7648,10 @@ setIcon({
7640
7648
  GANTT_VIEW_RIGHT_OPEN: iconPrefix + 'arrow-right',
7641
7649
  GANTT_VIEW_RIGHT_CLOSE: iconPrefix + 'arrow-left'
7642
7650
  });
7651
+ if (!checkVersion(core_.VxeUI.tableVersion, 3, 18)) {
7652
+ errLog('vxe.error.errorVersion', ["vxe-table@".concat(core_.VxeUI.tableVersion || '?'), 'vxe-table v3.18+']);
7653
+ }
7654
+
7643
7655
  /* harmony default export */ var ui = (core_.VxeUI);
7644
7656
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js
7645
7657
  var es_function_name = __webpack_require__(2010);
@@ -8257,12 +8269,6 @@ function triggerEvent(targetElem, type) {
8257
8269
  function isNodeElement(elem) {
8258
8270
  return elem && elem.nodeType === 1;
8259
8271
  }
8260
- ;// CONCATENATED MODULE: ./packages/ui/src/log.ts
8261
-
8262
- var log = core_.VxeUI.log;
8263
- var version = "gantt v".concat("3.0.0-beta.0");
8264
- var warnLog = log.create('warn', version);
8265
- var errLog = log.create('error', version);
8266
8272
  ;// CONCATENATED MODULE: ./packages/gantt/src/util.ts
8267
8273
  function getRefElem(refEl) {
8268
8274
  if (refEl) {
@@ -8377,6 +8383,7 @@ function getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight) {
8377
8383
 
8378
8384
 
8379
8385
 
8386
+
8380
8387
  var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8381
8388
  /* harmony default export */ var gantt_chart = (defineVxeComponent({
8382
8389
  name: 'VxeGanttViewChart',
@@ -8397,23 +8404,16 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8397
8404
  //
8398
8405
  // Render
8399
8406
  //
8400
- renderVN: function renderVN(h) {
8407
+ renderTaskBar: function renderTaskBar(h, $xeTable, row, rowid, $rowIndex) {
8401
8408
  var _vm = this;
8402
8409
  var $xeGantt = _vm.$xeGantt;
8403
- var $xeGanttView = _vm.$xeGanttView;
8404
- var $xeTable = $xeGanttView.internalData.xeTable;
8405
- var tableInternalData = $xeTable ? $xeTable : {};
8406
- var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData || {};
8407
- var cellOpts = {};
8408
- var rowOpts = {};
8409
- var defaultRowHeight = 0;
8410
- if ($xeTable) {
8411
- cellOpts = $xeTable.computeCellOpts;
8412
- rowOpts = $xeTable.computeRowOpts;
8413
- defaultRowHeight = $xeTable.computeDefaultRowHeight;
8414
- }
8415
- var reactData = $xeGanttView.reactData;
8416
- var tableData = reactData.tableData;
8410
+ var tableProps = $xeTable;
8411
+ var treeConfig = tableProps.treeConfig;
8412
+ var tableInternalData = $xeTable;
8413
+ var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData;
8414
+ var cellOpts = $xeTable.computeCellOpts;
8415
+ var rowOpts = $xeTable.computeRowOpts;
8416
+ var defaultRowHeight = $xeTable.computeDefaultRowHeight;
8417
8417
  var titleField = $xeGantt.computeTitleField;
8418
8418
  var progressField = $xeGantt.computeProgressField;
8419
8419
  var taskBarOpts = $xeGantt.computeTaskBarOpts;
@@ -8423,60 +8423,94 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8423
8423
  barStyle = taskBarOpts.barStyle;
8424
8424
  var _ref = barStyle || {},
8425
8425
  round = _ref.round;
8426
- var trVNs = [];
8427
- tableData.forEach(function (row, rIndex) {
8428
- var rowid = $xeTable ? $xeTable.getRowid(row) : '';
8429
- var rowRest = fullAllDataRowIdData[rowid] || {};
8430
- var cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
8431
- var title = getStringValue(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, titleField));
8432
- var progressValue = showProgress ? Math.min(100, Math.max(0, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, progressField)))) : 0;
8433
- if (contentMethod) {
8434
- title = getStringValue(contentMethod({
8435
- row: row,
8436
- title: title
8437
- }));
8426
+ var rowRest = fullAllDataRowIdData[rowid] || {};
8427
+ var cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
8428
+ var title = getStringValue(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, titleField));
8429
+ var progressValue = showProgress ? Math.min(100, Math.max(0, external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, progressField)))) : 0;
8430
+ if (contentMethod) {
8431
+ title = getStringValue(contentMethod({
8432
+ row: row,
8433
+ title: title
8434
+ }));
8435
+ }
8436
+ return h('div', {
8437
+ key: treeConfig ? rowid : $rowIndex,
8438
+ attrs: {
8439
+ rowid: rowid
8440
+ },
8441
+ class: ['vxe-gantt-view--chart-row', {
8442
+ 'is--round': round
8443
+ }],
8444
+ style: {
8445
+ height: "".concat(cellHeight, "px")
8438
8446
  }
8439
- trVNs.push(h('div', {
8440
- key: rIndex,
8441
- attrs: {
8442
- rowid: rowid
8443
- },
8444
- class: ['vxe-gantt-view--chart-row', {
8445
- 'is--round': round
8446
- }],
8447
- style: {
8448
- height: "".concat(cellHeight, "px")
8449
- }
8450
- }, [h('div', {
8451
- class: 'vxe-gantt-view--chart-bar',
8452
- attrs: {
8453
- rowid: rowid
8447
+ }, [h('div', {
8448
+ class: 'vxe-gantt-view--chart-bar',
8449
+ attrs: {
8450
+ rowid: rowid
8451
+ },
8452
+ on: {
8453
+ click: function click(evnt) {
8454
+ $xeGantt.handleTaskBarClickEvent(evnt, {
8455
+ row: row
8456
+ });
8454
8457
  },
8455
- on: {
8456
- click: function click(evnt) {
8457
- $xeGantt.handleTaskBarClickEvent(evnt, {
8458
- row: row
8459
- });
8460
- },
8461
- dblclick: function dblclick(evnt) {
8462
- $xeGantt.handleTaskBarDblclickEvent(evnt, {
8463
- row: row
8464
- });
8465
- }
8466
- }
8467
- }, [showProgress ? h('div', {
8468
- class: 'vxe-gantt-view--chart-progress',
8469
- style: {
8470
- width: "".concat(progressValue || 0, "%")
8458
+ dblclick: function dblclick(evnt) {
8459
+ $xeGantt.handleTaskBarDblclickEvent(evnt, {
8460
+ row: row
8461
+ });
8471
8462
  }
8472
- }) : renderEmptyElement($xeGantt), showContent ? h('div', {
8473
- class: 'vxe-gantt-view--chart-content'
8474
- }, title) : renderEmptyElement($xeGantt)])]));
8463
+ }
8464
+ }, [showProgress ? h('div', {
8465
+ class: 'vxe-gantt-view--chart-progress',
8466
+ style: {
8467
+ width: "".concat(progressValue || 0, "%")
8468
+ }
8469
+ }) : renderEmptyElement($xeGantt), showContent ? h('div', {
8470
+ class: 'vxe-gantt-view--chart-content'
8471
+ }, title) : renderEmptyElement($xeGantt)])]);
8472
+ },
8473
+ renderRows: function renderRows(h, $xeTable, tableData) {
8474
+ var _vm = this;
8475
+ var $xeGanttView = _vm.$xeGanttView;
8476
+ var reactData = $xeGanttView.reactData;
8477
+ var tableProps = $xeTable;
8478
+ var treeConfig = tableProps.treeConfig;
8479
+ var tableReactData = $xeTable;
8480
+ var treeExpandedFlag = tableReactData.treeExpandedFlag;
8481
+ var tableInternalData = $xeTable;
8482
+ var treeExpandedMaps = tableInternalData.treeExpandedMaps;
8483
+ var treeOpts = $xeTable.computeTreeOpts;
8484
+ var transform = treeOpts.transform;
8485
+ var childrenField = treeOpts.children || treeOpts.childrenField;
8486
+ var scrollYLoad = reactData.scrollYLoad;
8487
+ var trVNs = [];
8488
+ tableData.forEach(function (row, $rowIndex) {
8489
+ var rowid = $xeTable ? $xeTable.getRowid(row) : '';
8490
+ trVNs.push(_vm.renderTaskBar(h, $xeTable, row, rowid, $rowIndex));
8491
+ var isExpandTree = false;
8492
+ var rowChildren = [];
8493
+ if (treeConfig && !scrollYLoad && !transform) {
8494
+ rowChildren = row[childrenField];
8495
+ isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
8496
+ }
8497
+ // 如果是树形表格
8498
+ if (isExpandTree) {
8499
+ trVNs.push.apply(trVNs, _toConsumableArray(_vm.renderRows(h, $xeTable, rowChildren)));
8500
+ }
8475
8501
  });
8502
+ return trVNs;
8503
+ },
8504
+ renderVN: function renderVN(h) {
8505
+ var _vm = this;
8506
+ var $xeGanttView = _vm.$xeGanttView;
8507
+ var reactData = $xeGanttView.reactData;
8508
+ var $xeTable = $xeGanttView.internalData.xeTable;
8509
+ var tableData = reactData.tableData;
8476
8510
  return h('div', {
8477
8511
  ref: 'refElem',
8478
8512
  class: 'vxe-gantt-view--chart-wrapper'
8479
- }, trVNs);
8513
+ }, $xeTable ? _vm.renderRows(h, $xeTable, tableData) : []);
8480
8514
  }
8481
8515
  },
8482
8516
  mounted: function mounted() {
@@ -8508,6 +8542,7 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8508
8542
 
8509
8543
 
8510
8544
 
8545
+
8511
8546
  /* harmony default export */ var gantt_body = (defineVxeComponent({
8512
8547
  name: 'VxeGanttViewBody',
8513
8548
  inject: {
@@ -8527,52 +8562,102 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8527
8562
  //
8528
8563
  // Render
8529
8564
  //
8530
- renderRows: function renderRows(h) {
8565
+ renderColumn: function renderColumn(h, $xeTable, row, rowid, $rowIndex, column, $columnIndex) {
8531
8566
  var _vm = this;
8532
8567
  var $xeGantt = _vm.$xeGantt;
8568
+ var tableInternalData = $xeTable;
8569
+ var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData;
8570
+ var cellOpts = $xeTable.computeCellOpts;
8571
+ var rowOpts = $xeTable.computeRowOpts;
8572
+ var defaultRowHeight = $xeTable.computeDefaultRowHeight;
8573
+ var rowRest = fullAllDataRowIdData[rowid] || {};
8574
+ var cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
8575
+ return h('td', {
8576
+ key: $columnIndex,
8577
+ class: 'vxe-gantt-view--body-column',
8578
+ style: {
8579
+ height: "".concat(cellHeight, "px")
8580
+ },
8581
+ on: {
8582
+ click: function click(evnt) {
8583
+ $xeGantt.handleTaskCellClickEvent(evnt, {
8584
+ row: row,
8585
+ column: column
8586
+ });
8587
+ },
8588
+ dblclick: function dblclick(evnt) {
8589
+ $xeGantt.handleTaskCellDblclickEvent(evnt, {
8590
+ row: row,
8591
+ column: column
8592
+ });
8593
+ }
8594
+ }
8595
+ });
8596
+ },
8597
+ renderRows: function renderRows(h, $xeTable, tableData) {
8598
+ var _vm = this;
8533
8599
  var $xeGanttView = _vm.$xeGanttView;
8534
- var $xeTable = $xeGanttView.internalData.xeTable;
8535
- var tableInternalData = $xeTable ? $xeTable : {};
8536
- var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData || {};
8537
- var cellOpts = {};
8538
- var rowOpts = {};
8539
- var defaultRowHeight = 0;
8540
- if ($xeTable) {
8541
- cellOpts = $xeTable.computeCellOpts;
8542
- rowOpts = $xeTable.computeRowOpts;
8543
- defaultRowHeight = $xeTable.computeDefaultRowHeight;
8544
- }
8545
8600
  var reactData = $xeGanttView.reactData;
8546
- var tableData = reactData.tableData,
8547
- tableColumn = reactData.tableColumn;
8601
+ var tableProps = $xeTable;
8602
+ var treeConfig = tableProps.treeConfig,
8603
+ stripe = tableProps.stripe,
8604
+ highlightHoverRow = tableProps.highlightHoverRow;
8605
+ var tableReactData = $xeTable;
8606
+ var treeExpandedFlag = tableReactData.treeExpandedFlag;
8607
+ var tableInternalData = $xeTable;
8608
+ var fullAllDataRowIdData = tableInternalData.fullAllDataRowIdData,
8609
+ treeExpandedMaps = tableInternalData.treeExpandedMaps;
8610
+ var rowOpts = $xeTable.computeRowOpts;
8611
+ var treeOpts = $xeTable.computeTreeOpts;
8612
+ var transform = treeOpts.transform;
8613
+ var childrenField = treeOpts.children || treeOpts.childrenField;
8614
+ var tableColumn = reactData.tableColumn,
8615
+ scrollYLoad = reactData.scrollYLoad;
8548
8616
  var trVNs = [];
8549
- tableData.forEach(function (row, rIndex) {
8550
- var rowid = $xeTable ? $xeTable.getRowid(row) : '';
8617
+ tableData.forEach(function (row, $rowIndex) {
8618
+ var rowid = $xeTable.getRowid(row);
8551
8619
  var rowRest = fullAllDataRowIdData[rowid] || {};
8552
- var cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
8620
+ var trOns = {};
8621
+ var rowIndex = $rowIndex;
8622
+ var _rowIndex = -1;
8623
+ if (rowRest) {
8624
+ rowIndex = rowRest.index;
8625
+ _rowIndex = rowRest._index;
8626
+ }
8627
+ // 当前行事件
8628
+ if (rowOpts.isHover || highlightHoverRow) {
8629
+ trOns.mouseenter = function (evnt) {
8630
+ $xeTable.triggerHoverEvent(evnt, {
8631
+ row: row,
8632
+ rowIndex: rowIndex
8633
+ });
8634
+ };
8635
+ trOns.mouseleave = function () {
8636
+ $xeTable.clearHoverRow();
8637
+ };
8638
+ }
8553
8639
  trVNs.push(h('tr', {
8554
- key: rIndex
8555
- }, tableColumn.map(function (column, cIndex) {
8556
- return h('td', {
8557
- key: cIndex,
8558
- class: 'vxe-gantt-view--body-column',
8559
- style: {
8560
- height: "".concat(cellHeight, "px")
8561
- },
8562
- on: {
8563
- click: function click(evnt) {
8564
- $xeGantt.handleTaskCellClickEvent(evnt, {
8565
- row: row
8566
- });
8567
- },
8568
- dblclick: function dblclick(evnt) {
8569
- $xeGantt.handleTaskCellDblclickEvent(evnt, {
8570
- row: row
8571
- });
8572
- }
8573
- }
8574
- });
8640
+ key: treeConfig ? rowid : $rowIndex,
8641
+ class: ['vxe-gantt-view--body-row', {
8642
+ 'row--stripe': stripe && (_rowIndex + 1) % 2 === 0
8643
+ }],
8644
+ attrs: {
8645
+ rowid: rowid
8646
+ },
8647
+ on: trOns
8648
+ }, tableColumn.map(function (column, $columnIndex) {
8649
+ return _vm.renderColumn(h, $xeTable, row, rowid, $rowIndex, column, $columnIndex);
8575
8650
  })));
8651
+ var isExpandTree = false;
8652
+ var rowChildren = [];
8653
+ if (treeConfig && !scrollYLoad && !transform) {
8654
+ rowChildren = row[childrenField];
8655
+ isExpandTree = !!treeExpandedFlag && rowChildren && rowChildren.length > 0 && !!treeExpandedMaps[rowid];
8656
+ }
8657
+ // 如果是树形表格
8658
+ if (isExpandTree) {
8659
+ trVNs.push.apply(trVNs, _toConsumableArray(_vm.renderRows(h, $xeTable, rowChildren)));
8660
+ }
8576
8661
  });
8577
8662
  return trVNs;
8578
8663
  },
@@ -8580,7 +8665,9 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8580
8665
  var _vm = this;
8581
8666
  var $xeGanttView = _vm.$xeGanttView;
8582
8667
  var reactData = $xeGanttView.reactData;
8583
- var tableColumn = reactData.tableColumn,
8668
+ var $xeTable = $xeGanttView.internalData.xeTable;
8669
+ var tableData = reactData.tableData,
8670
+ tableColumn = reactData.tableColumn,
8584
8671
  viewCellWidth = reactData.viewCellWidth;
8585
8672
  return h('div', {
8586
8673
  ref: 'refElem',
@@ -8607,7 +8694,7 @@ var renderEmptyElement = core_.VxeUI.renderEmptyElement;
8607
8694
  width: "".concat(viewCellWidth, "px")
8608
8695
  }
8609
8696
  });
8610
- })), h('tbody', {}, _vm.renderRows(h))]), h(gantt_chart)])]);
8697
+ })), h('tbody', {}, $xeTable ? _vm.renderRows(h, $xeTable, tableData) : [])]), h(gantt_chart)])]);
8611
8698
  }
8612
8699
  },
8613
8700
  mounted: function mounted() {
@@ -8687,6 +8774,8 @@ function handleParseColumn($xeGanttView) {
8687
8774
  var $xeGantt = $xeGanttView.$xeGantt;
8688
8775
  var reactData = $xeGanttView.reactData;
8689
8776
  var internalData = $xeGanttView.internalData;
8777
+ var ganttProps = $xeGantt;
8778
+ var treeConfig = ganttProps.treeConfig;
8690
8779
  var minViewDate = reactData.minViewDate,
8691
8780
  maxViewDate = reactData.maxViewDate;
8692
8781
  var taskViewOpts = $xeGantt.computeTaskViewOpts;
@@ -8740,9 +8829,13 @@ function handleParseColumn($xeGanttView) {
8740
8829
  var startField = $xeGantt.computeStartField;
8741
8830
  var endField = $xeGantt.computeEndField;
8742
8831
  var tableInternalData = $xeTable;
8743
- var afterFullData = tableInternalData.afterFullData;
8832
+ var afterFullData = tableInternalData.afterFullData,
8833
+ afterTreeFullData = tableInternalData.afterTreeFullData;
8834
+ var treeOpts = $xeTable.computeTreeOpts;
8835
+ var transform = treeOpts.transform;
8836
+ var childrenField = treeOpts.children || treeOpts.childrenField;
8744
8837
  var ctMaps = {};
8745
- afterFullData.forEach(function (row) {
8838
+ var handleParseRender = function handleParseRender(row) {
8746
8839
  var rowid = $xeTable.getRowid(row);
8747
8840
  var startValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, startField);
8748
8841
  var endValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, endField);
@@ -8758,7 +8851,14 @@ function handleParseColumn($xeGanttView) {
8758
8851
  oWidthSize: oWidthSize
8759
8852
  };
8760
8853
  }
8761
- });
8854
+ };
8855
+ if (treeConfig) {
8856
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData, handleParseRender, {
8857
+ children: transform ? treeOpts.mapChildrenField : childrenField
8858
+ });
8859
+ } else {
8860
+ afterFullData.forEach(handleParseRender);
8861
+ }
8762
8862
  internalData.chartMaps = ctMaps;
8763
8863
  }
8764
8864
  }
@@ -8772,6 +8872,8 @@ function handleUpdateData($xeGanttView) {
8772
8872
  var $xeGantt = $xeGanttView.$xeGantt;
8773
8873
  var reactData = $xeGanttView.reactData;
8774
8874
  var internalData = $xeGanttView.internalData;
8875
+ var ganttProps = $xeGantt;
8876
+ var treeConfig = ganttProps.treeConfig;
8775
8877
  var $xeTable = internalData.xeTable;
8776
8878
  var sdMaps = {};
8777
8879
  var edMaps = {};
@@ -8781,8 +8883,12 @@ function handleUpdateData($xeGanttView) {
8781
8883
  var startField = $xeGantt.computeStartField;
8782
8884
  var endField = $xeGantt.computeEndField;
8783
8885
  var tableInternalData = $xeTable;
8784
- var afterFullData = tableInternalData.afterFullData;
8785
- afterFullData.forEach(function (row) {
8886
+ var afterFullData = tableInternalData.afterFullData,
8887
+ afterTreeFullData = tableInternalData.afterTreeFullData;
8888
+ var treeOpts = $xeTable.computeTreeOpts;
8889
+ var transform = treeOpts.transform;
8890
+ var childrenField = treeOpts.children || treeOpts.childrenField;
8891
+ var handleMinMaxData = function handleMinMaxData(row) {
8786
8892
  var startValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, startField);
8787
8893
  var endValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, endField);
8788
8894
  if (startValue && endValue) {
@@ -8795,7 +8901,14 @@ function handleUpdateData($xeGanttView) {
8795
8901
  maxDate = endDate;
8796
8902
  }
8797
8903
  }
8798
- });
8904
+ };
8905
+ if (treeConfig) {
8906
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eachTree(afterTreeFullData, handleMinMaxData, {
8907
+ children: transform ? treeOpts.mapChildrenField : childrenField
8908
+ });
8909
+ } else {
8910
+ afterFullData.forEach(handleMinMaxData);
8911
+ }
8799
8912
  }
8800
8913
  reactData.minViewDate = minDate;
8801
8914
  reactData.maxViewDate = maxDate;
@@ -8954,6 +9067,7 @@ function updateStyle($xeGanttView) {
8954
9067
  function _handleLazyRecalculate($xeGanttView) {
8955
9068
  calcScrollbar($xeGanttView);
8956
9069
  updateStyle($xeGanttView);
9070
+ updateChart($xeGanttView);
8957
9071
  return $xeGanttView.$nextTick();
8958
9072
  }
8959
9073
  function _updateScrollXSpace($xeGanttView) {
@@ -9199,6 +9313,45 @@ function syncTableScrollTop($xeGanttView, scrollTop) {
9199
9313
  var $xeGanttView = this;
9200
9314
  return _handleLazyRecalculate($xeGanttView);
9201
9315
  },
9316
+ handleUpdateCurrentRow: function handleUpdateCurrentRow(row) {
9317
+ var $xeGanttView = this;
9318
+ var internalData = $xeGanttView.internalData;
9319
+ var $xeTable = internalData.xeTable;
9320
+ var el = $xeGanttView.$refs.refElem;
9321
+ if ($xeTable && el) {
9322
+ if (row) {
9323
+ var tableProps = $xeTable;
9324
+ var highlightCurrentRow = tableProps.highlightCurrentRow;
9325
+ var rowOpts = $xeTable.computeRowOpts;
9326
+ if (rowOpts.isCurrent || highlightCurrentRow) {
9327
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll("[rowid=\"".concat($xeTable.getRowid(row), "\"]")), function (elem) {
9328
+ return addClass(elem, 'row--current');
9329
+ });
9330
+ }
9331
+ } else {
9332
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.row--current'), function (elem) {
9333
+ return removeClass(elem, 'row--current');
9334
+ });
9335
+ }
9336
+ }
9337
+ },
9338
+ handleUpdateHoverRow: function handleUpdateHoverRow(row) {
9339
+ var $xeGanttView = this;
9340
+ var internalData = $xeGanttView.internalData;
9341
+ var $xeTable = internalData.xeTable;
9342
+ var el = $xeGanttView.$refs.refElem;
9343
+ if ($xeTable && el) {
9344
+ if (row) {
9345
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll(".vxe-body--row[rowid=\"".concat($xeTable.getRowid(row), "\"]")), function (elem) {
9346
+ return addClass(elem, 'row--hover');
9347
+ });
9348
+ } else {
9349
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(el.querySelectorAll('.vxe-body--row.row--hover'), function (elem) {
9350
+ return removeClass(elem, 'row--hover');
9351
+ });
9352
+ }
9353
+ }
9354
+ },
9202
9355
  triggerHeaderScrollEvent: function triggerHeaderScrollEvent(evnt) {
9203
9356
  var $xeGanttView = this;
9204
9357
  var internalData = $xeGanttView.internalData;
@@ -9732,7 +9885,12 @@ function gantt_createInternalData() {
9732
9885
  var proxyOpts = $xeGantt.computeProxyOpts;
9733
9886
  var pagerOpts = $xeGantt.computePagerOpts;
9734
9887
  var isLoading = $xeGantt.computeIsLoading;
9735
- var tProps = Object.assign({}, tableExtendProps);
9888
+ var tProps = Object.assign({}, tableExtendProps, {
9889
+ showOverflow: true,
9890
+ showHeaderOverflow: true,
9891
+ showFooterOverflow: true,
9892
+ showFooter: false
9893
+ });
9736
9894
  if (isZMax) {
9737
9895
  if (tableExtendProps.maxHeight) {
9738
9896
  tProps.maxHeight = '100%';
@@ -11005,6 +11163,21 @@ function gantt_createInternalData() {
11005
11163
  },
11006
11164
  handleTaskCellClickEvent: function handleTaskCellClickEvent(evnt, params) {
11007
11165
  var $xeGantt = this;
11166
+ var $xeTable = $xeGantt.$refs.refTable;
11167
+ if ($xeTable) {
11168
+ var _tableProps = $xeTable;
11169
+ var highlightCurrentRow = _tableProps.highlightCurrentRow;
11170
+ var rowOpts = $xeTable.computeRowOpts;
11171
+ var row = params.row;
11172
+ // 如果是当前行
11173
+ if (rowOpts.isCurrent || highlightCurrentRow) {
11174
+ $xeTable.triggerCurrentRowEvent(evnt, Object.assign({
11175
+ $table: $xeTable,
11176
+ rowIndex: $xeTable.getRowIndex(row),
11177
+ $rowIndex: $xeTable.getVMRowIndex(row)
11178
+ }, params));
11179
+ }
11180
+ }
11008
11181
  $xeGantt.dispatchEvent('task-cell-click', params, evnt);
11009
11182
  },
11010
11183
  handleTaskCellDblclickEvent: function handleTaskCellDblclickEvent(evnt, params) {
@@ -11197,9 +11370,8 @@ function gantt_createInternalData() {
11197
11370
  var slots = $xeGantt.$scopedSlots;
11198
11371
  var toolbarConfig = props.toolbarConfig;
11199
11372
  var toolbarSlot = slots.toolbar;
11200
- var hasToolbar = !!(toolbarSlot || isEnableConf(toolbarConfig) || toolbar);
11201
11373
  var toolbarOpts = $xeGantt.computeToolbarOpts;
11202
- if (hasToolbar) {
11374
+ if (toolbarConfig && isEnableConf(toolbarOpts) || toolbarSlot) {
11203
11375
  return h('div', {
11204
11376
  key: 'toolbar',
11205
11377
  ref: 'refToolbarWrapper',
@@ -11339,17 +11511,18 @@ function gantt_createInternalData() {
11339
11511
  if (!enabled) {
11340
11512
  return gantt_renderEmptyElement($xeGantt);
11341
11513
  }
11514
+ var isResize = resize && showLeftView && showRightView;
11342
11515
  var ons = {};
11343
- if (resize) {
11516
+ if (isResize) {
11344
11517
  ons.mousedown = $xeGantt.dragSplitEvent;
11345
11518
  }
11346
11519
  return h('div', {
11347
11520
  class: ['vxe-gantt--view-split-bar', {
11348
- 'is--resize': resize,
11349
- on: ons
11521
+ 'is--resize': isResize
11350
11522
  }]
11351
11523
  }, [h('div', {
11352
- class: 'vxe-gantt--view-split-bar-handle'
11524
+ class: 'vxe-gantt--view-split-bar-handle',
11525
+ on: ons
11353
11526
  }), showCollapseTableButton || showCollapseTaskButton ? h('div', {
11354
11527
  class: 'vxe-gantt--view-split-bar-btn-wrapper'
11355
11528
  }, [showCollapseTableButton && showRightView ? h('div', {