vxe-gantt 3.9.0-beta.3 → 3.9.1
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.
- package/es/gantt/src/gantt-view.js +2 -0
- package/es/gantt/src/gantt.js +4 -0
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/gantt/src/gantt-view.js +2 -1
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +4 -0
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/index.umd.js +8 -3
- package/lib/index.umd.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +3 -3
- package/packages/gantt/src/gantt-view.ts +2 -0
- package/packages/gantt/src/gantt.ts +4 -0
|
@@ -1790,12 +1790,14 @@ export default defineVxeComponent({
|
|
|
1790
1790
|
const reactData = $xeGanttView.reactData;
|
|
1791
1791
|
const $xeGantt = $xeGanttView.$xeGantt;
|
|
1792
1792
|
const { yThumbHeight, xThumbWidth } = reactData;
|
|
1793
|
+
const scrollbarOpts = $xeGantt.computeScrollbarOpts;
|
|
1793
1794
|
const scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
1794
1795
|
const scrollbarYToLeft = $xeGantt.computeScrollbarYToLeft;
|
|
1795
1796
|
const scrollXVisible = $xeGanttView.computeScrollXVisible;
|
|
1796
1797
|
const scrollYVisible = $xeGanttView.computeScrollYVisible;
|
|
1797
1798
|
return domUtils.buildClass([
|
|
1798
1799
|
'vxe-scrollbar is--virtual',
|
|
1800
|
+
scrollbarOpts.fluentOverlay ? 'is--fluent-overlay' : 'is--default-mode',
|
|
1799
1801
|
`ov-x--${scrollXVisible === false ? 'hidden' : 'visible'}`,
|
|
1800
1802
|
`ov-y--${scrollYVisible === false ? 'hidden' : 'visible'}`,
|
|
1801
1803
|
`sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`,
|
package/es/gantt/src/gantt.js
CHANGED
|
@@ -2657,6 +2657,8 @@ export default {
|
|
|
2657
2657
|
const taskSplitOpts = $xeGantt.computeTaskSplitOpts;
|
|
2658
2658
|
const scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
2659
2659
|
const scrollbarYToLeft = $xeGantt.computeScrollbarYToLeft;
|
|
2660
|
+
const scrollXAutoHide = $xeGantt.computeScrollXAutoHide;
|
|
2661
|
+
const scrollYAutoHide = $xeGantt.computeScrollYAutoHide;
|
|
2660
2662
|
const { autoHideCollapseButton } = taskSplitOpts;
|
|
2661
2663
|
const childVNs = [];
|
|
2662
2664
|
layoutKeys.forEach(key => {
|
|
@@ -2676,6 +2678,8 @@ export default {
|
|
|
2676
2678
|
key: 'tv',
|
|
2677
2679
|
class: ['vxe-gantt--gantt-container', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
2678
2680
|
'is--virtual-scrollbar': isVScrollbar,
|
|
2681
|
+
'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
|
|
2682
|
+
'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
|
|
2679
2683
|
'show--left': showLeftView,
|
|
2680
2684
|
'hide--left': !showLeftView,
|
|
2681
2685
|
'show--right': showRightView,
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const ganttVersion = `gantt v${"3.9.
|
|
3
|
+
const ganttVersion = `gantt v${"3.9.1"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
6
6
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -1964,11 +1964,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
1964
1964
|
var $xeGantt = $xeGanttView.$xeGantt;
|
|
1965
1965
|
var yThumbHeight = reactData.yThumbHeight,
|
|
1966
1966
|
xThumbWidth = reactData.xThumbWidth;
|
|
1967
|
+
var scrollbarOpts = $xeGantt.computeScrollbarOpts;
|
|
1967
1968
|
var scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
1968
1969
|
var scrollbarYToLeft = $xeGantt.computeScrollbarYToLeft;
|
|
1969
1970
|
var scrollXVisible = $xeGanttView.computeScrollXVisible;
|
|
1970
1971
|
var scrollYVisible = $xeGanttView.computeScrollYVisible;
|
|
1971
|
-
return domUtils.buildClass(['vxe-scrollbar is--virtual', "ov-x--".concat(scrollXVisible === false ? 'hidden' : 'visible'), "ov-y--".concat(scrollYVisible === false ? 'hidden' : 'visible'), "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom'), "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right')], {
|
|
1972
|
+
return domUtils.buildClass(['vxe-scrollbar is--virtual', scrollbarOpts.fluentOverlay ? 'is--fluent-overlay' : 'is--default-mode', "ov-x--".concat(scrollXVisible === false ? 'hidden' : 'visible'), "ov-y--".concat(scrollYVisible === false ? 'hidden' : 'visible'), "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom'), "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right')], {
|
|
1972
1973
|
'overflow-y': yThumbHeight,
|
|
1973
1974
|
'overflow-x': xThumbWidth
|
|
1974
1975
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handleCriticalPath=handleCriticalPath;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_static=require("./static"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _createForOfIteratorHelper(t,e){var a,r,l,i,o="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(o)return l=!(r=!0),{s:function(){o=o.call(t)},n:function(){var t=o.next();return r=t.done,t},e:function(t){l=!0,a=t},f:function(){try{r||null==o.return||o.return()}finally{if(l)throw a}}};if(Array.isArray(t)||(o=_unsupportedIterableToArray(t))||e&&t&&"number"==typeof t.length)return o&&(t=o),i=0,{s:e=function(){},n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:e};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(t,e){return _arrayWithHoles(t)||_iterableToArrayLimit(t,e)||_unsupportedIterableToArray(t,e)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(t,e){var a;if(t)return"string"==typeof t?_arrayLikeToArray(t,e):"Map"===(a="Object"===(a={}.toString.call(t).slice(8,-1))&&t.constructor?t.constructor.name:a)||"Set"===a?Array.from(t):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(t,e):void 0}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var a=0,r=Array(e);a<e;a++)r[a]=t[a];return r}function _iterableToArrayLimit(t,e){var a=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=a){var r,l,i,o,n=[],c=!0,s=!1;try{if(i=(a=a.call(t)).next,0===e){if(Object(a)!==a)return;c=!1}else for(;!(c=(r=i.call(a)).done)&&(n.push(r.value),n.length!==e);c=!0);}catch(t){s=!0,l=t}finally{try{if(!c&&null!=a.return&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw l}}return n}}function _arrayWithHoles(t){if(Array.isArray(t))return t}var getConfig=_core.VxeUI.getConfig,domUtils=_core.VxeUI.domUtils,globalResize=_core.VxeUI.globalResize,globalEvents=_core.VxeUI.globalEvents,renderEmptyElement=_core.VxeUI.renderEmptyElement,FinishToStart=_static.VxeGanttDependencyType.FinishToStart,StartToFinish=_static.VxeGanttDependencyType.StartToFinish,StartToStart=_static.VxeGanttDependencyType.StartToStart,FinishToFinish=_static.VxeGanttDependencyType.FinishToFinish,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function getTaskLinkKey(t,e,a){return t+"_"+e+"_"+(a||0)}function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,yThumbHeight:0,xThumbWidth:0,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}var maxYHeight=5e6;function parseStringDate(t,e){t=t.$xeGantt.computeDateFormat;return _xeUtils.default.toStringDate(e,t||null)}function updateTodayData(t){var e,a,r,l,i,o,n,c,s,u,d=t.$xeGantt,t=t.internalData,f=d.reactData,h=f.taskScaleList,d=d.computeMinScale;d&&(h=h.find(function(t){return"week"===t.type}),d="week"===d.type,e=new Date,a=(c=_slicedToArray(_xeUtils.default.toDateString(e,"yyyy-M-MM-dd-HH-mm-ss").split("-"),7))[0],r=c[1],l=c[2],i=c[3],o=c[4],n=c[5],c=c[6],s=e.getDay()+1,u=Math.ceil((e.getMonth()+1)/3),h="".concat(_xeUtils.default.getYearWeek(e,h?h.startDay:void 0)),d&&checkWeekOfsetYear(h,r)&&(a="".concat(Number(a)+1),r="1",l="01"),f.nowTime=e.getTime(),t.todayDateMaps={year:a,quarter:"".concat(a,"_q").concat(u),month:"".concat(a,"_").concat(l),week:"".concat(a,"_W").concat(h),day:"".concat(a,"_").concat(l,"_").concat(i,"_E").concat(s),date:"".concat(a,"_").concat(l,"_").concat(i),hour:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o),minute:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o,"_").concat(n),second:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o,"_").concat(n,"_").concat(c)})}function handleColumnHeader(t){var e=t.$xeGantt,a=e.reactData.taskScaleList,i=e.computeMinScale,x=e.computeWeekScale,r=t.computeScaleDateList,l=e.computeScaleStep,o=x?x.startDay:void 0,n=[],c=[];if(i&&e.computeScaleUnit&&r.length){for(var s={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},u={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}},v="week"===i.type,d=function(t,e,a){var r,l;i.type!==t&&(e=e[t],r="".concat(e.field),(l=u[t][r])||(u[t][r]=l=e,s[t].push(l)),l)&&(l.children||(l.children=[]),l.children.push(a))},f=function(t){var e=_slicedToArray(_xeUtils.default.toDateString(t,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-"),12),a=e[0],r=e[1],l=e[2],i=e[3],o=e[4],n=e[5],c=e[6],s=e[7],u=e[8],d=e[9],f=e[10],e=e[11],h=t.getDay(),p=h+1,g=Math.ceil((t.getMonth()+1)/3),m="".concat(_xeUtils.default.getYearWeek(t,x?x.startDay:void 0)),S=_xeUtils.default.padStart(m,2,"0");return v&&checkWeekOfsetYear(m,l)&&(r="".concat(Number(r)+1),i="0"+(l="1")),{date:t,yy:a,yyyy:r,M:l,MM:i,d:o,dd:n,H:c,HH:s,m:u,mm:d,s:f,ss:e,q:g,W:m,WW:S,E:p,e:h}},h=0;h<r.length;h++){var p=r[h],g=f(p),m=g.yyyy,S=g.MM,y=g.dd,b=g.HH,_=g.mm,T=g.ss,D=g.q,w=g.W,U=g.E,W=g,D={year:{field:m,title:m,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatYear(p,l-1)):W},quarter:{field:"".concat(m,"_q").concat(D),title:"".concat(D),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatQuarter(p,l-1)):W},month:{field:"".concat(m,"_").concat(S),title:S,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatMonth(p,l-1)):W},week:{field:"".concat(m,"_W").concat(w),title:"".concat(w),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatWeek(p,l-1,o,o)):W},day:{field:"".concat(m,"_").concat(S,"_").concat(y,"_E").concat(U),title:"".concat(U),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatDay(p,l-1)):W},date:{field:"".concat(m,"_").concat(S,"_").concat(y),title:y,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatDay(p,l-1)):W},hour:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b),title:b,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatHours(p,l-1)):W},minute:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b,"_").concat(_),title:_,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatMinutes(p,l-1)):W},second:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b,"_").concat(_,"_").concat(T),title:T,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatSeconds(p,l-1)):W}},w=D[i.type];i.level<19&&d("year",D,w),i.level<17&&d("quarter",D,w),i.level<15&&d("month",D,w),i.level<13&&d("week",D,w),i.level<11&&d("day",D,w),i.level<9&&d("date",D,w),i.level<7&&d("hour",D,w),i.level<5&&d("minute",D,w),i.level<3&&d("second",D,w),n.push(w)}a.forEach(function(t){var e;t.type===i.type?c.push({scaleItem:t,columns:n}):((e=s[t.type]||[])&&e.forEach(function(t){t.childCount=t.children?t.children.length:0,t.children=void 0}),c.push({scaleItem:t,columns:e}))})}return{fullCols:n,groupCols:c}}function checkWeekOfsetYear(t,e){return"1"==="".concat(t)&&"12"==="".concat(e)}function parseWeekObj(t,e){var t=_xeUtils.default.toStringDate(t),a=t.getFullYear(),r=t.getMonth(),t=_xeUtils.default.getYearWeek(t,e);return checkWeekOfsetYear(t,r+1)&&a++,{yyyy:a,W:t}}function createChartRender(s,t){var e=s.$xeGantt,a=e.computeMinScale,n=e.computeScaleStep,c=e.computeWeekScale,r=e.computeDateFormat;if(a){var u=1<n?1/n:0;switch(e.computeScaleUnit){case"year":var d=/M|d|H|m|s|S/.test(r),f="yyyy",h={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,"yyyy");if(h[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(a.date,n-r),f);h[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,f),l=d?t:_xeUtils.default.getWhatYear(t,0,"first"),t=_xeUtils.default.getWhatYear(t,0,"first"),i=_xeUtils.default.toDateString(e,f),e=d?e:_xeUtils.default.getWhatYear(e,0,"last"),o=_xeUtils.default.getWhatYear(e,0,"first"),n=0,c=1,t=(d&&(a=_xeUtils.default.getDayOfYear(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfYear(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(h[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(h[i]||0)-t+c}};case"quarter":var p=/M|d|H|m|ss|S/.test(r),g="yyyy-q",m={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,g);if(m[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(a.date,n-r),g);m[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,g),l=p?t:_xeUtils.default.getWhatQuarter(t,0,"first"),t=_xeUtils.default.getWhatQuarter(t,0,"first"),i=_xeUtils.default.toDateString(e,g),e=p?e:_xeUtils.default.getWhatQuarter(e,0,"last"),o=_xeUtils.default.getWhatQuarter(e,0,"first"),n=0,c=1,t=(p&&(a=_xeUtils.default.getDayOfQuarter(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfQuarter(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(m[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(m[i]||0)-t+c}};case"month":var S="yyyy-MM",x=/d|H|m|ss|S/.test(r),v={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,S);if(v[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(a.date,n-r),S);v[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,S),l=x?t:_xeUtils.default.getWhatMonth(t,0,"first"),t=_xeUtils.default.getWhatMonth(t,0,"first"),i=_xeUtils.default.toDateString(e,S),e=x?e:_xeUtils.default.getWhatMonth(e,0,"last"),o=_xeUtils.default.getWhatMonth(e,0,"first"),n=0,c=1,t=(x&&(a=_xeUtils.default.getDayOfMonth(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfMonth(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(v[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(v[i]||0)-t+c}};case"week":var y=c?c.startDay:void 0,b=/d|H|m|s|S/.test(r),_={};return t.forEach(function(t,e){var a=t.dateObj,t="".concat(a.yyyy,"-").concat(a.W);if(_[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.getWhatWeek(a.date,n-r,y,y),i=_slicedToArray(_xeUtils.default.toDateString(l,"yyyy-M-MM-dd-HH-mm-ss").split("-"),2),o=i[0],i=i[1],l="".concat(_xeUtils.default.getYearWeek(l,c?c.startDay:void 0)),i=(checkWeekOfsetYear(l,i)&&(o="".concat(Number(o)+1)),"".concat(o,"-").concat(l));_[i]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),t=b?t:_xeUtils.default.getWhatWeek(t,0,"first",y),a=parseWeekObj(t,y),a="".concat(a.yyyy,"-").concat(a.W),r=_xeUtils.default.getWhatWeek(t,0,"first",y),e=b?e:_xeUtils.default.getWhatWeek(e,0,"first",y),l=parseWeekObj(e,y),l="".concat(l.yyyy,"-").concat(l.W),i=_xeUtils.default.getWhatWeek(e,0,"first",y),o=0,n=1,t=(b&&(o=(t.getTime()-r.getTime())/dayMs/7,n=(e.getTime()-i.getTime())/dayMs/7,u)&&(o*=u,n*=u),(_[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(_[l]||0)-t+n}};case"day":case"date":var T="yyyy-MM-dd",D=/H|m|s|S/.test(r),w={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,T);if(w[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(a.date,n-r),T);w[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,T),t=D?t:_xeUtils.default.getWhatDay(t,0,"first"),r=_xeUtils.default.getWhatDay(t,0,"first"),l=_xeUtils.default.toDateString(e,T),e=D?e:_xeUtils.default.getWhatDay(e,0,"last"),i=_xeUtils.default.getWhatDay(e,0,"first"),o=0,n=1,t=(D&&(o=(t.getTime()-r.getTime())/dayMs,n=(e.getTime()-i.getTime())/dayMs,u)&&(o*=u,n*=u),(w[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(w[l]||0)-t+n}};case"hour":var U="yyyy-MM-dd HH",W=/m|ss|S/.test(r),E={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,U);if(E[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(a.date,n-r),U);E[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,U),t=W?t:_xeUtils.default.getWhatHours(t,0,"first"),r=_xeUtils.default.getWhatHours(t,0,"first"),l=_xeUtils.default.toDateString(e,U),e=W?e:_xeUtils.default.getWhatHours(e,0,"last"),i=_xeUtils.default.getWhatHours(e,0,"first"),o=0,n=1,t=(W&&(o=(t.getTime()-r.getTime())/hourMs,n=(e.getTime()-i.getTime())/hourMs,u)&&(o*=u,n*=u),(E[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(E[l]||0)-t+n}};case"minute":var M="yyyy-MM-dd HH:mm",k=/s|S/.test(r),L={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,M);if(L[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(a.date,n-r),M);L[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,M),t=k?t:_xeUtils.default.getWhatMinutes(t,0,"first"),r=_xeUtils.default.getWhatMinutes(t,0,"first"),l=_xeUtils.default.toDateString(e,M),e=k?e:_xeUtils.default.getWhatMinutes(e,0,"last"),i=_xeUtils.default.getWhatMinutes(e,0,"first"),o=0,n=1,t=(k&&(o=(t.getTime()-r.getTime())/minuteMs,n=(e.getTime()-i.getTime())/minuteMs,u)&&(o*=u,n*=u),(L[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(L[l]||0)-t+n}};case"second":var O="yyyy-MM-dd HH:mm:ss",C=/S/.test(r),H={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,O);if(H[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(a.date,n-r),O);H[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,O),t=C?t:_xeUtils.default.getWhatSeconds(t,0,"first"),r=_xeUtils.default.getWhatSeconds(t,0,"first"),l=_xeUtils.default.toDateString(e,O),e=C?e:_xeUtils.default.getWhatSeconds(e,0,"last"),i=_xeUtils.default.getWhatSeconds(e,0,"first"),o=0,n=1,t=(C&&(o=(t.getTime()-r.getTime())/secondMs,n=(e.getTime()-i.getTime())/secondMs,u)&&(o*=u,n*=u),(H[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(H[l]||0)-t+n}}}}return function(){return{offsetLeftSize:0,offsetWidthSize:0}}}function handleParseColumn(t){var i,o,n,c,e,a,r,l,s,u,d,f,h=t.$xeGantt,p=t.reactData,g=t.internalData,m=h.treeConfig,S=p.minViewDate,x=p.maxViewDate,v=handleColumnHeader(t),y=v.fullCols,v=v.groupCols;S&&x&&(i=g.xeTable)&&(o=h.computeStartField,n=h.computeEndField,c=h.computeTypeField,S=i.getReactData().isRowGroupStatus,h=(x=i.getInternalData()).afterFullData,e=x.afterTreeFullData,x=x.afterGroupFullData,a=i.computeAggregateOpts,l=(r=i.computeTreeOpts).transform,s=r.children||r.childrenField,u={},d=createChartRender(t,y),f=function(t){var e=i.getRowid(t),a=_xeUtils.default.get(t,o),r=_xeUtils.default.get(t,n),l=(0,_util.getTaskType)(_xeUtils.default.get(t,c));(0,_util.hasMilestoneTask)(l)&&(r=a=a||r),(0,_util.hasSubviewTask)(l)?u[e]={row:t,rowid:e,oLeftSize:0,oWidthSize:0}:a&&r&&(a=(l=d(a,r)).offsetLeftSize,u[e]={row:t,rowid:e,oLeftSize:a,oWidthSize:l.offsetWidthSize})},S?(S=a.mapChildrenField)&&_xeUtils.default.eachTree(x,f,{children:S}):m?_xeUtils.default.eachTree(e,f,{children:l?r.mapChildrenField:s}):h.forEach(f),g.chartMaps=u),g.visibleColumn=y,p.headerGroups=v,updateTodayData(t),updateScrollXStatus(t),handleTableColumn(t)}function handleUpdateData(l){var i,o,n,t,e,a,r,c,s,u,d=l.$xeGantt,f=l.reactData,h=l.internalData,p=d.reactData.linkList,g=d.treeConfig,m=h.scrollXStore,S=h.xeTable,x=null,v=null,y=[];S&&(i=d.computeStartField,o=d.computeEndField,n=d.computeTypeField,d=S.getReactData().isRowGroupStatus,e=(t=S.getInternalData()).afterFullData,a=t.afterTreeFullData,r=S.computeAggregateOpts,c=(S=S.computeTreeOpts).transform,s=S.children||S.childrenField,u=function(t){var e=_xeUtils.default.get(t,i),a=_xeUtils.default.get(t,o),r=_xeUtils.default.get(t,n),e=e||a;!(0,_util.hasMilestoneTask)(r)&&a||(a=e),e&&(r=parseStringDate(l,e),!x||x.getTime()>r.getTime())&&(x=r),a&&(e=parseStringDate(l,a),!v||v.getTime()<e.getTime())&&(v=e),y.push(t)},d?(d=r.mapChildrenField)&&_xeUtils.default.eachTree(t.afterGroupFullData,u,{children:d}):g?_xeUtils.default.eachTree(a,u,{children:c?S.mapChildrenField:s}):e.forEach(u)),m.startIndex=0,m.endIndex=Math.max(1,m.visibleSize),f.minViewDate=x,f.maxViewDate=v,h.startMaps={},h.endMaps={},handleParseColumn(l),handleCriticalPath(l,y,p)}function forwardCriticalPathLowerBound(t,e,a,r){switch(t){case FinishToStart:return a;case StartToFinish:return e-r;case StartToStart:return e;case FinishToFinish:return a-r;default:return 0}}function backwardCriticalPathUpperBound(t,e,a,r){switch(t){case FinishToStart:return e;case StartToFinish:return a+r;case StartToStart:return e+r;case FinishToFinish:return a;default:return-1}}function isCriticalPathLinkTight(t,e,a,r,l,i){switch(t){case FinishToStart:return Math.abs(a-r)<i;case StartToFinish:return Math.abs(e-l)<i;case StartToStart:return Math.abs(e-r)<i;case FinishToFinish:return Math.abs(a-l)<i;default:return!1}}function handleCriticalPath(t,e,a){var r=t.$xeGantt,t=t.internalData,l=r.reactData,i=r.internalData,r=r.computeTaskBarOpts,R=t.xeTable,X=[],F=new Map,V=new Map;if(i.criticalRowList=X,i.criticalRowMaps=F,i.criticalLinkKeyMaps=V,r.showCriticalPath&&a.length&&e.length&&R){var I,z=t.chartMaps,o=new Map,n=_createForOfIteratorHelper(e);try{for(n.s();!(I=n.n()).done;){var $=I.value,c=R.getRowid($),j=z[c];o.set(c,{row:$,rowid:c,duration:j?j.oWidthSize:0,incoming:[],outgoing:[],indeg:0,ES:0,EF:0,LS:0,LF:0})}}catch(t){n.e(t)}finally{n.f()}var G,B=[],s=_createForOfIteratorHelper(a);try{for(s.s();!(G=s.n()).done;){var u,d,q,f=G.value,A=""+f.from,P=""+f.to;o.has(A)&&o.has(P)&&A!=P&&(u={from:f.from,to:f.to,type:_xeUtils.default.toNumber(f.type)||0,raw:f},B.push(u),d=o.get(""+f.to),(q=o.get(""+f.from))&&q.outgoing.push(u),d)&&(d.incoming.push(u),d.indeg++)}}catch(t){s.e(t)}finally{s.f()}for(var h=[],p=(o.forEach(function(t){0===t.indeg&&h.push(t)}),[]),g=0;g<h.length;g++){var N,Q=h[g],m=(p.push(Q),_createForOfIteratorHelper(Q.outgoing));try{for(m.s();!(N=m.n()).done;){var K,J=N.value,S=o.get(""+J.to);S&&(K=S.indeg-1,0==(S.indeg=K))&&h.push(o.get(""+J.to))}}catch(t){m.e(t)}finally{m.f()}}if(p.length!==o.size)(l.criticalRowIds.length||l.criticalLinks.length)&&l.criticalPathFlag++,l.criticalLinks=[],l.criticalRowIds=[];else{for(var x=0,v=0,Z=p;v<Z.length;v++){var tt,y=Z[v],b=0,_=_createForOfIteratorHelper(y.incoming);try{for(_.s();!(tt=_.n()).done;){var et,at=tt.value,T=o.get(""+at.from);T&&b<(et=forwardCriticalPathLowerBound(at.type,T.ES,T.EF,y.duration))&&(b=et)}}catch(t){_.e(t)}finally{_.f()}y.ES=b,y.EF=b+y.duration,y.EF>x&&(x=y.EF)}for(var D=p.length-1;0<=D;D--){var rt,w=p[D],U=x,W=_createForOfIteratorHelper(w.outgoing);try{for(W.s();!(rt=W.n()).done;){var lt,it=rt.value,E=o.get(""+it.to);E&&(lt=backwardCriticalPathUpperBound(it.type,E.LS,E.LF,w.duration))<U&&(U=lt)}}catch(t){W.e(t)}finally{W.f()}w.LF=U,w.LS=U-w.duration}for(var M=new Set,ot=[],k=0,nt=p;k<nt.length;k++){var L=nt[k];Math.abs(L.LS-L.ES)<1e-6&&(M.add(L.rowid),ot.push(L.rowid),X.push(L.row),F.set(L.rowid,L.row))}for(var ct=[],O=0,st=B;O<st.length;O++){var C=st[O],H=o.get(""+C.to),Y=o.get(""+C.from);H&&Y&&M.has(Y.rowid)&&M.has(H.rowid)&&isCriticalPathLinkTight(C.type,Y.ES,Y.EF,H.ES,H.EF,1e-6)&&(ct.push(C.raw),V.set(getTaskLinkKey(C.from,C.to,C.type),C.raw))}l.criticalLinks=ct,l.criticalRowIds=ot,l.criticalPathFlag++}}else(l.criticalRowIds.length||l.criticalLinks.length)&&l.criticalPathFlag++,l.criticalLinks=[],l.criticalRowIds=[]}function calcScrollbar(t){var e=t.$xeGantt,a=t.reactData,r=e.reactData,l=a.scrollXWidth,i=a.scrollYHeight,o=t.internalData.elemStore,e=e.computeScrollbarOpts,o=(0,_util.getRefElem)(o["main-body-wrapper"]),n=t.$refs.refScrollXHandleElem,t=t.$refs.refScrollYHandleElem,c=!1;o&&(c=i>o.clientHeight,t&&(i=e.width||t.offsetWidth-t.clientWidth||14,a.scrollbarWidth=i,r.scrollbarWidth=i),a.overflowY=c,r.overflowY=c,t=l>o.clientWidth,n&&(i=e.height||n.offsetHeight-n.clientHeight||14,a.scrollbarHeight=i,r.scrollbarHeight=i),a.overflowX=t,r.overflowX=t)}function handleSubTaskMinMaxSize(t,a,e){var r=t.$xeGantt,l=t.internalData.chartMaps,t=a.computeTreeOpts,t=t.children||t.childrenField,i=r.computeTypeField,o=0,n=0;return _xeUtils.default.eachTree(e,function(t){var e=a.getRowid(t),t=_xeUtils.default.get(t,i);(0,_util.hasSubviewTask)(t)||(t=e?l[e]:null)&&(n=Math.max(n,t.oLeftSize+t.oWidthSize),o=o?Math.min(o,t.oLeftSize):t.oLeftSize)},{children:t}),{minSize:o,maxSize:n}}function updateTaskChartStyle(i){var o,t=i.$xeGantt,e=i.internalData,t=t.internalData,n=e.xeTable,c=t.dragBarRow,s=i.reactData.viewCellWidth,u=e.chartMaps,t=(0,_util.getRefElem)(e.elemStore["main-chart-task-wrapper"]);return t&&n&&(e=n.computeTreeOpts,o=e.children||e.childrenField,_xeUtils.default.arrayEach(t.children,function(t){var e,a,r,l=t.children[0];l&&(t=t.getAttribute("rowid"),c&&n.getRowid(c)===t||(r=(t=t?u[t]:null)?t.row:null,(0,_dom.hasClass)(l,"is--subview")?(e=l.firstElementChild)&&((0,_dom.hasClass)(e,"is--inline")?_xeUtils.default.arrayEach(e.children,function(t){var e,a,t=t.children[0],r=t.getAttribute("rowid")||"",r=r?u[r]:null;r&&(a=r.row,(0,_dom.hasClass)(t,"is--subview")?(a=a[o],e=(a=handleSubTaskMinMaxSize(i,n,a)).minSize,a=a.maxSize,t.style.left="".concat(s*e,"px"),t.style.width="".concat(s*(a-e),"px")):(t.style.left="".concat((0,_util.getTaskBarLeft)(r,s),"px"),(0,_dom.hasClass)(t,"is--milestone")||(t.style.width="".concat((0,_util.getTaskBarWidth)(r,s),"px"))))}):(e=(e=e.children[0])?e.children[0]:null)&&(r=r?r[o]:[],a=(r=handleSubTaskMinMaxSize(i,n,r)).minSize,r=r.maxSize,e.style.left="".concat(s*a,"px"),e.style.width="".concat(s*(r-a),"px"))):(l.style.left="".concat((0,_util.getTaskBarLeft)(t,s),"px"),(0,_dom.hasClass)(l,"is--milestone")||(l.style.width="".concat((0,_util.getTaskBarWidth)(t,s),"px")))))})),i.$nextTick()}function updateStyle(t){var e,a,r,l,i,o,n,c,s,u=t.$xeGantt,d=t.reactData,f=t.internalData,h=u.reactData.showLeftView,p=d.scrollbarWidth,g=d.scrollbarHeight,m=d.headerGroups,S=d.tableColumn,x=f.elemStore,v=f.visibleColumn,f=f.xeTable,y=t.$refs.refElem;if(y&&u)return o=t.computeScrollYVisible,c=u.computeScrollbarXToTop,l=u.computeScrollbarYToLeft,n=t.$refs.refScrollXLeftCornerElem,s=t.$refs.refScrollXRightCornerElem,i=t.$refs.refScrollXVirtualElem,p=p,g=g,r=a=e=0,f&&(e=(f=f.getInternalData()).tBodyHeight,a=f.tHeaderHeight,r=f.tFooterHeight),(!(f="visible")===o||"hidden"===o||l&&h)&&(p=0,f="hidden"),(o=(0,_util.getRefElem)(x["main-header-scroll"]))&&(o.style.height="".concat(a,"px"),o.style.setProperty("--vxe-ui-gantt-view-cell-height","".concat(a/m.length,"px"))),(l=(0,_util.getRefElem)(x["main-body-scroll"]))&&(l.style.height="".concat(e,"px")),(h=(0,_util.getRefElem)(x["main-footer-scroll"]))&&(h.style.height="".concat(r,"px")),i&&(i.style.height="".concat(g,"px"),i.style.visibility="visible"),(o=t.$refs.refScrollXWrapperElem)&&(o.style.left=c?"".concat(p,"px"):"",o.style.width="".concat(y.clientWidth-p,"px")),n&&(n.style.width=c?"".concat(p,"px"):"",n.style.display=c&&g?"block":""),s&&(s.style.width=c?"":"".concat(p,"px"),s.style.display=!c&&g?"block":""),(m=t.$refs.refScrollYVirtualElem)&&(m.style.width="".concat(p,"px"),m.style.height="".concat(e+a+r,"px"),m.style.visibility=f),(h=t.$refs.refScrollYTopCornerElem)&&(h.style.height="".concat(a,"px"),h.style.display=a?"block":""),(i=t.$refs.refScrollYWrapperElem)&&(i.style.height="".concat(e,"px"),i.style.top="".concat(a,"px")),(o=t.$refs.refScrollYBottomCornerElem)&&(o.style.height="".concat(r,"px"),o.style.top="".concat(a+e,"px"),o.style.display=r?"block":""),y=40,s=y=(n=t.$refs.refColInfoElem)?n.clientWidth||40:y,v.length&&(s=Math.max(0,y*v.length),l)&&0<(g=(c=l.clientWidth)-s)&&(y+=Math.max(0,g/v.length),s=c),d.viewCellWidth=y,p=(0,_util.getRefElem)(x["main-header-table"]),m=(0,_util.getRefElem)(x["main-body-table"]),f=y*S.length,p&&(p.style.width="".concat(s,"px")),m&&(m.style.width="".concat(f,"px")),d.scrollXWidth=s,Promise.all([updateTaskChartStyle(t),u.handleUpTaskLinkStyle?u.handleUpTaskLinkStyle(t):null])}function handleRecalculateStyle(t){var e=t.internalData,a=t.$xeGantt,r=t.$refs.refElem;return e.rceRunTime=Date.now(),r&&r.clientWidth&&a?(calcScrollbar(t),updateStyle(t),computeScrollLoad(t)):t.$nextTick()}function _handleLazyRecalculate(i){var o=i.internalData;return new Promise(function(t){var e=o.rceTimeout,a=o.rceRunTime,r=o.xeTable,l=30;r&&(l=r.computeResizeOpts.refreshDelay||l),i.updateScrollbar(),!e||(clearTimeout(e),a&&a+(l-5)<Date.now())?t(handleRecalculateStyle(i)):i.$nextTick(function(){t()}),o.rceTimeout=setTimeout(function(){o.rceTimeout=void 0,handleRecalculateStyle(i)},l)})}function computeScrollLoad(r){var l=r.reactData,i=r.internalData;return r.$nextTick().then(function(){var t,e=l.scrollXLoad,a=i.scrollXStore;e?(t=(e=handleVirtualXVisible(r)).toVisibleIndex,e=e.visibleSize,a.preloadSize=1,a.offsetSize=2,a.visibleSize=e,a.endIndex=Math.max(a.startIndex+a.visibleSize+2,a.endIndex),a.visibleStartIndex=Math.max(a.startIndex,t),a.visibleEndIndex=Math.min(a.endIndex,t+e),updateScrollXData(r).then(function(){loadScrollXData(r)})):updateScrollXSpace(r)})}function handleVirtualXVisible(t){var e,a=t.reactData.viewCellWidth,t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]);return t?(e=t.clientWidth,t=t.scrollLeft,t=Math.floor(t/a)-1,e=Math.ceil(e/a)+1,{toVisibleIndex:Math.max(0,t),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}}function loadScrollXData(t){var e=t.reactData.isScrollXBig,a=t.internalData.scrollXStore,r=a.preloadSize,l=a.startIndex,i=a.endIndex,o=a.offsetSize,n=handleVirtualXVisible(t),c=n.toVisibleIndex,n=n.visibleSize,e={startIndex:Math.max(0,e?c-1:c-1-o-r),endIndex:e?c+n:c+n+o+r},o=(a.visibleStartIndex=c-1,a.visibleEndIndex=c+n+1,e.startIndex),r=e.endIndex;!(c<=l||i-n-1<=c)||l===o&&i===r||(a.startIndex=o,a.endIndex=r,updateScrollXData(t))}function updateScrollXData(t){return handleTableColumn(t),updateScrollXSpace(t),t.$nextTick()}function updateScrollXStatus(t){return t.reactData.scrollXLoad=!0}function handleTableColumn(t){var e=t.reactData,t=t.internalData,a=e.scrollXLoad,r=t.visibleColumn,t=t.scrollXStore,a=a?r.slice(t.startIndex,t.endIndex):r.slice(0);e.tableColumn=a}function updateScrollXSpace(t){var e=t.reactData,a=t.internalData,r=e.scrollXLoad,l=e.scrollXWidth,i=e.viewCellWidth,o=a.elemStore,a=a.scrollXStore,n=(0,_util.getRefElem)(o["main-body-table"]),a=a.startIndex,c=0,s=(r&&(c=Math.max(0,a*i)),n&&(n.style.transform="translate(".concat(c,"px, ").concat(e.scrollYTop||0,"px)")),l),a=(["header","body","footer"].forEach(function(t){t=(0,_util.getRefElem)(o["main-".concat(t,"-xSpace")]);t&&(t.style.width=r?"".concat(s,"px"):"")}),t.$refs.refScrollXSpaceElem),i=(a&&(a.style.width="".concat(s,"px")),(0,_util.getRefElem)(o["main-chart-before-wrapper"])),n=i?i.firstElementChild:null,l=(n&&(n.style.width="".concat(s,"px")),(0,_util.getRefElem)(o["main-chart-after-wrapper"])),a=l?l.firstElementChild:null;return a&&(a.style.width="".concat(s,"px")),e.scrollXLeft=c,e.scrollXWidth=s,calcScrollbar(t),t.$nextTick()}function triggerScrollXEvent(t){loadScrollXData(t)}function updateScrollYSpace(t){var e=t.reactData,a=t.internalData,r=e.scrollYLoad,l=e.overflowY,i=a.elemStore,a=a.xeTable,o=(0,_util.getRefElem)(i["main-body-scroll"]),n=(0,_util.getRefElem)(i["main-body-table"]),c=0,s=0,u=!1,a=(a&&(c=(a=a.getReactData()).scrollYTop,s=a.scrollYHeight,u=a.isScrollYBig),s),d=c,f=0,o=(o&&(f=o.clientHeight),u&&(d=o&&n&&o.scrollTop+f>=maxYHeight?maxYHeight-n.clientHeight:c/(s-f)*(maxYHeight-f),a=maxYHeight),r&&l||(d=0),(0,_util.getRefElem)(i["main-chart-task-wrapper"])),c=(n&&(n.style.transform="translate(".concat(e.scrollXLeft||0,"px, ").concat(d,"px)")),o&&(o.style.transform="translateY(".concat(d,"px)")),(0,_util.getRefElem)(i["main-body-ySpace"])),f=(c&&(c.style.height=a?"".concat(a,"px"):""),t.$refs.refScrollYSpaceElem),r=(f&&(f.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-before-wrapper"])),l=r?r.firstElementChild:null,n=(l&&(l.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-after-wrapper"])),o=n?n.firstElementChild:null,c=(o&&(o.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-now-line"]));return c&&(c.style.height=a?"".concat(a,"px"):""),e.scrollYTop=d,e.scrollYHeight=s,e.isScrollYBig=u,calcScrollbar(t),t.$nextTick().then(function(){updateStyle(t)})}function checkLastSyncScroll(t,e,a){var r=t.reactData,l=t.internalData,t=l.lcsTimeout;r.lazScrollLoading=!0,t&&clearTimeout(t),l.lcsTimeout=setTimeout(function(){var t=l.xeTable;l.lcsRunTime=Date.now(),l.lcsTimeout=void 0,l.intoRunScroll=!1,l.inVirtualScroll=!1,l.inWheelScroll=!1,l.inHeaderScroll=!1,l.inBodyScroll=!1,l.inFooterScroll=!1,l.isSyncTableScrollTop=!1,r.lazScrollLoading=!1,t&&(t.getInternalData().isSyncGanttScrollTop=!1)},200)}function handleScrollData(t,e,a,r,l){var i=t.reactData,o=t.internalData;a&&(o.lastScrollLeft=l),e&&(o.lastScrollTop=r),i.lastScrollTime=Date.now(),checkLastSyncScroll(t,a,e)}function syncTableScrollTop(t,e){var t=t.internalData;t.isSyncTableScrollTop||(t=t.xeTable)&&(t.getInternalData().isSyncGanttScrollTop=!0,t.handleSyncScrollTop({scrollTop:e}))}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",mixins:[_core.globalMixins.vScrollbarMixin,_core.globalMixins.initVScrollbarMixin],inject:{$xeGantt:{default:null}},provide:function(){return{$xeGanttView:this}},props:{},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:createReactData(),internalData:createInternalData(),scrollDefaultConf:Object.assign({},getConfig().scrollbar),reScrollFlag:0}},computed:Object.assign(Object.assign({},{}),{computeGanttIsVScrollbar:function(){return this.$xeGantt.computeIsVScrollbar},computeScrollbarXOpts:function(){var t=this.$xeGantt.computeScrollbarOpts;return t.x?Object.assign({},t.x,t.xConfig):t.xConfig||{}},computeScrollbarYOpts:function(){var t=this.$xeGantt.computeScrollbarOpts;return t.y?Object.assign({},t.y,t.yConfig):t.yConfig||{}},computeScrollXHeight:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarXOpts;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.height,t.height),e.height))},computeScrollYWidth:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarYOpts;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.width,t.width),e.width))},computeScrollXVisible:function(){var t=this.$xeGantt.computeScrollbarOpts,e=this.computeScrollbarXOpts;return(0,_utils.getDefaultConfig)(e.visible,t.visible)},computeScrollYVisible:function(){var t=this.$xeGantt.computeScrollbarOpts,e=this.computeScrollbarYOpts;return(0,_utils.getDefaultConfig)(e.visible,t.visible)},computeScrollXAutoHide:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarXOpts;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.autoHide,t.autoHide),e.autoHide)},computeScrollYAutoHide:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarYOpts;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.autoHide,t.autoHide),e.autoHide)},computeScrollbarXToTop:function(){return"top"===this.computeScrollbarXOpts.position},computeScrollbarYToLeft:function(){return"left"===this.computeScrollbarYOpts.position},computeScrollbarWrapperClss:function(){var t=this.reactData,e=this.$xeGantt,a=t.yThumbHeight,t=t.xThumbWidth,r=e.computeScrollbarXToTop,e=e.computeScrollbarYToLeft,l=this.computeScrollXVisible,i=this.computeScrollYVisible;return domUtils.buildClass(["vxe-scrollbar is--virtual","ov-x--".concat(!1===l?"hidden":"visible"),"ov-y--".concat(!1===i?"hidden":"visible"),"sx-pos--".concat(r?"top":"bottom"),"sy-pos--".concat(e?"left":"right")],{"overflow-y":a,"overflow-x":t})},computeScaleDateList:function(){var t=this.$xeGantt,e=this.reactData,a=t.reactData,r=e.minViewDate,l=e.maxViewDate,e=t.computeMinScale,i=t.computeScaleStep,t=t.computeTaskViewOpts.gridding,o=[];if(e&&r&&l){var n=e.type,c=e.startDay,s=-(a.currLeftSpacing+_xeUtils.default.toNumber(t&&t.leftSpacing||0)),u=a.currRightSpacing+_xeUtils.default.toNumber(t&&t.rightSpacing||0);switch(0<i&&(s*=i,u*=i),n){case"year":for(var d=_xeUtils.default.getWhatYear(r,s,"first"),f=_xeUtils.default.getWhatYear(l,u,"first");d<=f;){var h=d;o.push(h),d=_xeUtils.default.getWhatYear(d,i)}break;case"quarter":for(var p=_xeUtils.default.getWhatQuarter(r,s,"first"),g=_xeUtils.default.getWhatQuarter(l,u,"first");p<=g;){var m=p;o.push(m),p=_xeUtils.default.getWhatQuarter(p,i)}break;case"month":for(var S=_xeUtils.default.getWhatMonth(r,s,"first"),x=_xeUtils.default.getWhatMonth(l,u,"first");S<=x;){var v=S;o.push(v),S=_xeUtils.default.getWhatMonth(S,i)}break;case"week":for(var y=_xeUtils.default.getWhatWeek(r,s,c,c),b=_xeUtils.default.getWhatWeek(l,u,c,c);y<=b;){var _=y;o.push(_),y=_xeUtils.default.getWhatWeek(y,i)}break;case"day":case"date":for(var T=_xeUtils.default.getWhatDay(r,s,"first"),D=_xeUtils.default.getWhatDay(l,u,"first");T<=D;){var w=T;o.push(w),T=_xeUtils.default.getWhatDay(T,i)}break;case"hour":for(var U=_xeUtils.default.getWhatHours(r,s,"first"),W=_xeUtils.default.getWhatHours(l,u,"first");U<=W;){var E=U;o.push(E),U=_xeUtils.default.getWhatHours(U,i)}break;case"minute":for(var M=_xeUtils.default.getWhatMinutes(r,s,"first"),k=_xeUtils.default.getWhatMinutes(l,u,"first");M<=k;){var L=M;o.push(L),M=_xeUtils.default.getWhatMinutes(M,i)}break;case"second":for(var O=_xeUtils.default.getWhatSeconds(r,s,"first"),C=_xeUtils.default.getWhatSeconds(l,u,"first");O<=C;){var H=O;o.push(H),O=_xeUtils.default.getWhatSeconds(O,i)}}}return o},computeNowLineLeft:function(){var t=this.$xeGantt,e=this.reactData,a=this.internalData,r=t.reactData,l=e.minViewDate,i=e.maxViewDate,o=e.viewCellWidth,n=a.visibleColumn,e=a.todayDateMaps,a=t.computeMinScale,c=t.computeTaskViewOpts.showNowLine,t=t.computeTaskNowLineOpts.mode,r=r.nowTime,s=0;if(c&&a&&l&&i&&r>=l.getTime()&&r<=i.getTime()){for(var c=e[a.type],u=_xeUtils.default.toStringDate(c),d=null,f=null,h=0;h<n.length;h++){var p=n[h];if(p.startDateObj.date<=u&&p.endDateObj.date>=u){d=p,s=h*o,f=n[h+1];break}}"progress"===t?d&&f&&(l=d.dateObj.date.getTime(),s+=Math.max(0,Math.min(1,(r-l)/(f.dateObj.date.getTime()-l)))*o):"center"===t?s+=o/2:"end"===t&&(s+=o-1)}return s}}),methods:{getScrollViewElem:function(){var t=this.internalData.elemStore;return(0,_util.getRefElem)(t["main-body-scroll"])},refreshData:function(){var e=this,a=e.internalData;return handleUpdateData(e),handleRecalculateStyle(e),e.$nextTick().then(function(){var t=a.xeTable;if(handleRecalculateStyle(e),t)return t.recalculate()})},updateViewData:function(t){var e=this,a=e.$xeGantt,r=e.reactData,a=a.reactData,l=e.internalData.xeTable;return l&&(l=l.getReactData().tableData,r.tableData=l,t&&(a.currLeftSpacing=0,a.currRightSpacing=0,handleUpdateData(e)),handleRecalculateStyle(e)),e.$nextTick()},connectUpdate:function(t){var t=t.$table,e=this.internalData;return t&&(e.xeTable=t),this.$nextTick()},handleUpdateStyle:function(){return updateStyle(this)},handleLazyRecalculate:function(){return _handleLazyRecalculate(this)},handleUpdateCurrentRow:function(t){var e=this.internalData.xeTable,a=this.$refs.refElem;e&&a&&(t?(e.computeRowOpts.isCurrent||e.highlightCurrentRow)&&_xeUtils.default.arrayEach(a.querySelectorAll('[rowid="'.concat(e.getRowid(t),'"]')),function(t){return(0,_dom.addClass)(t,"row--current")}):_xeUtils.default.arrayEach(a.querySelectorAll(".row--current"),function(t){return(0,_dom.removeClass)(t,"row--current")}))},handleUpdateHoverRow:function(t){var e=this.internalData.xeTable,a=this.$refs.refElem;e&&a&&(t?_xeUtils.default.arrayEach(a.querySelectorAll('.vxe-body--row[rowid="'.concat(e.getRowid(t),'"]')),function(t){return(0,_dom.addClass)(t,"row--hover")}):_xeUtils.default.arrayEach(a.querySelectorAll(".vxe-body--row.row--hover"),function(t){return(0,_dom.removeClass)(t,"row--hover")}))},handleSyncScrollTop:function(t){var e=this.internalData,t=t.scrollTop,e=e.elemStore,e=(0,_util.getRefElem)(e["main-body-scroll"]);e&&(e.scrollTop=t)},handleScrollEvent:function(t,e,a,r,l){var i,o,n,c,s,u,d,f,h,p,g,m,S,x=this.internalData,v=this.$xeGantt,y=x.xeTable,b=x.lastScrollLeft,_=x.lastScrollTop,x=(0,_util.getRefElem)(x.elemStore["main-body-scroll"]);x&&y&&(i=x.clientHeight,o=x.clientWidth,n=x.scrollHeight,x=x.scrollWidth,u="",p=h=f=d=s=g=c=m=!1,a&&(S=y.computeScrollXThreshold,(g=l<=0)||(s=x-1<=l+o),b<l?(u="right",x-S<=l+o&&(p=!0)):(u="left",l<=S&&(h=!0))),e&&(b=y.computeScrollYThreshold,(m=r<=0)||(c=n-1<=r+i),_<r?(u="bottom",n-b<=r+i&&(f=!0)):(u="top",r<=b&&(d=!0))),this.updateThumbOffset(),handleScrollData(this,e,a,r,l),S={source:sourceType,scrollTop:r,scrollLeft:l,bodyHeight:i,bodyWidth:o,scrollHeight:n,scrollWidth:x,isX:a,isY:e,isTop:m,isBottom:c,isLeft:g,isRight:s,direction:u},(f||d||p||h)&&v.dispatchEvent("scroll-boundary",S,t),v.dispatchEvent("scroll",S,t))},triggerHeaderScrollEvent:function(t){var e,a,r,l=this.internalData,i=l.elemStore;l.inVirtualScroll||l.inBodyScroll||l.inFooterScroll||(e=t.currentTarget,i=(0,_util.getRefElem)(i["main-body-scroll"]),a=this.$refs.refScrollXHandleElem,i&&e&&(r=e.scrollLeft,l.inHeaderScroll=!0,(0,_dom.setScrollLeft)(a,r),(0,_dom.setScrollLeft)(i,r),this.handleScrollEvent(t,!1,!0,e.scrollTop,r)))},triggerBodyScrollEvent:function(t){var e,a,r,l,i,o=this,n=o.reactData,c=o.internalData,n=n.scrollXLoad,s=c.elemStore,u=c.lastScrollLeft,d=c.lastScrollTop;c.inVirtualScroll||c.inHeaderScroll||c.inFooterScroll||(e=t.currentTarget,s=(0,_util.getRefElem)(s["main-header-scroll"]),a=o.$refs.refScrollXHandleElem,r=o.$refs.refScrollYHandleElem,u=(l=e.scrollLeft)!==u,d=(i=e.scrollTop)!==d,c.inBodyScroll=!0,c.scrollRenderType="",d&&((0,_dom.setScrollTop)(r,i),syncTableScrollTop(o,i)),u&&(c.inBodyScroll=!0,(0,_dom.setScrollLeft)(a,l),(0,_dom.setScrollLeft)(s,l),n)&&triggerScrollXEvent(o),o.handleScrollEvent(t,d,u,e.scrollTop,l))},triggerVirtualScrollXEvent:function(t){var e,a,r,l=this.reactData,i=this.internalData,l=l.scrollXLoad,o=i.elemStore;i.inHeaderScroll||i.inBodyScroll||(e=t.currentTarget,a=(0,_util.getRefElem)(o["main-header-scroll"]),o=(0,_util.getRefElem)(o["main-body-scroll"]),e&&(r=e.scrollLeft,i.inVirtualScroll=!0,(0,_dom.setScrollLeft)(a,r),(0,_dom.setScrollLeft)(o,r),l&&triggerScrollXEvent(this),this.handleScrollEvent(t,!1,!0,e.scrollTop,r)))},triggerVirtualScrollYEvent:function(t){var e,a,r=this.internalData,l=r.elemStore;r.inHeaderScroll||r.inBodyScroll||(e=t.currentTarget,l=(0,_util.getRefElem)(l["main-body-scroll"]),e&&(a=e.scrollTop,r.inVirtualScroll=!0,(0,_dom.setScrollTop)(l,a),syncTableScrollTop(this,a),this.handleScrollEvent(t,!0,!1,a,e.scrollLeft)))},handleUpdateSXSpace:function(){return updateScrollXSpace(this)},handleUpdateSYSpace:function(){return updateScrollYSpace(this)},handleUpdateSYStatus:function(t){this.reactData.scrollYLoad=t},updateScrollbar:function(){var t=this;return t.computeGanttIsVScrollbar?t.$nextTick().then(function(){t.updateThumbSize(),t.updateThumbOffset()}):Promise.resolve()},handleGlobalResizeEvent:function(){_handleLazyRecalculate(this)},bindScrollbarResize:function(){var t,e,a,r=this,l=r.internalData,i=l.elemStore;r.computeGanttIsVScrollbar&&!l.scrollObserver&&(t=r.$refs.refElem,e=(0,_util.getRefElem)(i["main-body-xSpace"]),i=(0,_util.getRefElem)(i["main-body-xSpace"]),a=globalResize.create(function(){r.reScrollFlag++}),t&&a.observe(t),e&&a.observe(e),i&&a.observe(i),l.scrollObserver=a)},renderScrollX:function(t){return t("div",{key:"vsx",ref:"refScrollXVirtualElem",class:"vxe-gantt-view--scroll-x-virtual"},[t("div",{ref:"refScrollXLeftCornerElem",class:"vxe-gantt-view--scroll-x-left-corner"}),t("div",{ref:"refScrollXWrapperElem",class:"vxe-gantt-view--scroll-x-wrapper"},[t("div",{ref:"refScrollXHandleElem",class:"vxe-gantt-view--scroll-x-handle",on:{scroll:this.triggerVirtualScrollXEvent}},[t("div",{ref:"refScrollXSpaceElem",class:"vxe-gantt-view--scroll-x-space"})]),t("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),t("div",{ref:"refScrollXRightCornerElem",class:"vxe-gantt-view--scroll-x-right-corner"})])},renderScrollY:function(t){return t("div",{ref:"refScrollYVirtualElem",class:"vxe-gantt-view--scroll-y-virtual"},[t("div",{ref:"refScrollYTopCornerElem",class:"vxe-gantt-view--scroll-y-top-corner"}),t("div",{ref:"refScrollYWrapperElem",class:"vxe-gantt-view--scroll-y-wrapper"},[t("div",{ref:"refScrollYHandleElem",class:"vxe-gantt-view--scroll-y-handle",on:{scroll:this.triggerVirtualScrollYEvent}},[t("div",{ref:"refScrollYSpaceElem",class:"vxe-gantt-view--scroll-y-space"})]),t("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),t("div",{ref:"refScrollYBottomCornerElem",class:"vxe-gantt-view--scroll-y-bottom-corner"})])},renderViewport:function(t){return t("div",{class:"vxe-gantt-view--viewport-wrapper"},[t(_ganttHeader.default),t(_ganttBody.default),t(_ganttFooter.default)])},renderNativeBody:function(t){var e=this;return t("div",{class:"vxe-gantt-view--layout-wrapper"},e.$xeGantt.computeScrollbarYToLeft?[e.renderScrollY(t),e.renderViewport(t)]:[e.renderViewport(t),e.renderScrollY(t)])},renderVirtualBody:function(t){var e=this,a=e.$xeGantt,r=e.reactData,l=a.reactData.showLeftView,i=r.xThumbWidth,r=r.yThumbHeight,o=a.computeScrollbarOpts,n=e.computeGanttIsVScrollbar,c=e.computeScrollXAutoHide,s=e.computeScrollYAutoHide,u=e.computeScrollXVisible,d=e.computeScrollYVisible,f=a.computeScrollbarYToLeft,h=e.computeScrollbarWrapperClss;return t("div",{key:"lvb",class:["vxe-gantt--layout-wrapper","sx-pos--".concat(e.computeScrollbarXToTop?"top":"bottom"),"sy-pos--".concat(f?"left":"right"),{"is--virtual-scrollbar":n,"ov-padding":n&&o.padding,"ov-x--auto-hide":n&&c,"ov-y--auto-hide":n&&s,"overflow-y":r,"overflow-x":i}]},[e.renderViewport(t),t("div",{class:h},[!1===u?renderEmptyElement(a):t("div",{ref:"refTrackXElem",class:"vxe-scrollbar--track-x",on:{click:e.clickTrackXEvent}},[t("div",{ref:"refThumbXElem",class:"vxe-scrollbar--thumb-x",on:{pointerdown:e.pointerdownThumbXEvent,pointermove:e.pointermoveThumbXEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})]),f&&l||!1===d?renderEmptyElement(a):t("div",{ref:"refTrackYElem",class:"vxe-scrollbar--track-y",on:{click:e.clickTrackYEvent}},[t("div",{ref:"refThumbYElem",class:"vxe-scrollbar--thumb-y",on:{pointerdown:e.pointerdownThumbYEvent,pointermove:e.pointermoveThumbYEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})])])])},renderVN:function(t){var e=this,a=e.$xeGantt,r=e.reactData,l=r.overflowX,a=a.computeScrollbarXToTop;return t("div",{ref:"refElem",class:["vxe-gantt-view",{"is--scroll-y":r.overflowY,"is--scroll-x":l,"is--virtual-x":r.scrollXLoad,"is--virtual-y":r.scrollYLoad}]},[t("div",{class:"vxe-gantt-view--render-wrapper"},e.computeGanttIsVScrollbar?[e.renderVirtualBody(t)]:a?[e.renderScrollX(t),e.renderNativeBody(t)]:[e.renderNativeBody(t),e.renderScrollX(t)]),t("div",{class:"vxe-gantt-view--render-vars"},[t("div",{ref:"refColInfoElem",class:"vxe-gantt-view--column-info"})])])}},watch:{computeGanttIsVScrollbar:function(){var t=this;t.$nextTick(function(){t.bindScrollbarResize(),t.$nextTick(function(){t.reScrollFlag++})})},computeScrollbarXToTop:function(){this.reScrollFlag++},computeScrollbarYToLeft:function(){this.reScrollFlag++},computeScrollXVisible:function(){this.reScrollFlag++},computeScrollYVisible:function(){this.reScrollFlag++},computeScrollXHeight:function(){this.reScrollFlag++},computeScrollYWidth:function(){this.reScrollFlag++},reScrollFlag:function(){var t=this;t.$nextTick(function(){t.updateScrollbar(),t.$nextTick(function(){t.updateScrollbar()})})}},mounted:function(){var t=this;t.$nextTick(function(){t.bindScrollbarResize()}),globalEvents.on(t,"resize",t.handleGlobalResizeEvent)},beforeDestroy:function(){var t=this.reactData,e=this.internalData,a=e.scrollObserver;a&&a.disconnect(),globalEvents.off(this,"keydown"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(e,createInternalData())},render:function(t){return this.renderVN(t)}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0,exports.handleCriticalPath=handleCriticalPath;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_static=require("./static"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _createForOfIteratorHelper(t,e){var a,r,l,i,o="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(o)return l=!(r=!0),{s:function(){o=o.call(t)},n:function(){var t=o.next();return r=t.done,t},e:function(t){l=!0,a=t},f:function(){try{r||null==o.return||o.return()}finally{if(l)throw a}}};if(Array.isArray(t)||(o=_unsupportedIterableToArray(t))||e&&t&&"number"==typeof t.length)return o&&(t=o),i=0,{s:e=function(){},n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:e};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(t,e){return _arrayWithHoles(t)||_iterableToArrayLimit(t,e)||_unsupportedIterableToArray(t,e)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(t,e){var a;if(t)return"string"==typeof t?_arrayLikeToArray(t,e):"Map"===(a="Object"===(a={}.toString.call(t).slice(8,-1))&&t.constructor?t.constructor.name:a)||"Set"===a?Array.from(t):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(t,e):void 0}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var a=0,r=Array(e);a<e;a++)r[a]=t[a];return r}function _iterableToArrayLimit(t,e){var a=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=a){var r,l,i,o,n=[],c=!0,s=!1;try{if(i=(a=a.call(t)).next,0===e){if(Object(a)!==a)return;c=!1}else for(;!(c=(r=i.call(a)).done)&&(n.push(r.value),n.length!==e);c=!0);}catch(t){s=!0,l=t}finally{try{if(!c&&null!=a.return&&(o=a.return(),Object(o)!==o))return}finally{if(s)throw l}}return n}}function _arrayWithHoles(t){if(Array.isArray(t))return t}var getConfig=_core.VxeUI.getConfig,domUtils=_core.VxeUI.domUtils,globalResize=_core.VxeUI.globalResize,globalEvents=_core.VxeUI.globalEvents,renderEmptyElement=_core.VxeUI.renderEmptyElement,FinishToStart=_static.VxeGanttDependencyType.FinishToStart,StartToFinish=_static.VxeGanttDependencyType.StartToFinish,StartToStart=_static.VxeGanttDependencyType.StartToStart,FinishToFinish=_static.VxeGanttDependencyType.FinishToFinish,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function getTaskLinkKey(t,e,a){return t+"_"+e+"_"+(a||0)}function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,yThumbHeight:0,xThumbWidth:0,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}var maxYHeight=5e6;function parseStringDate(t,e){t=t.$xeGantt.computeDateFormat;return _xeUtils.default.toStringDate(e,t||null)}function updateTodayData(t){var e,a,r,l,i,o,n,c,s,u,d=t.$xeGantt,t=t.internalData,f=d.reactData,h=f.taskScaleList,d=d.computeMinScale;d&&(h=h.find(function(t){return"week"===t.type}),d="week"===d.type,e=new Date,a=(c=_slicedToArray(_xeUtils.default.toDateString(e,"yyyy-M-MM-dd-HH-mm-ss").split("-"),7))[0],r=c[1],l=c[2],i=c[3],o=c[4],n=c[5],c=c[6],s=e.getDay()+1,u=Math.ceil((e.getMonth()+1)/3),h="".concat(_xeUtils.default.getYearWeek(e,h?h.startDay:void 0)),d&&checkWeekOfsetYear(h,r)&&(a="".concat(Number(a)+1),r="1",l="01"),f.nowTime=e.getTime(),t.todayDateMaps={year:a,quarter:"".concat(a,"_q").concat(u),month:"".concat(a,"_").concat(l),week:"".concat(a,"_W").concat(h),day:"".concat(a,"_").concat(l,"_").concat(i,"_E").concat(s),date:"".concat(a,"_").concat(l,"_").concat(i),hour:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o),minute:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o,"_").concat(n),second:"".concat(a,"_").concat(l,"_").concat(i,"_").concat(o,"_").concat(n,"_").concat(c)})}function handleColumnHeader(t){var e=t.$xeGantt,a=e.reactData.taskScaleList,i=e.computeMinScale,v=e.computeWeekScale,r=t.computeScaleDateList,l=e.computeScaleStep,o=v?v.startDay:void 0,n=[],c=[];if(i&&e.computeScaleUnit&&r.length){for(var s={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},u={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}},x="week"===i.type,d=function(t,e,a){var r,l;i.type!==t&&(e=e[t],r="".concat(e.field),(l=u[t][r])||(u[t][r]=l=e,s[t].push(l)),l)&&(l.children||(l.children=[]),l.children.push(a))},f=function(t){var e=_slicedToArray(_xeUtils.default.toDateString(t,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-"),12),a=e[0],r=e[1],l=e[2],i=e[3],o=e[4],n=e[5],c=e[6],s=e[7],u=e[8],d=e[9],f=e[10],e=e[11],h=t.getDay(),p=h+1,g=Math.ceil((t.getMonth()+1)/3),m="".concat(_xeUtils.default.getYearWeek(t,v?v.startDay:void 0)),S=_xeUtils.default.padStart(m,2,"0");return x&&checkWeekOfsetYear(m,l)&&(r="".concat(Number(r)+1),i="0"+(l="1")),{date:t,yy:a,yyyy:r,M:l,MM:i,d:o,dd:n,H:c,HH:s,m:u,mm:d,s:f,ss:e,q:g,W:m,WW:S,E:p,e:h}},h=0;h<r.length;h++){var p=r[h],g=f(p),m=g.yyyy,S=g.MM,y=g.dd,b=g.HH,_=g.mm,T=g.ss,D=g.q,w=g.W,U=g.E,W=g,D={year:{field:m,title:m,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatYear(p,l-1)):W},quarter:{field:"".concat(m,"_q").concat(D),title:"".concat(D),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatQuarter(p,l-1)):W},month:{field:"".concat(m,"_").concat(S),title:S,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatMonth(p,l-1)):W},week:{field:"".concat(m,"_W").concat(w),title:"".concat(w),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatWeek(p,l-1,o,o)):W},day:{field:"".concat(m,"_").concat(S,"_").concat(y,"_E").concat(U),title:"".concat(U),dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatDay(p,l-1)):W},date:{field:"".concat(m,"_").concat(S,"_").concat(y),title:y,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatDay(p,l-1)):W},hour:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b),title:b,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatHours(p,l-1)):W},minute:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b,"_").concat(_),title:_,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatMinutes(p,l-1)):W},second:{field:"".concat(m,"_").concat(S,"_").concat(y,"_").concat(b,"_").concat(_,"_").concat(T),title:T,dateObj:g,startDateObj:W,endDateObj:1<l?f(_xeUtils.default.getWhatSeconds(p,l-1)):W}},w=D[i.type];i.level<19&&d("year",D,w),i.level<17&&d("quarter",D,w),i.level<15&&d("month",D,w),i.level<13&&d("week",D,w),i.level<11&&d("day",D,w),i.level<9&&d("date",D,w),i.level<7&&d("hour",D,w),i.level<5&&d("minute",D,w),i.level<3&&d("second",D,w),n.push(w)}a.forEach(function(t){var e;t.type===i.type?c.push({scaleItem:t,columns:n}):((e=s[t.type]||[])&&e.forEach(function(t){t.childCount=t.children?t.children.length:0,t.children=void 0}),c.push({scaleItem:t,columns:e}))})}return{fullCols:n,groupCols:c}}function checkWeekOfsetYear(t,e){return"1"==="".concat(t)&&"12"==="".concat(e)}function parseWeekObj(t,e){var t=_xeUtils.default.toStringDate(t),a=t.getFullYear(),r=t.getMonth(),t=_xeUtils.default.getYearWeek(t,e);return checkWeekOfsetYear(t,r+1)&&a++,{yyyy:a,W:t}}function createChartRender(s,t){var e=s.$xeGantt,a=e.computeMinScale,n=e.computeScaleStep,c=e.computeWeekScale,r=e.computeDateFormat;if(a){var u=1<n?1/n:0;switch(e.computeScaleUnit){case"year":var d=/M|d|H|m|s|S/.test(r),f="yyyy",h={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,"yyyy");if(h[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(a.date,n-r),f);h[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,f),l=d?t:_xeUtils.default.getWhatYear(t,0,"first"),t=_xeUtils.default.getWhatYear(t,0,"first"),i=_xeUtils.default.toDateString(e,f),e=d?e:_xeUtils.default.getWhatYear(e,0,"last"),o=_xeUtils.default.getWhatYear(e,0,"first"),n=0,c=1,t=(d&&(a=_xeUtils.default.getDayOfYear(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfYear(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(h[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(h[i]||0)-t+c}};case"quarter":var p=/M|d|H|m|ss|S/.test(r),g="yyyy-q",m={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,g);if(m[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(a.date,n-r),g);m[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,g),l=p?t:_xeUtils.default.getWhatQuarter(t,0,"first"),t=_xeUtils.default.getWhatQuarter(t,0,"first"),i=_xeUtils.default.toDateString(e,g),e=p?e:_xeUtils.default.getWhatQuarter(e,0,"last"),o=_xeUtils.default.getWhatQuarter(e,0,"first"),n=0,c=1,t=(p&&(a=_xeUtils.default.getDayOfQuarter(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfQuarter(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(m[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(m[i]||0)-t+c}};case"month":var S="yyyy-MM",v=/d|H|m|ss|S/.test(r),x={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,S);if(x[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(a.date,n-r),S);x[l]=e+(n-r)*u,r--}}),function(t,e){var a,t=parseStringDate(s,t),e=parseStringDate(s,e),r=_xeUtils.default.toDateString(t,S),l=v?t:_xeUtils.default.getWhatMonth(t,0,"first"),t=_xeUtils.default.getWhatMonth(t,0,"first"),i=_xeUtils.default.toDateString(e,S),e=v?e:_xeUtils.default.getWhatMonth(e,0,"last"),o=_xeUtils.default.getWhatMonth(e,0,"first"),n=0,c=1,t=(v&&(a=_xeUtils.default.getDayOfMonth(l,0),n=(l.getTime()-t.getTime())/dayMs/a,l=_xeUtils.default.getDayOfMonth(e,0),c=(e.getTime()-o.getTime())/dayMs/l,u)&&(n*=u,c*=u),(x[r]||0)+n);return{offsetLeftSize:t,offsetWidthSize:(x[i]||0)-t+c}};case"week":var y=c?c.startDay:void 0,b=/d|H|m|s|S/.test(r),_={};return t.forEach(function(t,e){var a=t.dateObj,t="".concat(a.yyyy,"-").concat(a.W);if(_[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.getWhatWeek(a.date,n-r,y,y),i=_slicedToArray(_xeUtils.default.toDateString(l,"yyyy-M-MM-dd-HH-mm-ss").split("-"),2),o=i[0],i=i[1],l="".concat(_xeUtils.default.getYearWeek(l,c?c.startDay:void 0)),i=(checkWeekOfsetYear(l,i)&&(o="".concat(Number(o)+1)),"".concat(o,"-").concat(l));_[i]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),t=b?t:_xeUtils.default.getWhatWeek(t,0,"first",y),a=parseWeekObj(t,y),a="".concat(a.yyyy,"-").concat(a.W),r=_xeUtils.default.getWhatWeek(t,0,"first",y),e=b?e:_xeUtils.default.getWhatWeek(e,0,"first",y),l=parseWeekObj(e,y),l="".concat(l.yyyy,"-").concat(l.W),i=_xeUtils.default.getWhatWeek(e,0,"first",y),o=0,n=1,t=(b&&(o=(t.getTime()-r.getTime())/dayMs/7,n=(e.getTime()-i.getTime())/dayMs/7,u)&&(o*=u,n*=u),(_[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(_[l]||0)-t+n}};case"day":case"date":var T="yyyy-MM-dd",D=/H|m|s|S/.test(r),w={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,T);if(w[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(a.date,n-r),T);w[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,T),t=D?t:_xeUtils.default.getWhatDay(t,0,"first"),r=_xeUtils.default.getWhatDay(t,0,"first"),l=_xeUtils.default.toDateString(e,T),e=D?e:_xeUtils.default.getWhatDay(e,0,"last"),i=_xeUtils.default.getWhatDay(e,0,"first"),o=0,n=1,t=(D&&(o=(t.getTime()-r.getTime())/dayMs,n=(e.getTime()-i.getTime())/dayMs,u)&&(o*=u,n*=u),(w[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(w[l]||0)-t+n}};case"hour":var U="yyyy-MM-dd HH",W=/m|ss|S/.test(r),E={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,U);if(E[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(a.date,n-r),U);E[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,U),t=W?t:_xeUtils.default.getWhatHours(t,0,"first"),r=_xeUtils.default.getWhatHours(t,0,"first"),l=_xeUtils.default.toDateString(e,U),e=W?e:_xeUtils.default.getWhatHours(e,0,"last"),i=_xeUtils.default.getWhatHours(e,0,"first"),o=0,n=1,t=(W&&(o=(t.getTime()-r.getTime())/hourMs,n=(e.getTime()-i.getTime())/hourMs,u)&&(o*=u,n*=u),(E[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(E[l]||0)-t+n}};case"minute":var M="yyyy-MM-dd HH:mm",k=/s|S/.test(r),L={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,M);if(L[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(a.date,n-r),M);L[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,M),t=k?t:_xeUtils.default.getWhatMinutes(t,0,"first"),r=_xeUtils.default.getWhatMinutes(t,0,"first"),l=_xeUtils.default.toDateString(e,M),e=k?e:_xeUtils.default.getWhatMinutes(e,0,"last"),i=_xeUtils.default.getWhatMinutes(e,0,"first"),o=0,n=1,t=(k&&(o=(t.getTime()-r.getTime())/minuteMs,n=(e.getTime()-i.getTime())/minuteMs,u)&&(o*=u,n*=u),(L[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(L[l]||0)-t+n}};case"second":var O="yyyy-MM-dd HH:mm:ss",C=/S/.test(r),H={};return t.forEach(function(t,e){var a=t.dateObj,t=_xeUtils.default.toDateString(a.date,O);if(H[t]=e,u)for(var r=n-1;r;){var l=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(a.date,n-r),O);H[l]=e+(n-r)*u,r--}}),function(t,e){var t=parseStringDate(s,t),e=parseStringDate(s,e),a=_xeUtils.default.toDateString(t,O),t=C?t:_xeUtils.default.getWhatSeconds(t,0,"first"),r=_xeUtils.default.getWhatSeconds(t,0,"first"),l=_xeUtils.default.toDateString(e,O),e=C?e:_xeUtils.default.getWhatSeconds(e,0,"last"),i=_xeUtils.default.getWhatSeconds(e,0,"first"),o=0,n=1,t=(C&&(o=(t.getTime()-r.getTime())/secondMs,n=(e.getTime()-i.getTime())/secondMs,u)&&(o*=u,n*=u),(H[a]||0)+o);return{offsetLeftSize:t,offsetWidthSize:(H[l]||0)-t+n}}}}return function(){return{offsetLeftSize:0,offsetWidthSize:0}}}function handleParseColumn(t){var i,o,n,c,e,a,r,l,s,u,d,f,h=t.$xeGantt,p=t.reactData,g=t.internalData,m=h.treeConfig,S=p.minViewDate,v=p.maxViewDate,x=handleColumnHeader(t),y=x.fullCols,x=x.groupCols;S&&v&&(i=g.xeTable)&&(o=h.computeStartField,n=h.computeEndField,c=h.computeTypeField,S=i.getReactData().isRowGroupStatus,h=(v=i.getInternalData()).afterFullData,e=v.afterTreeFullData,v=v.afterGroupFullData,a=i.computeAggregateOpts,l=(r=i.computeTreeOpts).transform,s=r.children||r.childrenField,u={},d=createChartRender(t,y),f=function(t){var e=i.getRowid(t),a=_xeUtils.default.get(t,o),r=_xeUtils.default.get(t,n),l=(0,_util.getTaskType)(_xeUtils.default.get(t,c));(0,_util.hasMilestoneTask)(l)&&(r=a=a||r),(0,_util.hasSubviewTask)(l)?u[e]={row:t,rowid:e,oLeftSize:0,oWidthSize:0}:a&&r&&(a=(l=d(a,r)).offsetLeftSize,u[e]={row:t,rowid:e,oLeftSize:a,oWidthSize:l.offsetWidthSize})},S?(S=a.mapChildrenField)&&_xeUtils.default.eachTree(v,f,{children:S}):m?_xeUtils.default.eachTree(e,f,{children:l?r.mapChildrenField:s}):h.forEach(f),g.chartMaps=u),g.visibleColumn=y,p.headerGroups=x,updateTodayData(t),updateScrollXStatus(t),handleTableColumn(t)}function handleUpdateData(l){var i,o,n,t,e,a,r,c,s,u,d=l.$xeGantt,f=l.reactData,h=l.internalData,p=d.reactData.linkList,g=d.treeConfig,m=h.scrollXStore,S=h.xeTable,v=null,x=null,y=[];S&&(i=d.computeStartField,o=d.computeEndField,n=d.computeTypeField,d=S.getReactData().isRowGroupStatus,e=(t=S.getInternalData()).afterFullData,a=t.afterTreeFullData,r=S.computeAggregateOpts,c=(S=S.computeTreeOpts).transform,s=S.children||S.childrenField,u=function(t){var e=_xeUtils.default.get(t,i),a=_xeUtils.default.get(t,o),r=_xeUtils.default.get(t,n),e=e||a;!(0,_util.hasMilestoneTask)(r)&&a||(a=e),e&&(r=parseStringDate(l,e),!v||v.getTime()>r.getTime())&&(v=r),a&&(e=parseStringDate(l,a),!x||x.getTime()<e.getTime())&&(x=e),y.push(t)},d?(d=r.mapChildrenField)&&_xeUtils.default.eachTree(t.afterGroupFullData,u,{children:d}):g?_xeUtils.default.eachTree(a,u,{children:c?S.mapChildrenField:s}):e.forEach(u)),m.startIndex=0,m.endIndex=Math.max(1,m.visibleSize),f.minViewDate=v,f.maxViewDate=x,h.startMaps={},h.endMaps={},handleParseColumn(l),handleCriticalPath(l,y,p)}function forwardCriticalPathLowerBound(t,e,a,r){switch(t){case FinishToStart:return a;case StartToFinish:return e-r;case StartToStart:return e;case FinishToFinish:return a-r;default:return 0}}function backwardCriticalPathUpperBound(t,e,a,r){switch(t){case FinishToStart:return e;case StartToFinish:return a+r;case StartToStart:return e+r;case FinishToFinish:return a;default:return-1}}function isCriticalPathLinkTight(t,e,a,r,l,i){switch(t){case FinishToStart:return Math.abs(a-r)<i;case StartToFinish:return Math.abs(e-l)<i;case StartToStart:return Math.abs(e-r)<i;case FinishToFinish:return Math.abs(a-l)<i;default:return!1}}function handleCriticalPath(t,e,a){var r=t.$xeGantt,t=t.internalData,l=r.reactData,i=r.internalData,r=r.computeTaskBarOpts,R=t.xeTable,X=[],F=new Map,V=new Map;if(i.criticalRowList=X,i.criticalRowMaps=F,i.criticalLinkKeyMaps=V,r.showCriticalPath&&a.length&&e.length&&R){var I,z=t.chartMaps,o=new Map,n=_createForOfIteratorHelper(e);try{for(n.s();!(I=n.n()).done;){var $=I.value,c=R.getRowid($),j=z[c];o.set(c,{row:$,rowid:c,duration:j?j.oWidthSize:0,incoming:[],outgoing:[],indeg:0,ES:0,EF:0,LS:0,LF:0})}}catch(t){n.e(t)}finally{n.f()}var G,B=[],s=_createForOfIteratorHelper(a);try{for(s.s();!(G=s.n()).done;){var u,d,q,f=G.value,A=""+f.from,P=""+f.to;o.has(A)&&o.has(P)&&A!=P&&(u={from:f.from,to:f.to,type:_xeUtils.default.toNumber(f.type)||0,raw:f},B.push(u),d=o.get(""+f.to),(q=o.get(""+f.from))&&q.outgoing.push(u),d)&&(d.incoming.push(u),d.indeg++)}}catch(t){s.e(t)}finally{s.f()}for(var h=[],p=(o.forEach(function(t){0===t.indeg&&h.push(t)}),[]),g=0;g<h.length;g++){var N,Q=h[g],m=(p.push(Q),_createForOfIteratorHelper(Q.outgoing));try{for(m.s();!(N=m.n()).done;){var K,J=N.value,S=o.get(""+J.to);S&&(K=S.indeg-1,0==(S.indeg=K))&&h.push(o.get(""+J.to))}}catch(t){m.e(t)}finally{m.f()}}if(p.length!==o.size)(l.criticalRowIds.length||l.criticalLinks.length)&&l.criticalPathFlag++,l.criticalLinks=[],l.criticalRowIds=[];else{for(var v=0,x=0,Z=p;x<Z.length;x++){var tt,y=Z[x],b=0,_=_createForOfIteratorHelper(y.incoming);try{for(_.s();!(tt=_.n()).done;){var et,at=tt.value,T=o.get(""+at.from);T&&b<(et=forwardCriticalPathLowerBound(at.type,T.ES,T.EF,y.duration))&&(b=et)}}catch(t){_.e(t)}finally{_.f()}y.ES=b,y.EF=b+y.duration,y.EF>v&&(v=y.EF)}for(var D=p.length-1;0<=D;D--){var rt,w=p[D],U=v,W=_createForOfIteratorHelper(w.outgoing);try{for(W.s();!(rt=W.n()).done;){var lt,it=rt.value,E=o.get(""+it.to);E&&(lt=backwardCriticalPathUpperBound(it.type,E.LS,E.LF,w.duration))<U&&(U=lt)}}catch(t){W.e(t)}finally{W.f()}w.LF=U,w.LS=U-w.duration}for(var M=new Set,ot=[],k=0,nt=p;k<nt.length;k++){var L=nt[k];Math.abs(L.LS-L.ES)<1e-6&&(M.add(L.rowid),ot.push(L.rowid),X.push(L.row),F.set(L.rowid,L.row))}for(var ct=[],O=0,st=B;O<st.length;O++){var C=st[O],H=o.get(""+C.to),Y=o.get(""+C.from);H&&Y&&M.has(Y.rowid)&&M.has(H.rowid)&&isCriticalPathLinkTight(C.type,Y.ES,Y.EF,H.ES,H.EF,1e-6)&&(ct.push(C.raw),V.set(getTaskLinkKey(C.from,C.to,C.type),C.raw))}l.criticalLinks=ct,l.criticalRowIds=ot,l.criticalPathFlag++}}else(l.criticalRowIds.length||l.criticalLinks.length)&&l.criticalPathFlag++,l.criticalLinks=[],l.criticalRowIds=[]}function calcScrollbar(t){var e=t.$xeGantt,a=t.reactData,r=e.reactData,l=a.scrollXWidth,i=a.scrollYHeight,o=t.internalData.elemStore,e=e.computeScrollbarOpts,o=(0,_util.getRefElem)(o["main-body-wrapper"]),n=t.$refs.refScrollXHandleElem,t=t.$refs.refScrollYHandleElem,c=!1;o&&(c=i>o.clientHeight,t&&(i=e.width||t.offsetWidth-t.clientWidth||14,a.scrollbarWidth=i,r.scrollbarWidth=i),a.overflowY=c,r.overflowY=c,t=l>o.clientWidth,n&&(i=e.height||n.offsetHeight-n.clientHeight||14,a.scrollbarHeight=i,r.scrollbarHeight=i),a.overflowX=t,r.overflowX=t)}function handleSubTaskMinMaxSize(t,a,e){var r=t.$xeGantt,l=t.internalData.chartMaps,t=a.computeTreeOpts,t=t.children||t.childrenField,i=r.computeTypeField,o=0,n=0;return _xeUtils.default.eachTree(e,function(t){var e=a.getRowid(t),t=_xeUtils.default.get(t,i);(0,_util.hasSubviewTask)(t)||(t=e?l[e]:null)&&(n=Math.max(n,t.oLeftSize+t.oWidthSize),o=o?Math.min(o,t.oLeftSize):t.oLeftSize)},{children:t}),{minSize:o,maxSize:n}}function updateTaskChartStyle(i){var o,t=i.$xeGantt,e=i.internalData,t=t.internalData,n=e.xeTable,c=t.dragBarRow,s=i.reactData.viewCellWidth,u=e.chartMaps,t=(0,_util.getRefElem)(e.elemStore["main-chart-task-wrapper"]);return t&&n&&(e=n.computeTreeOpts,o=e.children||e.childrenField,_xeUtils.default.arrayEach(t.children,function(t){var e,a,r,l=t.children[0];l&&(t=t.getAttribute("rowid"),c&&n.getRowid(c)===t||(r=(t=t?u[t]:null)?t.row:null,(0,_dom.hasClass)(l,"is--subview")?(e=l.firstElementChild)&&((0,_dom.hasClass)(e,"is--inline")?_xeUtils.default.arrayEach(e.children,function(t){var e,a,t=t.children[0],r=t.getAttribute("rowid")||"",r=r?u[r]:null;r&&(a=r.row,(0,_dom.hasClass)(t,"is--subview")?(a=a[o],e=(a=handleSubTaskMinMaxSize(i,n,a)).minSize,a=a.maxSize,t.style.left="".concat(s*e,"px"),t.style.width="".concat(s*(a-e),"px")):(t.style.left="".concat((0,_util.getTaskBarLeft)(r,s),"px"),(0,_dom.hasClass)(t,"is--milestone")||(t.style.width="".concat((0,_util.getTaskBarWidth)(r,s),"px"))))}):(e=(e=e.children[0])?e.children[0]:null)&&(r=r?r[o]:[],a=(r=handleSubTaskMinMaxSize(i,n,r)).minSize,r=r.maxSize,e.style.left="".concat(s*a,"px"),e.style.width="".concat(s*(r-a),"px"))):(l.style.left="".concat((0,_util.getTaskBarLeft)(t,s),"px"),(0,_dom.hasClass)(l,"is--milestone")||(l.style.width="".concat((0,_util.getTaskBarWidth)(t,s),"px")))))})),i.$nextTick()}function updateStyle(t){var e,a,r,l,i,o,n,c,s,u=t.$xeGantt,d=t.reactData,f=t.internalData,h=u.reactData.showLeftView,p=d.scrollbarWidth,g=d.scrollbarHeight,m=d.headerGroups,S=d.tableColumn,v=f.elemStore,x=f.visibleColumn,f=f.xeTable,y=t.$refs.refElem;if(y&&u)return o=t.computeScrollYVisible,c=u.computeScrollbarXToTop,l=u.computeScrollbarYToLeft,n=t.$refs.refScrollXLeftCornerElem,s=t.$refs.refScrollXRightCornerElem,i=t.$refs.refScrollXVirtualElem,p=p,g=g,r=a=e=0,f&&(e=(f=f.getInternalData()).tBodyHeight,a=f.tHeaderHeight,r=f.tFooterHeight),(!(f="visible")===o||"hidden"===o||l&&h)&&(p=0,f="hidden"),(o=(0,_util.getRefElem)(v["main-header-scroll"]))&&(o.style.height="".concat(a,"px"),o.style.setProperty("--vxe-ui-gantt-view-cell-height","".concat(a/m.length,"px"))),(l=(0,_util.getRefElem)(v["main-body-scroll"]))&&(l.style.height="".concat(e,"px")),(h=(0,_util.getRefElem)(v["main-footer-scroll"]))&&(h.style.height="".concat(r,"px")),i&&(i.style.height="".concat(g,"px"),i.style.visibility="visible"),(o=t.$refs.refScrollXWrapperElem)&&(o.style.left=c?"".concat(p,"px"):"",o.style.width="".concat(y.clientWidth-p,"px")),n&&(n.style.width=c?"".concat(p,"px"):"",n.style.display=c&&g?"block":""),s&&(s.style.width=c?"":"".concat(p,"px"),s.style.display=!c&&g?"block":""),(m=t.$refs.refScrollYVirtualElem)&&(m.style.width="".concat(p,"px"),m.style.height="".concat(e+a+r,"px"),m.style.visibility=f),(h=t.$refs.refScrollYTopCornerElem)&&(h.style.height="".concat(a,"px"),h.style.display=a?"block":""),(i=t.$refs.refScrollYWrapperElem)&&(i.style.height="".concat(e,"px"),i.style.top="".concat(a,"px")),(o=t.$refs.refScrollYBottomCornerElem)&&(o.style.height="".concat(r,"px"),o.style.top="".concat(a+e,"px"),o.style.display=r?"block":""),y=40,s=y=(n=t.$refs.refColInfoElem)?n.clientWidth||40:y,x.length&&(s=Math.max(0,y*x.length),l)&&0<(g=(c=l.clientWidth)-s)&&(y+=Math.max(0,g/x.length),s=c),d.viewCellWidth=y,p=(0,_util.getRefElem)(v["main-header-table"]),m=(0,_util.getRefElem)(v["main-body-table"]),f=y*S.length,p&&(p.style.width="".concat(s,"px")),m&&(m.style.width="".concat(f,"px")),d.scrollXWidth=s,Promise.all([updateTaskChartStyle(t),u.handleUpTaskLinkStyle?u.handleUpTaskLinkStyle(t):null])}function handleRecalculateStyle(t){var e=t.internalData,a=t.$xeGantt,r=t.$refs.refElem;return e.rceRunTime=Date.now(),r&&r.clientWidth&&a?(calcScrollbar(t),updateStyle(t),computeScrollLoad(t)):t.$nextTick()}function _handleLazyRecalculate(i){var o=i.internalData;return new Promise(function(t){var e=o.rceTimeout,a=o.rceRunTime,r=o.xeTable,l=30;r&&(l=r.computeResizeOpts.refreshDelay||l),i.updateScrollbar(),!e||(clearTimeout(e),a&&a+(l-5)<Date.now())?t(handleRecalculateStyle(i)):i.$nextTick(function(){t()}),o.rceTimeout=setTimeout(function(){o.rceTimeout=void 0,handleRecalculateStyle(i)},l)})}function computeScrollLoad(r){var l=r.reactData,i=r.internalData;return r.$nextTick().then(function(){var t,e=l.scrollXLoad,a=i.scrollXStore;e?(t=(e=handleVirtualXVisible(r)).toVisibleIndex,e=e.visibleSize,a.preloadSize=1,a.offsetSize=2,a.visibleSize=e,a.endIndex=Math.max(a.startIndex+a.visibleSize+2,a.endIndex),a.visibleStartIndex=Math.max(a.startIndex,t),a.visibleEndIndex=Math.min(a.endIndex,t+e),updateScrollXData(r).then(function(){loadScrollXData(r)})):updateScrollXSpace(r)})}function handleVirtualXVisible(t){var e,a=t.reactData.viewCellWidth,t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]);return t?(e=t.clientWidth,t=t.scrollLeft,t=Math.floor(t/a)-1,e=Math.ceil(e/a)+1,{toVisibleIndex:Math.max(0,t),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}}function loadScrollXData(t){var e=t.reactData.isScrollXBig,a=t.internalData.scrollXStore,r=a.preloadSize,l=a.startIndex,i=a.endIndex,o=a.offsetSize,n=handleVirtualXVisible(t),c=n.toVisibleIndex,n=n.visibleSize,e={startIndex:Math.max(0,e?c-1:c-1-o-r),endIndex:e?c+n:c+n+o+r},o=(a.visibleStartIndex=c-1,a.visibleEndIndex=c+n+1,e.startIndex),r=e.endIndex;!(c<=l||i-n-1<=c)||l===o&&i===r||(a.startIndex=o,a.endIndex=r,updateScrollXData(t))}function updateScrollXData(t){return handleTableColumn(t),updateScrollXSpace(t),t.$nextTick()}function updateScrollXStatus(t){return t.reactData.scrollXLoad=!0}function handleTableColumn(t){var e=t.reactData,t=t.internalData,a=e.scrollXLoad,r=t.visibleColumn,t=t.scrollXStore,a=a?r.slice(t.startIndex,t.endIndex):r.slice(0);e.tableColumn=a}function updateScrollXSpace(t){var e=t.reactData,a=t.internalData,r=e.scrollXLoad,l=e.scrollXWidth,i=e.viewCellWidth,o=a.elemStore,a=a.scrollXStore,n=(0,_util.getRefElem)(o["main-body-table"]),a=a.startIndex,c=0,s=(r&&(c=Math.max(0,a*i)),n&&(n.style.transform="translate(".concat(c,"px, ").concat(e.scrollYTop||0,"px)")),l),a=(["header","body","footer"].forEach(function(t){t=(0,_util.getRefElem)(o["main-".concat(t,"-xSpace")]);t&&(t.style.width=r?"".concat(s,"px"):"")}),t.$refs.refScrollXSpaceElem),i=(a&&(a.style.width="".concat(s,"px")),(0,_util.getRefElem)(o["main-chart-before-wrapper"])),n=i?i.firstElementChild:null,l=(n&&(n.style.width="".concat(s,"px")),(0,_util.getRefElem)(o["main-chart-after-wrapper"])),a=l?l.firstElementChild:null;return a&&(a.style.width="".concat(s,"px")),e.scrollXLeft=c,e.scrollXWidth=s,calcScrollbar(t),t.$nextTick()}function triggerScrollXEvent(t){loadScrollXData(t)}function updateScrollYSpace(t){var e=t.reactData,a=t.internalData,r=e.scrollYLoad,l=e.overflowY,i=a.elemStore,a=a.xeTable,o=(0,_util.getRefElem)(i["main-body-scroll"]),n=(0,_util.getRefElem)(i["main-body-table"]),c=0,s=0,u=!1,a=(a&&(c=(a=a.getReactData()).scrollYTop,s=a.scrollYHeight,u=a.isScrollYBig),s),d=c,f=0,o=(o&&(f=o.clientHeight),u&&(d=o&&n&&o.scrollTop+f>=maxYHeight?maxYHeight-n.clientHeight:c/(s-f)*(maxYHeight-f),a=maxYHeight),r&&l||(d=0),(0,_util.getRefElem)(i["main-chart-task-wrapper"])),c=(n&&(n.style.transform="translate(".concat(e.scrollXLeft||0,"px, ").concat(d,"px)")),o&&(o.style.transform="translateY(".concat(d,"px)")),(0,_util.getRefElem)(i["main-body-ySpace"])),f=(c&&(c.style.height=a?"".concat(a,"px"):""),t.$refs.refScrollYSpaceElem),r=(f&&(f.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-before-wrapper"])),l=r?r.firstElementChild:null,n=(l&&(l.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-after-wrapper"])),o=n?n.firstElementChild:null,c=(o&&(o.style.height=a?"".concat(a,"px"):""),(0,_util.getRefElem)(i["main-chart-now-line"]));return c&&(c.style.height=a?"".concat(a,"px"):""),e.scrollYTop=d,e.scrollYHeight=s,e.isScrollYBig=u,calcScrollbar(t),t.$nextTick().then(function(){updateStyle(t)})}function checkLastSyncScroll(t,e,a){var r=t.reactData,l=t.internalData,t=l.lcsTimeout;r.lazScrollLoading=!0,t&&clearTimeout(t),l.lcsTimeout=setTimeout(function(){var t=l.xeTable;l.lcsRunTime=Date.now(),l.lcsTimeout=void 0,l.intoRunScroll=!1,l.inVirtualScroll=!1,l.inWheelScroll=!1,l.inHeaderScroll=!1,l.inBodyScroll=!1,l.inFooterScroll=!1,l.isSyncTableScrollTop=!1,r.lazScrollLoading=!1,t&&(t.getInternalData().isSyncGanttScrollTop=!1)},200)}function handleScrollData(t,e,a,r,l){var i=t.reactData,o=t.internalData;a&&(o.lastScrollLeft=l),e&&(o.lastScrollTop=r),i.lastScrollTime=Date.now(),checkLastSyncScroll(t,a,e)}function syncTableScrollTop(t,e){var t=t.internalData;t.isSyncTableScrollTop||(t=t.xeTable)&&(t.getInternalData().isSyncGanttScrollTop=!0,t.handleSyncScrollTop({scrollTop:e}))}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",mixins:[_core.globalMixins.vScrollbarMixin,_core.globalMixins.initVScrollbarMixin],inject:{$xeGantt:{default:null}},provide:function(){return{$xeGanttView:this}},props:{},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:createReactData(),internalData:createInternalData(),scrollDefaultConf:Object.assign({},getConfig().scrollbar),reScrollFlag:0}},computed:Object.assign(Object.assign({},{}),{computeGanttIsVScrollbar:function(){return this.$xeGantt.computeIsVScrollbar},computeScrollbarXOpts:function(){var t=this.$xeGantt.computeScrollbarOpts;return t.x?Object.assign({},t.x,t.xConfig):t.xConfig||{}},computeScrollbarYOpts:function(){var t=this.$xeGantt.computeScrollbarOpts;return t.y?Object.assign({},t.y,t.yConfig):t.yConfig||{}},computeScrollXHeight:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarXOpts;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.height,t.height),e.height))},computeScrollYWidth:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarYOpts;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.width,t.width),e.width))},computeScrollXVisible:function(){var t=this.$xeGantt.computeScrollbarOpts,e=this.computeScrollbarXOpts;return(0,_utils.getDefaultConfig)(e.visible,t.visible)},computeScrollYVisible:function(){var t=this.$xeGantt.computeScrollbarOpts,e=this.computeScrollbarYOpts;return(0,_utils.getDefaultConfig)(e.visible,t.visible)},computeScrollXAutoHide:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarXOpts;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.autoHide,t.autoHide),e.autoHide)},computeScrollYAutoHide:function(){var t=this.$xeGantt,e=this.scrollDefaultConf,t=t.computeScrollbarOpts,a=this.computeScrollbarYOpts;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(a.autoHide,t.autoHide),e.autoHide)},computeScrollbarXToTop:function(){return"top"===this.computeScrollbarXOpts.position},computeScrollbarYToLeft:function(){return"left"===this.computeScrollbarYOpts.position},computeScrollbarWrapperClss:function(){var t=this.reactData,e=this.$xeGantt,a=t.yThumbHeight,t=t.xThumbWidth,r=e.computeScrollbarOpts,l=e.computeScrollbarXToTop,e=e.computeScrollbarYToLeft,i=this.computeScrollXVisible,o=this.computeScrollYVisible;return domUtils.buildClass(["vxe-scrollbar is--virtual",r.fluentOverlay?"is--fluent-overlay":"is--default-mode","ov-x--".concat(!1===i?"hidden":"visible"),"ov-y--".concat(!1===o?"hidden":"visible"),"sx-pos--".concat(l?"top":"bottom"),"sy-pos--".concat(e?"left":"right")],{"overflow-y":a,"overflow-x":t})},computeScaleDateList:function(){var t=this.$xeGantt,e=this.reactData,a=t.reactData,r=e.minViewDate,l=e.maxViewDate,e=t.computeMinScale,i=t.computeScaleStep,t=t.computeTaskViewOpts.gridding,o=[];if(e&&r&&l){var n=e.type,c=e.startDay,s=-(a.currLeftSpacing+_xeUtils.default.toNumber(t&&t.leftSpacing||0)),u=a.currRightSpacing+_xeUtils.default.toNumber(t&&t.rightSpacing||0);switch(0<i&&(s*=i,u*=i),n){case"year":for(var d=_xeUtils.default.getWhatYear(r,s,"first"),f=_xeUtils.default.getWhatYear(l,u,"first");d<=f;){var h=d;o.push(h),d=_xeUtils.default.getWhatYear(d,i)}break;case"quarter":for(var p=_xeUtils.default.getWhatQuarter(r,s,"first"),g=_xeUtils.default.getWhatQuarter(l,u,"first");p<=g;){var m=p;o.push(m),p=_xeUtils.default.getWhatQuarter(p,i)}break;case"month":for(var S=_xeUtils.default.getWhatMonth(r,s,"first"),v=_xeUtils.default.getWhatMonth(l,u,"first");S<=v;){var x=S;o.push(x),S=_xeUtils.default.getWhatMonth(S,i)}break;case"week":for(var y=_xeUtils.default.getWhatWeek(r,s,c,c),b=_xeUtils.default.getWhatWeek(l,u,c,c);y<=b;){var _=y;o.push(_),y=_xeUtils.default.getWhatWeek(y,i)}break;case"day":case"date":for(var T=_xeUtils.default.getWhatDay(r,s,"first"),D=_xeUtils.default.getWhatDay(l,u,"first");T<=D;){var w=T;o.push(w),T=_xeUtils.default.getWhatDay(T,i)}break;case"hour":for(var U=_xeUtils.default.getWhatHours(r,s,"first"),W=_xeUtils.default.getWhatHours(l,u,"first");U<=W;){var E=U;o.push(E),U=_xeUtils.default.getWhatHours(U,i)}break;case"minute":for(var M=_xeUtils.default.getWhatMinutes(r,s,"first"),k=_xeUtils.default.getWhatMinutes(l,u,"first");M<=k;){var L=M;o.push(L),M=_xeUtils.default.getWhatMinutes(M,i)}break;case"second":for(var O=_xeUtils.default.getWhatSeconds(r,s,"first"),C=_xeUtils.default.getWhatSeconds(l,u,"first");O<=C;){var H=O;o.push(H),O=_xeUtils.default.getWhatSeconds(O,i)}}}return o},computeNowLineLeft:function(){var t=this.$xeGantt,e=this.reactData,a=this.internalData,r=t.reactData,l=e.minViewDate,i=e.maxViewDate,o=e.viewCellWidth,n=a.visibleColumn,e=a.todayDateMaps,a=t.computeMinScale,c=t.computeTaskViewOpts.showNowLine,t=t.computeTaskNowLineOpts.mode,r=r.nowTime,s=0;if(c&&a&&l&&i&&r>=l.getTime()&&r<=i.getTime()){for(var c=e[a.type],u=_xeUtils.default.toStringDate(c),d=null,f=null,h=0;h<n.length;h++){var p=n[h];if(p.startDateObj.date<=u&&p.endDateObj.date>=u){d=p,s=h*o,f=n[h+1];break}}"progress"===t?d&&f&&(l=d.dateObj.date.getTime(),s+=Math.max(0,Math.min(1,(r-l)/(f.dateObj.date.getTime()-l)))*o):"center"===t?s+=o/2:"end"===t&&(s+=o-1)}return s}}),methods:{getScrollViewElem:function(){var t=this.internalData.elemStore;return(0,_util.getRefElem)(t["main-body-scroll"])},refreshData:function(){var e=this,a=e.internalData;return handleUpdateData(e),handleRecalculateStyle(e),e.$nextTick().then(function(){var t=a.xeTable;if(handleRecalculateStyle(e),t)return t.recalculate()})},updateViewData:function(t){var e=this,a=e.$xeGantt,r=e.reactData,a=a.reactData,l=e.internalData.xeTable;return l&&(l=l.getReactData().tableData,r.tableData=l,t&&(a.currLeftSpacing=0,a.currRightSpacing=0,handleUpdateData(e)),handleRecalculateStyle(e)),e.$nextTick()},connectUpdate:function(t){var t=t.$table,e=this.internalData;return t&&(e.xeTable=t),this.$nextTick()},handleUpdateStyle:function(){return updateStyle(this)},handleLazyRecalculate:function(){return _handleLazyRecalculate(this)},handleUpdateCurrentRow:function(t){var e=this.internalData.xeTable,a=this.$refs.refElem;e&&a&&(t?(e.computeRowOpts.isCurrent||e.highlightCurrentRow)&&_xeUtils.default.arrayEach(a.querySelectorAll('[rowid="'.concat(e.getRowid(t),'"]')),function(t){return(0,_dom.addClass)(t,"row--current")}):_xeUtils.default.arrayEach(a.querySelectorAll(".row--current"),function(t){return(0,_dom.removeClass)(t,"row--current")}))},handleUpdateHoverRow:function(t){var e=this.internalData.xeTable,a=this.$refs.refElem;e&&a&&(t?_xeUtils.default.arrayEach(a.querySelectorAll('.vxe-body--row[rowid="'.concat(e.getRowid(t),'"]')),function(t){return(0,_dom.addClass)(t,"row--hover")}):_xeUtils.default.arrayEach(a.querySelectorAll(".vxe-body--row.row--hover"),function(t){return(0,_dom.removeClass)(t,"row--hover")}))},handleSyncScrollTop:function(t){var e=this.internalData,t=t.scrollTop,e=e.elemStore,e=(0,_util.getRefElem)(e["main-body-scroll"]);e&&(e.scrollTop=t)},handleScrollEvent:function(t,e,a,r,l){var i,o,n,c,s,u,d,f,h,p,g,m,S,v=this.internalData,x=this.$xeGantt,y=v.xeTable,b=v.lastScrollLeft,_=v.lastScrollTop,v=(0,_util.getRefElem)(v.elemStore["main-body-scroll"]);v&&y&&(i=v.clientHeight,o=v.clientWidth,n=v.scrollHeight,v=v.scrollWidth,u="",p=h=f=d=s=g=c=m=!1,a&&(S=y.computeScrollXThreshold,(g=l<=0)||(s=v-1<=l+o),b<l?(u="right",v-S<=l+o&&(p=!0)):(u="left",l<=S&&(h=!0))),e&&(b=y.computeScrollYThreshold,(m=r<=0)||(c=n-1<=r+i),_<r?(u="bottom",n-b<=r+i&&(f=!0)):(u="top",r<=b&&(d=!0))),this.updateThumbOffset(),handleScrollData(this,e,a,r,l),S={source:sourceType,scrollTop:r,scrollLeft:l,bodyHeight:i,bodyWidth:o,scrollHeight:n,scrollWidth:v,isX:a,isY:e,isTop:m,isBottom:c,isLeft:g,isRight:s,direction:u},(f||d||p||h)&&x.dispatchEvent("scroll-boundary",S,t),x.dispatchEvent("scroll",S,t))},triggerHeaderScrollEvent:function(t){var e,a,r,l=this.internalData,i=l.elemStore;l.inVirtualScroll||l.inBodyScroll||l.inFooterScroll||(e=t.currentTarget,i=(0,_util.getRefElem)(i["main-body-scroll"]),a=this.$refs.refScrollXHandleElem,i&&e&&(r=e.scrollLeft,l.inHeaderScroll=!0,(0,_dom.setScrollLeft)(a,r),(0,_dom.setScrollLeft)(i,r),this.handleScrollEvent(t,!1,!0,e.scrollTop,r)))},triggerBodyScrollEvent:function(t){var e,a,r,l,i,o=this,n=o.reactData,c=o.internalData,n=n.scrollXLoad,s=c.elemStore,u=c.lastScrollLeft,d=c.lastScrollTop;c.inVirtualScroll||c.inHeaderScroll||c.inFooterScroll||(e=t.currentTarget,s=(0,_util.getRefElem)(s["main-header-scroll"]),a=o.$refs.refScrollXHandleElem,r=o.$refs.refScrollYHandleElem,u=(l=e.scrollLeft)!==u,d=(i=e.scrollTop)!==d,c.inBodyScroll=!0,c.scrollRenderType="",d&&((0,_dom.setScrollTop)(r,i),syncTableScrollTop(o,i)),u&&(c.inBodyScroll=!0,(0,_dom.setScrollLeft)(a,l),(0,_dom.setScrollLeft)(s,l),n)&&triggerScrollXEvent(o),o.handleScrollEvent(t,d,u,e.scrollTop,l))},triggerVirtualScrollXEvent:function(t){var e,a,r,l=this.reactData,i=this.internalData,l=l.scrollXLoad,o=i.elemStore;i.inHeaderScroll||i.inBodyScroll||(e=t.currentTarget,a=(0,_util.getRefElem)(o["main-header-scroll"]),o=(0,_util.getRefElem)(o["main-body-scroll"]),e&&(r=e.scrollLeft,i.inVirtualScroll=!0,(0,_dom.setScrollLeft)(a,r),(0,_dom.setScrollLeft)(o,r),l&&triggerScrollXEvent(this),this.handleScrollEvent(t,!1,!0,e.scrollTop,r)))},triggerVirtualScrollYEvent:function(t){var e,a,r=this.internalData,l=r.elemStore;r.inHeaderScroll||r.inBodyScroll||(e=t.currentTarget,l=(0,_util.getRefElem)(l["main-body-scroll"]),e&&(a=e.scrollTop,r.inVirtualScroll=!0,(0,_dom.setScrollTop)(l,a),syncTableScrollTop(this,a),this.handleScrollEvent(t,!0,!1,a,e.scrollLeft)))},handleUpdateSXSpace:function(){return updateScrollXSpace(this)},handleUpdateSYSpace:function(){return updateScrollYSpace(this)},handleUpdateSYStatus:function(t){this.reactData.scrollYLoad=t},updateScrollbar:function(){var t=this;return t.computeGanttIsVScrollbar?t.$nextTick().then(function(){t.updateThumbSize(),t.updateThumbOffset()}):Promise.resolve()},handleGlobalResizeEvent:function(){_handleLazyRecalculate(this)},bindScrollbarResize:function(){var t,e,a,r=this,l=r.internalData,i=l.elemStore;r.computeGanttIsVScrollbar&&!l.scrollObserver&&(t=r.$refs.refElem,e=(0,_util.getRefElem)(i["main-body-xSpace"]),i=(0,_util.getRefElem)(i["main-body-xSpace"]),a=globalResize.create(function(){r.reScrollFlag++}),t&&a.observe(t),e&&a.observe(e),i&&a.observe(i),l.scrollObserver=a)},renderScrollX:function(t){return t("div",{key:"vsx",ref:"refScrollXVirtualElem",class:"vxe-gantt-view--scroll-x-virtual"},[t("div",{ref:"refScrollXLeftCornerElem",class:"vxe-gantt-view--scroll-x-left-corner"}),t("div",{ref:"refScrollXWrapperElem",class:"vxe-gantt-view--scroll-x-wrapper"},[t("div",{ref:"refScrollXHandleElem",class:"vxe-gantt-view--scroll-x-handle",on:{scroll:this.triggerVirtualScrollXEvent}},[t("div",{ref:"refScrollXSpaceElem",class:"vxe-gantt-view--scroll-x-space"})]),t("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),t("div",{ref:"refScrollXRightCornerElem",class:"vxe-gantt-view--scroll-x-right-corner"})])},renderScrollY:function(t){return t("div",{ref:"refScrollYVirtualElem",class:"vxe-gantt-view--scroll-y-virtual"},[t("div",{ref:"refScrollYTopCornerElem",class:"vxe-gantt-view--scroll-y-top-corner"}),t("div",{ref:"refScrollYWrapperElem",class:"vxe-gantt-view--scroll-y-wrapper"},[t("div",{ref:"refScrollYHandleElem",class:"vxe-gantt-view--scroll-y-handle",on:{scroll:this.triggerVirtualScrollYEvent}},[t("div",{ref:"refScrollYSpaceElem",class:"vxe-gantt-view--scroll-y-space"})]),t("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),t("div",{ref:"refScrollYBottomCornerElem",class:"vxe-gantt-view--scroll-y-bottom-corner"})])},renderViewport:function(t){return t("div",{class:"vxe-gantt-view--viewport-wrapper"},[t(_ganttHeader.default),t(_ganttBody.default),t(_ganttFooter.default)])},renderNativeBody:function(t){var e=this;return t("div",{class:"vxe-gantt-view--layout-wrapper"},e.$xeGantt.computeScrollbarYToLeft?[e.renderScrollY(t),e.renderViewport(t)]:[e.renderViewport(t),e.renderScrollY(t)])},renderVirtualBody:function(t){var e=this,a=e.$xeGantt,r=e.reactData,l=a.reactData.showLeftView,i=r.xThumbWidth,r=r.yThumbHeight,o=a.computeScrollbarOpts,n=e.computeGanttIsVScrollbar,c=e.computeScrollXAutoHide,s=e.computeScrollYAutoHide,u=e.computeScrollXVisible,d=e.computeScrollYVisible,f=a.computeScrollbarYToLeft,h=e.computeScrollbarWrapperClss;return t("div",{key:"lvb",class:["vxe-gantt--layout-wrapper","sx-pos--".concat(e.computeScrollbarXToTop?"top":"bottom"),"sy-pos--".concat(f?"left":"right"),{"is--virtual-scrollbar":n,"ov-padding":n&&o.padding,"ov-x--auto-hide":n&&c,"ov-y--auto-hide":n&&s,"overflow-y":r,"overflow-x":i}]},[e.renderViewport(t),t("div",{class:h},[!1===u?renderEmptyElement(a):t("div",{ref:"refTrackXElem",class:"vxe-scrollbar--track-x",on:{click:e.clickTrackXEvent}},[t("div",{ref:"refThumbXElem",class:"vxe-scrollbar--thumb-x",on:{pointerdown:e.pointerdownThumbXEvent,pointermove:e.pointermoveThumbXEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})]),f&&l||!1===d?renderEmptyElement(a):t("div",{ref:"refTrackYElem",class:"vxe-scrollbar--track-y",on:{click:e.clickTrackYEvent}},[t("div",{ref:"refThumbYElem",class:"vxe-scrollbar--thumb-y",on:{pointerdown:e.pointerdownThumbYEvent,pointermove:e.pointermoveThumbYEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})])])])},renderVN:function(t){var e=this,a=e.$xeGantt,r=e.reactData,l=r.overflowX,a=a.computeScrollbarXToTop;return t("div",{ref:"refElem",class:["vxe-gantt-view",{"is--scroll-y":r.overflowY,"is--scroll-x":l,"is--virtual-x":r.scrollXLoad,"is--virtual-y":r.scrollYLoad}]},[t("div",{class:"vxe-gantt-view--render-wrapper"},e.computeGanttIsVScrollbar?[e.renderVirtualBody(t)]:a?[e.renderScrollX(t),e.renderNativeBody(t)]:[e.renderNativeBody(t),e.renderScrollX(t)]),t("div",{class:"vxe-gantt-view--render-vars"},[t("div",{ref:"refColInfoElem",class:"vxe-gantt-view--column-info"})])])}},watch:{computeGanttIsVScrollbar:function(){var t=this;t.$nextTick(function(){t.bindScrollbarResize(),t.$nextTick(function(){t.reScrollFlag++})})},computeScrollbarXToTop:function(){this.reScrollFlag++},computeScrollbarYToLeft:function(){this.reScrollFlag++},computeScrollXVisible:function(){this.reScrollFlag++},computeScrollYVisible:function(){this.reScrollFlag++},computeScrollXHeight:function(){this.reScrollFlag++},computeScrollYWidth:function(){this.reScrollFlag++},reScrollFlag:function(){var t=this;t.$nextTick(function(){t.updateScrollbar(),t.$nextTick(function(){t.updateScrollbar()})})}},mounted:function(){var t=this;t.$nextTick(function(){t.bindScrollbarResize()}),globalEvents.on(t,"resize",t.handleGlobalResizeEvent)},beforeDestroy:function(){var t=this.reactData,e=this.internalData,a=e.scrollObserver;a&&a.disconnect(),globalEvents.off(this,"keydown"),_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(e,createInternalData())},render:function(t){return this.renderVN(t)}});
|
package/lib/gantt/src/gantt.js
CHANGED
|
@@ -2897,6 +2897,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
2897
2897
|
var taskSplitOpts = $xeGantt.computeTaskSplitOpts;
|
|
2898
2898
|
var scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
2899
2899
|
var scrollbarYToLeft = $xeGantt.computeScrollbarYToLeft;
|
|
2900
|
+
var scrollXAutoHide = $xeGantt.computeScrollXAutoHide;
|
|
2901
|
+
var scrollYAutoHide = $xeGantt.computeScrollYAutoHide;
|
|
2900
2902
|
var autoHideCollapseButton = taskSplitOpts.autoHideCollapseButton;
|
|
2901
2903
|
var childVNs = [];
|
|
2902
2904
|
layoutKeys.forEach(function (key) {
|
|
@@ -2916,6 +2918,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
2916
2918
|
key: 'tv',
|
|
2917
2919
|
class: ['vxe-gantt--gantt-container', "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom'), "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right'), {
|
|
2918
2920
|
'is--virtual-scrollbar': isVScrollbar,
|
|
2921
|
+
'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
|
|
2922
|
+
'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
|
|
2919
2923
|
'show--left': showLeftView,
|
|
2920
2924
|
'hide--left': !showLeftView,
|
|
2921
2925
|
'show--right': showRightView,
|