vxe-gantt 3.0.0-beta.3 → 3.0.0-beta.4

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.
@@ -36,7 +36,7 @@ function createInternalData() {
36
36
  };
37
37
  }
38
38
  const maxYHeight = 5e6;
39
- const maxXWidth = 5e6;
39
+ // const maxXWidth = 5e6
40
40
  function handleParseColumn($xeGanttView) {
41
41
  const $xeGantt = $xeGanttView.$xeGantt;
42
42
  const reactData = $xeGanttView.reactData;
@@ -328,54 +328,53 @@ function handleLazyRecalculate($xeGanttView) {
328
328
  updateChart($xeGanttView);
329
329
  return $xeGanttView.$nextTick();
330
330
  }
331
- function updateScrollXSpace($xeGanttView) {
332
- const reactData = $xeGanttView.reactData;
333
- const internalData = $xeGanttView.internalData;
334
- const { scrollXLoad, scrollXWidth } = reactData;
335
- const { elemStore } = internalData;
336
- const bodyScrollElem = getRefElem(elemStore['main-body-scroll']);
337
- const bodyTableElem = getRefElem(elemStore['main-body-table']);
338
- let xSpaceLeft = 0;
339
- let clientWidth = 0;
340
- if (bodyScrollElem) {
341
- clientWidth = bodyScrollElem.clientWidth;
342
- }
343
- // 虚拟渲染
344
- let isScrollXBig = false;
345
- let ySpaceWidth = scrollXWidth;
346
- if (scrollXWidth > maxXWidth) {
347
- // 触右
348
- if (bodyScrollElem && bodyTableElem && bodyScrollElem.scrollLeft + clientWidth >= maxXWidth) {
349
- xSpaceLeft = maxXWidth - bodyTableElem.clientWidth;
350
- }
351
- else {
352
- xSpaceLeft = (maxXWidth - clientWidth) * (xSpaceLeft / (scrollXWidth - clientWidth));
353
- }
354
- ySpaceWidth = maxXWidth;
355
- isScrollXBig = true;
356
- }
357
- if (bodyTableElem) {
358
- bodyTableElem.style.transform = `translate(${xSpaceLeft}px, ${reactData.scrollYTop || 0}px)`;
359
- }
360
- const layoutList = ['header', 'body', 'footer'];
361
- layoutList.forEach(layout => {
362
- const xSpaceElem = getRefElem(elemStore[`main-${layout}-xSpace`]);
363
- if (xSpaceElem) {
364
- xSpaceElem.style.width = scrollXLoad ? `${ySpaceWidth}px` : '';
365
- }
366
- });
367
- reactData.scrollXLeft = xSpaceLeft;
368
- reactData.scrollXWidth = ySpaceWidth;
369
- reactData.isScrollXBig = isScrollXBig;
370
- const scrollXSpaceEl = $xeGanttView.$refs.refScrollXSpaceElem;
371
- if (scrollXSpaceEl) {
372
- scrollXSpaceEl.style.width = `${ySpaceWidth}px`;
373
- }
374
- calcScrollbar($xeGanttView);
375
- return $xeGanttView.$nextTick().then(() => {
376
- updateStyle($xeGanttView);
377
- });
378
- }
331
+ // function updateScrollXSpace ($xeGanttView: VxeGanttViewConstructor & VxeGanttViewPrivateMethods) {
332
+ // const reactData = $xeGanttView.reactData
333
+ // const internalData = $xeGanttView.internalData
334
+ // const { scrollXLoad, scrollXWidth } = reactData
335
+ // const { elemStore } = internalData
336
+ // const bodyScrollElem = getRefElem(elemStore['main-body-scroll'])
337
+ // const bodyTableElem = getRefElem(elemStore['main-body-table'])
338
+ // let xSpaceLeft = 0
339
+ // let clientWidth = 0
340
+ // if (bodyScrollElem) {
341
+ // clientWidth = bodyScrollElem.clientWidth
342
+ // }
343
+ // // 虚拟渲染
344
+ // let isScrollXBig = false
345
+ // let ySpaceWidth = scrollXWidth
346
+ // if (scrollXWidth > maxXWidth) {
347
+ // // 触右
348
+ // if (bodyScrollElem && bodyTableElem && bodyScrollElem.scrollLeft + clientWidth >= maxXWidth) {
349
+ // xSpaceLeft = maxXWidth - bodyTableElem.clientWidth
350
+ // } else {
351
+ // xSpaceLeft = (maxXWidth - clientWidth) * (xSpaceLeft / (scrollXWidth - clientWidth))
352
+ // }
353
+ // ySpaceWidth = maxXWidth
354
+ // isScrollXBig = true
355
+ // }
356
+ // if (bodyTableElem) {
357
+ // bodyTableElem.style.transform = `translate(${xSpaceLeft}px, ${reactData.scrollYTop || 0}px)`
358
+ // }
359
+ // const layoutList = ['header', 'body', 'footer']
360
+ // layoutList.forEach(layout => {
361
+ // const xSpaceElem = getRefElem(elemStore[`main-${layout}-xSpace`])
362
+ // if (xSpaceElem) {
363
+ // xSpaceElem.style.width = scrollXLoad ? `${ySpaceWidth}px` : ''
364
+ // }
365
+ // })
366
+ // reactData.scrollXLeft = xSpaceLeft
367
+ // reactData.scrollXWidth = ySpaceWidth
368
+ // reactData.isScrollXBig = isScrollXBig
369
+ // const scrollXSpaceEl = $xeGanttView.$refs.refScrollXSpaceElem as HTMLDivElement
370
+ // if (scrollXSpaceEl) {
371
+ // scrollXSpaceEl.style.width = `${ySpaceWidth}px`
372
+ // }
373
+ // calcScrollbar($xeGanttView)
374
+ // return $xeGanttView.$nextTick().then(() => {
375
+ // updateStyle($xeGanttView)
376
+ // })
377
+ // }
379
378
  function updateScrollYSpace($xeGanttView) {
380
379
  const reactData = $xeGanttView.reactData;
381
380
  const internalData = $xeGanttView.internalData;
@@ -412,16 +411,17 @@ function updateScrollYSpace($xeGanttView) {
412
411
  if (!(scrollYLoad && overflowY)) {
413
412
  scrollYTop = 0;
414
413
  }
414
+ const bodyChartWrapperElem = getRefElem(elemStore['main-chart-wrapper']);
415
415
  if (bodyTableElem) {
416
416
  bodyTableElem.style.transform = `translate(${reactData.scrollXLeft || 0}px, ${scrollYTop}px)`;
417
417
  }
418
- const layoutList = ['header', 'body', 'footer'];
419
- layoutList.forEach(layout => {
420
- const ySpaceElem = getRefElem(elemStore[`main-${layout}-ySpace`]);
421
- if (ySpaceElem) {
422
- ySpaceElem.style.height = ySpaceHeight ? `${ySpaceHeight}px` : '';
423
- }
424
- });
418
+ if (bodyChartWrapperElem) {
419
+ bodyChartWrapperElem.style.transform = `translate(${reactData.scrollXLeft || 0}px, ${scrollYTop}px)`;
420
+ }
421
+ const bodyYSpaceElem = getRefElem(elemStore['main-body-ySpace']);
422
+ if (bodyYSpaceElem) {
423
+ bodyYSpaceElem.style.height = ySpaceHeight ? `${ySpaceHeight}px` : '';
424
+ }
425
425
  const scrollYSpaceEl = $xeGanttView.$refs.refScrollYSpaceElem;
426
426
  if (scrollYSpaceEl) {
427
427
  scrollYSpaceEl.style.height = ySpaceHeight ? `${ySpaceHeight}px` : '';
@@ -496,9 +496,9 @@ export default defineVxeComponent({
496
496
  // 是否启用了纵向 Y 可视渲染方式加载
497
497
  scrollYLoad: false,
498
498
  // 是否存在纵向滚动条
499
- overflowY: false,
499
+ overflowY: true,
500
500
  // 是否存在横向滚动条
501
- overflowX: false,
501
+ overflowX: true,
502
502
  // 纵向滚动条的宽度
503
503
  scrollbarWidth: 0,
504
504
  // 横向滚动条的高度
@@ -710,14 +710,15 @@ export default defineVxeComponent({
710
710
  handleScrollEvent($xeGanttView, evnt, isRollY, isRollX, currTopNum, wrapperEl.scrollLeft);
711
711
  }
712
712
  },
713
- updateScrollXSpace() {
714
- const $xeGanttView = this;
715
- return updateScrollXSpace($xeGanttView);
716
- },
717
713
  updateScrollYSpace() {
718
714
  const $xeGanttView = this;
719
715
  return updateScrollYSpace($xeGanttView);
720
716
  },
717
+ updateScrollYStatus(sYLoad) {
718
+ const $xeGanttView = this;
719
+ const reactData = $xeGanttView.reactData;
720
+ reactData.scrollYLoad = sYLoad;
721
+ },
721
722
  handleGlobalResizeEvent() {
722
723
  const $xeGanttView = this;
723
724
  handleLazyRecalculate($xeGanttView);
@@ -12,12 +12,16 @@ const tableProps = VxeTableComponent.props;
12
12
  const tableMethods = {};
13
13
  const propKeys = Object.keys(tableProps);
14
14
  const defaultLayouts = [['Form'], ['Toolbar', 'Top', 'Gantt', 'Bottom', 'Pager']];
15
- function getTableOns(_vm) {
16
- const { $listeners, proxyConfig, proxyOpts } = _vm;
15
+ function getTableOns($xeGantt) {
16
+ const _vm = $xeGantt;
17
+ const $listeners = _vm.$listeners;
18
+ const props = $xeGantt;
19
+ const { proxyConfig } = props;
20
+ const proxyOpts = $xeGantt.computeProxyOpts;
17
21
  const ons = {};
18
22
  XEUtils.each($listeners, (cb, type) => {
19
23
  ons[type] = (...args) => {
20
- _vm.$emit(type, ...args);
24
+ $xeGantt.$emit(type, ...args);
21
25
  };
22
26
  });
23
27
  if (proxyConfig) {
package/es/ui/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  import { errLog } from './src/log';
3
3
  const { setConfig, setIcon, checkVersion } = VxeUI;
4
- VxeUI.ganttVersion = "3.0.0-beta.3";
4
+ VxeUI.ganttVersion = "3.0.0-beta.4";
5
5
  setConfig({
6
6
  gantt: {
7
7
  // size: null,
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `gantt v${"3.0.0-beta.3"}`;
3
+ const version = `gantt v${"3.0.0-beta.4"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
@@ -43,7 +43,7 @@ function createInternalData() {
43
43
  };
44
44
  }
45
45
  var maxYHeight = 5e6;
46
- var maxXWidth = 5e6;
46
+ // const maxXWidth = 5e6
47
47
  function handleParseColumn($xeGanttView) {
48
48
  var $xeGantt = $xeGanttView.$xeGantt;
49
49
  var reactData = $xeGanttView.reactData;
@@ -344,54 +344,53 @@ function _handleLazyRecalculate($xeGanttView) {
344
344
  updateChart($xeGanttView);
345
345
  return $xeGanttView.$nextTick();
346
346
  }
347
- function _updateScrollXSpace($xeGanttView) {
348
- var reactData = $xeGanttView.reactData;
349
- var internalData = $xeGanttView.internalData;
350
- var scrollXLoad = reactData.scrollXLoad,
351
- scrollXWidth = reactData.scrollXWidth;
352
- var elemStore = internalData.elemStore;
353
- var bodyScrollElem = (0, _util.getRefElem)(elemStore['main-body-scroll']);
354
- var bodyTableElem = (0, _util.getRefElem)(elemStore['main-body-table']);
355
- var xSpaceLeft = 0;
356
- var clientWidth = 0;
357
- if (bodyScrollElem) {
358
- clientWidth = bodyScrollElem.clientWidth;
359
- }
360
- // 虚拟渲染
361
- var isScrollXBig = false;
362
- var ySpaceWidth = scrollXWidth;
363
- if (scrollXWidth > maxXWidth) {
364
- // 触右
365
- if (bodyScrollElem && bodyTableElem && bodyScrollElem.scrollLeft + clientWidth >= maxXWidth) {
366
- xSpaceLeft = maxXWidth - bodyTableElem.clientWidth;
367
- } else {
368
- xSpaceLeft = (maxXWidth - clientWidth) * (xSpaceLeft / (scrollXWidth - clientWidth));
369
- }
370
- ySpaceWidth = maxXWidth;
371
- isScrollXBig = true;
372
- }
373
- if (bodyTableElem) {
374
- bodyTableElem.style.transform = "translate(".concat(xSpaceLeft, "px, ").concat(reactData.scrollYTop || 0, "px)");
375
- }
376
- var layoutList = ['header', 'body', 'footer'];
377
- layoutList.forEach(function (layout) {
378
- var xSpaceElem = (0, _util.getRefElem)(elemStore["main-".concat(layout, "-xSpace")]);
379
- if (xSpaceElem) {
380
- xSpaceElem.style.width = scrollXLoad ? "".concat(ySpaceWidth, "px") : '';
381
- }
382
- });
383
- reactData.scrollXLeft = xSpaceLeft;
384
- reactData.scrollXWidth = ySpaceWidth;
385
- reactData.isScrollXBig = isScrollXBig;
386
- var scrollXSpaceEl = $xeGanttView.$refs.refScrollXSpaceElem;
387
- if (scrollXSpaceEl) {
388
- scrollXSpaceEl.style.width = "".concat(ySpaceWidth, "px");
389
- }
390
- calcScrollbar($xeGanttView);
391
- return $xeGanttView.$nextTick().then(function () {
392
- updateStyle($xeGanttView);
393
- });
394
- }
347
+ // function updateScrollXSpace ($xeGanttView: VxeGanttViewConstructor & VxeGanttViewPrivateMethods) {
348
+ // const reactData = $xeGanttView.reactData
349
+ // const internalData = $xeGanttView.internalData
350
+ // const { scrollXLoad, scrollXWidth } = reactData
351
+ // const { elemStore } = internalData
352
+ // const bodyScrollElem = getRefElem(elemStore['main-body-scroll'])
353
+ // const bodyTableElem = getRefElem(elemStore['main-body-table'])
354
+ // let xSpaceLeft = 0
355
+ // let clientWidth = 0
356
+ // if (bodyScrollElem) {
357
+ // clientWidth = bodyScrollElem.clientWidth
358
+ // }
359
+ // // 虚拟渲染
360
+ // let isScrollXBig = false
361
+ // let ySpaceWidth = scrollXWidth
362
+ // if (scrollXWidth > maxXWidth) {
363
+ // // 触右
364
+ // if (bodyScrollElem && bodyTableElem && bodyScrollElem.scrollLeft + clientWidth >= maxXWidth) {
365
+ // xSpaceLeft = maxXWidth - bodyTableElem.clientWidth
366
+ // } else {
367
+ // xSpaceLeft = (maxXWidth - clientWidth) * (xSpaceLeft / (scrollXWidth - clientWidth))
368
+ // }
369
+ // ySpaceWidth = maxXWidth
370
+ // isScrollXBig = true
371
+ // }
372
+ // if (bodyTableElem) {
373
+ // bodyTableElem.style.transform = `translate(${xSpaceLeft}px, ${reactData.scrollYTop || 0}px)`
374
+ // }
375
+ // const layoutList = ['header', 'body', 'footer']
376
+ // layoutList.forEach(layout => {
377
+ // const xSpaceElem = getRefElem(elemStore[`main-${layout}-xSpace`])
378
+ // if (xSpaceElem) {
379
+ // xSpaceElem.style.width = scrollXLoad ? `${ySpaceWidth}px` : ''
380
+ // }
381
+ // })
382
+ // reactData.scrollXLeft = xSpaceLeft
383
+ // reactData.scrollXWidth = ySpaceWidth
384
+ // reactData.isScrollXBig = isScrollXBig
385
+ // const scrollXSpaceEl = $xeGanttView.$refs.refScrollXSpaceElem as HTMLDivElement
386
+ // if (scrollXSpaceEl) {
387
+ // scrollXSpaceEl.style.width = `${ySpaceWidth}px`
388
+ // }
389
+ // calcScrollbar($xeGanttView)
390
+ // return $xeGanttView.$nextTick().then(() => {
391
+ // updateStyle($xeGanttView)
392
+ // })
393
+ // }
395
394
  function _updateScrollYSpace($xeGanttView) {
396
395
  var reactData = $xeGanttView.reactData;
397
396
  var internalData = $xeGanttView.internalData;
@@ -428,16 +427,17 @@ function _updateScrollYSpace($xeGanttView) {
428
427
  if (!(scrollYLoad && overflowY)) {
429
428
  scrollYTop = 0;
430
429
  }
430
+ var bodyChartWrapperElem = (0, _util.getRefElem)(elemStore['main-chart-wrapper']);
431
431
  if (bodyTableElem) {
432
432
  bodyTableElem.style.transform = "translate(".concat(reactData.scrollXLeft || 0, "px, ").concat(scrollYTop, "px)");
433
433
  }
434
- var layoutList = ['header', 'body', 'footer'];
435
- layoutList.forEach(function (layout) {
436
- var ySpaceElem = (0, _util.getRefElem)(elemStore["main-".concat(layout, "-ySpace")]);
437
- if (ySpaceElem) {
438
- ySpaceElem.style.height = ySpaceHeight ? "".concat(ySpaceHeight, "px") : '';
439
- }
440
- });
434
+ if (bodyChartWrapperElem) {
435
+ bodyChartWrapperElem.style.transform = "translate(".concat(reactData.scrollXLeft || 0, "px, ").concat(scrollYTop, "px)");
436
+ }
437
+ var bodyYSpaceElem = (0, _util.getRefElem)(elemStore['main-body-ySpace']);
438
+ if (bodyYSpaceElem) {
439
+ bodyYSpaceElem.style.height = ySpaceHeight ? "".concat(ySpaceHeight, "px") : '';
440
+ }
441
441
  var scrollYSpaceEl = $xeGanttView.$refs.refScrollYSpaceElem;
442
442
  if (scrollYSpaceEl) {
443
443
  scrollYSpaceEl.style.height = ySpaceHeight ? "".concat(ySpaceHeight, "px") : '';
@@ -512,9 +512,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
512
512
  // 是否启用了纵向 Y 可视渲染方式加载
513
513
  scrollYLoad: false,
514
514
  // 是否存在纵向滚动条
515
- overflowY: false,
515
+ overflowY: true,
516
516
  // 是否存在横向滚动条
517
- overflowX: false,
517
+ overflowX: true,
518
518
  // 纵向滚动条的宽度
519
519
  scrollbarWidth: 0,
520
520
  // 横向滚动条的高度
@@ -745,14 +745,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
745
745
  handleScrollEvent($xeGanttView, evnt, isRollY, isRollX, currTopNum, wrapperEl.scrollLeft);
746
746
  }
747
747
  },
748
- updateScrollXSpace: function updateScrollXSpace() {
749
- var $xeGanttView = this;
750
- return _updateScrollXSpace($xeGanttView);
751
- },
752
748
  updateScrollYSpace: function updateScrollYSpace() {
753
749
  var $xeGanttView = this;
754
750
  return _updateScrollYSpace($xeGanttView);
755
751
  },
752
+ updateScrollYStatus: function updateScrollYStatus(sYLoad) {
753
+ var $xeGanttView = this;
754
+ var reactData = $xeGanttView.reactData;
755
+ reactData.scrollYLoad = sYLoad;
756
+ },
756
757
  handleGlobalResizeEvent: function handleGlobalResizeEvent() {
757
758
  var $xeGanttView = this;
758
759
  _handleLazyRecalculate($xeGanttView);
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_dom=require("../../ui/src/dom"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var globalEvents=_core.VxeUI.globalEvents;function createInternalData(){return{xeTable:null,startMaps:{},endMaps:{},chartMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0}}}var maxYHeight=5e6,maxXWidth=5e6;function handleParseColumn(e){var t=e.$xeGantt,l=e.reactData,r=e.internalData,a=t.treeConfig,o=l.minViewDate,i=l.maxViewDate,n=[],c=[];switch(t.computeTaskViewOpts.mode){case"year":case"quarter":case"month":case"week":break;default:if(o&&i){for(var s=o.getTime(),d=i.getTime()-o.getTime(),u=Math.max(6,Math.floor(d/864e5)+1),f=[],h=[],m={},p=0;p<u;p++){var S=new Date(s+864e5*p),v="".concat(S.getFullYear(),"-").concat(S.getMonth()+1),S="".concat(S.getDate()),g=m[v],S={field:"".concat(v,"-").concat(S),title:S};g?(g.children.push(S),n.push(g)):(f.push(g={field:v,title:v,children:[S]}),n.push(g),m[v]=g),h.push(S)}c.push(f,h);var x,y,w,E,b,_,T,D=r.xeTable;D&&(x=t.computeStartField,y=t.computeEndField,d=D.afterFullData,E=(w=D.computeTreeOpts).transform,b=w.children||w.childrenField,_={},T=function(e){var t,l=D.getRowid(e),r=_xeUtils.default.get(e,x),a=_xeUtils.default.get(e,y);r&&a&&(r=_xeUtils.default.toStringDate(r),a=_xeUtils.default.toStringDate(a),t=Math.floor((r.getTime()-o.getTime())/864e5),a=Math.floor((a.getTime()-r.getTime())/864e5)+1,_[l]={row:e,rowid:l,oLeftSize:t,oWidthSize:a})},a?_xeUtils.default.eachTree(D.afterTreeFullData,T,{children:E?w.mapChildrenField:b}):d.forEach(T),r.chartMaps=_)}}l.tableColumn=n,l.headerGroups=c}function handleUpdateData(e){var l,r,t,a,o,i,n=e.$xeGantt,c=e.reactData,s=e.internalData,d=n.treeConfig,u=s.xeTable,f=null,h=null;u&&(l=n.computeStartField,r=n.computeEndField,n=u.afterFullData,a=(t=u.computeTreeOpts).transform,o=t.children||t.childrenField,i=function(e){var t=_xeUtils.default.get(e,l),e=_xeUtils.default.get(e,r);t&&e&&(t=_xeUtils.default.toStringDate(t),(!f||f.getTime()>t.getTime())&&(f=t),t=_xeUtils.default.toStringDate(e),!h||h.getTime()<t.getTime())&&(h=t)},d?_xeUtils.default.eachTree(u.afterTreeFullData,i,{children:a?t.mapChildrenField:o}):n.forEach(i)),c.minViewDate=f,c.maxViewDate=h,s.startMaps={},s.endMaps={},handleParseColumn(e)}function calcScrollbar(e){var t=e.$xeGantt,l=e.reactData,r=l.scrollXWidth,a=l.scrollYHeight,o=e.internalData.elemStore,t=t.computeScrollbarOpts,o=(0,_util.getRefElem)(o["main-body-wrapper"]),i=e.$refs.refScrollXHandleElem,e=e.$refs.refScrollYHandleElem;o&&(a=a>o.clientHeight,e&&(l.scrollbarWidth=t.width||e.offsetWidth-e.clientWidth||14),l.overflowY=a,e=r>o.clientWidth,i&&(l.scrollbarHeight=t.height||i.offsetHeight-i.clientHeight||14),l.overflowX=e)}function updateChart(e){var t=e.reactData,l=e.internalData,r=t.viewCellWidth,t=l.elemStore,a=l.chartMaps,l=(0,_util.getRefElem)(t["main-chart-wrapper"]);return l&&_xeUtils.default.arrayEach(l.children,function(e){var t=e.children[0];t&&(e=(e=e.getAttribute("rowid"))?a[e]:null)&&(t.style.left="".concat(r*e.oLeftSize,"px"),t.style.width="".concat(r*e.oWidthSize,"px"))}),e.$nextTick()}function updateStyle(e){var t,l,r,a,o,i,n,c=e.$xeGantt,s=e.reactData,d=e.internalData,u=s.scrollbarWidth,f=s.tableColumn,h=d.elemStore,d=d.xeTable,m=e.$refs.refElem;if(m&&m.clientHeight)return c=c.computeScrollbarXToTop,n=e.$refs.refScrollXLeftCornerElem,a=e.$refs.refScrollXRightCornerElem,i=e.$refs.refScrollXVirtualElem,u=u,o=s.scrollbarHeight,r=l=t=0,d&&(t=d.tBodyHeight,l=d.tHeaderHeight,r=d.tFooterHeight),(d=(0,_util.getRefElem)(h["main-header-scroll"]))&&(d.style.height="".concat(l,"px")),(d=(0,_util.getRefElem)(h["main-body-scroll"]))&&(d.style.height="".concat(t,"px")),i&&(i.style.height="".concat(o,"px"),i.style.visibility="visible"),(i=e.$refs.refScrollXWrapperElem)&&(i.style.left=c?"".concat(u,"px"):"",i.style.width="".concat(m.clientWidth-u,"px")),n&&(n.style.width=c?"".concat(u,"px"):"",n.style.display=c&&o?"block":""),a&&(a.style.width=c?"":"".concat(u,"px"),a.style.display=!c&&o?"block":""),(i=e.$refs.refScrollYVirtualElem)&&(i.style.width="".concat(u,"px"),i.style.height="".concat(t+l+r,"px"),i.style.visibility="visible"),(m=e.$refs.refScrollYTopCornerElem)&&(m.style.height="".concat(l,"px"),m.style.display=l?"block":""),(n=e.$refs.refScrollYWrapperElem)&&(n.style.height="".concat(t,"px"),n.style.top="".concat(l,"px")),(a=e.$refs.refScrollYBottomCornerElem)&&(a.style.height="".concat(r,"px"),a.style.top="".concat(l+t,"px"),a.style.display=r?"block":""),(c=e.$refs.refColInfoElem)&&(s.viewCellWidth=c.clientWidth||40),o=s.viewCellWidth*f.length,d&&0<(i=(u=d.clientWidth)-o)&&(s.viewCellWidth+=Math.floor(i/f.length),o=u),m=(0,_util.getRefElem)(h["main-header-table"]),n=(0,_util.getRefElem)(h["main-body-table"]),m&&(m.style.width="".concat(o,"px")),n&&(n.style.width="".concat(o,"px")),s.scrollXWidth=o,updateChart(e)}function _handleLazyRecalculate(e){return calcScrollbar(e),updateStyle(e),updateChart(e),e.$nextTick()}function _updateScrollXSpace(e){var t=e.reactData,l=t.scrollXLoad,r=t.scrollXWidth,a=e.internalData.elemStore,o=(0,_util.getRefElem)(a["main-body-scroll"]),i=(0,_util.getRefElem)(a["main-body-table"]),n=0,c=0,s=(o&&(c=o.clientWidth),!1),d=r,o=(maxXWidth<r&&(n=o&&i&&o.scrollLeft+c>=maxXWidth?maxXWidth-i.clientWidth:n/(r-c)*(maxXWidth-c),d=maxXWidth,s=!0),i&&(i.style.transform="translate(".concat(n,"px, ").concat(t.scrollYTop||0,"px)")),["header","body","footer"].forEach(function(e){e=(0,_util.getRefElem)(a["main-".concat(e,"-xSpace")]);e&&(e.style.width=l?"".concat(d,"px"):"")}),t.scrollXLeft=n,t.scrollXWidth=d,t.isScrollXBig=s,e.$refs.refScrollXSpaceElem);return o&&(o.style.width="".concat(d,"px")),calcScrollbar(e),e.$nextTick().then(function(){updateStyle(e)})}function _updateScrollYSpace(e){var t=e.reactData,l=e.internalData,r=t.scrollYLoad,a=t.overflowY,o=l.elemStore,l=l.xeTable,i=(0,_util.getRefElem)(o["main-body-scroll"]),n=(0,_util.getRefElem)(o["main-body-table"]),c=0,s=0,d=!1,u=(l&&(c=l.scrollYTop,s=l.scrollYHeight,d=l.isScrollYBig),s),l=c,f=0,i=(i&&(f=i.clientHeight),d&&(l=i&&n&&i.scrollTop+f>=maxYHeight?maxYHeight-n.clientHeight:c/(s-f)*(maxYHeight-f),u=maxYHeight),r&&a||(l=0),n&&(n.style.transform="translate(".concat(t.scrollXLeft||0,"px, ").concat(l,"px)")),["header","body","footer"].forEach(function(e){e=(0,_util.getRefElem)(o["main-".concat(e,"-ySpace")]);e&&(e.style.height=u?"".concat(u,"px"):"")}),e.$refs.refScrollYSpaceElem);return i&&(i.style.height=u?"".concat(u,"px"):""),t.scrollYTop=l,t.scrollYHeight=s,t.isScrollYBig=d,calcScrollbar(e),e.$nextTick().then(function(){updateStyle(e)})}function checkLastSyncScroll(e,t,l){var r=e.reactData,a=e.internalData,e=a.lcsTimeout;r.lazScrollLoading=!0,e&&clearTimeout(e),a.lcsTimeout=setTimeout(function(){a.lcsRunTime=Date.now(),a.lcsTimeout=void 0,a.intoRunScroll=!1,a.inVirtualScroll=!1,a.inWheelScroll=!1,a.inHeaderScroll=!1,a.inBodyScroll=!1,a.inFooterScroll=!1,r.lazScrollLoading=!1},200)}function handleScrollEvent(e,t,l,r,a,o){checkLastSyncScroll(e,r,l)}function syncTableScrollTop(e,t){var e=e.internalData.xeTable;e&&(e=e.elemStore,e=(0,_util.getRefElem)(e["main-body-scroll"]))&&(e.scrollTop=t)}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",inject:{$xeGantt:{default:null}},provide:function(){return{$xeGanttView:this}},props:{},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{scrollXLoad:!1,scrollYLoad:!1,overflowY:!1,overflowX:!1,scrollbarWidth:0,scrollbarHeight:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36}},internalData:createInternalData()}},computed:Object.assign({},{}),methods:{refreshData:function(){return handleUpdateData(this),_handleLazyRecalculate(this)},updateViewData:function(){var e=this.reactData,t=this.internalData.xeTable;return t&&(t=t.tableData,e.tableData=t),this.$nextTick()},connectUpdate:function(e){var e=e.$table,t=this.internalData;return e&&(t.xeTable=e),this.$nextTick()},handleUpdateStyle:function(){return updateStyle(this)},handleLazyRecalculate:function(){return _handleLazyRecalculate(this)},handleUpdateCurrentRow:function(e){var t,l=this.internalData.xeTable,r=this.$refs.refElem;l&&r&&(e?(t=l.highlightCurrentRow,(l.computeRowOpts.isCurrent||t)&&_xeUtils.default.arrayEach(r.querySelectorAll('[rowid="'.concat(l.getRowid(e),'"]')),function(e){return(0,_dom.addClass)(e,"row--current")})):_xeUtils.default.arrayEach(r.querySelectorAll(".row--current"),function(e){return(0,_dom.removeClass)(e,"row--current")}))},handleUpdateHoverRow:function(e){var t=this.internalData.xeTable,l=this.$refs.refElem;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll('.vxe-body--row[rowid="'.concat(t.getRowid(e),'"]')),function(e){return(0,_dom.addClass)(e,"row--hover")}):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-body--row.row--hover"),function(e){return(0,_dom.removeClass)(e,"row--hover")}))},triggerHeaderScrollEvent:function(e){var t,l,r,a=this.internalData,o=a.elemStore;a.inVirtualScroll||a.inBodyScroll||a.inFooterScroll||(t=e.currentTarget,o=(0,_util.getRefElem)(o["main-body-scroll"]),l=this.$refs.refScrollXHandleElem,o&&t&&(r=t.scrollLeft,a.inHeaderScroll=!0,(0,_dom.setScrollLeft)(l,r),(0,_dom.setScrollLeft)(o,r),handleScrollEvent(this,e,!1,!0,t.scrollTop,r)))},triggerBodyScrollEvent:function(e){var t,l,r,a,o,i=this,n=i.internalData,c=n.elemStore;n.inVirtualScroll||n.inHeaderScroll||n.inFooterScroll||(t=e.currentTarget,c=(0,_util.getRefElem)(c["main-header-scroll"]),l=i.$refs.refScrollXHandleElem,r=i.$refs.refScrollYHandleElem,c&&t&&(a=t.scrollLeft,o=t.scrollTop,n.inBodyScroll=!0,(0,_dom.setScrollLeft)(l,a),(0,_dom.setScrollLeft)(c,a),(0,_dom.setScrollTop)(r,o),syncTableScrollTop(i,o),handleScrollEvent(i,e,!0,!0,t.scrollTop,a)))},triggerFooterScrollEvent:function(e){var t,l=this.internalData;l.inVirtualScroll||l.inHeaderScroll||l.inBodyScroll||(l=e.currentTarget)&&(t=l.scrollLeft,handleScrollEvent(this,e,!1,!0,l.scrollTop,t))},triggerVirtualScrollXEvent:function(e){var t,l,r,a=this.internalData,o=a.elemStore;a.inHeaderScroll||a.inBodyScroll||(t=e.currentTarget,l=(0,_util.getRefElem)(o["main-header-scroll"]),o=(0,_util.getRefElem)(o["main-body-scroll"]),t&&(r=t.scrollLeft,a.inVirtualScroll=!0,(0,_dom.setScrollLeft)(l,r),(0,_dom.setScrollLeft)(o,r),handleScrollEvent(this,e,!1,!0,t.scrollTop,r)))},triggerVirtualScrollYEvent:function(e){var t,l,r=this.internalData,a=r.elemStore;r.inHeaderScroll||r.inBodyScroll||(t=e.currentTarget,a=(0,_util.getRefElem)(a["main-body-scroll"]),t&&(l=t.scrollTop,r.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,l),syncTableScrollTop(this,l),handleScrollEvent(this,e,!0,!1,l,t.scrollLeft)))},updateScrollXSpace:function(){return _updateScrollXSpace(this)},updateScrollYSpace:function(){return _updateScrollYSpace(this)},handleGlobalResizeEvent:function(){_handleLazyRecalculate(this)},renderScrollX:function(e){return e("div",{key:"vsx",ref:"refScrollXVirtualElem",class:"vxe-gantt-view--scroll-x-virtual"},[e("div",{ref:"refScrollXLeftCornerElem",class:"vxe-gantt-view--scroll-x-left-corner"}),e("div",{ref:"refScrollXWrapperElem",class:"vxe-gantt-view--scroll-x-wrapper"},[e("div",{ref:"refScrollXHandleElem",class:"vxe-gantt-view--scroll-x-handle",on:{scroll:this.triggerVirtualScrollXEvent}},[e("div",{ref:"refScrollXSpaceElem",class:"vxe-gantt-view--scroll-x-space"})])]),e("div",{ref:"refScrollXRightCornerElem",class:"vxe-gantt-view--scroll-x-right-corner"})])},renderScrollY:function(e){return e("div",{ref:"refScrollYVirtualElem",class:"vxe-gantt-view--scroll-y-virtual"},[e("div",{ref:"refScrollYTopCornerElem",class:"vxe-gantt-view--scroll-y-top-corner"}),e("div",{ref:"refScrollYWrapperElem",class:"vxe-gantt-view--scroll-y-wrapper"},[e("div",{ref:"refScrollYHandleElem",class:"vxe-gantt-view--scroll-y-handle",on:{scroll:this.triggerVirtualScrollYEvent}},[e("div",{ref:"refScrollYSpaceElem",class:"vxe-gantt-view--scroll-y-space"})])]),e("div",{ref:"refScrollYBottomCornerElem",class:"vxe-gantt-view--scroll-y-bottom-corner"})])},renderViewport:function(e){return e("div",{class:"vxe-gantt-view--viewport-wrapper"},[e(_ganttHeader.default),e(_ganttBody.default)])},renderBody:function(e){var t=this;return e("div",{class:"vxe-gantt-view--layout-wrapper"},t.$xeGantt.computeScrollbarYToLeft?[t.renderScrollY(e),t.renderViewport(e)]:[t.renderViewport(e),t.renderScrollY(e)])},renderVN:function(e){var t=this,l=t.$xeGantt,r=t.reactData,a=r.overflowX,o=r.overflowY,i=r.scrollXLoad,r=r.scrollYLoad,n=l.computeTaskViewOpts,l=l.computeScrollbarXToTop;return e("div",{ref:"refElem",class:["vxe-gantt-view","mode--".concat(n.mode||"day"),{"is--scroll-y":o,"is--scroll-x":a,"is--virtual-x":i,"is--virtual-y":r}]},[e("div",{class:"vxe-gantt-view--render-wrapper"},l?[t.renderScrollX(e),t.renderBody(e)]:[t.renderBody(e),t.renderScrollX(e)]),e("div",{class:"vxe-gantt-view--render-vars"},[e("div",{ref:"refColInfoElem",class:"vxe-gantt-view--column-info"})])])}},watch:{"reactData.tableData":function(){handleUpdateData(this)}},mounted:function(){globalEvents.on(this,"resize",this.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this.internalData;globalEvents.off(this,"keydown"),_xeUtils.default.assign(e,createInternalData())},render:function(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_dom=require("../../ui/src/dom"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var globalEvents=_core.VxeUI.globalEvents;function createInternalData(){return{xeTable:null,startMaps:{},endMaps:{},chartMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0}}}var maxYHeight=5e6;function handleParseColumn(e){var t=e.$xeGantt,l=e.reactData,r=e.internalData,a=t.treeConfig,o=l.minViewDate,i=l.maxViewDate,n=[],c=[];switch(t.computeTaskViewOpts.mode){case"year":case"quarter":case"month":case"week":break;default:if(o&&i){for(var s=o.getTime(),d=i.getTime()-o.getTime(),u=Math.max(6,Math.floor(d/864e5)+1),f=[],h=[],m={},p=0;p<u;p++){var S=new Date(s+864e5*p),v="".concat(S.getFullYear(),"-").concat(S.getMonth()+1),S="".concat(S.getDate()),g=m[v],S={field:"".concat(v,"-").concat(S),title:S};g?(g.children.push(S),n.push(g)):(f.push(g={field:v,title:v,children:[S]}),n.push(g),m[v]=g),h.push(S)}c.push(f,h);var x,y,w,E,b,T,_,D=r.xeTable;D&&(x=t.computeStartField,y=t.computeEndField,d=D.afterFullData,E=(w=D.computeTreeOpts).transform,b=w.children||w.childrenField,T={},_=function(e){var t,l=D.getRowid(e),r=_xeUtils.default.get(e,x),a=_xeUtils.default.get(e,y);r&&a&&(r=_xeUtils.default.toStringDate(r),a=_xeUtils.default.toStringDate(a),t=Math.floor((r.getTime()-o.getTime())/864e5),a=Math.floor((a.getTime()-r.getTime())/864e5)+1,T[l]={row:e,rowid:l,oLeftSize:t,oWidthSize:a})},a?_xeUtils.default.eachTree(D.afterTreeFullData,_,{children:E?w.mapChildrenField:b}):d.forEach(_),r.chartMaps=T)}}l.tableColumn=n,l.headerGroups=c}function handleUpdateData(e){var l,r,t,a,o,i,n=e.$xeGantt,c=e.reactData,s=e.internalData,d=n.treeConfig,u=s.xeTable,f=null,h=null;u&&(l=n.computeStartField,r=n.computeEndField,n=u.afterFullData,a=(t=u.computeTreeOpts).transform,o=t.children||t.childrenField,i=function(e){var t=_xeUtils.default.get(e,l),e=_xeUtils.default.get(e,r);t&&e&&(t=_xeUtils.default.toStringDate(t),(!f||f.getTime()>t.getTime())&&(f=t),t=_xeUtils.default.toStringDate(e),!h||h.getTime()<t.getTime())&&(h=t)},d?_xeUtils.default.eachTree(u.afterTreeFullData,i,{children:a?t.mapChildrenField:o}):n.forEach(i)),c.minViewDate=f,c.maxViewDate=h,s.startMaps={},s.endMaps={},handleParseColumn(e)}function calcScrollbar(e){var t=e.$xeGantt,l=e.reactData,r=l.scrollXWidth,a=l.scrollYHeight,o=e.internalData.elemStore,t=t.computeScrollbarOpts,o=(0,_util.getRefElem)(o["main-body-wrapper"]),i=e.$refs.refScrollXHandleElem,e=e.$refs.refScrollYHandleElem;o&&(a=a>o.clientHeight,e&&(l.scrollbarWidth=t.width||e.offsetWidth-e.clientWidth||14),l.overflowY=a,e=r>o.clientWidth,i&&(l.scrollbarHeight=t.height||i.offsetHeight-i.clientHeight||14),l.overflowX=e)}function updateChart(e){var t=e.reactData,l=e.internalData,r=t.viewCellWidth,t=l.elemStore,a=l.chartMaps,l=(0,_util.getRefElem)(t["main-chart-wrapper"]);return l&&_xeUtils.default.arrayEach(l.children,function(e){var t=e.children[0];t&&(e=(e=e.getAttribute("rowid"))?a[e]:null)&&(t.style.left="".concat(r*e.oLeftSize,"px"),t.style.width="".concat(r*e.oWidthSize,"px"))}),e.$nextTick()}function updateStyle(e){var t,l,r,a,o,i,n,c=e.$xeGantt,s=e.reactData,d=e.internalData,u=s.scrollbarWidth,f=s.tableColumn,h=d.elemStore,d=d.xeTable,m=e.$refs.refElem;if(m&&m.clientHeight)return c=c.computeScrollbarXToTop,n=e.$refs.refScrollXLeftCornerElem,a=e.$refs.refScrollXRightCornerElem,i=e.$refs.refScrollXVirtualElem,u=u,o=s.scrollbarHeight,r=l=t=0,d&&(t=d.tBodyHeight,l=d.tHeaderHeight,r=d.tFooterHeight),(d=(0,_util.getRefElem)(h["main-header-scroll"]))&&(d.style.height="".concat(l,"px")),(d=(0,_util.getRefElem)(h["main-body-scroll"]))&&(d.style.height="".concat(t,"px")),i&&(i.style.height="".concat(o,"px"),i.style.visibility="visible"),(i=e.$refs.refScrollXWrapperElem)&&(i.style.left=c?"".concat(u,"px"):"",i.style.width="".concat(m.clientWidth-u,"px")),n&&(n.style.width=c?"".concat(u,"px"):"",n.style.display=c&&o?"block":""),a&&(a.style.width=c?"":"".concat(u,"px"),a.style.display=!c&&o?"block":""),(i=e.$refs.refScrollYVirtualElem)&&(i.style.width="".concat(u,"px"),i.style.height="".concat(t+l+r,"px"),i.style.visibility="visible"),(m=e.$refs.refScrollYTopCornerElem)&&(m.style.height="".concat(l,"px"),m.style.display=l?"block":""),(n=e.$refs.refScrollYWrapperElem)&&(n.style.height="".concat(t,"px"),n.style.top="".concat(l,"px")),(a=e.$refs.refScrollYBottomCornerElem)&&(a.style.height="".concat(r,"px"),a.style.top="".concat(l+t,"px"),a.style.display=r?"block":""),(c=e.$refs.refColInfoElem)&&(s.viewCellWidth=c.clientWidth||40),o=s.viewCellWidth*f.length,d&&0<(i=(u=d.clientWidth)-o)&&(s.viewCellWidth+=Math.floor(i/f.length),o=u),m=(0,_util.getRefElem)(h["main-header-table"]),n=(0,_util.getRefElem)(h["main-body-table"]),m&&(m.style.width="".concat(o,"px")),n&&(n.style.width="".concat(o,"px")),s.scrollXWidth=o,updateChart(e)}function _handleLazyRecalculate(e){return calcScrollbar(e),updateStyle(e),updateChart(e),e.$nextTick()}function _updateScrollYSpace(e){var t=e.reactData,l=e.internalData,r=t.scrollYLoad,a=t.overflowY,o=l.elemStore,l=l.xeTable,i=(0,_util.getRefElem)(o["main-body-scroll"]),n=(0,_util.getRefElem)(o["main-body-table"]),c=0,s=0,d=!1,l=(l&&(c=l.scrollYTop,s=l.scrollYHeight,d=l.isScrollYBig),s),u=c,f=0,i=(i&&(f=i.clientHeight),d&&(u=i&&n&&i.scrollTop+f>=maxYHeight?maxYHeight-n.clientHeight:c/(s-f)*(maxYHeight-f),l=maxYHeight),r&&a||(u=0),(0,_util.getRefElem)(o["main-chart-wrapper"])),c=(n&&(n.style.transform="translate(".concat(t.scrollXLeft||0,"px, ").concat(u,"px)")),i&&(i.style.transform="translate(".concat(t.scrollXLeft||0,"px, ").concat(u,"px)")),(0,_util.getRefElem)(o["main-body-ySpace"])),f=(c&&(c.style.height=l?"".concat(l,"px"):""),e.$refs.refScrollYSpaceElem);return f&&(f.style.height=l?"".concat(l,"px"):""),t.scrollYTop=u,t.scrollYHeight=s,t.isScrollYBig=d,calcScrollbar(e),e.$nextTick().then(function(){updateStyle(e)})}function checkLastSyncScroll(e,t,l){var r=e.reactData,a=e.internalData,e=a.lcsTimeout;r.lazScrollLoading=!0,e&&clearTimeout(e),a.lcsTimeout=setTimeout(function(){a.lcsRunTime=Date.now(),a.lcsTimeout=void 0,a.intoRunScroll=!1,a.inVirtualScroll=!1,a.inWheelScroll=!1,a.inHeaderScroll=!1,a.inBodyScroll=!1,a.inFooterScroll=!1,r.lazScrollLoading=!1},200)}function handleScrollEvent(e,t,l,r,a,o){checkLastSyncScroll(e,r,l)}function syncTableScrollTop(e,t){var e=e.internalData.xeTable;e&&(e=e.elemStore,e=(0,_util.getRefElem)(e["main-body-scroll"]))&&(e.scrollTop=t)}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",inject:{$xeGantt:{default:null}},provide:function(){return{$xeGanttView:this}},props:{},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40,rowHeightStore:{large:52,default:48,medium:44,small:40,mini:36}},internalData:createInternalData()}},computed:Object.assign({},{}),methods:{refreshData:function(){return handleUpdateData(this),_handleLazyRecalculate(this)},updateViewData:function(){var e=this.reactData,t=this.internalData.xeTable;return t&&(t=t.tableData,e.tableData=t),this.$nextTick()},connectUpdate:function(e){var e=e.$table,t=this.internalData;return e&&(t.xeTable=e),this.$nextTick()},handleUpdateStyle:function(){return updateStyle(this)},handleLazyRecalculate:function(){return _handleLazyRecalculate(this)},handleUpdateCurrentRow:function(e){var t,l=this.internalData.xeTable,r=this.$refs.refElem;l&&r&&(e?(t=l.highlightCurrentRow,(l.computeRowOpts.isCurrent||t)&&_xeUtils.default.arrayEach(r.querySelectorAll('[rowid="'.concat(l.getRowid(e),'"]')),function(e){return(0,_dom.addClass)(e,"row--current")})):_xeUtils.default.arrayEach(r.querySelectorAll(".row--current"),function(e){return(0,_dom.removeClass)(e,"row--current")}))},handleUpdateHoverRow:function(e){var t=this.internalData.xeTable,l=this.$refs.refElem;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll('.vxe-body--row[rowid="'.concat(t.getRowid(e),'"]')),function(e){return(0,_dom.addClass)(e,"row--hover")}):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-body--row.row--hover"),function(e){return(0,_dom.removeClass)(e,"row--hover")}))},triggerHeaderScrollEvent:function(e){var t,l,r,a=this.internalData,o=a.elemStore;a.inVirtualScroll||a.inBodyScroll||a.inFooterScroll||(t=e.currentTarget,o=(0,_util.getRefElem)(o["main-body-scroll"]),l=this.$refs.refScrollXHandleElem,o&&t&&(r=t.scrollLeft,a.inHeaderScroll=!0,(0,_dom.setScrollLeft)(l,r),(0,_dom.setScrollLeft)(o,r),handleScrollEvent(this,e,!1,!0,t.scrollTop,r)))},triggerBodyScrollEvent:function(e){var t,l,r,a,o,i=this,n=i.internalData,c=n.elemStore;n.inVirtualScroll||n.inHeaderScroll||n.inFooterScroll||(t=e.currentTarget,c=(0,_util.getRefElem)(c["main-header-scroll"]),l=i.$refs.refScrollXHandleElem,r=i.$refs.refScrollYHandleElem,c&&t&&(a=t.scrollLeft,o=t.scrollTop,n.inBodyScroll=!0,(0,_dom.setScrollLeft)(l,a),(0,_dom.setScrollLeft)(c,a),(0,_dom.setScrollTop)(r,o),syncTableScrollTop(i,o),handleScrollEvent(i,e,!0,!0,t.scrollTop,a)))},triggerFooterScrollEvent:function(e){var t,l=this.internalData;l.inVirtualScroll||l.inHeaderScroll||l.inBodyScroll||(l=e.currentTarget)&&(t=l.scrollLeft,handleScrollEvent(this,e,!1,!0,l.scrollTop,t))},triggerVirtualScrollXEvent:function(e){var t,l,r,a=this.internalData,o=a.elemStore;a.inHeaderScroll||a.inBodyScroll||(t=e.currentTarget,l=(0,_util.getRefElem)(o["main-header-scroll"]),o=(0,_util.getRefElem)(o["main-body-scroll"]),t&&(r=t.scrollLeft,a.inVirtualScroll=!0,(0,_dom.setScrollLeft)(l,r),(0,_dom.setScrollLeft)(o,r),handleScrollEvent(this,e,!1,!0,t.scrollTop,r)))},triggerVirtualScrollYEvent:function(e){var t,l,r=this.internalData,a=r.elemStore;r.inHeaderScroll||r.inBodyScroll||(t=e.currentTarget,a=(0,_util.getRefElem)(a["main-body-scroll"]),t&&(l=t.scrollTop,r.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,l),syncTableScrollTop(this,l),handleScrollEvent(this,e,!0,!1,l,t.scrollLeft)))},updateScrollYSpace:function(){return _updateScrollYSpace(this)},updateScrollYStatus:function(e){this.reactData.scrollYLoad=e},handleGlobalResizeEvent:function(){_handleLazyRecalculate(this)},renderScrollX:function(e){return e("div",{key:"vsx",ref:"refScrollXVirtualElem",class:"vxe-gantt-view--scroll-x-virtual"},[e("div",{ref:"refScrollXLeftCornerElem",class:"vxe-gantt-view--scroll-x-left-corner"}),e("div",{ref:"refScrollXWrapperElem",class:"vxe-gantt-view--scroll-x-wrapper"},[e("div",{ref:"refScrollXHandleElem",class:"vxe-gantt-view--scroll-x-handle",on:{scroll:this.triggerVirtualScrollXEvent}},[e("div",{ref:"refScrollXSpaceElem",class:"vxe-gantt-view--scroll-x-space"})])]),e("div",{ref:"refScrollXRightCornerElem",class:"vxe-gantt-view--scroll-x-right-corner"})])},renderScrollY:function(e){return e("div",{ref:"refScrollYVirtualElem",class:"vxe-gantt-view--scroll-y-virtual"},[e("div",{ref:"refScrollYTopCornerElem",class:"vxe-gantt-view--scroll-y-top-corner"}),e("div",{ref:"refScrollYWrapperElem",class:"vxe-gantt-view--scroll-y-wrapper"},[e("div",{ref:"refScrollYHandleElem",class:"vxe-gantt-view--scroll-y-handle",on:{scroll:this.triggerVirtualScrollYEvent}},[e("div",{ref:"refScrollYSpaceElem",class:"vxe-gantt-view--scroll-y-space"})])]),e("div",{ref:"refScrollYBottomCornerElem",class:"vxe-gantt-view--scroll-y-bottom-corner"})])},renderViewport:function(e){return e("div",{class:"vxe-gantt-view--viewport-wrapper"},[e(_ganttHeader.default),e(_ganttBody.default)])},renderBody:function(e){var t=this;return e("div",{class:"vxe-gantt-view--layout-wrapper"},t.$xeGantt.computeScrollbarYToLeft?[t.renderScrollY(e),t.renderViewport(e)]:[t.renderViewport(e),t.renderScrollY(e)])},renderVN:function(e){var t=this,l=t.$xeGantt,r=t.reactData,a=r.overflowX,o=r.overflowY,i=r.scrollXLoad,r=r.scrollYLoad,n=l.computeTaskViewOpts,l=l.computeScrollbarXToTop;return e("div",{ref:"refElem",class:["vxe-gantt-view","mode--".concat(n.mode||"day"),{"is--scroll-y":o,"is--scroll-x":a,"is--virtual-x":i,"is--virtual-y":r}]},[e("div",{class:"vxe-gantt-view--render-wrapper"},l?[t.renderScrollX(e),t.renderBody(e)]:[t.renderBody(e),t.renderScrollX(e)]),e("div",{class:"vxe-gantt-view--render-vars"},[e("div",{ref:"refColInfoElem",class:"vxe-gantt-view--column-info"})])])}},watch:{"reactData.tableData":function(){handleUpdateData(this)}},mounted:function(){globalEvents.on(this,"resize",this.handleGlobalResizeEvent)},beforeDestroy:function(){var e=this.internalData;globalEvents.off(this,"keydown"),_xeUtils.default.assign(e,createInternalData())},render:function(e){return this.renderVN(e)}});
@@ -37,17 +37,19 @@ var tableProps = _vxeTable.VxeTable.props;
37
37
  var tableMethods = {};
38
38
  var propKeys = Object.keys(tableProps);
39
39
  var defaultLayouts = [['Form'], ['Toolbar', 'Top', 'Gantt', 'Bottom', 'Pager']];
40
- function getTableOns(_vm) {
41
- var $listeners = _vm.$listeners,
42
- proxyConfig = _vm.proxyConfig,
43
- proxyOpts = _vm.proxyOpts;
40
+ function getTableOns($xeGantt) {
41
+ var _vm = $xeGantt;
42
+ var $listeners = _vm.$listeners;
43
+ var props = $xeGantt;
44
+ var proxyConfig = props.proxyConfig;
45
+ var proxyOpts = $xeGantt.computeProxyOpts;
44
46
  var ons = {};
45
47
  _xeUtils.default.each($listeners, function (cb, type) {
46
48
  ons[type] = function () {
47
49
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
48
50
  args[_key] = arguments[_key];
49
51
  }
50
- _vm.$emit.apply(_vm, [type].concat(args));
52
+ $xeGantt.$emit.apply($xeGantt, [type].concat(args));
51
53
  };
52
54
  });
53
55
  if (proxyConfig) {