vxe-gantt 4.1.6 → 4.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/es/gantt/index.js +1 -0
  2. package/es/gantt/src/gantt-body.js +2 -5
  3. package/es/gantt/src/gantt-chart.js +35 -19
  4. package/es/gantt/src/gantt-view.js +27 -9
  5. package/es/gantt/src/gantt.js +63 -2
  6. package/es/gantt/src/static.js +22 -0
  7. package/es/gantt/src/table-emits.js +1 -0
  8. package/es/gantt/src/util.js +9 -0
  9. package/es/gantt/style.css +1 -1
  10. package/es/gantt/style.min.css +1 -1
  11. package/es/style.css +1 -1
  12. package/es/style.min.css +1 -1
  13. package/es/ui/index.js +5 -1
  14. package/es/ui/src/log.js +1 -1
  15. package/es/vxe-gantt/style.css +1 -1
  16. package/es/vxe-gantt/style.min.css +1 -1
  17. package/lib/gantt/index.js +16 -0
  18. package/lib/gantt/index.min.js +1 -1
  19. package/lib/gantt/src/gantt-body.js +2 -5
  20. package/lib/gantt/src/gantt-body.min.js +1 -1
  21. package/lib/gantt/src/gantt-chart.js +33 -19
  22. package/lib/gantt/src/gantt-chart.min.js +1 -1
  23. package/lib/gantt/src/gantt-view.js +23 -8
  24. package/lib/gantt/src/gantt-view.min.js +1 -1
  25. package/lib/gantt/src/gantt.js +84 -1
  26. package/lib/gantt/src/gantt.min.js +1 -1
  27. package/lib/gantt/src/static.js +28 -0
  28. package/lib/gantt/src/static.min.js +1 -0
  29. package/lib/gantt/src/table-emits.js +1 -1
  30. package/lib/gantt/src/table-emits.min.js +1 -1
  31. package/lib/gantt/src/util.js +12 -0
  32. package/lib/gantt/src/util.min.js +1 -1
  33. package/lib/gantt/style/style.css +1 -1
  34. package/lib/gantt/style/style.min.css +1 -1
  35. package/lib/index.umd.js +191 -43
  36. package/lib/index.umd.min.js +1 -1
  37. package/lib/style.css +1 -1
  38. package/lib/style.min.css +1 -1
  39. package/lib/ui/index.js +5 -1
  40. package/lib/ui/index.min.js +1 -1
  41. package/lib/ui/src/log.js +1 -1
  42. package/lib/ui/src/log.min.js +1 -1
  43. package/lib/vxe-gantt/style/style.css +1 -1
  44. package/lib/vxe-gantt/style/style.min.css +1 -1
  45. package/package.json +3 -3
  46. package/packages/gantt/index.ts +2 -0
  47. package/packages/gantt/src/gantt-body.ts +2 -5
  48. package/packages/gantt/src/gantt-chart.ts +36 -20
  49. package/packages/gantt/src/gantt-view.ts +30 -9
  50. package/packages/gantt/src/gantt.ts +72 -4
  51. package/packages/gantt/src/static.ts +21 -0
  52. package/packages/gantt/src/table-emits.ts +1 -0
  53. package/packages/gantt/src/util.ts +12 -0
  54. package/packages/ui/index.ts +4 -0
  55. package/styles/components/gantt-module/gantt-chart.scss +2 -1
  56. package/styles/components/gantt.scss +0 -1
  57. package/styles/theme/base.scss +2 -0
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let globalEvents=_core.VxeUI.globalEvents,sourceType="gantt",minuteMs=6e4,dayMs=60*minuteMs*24;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},lastScrollTop:0,lastScrollLeft:0}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(r,u){var e=_xeUtils.default.uniqueId();let U=(0,_vue.inject)("$xeGantt",{}),h=U.internalData,{computeTaskOpts:x,computeTaskViewOpts:p,computeStartField:m,computeEndField:y,computeScrollbarOpts:S,computeScrollbarXToTop:T,computeScrollbarYToLeft:b,computeScaleUnit:o,computeWeekScale:W,computeMinScale:E}=U.getComputeMaps(),i=(0,_vue.ref)(),M=(0,_vue.ref)(),w=(0,_vue.ref)(),D=(0,_vue.ref)(),H=(0,_vue.ref)(),L=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),k=(0,_vue.ref)(),C=(0,_vue.ref)(),I=(0,_vue.ref)(),d=(0,_vue.ref)(),n=(0,_vue.ref)(),Y=(0,_vue.ref)(),$=(0,_vue.reactive)({scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}),q=createInternalData(),_={refElem:i},V=(0,_vue.computed)(()=>{var{minViewDate:t,maxViewDate:l}=$,e=p.value,a=E.value,e=e.gridding,r=[];if(t&&l){var i=-_xeUtils.default.toNumber(e&&e.leftSpacing||0),o=_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(a.type){case"year":{let e=_xeUtils.default.getWhatYear(t,i,"first");for(var s=_xeUtils.default.getWhatYear(l,o,"first");e<=s;){var d=e;r.push(d),e=_xeUtils.default.getWhatYear(e,1)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(t,i,"first");for(var u=_xeUtils.default.getWhatQuarter(l,o,"first");e<=u;){var n=e;r.push(n),e=_xeUtils.default.getWhatQuarter(e,1)}break}case"month":{let e=_xeUtils.default.getWhatMonth(t,i,"first");for(var c=_xeUtils.default.getWhatMonth(l,o,"first");e<=c;){var f=e;r.push(f),e=_xeUtils.default.getWhatMonth(e,1)}break}case"week":{let e=_xeUtils.default.getWhatWeek(t,i,a.startDay,a.startDay);for(var v=_xeUtils.default.getWhatWeek(l,o,a.startDay,a.startDay);e<=v;){var h=e;r.push(h),e=_xeUtils.default.getWhatWeek(e,1)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(t,i,"first");for(var g=_xeUtils.default.getWhatDay(l,o,"first");e<=g;){var m=e;r.push(m),e=_xeUtils.default.getWhatDay(e,1)}break}case"hour":case"minute":case"second":{var y=(0,_util.getStandardGapTime)(a.type);let e=t.getTime()+i*y;for(var x=l.getTime()+o*y;e<=x;){var _=new Date(e);r.push(_),e+=y}break}}}return r}),O={computeScaleDateList:V},t={xID:e,props:r,context:u,reactData:$,internalData:q,getRefMaps:()=>_,getComputeMaps:()=>O},g=e=>{var t=x.value.dateFormat;return _xeUtils.default.toStringDate(e,t||null)},F=()=>{var e=U.reactData.taskScaleList,e=e.find(e=>"week"===e.type),t=new Date,[l,a,r,i,o,s]=_xeUtils.default.toDateString(t,"yyyy-M-d-H-m-s").split("-"),d=t.getDay()+1,u=Math.ceil((t.getMonth()+1)/3),t=_xeUtils.default.getYearWeek(t,e?e.startDay:void 0);q.todayDateMaps={year:l,quarter:l+"_q"+u,month:l+"_"+a,week:l+"_W"+t,day:l+`_${a}_${r}_E`+d,date:l+`_${a}_`+r,hour:l+`_${a}_${r}_`+i,minute:l+`_${a}_${r}_${i}_`+o,second:l+`_${a}_${r}_${i}_${o}_`+s}},j=()=>{var e=U.reactData.taskScaleList,t=o.value;let s=E.value;var l=W.value,a=V.value;let r=[],d=[];if(s&&t&&a.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},o={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}};var u=(t,l,a)=>{if(s.type!==t){var l=l[t],r=""+l.field;let e=o[t][r];e||(e=l,o[t][r]=e,i[t].push(e)),e&&(e.children||(e.children=[]),e.children.push(a))}};for(let e=0;e<a.length;e++){var n=a[e],[c,f,v,h,g,m,y,x,_,p,S,T]=_xeUtils.default.toDateString(n,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-"),b=n.getDay(),M=b+1,w=Math.ceil((n.getMonth()+1)/3),D=""+_xeUtils.default.getYearWeek(n,l?l.startDay:void 0),n={date:n,yy:c,yyyy:f,M:v,MM:h,d:g,dd:m,H:y,HH:x,m:_,mm:p,s:S,ss:T,q:w,W:D,WW:_xeUtils.default.padStart(D,2,"0"),E:M,e:b},c={year:{field:f,title:f,dateObj:n},quarter:{field:f+"_q"+w,title:""+w,dateObj:n},month:{field:f+"_"+h,title:h,dateObj:n},week:{field:f+"_W"+D,title:D,dateObj:n},day:{field:f+`_${h}_${m}_E`+M,title:""+M,dateObj:n},date:{field:f+`_${h}_`+m,title:m,dateObj:n},hour:{field:f+`_${h}_${m}_`+x,title:x,dateObj:n},minute:{field:f+`_${h}_${m}_${x}_`+p,title:p,dateObj:n},second:{field:f+`_${h}_${m}_${x}_${p}_`+T,title:T,dateObj:n}},v=c[s.type];s.level<19&&u("year",c,v),s.level<17&&u("quarter",c,v),s.level<15&&u("month",c,v),s.level<13&&u("week",c,v),s.level<11&&u("day",c,v),s.level<9&&u("date",c,v),s.level<7&&u("hour",c,v),s.level<5&&u("minute",c,v),s.level<3&&u("second",c,v),r.push(v)}e.forEach(e=>{var t;e.type===s.type?d.push({scaleItem:e,columns:r}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),d.push({scaleItem:e,columns:t}))})}return{fullCols:r,groupCols:d}},B=e=>{let i=$.minViewDate;var t=E.value,l=o.value;let d=W.value;switch(l){case"year":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy"),a=_xeUtils.default.getWhatYear(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy"),i=_xeUtils.default.getWhatYear(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatYear(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"quarter":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-q");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-q"),a=_xeUtils.default.getWhatQuarter(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-q"),i=_xeUtils.default.getWhatQuarter(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatQuarter(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"month":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM"),a=_xeUtils.default.getWhatMonth(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM"),i=_xeUtils.default.getWhatMonth(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatMonth(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"week":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-W",{firstDay:d?d.startDay:void 0});s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-W",{firstDay:d?d.startDay:void 0}),a=_xeUtils.default.getWhatWeek(e,0,d?d.startDay:void 0,d?d.startDay:void 0),r=_xeUtils.default.toDateString(t,"yyyy-W",{firstDay:d?d.startDay:void 0}),i=_xeUtils.default.getWhatWeek(t,0,d?d.startDay:void 0,d?d.startDay:void 0),o=Math.floor((_xeUtils.default.getWhatWeek(t,1,d?d.startDay:void 0,d?d.startDay:void 0).getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"day":case"date":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd"),i=_xeUtils.default.getWhatDay(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatDay(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"hour":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd HH");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd HH"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd HH"),i=_xeUtils.default.getWhatHours(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatHours(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"minute":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd HH:mm");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd HH:mm"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd HH:mm"),i=_xeUtils.default.getWhatMinutes(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatMinutes(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"second":{let r=(0,_util.getStandardGapTime)(t.type);return(e,t)=>{e=g(e),t=g(t);let l=0,a=0;return i&&(l=(e.getTime()-i.getTime())/r,a=(t.getTime()-e.getTime())/r+1),{offsetLeftSize:l,offsetWidthSize:a}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},G=()=>{var e=U.props.treeConfig,t=q.scrollXStore,r=q.xeTable;let i=null,o=null;if(r){let l=m.value,a=y.value;var{computeAggregateOpts:s,computeTreeOpts:d}=r.getComputeMaps(),u=r.reactData.isRowGroupStatus,{afterFullData:r,afterTreeFullData:n,afterGroupFullData:c}=r.internalData,s=s.value,d=d.value,f=d.transform,v=d.children||d.childrenField,h=e=>{var t=_xeUtils.default.get(e,l),e=_xeUtils.default.get(e,a);t&&e&&(t=g(t),(!i||i.getTime()>t.getTime())&&(i=t),t=g(e),!o||o.getTime()<t.getTime())&&(o=t)};u?(u=s.mapChildrenField)&&_xeUtils.default.eachTree(c,h,{children:u}):e?_xeUtils.default.eachTree(n,h,{children:f?d.mapChildrenField:v}):r.forEach(h)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),$.minViewDate=i,$.maxViewDate=o,q.startMaps={},q.endMaps={},(()=>{var e=U.props.treeConfig,{minViewDate:t,maxViewDate:l}=$,{fullCols:a,groupCols:r}=j();if(t&&l&&a.length){let d=q.xeTable;if(d){let r=m.value,i=y.value;var{computeAggregateOpts:t,computeTreeOpts:l}=d.getComputeMaps(),u=d.reactData.isRowGroupStatus,{afterFullData:n,afterTreeFullData:c,afterGroupFullData:f}=d.internalData,t=t.value,l=l.value,v=l.transform,h=l.children||l.childrenField;let o={},s=B(a);var g=e=>{var t=d.getRowid(e),l=_xeUtils.default.get(e,r),a=_xeUtils.default.get(e,i);l&&a&&({offsetLeftSize:l,offsetWidthSize:a}=s(l,a),o[t]={row:e,rowid:t,oLeftSize:l,oWidthSize:a})};u?(u=t.mapChildrenField)&&_xeUtils.default.eachTree(f,g,{children:u}):e?_xeUtils.default.eachTree(c,g,{children:v?l.mapChildrenField:h}):n.forEach(g),q.chartMaps=o}}q.visibleColumn=a,$.headerGroups=r,F(),K(),Z()})()},c=()=>{var{scrollXWidth:e,scrollYHeight:t}=$,l=q.elemStore,a=S.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=D.value,i=R.value;l&&(t=t>l.clientHeight,i&&($.scrollbarWidth=a.width||i.offsetWidth-i.clientWidth||14),$.overflowY=t,i=e>l.clientWidth,r&&($.scrollbarHeight=a.height||r.offsetHeight-r.clientHeight||14),$.overflowX=i)},A=()=>{let l=h.dragBarRow,a=$.viewCellWidth,{elemStore:e,chartMaps:r}=q,i=q.xeTable;var t=(0,_util.getRefElem)(e["main-chart-wrapper"]);return t&&i&&_xeUtils.default.arrayEach(t.children,e=>{var t=e.children[0];t&&(e=e.getAttribute("rowid"),l&&i.getRowid(l)===e||(e=e?r[e]:null,t.style.left=`${e?a*e.oLeftSize:0}px`,t.style.width=Math.max(1,e?Math.floor(a*e.oWidthSize)-1:0)+"px"))}),(0,_vue.nextTick)()},f=()=>{var{scrollbarWidth:s,scrollbarHeight:d,headerGroups:u,tableColumn:n}=$,{elemStore:c,visibleColumn:f}=q,v=q.xeTable,h=i.value;if(h){var g=S.value,m=T.value,y=b.value,x=H.value,_=L.value,p=M.value;let e=s;s=d;let t=0,l=0,a=0,r=(v&&(d=v.internalData,t=d.tBodyHeight,l=d.tHeaderHeight,a=d.tFooterHeight),"visible");(y||g.y&&!1===g.y.visible)&&(e=0,r="hidden");v=(0,_util.getRefElem)(c["main-header-scroll"]),d=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/u.length+"px")),(0,_util.getRefElem)(c["main-body-scroll"])),y=(d&&(d.style.height=t+"px"),(0,_util.getRefElem)(c["main-footer-scroll"])),g=(y&&(y.style.height=a+"px"),p&&(p.style.height=s+"px",p.style.visibility="visible"),k.value),v=(g&&(g.style.left=m?e+"px":"",g.style.width=h.clientWidth-e+"px"),x&&(x.style.width=m?e+"px":"",x.style.display=m&&s?"block":""),_&&(_.style.width=m?"":e+"px",_.style.display=!m&&s?"block":""),w.value),u=(v&&(v.style.width=e+"px",v.style.height=t+l+a+"px",v.style.visibility=r),z.value),y=(u&&(u.style.height=l+"px",u.style.display=l?"block":""),C.value),p=(y&&(y.style.height=t+"px",y.style.top=l+"px"),I.value),g=(p&&(p.style.height=a+"px",p.style.top=l+t+"px",p.style.display=a?"block":""),Y.value);let i=40,o=(i=g?g.clientWidth||40:i)*f.length;d&&0<(x=(h=d.clientWidth)-o)&&(i+=x/f.length,o=h),$.viewCellWidth=i;_=(0,_util.getRefElem)(c["main-header-table"]),m=(0,_util.getRefElem)(c["main-body-table"]),s=i*n.length;return _&&(_.style.width=o+"px"),m&&(m.style.width=s+"px"),$.scrollXWidth=o,A()}},s=()=>{var e=i.value;return q.rceRunTime=Date.now(),e&&e.clientWidth?(c(),f(),A(),(0,_vue.nextTick)().then(()=>{var e,t=$.scrollXLoad,l=q.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=N(),l.preloadSize=1,l.offsetSize=2,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+2,l.endIndex),l.visibleStartIndex=Math.max(l.startIndex,t),l.visibleEndIndex=Math.min(l.endIndex,t+e),J().then(()=>{P()})):a()})):(0,_vue.nextTick)()},Q=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=q,a=q.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(s()):(0,_vue.nextTick)(()=>{e()}),q.rceTimeout=setTimeout(()=>{q.rceTimeout=void 0,s()},r)}),N=()=>{var e,t=$.viewCellWidth,l=q.elemStore,l=(0,_util.getRefElem)(l["main-body-scroll"]);return l?(e=l.clientWidth,l=l.scrollLeft,l=Math.floor(l/t)-1,e=Math.ceil(e/t)+1,{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}},P=()=>{var e=$.isScrollXBig,t=q.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:o,visibleSize:s}=N(),e={startIndex:Math.max(0,e?o-1:o-1-i-l),endIndex:e?o+s:o+s+i+l},{startIndex:i,endIndex:l}=(t.visibleStartIndex=o-1,t.visibleEndIndex=o+s+1,e);!(o<=a||r-s-1<=o)||a===i&&r===l||(t.startIndex=i,t.endIndex=l,J())},J=()=>(Z(),a(),(0,_vue.nextTick)()),K=()=>$.scrollXLoad=!0,Z=()=>{var e=$.scrollXLoad,{visibleColumn:t,scrollXStore:l}=q,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);$.tableColumn=e},a=()=>{let{scrollXLoad:t,scrollXWidth:l,viewCellWidth:e}=$,{elemStore:a,scrollXStore:r}=q;var i=(0,_util.getRefElem)(a["main-body-table"]),o=r.startIndex;let s=0;t&&(s=Math.max(0,o*e)),i&&(i.style.transform=`translate(${s}px, ${$.scrollYTop||0}px)`);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?l+"px":"")});o=d.value;return o&&(o.style.width=l+"px"),c(),(0,_vue.nextTick)()},ee=()=>{P()},te=(e,t)=>{var l=q.lcsTimeout;$.lazScrollLoading=!0,l&&clearTimeout(l),q.lcsTimeout=setTimeout(()=>{q.lcsRunTime=Date.now(),q.lcsTimeout=void 0,q.intoRunScroll=!1,q.inVirtualScroll=!1,q.inWheelScroll=!1,q.inHeaderScroll=!1,q.inBodyScroll=!1,q.inFooterScroll=!1,$.lazScrollLoading=!1},200)},X=(e,t,l,a)=>{t&&(q.lastScrollLeft=a),e&&(q.lastScrollTop=l),$.lastScrollTime=Date.now(),te(t,e)},v=(u,n,c,f,v)=>{var h=q.xeTable,{lastScrollLeft:g,lastScrollTop:m}=q,y=D.value,x=R.value;if(y&&x&&h){var{computeScrollXThreshold:h,computeScrollYThreshold:_}=h.getComputeMaps(),p=x.clientHeight,S=y.clientWidth,x=x.scrollHeight,y=y.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,o=!1,s=!1,d=!1;c&&(h=h.value,(l=v<=0)||(a=y-1<=v+S),g<v?(r="right",y-h<=v+S&&(d=!0)):(r="left",v<=h&&(s=!0))),n&&(g=_.value,(e=f<=0)||(t=x-1<=f+p),m<f?(r="bottom",x-g<=f+p&&(o=!0)):(r="top",f<=g&&(i=!0))),X(n,c,f,v);h={source:sourceType,scrollTop:f,scrollLeft:v,bodyHeight:p,bodyWidth:S,scrollHeight:x,scrollWidth:y,isX:c,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(o||i||d||s)&&U.dispatchEvent("scroll-boundary",h,u),U.dispatchEvent("scroll",h,u)}},le=e=>{var t=q.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:f,handleLazyRecalculate:Q,handleUpdateCurrentRow(e){var t,l,a=q.xeTable,r=i.value;a&&r&&(e?(t=a.props,l=a.getComputeMaps().computeRowOpts,(l.value.isCurrent||t.highlightCurrentRow)&&_xeUtils.default.arrayEach(r.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${a.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--current"))):_xeUtils.default.arrayEach(r.querySelectorAll(".vxe-gantt-view--body-row.row--current"),e=>(0,_dom.removeClass)(e,"row--current")))},handleUpdateHoverRow(e){var t=q.xeTable,l=i.value;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${t.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--hover")):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-gantt-view--body-row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")))},triggerHeaderScrollEvent(e){var{elemStore:t,inVirtualScroll:l,inBodyScroll:a,inFooterScroll:r}=q;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=D.value,a&&l&&(t=l.scrollLeft,q.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),v(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=$.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:o,inFooterScroll:s,lastScrollLeft:d,lastScrollTop:u}=q;i||o||s||(i=e.currentTarget,o=(0,_util.getRefElem)(r["main-header-scroll"]),s=D.value,r=R.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,q.inBodyScroll=!0,q.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),le(l)),d&&(q.inBodyScroll=!0,(0,_dom.setScrollLeft)(s,t),(0,_dom.setScrollLeft)(o,t),a)&&ee(),u&&X(u,d,i.scrollTop,t),d&&v(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=$.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=q;r||i||(r=e.currentTarget,i=(0,_util.getRefElem)(a["main-header-scroll"]),a=(0,_util.getRefElem)(a["main-body-scroll"]),r&&(t=r.scrollLeft,q.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&ee(),v(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=q;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,q.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),le(e),X(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return a()},handleUpdateSYSpace(){return(()=>{var e=q.elemStore,t=q.xeTable,l=(0,_util.getRefElem)(e["main-body-scroll"]),a=(0,_util.getRefElem)(e["main-body-table"]);let r=0,i=0,o=!1,s=(t&&(t=t.reactData,r=t.scrollYTop,i=t.scrollYHeight,o=t.isScrollYBig),i),d=r,u=0;l&&(u=l.clientHeight),o&&(d=l&&a&&l.scrollTop+u>=maxYHeight?maxYHeight-a.clientHeight:(maxYHeight-u)*(r/(i-u)),s=maxYHeight);t=(0,_util.getRefElem)(e["main-chart-wrapper"]),a&&(a.style.transform=`translate(${$.scrollXLeft||0}px, ${d}px)`),t&&(t.style.transform=`translate(${$.scrollXLeft||0}px, ${d}px)`),l=(0,_util.getRefElem)(e["main-body-ySpace"]),l&&(l.style.height=s?s+"px":""),a=n.value;return a&&(a.style.height=s?s+"px":""),$.scrollYTop=d,$.scrollYHeight=i,$.isScrollYBig=o,c(),(0,_vue.nextTick)().then(()=>{f()})})()},handleUpdateSYStatus(e){$.scrollYLoad=e}};let ae=()=>{Q()},re=(Object.assign(t,{refreshData(){return G(),s(),(0,_vue.nextTick)().then(()=>{var e=q.xeTable;if(s(),e)return e.recalculate()})},updateViewData(){var e=q.xeTable;return e&&(e=e.reactData.tableData,$.tableData=e),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(q.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:M,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:H,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:k,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:D,class:"vxe-gantt-view--scroll-x-handle",onScroll:t.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:d,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:L,class:"vxe-gantt-view--scroll-x-right-corner"})])),ie=()=>(0,_vue.h)("div",{ref:w,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:z,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-y-handle",onScroll:t.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:n,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:I,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),oe=()=>(0,_vue.h)("div",{class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),se=()=>{var e=b.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ie(),oe()]:[oe(),ie()])};let l=(0,_vue.ref)(0);return(0,_vue.watch)(()=>$.tableData,()=>{l.value++}),(0,_vue.watch)(()=>$.tableData.length,()=>{l.value++}),(0,_vue.watch)(l,()=>{G()}),(0,_vue.onMounted)(()=>{globalEvents.on(t,"resize",ae)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(t,"keydown"),_xeUtils.default.assign(q,createInternalData())}),t.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=$,r=T.value;return(0,_vue.h)("div",{ref:i,class:["vxe-gantt-view",{"is--scroll-y":t,"is--scroll-x":e,"is--virtual-x":l,"is--virtual-y":a}]},[(0,_vue.h)("div",{class:"vxe-gantt-view--render-wrapper"},r?[re(),se()]:[se(),re()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",t),t},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let globalEvents=_core.VxeUI.globalEvents,sourceType="gantt",minuteMs=6e4,dayMs=60*minuteMs*24;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},lastScrollTop:0,lastScrollLeft:0}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(l,r){var e=_xeUtils.default.uniqueId();let U=(0,_vue.inject)("$xeGantt",{}),u=U.internalData,{computeTaskOpts:h,computeTaskViewOpts:p,computeStartField:m,computeEndField:y,computeScrollbarOpts:S,computeScrollbarXToTop:T,computeScrollbarYToLeft:b,computeScaleUnit:o,computeWeekScale:W,computeMinScale:E}=U.getComputeMaps(),i=(0,_vue.ref)(),w=(0,_vue.ref)(),M=(0,_vue.ref)(),D=(0,_vue.ref)(),H=(0,_vue.ref)(),L=(0,_vue.ref)(),k=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),C=(0,_vue.ref)(),I=(0,_vue.ref)(),d=(0,_vue.ref)(),n=(0,_vue.ref)(),Y=(0,_vue.ref)(),$=(0,_vue.reactive)({scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}),q=createInternalData(),_={refElem:i},V=(0,_vue.computed)(()=>{var{minViewDate:t,maxViewDate:l}=$,e=p.value,a=E.value,e=e.gridding,r=[];if(t&&l){var i=-_xeUtils.default.toNumber(e&&e.leftSpacing||0),o=_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(a.type){case"year":{let e=_xeUtils.default.getWhatYear(t,i,"first");for(var s=_xeUtils.default.getWhatYear(l,o,"first");e<=s;){var d=e;r.push(d),e=_xeUtils.default.getWhatYear(e,1)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(t,i,"first");for(var u=_xeUtils.default.getWhatQuarter(l,o,"first");e<=u;){var n=e;r.push(n),e=_xeUtils.default.getWhatQuarter(e,1)}break}case"month":{let e=_xeUtils.default.getWhatMonth(t,i,"first");for(var c=_xeUtils.default.getWhatMonth(l,o,"first");e<=c;){var f=e;r.push(f),e=_xeUtils.default.getWhatMonth(e,1)}break}case"week":{let e=_xeUtils.default.getWhatWeek(t,i,a.startDay,a.startDay);for(var v=_xeUtils.default.getWhatWeek(l,o,a.startDay,a.startDay);e<=v;){var h=e;r.push(h),e=_xeUtils.default.getWhatWeek(e,1)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(t,i,"first");for(var g=_xeUtils.default.getWhatDay(l,o,"first");e<=g;){var m=e;r.push(m),e=_xeUtils.default.getWhatDay(e,1)}break}case"hour":case"minute":case"second":{var y=(0,_util.getStandardGapTime)(a.type);let e=t.getTime()+i*y;for(var _=l.getTime()+o*y;e<=_;){var x=new Date(e);r.push(x),e+=y}break}}}return r}),x={computeScaleDateList:V},X={xID:e,props:l,context:r,reactData:$,internalData:q,getRefMaps:()=>_,getComputeMaps:()=>x},g=e=>{var t=h.value.dateFormat;return _xeUtils.default.toStringDate(e,t||null)},F=()=>{var e=U.reactData.taskScaleList,e=e.find(e=>"week"===e.type),t=new Date,[l,a,r,i,o,s]=_xeUtils.default.toDateString(t,"yyyy-M-d-H-m-s").split("-"),d=t.getDay()+1,u=Math.ceil((t.getMonth()+1)/3),t=_xeUtils.default.getYearWeek(t,e?e.startDay:void 0);q.todayDateMaps={year:l,quarter:l+"_q"+u,month:l+"_"+a,week:l+"_W"+t,day:l+`_${a}_${r}_E`+d,date:l+`_${a}_`+r,hour:l+`_${a}_${r}_`+i,minute:l+`_${a}_${r}_${i}_`+o,second:l+`_${a}_${r}_${i}_${o}_`+s}},j=()=>{var e=U.reactData.taskScaleList,t=o.value;let s=E.value;var l=W.value,a=V.value;let r=[],d=[];if(s&&t&&a.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},o={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}};var u=(t,l,a)=>{if(s.type!==t){var l=l[t],r=""+l.field;let e=o[t][r];e||(e=l,o[t][r]=e,i[t].push(e)),e&&(e.children||(e.children=[]),e.children.push(a))}};for(let e=0;e<a.length;e++){var n=a[e],[c,f,v,h,g,m,y,_,x,p,S,T]=_xeUtils.default.toDateString(n,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-"),b=n.getDay(),w=b+1,M=Math.ceil((n.getMonth()+1)/3),D=""+_xeUtils.default.getYearWeek(n,l?l.startDay:void 0),n={date:n,yy:c,yyyy:f,M:v,MM:h,d:g,dd:m,H:y,HH:_,m:x,mm:p,s:S,ss:T,q:M,W:D,WW:_xeUtils.default.padStart(D,2,"0"),E:w,e:b},c={year:{field:f,title:f,dateObj:n},quarter:{field:f+"_q"+M,title:""+M,dateObj:n},month:{field:f+"_"+h,title:h,dateObj:n},week:{field:f+"_W"+D,title:D,dateObj:n},day:{field:f+`_${h}_${m}_E`+w,title:""+w,dateObj:n},date:{field:f+`_${h}_`+m,title:m,dateObj:n},hour:{field:f+`_${h}_${m}_`+_,title:_,dateObj:n},minute:{field:f+`_${h}_${m}_${_}_`+p,title:p,dateObj:n},second:{field:f+`_${h}_${m}_${_}_${p}_`+T,title:T,dateObj:n}},v=c[s.type];s.level<19&&u("year",c,v),s.level<17&&u("quarter",c,v),s.level<15&&u("month",c,v),s.level<13&&u("week",c,v),s.level<11&&u("day",c,v),s.level<9&&u("date",c,v),s.level<7&&u("hour",c,v),s.level<5&&u("minute",c,v),s.level<3&&u("second",c,v),r.push(v)}e.forEach(e=>{var t;e.type===s.type?d.push({scaleItem:e,columns:r}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),d.push({scaleItem:e,columns:t}))})}return{fullCols:r,groupCols:d}},B=e=>{let i=$.minViewDate;var t=E.value,l=o.value;let d=W.value;switch(l){case"year":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy"),a=_xeUtils.default.getWhatYear(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy"),i=_xeUtils.default.getWhatYear(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatYear(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"quarter":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-q");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-q"),a=_xeUtils.default.getWhatQuarter(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-q"),i=_xeUtils.default.getWhatQuarter(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatQuarter(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"month":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM"),a=_xeUtils.default.getWhatMonth(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM"),i=_xeUtils.default.getWhatMonth(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatMonth(t,1,"first").getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"week":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-W",{firstDay:d?d.startDay:void 0});s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-W",{firstDay:d?d.startDay:void 0}),a=_xeUtils.default.getWhatWeek(e,0,d?d.startDay:void 0,d?d.startDay:void 0),r=_xeUtils.default.toDateString(t,"yyyy-W",{firstDay:d?d.startDay:void 0}),i=_xeUtils.default.getWhatWeek(t,0,d?d.startDay:void 0,d?d.startDay:void 0),o=Math.floor((_xeUtils.default.getWhatWeek(t,1,d?d.startDay:void 0,d?d.startDay:void 0).getTime()-i.getTime())/dayMs),e=(e.getTime()-a.getTime())/dayMs/o,a=Math.max(0,(t.getTime()-i.getTime())/dayMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"day":case"date":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd"),i=_xeUtils.default.getWhatDay(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatDay(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"hour":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd HH");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd HH"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd HH"),i=_xeUtils.default.getWhatHours(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatHours(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"minute":{let s={};return e.forEach(({dateObj:e},t)=>{e=_xeUtils.default.toDateString(e.date,"yyyy-MM-dd HH:mm");s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=_xeUtils.default.toDateString(e,"yyyy-MM-dd HH:mm"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,"yyyy-MM-dd HH:mm"),i=_xeUtils.default.getWhatMinutes(t,0,"first"),o=Math.floor((_xeUtils.default.getWhatMinutes(t,1,"first").getTime()-i.getTime())/minuteMs),e=(e.getTime()-a.getTime())/minuteMs/o,a=Math.max(0,(t.getTime()-i.getTime())/minuteMs+1)/o,t=(s[l]||0)+e;return{offsetLeftSize:t,offsetWidthSize:(s[r]||0)-t+a+1}}}case"second":{let r=(0,_util.getStandardGapTime)(t.type);return(e,t)=>{e=g(e),t=g(t);let l=0,a=0;return i&&(l=(e.getTime()-i.getTime())/r,a=(t.getTime()-e.getTime())/r+1),{offsetLeftSize:l,offsetWidthSize:a}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},G=()=>{var e=U.props.treeConfig,t=q.scrollXStore,r=q.xeTable;let i=null,o=null;if(r){let l=m.value,a=y.value;var{computeAggregateOpts:s,computeTreeOpts:d}=r.getComputeMaps(),u=r.reactData.isRowGroupStatus,{afterFullData:r,afterTreeFullData:n,afterGroupFullData:c}=r.internalData,s=s.value,d=d.value,f=d.transform,v=d.children||d.childrenField,h=e=>{var t=_xeUtils.default.get(e,l),e=_xeUtils.default.get(e,a);t&&e&&(t=g(t),(!i||i.getTime()>t.getTime())&&(i=t),t=g(e),!o||o.getTime()<t.getTime())&&(o=t)};u?(u=s.mapChildrenField)&&_xeUtils.default.eachTree(c,h,{children:u}):e?_xeUtils.default.eachTree(n,h,{children:f?d.mapChildrenField:v}):r.forEach(h)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),$.minViewDate=i,$.maxViewDate=o,q.startMaps={},q.endMaps={},(()=>{var e=U.props.treeConfig,{minViewDate:t,maxViewDate:l}=$,{fullCols:a,groupCols:r}=j();if(t&&l&&a.length){let d=q.xeTable;if(d){let r=m.value,i=y.value;var{computeAggregateOpts:t,computeTreeOpts:l}=d.getComputeMaps(),u=d.reactData.isRowGroupStatus,{afterFullData:n,afterTreeFullData:c,afterGroupFullData:f}=d.internalData,t=t.value,l=l.value,v=l.transform,h=l.children||l.childrenField;let o={},s=B(a);var g=e=>{var t=d.getRowid(e),l=_xeUtils.default.get(e,r),a=_xeUtils.default.get(e,i);l&&a&&({offsetLeftSize:l,offsetWidthSize:a}=s(l,a),o[t]={row:e,rowid:t,oLeftSize:l,oWidthSize:a})};u?(u=t.mapChildrenField)&&_xeUtils.default.eachTree(f,g,{children:u}):e?_xeUtils.default.eachTree(c,g,{children:v?l.mapChildrenField:h}):n.forEach(g),q.chartMaps=o}}q.visibleColumn=a,$.headerGroups=r,F(),K(),Z()})()},c=()=>{var{scrollXWidth:e,scrollYHeight:t}=$,l=q.elemStore,a=S.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=D.value,i=k.value;l&&(t=t>l.clientHeight,i&&($.scrollbarWidth=a.width||i.offsetWidth-i.clientWidth||14),$.overflowY=t,i=e>l.clientWidth,r&&($.scrollbarHeight=a.height||r.offsetHeight-r.clientHeight||14),$.overflowX=i)},A=()=>{let l=u.dragBarRow,a=$.viewCellWidth,{elemStore:e,chartMaps:r}=q,i=q.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);return t&&i&&_xeUtils.default.arrayEach(t.children,e=>{var t=e.children[0];t&&(e=e.getAttribute("rowid"),l&&i.getRowid(l)===e||(e=e?r[e]:null,t.style.left=(0,_util.getTaskBarLeft)(e,a)+"px",t.style.width=(0,_util.getTaskBarWidth)(e,a)+"px"))}),(0,_vue.nextTick)()},f=()=>{var{scrollbarWidth:s,scrollbarHeight:d,headerGroups:u,tableColumn:n}=$,{elemStore:c,visibleColumn:f}=q,v=q.xeTable,h=i.value;if(h&&U){var g=S.value,m=T.value,y=b.value,_=H.value,x=L.value,p=w.value;let e=s;s=d;let t=0,l=0,a=0,r=(v&&(d=v.internalData,t=d.tBodyHeight,l=d.tHeaderHeight,a=d.tFooterHeight),"visible");(y||g.y&&!1===g.y.visible)&&(e=0,r="hidden");v=(0,_util.getRefElem)(c["main-header-scroll"]),d=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/u.length+"px")),(0,_util.getRefElem)(c["main-body-scroll"])),y=(d&&(d.style.height=t+"px"),(0,_util.getRefElem)(c["main-footer-scroll"])),g=(y&&(y.style.height=a+"px"),p&&(p.style.height=s+"px",p.style.visibility="visible"),z.value),v=(g&&(g.style.left=m?e+"px":"",g.style.width=h.clientWidth-e+"px"),_&&(_.style.width=m?e+"px":"",_.style.display=m&&s?"block":""),x&&(x.style.width=m?"":e+"px",x.style.display=!m&&s?"block":""),M.value),u=(v&&(v.style.width=e+"px",v.style.height=t+l+a+"px",v.style.visibility=r),R.value),y=(u&&(u.style.height=l+"px",u.style.display=l?"block":""),C.value),p=(y&&(y.style.height=t+"px",y.style.top=l+"px"),I.value),g=(p&&(p.style.height=a+"px",p.style.top=l+t+"px",p.style.display=a?"block":""),Y.value);let i=40,o=(i=g?g.clientWidth||40:i)*f.length;d&&0<(_=(h=d.clientWidth)-o)&&(i+=_/f.length,o=h),$.viewCellWidth=i;x=(0,_util.getRefElem)(c["main-header-table"]),m=(0,_util.getRefElem)(c["main-body-table"]),s=i*n.length;return x&&(x.style.width=o+"px"),m&&(m.style.width=s+"px"),$.scrollXWidth=o,Promise.all([A(),U.handleUpdateTaskLink?U.handleUpdateTaskLink(X):null])}},s=()=>{var e=i.value;return q.rceRunTime=Date.now(),e&&e.clientWidth&&U?(c(),f(),(0,_vue.nextTick)().then(()=>{var e,t=$.scrollXLoad,l=q.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=N(),l.preloadSize=1,l.offsetSize=2,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+2,l.endIndex),l.visibleStartIndex=Math.max(l.startIndex,t),l.visibleEndIndex=Math.min(l.endIndex,t+e),J().then(()=>{P()})):a()})):(0,_vue.nextTick)()},Q=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=q,a=q.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(s()):(0,_vue.nextTick)(()=>{e()}),q.rceTimeout=setTimeout(()=>{q.rceTimeout=void 0,s()},r)}),N=()=>{var e,t=$.viewCellWidth,l=q.elemStore,l=(0,_util.getRefElem)(l["main-body-scroll"]);return l?(e=l.clientWidth,l=l.scrollLeft,l=Math.floor(l/t)-1,e=Math.ceil(e/t)+1,{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}},P=()=>{var e=$.isScrollXBig,t=q.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:o,visibleSize:s}=N(),e={startIndex:Math.max(0,e?o-1:o-1-i-l),endIndex:e?o+s:o+s+i+l},{startIndex:i,endIndex:l}=(t.visibleStartIndex=o-1,t.visibleEndIndex=o+s+1,e);!(o<=a||r-s-1<=o)||a===i&&r===l||(t.startIndex=i,t.endIndex=l,J())},J=()=>(Z(),a(),(0,_vue.nextTick)()),K=()=>$.scrollXLoad=!0,Z=()=>{var e=$.scrollXLoad,{visibleColumn:t,scrollXStore:l}=q,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);$.tableColumn=e},a=()=>{let{scrollXLoad:t,scrollXWidth:l,viewCellWidth:e}=$,{elemStore:a,scrollXStore:r}=q;var i=(0,_util.getRefElem)(a["main-body-table"]),o=r.startIndex;let s=0;t&&(s=Math.max(0,o*e)),i&&(i.style.transform=`translate(${s}px, ${$.scrollYTop||0}px)`);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?l+"px":"")});o=d.value,o&&(o.style.width=l+"px"),i=(0,_util.getRefElem)(a["main-chart-line-wrapper"]),o=i?i.firstElementChild:null;return o&&(o.style.width=l+"px"),c(),(0,_vue.nextTick)()},ee=()=>{P()},te=(e,t)=>{var l=q.lcsTimeout;$.lazScrollLoading=!0,l&&clearTimeout(l),q.lcsTimeout=setTimeout(()=>{q.lcsRunTime=Date.now(),q.lcsTimeout=void 0,q.intoRunScroll=!1,q.inVirtualScroll=!1,q.inWheelScroll=!1,q.inHeaderScroll=!1,q.inBodyScroll=!1,q.inFooterScroll=!1,$.lazScrollLoading=!1},200)},O=(e,t,l,a)=>{t&&(q.lastScrollLeft=a),e&&(q.lastScrollTop=l),$.lastScrollTime=Date.now(),te(t,e)},v=(u,n,c,f,v)=>{var h=q.xeTable,{lastScrollLeft:g,lastScrollTop:m}=q,y=D.value,_=k.value;if(y&&_&&h){var{computeScrollXThreshold:h,computeScrollYThreshold:x}=h.getComputeMaps(),p=_.clientHeight,S=y.clientWidth,_=_.scrollHeight,y=y.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,o=!1,s=!1,d=!1;c&&(h=h.value,(l=v<=0)||(a=y-1<=v+S),g<v?(r="right",y-h<=v+S&&(d=!0)):(r="left",v<=h&&(s=!0))),n&&(g=x.value,(e=f<=0)||(t=_-1<=f+p),m<f?(r="bottom",_-g<=f+p&&(o=!0)):(r="top",f<=g&&(i=!0))),O(n,c,f,v);h={source:sourceType,scrollTop:f,scrollLeft:v,bodyHeight:p,bodyWidth:S,scrollHeight:_,scrollWidth:y,isX:c,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(o||i||d||s)&&U.dispatchEvent("scroll-boundary",h,u),U.dispatchEvent("scroll",h,u)}},le=e=>{var t=q.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:f,handleLazyRecalculate:Q,handleUpdateCurrentRow(e){var t,l,a=q.xeTable,r=i.value;a&&r&&(e?(t=a.props,l=a.getComputeMaps().computeRowOpts,(l.value.isCurrent||t.highlightCurrentRow)&&_xeUtils.default.arrayEach(r.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${a.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--current"))):_xeUtils.default.arrayEach(r.querySelectorAll(".vxe-gantt-view--body-row.row--current"),e=>(0,_dom.removeClass)(e,"row--current")))},handleUpdateHoverRow(e){var t=q.xeTable,l=i.value;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${t.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--hover")):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-gantt-view--body-row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")))},triggerHeaderScrollEvent(e){var{elemStore:t,inVirtualScroll:l,inBodyScroll:a,inFooterScroll:r}=q;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=D.value,a&&l&&(t=l.scrollLeft,q.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),v(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=$.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:o,inFooterScroll:s,lastScrollLeft:d,lastScrollTop:u}=q;i||o||s||(i=e.currentTarget,o=(0,_util.getRefElem)(r["main-header-scroll"]),s=D.value,r=k.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,q.inBodyScroll=!0,q.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),le(l)),d&&(q.inBodyScroll=!0,(0,_dom.setScrollLeft)(s,t),(0,_dom.setScrollLeft)(o,t),a)&&ee(),u&&O(u,d,i.scrollTop,t),d&&v(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=$.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=q;r||i||(r=e.currentTarget,i=(0,_util.getRefElem)(a["main-header-scroll"]),a=(0,_util.getRefElem)(a["main-body-scroll"]),r&&(t=r.scrollLeft,q.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&ee(),v(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=q;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,q.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),le(e),O(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return a()},handleUpdateSYSpace(){return(()=>{var e=q.elemStore,t=q.xeTable,l=(0,_util.getRefElem)(e["main-body-scroll"]),a=(0,_util.getRefElem)(e["main-body-table"]);let r=0,i=0,o=!1,s=(t&&(t=t.reactData,r=t.scrollYTop,i=t.scrollYHeight,o=t.isScrollYBig),i),d=r,u=0;l&&(u=l.clientHeight),o&&(d=l&&a&&l.scrollTop+u>=maxYHeight?maxYHeight-a.clientHeight:(maxYHeight-u)*(r/(i-u)),s=maxYHeight);t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]),a&&(a.style.transform=`translate(${$.scrollXLeft||0}px, ${d}px)`),t&&(t.style.transform=`translate(${$.scrollXLeft||0}px, ${d}px)`),l=(0,_util.getRefElem)(e["main-body-ySpace"]),l&&(l.style.height=s?s+"px":""),a=n.value,a&&(a.style.height=s?s+"px":""),t=(0,_util.getRefElem)(e["main-chart-line-wrapper"]),l=t?t.firstElementChild:null;return l&&(l.style.height=s?s+"px":""),$.scrollYTop=d,$.scrollYHeight=i,$.isScrollYBig=o,c(),(0,_vue.nextTick)().then(()=>{f()})})()},handleUpdateSYStatus(e){$.scrollYLoad=e}};let ae=()=>{Q()},re=(Object.assign(X,{refreshData(){return G(),s(),(0,_vue.nextTick)().then(()=>{var e=q.xeTable;if(s(),e)return e.recalculate()})},updateViewData(){var e=q.xeTable;return e&&(e=e.reactData.tableData,$.tableData=e),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(q.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:w,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:H,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:z,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:D,class:"vxe-gantt-view--scroll-x-handle",onScroll:X.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:d,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:L,class:"vxe-gantt-view--scroll-x-right-corner"})])),ie=()=>(0,_vue.h)("div",{ref:M,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:k,class:"vxe-gantt-view--scroll-y-handle",onScroll:X.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:n,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:I,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),oe=()=>(0,_vue.h)("div",{class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),se=()=>{var e=b.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ie(),oe()]:[oe(),ie()])};let t=(0,_vue.ref)(0);return(0,_vue.watch)(()=>$.tableData,()=>{t.value++}),(0,_vue.watch)(()=>$.tableData.length,()=>{t.value++}),(0,_vue.watch)(t,()=>{G()}),(0,_vue.onMounted)(()=>{globalEvents.on(X,"resize",ae)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(X,"keydown"),_xeUtils.default.assign(q,createInternalData())}),X.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=$,r=T.value;return(0,_vue.h)("div",{ref:i,class:["vxe-gantt-view",{"is--scroll-y":t,"is--scroll-x":e,"is--virtual-x":l,"is--virtual-y":a}]},[(0,_vue.h)("div",{class:"vxe-gantt-view--render-wrapper"},r?[re(),se()]:[se(),re()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",X),X},render(){return this.renderVN()}});
@@ -11,6 +11,7 @@ var _utils = require("../../ui/src/utils");
11
11
  var _dom = require("../../ui/src/dom");
12
12
  var _vn = require("../../ui/src/vn");
13
13
  var _core = require("@vxe-ui/core");
14
+ var _util = require("./util");
14
15
  var _emits = require("./emits");
15
16
  var _tableEmits = require("./table-emits");
16
17
  var _log = require("../../ui/src/log");
@@ -35,6 +36,9 @@ const tableComponentMethodKeys = ['clearAll', 'syncData', 'updateData', 'loadDat
35
36
  const defaultLayouts = [['Form'], ['Toolbar', 'Top', 'Gantt', 'Bottom', 'Pager']];
36
37
  function createInternalData() {
37
38
  return {
39
+ linkFromConfMaps: {},
40
+ linkFromKeyMaps: {},
41
+ linkUniqueMaps: {},
38
42
  uFoot: false,
39
43
  resizeTableWidth: 0
40
44
  // barTipTimeout: null
@@ -65,10 +69,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
65
69
  toolbarConfig: Object,
66
70
  formConfig: Object,
67
71
  zoomConfig: Object,
72
+ links: Array,
68
73
  layouts: Array,
69
74
  taskConfig: Object,
70
75
  taskViewScaleConfig: Object,
71
76
  taskViewConfig: Object,
77
+ taskLinkConfig: Object,
72
78
  taskBarConfig: Object,
73
79
  taskBarTooltipConfig: Object,
74
80
  taskSplitConfig: Object,
@@ -100,6 +106,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
100
106
  tableLoading: false,
101
107
  proxyInited: false,
102
108
  isZMax: false,
109
+ tableLinks: [],
103
110
  tableData: [],
104
111
  filterData: [],
105
112
  formData: {},
@@ -119,7 +126,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
119
126
  content: '',
120
127
  visible: false,
121
128
  params: null
122
- }
129
+ },
130
+ linkList: [],
131
+ upLinkFlag: 0
123
132
  });
124
133
  const internalData = createInternalData();
125
134
  const refElem = (0, _vue.ref)();
@@ -208,6 +217,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
208
217
  const computeTaskBarTooltipOpts = (0, _vue.computed)(() => {
209
218
  return Object.assign({}, getConfig().gantt.taskBarTooltipConfig, props.taskBarTooltipConfig);
210
219
  });
220
+ const computeTaskLinkOpts = (0, _vue.computed)(() => {
221
+ return Object.assign({}, getConfig().gantt.taskLinkConfig, props.taskLinkConfig);
222
+ });
211
223
  const computeScaleUnit = (0, _vue.computed)(() => {
212
224
  const minScale = computeMinScale.value;
213
225
  return minScale ? minScale.type : 'date';
@@ -486,6 +498,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
486
498
  computeTaskBarResizeOpts,
487
499
  computeTaskSplitOpts,
488
500
  computeTaskBarTooltipOpts,
501
+ computeTaskLinkOpts,
489
502
  computeTaskViewScales,
490
503
  computeScaleUnit,
491
504
  computeMinScale,
@@ -938,6 +951,62 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
938
951
  const handleSplitRightViewEvent = () => {
939
952
  reactData.showRightView = !reactData.showRightView;
940
953
  };
954
+ const handleTableLinks = () => {
955
+ const {
956
+ linkList
957
+ } = reactData;
958
+ reactData.tableLinks = linkList.slice(0);
959
+ };
960
+ const handleTaskAddLink = (item, linkConfs, fromConfMaps, fromKeyMaps, uniqueMaps) => {
961
+ if (item) {
962
+ const {
963
+ type,
964
+ from,
965
+ to,
966
+ lineStatus,
967
+ lineColor,
968
+ lineType,
969
+ lineWidth,
970
+ showArrow
971
+ } = item;
972
+ const tlKey = (0, _util.getTaskLinkKey)(from, to);
973
+ if (from && to && !uniqueMaps[tlKey]) {
974
+ let confs = fromConfMaps[from];
975
+ if (!confs) {
976
+ confs = fromConfMaps[from] = [];
977
+ }
978
+ const confObj = {
979
+ type,
980
+ from,
981
+ to,
982
+ lineStatus,
983
+ lineColor,
984
+ lineType,
985
+ lineWidth,
986
+ showArrow
987
+ };
988
+ confs.push(confObj);
989
+ linkConfs.push(confObj);
990
+ fromKeyMaps[from] = confObj;
991
+ uniqueMaps[tlKey] = confObj;
992
+ }
993
+ }
994
+ };
995
+ const handleTaskUpdateLinks = links => {
996
+ const linkConfs = [];
997
+ const fromConfMaps = {};
998
+ const fromKeyMaps = {};
999
+ const uniqueMaps = {};
1000
+ _xeUtils.default.each(links || [], item => {
1001
+ handleTaskAddLink(item, linkConfs, fromConfMaps, fromKeyMaps, uniqueMaps);
1002
+ });
1003
+ reactData.linkList = linkConfs;
1004
+ internalData.linkFromConfMaps = fromConfMaps;
1005
+ internalData.linkFromKeyMaps = fromKeyMaps;
1006
+ internalData.linkUniqueMaps = uniqueMaps;
1007
+ $xeGantt.handleTableLinks();
1008
+ return (0, _vue.nextTick)();
1009
+ };
941
1010
  const tableCompEvents = {};
942
1011
  _tableEmits.tableEmits.forEach(name => {
943
1012
  const type = _xeUtils.default.camelCase(`on-${name}`);
@@ -1989,6 +2058,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1989
2058
  $xeGantt.closeTaskBarTooltip();
1990
2059
  }
1991
2060
  },
2061
+ handleTableLinks,
2062
+ handleTaskAddLink,
2063
+ handleTaskUpdateLinks,
1992
2064
  handleTaskHeaderContextmenuEvent(evnt, params) {
1993
2065
  const $xeTable = refTable.value;
1994
2066
  if ($xeTable) {
@@ -2564,9 +2636,20 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2564
2636
  }
2565
2637
  }
2566
2638
  });
2639
+ if (props.links) {
2640
+ $xeGantt.handleTaskUpdateLinks(props.links);
2641
+ }
2567
2642
  handleTaskScaleConfig();
2568
2643
  initPages();
2569
2644
  (0, _vue.onMounted)(() => {
2645
+ if (!$xeGantt.handleUpdateTaskLink) {
2646
+ if (props.links) {
2647
+ (0, _log.warnLog)('vxe.error.notProp', ['links']);
2648
+ }
2649
+ if (props.taskLinkConfig) {
2650
+ (0, _log.warnLog)('vxe.error.notProp', ['task-link-config']);
2651
+ }
2652
+ }
2570
2653
  (0, _vue.nextTick)(() => {
2571
2654
  const {
2572
2655
  columns
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_core=require("@vxe-ui/core"),_emits=require("./emits"),_tableEmits=require("./table-emits"),_log=require("../../ui/src/log"),_ganttView=_interopRequireDefault(require("./gantt-view")),_vxeTable=require("vxe-table");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getIcon,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_core.VxeUI,tableProps=_vxeTable.VxeTable.props,tableComponentPropKeys=Object.keys(tableProps),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","setRow","createData","createRow","revertData","clearData","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeRowLevel","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","recalcRowHeight","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeInsertRow","removeMergeCells","getMergeCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setRowGroupExpandByField","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect"],defaultLayouts=[["Form"],["Toolbar","Top","Gantt","Bottom","Pager"]];function createInternalData(){return{uFoot:!1,resizeTableWidth:0}}let viewTypeLevelMaps={year:19,quarter:17,month:15,week:13,day:11,date:9,hour:7,minute:5,second:3};function getViewTypeLevel(e){return viewTypeLevelMaps[e||"date"]||viewTypeLevelMaps.date}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGantt",mixins:[],props:Object.assign(Object.assign({},tableProps),{columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,layouts:Array,taskConfig:Object,taskViewScaleConfig:Object,taskViewConfig:Object,taskBarConfig:Object,taskBarTooltipConfig:Object,taskSplitConfig:Object,taskBarResizeConfig:Object,taskBarMoveConfig:Object,size:{type:String,default:()=>getConfig().gantt.size||getConfig().size}}),emits:_emits.ganttEmits,setup(j,e){let t,{slots:d,emit:o}=e;var E=_xeUtils.default.uniqueId();let n=_core.VxeUI.getComponent("VxeForm"),l=_core.VxeUI.getComponent("VxePager"),k=_core.VxeUI.getComponent("VxeTable"),T=_core.VxeUI.getComponent("VxeToolbar"),R=_core.VxeUI.getComponent("VxeTooltip"),O=useFns.useSize(j).computeSize,B=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableData:[],filterData:[],formData:{},sortData:[],footerData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1},showLeftView:!0,showRightView:!0,taskScaleList:[],barTipStore:{row:null,content:"",visible:!1,params:null}}),M=createInternalData(),g=(0,_vue.ref)(),L=(0,_vue.ref)(),i=(0,_vue.ref)(),u=(0,_vue.ref)(),s=(0,_vue.ref)(),a=(0,_vue.ref)(),P=(0,_vue.ref)(),r=(0,_vue.ref)(),S=(0,_vue.ref)(),F=(0,_vue.ref)(),U=(0,_vue.ref)(),V=(0,_vue.ref)(),I=(0,_vue.ref)(),Z=(0,_vue.ref)(),K=(0,_vue.ref)(),W=(0,_vue.ref)(),c=(0,_vue.ref)(),Q=(0,_vue.ref)();var Y=e=>{let t={};return e.forEach(a=>{t[a]=(...e)=>{var t=L.value;if(t&&t[a])return t[a](...e)}}),t};let X=Y(tableComponentMethodKeys),D=(tableComponentMethodKeys.forEach(a=>{X[a]=(...e)=>{var t=L.value;if(t&&t[a])return t&&t[a](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().gantt.proxyConfig,!0),j.proxyConfig))),J=(0,_vue.computed)(()=>{var e=D.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),$=(0,_vue.computed)(()=>{var e=D.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),q=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.pagerConfig,j.pagerConfig)),v=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.formConfig,j.formConfig)),z=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.toolbarConfig,j.toolbarConfig)),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.zoomConfig,j.zoomConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskConfig,j.taskConfig)),te=(0,_vue.computed)(()=>_xeUtils.default.merge({},getConfig().gantt.taskViewScaleConfig,j.taskViewScaleConfig)),m=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskViewConfig,j.taskViewConfig)),ae=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarConfig,j.taskBarConfig));var f=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMoveConfig,j.taskBarMoveConfig)),oe=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarResizeConfig,j.taskBarResizeConfig));let re=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskSplitConfig,j.taskSplitConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarTooltipConfig,j.taskBarTooltipConfig));var le=(0,_vue.computed)(()=>{var e=ne.value;return e?e.type:"date"});let ne=(0,_vue.computed)(()=>{var e=B.taskScaleList;return _xeUtils.default.last(e)});var ie=(0,_vue.computed)(()=>{var e=B.taskScaleList;return e.find(e=>"week"===e.type)});let h=(0,_vue.computed)(()=>{var e=m.value.scales;return e}),se=(0,_vue.computed)(()=>p.value.titleField||"title");var ue=(0,_vue.computed)(()=>p.value.startField||"start"),ge=(0,_vue.computed)(()=>p.value.endField||"end"),de=(0,_vue.computed)(()=>p.value.progressField||"progress");let b=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.scrollbarConfig,j.scrollbarConfig)),ce=(0,_vue.computed)(()=>{var e=b.value;return!(!e.x||"top"!==e.x.position)}),ve=(0,_vue.computed)(()=>{var e=b.value;return!(!e.y||"left"!==e.y.position)}),pe=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=j,{isZMax:a,tZindex:o}=B,r=m.value.tableStyle,l=ae.value.barStyle,n={};return a?n.zIndex=o:(e&&(n.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(n.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),l&&!_xeUtils.default.isFunction(l)&&({bgColor:a,completedBgColor:o}=l,a&&(n["--vxe-ui-gantt-view-task-bar-background-color"]=a),o)&&(n["--vxe-ui-gantt-view-task-bar-completed-background-color"]=o),r&&(e=r.width,e)&&(n["--vxe-ui-gantt-view-table-default-width"]=(0,_dom.toCssUnit)(e)),n}),me=(0,_vue.computed)(()=>{let t={},a=j;return tableComponentPropKeys.forEach(e=>{void 0!==a[e]&&(t[e]=a[e])}),t}),fe=(0,_vue.computed)(()=>{var{showFooter:e,seqConfig:t,pagerConfig:a,editConfig:o,proxyConfig:r}=j,{isZMax:l,tablePage:n,footerData:i}=B,s=m.value.tableStyle,u=me.value,g=D.value,d=q.value,c=ye.value,u=Object.assign({},u,{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0});return s&&(s=s.border,_xeUtils.default.eqNull(s)||(u.border=s)),(e&&!u.footerData||g.footer&&i.length)&&(u.footerData=i),l&&(u.maxHeight?u.maxHeight="100%":u.height="100%"),r&&(0,_utils.isEnableConf)(g)&&(u.loading=c,a)&&g.seq&&(0,_utils.isEnableConf)(d)&&(u.seqConfig=Object.assign({},t,{startIndex:(n.currentPage-1)*n.pageSize})),o&&(u.editConfig=Object.assign({},o)),u}),xe=(0,_vue.computed)(()=>{var e=j.layouts;let t=[],a=[],o=[],r=[];return(t=e&&e.length?e:getConfig().gantt.layouts||defaultLayouts).length&&(_xeUtils.default.isArray(t[0])?(a=t[0],o=t[1]||[],r=t[2]||[]):o=t),{headKeys:a,bodyKeys:o,footKeys:r}});var he=(0,_vue.computed)(()=>q.value.currentPage),be=(0,_vue.computed)(()=>q.value.pageSize),_e=(0,_vue.computed)(()=>q.value.total);let Ce=(0,_vue.computed)(()=>{var e=B.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),ye=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=j,a=B.tableLoading,o=D.value,r=o.showLoading;return e||a&&r&&t&&(0,_utils.isEnableConf)(o)}),we=(0,_vue.computed)(()=>{let e=j.border;var t=m.value.viewStyle;return!0===(e=t&&!_xeUtils.default.eqNull(t.border)?t.border:e)?"full":e||"default"}),Ee={refElem:g,refTable:L,refForm:i,refToolbar:u,refPager:s,refGanttView:r,refGanttContainerElem:a,refClassifyWrapperElem:P,refPopupContainerElem:S},ke={computeProxyOpts:D,computePagerOpts:q,computeFormOpts:v,computeToolbarOpts:z,computeZoomOpts:ee,computeTaskOpts:p,computeTaskViewScaleOpts:te,computeTaskViewOpts:m,computeTaskBarOpts:ae,computeTaskBarMoveOpts:f,computeTaskBarResizeOpts:oe,computeTaskSplitOpts:re,computeTaskBarTooltipOpts:x,computeTaskViewScales:h,computeScaleUnit:le,computeMinScale:ne,computeWeekScale:ie,computeTitleField:se,computeStartField:ue,computeEndField:ge,computeProgressField:de,computeScrollbarOpts:b,computeScrollbarXToTop:ce,computeScrollbarYToLeft:ve},A=(ke.computeTaskScaleConfs=h,{xID:E,props:j,context:e,reactData:B,internalData:M,getRefMaps:()=>Ee,getComputeMaps:()=>ke}),Te=()=>{var e=h.value;let a=te.value,o=[],r={};(e&&e.length?e:["month","date"]).forEach(e=>{var e=!e||_xeUtils.default.isString(e)?{type:e}:e,t=e.type;t&&viewTypeLevelMaps[t]?r[t]?(0,_log.errLog)("vxe.error.repeatProp",["type",t]):(r[t]=!0,o.push(Object.assign({},t&&a[t]||{},e,{level:getViewTypeLevel(t)}))):(0,_log.errLog)("vxe.error.errProp",["type="+t,_xeUtils.default.keys(viewTypeLevelMaps).join(",")])}),B.taskScaleList=_xeUtils.default.orderBy(o,{field:"level",order:"desc"})},Re=()=>{var e=z.value;j.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=L.value,t=u.value;e&&t&&e.connectToolbar(t)})},H=()=>{var e=j.proxyConfig,t=B.formData,a=D.value,o=v.value;return e&&(0,_utils.isEnableConf)(a)&&a.form?t:o.data},_=e=>{var t=B.tablePage,a=j.pagerConfig,o=q.value;a&&(0,_utils.isEnableConf)(o)&&(e?o[e]&&(t[e]=_xeUtils.default.toNumber(o[e])):({currentPage:a,pageSize:e,total:o}=o,a&&(t.currentPage=a),e&&(t.pageSize=e),o&&(t.total=o)))},G=(e,t)=>{var a=D.value,a=(a.response||a.props||{}).message,o=L.value;let r;return(r=e&&a?_xeUtils.default.isFunction(a)?a({data:e,$table:o,$grid:null,$gantt:A}):_xeUtils.default.get(e,a):r)||getI18n(t)},Oe=(e,t,a)=>{var o=$.value,r=A.getCheckboxRecords();if(o)if(r.length){if(_core.VxeUI.modal)return _core.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return a()})}else _core.VxeUI.modal&&_core.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else r.length&&a();return Promise.resolve()},Pe=e=>{var t=j.proxyConfig,a=B.tablePage;let{$event:o,currentPage:r,pageSize:l}=e;var n=D.value;a.currentPage=r,a.pageSize=l,A.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(n)&&A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,o)})},Se=t=>{var e,a=L.value,o=j.proxyConfig;a&&(a=a.getComputeMaps().computeSortOpts,e=D.value,a.value.remote)&&(B.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(e)&&(B.tablePage.currentPage=1,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}))},Fe=e=>{Se(e),A.dispatchEvent("sort-change",e,e.$event)},Ue=e=>{Se(e),A.dispatchEvent("clear-all-sort",e,e.$event)},Ve=t=>{var e,a=L.value,o=j.proxyConfig;a&&(a=a.getComputeMaps().computeFilterOpts,e=D.value,a.value.remote)&&(B.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(e)&&(B.tablePage.currentPage=1,M.uFoot=!0,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}),M.uFoot=!1,N())},Ie=e=>{Ve(e),A.dispatchEvent("filter-change",e,e.$event)},je=e=>{Ve(e),A.dispatchEvent("clear-all-filter",e,e.$event)},Be=t=>{var e=j.proxyConfig,a=D.value;B.tableLoading||(e&&(0,_utils.isEnableConf)(a)&&(M.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),M.uFoot=!1,N()),A.dispatchEvent("form-submit",t,t.$event))},Me=e=>{var t=L.value,a=j.proxyConfig;let o=e.$event;var r=D.value;a&&(0,_utils.isEnableConf)(r)&&(t&&t.clearScroll(),M.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),M.uFoot=!1,N()),A.dispatchEvent("form-reset",e,o)},Le=e=>{A.dispatchEvent("form-submit-invalid",e,e.$event)},De=e=>{var t=e.$event;A.dispatchEvent("form-toggle-collapse",e,t),A.dispatchEvent("form-collapse",e,t)},$e=e=>{var t=B.isZMax;return(e?!t:t)&&(B.isZMax=!t,B.tZindex<(0,_utils.getLastZIndex)())&&(B.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>A.recalculate(!0)).then(()=>(setTimeout(()=>A.recalculate(!0),15),B.isZMax))},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(d[e])return d[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},qe=e=>{let a={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?d[e]?a[t]=d[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):a[t]=e)}),a},ze=e=>{let c=g.value;if(c){var v=a.value;if(v){let d=K.value;if(d){let g=Q.value;if(g){var p=m.value;let r=v.getBoundingClientRect(),l=g.children[0],t=e.clientX,a=v.clientWidth,o=d.clientWidth,n=p.tableStyle&&_xeUtils.default.toNumber(p.tableStyle.minWidth)||80,i=o,s=-1,u=((0,_dom.addClass)(c,"is--split-drag"),e=>{var t=l.children[0],a=l.children[1];let o=0;t&&(s<0?t.style.display="none":(t.textContent=i+"px",t.style.display="block",o=t.offsetHeight)),a&&(s<0?(a.textContent=Math.floor(r.width-i)+"px",a.style.display="block",o=a.offsetHeight):a.style.display="none");t=e.clientY-r.top-o/2;g.style.left=i+"px",l.style.top=Math.min(r.height-o-1,Math.max(1,t))+"px"});document.onmousemove=e=>{e.preventDefault(),s=e.clientX-t,i=Math.min(a-80,Math.max(n,o+s)),u(e)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,g.style.display="",d.style.width=i+"px",(0,_dom.removeClass)(c,"is--split-drag");var e=L.value;e&&e.recalculate(!0)},g.style.display="block",u(e)}}}}},Ae=()=>{B.showLeftView=!B.showLeftView},He=()=>{B.showRightView=!B.showRightView},Ge={},Ne=(_tableEmits.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);Ge[e]=(...e)=>o(t,...e)}),()=>{var e=v.value;if(e.items){let n={};return e.items.forEach(t=>{var a,o,{field:r,itemRender:l}=t;if(r){let e=null;l&&({startField:l,endField:a,defaultValue:o}=l,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o),l)&&a&&(_xeUtils.default.set(n,l,null),_xeUtils.default.set(n,a,null)),n[r]=e}}),n}return{}}),Ze=()=>{var{proxyConfig:e,formConfig:t}=j,a=B.proxyInited,o=D.value,r=v.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(r)&&o.form&&r.items&&(B.formData=Ne()),a||!(B.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>{M.uFoot=!0;var e=A.commitProxy("initial");return M.uFoot=!1,N(),e}).then(e=>{We("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},N=()=>{var e=D.value.ajax;if(e&&e.queryFooter)return A.commitProxy("queryFooter")},Ke=e=>{var t=ee.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&B.isZMax&&!1!==t.escRestore&&A.triggerZoomEvent(e)},We=(e,t,a)=>{o(e,createEvent(a,{$grid:null,$gantt:A},t))};f={dispatchEvent:We,getEl(){return g.value},commitProxy(t,...v){let{showFooter:i,proxyConfig:s,toolbarConfig:e,pagerConfig:u,editRules:p,validConfig:m}=j,f=B.tablePage,x=$.value,h=J.value;var b=D.value;let _=q.value;var a=z.value;let{beforeQuery:C,afterQuery:y,beforeQueryFooter:r,afterQueryFooter:l,beforeDelete:n,afterDelete:w,beforeSave:E,afterSave:k,ajax:T={}}=b,R=b.response||b.props||{},O=L.value;if(O){let g=H(),d=null,c=null;c=_xeUtils.default.isString(t)?(o=a.buttons,a=e&&(0,_utils.isEnableConf)(a)&&o?_xeUtils.default.findTree(o,e=>e.code===t,{children:"dropdowns"}):null,d=a?a.item:null,t):(d=t).code;var o,P=d?d.params:null;switch(c){case"insert":return O.insert({});case"insert_edit":return O.insert({}).then(({row:e})=>O.setEditRow(e,!0));case"insert_actived":return O.insert({}).then(({row:e})=>O.setEditRow(e,!0));case"mark_cancel":V=c,U=$.value,S=L.value,(F=S?S.getCheckboxRecords():[]).length?(S&&S.togglePendingRow(F),A.clearCheckboxRow()):U&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:V,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Oe(c,"vxe.grid.removeSelectRecord",()=>O.removeCheckboxRow());case"import":O.importData(P);break;case"open_import":O.openImport(P);break;case"export":O.exportData(P);break;case"open_export":O.openExport(P);break;case"reset_custom":return O.resetCustom(!0);case"initial":case"reload":case"query":{var S=T.query;let n=T.querySuccess,o=T.queryError;if(S){var F="initial"===c,U="reload"===c;if(!F&&B.tableLoading)return(0,_vue.nextTick)();let e=null,a=[],r=[],t={};if(u&&((F||U)&&(f.currentPage=1),(0,_utils.isEnableConf)(_))&&(t=Object.assign({},f)),F){if(s&&(0,_utils.isEnableConf)(b)&&b.form&&(g=Ne(),B.formData=g),O){let{tableFullColumn:e,fullColumnFieldData:o}=O.internalData;var V=O.getComputeMaps().computeSortOpts;let t=V.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),a=t.map(e=>{var{field:e,order:t}=e,a=o[e];return a&&(a=a.column)&&(a.order=t),{field:e,property:e,order:t}})),r=O.getCheckedFilters()}}else O&&(U?e=O.clearAll():(a=O.getSortColumns(),r=O.getCheckedFilters()));let l={$table:O,$grid:null,$gantt:A,code:c,button:d,isInited:F,isReload:U,page:t,sort:a.length?a[0]:{},sorts:a,filters:r,form:g,options:S};return B.sortData=a,B.filterData=r,B.tableLoading=!0,Promise.all([Promise.resolve((C||S)(l,...v)),e]).then(([e])=>{let t=[];var a,o,r;return B.tableLoading=!1,e&&(a={data:e,$table:O,$grid:null,$gantt:A},u&&(0,_utils.isEnableConf)(_)?(r=R.total,r=(_xeUtils.default.isFunction(r)?r(a):_xeUtils.default.get(e,r||"page.total"))||0,f.total=_xeUtils.default.toNumber(r),o=R.result,t=(_xeUtils.default.isFunction(o)?o(a):_xeUtils.default.get(e,o||"result"))||[],o=Math.max(Math.ceil(r/f.pageSize),1),f.currentPage>o&&(f.currentPage=o)):(r=R.list,_xeUtils.default.isArray(e)?t=e:r&&(t=(_xeUtils.default.isFunction(r)?r(a):_xeUtils.default.get(e,r))||[])),i)&&(r=(o=R.footerData)?_xeUtils.default.isFunction(o)?o(a):_xeUtils.default.get(e,o):[],_xeUtils.default.isArray(r))&&(B.footerData=r),O?O.loadData(t):(0,_vue.nextTick)(()=>{var e=L.value;e&&e.loadData(t)}),y&&y(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(B.tableLoading=!1,o&&o(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.query"]);break}case"queryFooter":{var I=T.queryFooter;let a=T.queryFooterSuccess,o=T.queryFooterError;if(I){let e=[],t=(O&&(e=O.getCheckedFilters()),{$table:O,$grid:null,$gantt:A,code:c,button:d,filters:e,form:g,options:I});return Promise.resolve((r||I)(t,...v)).then(e=>(B.footerData=_xeUtils.default.isArray(e)?e:[],l&&l(t,...v),a&&a(Object.assign(Object.assign({},t),{response:e})),{status:!0})).catch(e=>(o&&o(Object.assign(Object.assign({},t),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.queryFooter"]);break}case"delete":{let o=T.delete,r=T.deleteSuccess,l=T.deleteError;if(o){let e=A.getCheckboxRecords(),t=e.filter(e=>!O.isInsertByRow(e));I={removeRecords:t};let a={$table:O,$grid:null,$gantt:A,code:c,button:d,body:I,form:g,options:o};if(e.length)return Oe(c,"vxe.grid.deleteSelectRecord",()=>t.length?(B.tableLoading=!0,Promise.resolve((n||o)(a,...v)).then(e=>(B.tableLoading=!1,O.setPendingRow(t,!1),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:G(e,"vxe.grid.delSuccess"),status:"success"}),w?w(a,...v):(M.uFoot=!0,A.commitProxy("query"),M.uFoot=!1,N()),r&&r(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(B.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:G(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},a),{response:e})),{status:!1}))):O.remove(e));x&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.delete"]);break}case"save":{let i=T.save,s=T.saveSuccess,u=T.saveError;if(i){let t=O.getRecordset(),{insertRecords:a,removeRecords:o,updateRecords:r,pendingRecords:l}=t,n={$table:O,$grid:null,$gantt:A,code:c,button:d,body:t,form:g,options:i},e=(a.length&&(t.pendingRecords=l.filter(e=>-1===O.findRowIndexOf(a,e))),l.length&&(t.insertRecords=a.filter(e=>-1===O.findRowIndexOf(l,e))),Promise.resolve());return(e=p?O[m&&"full"===m.msgMode?"fullValidate":"validate"](t.insertRecords.concat(r)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||r.length||t.pendingRecords.length?(B.tableLoading=!0,Promise.resolve((E||i)(n,...v)).then(e=>(B.tableLoading=!1,O.clearPendingRow(),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:G(e,"vxe.grid.saveSuccess"),status:"success"}),k?k(n,...v):(M.uFoot=!0,A.commitProxy("query"),M.uFoot=!1,N()),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(B.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:G(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(x&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.save"]);break}default:var I=commands.get(c);I&&((I=I.tableCommandMethod||I.commandMethod)?I({code:c,button:d,$table:O,$grid:null,$gantt:A},...v):(0,_log.errLog)("vxe.error.notCommands",["[grid] "+c]))}}return(0,_vue.nextTick)()},getParams(){return j.params},zoom(){return B.isZMax?A.revert():A.maximize()},isMaximized(){return B.isZMax},maximize(){return $e(!0)},revert(){return $e()},getFormData:H,getFormItems(e){var t=v.value,a=j.formConfig,o=t.items;let r=[];return _xeUtils.default.eachTree(a&&(0,_utils.isEnableConf)(t)&&o?o:[],e=>{r.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?r:r[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=B.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=s.value;t&&t.homePageByEvent(e)},endPage(){var e=B.tablePage,t=Ce.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=s.value;t&&t.endPageByEvent(e)},getCurrentPage(){var e=B.tablePage;return e.currentPage},setCurrentPage(e){var t=B.tablePage,a=Ce.value;return t.currentPage=Math.min(a,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var a=s.value;a&&a.setCurrentPageByEvent(e,t)},getPageSize(){var e=B.tablePage;return e.pageSize},setPageSize(e){var t=B.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var a=s.value;a&&a.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=L.value;return j.proxyConfig?(e=B.sortData,{data:t?t.getFullData():[],filter:B.filterData,form:H(),sort:e.length?e[0]:{},sorts:e,pager:B.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null},refreshTaskView(){var e=r.value;return e?e.refreshData():(0,_vue.nextTick)()},hasTableViewVisible(){return B.showLeftView},showTableView(){return B.showLeftView=!0,(0,_vue.nextTick)()},hideTableView(){return(B.showLeftView=!1,_vue.nextTick)()},hasTaskViewVisible(){return B.showRightView},showTaskView(){return B.showRightView=!0,(0,_vue.nextTick)()},hideTaskView(){return(B.showRightView=!1,_vue.nextTick)()},closeTaskBarTooltip(){var e=B.barTipStore,t=c.value;return e.visible&&(Object.assign(e,{row:null,content:null,visible:!1,params:{}}),t)&&t.close&&t.close(),(0,_vue.nextTick)()}};let Qe={extendTableMethods:Y,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=d[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var t=j.height,a=B.isZMax,o=g.value;if(o){var r=F.value,l=U.value,n=V.value,i=I.value,s=Z.value,u=o.parentElement;let e=0;return(e=!u||"100%"!==t&&"auto"!==t?e:a?0:(0,_dom.getPaddingTopBottomSize)(u))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(l)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(s)}return 0},getParentHeight(){var e=g.value;return e?(e=e.parentElement,(B.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Qe.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let a=e.code;var o;return a?((o=["reload","delete","save"].includes(a))&&(M.uFoot=!0),e=A.commitProxy(e,t).then(e=>{e&&e.status&&["query","reload","delete","save"].includes(a)&&A.dispatchEvent("delete"===a||"save"===a?"proxy-"+a:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===a}),t)}),M.uFoot=!1,o&&N(),e):(0,_vue.nextTick)()},triggerToolbarBtnEvent(e,t){A.triggerToolbarCommitEvent(e,t),A.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){A.triggerToolbarCommitEvent(e,t),A.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){A.zoom(),A.dispatchEvent("zoom",{type:B.isZMax?"max":"revert"},e)},handleTaskCellClickEvent(e,t){var a,o,r,l,n,i,s,u=L.value;u&&(a=u.props.highlightCurrentRow,{radioColumn:o,checkboxColumn:r}=u.reactData,{computeRadioOpts:n,computeCheckboxOpts:i,computeRowOpts:l}=u.getComputeMaps(),n=n.value,i=i.value,s=t.row,(l.value.isCurrent||a)&&u.triggerCurrentRowEvent(e,Object.assign({$table:u,rowIndex:u.getRowIndex(s),$rowIndex:u.getVMRowIndex(s)},t)),o&&"row"===n.trigger&&u.triggerRadioRowEvent(e,t),r)&&"row"===i.trigger&&u.handleToggleCheckRowEvent(e,t),A.dispatchEvent("task-cell-click",t,e)},handleTaskCellDblclickEvent(e,t){A.dispatchEvent("task-cell-dblclick",t,e)},handleTaskBarClickEvent(e,t){A.dispatchEvent("task-bar-click",t,e)},handleTaskBarDblclickEvent(e,t){A.dispatchEvent("task-bar-dblclick",t,e)},triggerTaskBarTooltipEvent(t,e){var a=B.barTipStore,o=x.value,r=se.value,o=o.contentMethod,l=e.row;let n=(0,_utils.formatText)(_xeUtils.default.get(l,r)),i=(o&&(r=o(e),_xeUtils.default.eqNull(r)||(n=""+r)),o=a.row!==l,r=c.value,clearTimeout(M.barTipTimeout),o?A.closeTaskBarTooltip():r&&r.setActived&&r.setActived(!0),(0,_utils.formatText)(n));Object.assign(a,{row:l,visible:!0,content:i,params:e}),(0,_vue.nextTick)(()=>{var e=c.value;e&&(e.openByEvent?e.openByEvent(t,t.currentTarget,i):e.open&&e.open(t.currentTarget,i))})},handleTaskBarTooltipLeaveEvent(){var e=x.value;let t=c.value;t&&t.setActived&&t.setActived(!1),e.enterable?M.barTipTimeout=setTimeout(()=>{(t=c.value)&&t.isActived&&!t.isActived()&&A.closeTaskBarTooltip()},e.leaveDelay):A.closeTaskBarTooltip()},handleTaskHeaderContextmenuEvent(e,t){var a,o=L.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"header",t))},handleTaskBodyContextmenuEvent(e,t){var a,o=L.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))},handleTaskFooterContextmenuEvent(e,t){var a,o=L.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"footer",t))},handleTaskBarContextmenuEvent(e,t){var a,o=L.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))}},Ye=(Object.assign(A,X,f,Qe,{loadColumn(e){var t=L.value;return _xeUtils.default.eachTree(e,e=>{var t=e.type;e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]||(0,_log.errLog)("vxe.error.notSlot",[e])}),"expand"===t&&(0,_log.errLog)("vxe.error.errProp",["type=expand","type=seq,radio,checkbox,html"])}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return A.clearAll(),A.loadColumn(e)}}),()=>{var{formConfig:e,proxyConfig:a}=j,o=B.formData,r=D.value,l=v.value;if(e&&(0,_utils.isEnableConf)(l)||d.form){let e=[];if(d.form)e=d.form({$grid:null,$gantt:A});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=r.beforeItem;r&&t&&l.items.forEach(e=>{t({$grid:null,$gantt:A,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]&&(t[e]=d[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:a&&(0,_utils.isEnableConf)(r)&&r.form?o:l.data})),{onSubmit:Be,onReset:Me,onSubmitInvalid:Le,onCollapse:De}),t))}return(0,_vue.h)("div",{ref:F,key:"form",class:"vxe-gantt--form-wrapper"},e)}return renderEmptyElement(A)}),Xe=()=>{var t,a,o,r,l,n=j.toolbarConfig,i=z.value,s=d.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return d.toolbar?e=d.toolbar({$grid:null,$gantt:A}):(n={},(s=i.slots)&&(t=C(s,"buttons"),a=C(s,"buttonPrefix"),o=C(s,"buttonSuffix"),r=C(s,"tools"),l=C(s,"toolPrefix"),s=C(s,"toolSuffix"),t&&(n.buttons=t),a&&(n.buttonPrefix=a),o&&(n.buttonSuffix=o),r&&(n.tools=r),l&&(n.toolPrefix=l),s)&&(n.toolSuffix=s),e.push((0,_vue.h)(T,Object.assign(Object.assign({ref:u},i),{slots:void 0}),n))),(0,_vue.h)("div",{ref:U,key:"toolbar",class:"vxe-gantt--toolbar-wrapper"},e)}return renderEmptyElement(A)},Je=()=>{var e=d.top;return e?(0,_vue.h)("div",{ref:V,key:"top",class:"vxe-gantt--top-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},et=()=>{var e=d.left;return e?(0,_vue.h)("div",{class:"vxe-gantt--left-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},tt=()=>{var e=d.right;return e?(0,_vue.h)("div",{class:"vxe-gantt--right-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},at=()=>{var e=j.proxyConfig,t=fe.value,a=D.value,o=Object.assign({},Ge),r=d.empty,l=d.loading,n=d.rowDragIcon||d["row-drag-icon"],i=d.columnDragIcon||d["column-drag-icon"],s=d.headerTooltip||d["header-tooltip"],u=d.tooltip,g=d.footerTooltip||d["footer-tooltip"],e=(e&&(0,_utils.isEnableConf)(a)&&(a.sort&&(o.onSortChange=Fe,o.onClearAllSort=Ue),a.filter)&&(o.onFilterChange=Ie,o.onClearAllFilter=je),{});return r&&(e.empty=r),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),s&&(e.headerTooltip=s),u&&(e.tooltip=u),g&&(e.footerTooltip=g),(0,_vue.h)("div",{ref:K,class:"vxe-gantt--table-wrapper"},[(0,_vue.h)(k,Object.assign(Object.assign({ref:L},t),o),e)])},ot=()=>d.bottom?(0,_vue.h)("div",{ref:I,key:"bottom",class:"vxe-gantt--bottom-wrapper"},d.bottom({$grid:null,$gantt:A})):renderEmptyElement(A),rt=()=>{var{proxyConfig:e,pagerConfig:t}=j,a=D.value,o=q.value,r=d.pager;return t&&(0,_utils.isEnableConf)(o)||d.pager?(0,_vue.h)("div",{ref:Z,key:"pager",class:"vxe-gantt--pager-wrapper"},r?r({$grid:null,$gantt:A}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:s},o),e&&(0,_utils.isEnableConf)(a)?B.tablePage:{}),{onPageChange:Pe}),qe(o.slots)):renderEmptyElement(A)]):renderEmptyElement(A)},lt=()=>(0,_vue.h)("div",{ref:W,class:"vxe-gantt--view-wrapper"},[(0,_vue.h)(_ganttView.default,{ref:r})]),nt=()=>{var{showLeftView:e,showRightView:t}=B,{enabled:a,resize:o,showCollapseTableButton:r,showCollapseTaskButton:l}=re.value;return a?(a={},(o=o&&e&&t)&&(a.onMousedown=ze),(0,_vue.h)("div",{class:["vxe-gantt--view-split-bar",{"is--resize":o}]},[(0,_vue.h)("div",Object.assign({class:"vxe-gantt--view-split-bar-handle"},a)),r||l?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-btn-wrapper"},[r&&t?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-left-btn",onClick:Ae},[(0,_vue.h)("i",{class:e?getIcon().GANTT_VIEW_LEFT_OPEN:getIcon().GANTT_VIEW_LEFT_CLOSE})]):renderEmptyElement(A),l&&e?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-right-btn",onClick:He},[(0,_vue.h)("i",{class:t?getIcon().GANTT_VIEW_RIGHT_OPEN:getIcon().GANTT_VIEW_RIGHT_CLOSE})]):renderEmptyElement(A)]):renderEmptyElement(A)])):renderEmptyElement(A)},y=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(Ye());break;case"Toolbar":t.push(Xe());break;case"Top":t.push(Je());break;case"Gantt":t.push((0,_vue.h)("div",{ref:a,key:"tv",class:"vxe-gantt--gantt-container"},[et(),at(),nt(),lt(),tt(),(0,_vue.h)("div",{ref:P}),(0,_vue.h)("div",{ref:Q,class:"vxe-gantt--resizable-split-tip"},[(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-tip-number"},[(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-number-left"}),(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-number-right"})])]),(0,_vue.h)("div",{class:"vxe-gantt--border-line"})]));break;case"Bottom":t.push(ot());break;case"Pager":t.push(rt());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t};let w=(0,_vue.ref)(0);return(0,_vue.watch)(()=>j.columns?j.columns.length:-1,()=>{w.value++}),(0,_vue.watch)(()=>j.columns,()=>{w.value++}),(0,_vue.watch)(w,()=>{(0,_vue.nextTick)(()=>A.loadColumn(j.columns||[]))}),(0,_vue.watch)(()=>j.toolbarConfig,()=>{Re()}),(0,_vue.watch)(he,()=>{_("currentPage")}),(0,_vue.watch)(be,()=>{_("pageSize")}),(0,_vue.watch)(_e,()=>{_("total")}),(0,_vue.watch)(()=>j.proxyConfig,()=>{Ze()}),(0,_vue.watch)(h,()=>{Te(),A.refreshTaskView()}),hooks.forEach(e=>{var e=e.setupGantt;e&&(e=e(A))&&_xeUtils.default.isObject(e)&&Object.assign(A,e)}),Te(),_(),(0,_vue.onMounted)(()=>{var e,t;(0,_vue.nextTick)(()=>{var e=j.columns,t=D.value;j.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),j.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),j.expandConfig&&(0,_log.warnLog)("vxe.error.notProp",["expand-config"]),e&&e.length&&A.loadColumn(e),Re(),Ze()}),e=L.value,t=r.value,e&&t&&e.handleConnectGanttView(t),globalEvents.on(A,"keydown",Ke)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(A,"keydown"),_xeUtils.default.assign(M,createInternalData())}),A.renderVN=()=>{var{showLeftView:e,showRightView:t}=B,a=O.value,o=pe.value,r=ye.value,l=we.value,n=ce.value,i=ve.value;return(0,_vue.h)("div",{ref:g,class:["vxe-gantt","border--"+l,"sx-pos--"+(n?"top":"bottom"),"sy-pos--"+(i?"left":"right"),{["size--"+a]:a,"is--round":j.round,"is--maximize":B.isZMax,"is--loading":r,"show--left":e,"show--right":t}],style:o},(()=>{let a=B.barTipStore;var{headKeys:e,bodyKeys:t,footKeys:o}=xe.value,r=x.value,l=d.asideLeft||d["aside-left"],n=d.asideRight||d["aside-right"];let i=d.taskBarTooltip||d["task-bar-tooltip"];return[(0,_vue.h)("div",{class:"vxe-gantt--layout-header-wrapper"},y(e)),(0,_vue.h)("div",{class:"vxe-gantt--layout-body-wrapper"},[l?(0,_vue.h)("div",{class:"vxe-gantt--layout-aside-left-wrapper"},l({})):renderEmptyElement(A),(0,_vue.h)("div",{class:"vxe-gantt--layout-body-content-wrapper"},y(t)),n?(0,_vue.h)("div",{class:"vxe-gantt--layout-aside-right-wrapper"},n({})):renderEmptyElement(A)]),(0,_vue.h)("div",{class:"vxe-gantt--layout-footer-wrapper"},y(o)),(0,_vue.h)("div",{ref:S}),(0,_vue.h)("div",{},[(0,_vue.h)(R,{key:"gtp",ref:c,theme:r.theme,enterable:r.enterable,enterDelay:r.enterDelay,leaveDelay:r.leaveDelay,useHTML:r.useHTML,width:r.width,height:r.height,minWidth:r.minWidth,minHeight:r.minHeight,maxWidth:r.maxWidth,maxHeight:r.maxHeight,isArrow:!1},i?{content:()=>{var{row:e,content:t}=a;return e?(0,_vue.h)("div",{},i(Object.assign({tooltipContent:t,$gantt:A},a.params))):renderEmptyElement(A)}}:{})])]})())},(0,_vue.provide)("$xeGrid",null),(0,_vue.provide)("$xeGantt",A),A},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_core=require("@vxe-ui/core"),_util=require("./util"),_emits=require("./emits"),_tableEmits=require("./table-emits"),_log=require("../../ui/src/log"),_ganttView=_interopRequireDefault(require("./gantt-view")),_vxeTable=require("vxe-table");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,getIcon,getI18n,commands,hooks,useFns,createEvent,globalEvents,GLOBAL_EVENT_KEYS,renderEmptyElement}=_core.VxeUI,tableProps=_vxeTable.VxeTable.props,tableComponentPropKeys=Object.keys(tableProps),tableComponentMethodKeys=["clearAll","syncData","updateData","loadData","reloadData","reloadRow","loadColumn","reloadColumn","getRowNode","getColumnNode","getRowIndex","getVTRowIndex","getVMRowIndex","getColumnIndex","getVTColumnIndex","getVMColumnIndex","setRow","createData","createRow","revertData","clearData","isRemoveByRow","isInsertByRow","isUpdateByRow","getColumns","getColumnById","getColumnByField","getTableColumn","getFullColumns","getData","getCheckboxRecords","getParentRow","getTreeRowChildren","getTreeRowLevel","getTreeParentRow","getRowSeq","getRowById","getRowid","getTableData","getFullData","setColumnFixed","clearColumnFixed","setColumnWidth","getColumnWidth","recalcRowHeight","setRowHeightConf","getRowHeightConf","setRowHeight","getRowHeight","hideColumn","showColumn","resetColumn","refreshColumn","refreshScroll","recalculate","closeTooltip","isAllCheckboxChecked","isAllCheckboxIndeterminate","getCheckboxIndeterminateRecords","setCheckboxRow","setCheckboxRowKey","isCheckedByCheckboxRow","isCheckedByCheckboxRowKey","isIndeterminateByCheckboxRow","isIndeterminateByCheckboxRowKey","toggleCheckboxRow","setAllCheckboxRow","getRadioReserveRecord","clearRadioReserve","getCheckboxReserveRecords","clearCheckboxReserve","toggleAllCheckboxRow","clearCheckboxRow","setCurrentRow","isCheckedByRadioRow","isCheckedByRadioRowKey","setRadioRow","setRadioRowKey","clearCurrentRow","clearRadioRow","getCurrentRecord","getRadioRecord","getCurrentColumn","setCurrentColumn","clearCurrentColumn","setPendingRow","togglePendingRow","hasPendingByRow","isPendingByRow","getPendingRecords","clearPendingRow","setFilterByEvent","sort","setSort","setSortByEvent","clearSort","clearSortByEvent","isSort","getSortColumns","closeFilter","isFilter","clearFilterByEvent","isActiveFilterByColumn","isRowExpandLoaded","clearRowExpandLoaded","reloadRowExpand","reloadRowExpand","toggleRowExpand","setAllRowExpand","setRowExpand","isExpandByRow","isRowExpandByRow","clearRowExpand","clearRowExpandReserve","getRowExpandRecords","getTreeExpandRecords","isTreeExpandLoaded","clearTreeExpandLoaded","reloadTreeExpand","reloadTreeChilds","toggleTreeExpand","setAllTreeExpand","setTreeExpand","isTreeExpandByRow","clearTreeExpand","clearTreeExpandReserve","getScroll","scrollTo","scrollToRow","scrollToColumn","clearScroll","updateFooter","updateStatus","setMergeCells","removeInsertRow","removeMergeCells","getMergeCells","clearMergeCells","setMergeFooterItems","removeMergeFooterItems","getMergeFooterItems","clearMergeFooterItems","getCustomStoreData","setRowGroupExpand","setRowGroupExpandByField","setAllRowGroupExpand","clearRowGroupExpand","isRowGroupExpandByRow","isRowGroupRecord","isAggregateRecord","isAggregateExpandByRow","getAggregateContentByRow","getAggregateRowChildren","setRowGroups","clearRowGroups","openTooltip","moveColumnTo","moveRowTo","getCellLabel","getCellElement","focus","blur","connect"],defaultLayouts=[["Form"],["Toolbar","Top","Gantt","Bottom","Pager"]];function createInternalData(){return{linkFromConfMaps:{},linkFromKeyMaps:{},linkUniqueMaps:{},uFoot:!1,resizeTableWidth:0}}let viewTypeLevelMaps={year:19,quarter:17,month:15,week:13,day:11,date:9,hour:7,minute:5,second:3};function getViewTypeLevel(e){return viewTypeLevelMaps[e||"date"]||viewTypeLevelMaps.date}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGantt",mixins:[],props:Object.assign(Object.assign({},tableProps),{columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,links:Array,layouts:Array,taskConfig:Object,taskViewScaleConfig:Object,taskViewConfig:Object,taskLinkConfig:Object,taskBarConfig:Object,taskBarTooltipConfig:Object,taskSplitConfig:Object,taskBarResizeConfig:Object,taskBarMoveConfig:Object,size:{type:String,default:()=>getConfig().gantt.size||getConfig().size}}),emits:_emits.ganttEmits,setup(I,e){let t,{slots:d,emit:o}=e;var k=_xeUtils.default.uniqueId();let n=_core.VxeUI.getComponent("VxeForm"),l=_core.VxeUI.getComponent("VxePager"),E=_core.VxeUI.getComponent("VxeTable"),T=_core.VxeUI.getComponent("VxeToolbar"),R=_core.VxeUI.getComponent("VxeTooltip"),O=useFns.useSize(I).computeSize,j=(0,_vue.reactive)({tableLoading:!1,proxyInited:!1,isZMax:!1,tableLinks:[],tableData:[],filterData:[],formData:{},sortData:[],footerData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(t=getConfig().pager)?void 0:t.pageSize)||10,currentPage:1},showLeftView:!0,showRightView:!0,taskScaleList:[],barTipStore:{row:null,content:"",visible:!1,params:null},linkList:[],upLinkFlag:0}),M=createInternalData(),g=(0,_vue.ref)(),B=(0,_vue.ref)(),i=(0,_vue.ref)(),u=(0,_vue.ref)(),s=(0,_vue.ref)(),a=(0,_vue.ref)(),P=(0,_vue.ref)(),r=(0,_vue.ref)(),S=(0,_vue.ref)(),F=(0,_vue.ref)(),U=(0,_vue.ref)(),L=(0,_vue.ref)(),V=(0,_vue.ref)(),K=(0,_vue.ref)(),Z=(0,_vue.ref)(),W=(0,_vue.ref)(),c=(0,_vue.ref)(),Q=(0,_vue.ref)();var Y=e=>{let t={};return e.forEach(a=>{t[a]=(...e)=>{var t=B.value;if(t&&t[a])return t[a](...e)}}),t};let X=Y(tableComponentMethodKeys),D=(tableComponentMethodKeys.forEach(a=>{X[a]=(...e)=>{var t=B.value;if(t&&t[a])return t&&t[a](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().gantt.proxyConfig,!0),I.proxyConfig))),J=(0,_vue.computed)(()=>{var e=D.value;return!!(_xeUtils.default.isBoolean(e.message)?e.message:e.showResponseMsg)}),$=(0,_vue.computed)(()=>{var e=D.value;return _xeUtils.default.isBoolean(e.showActionMsg)?e.showActionMsg:!!e.showActiveMsg}),q=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.pagerConfig,I.pagerConfig)),v=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.formConfig,I.formConfig)),z=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.toolbarConfig,I.toolbarConfig)),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.zoomConfig,I.zoomConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskConfig,I.taskConfig)),te=(0,_vue.computed)(()=>_xeUtils.default.merge({},getConfig().gantt.taskViewScaleConfig,I.taskViewScaleConfig)),m=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskViewConfig,I.taskViewConfig)),ae=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarConfig,I.taskBarConfig));var f=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMoveConfig,I.taskBarMoveConfig)),oe=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarResizeConfig,I.taskBarResizeConfig));let re=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskSplitConfig,I.taskSplitConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarTooltipConfig,I.taskBarTooltipConfig));var le=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskLinkConfig,I.taskLinkConfig)),ne=(0,_vue.computed)(()=>{var e=ie.value;return e?e.type:"date"});let ie=(0,_vue.computed)(()=>{var e=j.taskScaleList;return _xeUtils.default.last(e)});var se=(0,_vue.computed)(()=>{var e=j.taskScaleList;return e.find(e=>"week"===e.type)});let h=(0,_vue.computed)(()=>{var e=m.value.scales;return e}),ue=(0,_vue.computed)(()=>p.value.titleField||"title");var ge=(0,_vue.computed)(()=>p.value.startField||"start"),de=(0,_vue.computed)(()=>p.value.endField||"end"),ce=(0,_vue.computed)(()=>p.value.progressField||"progress");let b=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.scrollbarConfig,I.scrollbarConfig)),ve=(0,_vue.computed)(()=>{var e=b.value;return!(!e.x||"top"!==e.x.position)}),pe=(0,_vue.computed)(()=>{var e=b.value;return!(!e.y||"left"!==e.y.position)}),me=(0,_vue.computed)(()=>{var{height:e,maxHeight:t}=I,{isZMax:a,tZindex:o}=j,r=m.value.tableStyle,l=ae.value.barStyle,n={};return a?n.zIndex=o:(e&&(n.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(n.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),l&&!_xeUtils.default.isFunction(l)&&({bgColor:a,completedBgColor:o}=l,a&&(n["--vxe-ui-gantt-view-task-bar-background-color"]=a),o)&&(n["--vxe-ui-gantt-view-task-bar-completed-background-color"]=o),r&&(e=r.width,e)&&(n["--vxe-ui-gantt-view-table-default-width"]=(0,_dom.toCssUnit)(e)),n}),fe=(0,_vue.computed)(()=>{let t={},a=I;return tableComponentPropKeys.forEach(e=>{void 0!==a[e]&&(t[e]=a[e])}),t}),xe=(0,_vue.computed)(()=>{var{showFooter:e,seqConfig:t,pagerConfig:a,editConfig:o,proxyConfig:r}=I,{isZMax:l,tablePage:n,footerData:i}=j,s=m.value.tableStyle,u=fe.value,g=D.value,d=q.value,c=we.value,u=Object.assign({},u,{showOverflow:!0,showHeaderOverflow:!0,showFooterOverflow:!0});return s&&(s=s.border,_xeUtils.default.eqNull(s)||(u.border=s)),(e&&!u.footerData||g.footer&&i.length)&&(u.footerData=i),l&&(u.maxHeight?u.maxHeight="100%":u.height="100%"),r&&(0,_utils.isEnableConf)(g)&&(u.loading=c,a)&&g.seq&&(0,_utils.isEnableConf)(d)&&(u.seqConfig=Object.assign({},t,{startIndex:(n.currentPage-1)*n.pageSize})),o&&(u.editConfig=Object.assign({},o)),u}),he=(0,_vue.computed)(()=>{var e=I.layouts;let t=[],a=[],o=[],r=[];return(t=e&&e.length?e:getConfig().gantt.layouts||defaultLayouts).length&&(_xeUtils.default.isArray(t[0])?(a=t[0],o=t[1]||[],r=t[2]||[]):o=t),{headKeys:a,bodyKeys:o,footKeys:r}});var be=(0,_vue.computed)(()=>q.value.currentPage),_e=(0,_vue.computed)(()=>q.value.pageSize),Ce=(0,_vue.computed)(()=>q.value.total);let ye=(0,_vue.computed)(()=>{var e=j.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),we=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=I,a=j.tableLoading,o=D.value,r=o.showLoading;return e||a&&r&&t&&(0,_utils.isEnableConf)(o)}),ke=(0,_vue.computed)(()=>{let e=I.border;var t=m.value.viewStyle;return!0===(e=t&&!_xeUtils.default.eqNull(t.border)?t.border:e)?"full":e||"default"}),Ee={refElem:g,refTable:B,refForm:i,refToolbar:u,refPager:s,refGanttView:r,refGanttContainerElem:a,refClassifyWrapperElem:P,refPopupContainerElem:S},Te={computeProxyOpts:D,computePagerOpts:q,computeFormOpts:v,computeToolbarOpts:z,computeZoomOpts:ee,computeTaskOpts:p,computeTaskViewScaleOpts:te,computeTaskViewOpts:m,computeTaskBarOpts:ae,computeTaskBarMoveOpts:f,computeTaskBarResizeOpts:oe,computeTaskSplitOpts:re,computeTaskBarTooltipOpts:x,computeTaskLinkOpts:le,computeTaskViewScales:h,computeScaleUnit:ne,computeMinScale:ie,computeWeekScale:se,computeTitleField:ue,computeStartField:ge,computeEndField:de,computeProgressField:ce,computeScrollbarOpts:b,computeScrollbarXToTop:ve,computeScrollbarYToLeft:pe},A=(Te.computeTaskScaleConfs=h,{xID:k,props:I,context:e,reactData:j,internalData:M,getRefMaps:()=>Ee,getComputeMaps:()=>Te}),Re=()=>{var e=h.value;let a=te.value,o=[],r={};(e&&e.length?e:["month","date"]).forEach(e=>{var e=!e||_xeUtils.default.isString(e)?{type:e}:e,t=e.type;t&&viewTypeLevelMaps[t]?r[t]?(0,_log.errLog)("vxe.error.repeatProp",["type",t]):(r[t]=!0,o.push(Object.assign({},t&&a[t]||{},e,{level:getViewTypeLevel(t)}))):(0,_log.errLog)("vxe.error.errProp",["type="+t,_xeUtils.default.keys(viewTypeLevelMaps).join(",")])}),j.taskScaleList=_xeUtils.default.orderBy(o,{field:"level",order:"desc"})},Oe=()=>{var e=z.value;I.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=B.value,t=u.value;e&&t&&e.connectToolbar(t)})},H=()=>{var e=I.proxyConfig,t=j.formData,a=D.value,o=v.value;return e&&(0,_utils.isEnableConf)(a)&&a.form?t:o.data},_=e=>{var t=j.tablePage,a=I.pagerConfig,o=q.value;a&&(0,_utils.isEnableConf)(o)&&(e?o[e]&&(t[e]=_xeUtils.default.toNumber(o[e])):({currentPage:a,pageSize:e,total:o}=o,a&&(t.currentPage=a),e&&(t.pageSize=e),o&&(t.total=o)))},G=(e,t)=>{var a=D.value,a=(a.response||a.props||{}).message,o=B.value;let r;return(r=e&&a?_xeUtils.default.isFunction(a)?a({data:e,$table:o,$grid:null,$gantt:A}):_xeUtils.default.get(e,a):r)||getI18n(t)},Pe=(e,t,a)=>{var o=$.value,r=A.getCheckboxRecords();if(o)if(r.length){if(_core.VxeUI.modal)return _core.VxeUI.modal.confirm({id:"cfm_"+e,content:getI18n(t),escClosable:!0}).then(e=>{if("confirm"===e)return a()})}else _core.VxeUI.modal&&_core.VxeUI.modal.message({id:"msg_"+e,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});else r.length&&a();return Promise.resolve()},Se=e=>{var t=I.proxyConfig,a=j.tablePage;let{$event:o,currentPage:r,pageSize:l}=e;var n=D.value;a.currentPage=r,a.pageSize=l,A.dispatchEvent("page-change",e,o),t&&(0,_utils.isEnableConf)(n)&&A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,o)})},Fe=t=>{var e,a=B.value,o=I.proxyConfig;a&&(a=a.getComputeMaps().computeSortOpts,e=D.value,a.value.remote)&&(j.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(e)&&(j.tablePage.currentPage=1,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}))},Ue=e=>{Fe(e),A.dispatchEvent("sort-change",e,e.$event)},Le=e=>{Fe(e),A.dispatchEvent("clear-all-sort",e,e.$event)},Ve=t=>{var e,a=B.value,o=I.proxyConfig;a&&(a=a.getComputeMaps().computeFilterOpts,e=D.value,a.value.remote)&&(j.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(e)&&(j.tablePage.currentPage=1,M.uFoot=!0,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}),M.uFoot=!1,N())},Ie=e=>{Ve(e),A.dispatchEvent("filter-change",e,e.$event)},je=e=>{Ve(e),A.dispatchEvent("clear-all-filter",e,e.$event)},Me=t=>{var e=I.proxyConfig,a=D.value;j.tableLoading||(e&&(0,_utils.isEnableConf)(a)&&(M.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),M.uFoot=!1,N()),A.dispatchEvent("form-submit",t,t.$event))},Be=e=>{var t=B.value,a=I.proxyConfig;let o=e.$event;var r=D.value;a&&(0,_utils.isEnableConf)(r)&&(t&&t.clearScroll(),M.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),M.uFoot=!1,N()),A.dispatchEvent("form-reset",e,o)},De=e=>{A.dispatchEvent("form-submit-invalid",e,e.$event)},$e=e=>{var t=e.$event;A.dispatchEvent("form-toggle-collapse",e,t),A.dispatchEvent("form-collapse",e,t)},qe=e=>{var t=j.isZMax;return(e?!t:t)&&(j.isZMax=!t,j.tZindex<(0,_utils.getLastZIndex)())&&(j.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>A.recalculate(!0)).then(()=>(setTimeout(()=>A.recalculate(!0),15),j.isZMax))},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(d[e])return d[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},ze=e=>{let a={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?d[e]?a[t]=d[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):a[t]=e)}),a},Ae=e=>{let c=g.value;if(c){var v=a.value;if(v){let d=Z.value;if(d){let g=Q.value;if(g){var p=m.value;let r=v.getBoundingClientRect(),l=g.children[0],t=e.clientX,a=v.clientWidth,o=d.clientWidth,n=p.tableStyle&&_xeUtils.default.toNumber(p.tableStyle.minWidth)||80,i=o,s=-1,u=((0,_dom.addClass)(c,"is--split-drag"),e=>{var t=l.children[0],a=l.children[1];let o=0;t&&(s<0?t.style.display="none":(t.textContent=i+"px",t.style.display="block",o=t.offsetHeight)),a&&(s<0?(a.textContent=Math.floor(r.width-i)+"px",a.style.display="block",o=a.offsetHeight):a.style.display="none");t=e.clientY-r.top-o/2;g.style.left=i+"px",l.style.top=Math.min(r.height-o-1,Math.max(1,t))+"px"});document.onmousemove=e=>{e.preventDefault(),s=e.clientX-t,i=Math.min(a-80,Math.max(n,o+s)),u(e)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,g.style.display="",d.style.width=i+"px",(0,_dom.removeClass)(c,"is--split-drag");var e=B.value;e&&e.recalculate(!0)},g.style.display="block",u(e)}}}}},He=()=>{j.showLeftView=!j.showLeftView},Ge=()=>{j.showRightView=!j.showRightView};let Ne=(t,a,o,r,l)=>{if(t){var{type:t,from:n,to:i,lineStatus:s,lineColor:u,lineType:g,lineWidth:d,showArrow:c}=t,v=(0,_util.getTaskLinkKey)(n,i);if(n&&i&&!l[v]){let e=o[n];t={type:t,from:n,to:i,lineStatus:s,lineColor:u,lineType:g,lineWidth:d,showArrow:c};(e=e||(o[n]=[])).push(t),a.push(t),r[n]=t,l[v]=t}}};let Ke={},Ze=(_tableEmits.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);Ke[e]=(...e)=>o(t,...e)}),()=>{var e=v.value;if(e.items){let n={};return e.items.forEach(t=>{var a,o,{field:r,itemRender:l}=t;if(r){let e=null;l&&({startField:l,endField:a,defaultValue:o}=l,_xeUtils.default.isFunction(o)?e=o({item:t}):_xeUtils.default.isUndefined(o)||(e=o),l)&&a&&(_xeUtils.default.set(n,l,null),_xeUtils.default.set(n,a,null)),n[r]=e}}),n}return{}}),We=()=>{var{proxyConfig:e,formConfig:t}=I,a=j.proxyInited,o=D.value,r=v.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(r)&&o.form&&r.items&&(j.formData=Ze()),a||!(j.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>{M.uFoot=!0;var e=A.commitProxy("initial");return M.uFoot=!1,N(),e}).then(e=>{Ye("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},N=()=>{var e=D.value.ajax;if(e&&e.queryFooter)return A.commitProxy("queryFooter")},Qe=e=>{var t=ee.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&j.isZMax&&!1!==t.escRestore&&A.triggerZoomEvent(e)},Ye=(e,t,a)=>{o(e,createEvent(a,{$grid:null,$gantt:A},t))};f={dispatchEvent:Ye,getEl(){return g.value},commitProxy(t,...v){let{showFooter:i,proxyConfig:s,toolbarConfig:e,pagerConfig:u,editRules:p,validConfig:m}=I,f=j.tablePage,x=$.value,h=J.value;var b=D.value;let _=q.value;var a=z.value;let{beforeQuery:C,afterQuery:y,beforeQueryFooter:r,afterQueryFooter:l,beforeDelete:n,afterDelete:w,beforeSave:k,afterSave:E,ajax:T={}}=b,R=b.response||b.props||{},O=B.value;if(O){let g=H(),d=null,c=null;c=_xeUtils.default.isString(t)?(o=a.buttons,a=e&&(0,_utils.isEnableConf)(a)&&o?_xeUtils.default.findTree(o,e=>e.code===t,{children:"dropdowns"}):null,d=a?a.item:null,t):(d=t).code;var o,P=d?d.params:null;switch(c){case"insert":return O.insert({});case"insert_edit":return O.insert({}).then(({row:e})=>O.setEditRow(e,!0));case"insert_actived":return O.insert({}).then(({row:e})=>O.setEditRow(e,!0));case"mark_cancel":L=c,U=$.value,S=B.value,(F=S?S.getCheckboxRecords():[]).length?(S&&S.togglePendingRow(F),A.clearCheckboxRow()):U&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:L,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Pe(c,"vxe.grid.removeSelectRecord",()=>O.removeCheckboxRow());case"import":O.importData(P);break;case"open_import":O.openImport(P);break;case"export":O.exportData(P);break;case"open_export":O.openExport(P);break;case"reset_custom":return O.resetCustom(!0);case"initial":case"reload":case"query":{var S=T.query;let n=T.querySuccess,o=T.queryError;if(S){var F="initial"===c,U="reload"===c;if(!F&&j.tableLoading)return(0,_vue.nextTick)();let e=null,a=[],r=[],t={};if(u&&((F||U)&&(f.currentPage=1),(0,_utils.isEnableConf)(_))&&(t=Object.assign({},f)),F){if(s&&(0,_utils.isEnableConf)(b)&&b.form&&(g=Ze(),j.formData=g),O){let{tableFullColumn:e,fullColumnFieldData:o}=O.internalData;var L=O.getComputeMaps().computeSortOpts;let t=L.value.defaultSort;e.forEach(e=>{e.order=null}),t&&(_xeUtils.default.isArray(t)||(t=[t]),a=t.map(e=>{var{field:e,order:t}=e,a=o[e];return a&&(a=a.column)&&(a.order=t),{field:e,property:e,order:t}})),r=O.getCheckedFilters()}}else O&&(U?e=O.clearAll():(a=O.getSortColumns(),r=O.getCheckedFilters()));let l={$table:O,$grid:null,$gantt:A,code:c,button:d,isInited:F,isReload:U,page:t,sort:a.length?a[0]:{},sorts:a,filters:r,form:g,options:S};return j.sortData=a,j.filterData=r,j.tableLoading=!0,Promise.all([Promise.resolve((C||S)(l,...v)),e]).then(([e])=>{let t=[];var a,o,r;return j.tableLoading=!1,e&&(a={data:e,$table:O,$grid:null,$gantt:A},u&&(0,_utils.isEnableConf)(_)?(r=R.total,r=(_xeUtils.default.isFunction(r)?r(a):_xeUtils.default.get(e,r||"page.total"))||0,f.total=_xeUtils.default.toNumber(r),o=R.result,t=(_xeUtils.default.isFunction(o)?o(a):_xeUtils.default.get(e,o||"result"))||[],o=Math.max(Math.ceil(r/f.pageSize),1),f.currentPage>o&&(f.currentPage=o)):(r=R.list,_xeUtils.default.isArray(e)?t=e:r&&(t=(_xeUtils.default.isFunction(r)?r(a):_xeUtils.default.get(e,r))||[])),i)&&(r=(o=R.footerData)?_xeUtils.default.isFunction(o)?o(a):_xeUtils.default.get(e,o):[],_xeUtils.default.isArray(r))&&(j.footerData=r),O?O.loadData(t):(0,_vue.nextTick)(()=>{var e=B.value;e&&e.loadData(t)}),y&&y(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(j.tableLoading=!1,o&&o(Object.assign(Object.assign({},l),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.query"]);break}case"queryFooter":{var V=T.queryFooter;let a=T.queryFooterSuccess,o=T.queryFooterError;if(V){let e=[],t=(O&&(e=O.getCheckedFilters()),{$table:O,$grid:null,$gantt:A,code:c,button:d,filters:e,form:g,options:V});return Promise.resolve((r||V)(t,...v)).then(e=>(j.footerData=_xeUtils.default.isArray(e)?e:[],l&&l(t,...v),a&&a(Object.assign(Object.assign({},t),{response:e})),{status:!0})).catch(e=>(o&&o(Object.assign(Object.assign({},t),{response:e})),{status:!1}))}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.queryFooter"]);break}case"delete":{let o=T.delete,r=T.deleteSuccess,l=T.deleteError;if(o){let e=A.getCheckboxRecords(),t=e.filter(e=>!O.isInsertByRow(e));V={removeRecords:t};let a={$table:O,$grid:null,$gantt:A,code:c,button:d,body:V,form:g,options:o};if(e.length)return Pe(c,"vxe.grid.deleteSelectRecord",()=>t.length?(j.tableLoading=!0,Promise.resolve((n||o)(a,...v)).then(e=>(j.tableLoading=!1,O.setPendingRow(t,!1),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:G(e,"vxe.grid.delSuccess"),status:"success"}),w?w(a,...v):(M.uFoot=!0,A.commitProxy("query"),M.uFoot=!1,N()),r&&r(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:G(e,"vxe.grid.operError"),status:"error"}),l&&l(Object.assign(Object.assign({},a),{response:e})),{status:!1}))):O.remove(e));x&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"})}else(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.delete"]);break}case"save":{let i=T.save,s=T.saveSuccess,u=T.saveError;if(i){let t=O.getRecordset(),{insertRecords:a,removeRecords:o,updateRecords:r,pendingRecords:l}=t,n={$table:O,$grid:null,$gantt:A,code:c,button:d,body:t,form:g,options:i},e=(a.length&&(t.pendingRecords=l.filter(e=>-1===O.findRowIndexOf(a,e))),l.length&&(t.insertRecords=a.filter(e=>-1===O.findRowIndexOf(l,e))),Promise.resolve());return(e=p?O[m&&"full"===m.msgMode?"fullValidate":"validate"](t.insertRecords.concat(r)):e).then(e=>{if(!e)return t.insertRecords.length||o.length||r.length||t.pendingRecords.length?(j.tableLoading=!0,Promise.resolve((k||i)(n,...v)).then(e=>(j.tableLoading=!1,O.clearPendingRow(),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:G(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):(M.uFoot=!0,A.commitProxy("query"),M.uFoot=!1,N()),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(j.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:G(e,"vxe.grid.operError"),status:"error"}),u&&u(Object.assign(Object.assign({},n),{response:e})),{status:!1}))):void(x&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:c,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.save"]);break}default:var V=commands.get(c);V&&((V=V.tableCommandMethod||V.commandMethod)?V({code:c,button:d,$table:O,$grid:null,$gantt:A},...v):(0,_log.errLog)("vxe.error.notCommands",["[grid] "+c]))}}return(0,_vue.nextTick)()},getParams(){return I.params},zoom(){return j.isZMax?A.revert():A.maximize()},isMaximized(){return j.isZMax},maximize(){return qe(!0)},revert(){return qe()},getFormData:H,getFormItems(e){var t=v.value,a=I.formConfig,o=t.items;let r=[];return _xeUtils.default.eachTree(a&&(0,_utils.isEnableConf)(t)&&o?o:[],e=>{r.push(e)},{children:"children"}),_xeUtils.default.isUndefined(e)?r:r[e]},resetForm(){var e=i.value;return e?e.reset():(0,_vue.nextTick)()},validateForm(){var e=i.value;return e?e.validate():(0,_vue.nextTick)()},validateFormField(e){var t=i.value;return t?t.validateField(e):(0,_vue.nextTick)()},clearFormValidate(e){var t=i.value;return t?t.clearValidate(e):(0,_vue.nextTick)()},homePage(){var e=j.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=s.value;t&&t.homePageByEvent(e)},endPage(){var e=j.tablePage,t=ye.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=s.value;t&&t.endPageByEvent(e)},getCurrentPage(){var e=j.tablePage;return e.currentPage},setCurrentPage(e){var t=j.tablePage,a=ye.value;return t.currentPage=Math.min(a,Math.max(1,_xeUtils.default.toNumber(e))),(0,_vue.nextTick)()},setCurrentPageByEvent(e,t){var a=s.value;a&&a.setCurrentPageByEvent(e,t)},getPageSize(){var e=j.tablePage;return e.pageSize},setPageSize(e){var t=j.tablePage;return t.pageSize=Math.max(1,_xeUtils.default.toNumber(e)),(0,_vue.nextTick)()},setPageSizeByEvent(e,t){var a=s.value;a&&a.setPageSizeByEvent(e,t)},getProxyInfo(){var e,t=B.value;return I.proxyConfig?(e=j.sortData,{data:t?t.getFullData():[],filter:j.filterData,form:H(),sort:e.length?e[0]:{},sorts:e,pager:j.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null},refreshTaskView(){var e=r.value;return e?e.refreshData():(0,_vue.nextTick)()},hasTableViewVisible(){return j.showLeftView},showTableView(){return j.showLeftView=!0,(0,_vue.nextTick)()},hideTableView(){return(j.showLeftView=!1,_vue.nextTick)()},hasTaskViewVisible(){return j.showRightView},showTaskView(){return j.showRightView=!0,(0,_vue.nextTick)()},hideTaskView(){return(j.showRightView=!1,_vue.nextTick)()},closeTaskBarTooltip(){var e=j.barTipStore,t=c.value;return e.visible&&(Object.assign(e,{row:null,content:null,visible:!1,params:{}}),t)&&t.close&&t.close(),(0,_vue.nextTick)()}};let Xe={extendTableMethods:Y,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=d[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var t=I.height,a=j.isZMax,o=g.value;if(o){var r=F.value,l=U.value,n=L.value,i=V.value,s=K.value,u=o.parentElement;let e=0;return(e=!u||"100%"!==t&&"auto"!==t?e:a?0:(0,_dom.getPaddingTopBottomSize)(u))+(0,_dom.getPaddingTopBottomSize)(o)+(0,_dom.getOffsetHeight)(r)+(0,_dom.getOffsetHeight)(l)+(0,_dom.getOffsetHeight)(n)+(0,_dom.getOffsetHeight)(i)+(0,_dom.getOffsetHeight)(s)}return 0},getParentHeight(){var e=g.value;return e?(e=e.parentElement,(j.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-Xe.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let a=e.code;var o;return a?((o=["reload","delete","save"].includes(a))&&(M.uFoot=!0),e=A.commitProxy(e,t).then(e=>{e&&e.status&&["query","reload","delete","save"].includes(a)&&A.dispatchEvent("delete"===a||"save"===a?"proxy-"+a:"proxy-query",Object.assign(Object.assign({},e),{isReload:"reload"===a}),t)}),M.uFoot=!1,o&&N(),e):(0,_vue.nextTick)()},triggerToolbarBtnEvent(e,t){A.triggerToolbarCommitEvent(e,t),A.dispatchEvent("toolbar-button-click",{code:e.code,button:e},t)},triggerToolbarTolEvent(e,t){A.triggerToolbarCommitEvent(e,t),A.dispatchEvent("toolbar-tool-click",{code:e.code,tool:e},t)},triggerZoomEvent(e){A.zoom(),A.dispatchEvent("zoom",{type:j.isZMax?"max":"revert"},e)},handleTaskCellClickEvent(e,t){var a,o,r,l,n,i,s,u=B.value;u&&(a=u.props.highlightCurrentRow,{radioColumn:o,checkboxColumn:r}=u.reactData,{computeRadioOpts:n,computeCheckboxOpts:i,computeRowOpts:l}=u.getComputeMaps(),n=n.value,i=i.value,s=t.row,(l.value.isCurrent||a)&&u.triggerCurrentRowEvent(e,Object.assign({$table:u,rowIndex:u.getRowIndex(s),$rowIndex:u.getVMRowIndex(s)},t)),o&&"row"===n.trigger&&u.triggerRadioRowEvent(e,t),r)&&"row"===i.trigger&&u.handleToggleCheckRowEvent(e,t),A.dispatchEvent("task-cell-click",t,e)},handleTaskCellDblclickEvent(e,t){A.dispatchEvent("task-cell-dblclick",t,e)},handleTaskBarClickEvent(e,t){A.dispatchEvent("task-bar-click",t,e)},handleTaskBarDblclickEvent(e,t){A.dispatchEvent("task-bar-dblclick",t,e)},triggerTaskBarTooltipEvent(t,e){var a=j.barTipStore,o=x.value,r=ue.value,o=o.contentMethod,l=e.row;let n=(0,_utils.formatText)(_xeUtils.default.get(l,r)),i=(o&&(r=o(e),_xeUtils.default.eqNull(r)||(n=""+r)),o=a.row!==l,r=c.value,clearTimeout(M.barTipTimeout),o?A.closeTaskBarTooltip():r&&r.setActived&&r.setActived(!0),(0,_utils.formatText)(n));Object.assign(a,{row:l,visible:!0,content:i,params:e}),(0,_vue.nextTick)(()=>{var e=c.value;e&&(e.openByEvent?e.openByEvent(t,t.currentTarget,i):e.open&&e.open(t.currentTarget,i))})},handleTaskBarTooltipLeaveEvent(){var e=x.value;let t=c.value;t&&t.setActived&&t.setActived(!1),e.enterable?M.barTipTimeout=setTimeout(()=>{(t=c.value)&&t.isActived&&!t.isActived()&&A.closeTaskBarTooltip()},e.leaveDelay):A.closeTaskBarTooltip()},handleTableLinks:()=>{var e=j.linkList;j.tableLinks=e.slice(0)},handleTaskAddLink:Ne,handleTaskUpdateLinks:e=>{let t=[],a={},o={},r={};return _xeUtils.default.each(e||[],e=>{Ne(e,t,a,o,r)}),j.linkList=t,M.linkFromConfMaps=a,M.linkFromKeyMaps=o,M.linkUniqueMaps=r,A.handleTableLinks(),(0,_vue.nextTick)()},handleTaskHeaderContextmenuEvent(e,t){var a,o=B.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"header",t))},handleTaskBodyContextmenuEvent(e,t){var a,o=B.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))},handleTaskFooterContextmenuEvent(e,t){var a,o=B.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"footer",t))},handleTaskBarContextmenuEvent(e,t){var a,o=B.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))}},Je=(Object.assign(A,X,f,Xe,{loadColumn(e){var t=B.value;return _xeUtils.default.eachTree(e,e=>{var t=e.type;e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]||(0,_log.errLog)("vxe.error.notSlot",[e])}),"expand"===t&&(0,_log.errLog)("vxe.error.errProp",["type=expand","type=seq,radio,checkbox,html"])}),t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return A.clearAll(),A.loadColumn(e)}}),()=>{var{formConfig:e,proxyConfig:a}=I,o=j.formData,r=D.value,l=v.value;if(e&&(0,_utils.isEnableConf)(l)||d.form){let e=[];if(d.form)e=d.form({$grid:null,$gantt:A});else if(l.items){let t={};if(!l.inited){l.inited=!0;let t=r.beforeItem;r&&t&&l.items.forEach(e=>{t({$grid:null,$gantt:A,item:e})})}l.items.forEach(e=>{_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]&&(t[e]=d[e])})}),n&&e.push((0,_vue.h)(n,Object.assign(Object.assign({ref:i},Object.assign({},l,{data:a&&(0,_utils.isEnableConf)(r)&&r.form?o:l.data})),{onSubmit:Me,onReset:Be,onSubmitInvalid:De,onCollapse:$e}),t))}return(0,_vue.h)("div",{ref:F,key:"form",class:"vxe-gantt--form-wrapper"},e)}return renderEmptyElement(A)}),et=()=>{var t,a,o,r,l,n=I.toolbarConfig,i=z.value,s=d.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return d.toolbar?e=d.toolbar({$grid:null,$gantt:A}):(n={},(s=i.slots)&&(t=C(s,"buttons"),a=C(s,"buttonPrefix"),o=C(s,"buttonSuffix"),r=C(s,"tools"),l=C(s,"toolPrefix"),s=C(s,"toolSuffix"),t&&(n.buttons=t),a&&(n.buttonPrefix=a),o&&(n.buttonSuffix=o),r&&(n.tools=r),l&&(n.toolPrefix=l),s)&&(n.toolSuffix=s),e.push((0,_vue.h)(T,Object.assign(Object.assign({ref:u},i),{slots:void 0}),n))),(0,_vue.h)("div",{ref:U,key:"toolbar",class:"vxe-gantt--toolbar-wrapper"},e)}return renderEmptyElement(A)},tt=()=>{var e=d.top;return e?(0,_vue.h)("div",{ref:L,key:"top",class:"vxe-gantt--top-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},at=()=>{var e=d.left;return e?(0,_vue.h)("div",{class:"vxe-gantt--left-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},ot=()=>{var e=d.right;return e?(0,_vue.h)("div",{class:"vxe-gantt--right-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},rt=()=>{var e=I.proxyConfig,t=xe.value,a=D.value,o=Object.assign({},Ke),r=d.empty,l=d.loading,n=d.rowDragIcon||d["row-drag-icon"],i=d.columnDragIcon||d["column-drag-icon"],s=d.headerTooltip||d["header-tooltip"],u=d.tooltip,g=d.footerTooltip||d["footer-tooltip"],e=(e&&(0,_utils.isEnableConf)(a)&&(a.sort&&(o.onSortChange=Ue,o.onClearAllSort=Le),a.filter)&&(o.onFilterChange=Ie,o.onClearAllFilter=je),{});return r&&(e.empty=r),l&&(e.loading=l),n&&(e.rowDragIcon=n),i&&(e.columnDragIcon=i),s&&(e.headerTooltip=s),u&&(e.tooltip=u),g&&(e.footerTooltip=g),(0,_vue.h)("div",{ref:Z,class:"vxe-gantt--table-wrapper"},[(0,_vue.h)(E,Object.assign(Object.assign({ref:B},t),o),e)])},lt=()=>d.bottom?(0,_vue.h)("div",{ref:V,key:"bottom",class:"vxe-gantt--bottom-wrapper"},d.bottom({$grid:null,$gantt:A})):renderEmptyElement(A),nt=()=>{var{proxyConfig:e,pagerConfig:t}=I,a=D.value,o=q.value,r=d.pager;return t&&(0,_utils.isEnableConf)(o)||d.pager?(0,_vue.h)("div",{ref:K,key:"pager",class:"vxe-gantt--pager-wrapper"},r?r({$grid:null,$gantt:A}):[l?(0,_vue.h)(l,Object.assign(Object.assign(Object.assign({ref:s},o),e&&(0,_utils.isEnableConf)(a)?j.tablePage:{}),{onPageChange:Se}),ze(o.slots)):renderEmptyElement(A)]):renderEmptyElement(A)},it=()=>(0,_vue.h)("div",{ref:W,class:"vxe-gantt--view-wrapper"},[(0,_vue.h)(_ganttView.default,{ref:r})]),st=()=>{var{showLeftView:e,showRightView:t}=j,{enabled:a,resize:o,showCollapseTableButton:r,showCollapseTaskButton:l}=re.value;return a?(a={},(o=o&&e&&t)&&(a.onMousedown=Ae),(0,_vue.h)("div",{class:["vxe-gantt--view-split-bar",{"is--resize":o}]},[(0,_vue.h)("div",Object.assign({class:"vxe-gantt--view-split-bar-handle"},a)),r||l?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-btn-wrapper"},[r&&t?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-left-btn",onClick:He},[(0,_vue.h)("i",{class:e?getIcon().GANTT_VIEW_LEFT_OPEN:getIcon().GANTT_VIEW_LEFT_CLOSE})]):renderEmptyElement(A),l&&e?(0,_vue.h)("div",{class:"vxe-gantt--view-split-bar-right-btn",onClick:Ge},[(0,_vue.h)("i",{class:t?getIcon().GANTT_VIEW_RIGHT_OPEN:getIcon().GANTT_VIEW_RIGHT_CLOSE})]):renderEmptyElement(A)]):renderEmptyElement(A)])):renderEmptyElement(A)},y=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(Je());break;case"Toolbar":t.push(et());break;case"Top":t.push(tt());break;case"Gantt":t.push((0,_vue.h)("div",{ref:a,key:"tv",class:"vxe-gantt--gantt-container"},[at(),rt(),st(),it(),ot(),(0,_vue.h)("div",{ref:P}),(0,_vue.h)("div",{ref:Q,class:"vxe-gantt--resizable-split-tip"},[(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-tip-number"},[(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-number-left"}),(0,_vue.h)("div",{class:"vxe-gantt--resizable-split-number-right"})])]),(0,_vue.h)("div",{class:"vxe-gantt--border-line"})]));break;case"Bottom":t.push(lt());break;case"Pager":t.push(nt());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t};let w=(0,_vue.ref)(0);return(0,_vue.watch)(()=>I.columns?I.columns.length:-1,()=>{w.value++}),(0,_vue.watch)(()=>I.columns,()=>{w.value++}),(0,_vue.watch)(w,()=>{(0,_vue.nextTick)(()=>A.loadColumn(I.columns||[]))}),(0,_vue.watch)(()=>I.toolbarConfig,()=>{Oe()}),(0,_vue.watch)(be,()=>{_("currentPage")}),(0,_vue.watch)(_e,()=>{_("pageSize")}),(0,_vue.watch)(Ce,()=>{_("total")}),(0,_vue.watch)(()=>I.proxyConfig,()=>{We()}),(0,_vue.watch)(h,()=>{Re(),A.refreshTaskView()}),hooks.forEach(e=>{var e=e.setupGantt;e&&(e=e(A))&&_xeUtils.default.isObject(e)&&Object.assign(A,e)}),I.links&&A.handleTaskUpdateLinks(I.links),Re(),_(),(0,_vue.onMounted)(()=>{var e,t;A.handleUpdateTaskLink||(I.links&&(0,_log.warnLog)("vxe.error.notProp",["links"]),I.taskLinkConfig&&(0,_log.warnLog)("vxe.error.notProp",["task-link-config"])),(0,_vue.nextTick)(()=>{var e=I.columns,t=D.value;I.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),I.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),t.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),I.expandConfig&&(0,_log.warnLog)("vxe.error.notProp",["expand-config"]),e&&e.length&&A.loadColumn(e),Oe(),We()}),e=B.value,t=r.value,e&&t&&e.handleConnectGanttView(t),globalEvents.on(A,"keydown",Qe)}),(0,_vue.onUnmounted)(()=>{globalEvents.off(A,"keydown"),_xeUtils.default.assign(M,createInternalData())}),A.renderVN=()=>{var{showLeftView:e,showRightView:t}=j,a=O.value,o=me.value,r=we.value,l=ke.value,n=ve.value,i=pe.value;return(0,_vue.h)("div",{ref:g,class:["vxe-gantt","border--"+l,"sx-pos--"+(n?"top":"bottom"),"sy-pos--"+(i?"left":"right"),{["size--"+a]:a,"is--round":I.round,"is--maximize":j.isZMax,"is--loading":r,"show--left":e,"show--right":t}],style:o},(()=>{let a=j.barTipStore;var{headKeys:e,bodyKeys:t,footKeys:o}=he.value,r=x.value,l=d.asideLeft||d["aside-left"],n=d.asideRight||d["aside-right"];let i=d.taskBarTooltip||d["task-bar-tooltip"];return[(0,_vue.h)("div",{class:"vxe-gantt--layout-header-wrapper"},y(e)),(0,_vue.h)("div",{class:"vxe-gantt--layout-body-wrapper"},[l?(0,_vue.h)("div",{class:"vxe-gantt--layout-aside-left-wrapper"},l({})):renderEmptyElement(A),(0,_vue.h)("div",{class:"vxe-gantt--layout-body-content-wrapper"},y(t)),n?(0,_vue.h)("div",{class:"vxe-gantt--layout-aside-right-wrapper"},n({})):renderEmptyElement(A)]),(0,_vue.h)("div",{class:"vxe-gantt--layout-footer-wrapper"},y(o)),(0,_vue.h)("div",{ref:S}),(0,_vue.h)("div",{},[(0,_vue.h)(R,{key:"gtp",ref:c,theme:r.theme,enterable:r.enterable,enterDelay:r.enterDelay,leaveDelay:r.leaveDelay,useHTML:r.useHTML,width:r.width,height:r.height,minWidth:r.minWidth,minHeight:r.minHeight,maxWidth:r.maxWidth,maxHeight:r.maxHeight,isArrow:!1},i?{content:()=>{var{row:e,content:t}=a;return e?(0,_vue.h)("div",{},i(Object.assign({tooltipContent:t,$gantt:A},a.params))):renderEmptyElement(A)}}:{})])]})())},(0,_vue.provide)("$xeGrid",null),(0,_vue.provide)("$xeGantt",A),A},render(){return this.renderVN()}});
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VxeGanttDependencyType = void 0;
7
+ /**
8
+ * 依赖线枚举类型
9
+ */
10
+ var VxeGanttDependencyType;
11
+ (function (VxeGanttDependencyType) {
12
+ /**
13
+ * 结束后才开始,表示一个任务必须在另一个任务开始之前完成
14
+ */
15
+ VxeGanttDependencyType[VxeGanttDependencyType["FinishToStart"] = 0] = "FinishToStart";
16
+ /**
17
+ * 开始到结束,表示从某个过程的开始到结束的整个过程
18
+ */
19
+ VxeGanttDependencyType[VxeGanttDependencyType["StartToFinish"] = 1] = "StartToFinish";
20
+ /**
21
+ * 开始后才开始,表示一个活动结束了,另一个活动才能开始,它们之间按先后顺序进行
22
+ */
23
+ VxeGanttDependencyType[VxeGanttDependencyType["StartToStart"] = 2] = "StartToStart";
24
+ /**
25
+ * 完成到完成,表示一个任务必须在另一个任务完成之后才能完成
26
+ */
27
+ VxeGanttDependencyType[VxeGanttDependencyType["FinishToFinish"] = 3] = "FinishToFinish";
28
+ })(VxeGanttDependencyType || (exports.VxeGanttDependencyType = VxeGanttDependencyType = {}));
@@ -0,0 +1 @@
1
+ var VxeGanttDependencyType;Object.defineProperty(exports,"__esModule",{value:!0}),exports.VxeGanttDependencyType=void 0,(e=>{e[e.FinishToStart=0]="FinishToStart",e[e.StartToFinish=1]="StartToFinish",e[e.StartToStart=2]="StartToStart",e[e.FinishToFinish=3]="FinishToFinish"})(VxeGanttDependencyType||(exports.VxeGanttDependencyType=VxeGanttDependencyType={}));
@@ -4,4 +4,4 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.tableEmits = void 0;
7
- const tableEmits = exports.tableEmits = ['ready', 'init-rendered', 'data-rendered', 'update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'columns-change', 'data-change', 'footer-data-change', 'current-change', 'current-row-change', 'current-row-disabled', 'current-column-change', 'current-column-disabled', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'clear-all-sort', 'filter-change', 'filter-visible', 'clear-filter', 'clear-all-filter', 'resizable-change', 'column-resizable-change', 'row-resizable-change', 'toggle-row-group-expand', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'row-remove-dragend', 'row-insert-dragend', 'column-dragstart', 'column-dragover', 'column-dragend', 'enter-append-row', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'scroll-boundary', 'custom', 'custom-visible-change', 'custom-visible-all', 'custom-fixed-change', 'custom-sort-change', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-extension-fill', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end'];
7
+ const tableEmits = exports.tableEmits = ['ready', 'init-rendered', 'data-rendered', 'update:data', 'keydown-start', 'keydown', 'keydown-end', 'paste', 'copy', 'cut', 'context-menu', 'columns-change', 'data-change', 'footer-data-change', 'current-change', 'current-row-change', 'current-row-disabled', 'current-column-change', 'current-column-disabled', 'radio-change', 'checkbox-change', 'checkbox-all', 'checkbox-range-start', 'checkbox-range-change', 'checkbox-range-end', 'checkbox-range-select', 'cell-click', 'cell-dblclick', 'cell-menu', 'cell-mouseenter', 'cell-mouseleave', 'cell-selected', 'cell-delete-value', 'cell-backspace-value', 'header-cell-click', 'header-cell-dblclick', 'header-cell-menu', 'footer-cell-click', 'footer-cell-dblclick', 'footer-cell-menu', 'clear-merge', 'sort-change', 'clear-sort', 'clear-all-sort', 'filter-change', 'filter-visible', 'clear-filter', 'clear-all-filter', 'resizable-change', 'column-resizable-change', 'row-resizable-change', 'toggle-row-group-expand', 'toggle-row-expand', 'toggle-tree-expand', 'menu-click', 'edit-closed', 'row-dragstart', 'row-dragover', 'row-dragend', 'row-remove-dragend', 'row-insert-dragend', 'column-dragstart', 'column-dragover', 'column-dragend', 'enter-append-row', 'edit-actived', 'edit-activated', 'edit-disabled', 'valid-error', 'scroll', 'scroll-boundary', 'custom', 'custom-visible-change', 'custom-visible-all', 'custom-fixed-change', 'custom-sort-change', 'change-fnr', 'open-fnr', 'show-fnr', 'hide-fnr', 'fnr-change', 'fnr-find', 'fnr-find-all', 'fnr-replace', 'fnr-replace-all', 'cell-area-copy', 'cell-area-cut', 'cell-area-paste', 'cell-area-merge', 'clear-cell-area-selection', 'clear-cell-area-merge', 'header-cell-area-selection', 'cell-area-selection-invalid', 'cell-area-selection-start', 'cell-area-selection-drag', 'cell-area-selection-end', 'cell-area-extension-start', 'cell-area-extension-drag', 'cell-area-extension-end', 'cell-area-extension-fill', 'cell-area-selection-all-start', 'cell-area-selection-all-end', 'cell-area-arrows-start', 'cell-area-arrows-end', 'active-cell-change-start', 'active-cell-change-end'];
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.tableEmits=void 0;let tableEmits=exports.tableEmits=["ready","init-rendered","data-rendered","update:data","keydown-start","keydown","keydown-end","paste","copy","cut","columns-change","data-change","footer-data-change","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","row-remove-dragend","row-insert-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","custom-sort-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-extension-fill","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end"];
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.tableEmits=void 0;let tableEmits=exports.tableEmits=["ready","init-rendered","data-rendered","update:data","keydown-start","keydown","keydown-end","paste","copy","cut","context-menu","columns-change","data-change","footer-data-change","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","row-remove-dragend","row-insert-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","custom-sort-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-extension-fill","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end"];
@@ -7,6 +7,9 @@ exports.getCalcHeight = getCalcHeight;
7
7
  exports.getCellRestHeight = getCellRestHeight;
8
8
  exports.getRefElem = getRefElem;
9
9
  exports.getStandardGapTime = getStandardGapTime;
10
+ exports.getTaskBarLeft = getTaskBarLeft;
11
+ exports.getTaskBarWidth = getTaskBarWidth;
12
+ exports.getTaskLinkKey = getTaskLinkKey;
10
13
  function getRefElem(refEl) {
11
14
  if (refEl) {
12
15
  const rest = refEl.value;
@@ -35,4 +38,13 @@ function getStandardGapTime(type) {
35
38
  return 1000;
36
39
  }
37
40
  return 1000 * 60 * 60 * 24;
41
+ }
42
+ function getTaskBarLeft(chartRest, viewCellWidth) {
43
+ return chartRest ? viewCellWidth * chartRest.oLeftSize : 0;
44
+ }
45
+ function getTaskBarWidth(chartRest, viewCellWidth) {
46
+ return Math.max(1, chartRest ? Math.floor(viewCellWidth * chartRest.oWidthSize) - 1 : 0);
47
+ }
48
+ function getTaskLinkKey(from, to) {
49
+ return `${from}_${to}`;
38
50
  }
@@ -1 +1 @@
1
- function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getCellRestHeight(e,t,r,n){return e.resizeHeight||t.height||r.height||e.height||n}function getStandardGapTime(e){switch(e){case"hour":return 36e5;case"minute":return 6e4;case"second":return 1e3}return 864e5}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCalcHeight=getCalcHeight,exports.getCellRestHeight=getCellRestHeight,exports.getRefElem=getRefElem,exports.getStandardGapTime=getStandardGapTime;
1
+ function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getCellRestHeight(e,t,r,n){return e.resizeHeight||t.height||r.height||e.height||n}function getStandardGapTime(e){switch(e){case"hour":return 36e5;case"minute":return 6e4;case"second":return 1e3}return 864e5}function getTaskBarLeft(e,t){return e?t*e.oLeftSize:0}function getTaskBarWidth(e,t){return Math.max(1,e?Math.floor(t*e.oWidthSize)-1:0)}function getTaskLinkKey(e,t){return e+"_"+t}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCalcHeight=getCalcHeight,exports.getCellRestHeight=getCellRestHeight,exports.getRefElem=getRefElem,exports.getStandardGapTime=getStandardGapTime,exports.getTaskBarLeft=getTaskBarLeft,exports.getTaskBarWidth=getTaskBarWidth,exports.getTaskLinkKey=getTaskLinkKey;
@@ -1,5 +1,5 @@
1
1
  @charset "UTF-8";
2
- .vxe-gantt-view--chart-wrapper {
2
+ .vxe-gantt-view--chart-task-wrapper {
3
3
  position: absolute;
4
4
  top: 0;
5
5
  left: 0;