vxe-gantt 4.3.19 → 4.3.21

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.
@@ -180,8 +180,8 @@ export default defineVxeComponent({
180
180
  });
181
181
  const computeNowLineLeft = computed(() => {
182
182
  const ganttReactData = $xeGantt.reactData;
183
- const { minViewDate, maxViewDate, viewCellWidth, tableColumn } = reactData;
184
- const { todayDateMaps } = internalData;
183
+ const { minViewDate, maxViewDate, viewCellWidth } = reactData;
184
+ const { visibleColumn, todayDateMaps } = internalData;
185
185
  const minScale = computeMinScale.value;
186
186
  const taskViewOpts = computeTaskViewOpts.value;
187
187
  const taskNowLineOpts = computeTaskNowLineOpts.value;
@@ -194,12 +194,12 @@ export default defineVxeComponent({
194
194
  const todayValue = todayDateMaps[minScale.type];
195
195
  let currCol = null;
196
196
  let nextCol = null;
197
- for (let i = 0; i < tableColumn.length; i++) {
198
- const column = tableColumn[i];
197
+ for (let i = 0; i < visibleColumn.length; i++) {
198
+ const column = visibleColumn[i];
199
199
  if (column.field === todayValue) {
200
- currCol = tableColumn[i];
200
+ currCol = column;
201
201
  nlLeft = i * viewCellWidth;
202
- nextCol = tableColumn[i + 1];
202
+ nextCol = visibleColumn[i + 1];
203
203
  break;
204
204
  }
205
205
  }
@@ -1809,6 +1809,7 @@ export default defineVxeComponent({
1809
1809
  if (isEnableConf(menuConfig)) {
1810
1810
  evnt.stopPropagation();
1811
1811
  $xeTable.handleOpenMenuEvent(evnt, 'header', params);
1812
+ $xeTable.dispatchEvent('header-cell-menu', params, evnt);
1812
1813
  }
1813
1814
  }
1814
1815
  },
@@ -1820,6 +1821,7 @@ export default defineVxeComponent({
1820
1821
  if (isEnableConf(menuConfig)) {
1821
1822
  evnt.stopPropagation();
1822
1823
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
1824
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
1823
1825
  }
1824
1826
  }
1825
1827
  },
@@ -1831,6 +1833,7 @@ export default defineVxeComponent({
1831
1833
  if (isEnableConf(menuConfig)) {
1832
1834
  evnt.stopPropagation();
1833
1835
  $xeTable.handleOpenMenuEvent(evnt, 'footer', params);
1836
+ $xeTable.dispatchEvent('footer-cell-menu', params, evnt);
1834
1837
  }
1835
1838
  }
1836
1839
  },
@@ -1842,6 +1845,7 @@ export default defineVxeComponent({
1842
1845
  if (isEnableConf(menuConfig)) {
1843
1846
  evnt.stopPropagation();
1844
1847
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
1848
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
1845
1849
  }
1846
1850
  }
1847
1851
  }
package/es/ui/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { setConfig, setIcon } = VxeUI;
3
- VxeUI.ganttVersion = "4.3.19";
3
+ VxeUI.ganttVersion = "4.3.21";
4
4
  const ymdFormat = 'yyyy-MM-dd';
5
5
  const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
6
6
  setConfig({
package/es/ui/src/log.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const version = `gantt v${"4.3.19"}`;
3
+ const version = `gantt v${"4.3.21"}`;
4
4
  export const warnLog = log.create('warn', version);
5
5
  export const errLog = log.create('error', version);
@@ -222,10 +222,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
222
222
  const {
223
223
  minViewDate,
224
224
  maxViewDate,
225
- viewCellWidth,
226
- tableColumn
225
+ viewCellWidth
227
226
  } = reactData;
228
227
  const {
228
+ visibleColumn,
229
229
  todayDateMaps
230
230
  } = internalData;
231
231
  const minScale = computeMinScale.value;
@@ -246,12 +246,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
246
246
  const todayValue = todayDateMaps[minScale.type];
247
247
  let currCol = null;
248
248
  let nextCol = null;
249
- for (let i = 0; i < tableColumn.length; i++) {
250
- const column = tableColumn[i];
249
+ for (let i = 0; i < visibleColumn.length; i++) {
250
+ const column = visibleColumn[i];
251
251
  if (column.field === todayValue) {
252
- currCol = tableColumn[i];
252
+ currCol = column;
253
253
  nlLeft = i * viewCellWidth;
254
- nextCol = tableColumn[i + 1];
254
+ nextCol = visibleColumn[i + 1];
255
255
  break;
256
256
  }
257
257
  }
@@ -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}}function createReactData(){return{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}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(t,l){var d=_xeUtils.default.uniqueId();let M=(0,_vue.inject)("$xeGantt",{}),{reactData:T,internalData:h}=M,{computeTaskOpts:v,computeTaskViewOpts:w,computeStartField:p,computeEndField:x,computeTypeField:_,computeScrollbarOpts:S,computeScrollbarXToTop:b,computeScrollbarYToLeft:D,computeScaleUnit:a,computeWeekScale:r,computeMinScale:U,computeTaskNowLineOpts:m}=M.getComputeMaps(),i=(0,_vue.ref)(),W=(0,_vue.ref)(),E=(0,_vue.ref)(),L=(0,_vue.ref)(),k=(0,_vue.ref)(),H=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),C=(0,_vue.ref)(),$=(0,_vue.ref)(),Y=(0,_vue.ref)(),u=(0,_vue.ref)(),y=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(0,_vue.reactive)(createReactData()),V=createInternalData(),B={refElem:i,refScrollXHandleElem:L,refScrollYHandleElem:R},j=(0,_vue.computed)(()=>{var{minViewDate:t,maxViewDate:l}=I,e=w.value,a=U.value,e=e.gridding,r=[];if(a&&t&&l){var{type:i,startDay:o}=a,s=-(T.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),d=T.currRightSpacing+_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(i){case"year":{let e=_xeUtils.default.getWhatYear(t,s,"first");for(var u=_xeUtils.default.getWhatYear(l,d,"first");e<=u;){var n=e;r.push(n),e=_xeUtils.default.getWhatYear(e,1)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(t,s,"first");for(var c=_xeUtils.default.getWhatQuarter(l,d,"first");e<=c;){var f=e;r.push(f),e=_xeUtils.default.getWhatQuarter(e,1)}break}case"month":{let e=_xeUtils.default.getWhatMonth(t,s,"first");for(var h=_xeUtils.default.getWhatMonth(l,d,"first");e<=h;){var v=e;r.push(v),e=_xeUtils.default.getWhatMonth(e,1)}break}case"week":{let e=_xeUtils.default.getWhatWeek(t,s,o,o);for(var m=_xeUtils.default.getWhatWeek(l,d,o,o);e<=m;){var g=e;r.push(g),e=_xeUtils.default.getWhatWeek(e,1)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(t,s,"first");for(var y=_xeUtils.default.getWhatDay(l,d,"first");e<=y;){var p=e;r.push(p),e=_xeUtils.default.getWhatDay(e,1)}break}case"hour":case"minute":case"second":{var x=+(0,_util.getStandardGapTime)(a.type);let e=t.getTime()+s*x;for(var _=l.getTime()+d*x;e<=_;){var S=new Date(e);r.push(S),e+=x}break}}}return r});var e=(0,_vue.computed)(()=>{var e=M.reactData,{minViewDate:a,maxViewDate:t,viewCellWidth:r,tableColumn:i}=I,o=V.todayDateMaps,s=U.value,d=w.value.showNowLine,u=m.value.mode,e=e.nowTime;let n=0;if(d&&s&&a&&t&&e>=a.getTime()&&e<=t.getTime()){var c=o[s.type];let t=null,l=null;for(let e=0;e<i.length;e++)if(i[e].field===c){t=i[e],n=e*r,l=i[e+1];break}"progress"===u?t&&l&&(d=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(e-d)/(l.dateObj.date.getTime()-d))),n+=a*r):"center"===u?n+=r/2:"end"===u&&(n+=r-1)}return n});let G={computeScaleDateList:j,computeNowLineLeft:e},X={xID:d,props:t,context:l,reactData:I,internalData:V,getRefMaps:()=>B,getComputeMaps:()=>G},g=e=>{var t=v.value.dateFormat;return _xeUtils.default.toStringDate(e,t||null)},N=()=>{var s=M.reactData,d=s.taskScaleList,u=U.value;if(u){var d=d.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,o]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var c=n.getDay()+1,f=Math.ceil((n.getMonth()+1)/3),d=""+_xeUtils.default.getYearWeek(n,d?d.startDay:void 0);u&&q(d,t)&&(e=""+(Number(e)+1),l="01"),s.nowTime=n.getTime(),V.todayDateMaps={year:e,quarter:e+"_q"+f,month:e+"_"+l,week:e+"_W"+d,day:`${e}_${l}_${a}_E`+c,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+o}}},A=()=>{var e=M.reactData.taskScaleList,t=a.value;let h=U.value;var v=r.value,m=j.value;let g=[],l=[];if(h&&t&&m.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},o={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}};var y="week"===h.type,p=(t,l,a)=>{if(h.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 f=0;f<m.length;f++){var x=m[f];let[e,t,l,a,r,i,o,s,d,u,n,c]=_xeUtils.default.toDateString(x,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-");var _=x.getDay(),S=_+1,T=Math.ceil((x.getMonth()+1)/3),w=""+_xeUtils.default.getYearWeek(x,v?v.startDay:void 0),b=_xeUtils.default.padStart(w,2,"0"),x=(y&&q(w,l)&&(t=""+(Number(t)+1),l="1",a="0"+l),{date:x,yy:e,yyyy:t,M:l,MM:a,d:r,dd:i,H:o,HH:s,m:d,mm:u,s:n,ss:c,q:T,W:w,WW:b,E:S,e:_}),b={year:{field:t,title:t,dateObj:x},quarter:{field:t+"_q"+T,title:""+T,dateObj:x},month:{field:t+"_"+a,title:a,dateObj:x},week:{field:t+"_W"+w,title:w,dateObj:x},day:{field:`${t}_${a}_${i}_E`+S,title:""+S,dateObj:x},date:{field:`${t}_${a}_`+i,title:i,dateObj:x},hour:{field:`${t}_${a}_${i}_`+s,title:s,dateObj:x},minute:{field:`${t}_${a}_${i}_${s}_`+u,title:u,dateObj:x},second:{field:`${t}_${a}_${i}_${s}_${u}_`+c,title:c,dateObj:x}},_=b[h.type];h.level<19&&p("year",b,_),h.level<17&&p("quarter",b,_),h.level<15&&p("month",b,_),h.level<13&&p("week",b,_),h.level<11&&p("day",b,_),h.level<9&&p("date",b,_),h.level<7&&p("hour",b,_),h.level<5&&p("minute",b,_),h.level<3&&p("second",b,_),g.push(_)}e.forEach(e=>{var t;e.type===h.type?l.push({scaleItem:e,columns:g}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),l.push({scaleItem:e,columns:t}))})}return{fullCols:g,groupCols:l}},q=(e,t)=>""+e=="1"&&""+t=="12",Q=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return q(e,a+1)&&l++,{yyyy:l,W:e}},P=e=>{let i=I.minViewDate;var t=U.value,l=a.value;let d=r.value;if(t)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}}}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}}}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}}}case"week":{let s={};return e.forEach(({dateObj:e},t)=>{e=e.yyyy+"-"+e.W;s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=Q(e,d?d.startDay:void 0),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,d?d.startDay:void 0,d?d.startDay:void 0),r=Q(t,d?d.startDay:void 0),r=r.yyyy+"-"+r.W,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}}}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+(e?0: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}}}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}}}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),{offsetLeftSize:l,offsetWidthSize:a}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},J=()=>{var e=M.props.treeConfig,t=V.scrollXStore,l=V.xeTable;let o=null,s=null;if(l){let a=p.value,r=x.value,i=_.value;var{computeAggregateOpts:d,computeTreeOpts:u}=l.getComputeMaps(),n=l.reactData.isRowGroupStatus,{afterFullData:l,afterTreeFullData:c,afterGroupFullData:f}=l.internalData,d=d.value,u=u.value,h=u.transform,v=u.children||u.childrenField,m=e=>{let t=_xeUtils.default.get(e,a),l=_xeUtils.default.get(e,r);var e=_xeUtils.default.get(e,i),e=(0,_util.hasMilestoneTask)(e);t=t||l,!e&&l||(l=t),t&&(e=g(t),!o||o.getTime()>e.getTime())&&(o=e),l&&(e=g(l),!s||s.getTime()<e.getTime())&&(s=e)};n?(n=d.mapChildrenField)&&_xeUtils.default.eachTree(f,m,{children:n}):e?_xeUtils.default.eachTree(c,m,{children:h?u.mapChildrenField:v}):l.forEach(m)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),I.minViewDate=o,I.maxViewDate=s,V.startMaps={},V.endMaps={},(()=>{var e=M.props.treeConfig,{minViewDate:t,maxViewDate:l}=I,{fullCols:a,groupCols:r}=A();if(t&&l&&a.length){let c=V.xeTable;if(c){let o=p.value,s=x.value,d=_.value;var{computeAggregateOpts:t,computeTreeOpts:l}=c.getComputeMaps(),i=c.reactData.isRowGroupStatus,{afterFullData:f,afterTreeFullData:h,afterGroupFullData:v}=c.internalData,t=t.value,l=l.value,m=l.transform,g=l.children||l.childrenField;let u={},n=P(a);var y=e=>{var t=c.getRowid(e);let l=_xeUtils.default.get(e,o),a=_xeUtils.default.get(e,s);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,d)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?u[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=n(l,a),u[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,y,{children:i}):e?_xeUtils.default.eachTree(h,y,{children:m?l.mapChildrenField:g}):f.forEach(y),V.chartMaps=u}}V.visibleColumn=a,I.headerGroups=r,N(),re(),ie()})()},n=()=>{var{scrollXWidth:e,scrollYHeight:t}=I,l=V.elemStore,a=S.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=L.value,i=R.value;l&&(t=t>l.clientHeight,i&&(I.scrollbarWidth=a.width||i.offsetWidth-i.clientWidth||14),I.overflowY=t,i=e>l.clientWidth,r&&(I.scrollbarHeight=a.height||r.offsetHeight-r.clientHeight||14),I.overflowX=i)},K=(l,e)=>{let a=V.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=_.value,i=0,o=0;return _xeUtils.default.eachTree(e,e=>{var t=l.getRowid(e),e=_xeUtils.default.get(e,r);(0,_util.hasSubviewTask)(e)||(e=t?a[t]:null)&&(o=Math.max(o,e.oLeftSize+e.oWidthSize),i=i?Math.min(i,e.oLeftSize):e.oLeftSize)},{children:t}),{minSize:i,maxSize:o}},Z=()=>{let o=h.dragBarRow,s=I.viewCellWidth,{elemStore:e,chartMaps:d}=V,u=V.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&u){var l=u.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),o&&u.getRowid(o)===e||(l=(e=e?d[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?d[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=K(u,t),e.style.left=s*t+"px",e.style.width=s*(l-t)+"px"):(e.style.left=(0,_util.getTaskBarLeft)(a,s)+"px",(0,_dom.hasClass)(e,"is--milestone")||(e.style.width=(0,_util.getTaskBarWidth)(a,s)+"px")))}):(t=(t=t.children[0])?t.children[0]:null)&&(l=l?l[i]:[],{minSize:l,maxSize:a}=K(u,l),t.style.left=s*l+"px",t.style.width=s*(a-l)+"px")):(r.style.left=(0,_util.getTaskBarLeft)(e,s)+"px",(0,_dom.hasClass)(r,"is--milestone")||(r.style.width=(0,_util.getTaskBarWidth)(e,s)+"px"))))})}return(0,_vue.nextTick)()},c=()=>{var{scrollbarWidth:s,scrollbarHeight:d,headerGroups:u,tableColumn:n}=I,{elemStore:c,visibleColumn:f}=V,h=V.xeTable,v=i.value;if(v&&M){var m=S.value,g=b.value,y=D.value,p=k.value,x=H.value,_=W.value;let e=s;s=d;let t=0,l=0,a=0,r=(h&&(d=h.internalData,t=d.tBodyHeight,l=d.tHeaderHeight,a=d.tFooterHeight),"visible");(y||m.y&&!1===m.y.visible)&&(e=0,r="hidden");h=(0,_util.getRefElem)(c["main-header-scroll"]),d=(h&&(h.style.height=l+"px",h.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"])),m=(y&&(y.style.height=a+"px"),_&&(_.style.height=s+"px",_.style.visibility="visible"),C.value),h=(m&&(m.style.left=g?e+"px":"",m.style.width=v.clientWidth-e+"px"),p&&(p.style.width=g?e+"px":"",p.style.display=g&&s?"block":""),x&&(x.style.width=g?"":e+"px",x.style.display=!g&&s?"block":""),E.value),u=(h&&(h.style.width=e+"px",h.style.height=t+l+a+"px",h.style.visibility=r),z.value),y=(u&&(u.style.height=l+"px",u.style.display=l?"block":""),$.value),_=(y&&(y.style.height=t+"px",y.style.top=l+"px"),Y.value),m=(_&&(_.style.height=a+"px",_.style.top=l+t+"px",_.style.display=a?"block":""),F.value);let i=40,o=i=m?m.clientWidth||40:i;f.length&&(o=Math.max(0,i*f.length),d)&&0<(p=(v=d.clientWidth)-o)&&(i+=Math.max(0,p/f.length),o=v),I.viewCellWidth=i;x=(0,_util.getRefElem)(c["main-header-table"]),g=(0,_util.getRefElem)(c["main-body-table"]),s=i*n.length;return x&&(x.style.width=o+"px"),g&&(g.style.width=s+"px"),I.scrollXWidth=o,Promise.all([Z(),M.handleUpdateTaskLinkStyle?M.handleUpdateTaskLinkStyle(X):null])}},o=()=>{var e=i.value;return V.rceRunTime=Date.now(),e&&e.clientWidth&&M?(n(),c(),(0,_vue.nextTick)().then(()=>{var e,t=I.scrollXLoad,l=V.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=te(),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),ae().then(()=>{le()})):s()})):(0,_vue.nextTick)()},ee=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=V,a=V.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(o()):(0,_vue.nextTick)(()=>{e()}),V.rceTimeout=setTimeout(()=>{V.rceTimeout=void 0,o()},r)}),te=()=>{var e,t=I.viewCellWidth,l=V.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}},le=()=>{var e=I.isScrollXBig,t=V.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:o,visibleSize:s}=te(),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,ae())},ae=()=>(ie(),s(),(0,_vue.nextTick)()),re=()=>I.scrollXLoad=!0,ie=()=>{var e=I.scrollXLoad,{visibleColumn:t,scrollXStore:l}=V,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);I.tableColumn=e},s=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=I,{elemStore:a,scrollXStore:r}=V;var i=(0,_util.getRefElem)(a["main-body-table"]),o=r.startIndex;let s=0,d=(t&&(s=Math.max(0,o*l)),i&&(i.style.transform=`translate(${s}px, ${I.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?d+"px":"")});o=u.value,o&&(o.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),o=i?i.firstElementChild:null,o&&(o.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),o=i?i.firstElementChild:null;return o&&(o.style.width=d+"px"),I.scrollXLeft=s,I.scrollXWidth=d,n(),(0,_vue.nextTick)()},oe=()=>{le()},se=(e,t)=>{var l=V.lcsTimeout;I.lazScrollLoading=!0,l&&clearTimeout(l),V.lcsTimeout=setTimeout(()=>{V.lcsRunTime=Date.now(),V.lcsTimeout=void 0,V.intoRunScroll=!1,V.inVirtualScroll=!1,V.inWheelScroll=!1,V.inHeaderScroll=!1,V.inBodyScroll=!1,V.inFooterScroll=!1,I.lazScrollLoading=!1},200)},O=(e,t,l,a)=>{t&&(V.lastScrollLeft=a),e&&(V.lastScrollTop=l),I.lastScrollTime=Date.now(),se(t,e)},f=(u,n,c,f,h)=>{var v=V.xeTable,{lastScrollLeft:m,lastScrollTop:g}=V,y=L.value,p=R.value;if(y&&p&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:x}=v.getComputeMaps(),_=p.clientHeight,S=y.clientWidth,p=p.scrollHeight,y=y.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,o=!1,s=!1,d=!1;c&&(v=v.value,(l=h<=0)||(a=y-1<=h+S),m<h?(r="right",y-v<=h+S&&(d=!0)):(r="left",h<=v&&(s=!0))),n&&(m=x.value,(e=f<=0)||(t=p-1<=f+_),g<f?(r="bottom",p-m<=f+_&&(o=!0)):(r="top",f<=m&&(i=!0))),O(n,c,f,h);v={source:sourceType,scrollTop:f,scrollLeft:h,bodyHeight:_,bodyWidth:S,scrollHeight:p,scrollWidth:y,isX:c,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(o||i||d||s)&&M.dispatchEvent("scroll-boundary",v,u),M.dispatchEvent("scroll",v,u)}},de=e=>{var t=V.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:c,handleLazyRecalculate:ee,handleUpdateCurrentRow(e){var t,l,a=V.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=V.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}=V;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=L.value,a&&l&&(t=l.scrollLeft,V.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),f(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=I.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:o,inFooterScroll:s,lastScrollLeft:d,lastScrollTop:u}=V;i||o||s||(i=e.currentTarget,o=(0,_util.getRefElem)(r["main-header-scroll"]),s=L.value,r=R.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,V.inBodyScroll=!0,V.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),de(l)),d&&(V.inBodyScroll=!0,(0,_dom.setScrollLeft)(s,t),(0,_dom.setScrollLeft)(o,t),a)&&oe(),u&&O(u,d,i.scrollTop,t),d&&f(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=I.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=V;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,V.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&oe(),f(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=V;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,V.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),de(e),O(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return s()},handleUpdateSYSpace(){return(()=>{var e=V.elemStore,t=V.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(${I.scrollXLeft||0}px, ${d}px)`),t&&(t.style.transform=`translateY(${d}px)`),l=(0,_util.getRefElem)(e["main-body-ySpace"]),l&&(l.style.height=s?s+"px":""),a=y.value,a&&(a.style.height=s?s+"px":""),t=(0,_util.getRefElem)(e["main-chart-before-wrapper"]),l=t?t.firstElementChild:null,l&&(l.style.height=s?s+"px":""),a=(0,_util.getRefElem)(e["main-chart-after-wrapper"]),t=a?a.firstElementChild:null;return t&&(t.style.height=s?s+"px":""),I.scrollYTop=d,I.scrollYHeight=i,I.isScrollYBig=o,n(),(0,_vue.nextTick)().then(()=>{c()})})()},handleUpdateSYStatus(e){I.scrollYLoad=e}};let ue=()=>{ee()},ne=(Object.assign(X,{refreshData(){return J(),o(),(0,_vue.nextTick)().then(()=>{var e=V.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=V.xeTable;return t&&(t=t.reactData.tableData,I.tableData=t,e&&(T.currLeftSpacing=0,T.currRightSpacing=0,J()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(V.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:k,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:L,class:"vxe-gantt-view--scroll-x-handle",onScroll:X.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:u,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:H,class:"vxe-gantt-view--scroll-x-right-corner"})])),ce=()=>(0,_vue.h)("div",{ref:E,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:$,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-y-handle",onScroll:X.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:y,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),fe=()=>(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)]),he=()=>{var e=D.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ce(),fe()]:[fe(),ce()])};return(0,_vue.onMounted)(()=>{globalEvents.on(X,"resize",ue)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign(I,createReactData()),_xeUtils.default.assign(V,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(X,"keydown")}),X.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=I,r=b.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?[ne(),he()]:[he(),ne()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:F,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",X),X},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}}function createReactData(){return{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}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(t,l){var d=_xeUtils.default.uniqueId();let M=(0,_vue.inject)("$xeGantt",{}),{reactData:T,internalData:h}=M,{computeTaskOpts:v,computeTaskViewOpts:w,computeStartField:p,computeEndField:x,computeTypeField:_,computeScrollbarOpts:S,computeScrollbarXToTop:b,computeScrollbarYToLeft:D,computeScaleUnit:a,computeWeekScale:r,computeMinScale:U,computeTaskNowLineOpts:m}=M.getComputeMaps(),i=(0,_vue.ref)(),W=(0,_vue.ref)(),E=(0,_vue.ref)(),L=(0,_vue.ref)(),k=(0,_vue.ref)(),H=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),C=(0,_vue.ref)(),$=(0,_vue.ref)(),Y=(0,_vue.ref)(),u=(0,_vue.ref)(),y=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(0,_vue.reactive)(createReactData()),V=createInternalData(),B={refElem:i,refScrollXHandleElem:L,refScrollYHandleElem:R},j=(0,_vue.computed)(()=>{var{minViewDate:t,maxViewDate:l}=I,e=w.value,a=U.value,e=e.gridding,r=[];if(a&&t&&l){var{type:i,startDay:o}=a,s=-(T.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),d=T.currRightSpacing+_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(i){case"year":{let e=_xeUtils.default.getWhatYear(t,s,"first");for(var u=_xeUtils.default.getWhatYear(l,d,"first");e<=u;){var n=e;r.push(n),e=_xeUtils.default.getWhatYear(e,1)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(t,s,"first");for(var c=_xeUtils.default.getWhatQuarter(l,d,"first");e<=c;){var f=e;r.push(f),e=_xeUtils.default.getWhatQuarter(e,1)}break}case"month":{let e=_xeUtils.default.getWhatMonth(t,s,"first");for(var h=_xeUtils.default.getWhatMonth(l,d,"first");e<=h;){var v=e;r.push(v),e=_xeUtils.default.getWhatMonth(e,1)}break}case"week":{let e=_xeUtils.default.getWhatWeek(t,s,o,o);for(var m=_xeUtils.default.getWhatWeek(l,d,o,o);e<=m;){var g=e;r.push(g),e=_xeUtils.default.getWhatWeek(e,1)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(t,s,"first");for(var y=_xeUtils.default.getWhatDay(l,d,"first");e<=y;){var p=e;r.push(p),e=_xeUtils.default.getWhatDay(e,1)}break}case"hour":case"minute":case"second":{var x=+(0,_util.getStandardGapTime)(a.type);let e=t.getTime()+s*x;for(var _=l.getTime()+d*x;e<=_;){var S=new Date(e);r.push(S),e+=x}break}}}return r});var e=(0,_vue.computed)(()=>{var e=M.reactData,{minViewDate:a,maxViewDate:t,viewCellWidth:r}=I,{visibleColumn:i,todayDateMaps:o}=V,s=U.value,d=w.value.showNowLine,u=m.value.mode,e=e.nowTime;let n=0;if(d&&s&&a&&t&&e>=a.getTime()&&e<=t.getTime()){var c=o[s.type];let t=null,l=null;for(let e=0;e<i.length;e++){var f=i[e];if(f.field===c){t=f,n=e*r,l=i[e+1];break}}"progress"===u?t&&l&&(d=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(e-d)/(l.dateObj.date.getTime()-d))),n+=a*r):"center"===u?n+=r/2:"end"===u&&(n+=r-1)}return n});let G={computeScaleDateList:j,computeNowLineLeft:e},X={xID:d,props:t,context:l,reactData:I,internalData:V,getRefMaps:()=>B,getComputeMaps:()=>G},g=e=>{var t=v.value.dateFormat;return _xeUtils.default.toStringDate(e,t||null)},N=()=>{var s=M.reactData,d=s.taskScaleList,u=U.value;if(u){var d=d.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,o]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var c=n.getDay()+1,f=Math.ceil((n.getMonth()+1)/3),d=""+_xeUtils.default.getYearWeek(n,d?d.startDay:void 0);u&&q(d,t)&&(e=""+(Number(e)+1),l="01"),s.nowTime=n.getTime(),V.todayDateMaps={year:e,quarter:e+"_q"+f,month:e+"_"+l,week:e+"_W"+d,day:`${e}_${l}_${a}_E`+c,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+o}}},A=()=>{var e=M.reactData.taskScaleList,t=a.value;let h=U.value;var v=r.value,m=j.value;let g=[],l=[];if(h&&t&&m.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},o={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}};var y="week"===h.type,p=(t,l,a)=>{if(h.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 f=0;f<m.length;f++){var x=m[f];let[e,t,l,a,r,i,o,s,d,u,n,c]=_xeUtils.default.toDateString(x,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-");var _=x.getDay(),S=_+1,T=Math.ceil((x.getMonth()+1)/3),w=""+_xeUtils.default.getYearWeek(x,v?v.startDay:void 0),b=_xeUtils.default.padStart(w,2,"0"),x=(y&&q(w,l)&&(t=""+(Number(t)+1),l="1",a="0"+l),{date:x,yy:e,yyyy:t,M:l,MM:a,d:r,dd:i,H:o,HH:s,m:d,mm:u,s:n,ss:c,q:T,W:w,WW:b,E:S,e:_}),b={year:{field:t,title:t,dateObj:x},quarter:{field:t+"_q"+T,title:""+T,dateObj:x},month:{field:t+"_"+a,title:a,dateObj:x},week:{field:t+"_W"+w,title:w,dateObj:x},day:{field:`${t}_${a}_${i}_E`+S,title:""+S,dateObj:x},date:{field:`${t}_${a}_`+i,title:i,dateObj:x},hour:{field:`${t}_${a}_${i}_`+s,title:s,dateObj:x},minute:{field:`${t}_${a}_${i}_${s}_`+u,title:u,dateObj:x},second:{field:`${t}_${a}_${i}_${s}_${u}_`+c,title:c,dateObj:x}},_=b[h.type];h.level<19&&p("year",b,_),h.level<17&&p("quarter",b,_),h.level<15&&p("month",b,_),h.level<13&&p("week",b,_),h.level<11&&p("day",b,_),h.level<9&&p("date",b,_),h.level<7&&p("hour",b,_),h.level<5&&p("minute",b,_),h.level<3&&p("second",b,_),g.push(_)}e.forEach(e=>{var t;e.type===h.type?l.push({scaleItem:e,columns:g}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),l.push({scaleItem:e,columns:t}))})}return{fullCols:g,groupCols:l}},q=(e,t)=>""+e=="1"&&""+t=="12",Q=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return q(e,a+1)&&l++,{yyyy:l,W:e}},P=e=>{let i=I.minViewDate;var t=U.value,l=a.value;let d=r.value;if(t)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}}}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}}}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}}}case"week":{let s={};return e.forEach(({dateObj:e},t)=>{e=e.yyyy+"-"+e.W;s[e]=t}),(e,t)=>{var e=g(e),t=g(t),l=Q(e,d?d.startDay:void 0),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,d?d.startDay:void 0,d?d.startDay:void 0),r=Q(t,d?d.startDay:void 0),r=r.yyyy+"-"+r.W,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}}}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+(e?0: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}}}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}}}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),{offsetLeftSize:l,offsetWidthSize:a}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},J=()=>{var e=M.props.treeConfig,t=V.scrollXStore,l=V.xeTable;let o=null,s=null;if(l){let a=p.value,r=x.value,i=_.value;var{computeAggregateOpts:d,computeTreeOpts:u}=l.getComputeMaps(),n=l.reactData.isRowGroupStatus,{afterFullData:l,afterTreeFullData:c,afterGroupFullData:f}=l.internalData,d=d.value,u=u.value,h=u.transform,v=u.children||u.childrenField,m=e=>{let t=_xeUtils.default.get(e,a),l=_xeUtils.default.get(e,r);var e=_xeUtils.default.get(e,i),e=(0,_util.hasMilestoneTask)(e);t=t||l,!e&&l||(l=t),t&&(e=g(t),!o||o.getTime()>e.getTime())&&(o=e),l&&(e=g(l),!s||s.getTime()<e.getTime())&&(s=e)};n?(n=d.mapChildrenField)&&_xeUtils.default.eachTree(f,m,{children:n}):e?_xeUtils.default.eachTree(c,m,{children:h?u.mapChildrenField:v}):l.forEach(m)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),I.minViewDate=o,I.maxViewDate=s,V.startMaps={},V.endMaps={},(()=>{var e=M.props.treeConfig,{minViewDate:t,maxViewDate:l}=I,{fullCols:a,groupCols:r}=A();if(t&&l&&a.length){let c=V.xeTable;if(c){let o=p.value,s=x.value,d=_.value;var{computeAggregateOpts:t,computeTreeOpts:l}=c.getComputeMaps(),i=c.reactData.isRowGroupStatus,{afterFullData:f,afterTreeFullData:h,afterGroupFullData:v}=c.internalData,t=t.value,l=l.value,m=l.transform,g=l.children||l.childrenField;let u={},n=P(a);var y=e=>{var t=c.getRowid(e);let l=_xeUtils.default.get(e,o),a=_xeUtils.default.get(e,s);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,d)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?u[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=n(l,a),u[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,y,{children:i}):e?_xeUtils.default.eachTree(h,y,{children:m?l.mapChildrenField:g}):f.forEach(y),V.chartMaps=u}}V.visibleColumn=a,I.headerGroups=r,N(),re(),ie()})()},n=()=>{var{scrollXWidth:e,scrollYHeight:t}=I,l=V.elemStore,a=S.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=L.value,i=R.value;l&&(t=t>l.clientHeight,i&&(I.scrollbarWidth=a.width||i.offsetWidth-i.clientWidth||14),I.overflowY=t,i=e>l.clientWidth,r&&(I.scrollbarHeight=a.height||r.offsetHeight-r.clientHeight||14),I.overflowX=i)},K=(l,e)=>{let a=V.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=_.value,i=0,o=0;return _xeUtils.default.eachTree(e,e=>{var t=l.getRowid(e),e=_xeUtils.default.get(e,r);(0,_util.hasSubviewTask)(e)||(e=t?a[t]:null)&&(o=Math.max(o,e.oLeftSize+e.oWidthSize),i=i?Math.min(i,e.oLeftSize):e.oLeftSize)},{children:t}),{minSize:i,maxSize:o}},Z=()=>{let o=h.dragBarRow,s=I.viewCellWidth,{elemStore:e,chartMaps:d}=V,u=V.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&u){var l=u.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),o&&u.getRowid(o)===e||(l=(e=e?d[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?d[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=K(u,t),e.style.left=s*t+"px",e.style.width=s*(l-t)+"px"):(e.style.left=(0,_util.getTaskBarLeft)(a,s)+"px",(0,_dom.hasClass)(e,"is--milestone")||(e.style.width=(0,_util.getTaskBarWidth)(a,s)+"px")))}):(t=(t=t.children[0])?t.children[0]:null)&&(l=l?l[i]:[],{minSize:l,maxSize:a}=K(u,l),t.style.left=s*l+"px",t.style.width=s*(a-l)+"px")):(r.style.left=(0,_util.getTaskBarLeft)(e,s)+"px",(0,_dom.hasClass)(r,"is--milestone")||(r.style.width=(0,_util.getTaskBarWidth)(e,s)+"px"))))})}return(0,_vue.nextTick)()},c=()=>{var{scrollbarWidth:s,scrollbarHeight:d,headerGroups:u,tableColumn:n}=I,{elemStore:c,visibleColumn:f}=V,h=V.xeTable,v=i.value;if(v&&M){var m=S.value,g=b.value,y=D.value,p=k.value,x=H.value,_=W.value;let e=s;s=d;let t=0,l=0,a=0,r=(h&&(d=h.internalData,t=d.tBodyHeight,l=d.tHeaderHeight,a=d.tFooterHeight),"visible");(y||m.y&&!1===m.y.visible)&&(e=0,r="hidden");h=(0,_util.getRefElem)(c["main-header-scroll"]),d=(h&&(h.style.height=l+"px",h.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"])),m=(y&&(y.style.height=a+"px"),_&&(_.style.height=s+"px",_.style.visibility="visible"),C.value),h=(m&&(m.style.left=g?e+"px":"",m.style.width=v.clientWidth-e+"px"),p&&(p.style.width=g?e+"px":"",p.style.display=g&&s?"block":""),x&&(x.style.width=g?"":e+"px",x.style.display=!g&&s?"block":""),E.value),u=(h&&(h.style.width=e+"px",h.style.height=t+l+a+"px",h.style.visibility=r),z.value),y=(u&&(u.style.height=l+"px",u.style.display=l?"block":""),$.value),_=(y&&(y.style.height=t+"px",y.style.top=l+"px"),Y.value),m=(_&&(_.style.height=a+"px",_.style.top=l+t+"px",_.style.display=a?"block":""),F.value);let i=40,o=i=m?m.clientWidth||40:i;f.length&&(o=Math.max(0,i*f.length),d)&&0<(p=(v=d.clientWidth)-o)&&(i+=Math.max(0,p/f.length),o=v),I.viewCellWidth=i;x=(0,_util.getRefElem)(c["main-header-table"]),g=(0,_util.getRefElem)(c["main-body-table"]),s=i*n.length;return x&&(x.style.width=o+"px"),g&&(g.style.width=s+"px"),I.scrollXWidth=o,Promise.all([Z(),M.handleUpdateTaskLinkStyle?M.handleUpdateTaskLinkStyle(X):null])}},o=()=>{var e=i.value;return V.rceRunTime=Date.now(),e&&e.clientWidth&&M?(n(),c(),(0,_vue.nextTick)().then(()=>{var e,t=I.scrollXLoad,l=V.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=te(),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),ae().then(()=>{le()})):s()})):(0,_vue.nextTick)()},ee=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=V,a=V.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(o()):(0,_vue.nextTick)(()=>{e()}),V.rceTimeout=setTimeout(()=>{V.rceTimeout=void 0,o()},r)}),te=()=>{var e,t=I.viewCellWidth,l=V.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}},le=()=>{var e=I.isScrollXBig,t=V.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:o,visibleSize:s}=te(),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,ae())},ae=()=>(ie(),s(),(0,_vue.nextTick)()),re=()=>I.scrollXLoad=!0,ie=()=>{var e=I.scrollXLoad,{visibleColumn:t,scrollXStore:l}=V,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);I.tableColumn=e},s=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=I,{elemStore:a,scrollXStore:r}=V;var i=(0,_util.getRefElem)(a["main-body-table"]),o=r.startIndex;let s=0,d=(t&&(s=Math.max(0,o*l)),i&&(i.style.transform=`translate(${s}px, ${I.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?d+"px":"")});o=u.value,o&&(o.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),o=i?i.firstElementChild:null,o&&(o.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),o=i?i.firstElementChild:null;return o&&(o.style.width=d+"px"),I.scrollXLeft=s,I.scrollXWidth=d,n(),(0,_vue.nextTick)()},oe=()=>{le()},se=(e,t)=>{var l=V.lcsTimeout;I.lazScrollLoading=!0,l&&clearTimeout(l),V.lcsTimeout=setTimeout(()=>{V.lcsRunTime=Date.now(),V.lcsTimeout=void 0,V.intoRunScroll=!1,V.inVirtualScroll=!1,V.inWheelScroll=!1,V.inHeaderScroll=!1,V.inBodyScroll=!1,V.inFooterScroll=!1,I.lazScrollLoading=!1},200)},O=(e,t,l,a)=>{t&&(V.lastScrollLeft=a),e&&(V.lastScrollTop=l),I.lastScrollTime=Date.now(),se(t,e)},f=(u,n,c,f,h)=>{var v=V.xeTable,{lastScrollLeft:m,lastScrollTop:g}=V,y=L.value,p=R.value;if(y&&p&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:x}=v.getComputeMaps(),_=p.clientHeight,S=y.clientWidth,p=p.scrollHeight,y=y.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,o=!1,s=!1,d=!1;c&&(v=v.value,(l=h<=0)||(a=y-1<=h+S),m<h?(r="right",y-v<=h+S&&(d=!0)):(r="left",h<=v&&(s=!0))),n&&(m=x.value,(e=f<=0)||(t=p-1<=f+_),g<f?(r="bottom",p-m<=f+_&&(o=!0)):(r="top",f<=m&&(i=!0))),O(n,c,f,h);v={source:sourceType,scrollTop:f,scrollLeft:h,bodyHeight:_,bodyWidth:S,scrollHeight:p,scrollWidth:y,isX:c,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(o||i||d||s)&&M.dispatchEvent("scroll-boundary",v,u),M.dispatchEvent("scroll",v,u)}},de=e=>{var t=V.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:c,handleLazyRecalculate:ee,handleUpdateCurrentRow(e){var t,l,a=V.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=V.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}=V;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=L.value,a&&l&&(t=l.scrollLeft,V.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),f(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=I.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:o,inFooterScroll:s,lastScrollLeft:d,lastScrollTop:u}=V;i||o||s||(i=e.currentTarget,o=(0,_util.getRefElem)(r["main-header-scroll"]),s=L.value,r=R.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,V.inBodyScroll=!0,V.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),de(l)),d&&(V.inBodyScroll=!0,(0,_dom.setScrollLeft)(s,t),(0,_dom.setScrollLeft)(o,t),a)&&oe(),u&&O(u,d,i.scrollTop,t),d&&f(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=I.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=V;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,V.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&oe(),f(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=V;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,V.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),de(e),O(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return s()},handleUpdateSYSpace(){return(()=>{var e=V.elemStore,t=V.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(${I.scrollXLeft||0}px, ${d}px)`),t&&(t.style.transform=`translateY(${d}px)`),l=(0,_util.getRefElem)(e["main-body-ySpace"]),l&&(l.style.height=s?s+"px":""),a=y.value,a&&(a.style.height=s?s+"px":""),t=(0,_util.getRefElem)(e["main-chart-before-wrapper"]),l=t?t.firstElementChild:null,l&&(l.style.height=s?s+"px":""),a=(0,_util.getRefElem)(e["main-chart-after-wrapper"]),t=a?a.firstElementChild:null;return t&&(t.style.height=s?s+"px":""),I.scrollYTop=d,I.scrollYHeight=i,I.isScrollYBig=o,n(),(0,_vue.nextTick)().then(()=>{c()})})()},handleUpdateSYStatus(e){I.scrollYLoad=e}};let ue=()=>{ee()},ne=(Object.assign(X,{refreshData(){return J(),o(),(0,_vue.nextTick)().then(()=>{var e=V.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=V.xeTable;return t&&(t=t.reactData.tableData,I.tableData=t,e&&(T.currLeftSpacing=0,T.currRightSpacing=0,J()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(V.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:k,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:L,class:"vxe-gantt-view--scroll-x-handle",onScroll:X.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:u,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:H,class:"vxe-gantt-view--scroll-x-right-corner"})])),ce=()=>(0,_vue.h)("div",{ref:E,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:$,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-y-handle",onScroll:X.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:y,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),fe=()=>(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)]),he=()=>{var e=D.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ce(),fe()]:[fe(),ce()])};return(0,_vue.onMounted)(()=>{globalEvents.on(X,"resize",ue)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign(I,createReactData()),_xeUtils.default.assign(V,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(X,"keydown")}),X.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=I,r=b.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?[ne(),he()]:[he(),ne()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:F,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",X),X},render(){return this.renderVN()}});
@@ -2146,6 +2146,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2146
2146
  if ((0, _utils.isEnableConf)(menuConfig)) {
2147
2147
  evnt.stopPropagation();
2148
2148
  $xeTable.handleOpenMenuEvent(evnt, 'header', params);
2149
+ $xeTable.dispatchEvent('header-cell-menu', params, evnt);
2149
2150
  }
2150
2151
  }
2151
2152
  },
@@ -2159,6 +2160,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2159
2160
  if ((0, _utils.isEnableConf)(menuConfig)) {
2160
2161
  evnt.stopPropagation();
2161
2162
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
2163
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
2162
2164
  }
2163
2165
  }
2164
2166
  },
@@ -2172,6 +2174,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2172
2174
  if ((0, _utils.isEnableConf)(menuConfig)) {
2173
2175
  evnt.stopPropagation();
2174
2176
  $xeTable.handleOpenMenuEvent(evnt, 'footer', params);
2177
+ $xeTable.dispatchEvent('footer-cell-menu', params, evnt);
2175
2178
  }
2176
2179
  }
2177
2180
  },
@@ -2185,6 +2188,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
2185
2188
  if ((0, _utils.isEnableConf)(menuConfig)) {
2186
2189
  evnt.stopPropagation();
2187
2190
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
2191
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
2188
2192
  }
2189
2193
  }
2190
2194
  }
@@ -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"),_util=require("./util"),_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","scrollToStartRow","scrollToEndRow","scrollToRow","scrollToStartColumn","scrollToEndColumn","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,dragLinkToStore:{rowid:null,type:0}}}function createReactData(){var e;return{tableLoading:!1,proxyInited:!1,isZMax:!1,tableLinks:[],tableData:[],filterData:[],formData:{},sortData:[],footerData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(e=getConfig().pager)?void 0:e.pageSize)||10,currentPage:1},showLeftView:!0,showRightView:!0,taskScaleList:[],barTipStore:{row:null,content:"",visible:!1,params:null},dragLinkFromStore:{rowid:null,type:0},activeBarRowid:null,activeLink:null,isActiveCeLe:!1,linkList:[],upLinkFlag:0,nowTime:0,currLeftSpacing:0,currRightSpacing: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,taskNowLineConfig:Object,taskViewConfig:Object,taskLinkConfig:Object,taskBarConfig:Object,taskBarMilestoneConfig:Object,taskBarSubviewConfig:Object,taskBarTooltipConfig:Object,taskSplitConfig:Object,taskBarResizeConfig:Object,taskBarMoveConfig:Object,size:{type:String,default:()=>getConfig().gantt.size||getConfig().size}}),emits:_emits.ganttEmits,setup(B,e){let{slots:c,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(B).computeSize,V=(0,_vue.reactive)(createReactData()),I=createInternalData(),g=(0,_vue.ref)(),M=(0,_vue.ref)(),i=(0,_vue.ref)(),u=(0,_vue.ref)(),s=(0,_vue.ref)(),a=(0,_vue.ref)(),S=(0,_vue.ref)(),r=(0,_vue.ref)(),P=(0,_vue.ref)(),L=(0,_vue.ref)(),U=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),Z=(0,_vue.ref)(),K=(0,_vue.ref)(),W=(0,_vue.ref)(),d=(0,_vue.ref)(),Q=(0,_vue.ref)();var Y=e=>{let t={};return e.forEach(a=>{t[a]=(...e)=>{var t=M.value;if(t&&t[a])return t[a](...e)}}),t};let X=Y(tableComponentMethodKeys),D=(tableComponentMethodKeys.forEach(a=>{X[a]=(...e)=>{var t=M.value;if(t&&t[a])return t&&t[a](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().gantt.proxyConfig,!0),B.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,B.pagerConfig)),v=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.formConfig,B.formConfig)),z=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.toolbarConfig,B.toolbarConfig)),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.zoomConfig,B.zoomConfig)),t=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskConfig,B.taskConfig)),te=(0,_vue.computed)(()=>_xeUtils.default.merge({},getConfig().gantt.taskViewScaleConfig,B.taskViewScaleConfig)),ae=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskNowLineConfig,B.taskNowLineConfig)),m=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskViewConfig,B.taskViewConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarConfig,B.taskBarConfig));var f=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMoveConfig,B.taskBarMoveConfig)),oe=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarResizeConfig,B.taskBarResizeConfig));let re=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskSplitConfig,B.taskSplitConfig));var le=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMilestoneConfig,B.taskBarMilestoneConfig));let ne=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarSubviewConfig,B.taskBarSubviewConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarTooltipConfig,B.taskBarTooltipConfig)),ie=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskLinkConfig,B.taskLinkConfig));var se=(0,_vue.computed)(()=>{var e=ue.value;return e?e.type:"date"});let ue=(0,_vue.computed)(()=>{var e=V.taskScaleList;return _xeUtils.default.last(e)});var ge=(0,_vue.computed)(()=>{var e=V.taskScaleList;return e.find(e=>"week"===e.type)});let h=(0,_vue.computed)(()=>{var e=m.value.scales;return e});var ce=(0,_vue.computed)(()=>{var{lineType:e,lineWidth:t,lineStatus:a,lineColor:o}=ie.value;return`${e||""}_${t||""}_${a||""}_`+(o||"")});let de=(0,_vue.computed)(()=>t.value.titleField||"title");var ve=(0,_vue.computed)(()=>t.value.startField||"start"),pe=(0,_vue.computed)(()=>t.value.endField||"end"),me=(0,_vue.computed)(()=>t.value.typeField||"type"),fe=(0,_vue.computed)(()=>t.value.progressField||"progress");let b=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.scrollbarConfig,B.scrollbarConfig)),xe=(0,_vue.computed)(()=>{var e=b.value;return!(!e.x||"top"!==e.x.position)}),he=(0,_vue.computed)(()=>{var e=b.value;return!(!e.y||"left"!==e.y.position)}),be=(0,_vue.computed)(()=>{var{height:e,maxHeight:t,taskBarSubviewConfig:a}=B,{isZMax:o,tZindex:r}=V,{viewStyle:l,tableStyle:n}=m.value,i=p.value.barStyle,s=ne.value,{fontColor:u,bgColor:g,width:c}=ae.value,d={};return o?d.zIndex=r:(e&&(d.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(d.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),i&&!_xeUtils.default.isFunction(i)&&({bgColor:o,completedBgColor:r,overviewBgColor:e}=i,o&&(d["--vxe-ui-gantt-view-task-bar-background-color"]=o),r&&(d["--vxe-ui-gantt-view-task-bar-completed-background-color"]=r),e)&&(0,_utils.hasEnableConf)(a,s)&&(d["--vxe-ui-gantt-view-task-bar-overview-background-color"]=e),u&&(d["--vxe-ui-gantt-view-task-now-line-color"]=u),g&&(d["--vxe-ui-gantt-view-task-now-line-background-color"]=g),c&&(d["--vxe-ui-gantt-view-task-now-line-width"]=c),l&&(t=l.cellWidth,t)&&(d["--vxe-ui-gantt-view-default-cell-width"]=(0,_dom.toCssUnit)(t)),n&&(i=n.width,i)&&(d["--vxe-ui-gantt-view-table-default-width"]=(0,_dom.toCssUnit)(i)),d}),_e=(0,_vue.computed)(()=>{let t={},a=B;return tableComponentPropKeys.forEach(e=>{void 0!==a[e]&&(t[e]=a[e])}),t}),Ce=(0,_vue.computed)(()=>{var{showFooter:e,seqConfig:t,pagerConfig:a,editConfig:o,proxyConfig:r}=B,{isZMax:l,tablePage:n,footerData:i}=V,s=m.value.tableStyle,u=_e.value,g=D.value,c=q.value,d=Re.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=d,a)&&g.seq&&(0,_utils.isEnableConf)(c)&&(u.seqConfig=Object.assign({},t,{startIndex:(n.currentPage-1)*n.pageSize})),o&&(u.editConfig=Object.assign({},o)),u}),we=(0,_vue.computed)(()=>{var e=B.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 ye=(0,_vue.computed)(()=>q.value.currentPage),ke=(0,_vue.computed)(()=>q.value.pageSize),Ee=(0,_vue.computed)(()=>q.value.total);let Te=(0,_vue.computed)(()=>{var e=V.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),Re=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=B,a=V.tableLoading,o=D.value,r=o.showLoading;return e||a&&r&&t&&(0,_utils.isEnableConf)(o)}),Oe=(0,_vue.computed)(()=>{let e=B.border;var t=m.value.viewStyle;return!0===(e=t&&!_xeUtils.default.eqNull(t.border)?t.border:e)?"full":e||"default"}),Se={refElem:g,refTable:M,refForm:i,refToolbar:u,refPager:s,refGanttView:r,refGanttContainerElem:a,refClassifyWrapperElem:S,refPopupContainerElem:P},Pe={computeProxyOpts:D,computePagerOpts:q,computeFormOpts:v,computeToolbarOpts:z,computeZoomOpts:ee,computeTaskOpts:t,computeTaskViewScaleOpts:te,computeTaskNowLineOpts:ae,computeTaskViewOpts:m,computeTaskBarOpts:p,computeTaskBarMoveOpts:f,computeTaskBarResizeOpts:oe,computeTaskSplitOpts:re,computeTaskBarMilestoneOpts:le,computeTaskBarSubviewOpts:ne,computeTaskBarTooltipOpts:x,computeTaskLinkOpts:ie,computeTaskViewScales:h,computeScaleUnit:se,computeMinScale:ue,computeWeekScale:ge,computeTitleField:de,computeStartField:ve,computeEndField:pe,computeTypeField:me,computeProgressField:fe,computeScrollbarOpts:b,computeScrollbarXToTop:xe,computeScrollbarYToLeft:he},A=(Pe.computeTaskScaleConfs=h,{xID:k,props:B,context:e,reactData:V,internalData:I,getRefMaps:()=>Se,getComputeMaps:()=>Pe}),Le=()=>{var e=h.value;let r=te.value,l=[],n={};(e&&e.length?e:["month","date"]).forEach(e=>{var e=!e||_xeUtils.default.isString(e)?{type:e}:e,t=e.type,a=e.step,o=getViewTypeLevel(t);a&&(0,_log.errLog)("vxe.error.errProp",["step="+a,"step=1"]),t&&viewTypeLevelMaps[t]?n[t]?(0,_log.errLog)("vxe.error.repeatProp",["type",t]):(a=Object.assign({},t&&r[t]||{},e,{level:o}),n[t]=!0,l.push(a)):(0,_log.errLog)("vxe.error.errProp",["type="+t,_xeUtils.default.keys(viewTypeLevelMaps).join(",")])}),V.taskScaleList=_xeUtils.default.orderBy(l,{field:"level",order:"desc"})},Ue=()=>{var e=z.value;B.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=M.value,t=u.value;e&&t&&e.connectToolbar(t)})},H=()=>{var e=B.proxyConfig,t=V.formData,a=D.value,o=v.value;return e&&(0,_utils.isEnableConf)(a)&&a.form?t:o.data},_=e=>{var t=V.tablePage,a=B.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)))},N=(e,t)=>{var a=D.value,a=(a.response||a.props||{}).message,o=M.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)},Fe=(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()},je=e=>{var t=B.proxyConfig,a=V.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)})},Be=t=>{var e,a=M.value,o=B.proxyConfig;a&&(a=a.getComputeMaps().computeSortOpts,e=D.value,a.value.remote)&&(V.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(e)&&(V.tablePage.currentPage=1,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}))},Ve=e=>{Be(e),A.dispatchEvent("sort-change",e,e.$event)},Ie=e=>{Be(e),A.dispatchEvent("clear-all-sort",e,e.$event)},Me=t=>{var e,a=M.value,o=B.proxyConfig;a&&(a=a.getComputeMaps().computeFilterOpts,e=D.value,a.value.remote)&&(V.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(e)&&(V.tablePage.currentPage=1,I.uFoot=!0,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}),I.uFoot=!1,G())},De=e=>{Me(e),A.dispatchEvent("filter-change",e,e.$event)},$e=e=>{Me(e),A.dispatchEvent("clear-all-filter",e,e.$event)},qe=t=>{var e=B.proxyConfig,a=D.value;V.tableLoading||(e&&(0,_utils.isEnableConf)(a)&&(I.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),I.uFoot=!1,G()),A.dispatchEvent("form-submit",t,t.$event))},ze=e=>{var t=M.value,a=B.proxyConfig;let o=e.$event;var r=D.value;a&&(0,_utils.isEnableConf)(r)&&(t&&t.clearScroll(),I.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),I.uFoot=!1,G()),A.dispatchEvent("form-reset",e,o)},Ae=e=>{A.dispatchEvent("form-submit-invalid",e,e.$event)},He=e=>{var t=e.$event;A.dispatchEvent("form-toggle-collapse",e,t),A.dispatchEvent("form-collapse",e,t)},Ne=e=>{var t=V.isZMax;return(e?!t:t)&&(V.isZMax=!t,V.tZindex<(0,_utils.getLastZIndex)())&&(V.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>A.recalculate(!0)).then(()=>(setTimeout(()=>A.recalculate(!0),15),V.isZMax))},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(c[e])return c[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},Ge=e=>{let a={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?c[e]?a[t]=c[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):a[t]=e)}),a},Ze=e=>{let d=g.value;if(d){var v=a.value;if(v){let c=K.value;if(c){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=c.clientWidth,n=p.tableStyle&&_xeUtils.default.toNumber(p.tableStyle.minWidth)||80,i=o,s=-1,u=((0,_dom.addClass)(d,"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="",c.style.width=i+"px",(0,_dom.removeClass)(d,"is--split-drag");var e=M.value;e&&e.recalculate(!0)},g.style.display="block",u(e)}}}}},Ke=()=>{V.showLeftView=!V.showLeftView},We=()=>{V.showRightView=!V.showRightView},Qe={},Ye=(_tableEmits.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);Qe[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{}}),Xe=()=>{var{proxyConfig:e,formConfig:t}=B,a=V.proxyInited,o=D.value,r=v.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(r)&&o.form&&r.items&&(V.formData=Ye()),a||!(V.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>{I.uFoot=!0;var e=A.commitProxy("initial");return I.uFoot=!1,G(),e}).then(e=>{et("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},G=()=>{var e=D.value.ajax;if(e&&e.queryFooter)return A.commitProxy("queryFooter")},Je=e=>{var t=ee.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&V.isZMax&&!1!==t.escRestore&&A.triggerZoomEvent(e)},et=(e,t,a)=>{o(e,createEvent(a,{$grid:null,$gantt:A},t))};f={dispatchEvent:et,getEl(){return g.value},commitProxy(t,...v){let{showFooter:i,proxyConfig:s,toolbarConfig:e,pagerConfig:u,editRules:p,validConfig:m}=B,f=V.tablePage,x=$.value,h=J.value;var b=D.value;let _=q.value;var a=z.value;let{beforeQuery:C,afterQuery:w,beforeQueryFooter:r,afterQueryFooter:l,beforeDelete:n,afterDelete:y,beforeSave:k,afterSave:E,ajax:T={}}=b,R=b.response||b.props||{},O=M.value;if(O){let g=H(),c=null,d=null;d=_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,c=a?a.item:null,t):(c=t).code;var o,S=c?c.params:null;switch(d){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":F=d,U=$.value,P=M.value,(L=P?P.getCheckboxRecords():[]).length?(P&&P.togglePendingRow(L),A.clearCheckboxRow()):U&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:F,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Fe(d,"vxe.grid.removeSelectRecord",()=>O.removeCheckboxRow());case"import":O.importData(S);break;case"open_import":O.openImport(S);break;case"export":O.exportData(S);break;case"open_export":O.openExport(S);break;case"reset_custom":return O.resetCustom(!0);case"initial":case"reload":case"query":{var P=T.query;let n=T.querySuccess,o=T.queryError;if(P){var L="initial"===d,U="reload"===d;if(!L&&V.tableLoading)return(0,_vue.nextTick)();let e=null,a=[],r=[],t={};if(u&&((L||U)&&(f.currentPage=1),(0,_utils.isEnableConf)(_))&&(t=Object.assign({},f)),L){if(s&&(0,_utils.isEnableConf)(b)&&b.form&&(g=Ye(),V.formData=g),O){let{tableFullColumn:e,fullColumnFieldData:o}=O.internalData;var F=O.getComputeMaps().computeSortOpts;let t=F.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:d,button:c,isInited:L,isReload:U,page:t,sort:a.length?a[0]:{},sorts:a,filters:r,form:g,options:P};return V.sortData=a,V.filterData=r,V.tableLoading=!0,Promise.all([Promise.resolve((C||P)(l,...v)),e]).then(([e])=>{let t=[];var a,o,r;return V.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))&&(V.footerData=r),O?O.loadData(t):(0,_vue.nextTick)(()=>{var e=M.value;e&&e.loadData(t)}),w&&w(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(V.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 j=T.queryFooter;let a=T.queryFooterSuccess,o=T.queryFooterError;if(j){let e=[],t=(O&&(e=O.getCheckedFilters()),{$table:O,$grid:null,$gantt:A,code:d,button:c,filters:e,form:g,options:j});return Promise.resolve((r||j)(t,...v)).then(e=>(V.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));j={removeRecords:t};let a={$table:O,$grid:null,$gantt:A,code:d,button:c,body:j,form:g,options:o};if(e.length)return Fe(d,"vxe.grid.deleteSelectRecord",()=>t.length?(V.tableLoading=!0,Promise.resolve((n||o)(a,...v)).then(e=>(V.tableLoading=!1,O.setPendingRow(t,!1),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:N(e,"vxe.grid.delSuccess"),status:"success"}),y?y(a,...v):(I.uFoot=!0,A.commitProxy("query"),I.uFoot=!1,G()),r&&r(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(V.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:d,content:N(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:d,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:d,button:c,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?(V.tableLoading=!0,Promise.resolve((k||i)(n,...v)).then(e=>(V.tableLoading=!1,O.clearPendingRow(),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:N(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):(I.uFoot=!0,A.commitProxy("query"),I.uFoot=!1,G()),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(V.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:d,content:N(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:d,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.save"]);break}default:var j=commands.get(d);j&&((j=j.tableCommandMethod||j.commandMethod)?j({code:d,button:c,$table:O,$grid:null,$gantt:A},...v):(0,_log.errLog)("vxe.error.notCommands",["[grid] "+d]))}}return(0,_vue.nextTick)()},getParams(){return B.params},zoom(){return V.isZMax?A.revert():A.maximize()},isMaximized(){return V.isZMax},maximize(){return Ne(!0)},revert(){return Ne()},getFormData:H,getFormItems(e){var t=v.value,a=B.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=V.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=s.value;t&&t.homePageByEvent(e)},endPage(){var e=V.tablePage,t=Te.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=s.value;t&&t.endPageByEvent(e)},getCurrentPage(){var e=V.tablePage;return e.currentPage},setCurrentPage(e){var t=V.tablePage,a=Te.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=V.tablePage;return e.pageSize},setPageSize(e){var t=V.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=M.value;return B.proxyConfig?(e=V.sortData,{data:t?t.getFullData():[],filter:V.filterData,form:H(),sort:e.length?e[0]:{},sorts:e,pager:V.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null},refreshTaskView(){var e=r.value;return e?e.refreshData():(0,_vue.nextTick)()},hasTableViewVisible(){return V.showLeftView},showTableView(){return V.showLeftView=!0,(0,_vue.nextTick)()},hideTableView(){return(V.showLeftView=!1,_vue.nextTick)()},hasTaskViewVisible(){return V.showRightView},showTaskView(){return V.showRightView=!0,(0,_vue.nextTick)()},hideTaskView(){return(V.showRightView=!1,_vue.nextTick)()},closeTaskBarTooltip(){var e=V.barTipStore,t=d.value;return e.visible&&(Object.assign(e,{row:null,content:null,visible:!1,params:{}}),t)&&t.close&&t.close(),(0,_vue.nextTick)()},scrollToTaskView(e){var t=M.value;if(t){let o=_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e)?e:t.getRowid(e);return t.scrollToRow(e).then(()=>{var e,t,a=r.value;a&&(e=a.reactData.viewCellWidth,{chartMaps:a,elemStore:t}=a.internalData,a=o?a[o]:null)&&(t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollLeft=_xeUtils.default.floor(a.oLeftSize*e))})}return(0,_vue.nextTick)()}};let tt={extendTableMethods:Y,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=c[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var t=B.height,a=V.isZMax,o=g.value;if(o){var r=L.value,l=U.value,n=F.value,i=j.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,(V.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-tt.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let a=e.code;var o;return a?((o=["reload","delete","save"].includes(a))&&(I.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)}),I.uFoot=!1,o&&G(),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:V.isZMax?"max":"revert"},e)},handleTaskCellClickEvent(e,t){var a,o,r,l,n,i,s,u=M.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),V.isActiveCeLe=!1,V.activeBarRowid=null,V.activeLink=null,A.dispatchEvent("task-cell-click",t,e)},handleTaskCellDblclickEvent(e,t){A.dispatchEvent("task-cell-dblclick",t,e)},handleTaskBarClickEvent(e,t){var a=M.value,o=p.value.linkCreatable,r=t.row;V.isActiveCeLe=!!o,V.activeBarRowid=a?a.getRowid(r):r,V.activeLink=null,A.dispatchEvent("task-bar-click",t,e)},handleTaskBarDblclickEvent(e,t){A.dispatchEvent("task-bar-dblclick",t,e)},triggerTaskBarTooltipEvent(a,o){var{barTipStore:r,activeLink:l}=V,{dragBarRow:n,dragLineRow:i}=I;if(!n&&!i&&!l){var n=x.value,i=de.value,l=n.contentMethod,n=o.row;let e=(0,_utils.formatText)(_xeUtils.default.get(n,i)),t=(l&&(i=l(o),_xeUtils.default.eqNull(i)||(e=""+i)),l=r.row!==n,i=d.value,clearTimeout(I.barTipTimeout),l?A.closeTaskBarTooltip():i&&i.setActived&&i.setActived(!0),(0,_utils.formatText)(e));Object.assign(r,{row:n,visible:!0,content:t,params:o}),(0,_vue.nextTick)(()=>{var e=d.value;e&&(e.openByEvent?e.openByEvent(a,a.currentTarget,t):e.open&&e.open(a.currentTarget,t))})}},handleTaskBarTooltipLeaveEvent(){var e=x.value;let t=d.value;t&&t.setActived&&t.setActived(!1),e.enterable?I.barTipTimeout=setTimeout(()=>{(t=d.value)&&t.isActived&&!t.isActived()&&A.closeTaskBarTooltip()},e.leaveDelay):A.closeTaskBarTooltip()},handleTaskHeaderContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"header",t))},handleTaskBodyContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))},handleTaskFooterContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"footer",t))},handleTaskBarContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t))}},at=(Object.assign(A,X,f,tt,{loadColumn(e){var t=M.value;return _xeUtils.default.eachTree(e,e=>{var t=e.type;e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||c[e]||(0,_log.errLog)("vxe.error.notSlot",[e])}),"expand"===t&&(0,_log.errLog)("vxe.error.errProp",["type=expand","type=seq,radio,checkbox,html"])}),V.currLeftSpacing=0,V.currRightSpacing=0,t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return A.clearAll(),A.loadColumn(e)}}),()=>{var{formConfig:e,proxyConfig:a}=B,o=V.formData,r=D.value,l=v.value;if(e&&(0,_utils.isEnableConf)(l)||c.form){let e=[];if(c.form)e=c.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)||c[e]&&(t[e]=c[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:qe,onReset:ze,onSubmitInvalid:Ae,onCollapse:He}),t))}return(0,_vue.h)("div",{ref:L,key:"form",class:"vxe-gantt--form-wrapper"},e)}return renderEmptyElement(A)}),ot=()=>{var t,a,o,r,l,n=B.toolbarConfig,i=z.value,s=c.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return c.toolbar?e=c.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)},rt=()=>{var e=c.top;return e?(0,_vue.h)("div",{ref:F,key:"top",class:"vxe-gantt--top-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},lt=()=>{var e=c.left;return e?(0,_vue.h)("div",{class:"vxe-gantt--left-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},nt=()=>{var e=c.right;return e?(0,_vue.h)("div",{class:"vxe-gantt--right-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},it=()=>{var e=B.proxyConfig,t=Ce.value,a=D.value,o=Object.assign({},Qe),r=c.empty,l=c.loading,n=c.rowDragIcon||c["row-drag-icon"],i=c.columnDragIcon||c["column-drag-icon"],s=c.headerTooltip||c["header-tooltip"],u=c.tooltip,g=c.footerTooltip||c["footer-tooltip"],e=(e&&(0,_utils.isEnableConf)(a)&&(a.sort&&(o.onSortChange=Ve,o.onClearAllSort=Ie),a.filter)&&(o.onFilterChange=De,o.onClearAllFilter=$e),{});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)(E,Object.assign(Object.assign({ref:M},t),o),e)])},st=()=>c.bottom?(0,_vue.h)("div",{ref:j,key:"bottom",class:"vxe-gantt--bottom-wrapper"},c.bottom({$grid:null,$gantt:A})):renderEmptyElement(A),ut=()=>{var{proxyConfig:e,pagerConfig:t}=B,a=D.value,o=q.value,r=c.pager;return t&&(0,_utils.isEnableConf)(o)||c.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)?V.tablePage:{}),{onPageChange:je}),Ge(o.slots)):renderEmptyElement(A)]):renderEmptyElement(A)},gt=()=>(0,_vue.h)("div",{ref:W,class:"vxe-gantt--view-wrapper"},[(0,_vue.h)(_ganttView.default,{ref:r})]),ct=()=>{var{showLeftView:e,showRightView:t}=V,{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:Ke},[(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:We},[(0,_vue.h)("i",{class:t?getIcon().GANTT_VIEW_RIGHT_OPEN:getIcon().GANTT_VIEW_RIGHT_CLOSE})]):renderEmptyElement(A)]):renderEmptyElement(A)])):renderEmptyElement(A)},w=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(at());break;case"Toolbar":t.push(ot());break;case"Top":t.push(rt());break;case"Gantt":t.push((0,_vue.h)("div",{ref:a,key:"tv",class:"vxe-gantt--gantt-container"},[lt(),it(),ct(),gt(),nt(),(0,_vue.h)("div",{ref:S}),(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(st());break;case"Pager":t.push(ut());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t};let y=(0,_vue.ref)(0);return(0,_vue.watch)(()=>B.columns?B.columns.length:-1,()=>{y.value++}),(0,_vue.watch)(()=>B.columns,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>A.loadColumn(B.columns||[]))}),(0,_vue.watch)(()=>B.toolbarConfig,()=>{Ue()}),(0,_vue.watch)(ye,()=>{_("currentPage")}),(0,_vue.watch)(ke,()=>{_("pageSize")}),(0,_vue.watch)(Ee,()=>{_("total")}),(0,_vue.watch)(()=>B.proxyConfig,()=>{Xe()}),(0,_vue.watch)(h,()=>{Le(),A.refreshTaskView()}),(0,_vue.watch)(ce,()=>{A.handleUpdateTaskLinkData&&A.handleUpdateTaskLinkData()}),hooks.forEach(e=>{var e=e.setupGantt;e&&(e=e(A))&&_xeUtils.default.isObject(e)&&Object.assign(A,e)}),A.handleTaskLoadLinks&&B.links&&A.handleTaskLoadLinks(B.links),Le(),_(),(0,_vue.onMounted)(()=>{var e,t;A.handleUpdateTaskLinkData||(B.links&&(0,_log.warnLog)("vxe.error.notProp",["links"]),B.taskLinkConfig&&(0,_log.warnLog)("vxe.error.notProp",["task-link-config"])),(0,_vue.nextTick)(()=>{var e,t=B.columns,a=D.value;B.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),B.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),B.treeConfig&&B.links&&(e=M.value)&&(e=e.getComputeMaps().computeTreeOpts,e.value.transform||(0,_log.errLog)("vxe.error.notSupportProp",["links","tree-config.transform=false","tree-config.transform=true"])),a.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),B.expandConfig&&(0,_log.warnLog)("vxe.error.notProp",["expand-config"]),t&&t.length&&A.loadColumn(t),Ue(),Xe()}),e=M.value,t=r.value,e&&t&&e.handleConnectGanttView(t),globalEvents.on(A,"keydown",Je)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign(V,createReactData()),_xeUtils.default.assign(I,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(A,"keydown")}),A.renderVN=()=>{var{showLeftView:e,showRightView:t}=V,a=O.value,o=be.value,r=Re.value,l=Oe.value,n=xe.value,i=he.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":B.round,"is--maximize":V.isZMax,"is--loading":r,"show--left":e,"show--right":t}],style:o},(()=>{let a=V.barTipStore;var{headKeys:e,bodyKeys:t,footKeys:o}=we.value,r=x.value,l=c.asideLeft||c["aside-left"],n=c.asideRight||c["aside-right"];let i=c.taskBarTooltip||c["task-bar-tooltip"];return[(0,_vue.h)("div",{class:"vxe-gantt--layout-header-wrapper"},w(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"},w(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"},w(o)),(0,_vue.h)("div",{ref:P}),(0,_vue.h)("div",{},[(0,_vue.h)(R,{key:"gtp",ref:d,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"),_emits=require("./emits"),_util=require("./util"),_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","scrollToStartRow","scrollToEndRow","scrollToRow","scrollToStartColumn","scrollToEndColumn","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,dragLinkToStore:{rowid:null,type:0}}}function createReactData(){var e;return{tableLoading:!1,proxyInited:!1,isZMax:!1,tableLinks:[],tableData:[],filterData:[],formData:{},sortData:[],footerData:[],tZindex:0,tablePage:{total:0,pageSize:(null==(e=getConfig().pager)?void 0:e.pageSize)||10,currentPage:1},showLeftView:!0,showRightView:!0,taskScaleList:[],barTipStore:{row:null,content:"",visible:!1,params:null},dragLinkFromStore:{rowid:null,type:0},activeBarRowid:null,activeLink:null,isActiveCeLe:!1,linkList:[],upLinkFlag:0,nowTime:0,currLeftSpacing:0,currRightSpacing: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,taskNowLineConfig:Object,taskViewConfig:Object,taskLinkConfig:Object,taskBarConfig:Object,taskBarMilestoneConfig:Object,taskBarSubviewConfig:Object,taskBarTooltipConfig:Object,taskSplitConfig:Object,taskBarResizeConfig:Object,taskBarMoveConfig:Object,size:{type:String,default:()=>getConfig().gantt.size||getConfig().size}}),emits:_emits.ganttEmits,setup(B,e){let{slots:c,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(B).computeSize,V=(0,_vue.reactive)(createReactData()),I=createInternalData(),g=(0,_vue.ref)(),M=(0,_vue.ref)(),i=(0,_vue.ref)(),u=(0,_vue.ref)(),s=(0,_vue.ref)(),a=(0,_vue.ref)(),S=(0,_vue.ref)(),r=(0,_vue.ref)(),P=(0,_vue.ref)(),L=(0,_vue.ref)(),U=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),Z=(0,_vue.ref)(),K=(0,_vue.ref)(),W=(0,_vue.ref)(),d=(0,_vue.ref)(),Q=(0,_vue.ref)();var Y=e=>{let t={};return e.forEach(a=>{t[a]=(...e)=>{var t=M.value;if(t&&t[a])return t[a](...e)}}),t};let X=Y(tableComponentMethodKeys),D=(tableComponentMethodKeys.forEach(a=>{X[a]=(...e)=>{var t=M.value;if(t&&t[a])return t&&t[a](...e)}}),(0,_vue.computed)(()=>_xeUtils.default.merge({},_xeUtils.default.clone(getConfig().gantt.proxyConfig,!0),B.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,B.pagerConfig)),v=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.formConfig,B.formConfig)),z=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.toolbarConfig,B.toolbarConfig)),ee=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.zoomConfig,B.zoomConfig)),t=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskConfig,B.taskConfig)),te=(0,_vue.computed)(()=>_xeUtils.default.merge({},getConfig().gantt.taskViewScaleConfig,B.taskViewScaleConfig)),ae=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskNowLineConfig,B.taskNowLineConfig)),m=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskViewConfig,B.taskViewConfig)),p=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarConfig,B.taskBarConfig));var f=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMoveConfig,B.taskBarMoveConfig)),oe=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarResizeConfig,B.taskBarResizeConfig));let re=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskSplitConfig,B.taskSplitConfig));var le=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarMilestoneConfig,B.taskBarMilestoneConfig));let ne=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarSubviewConfig,B.taskBarSubviewConfig)),x=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskBarTooltipConfig,B.taskBarTooltipConfig)),ie=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.taskLinkConfig,B.taskLinkConfig));var se=(0,_vue.computed)(()=>{var e=ue.value;return e?e.type:"date"});let ue=(0,_vue.computed)(()=>{var e=V.taskScaleList;return _xeUtils.default.last(e)});var ge=(0,_vue.computed)(()=>{var e=V.taskScaleList;return e.find(e=>"week"===e.type)});let h=(0,_vue.computed)(()=>{var e=m.value.scales;return e});var ce=(0,_vue.computed)(()=>{var{lineType:e,lineWidth:t,lineStatus:a,lineColor:o}=ie.value;return`${e||""}_${t||""}_${a||""}_`+(o||"")});let de=(0,_vue.computed)(()=>t.value.titleField||"title");var ve=(0,_vue.computed)(()=>t.value.startField||"start"),pe=(0,_vue.computed)(()=>t.value.endField||"end"),me=(0,_vue.computed)(()=>t.value.typeField||"type"),fe=(0,_vue.computed)(()=>t.value.progressField||"progress");let b=(0,_vue.computed)(()=>Object.assign({},getConfig().gantt.scrollbarConfig,B.scrollbarConfig)),xe=(0,_vue.computed)(()=>{var e=b.value;return!(!e.x||"top"!==e.x.position)}),he=(0,_vue.computed)(()=>{var e=b.value;return!(!e.y||"left"!==e.y.position)}),be=(0,_vue.computed)(()=>{var{height:e,maxHeight:t,taskBarSubviewConfig:a}=B,{isZMax:o,tZindex:r}=V,{viewStyle:l,tableStyle:n}=m.value,i=p.value.barStyle,s=ne.value,{fontColor:u,bgColor:g,width:c}=ae.value,d={};return o?d.zIndex=r:(e&&(d.height="auto"===e||"100%"===e?"100%":(0,_dom.toCssUnit)(e)),t&&(d.maxHeight="auto"===t||"100%"===t?"100%":(0,_dom.toCssUnit)(t))),i&&!_xeUtils.default.isFunction(i)&&({bgColor:o,completedBgColor:r,overviewBgColor:e}=i,o&&(d["--vxe-ui-gantt-view-task-bar-background-color"]=o),r&&(d["--vxe-ui-gantt-view-task-bar-completed-background-color"]=r),e)&&(0,_utils.hasEnableConf)(a,s)&&(d["--vxe-ui-gantt-view-task-bar-overview-background-color"]=e),u&&(d["--vxe-ui-gantt-view-task-now-line-color"]=u),g&&(d["--vxe-ui-gantt-view-task-now-line-background-color"]=g),c&&(d["--vxe-ui-gantt-view-task-now-line-width"]=c),l&&(t=l.cellWidth,t)&&(d["--vxe-ui-gantt-view-default-cell-width"]=(0,_dom.toCssUnit)(t)),n&&(i=n.width,i)&&(d["--vxe-ui-gantt-view-table-default-width"]=(0,_dom.toCssUnit)(i)),d}),_e=(0,_vue.computed)(()=>{let t={},a=B;return tableComponentPropKeys.forEach(e=>{void 0!==a[e]&&(t[e]=a[e])}),t}),Ce=(0,_vue.computed)(()=>{var{showFooter:e,seqConfig:t,pagerConfig:a,editConfig:o,proxyConfig:r}=B,{isZMax:l,tablePage:n,footerData:i}=V,s=m.value.tableStyle,u=_e.value,g=D.value,c=q.value,d=Re.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=d,a)&&g.seq&&(0,_utils.isEnableConf)(c)&&(u.seqConfig=Object.assign({},t,{startIndex:(n.currentPage-1)*n.pageSize})),o&&(u.editConfig=Object.assign({},o)),u}),we=(0,_vue.computed)(()=>{var e=B.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 ye=(0,_vue.computed)(()=>q.value.currentPage),ke=(0,_vue.computed)(()=>q.value.pageSize),Ee=(0,_vue.computed)(()=>q.value.total);let Te=(0,_vue.computed)(()=>{var e=V.tablePage;return Math.max(Math.ceil(e.total/e.pageSize),1)}),Re=(0,_vue.computed)(()=>{var{loading:e,proxyConfig:t}=B,a=V.tableLoading,o=D.value,r=o.showLoading;return e||a&&r&&t&&(0,_utils.isEnableConf)(o)}),Oe=(0,_vue.computed)(()=>{let e=B.border;var t=m.value.viewStyle;return!0===(e=t&&!_xeUtils.default.eqNull(t.border)?t.border:e)?"full":e||"default"}),Se={refElem:g,refTable:M,refForm:i,refToolbar:u,refPager:s,refGanttView:r,refGanttContainerElem:a,refClassifyWrapperElem:S,refPopupContainerElem:P},Pe={computeProxyOpts:D,computePagerOpts:q,computeFormOpts:v,computeToolbarOpts:z,computeZoomOpts:ee,computeTaskOpts:t,computeTaskViewScaleOpts:te,computeTaskNowLineOpts:ae,computeTaskViewOpts:m,computeTaskBarOpts:p,computeTaskBarMoveOpts:f,computeTaskBarResizeOpts:oe,computeTaskSplitOpts:re,computeTaskBarMilestoneOpts:le,computeTaskBarSubviewOpts:ne,computeTaskBarTooltipOpts:x,computeTaskLinkOpts:ie,computeTaskViewScales:h,computeScaleUnit:se,computeMinScale:ue,computeWeekScale:ge,computeTitleField:de,computeStartField:ve,computeEndField:pe,computeTypeField:me,computeProgressField:fe,computeScrollbarOpts:b,computeScrollbarXToTop:xe,computeScrollbarYToLeft:he},A=(Pe.computeTaskScaleConfs=h,{xID:k,props:B,context:e,reactData:V,internalData:I,getRefMaps:()=>Se,getComputeMaps:()=>Pe}),Le=()=>{var e=h.value;let r=te.value,l=[],n={};(e&&e.length?e:["month","date"]).forEach(e=>{var e=!e||_xeUtils.default.isString(e)?{type:e}:e,t=e.type,a=e.step,o=getViewTypeLevel(t);a&&(0,_log.errLog)("vxe.error.errProp",["step="+a,"step=1"]),t&&viewTypeLevelMaps[t]?n[t]?(0,_log.errLog)("vxe.error.repeatProp",["type",t]):(a=Object.assign({},t&&r[t]||{},e,{level:o}),n[t]=!0,l.push(a)):(0,_log.errLog)("vxe.error.errProp",["type="+t,_xeUtils.default.keys(viewTypeLevelMaps).join(",")])}),V.taskScaleList=_xeUtils.default.orderBy(l,{field:"level",order:"desc"})},Ue=()=>{var e=z.value;B.toolbarConfig&&(0,_utils.isEnableConf)(e)&&(0,_vue.nextTick)(()=>{var e=M.value,t=u.value;e&&t&&e.connectToolbar(t)})},H=()=>{var e=B.proxyConfig,t=V.formData,a=D.value,o=v.value;return e&&(0,_utils.isEnableConf)(a)&&a.form?t:o.data},_=e=>{var t=V.tablePage,a=B.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)))},N=(e,t)=>{var a=D.value,a=(a.response||a.props||{}).message,o=M.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)},Fe=(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()},je=e=>{var t=B.proxyConfig,a=V.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)})},Be=t=>{var e,a=M.value,o=B.proxyConfig;a&&(a=a.getComputeMaps().computeSortOpts,e=D.value,a.value.remote)&&(V.sortData=t.sortList,o)&&(0,_utils.isEnableConf)(e)&&(V.tablePage.currentPage=1,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}))},Ve=e=>{Be(e),A.dispatchEvent("sort-change",e,e.$event)},Ie=e=>{Be(e),A.dispatchEvent("clear-all-sort",e,e.$event)},Me=t=>{var e,a=M.value,o=B.proxyConfig;a&&(a=a.getComputeMaps().computeFilterOpts,e=D.value,a.value.remote)&&(V.filterData=t.filterList,o)&&(0,_utils.isEnableConf)(e)&&(V.tablePage.currentPage=1,I.uFoot=!0,A.commitProxy("query").then(e=>{A.dispatchEvent("proxy-query",e,t.$event)}),I.uFoot=!1,G())},De=e=>{Me(e),A.dispatchEvent("filter-change",e,e.$event)},$e=e=>{Me(e),A.dispatchEvent("clear-all-filter",e,e.$event)},qe=t=>{var e=B.proxyConfig,a=D.value;V.tableLoading||(e&&(0,_utils.isEnableConf)(a)&&(I.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),t.$event)}),I.uFoot=!1,G()),A.dispatchEvent("form-submit",t,t.$event))},ze=e=>{var t=M.value,a=B.proxyConfig;let o=e.$event;var r=D.value;a&&(0,_utils.isEnableConf)(r)&&(t&&t.clearScroll(),I.uFoot=!0,A.commitProxy("reload").then(e=>{A.dispatchEvent("proxy-query",Object.assign(Object.assign({},e),{isReload:!0}),o)}),I.uFoot=!1,G()),A.dispatchEvent("form-reset",e,o)},Ae=e=>{A.dispatchEvent("form-submit-invalid",e,e.$event)},He=e=>{var t=e.$event;A.dispatchEvent("form-toggle-collapse",e,t),A.dispatchEvent("form-collapse",e,t)},Ne=e=>{var t=V.isZMax;return(e?!t:t)&&(V.isZMax=!t,V.tZindex<(0,_utils.getLastZIndex)())&&(V.tZindex=(0,_utils.nextZIndex)()),(0,_vue.nextTick)().then(()=>A.recalculate(!0)).then(()=>(setTimeout(()=>A.recalculate(!0),15),V.isZMax))},C=(e,t)=>{e=e[t];if(e){if(!_xeUtils.default.isString(e))return e;if(c[e])return c[e];(0,_log.errLog)("vxe.error.notSlot",[e])}return null},Ge=e=>{let a={};return _xeUtils.default.objectMap(e,(e,t)=>{e&&(_xeUtils.default.isString(e)?c[e]?a[t]=c[e]:(0,_log.errLog)("vxe.error.notSlot",[e]):a[t]=e)}),a},Ze=e=>{let d=g.value;if(d){var v=a.value;if(v){let c=K.value;if(c){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=c.clientWidth,n=p.tableStyle&&_xeUtils.default.toNumber(p.tableStyle.minWidth)||80,i=o,s=-1,u=((0,_dom.addClass)(d,"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="",c.style.width=i+"px",(0,_dom.removeClass)(d,"is--split-drag");var e=M.value;e&&e.recalculate(!0)},g.style.display="block",u(e)}}}}},Ke=()=>{V.showLeftView=!V.showLeftView},We=()=>{V.showRightView=!V.showRightView},Qe={},Ye=(_tableEmits.tableEmits.forEach(t=>{var e=_xeUtils.default.camelCase("on-"+t);Qe[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{}}),Xe=()=>{var{proxyConfig:e,formConfig:t}=B,a=V.proxyInited,o=D.value,r=v.value;e&&(0,_utils.isEnableConf)(o)&&(t&&(0,_utils.isEnableConf)(r)&&o.form&&r.items&&(V.formData=Ye()),a||!(V.proxyInited=!0)!==o.autoLoad&&(0,_vue.nextTick)().then(()=>{I.uFoot=!0;var e=A.commitProxy("initial");return I.uFoot=!1,G(),e}).then(e=>{et("proxy-query",Object.assign(Object.assign({},e),{isInited:!0}),new Event("initial"))}))},G=()=>{var e=D.value.ajax;if(e&&e.queryFooter)return A.commitProxy("queryFooter")},Je=e=>{var t=ee.value;globalEvents.hasKey(e,GLOBAL_EVENT_KEYS.ESCAPE)&&V.isZMax&&!1!==t.escRestore&&A.triggerZoomEvent(e)},et=(e,t,a)=>{o(e,createEvent(a,{$grid:null,$gantt:A},t))};f={dispatchEvent:et,getEl(){return g.value},commitProxy(t,...v){let{showFooter:i,proxyConfig:s,toolbarConfig:e,pagerConfig:u,editRules:p,validConfig:m}=B,f=V.tablePage,x=$.value,h=J.value;var b=D.value;let _=q.value;var a=z.value;let{beforeQuery:C,afterQuery:w,beforeQueryFooter:r,afterQueryFooter:l,beforeDelete:n,afterDelete:y,beforeSave:k,afterSave:E,ajax:T={}}=b,R=b.response||b.props||{},O=M.value;if(O){let g=H(),c=null,d=null;d=_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,c=a?a.item:null,t):(c=t).code;var o,S=c?c.params:null;switch(d){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":F=d,U=$.value,P=M.value,(L=P?P.getCheckboxRecords():[]).length?(P&&P.togglePendingRow(L),A.clearCheckboxRow()):U&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:F,content:getI18n("vxe.grid.selectOneRecord"),status:"warning"});break;case"remove":return Fe(d,"vxe.grid.removeSelectRecord",()=>O.removeCheckboxRow());case"import":O.importData(S);break;case"open_import":O.openImport(S);break;case"export":O.exportData(S);break;case"open_export":O.openExport(S);break;case"reset_custom":return O.resetCustom(!0);case"initial":case"reload":case"query":{var P=T.query;let n=T.querySuccess,o=T.queryError;if(P){var L="initial"===d,U="reload"===d;if(!L&&V.tableLoading)return(0,_vue.nextTick)();let e=null,a=[],r=[],t={};if(u&&((L||U)&&(f.currentPage=1),(0,_utils.isEnableConf)(_))&&(t=Object.assign({},f)),L){if(s&&(0,_utils.isEnableConf)(b)&&b.form&&(g=Ye(),V.formData=g),O){let{tableFullColumn:e,fullColumnFieldData:o}=O.internalData;var F=O.getComputeMaps().computeSortOpts;let t=F.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:d,button:c,isInited:L,isReload:U,page:t,sort:a.length?a[0]:{},sorts:a,filters:r,form:g,options:P};return V.sortData=a,V.filterData=r,V.tableLoading=!0,Promise.all([Promise.resolve((C||P)(l,...v)),e]).then(([e])=>{let t=[];var a,o,r;return V.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))&&(V.footerData=r),O?O.loadData(t):(0,_vue.nextTick)(()=>{var e=M.value;e&&e.loadData(t)}),w&&w(l,...v),n&&n(Object.assign(Object.assign({},l),{response:e})),{status:!0}}).catch(e=>(V.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 j=T.queryFooter;let a=T.queryFooterSuccess,o=T.queryFooterError;if(j){let e=[],t=(O&&(e=O.getCheckedFilters()),{$table:O,$grid:null,$gantt:A,code:d,button:c,filters:e,form:g,options:j});return Promise.resolve((r||j)(t,...v)).then(e=>(V.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));j={removeRecords:t};let a={$table:O,$grid:null,$gantt:A,code:d,button:c,body:j,form:g,options:o};if(e.length)return Fe(d,"vxe.grid.deleteSelectRecord",()=>t.length?(V.tableLoading=!0,Promise.resolve((n||o)(a,...v)).then(e=>(V.tableLoading=!1,O.setPendingRow(t,!1),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:N(e,"vxe.grid.delSuccess"),status:"success"}),y?y(a,...v):(I.uFoot=!0,A.commitProxy("query"),I.uFoot=!1,G()),r&&r(Object.assign(Object.assign({},a),{response:e})),{status:!0})).catch(e=>(V.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:d,content:N(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:d,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:d,button:c,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?(V.tableLoading=!0,Promise.resolve((k||i)(n,...v)).then(e=>(V.tableLoading=!1,O.clearPendingRow(),h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({content:N(e,"vxe.grid.saveSuccess"),status:"success"}),E?E(n,...v):(I.uFoot=!0,A.commitProxy("query"),I.uFoot=!1,G()),s&&s(Object.assign(Object.assign({},n),{response:e})),{status:!0})).catch(e=>(V.tableLoading=!1,h&&_core.VxeUI.modal&&_core.VxeUI.modal.message({id:d,content:N(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:d,content:getI18n("vxe.grid.dataUnchanged"),status:"info"}))})}(0,_log.errLog)("vxe.error.notFunc",["[gantt] proxy-config.ajax.save"]);break}default:var j=commands.get(d);j&&((j=j.tableCommandMethod||j.commandMethod)?j({code:d,button:c,$table:O,$grid:null,$gantt:A},...v):(0,_log.errLog)("vxe.error.notCommands",["[grid] "+d]))}}return(0,_vue.nextTick)()},getParams(){return B.params},zoom(){return V.isZMax?A.revert():A.maximize()},isMaximized(){return V.isZMax},maximize(){return Ne(!0)},revert(){return Ne()},getFormData:H,getFormItems(e){var t=v.value,a=B.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=V.tablePage;return e.currentPage=1,(0,_vue.nextTick)()},homePageByEvent(e){var t=s.value;t&&t.homePageByEvent(e)},endPage(){var e=V.tablePage,t=Te.value;return e.currentPage=t,(0,_vue.nextTick)()},endPageByEvent(e){var t=s.value;t&&t.endPageByEvent(e)},getCurrentPage(){var e=V.tablePage;return e.currentPage},setCurrentPage(e){var t=V.tablePage,a=Te.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=V.tablePage;return e.pageSize},setPageSize(e){var t=V.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=M.value;return B.proxyConfig?(e=V.sortData,{data:t?t.getFullData():[],filter:V.filterData,form:H(),sort:e.length?e[0]:{},sorts:e,pager:V.tablePage,pendingRecords:t?t.getPendingRecords():[]}):null},refreshTaskView(){var e=r.value;return e?e.refreshData():(0,_vue.nextTick)()},hasTableViewVisible(){return V.showLeftView},showTableView(){return V.showLeftView=!0,(0,_vue.nextTick)()},hideTableView(){return(V.showLeftView=!1,_vue.nextTick)()},hasTaskViewVisible(){return V.showRightView},showTaskView(){return V.showRightView=!0,(0,_vue.nextTick)()},hideTaskView(){return(V.showRightView=!1,_vue.nextTick)()},closeTaskBarTooltip(){var e=V.barTipStore,t=d.value;return e.visible&&(Object.assign(e,{row:null,content:null,visible:!1,params:{}}),t)&&t.close&&t.close(),(0,_vue.nextTick)()},scrollToTaskView(e){var t=M.value;if(t){let o=_xeUtils.default.isString(e)||_xeUtils.default.isNumber(e)?e:t.getRowid(e);return t.scrollToRow(e).then(()=>{var e,t,a=r.value;a&&(e=a.reactData.viewCellWidth,{chartMaps:a,elemStore:t}=a.internalData,a=o?a[o]:null)&&(t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollLeft=_xeUtils.default.floor(a.oLeftSize*e))})}return(0,_vue.nextTick)()}};let tt={extendTableMethods:Y,callSlot(e,t){return e&&(_xeUtils.default.isString(e)&&(e=c[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[]},getExcludeHeight(){var t=B.height,a=V.isZMax,o=g.value;if(o){var r=L.value,l=U.value,n=F.value,i=j.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,(V.isZMax?(0,_dom.getDomNode)().visibleHeight:e?_xeUtils.default.toNumber(getComputedStyle(e).height):0)-tt.getExcludeHeight()):0},triggerToolbarCommitEvent(e,t){let a=e.code;var o;return a?((o=["reload","delete","save"].includes(a))&&(I.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)}),I.uFoot=!1,o&&G(),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:V.isZMax?"max":"revert"},e)},handleTaskCellClickEvent(e,t){var a,o,r,l,n,i,s,u=M.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),V.isActiveCeLe=!1,V.activeBarRowid=null,V.activeLink=null,A.dispatchEvent("task-cell-click",t,e)},handleTaskCellDblclickEvent(e,t){A.dispatchEvent("task-cell-dblclick",t,e)},handleTaskBarClickEvent(e,t){var a=M.value,o=p.value.linkCreatable,r=t.row;V.isActiveCeLe=!!o,V.activeBarRowid=a?a.getRowid(r):r,V.activeLink=null,A.dispatchEvent("task-bar-click",t,e)},handleTaskBarDblclickEvent(e,t){A.dispatchEvent("task-bar-dblclick",t,e)},triggerTaskBarTooltipEvent(a,o){var{barTipStore:r,activeLink:l}=V,{dragBarRow:n,dragLineRow:i}=I;if(!n&&!i&&!l){var n=x.value,i=de.value,l=n.contentMethod,n=o.row;let e=(0,_utils.formatText)(_xeUtils.default.get(n,i)),t=(l&&(i=l(o),_xeUtils.default.eqNull(i)||(e=""+i)),l=r.row!==n,i=d.value,clearTimeout(I.barTipTimeout),l?A.closeTaskBarTooltip():i&&i.setActived&&i.setActived(!0),(0,_utils.formatText)(e));Object.assign(r,{row:n,visible:!0,content:t,params:o}),(0,_vue.nextTick)(()=>{var e=d.value;e&&(e.openByEvent?e.openByEvent(a,a.currentTarget,t):e.open&&e.open(a.currentTarget,t))})}},handleTaskBarTooltipLeaveEvent(){var e=x.value;let t=d.value;t&&t.setActived&&t.setActived(!1),e.enterable?I.barTipTimeout=setTimeout(()=>{(t=d.value)&&t.isActived&&!t.isActived()&&A.closeTaskBarTooltip()},e.leaveDelay):A.closeTaskBarTooltip()},handleTaskHeaderContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"header",t),o.dispatchEvent("header-cell-menu",t,e))},handleTaskBodyContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t),o.dispatchEvent("cell-menu",t,e))},handleTaskFooterContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"footer",t),o.dispatchEvent("footer-cell-menu",t,e))},handleTaskBarContextmenuEvent(e,t){var a,o=M.value;o&&(a=o.props.menuConfig,(0,_utils.isEnableConf)(a))&&(e.stopPropagation(),o.handleOpenMenuEvent(e,"body",t),o.dispatchEvent("cell-menu",t,e))}},at=(Object.assign(A,X,f,tt,{loadColumn(e){var t=M.value;return _xeUtils.default.eachTree(e,e=>{var t=e.type;e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||c[e]||(0,_log.errLog)("vxe.error.notSlot",[e])}),"expand"===t&&(0,_log.errLog)("vxe.error.errProp",["type=expand","type=seq,radio,checkbox,html"])}),V.currLeftSpacing=0,V.currRightSpacing=0,t?t.loadColumn(e):(0,_vue.nextTick)()},reloadColumn(e){return A.clearAll(),A.loadColumn(e)}}),()=>{var{formConfig:e,proxyConfig:a}=B,o=V.formData,r=D.value,l=v.value;if(e&&(0,_utils.isEnableConf)(l)||c.form){let e=[];if(c.form)e=c.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)||c[e]&&(t[e]=c[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:qe,onReset:ze,onSubmitInvalid:Ae,onCollapse:He}),t))}return(0,_vue.h)("div",{ref:L,key:"form",class:"vxe-gantt--form-wrapper"},e)}return renderEmptyElement(A)}),ot=()=>{var t,a,o,r,l,n=B.toolbarConfig,i=z.value,s=c.toolbar;if(n&&(0,_utils.isEnableConf)(i)||s){let e=[];return c.toolbar?e=c.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)},rt=()=>{var e=c.top;return e?(0,_vue.h)("div",{ref:F,key:"top",class:"vxe-gantt--top-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},lt=()=>{var e=c.left;return e?(0,_vue.h)("div",{class:"vxe-gantt--left-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},nt=()=>{var e=c.right;return e?(0,_vue.h)("div",{class:"vxe-gantt--right-wrapper"},e({$grid:null,$gantt:A})):renderEmptyElement(A)},it=()=>{var e=B.proxyConfig,t=Ce.value,a=D.value,o=Object.assign({},Qe),r=c.empty,l=c.loading,n=c.rowDragIcon||c["row-drag-icon"],i=c.columnDragIcon||c["column-drag-icon"],s=c.headerTooltip||c["header-tooltip"],u=c.tooltip,g=c.footerTooltip||c["footer-tooltip"],e=(e&&(0,_utils.isEnableConf)(a)&&(a.sort&&(o.onSortChange=Ve,o.onClearAllSort=Ie),a.filter)&&(o.onFilterChange=De,o.onClearAllFilter=$e),{});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)(E,Object.assign(Object.assign({ref:M},t),o),e)])},st=()=>c.bottom?(0,_vue.h)("div",{ref:j,key:"bottom",class:"vxe-gantt--bottom-wrapper"},c.bottom({$grid:null,$gantt:A})):renderEmptyElement(A),ut=()=>{var{proxyConfig:e,pagerConfig:t}=B,a=D.value,o=q.value,r=c.pager;return t&&(0,_utils.isEnableConf)(o)||c.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)?V.tablePage:{}),{onPageChange:je}),Ge(o.slots)):renderEmptyElement(A)]):renderEmptyElement(A)},gt=()=>(0,_vue.h)("div",{ref:W,class:"vxe-gantt--view-wrapper"},[(0,_vue.h)(_ganttView.default,{ref:r})]),ct=()=>{var{showLeftView:e,showRightView:t}=V,{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:Ke},[(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:We},[(0,_vue.h)("i",{class:t?getIcon().GANTT_VIEW_RIGHT_OPEN:getIcon().GANTT_VIEW_RIGHT_CLOSE})]):renderEmptyElement(A)]):renderEmptyElement(A)])):renderEmptyElement(A)},w=e=>{let t=[];return e.forEach(e=>{switch(e){case"Form":t.push(at());break;case"Toolbar":t.push(ot());break;case"Top":t.push(rt());break;case"Gantt":t.push((0,_vue.h)("div",{ref:a,key:"tv",class:"vxe-gantt--gantt-container"},[lt(),it(),ct(),gt(),nt(),(0,_vue.h)("div",{ref:S}),(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(st());break;case"Pager":t.push(ut());break;default:(0,_log.errLog)("vxe.error.notProp",["layouts -> "+e])}}),t};let y=(0,_vue.ref)(0);return(0,_vue.watch)(()=>B.columns?B.columns.length:-1,()=>{y.value++}),(0,_vue.watch)(()=>B.columns,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>A.loadColumn(B.columns||[]))}),(0,_vue.watch)(()=>B.toolbarConfig,()=>{Ue()}),(0,_vue.watch)(ye,()=>{_("currentPage")}),(0,_vue.watch)(ke,()=>{_("pageSize")}),(0,_vue.watch)(Ee,()=>{_("total")}),(0,_vue.watch)(()=>B.proxyConfig,()=>{Xe()}),(0,_vue.watch)(h,()=>{Le(),A.refreshTaskView()}),(0,_vue.watch)(ce,()=>{A.handleUpdateTaskLinkData&&A.handleUpdateTaskLinkData()}),hooks.forEach(e=>{var e=e.setupGantt;e&&(e=e(A))&&_xeUtils.default.isObject(e)&&Object.assign(A,e)}),A.handleTaskLoadLinks&&B.links&&A.handleTaskLoadLinks(B.links),Le(),_(),(0,_vue.onMounted)(()=>{var e,t;A.handleUpdateTaskLinkData||(B.links&&(0,_log.warnLog)("vxe.error.notProp",["links"]),B.taskLinkConfig&&(0,_log.warnLog)("vxe.error.notProp",["task-link-config"])),(0,_vue.nextTick)(()=>{var e,t=B.columns,a=D.value;B.formConfig&&!n&&(0,_log.errLog)("vxe.error.reqComp",["vxe-form"]),B.pagerConfig&&!l&&(0,_log.errLog)("vxe.error.reqComp",["vxe-pager"]),B.treeConfig&&B.links&&(e=M.value)&&(e=e.getComputeMaps().computeTreeOpts,e.value.transform||(0,_log.errLog)("vxe.error.notSupportProp",["links","tree-config.transform=false","tree-config.transform=true"])),a.props&&(0,_log.warnLog)("vxe.error.delProp",["proxy-config.props","proxy-config.response"]),B.expandConfig&&(0,_log.warnLog)("vxe.error.notProp",["expand-config"]),t&&t.length&&A.loadColumn(t),Ue(),Xe()}),e=M.value,t=r.value,e&&t&&e.handleConnectGanttView(t),globalEvents.on(A,"keydown",Je)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign(V,createReactData()),_xeUtils.default.assign(I,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(A,"keydown")}),A.renderVN=()=>{var{showLeftView:e,showRightView:t}=V,a=O.value,o=be.value,r=Re.value,l=Oe.value,n=xe.value,i=he.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":B.round,"is--maximize":V.isZMax,"is--loading":r,"show--left":e,"show--right":t}],style:o},(()=>{let a=V.barTipStore;var{headKeys:e,bodyKeys:t,footKeys:o}=we.value,r=x.value,l=c.asideLeft||c["aside-left"],n=c.asideRight||c["aside-right"];let i=c.taskBarTooltip||c["task-bar-tooltip"];return[(0,_vue.h)("div",{class:"vxe-gantt--layout-header-wrapper"},w(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"},w(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"},w(o)),(0,_vue.h)("div",{ref:P}),(0,_vue.h)("div",{},[(0,_vue.h)(R,{key:"gtp",ref:d,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()}});
package/lib/index.umd.js CHANGED
@@ -2856,7 +2856,7 @@ const {
2856
2856
  setConfig,
2857
2857
  setIcon
2858
2858
  } = core_.VxeUI;
2859
- core_.VxeUI.ganttVersion = "4.3.19";
2859
+ core_.VxeUI.ganttVersion = "4.3.21";
2860
2860
  const ymdFormat = 'yyyy-MM-dd';
2861
2861
  const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
2862
2862
  setConfig({
@@ -2969,7 +2969,7 @@ setIcon({
2969
2969
  const {
2970
2970
  log
2971
2971
  } = core_.VxeUI;
2972
- const version = `gantt v${"4.3.19"}`;
2972
+ const version = `gantt v${"4.3.21"}`;
2973
2973
  const warnLog = log.create('warn', version);
2974
2974
  const errLog = log.create('error', version);
2975
2975
  ;// ./packages/ui/src/depend.ts
@@ -4759,10 +4759,10 @@ const maxYHeight = 5e6;
4759
4759
  const {
4760
4760
  minViewDate,
4761
4761
  maxViewDate,
4762
- viewCellWidth,
4763
- tableColumn
4762
+ viewCellWidth
4764
4763
  } = reactData;
4765
4764
  const {
4765
+ visibleColumn,
4766
4766
  todayDateMaps
4767
4767
  } = internalData;
4768
4768
  const minScale = computeMinScale.value;
@@ -4783,12 +4783,12 @@ const maxYHeight = 5e6;
4783
4783
  const todayValue = todayDateMaps[minScale.type];
4784
4784
  let currCol = null;
4785
4785
  let nextCol = null;
4786
- for (let i = 0; i < tableColumn.length; i++) {
4787
- const column = tableColumn[i];
4786
+ for (let i = 0; i < visibleColumn.length; i++) {
4787
+ const column = visibleColumn[i];
4788
4788
  if (column.field === todayValue) {
4789
- currCol = tableColumn[i];
4789
+ currCol = column;
4790
4790
  nlLeft = i * viewCellWidth;
4791
- nextCol = tableColumn[i + 1];
4791
+ nextCol = visibleColumn[i + 1];
4792
4792
  break;
4793
4793
  }
4794
4794
  }
@@ -8652,6 +8652,7 @@ function getViewTypeLevel(type) {
8652
8652
  if (isEnableConf(menuConfig)) {
8653
8653
  evnt.stopPropagation();
8654
8654
  $xeTable.handleOpenMenuEvent(evnt, 'header', params);
8655
+ $xeTable.dispatchEvent('header-cell-menu', params, evnt);
8655
8656
  }
8656
8657
  }
8657
8658
  },
@@ -8665,6 +8666,7 @@ function getViewTypeLevel(type) {
8665
8666
  if (isEnableConf(menuConfig)) {
8666
8667
  evnt.stopPropagation();
8667
8668
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
8669
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
8668
8670
  }
8669
8671
  }
8670
8672
  },
@@ -8678,6 +8680,7 @@ function getViewTypeLevel(type) {
8678
8680
  if (isEnableConf(menuConfig)) {
8679
8681
  evnt.stopPropagation();
8680
8682
  $xeTable.handleOpenMenuEvent(evnt, 'footer', params);
8683
+ $xeTable.dispatchEvent('footer-cell-menu', params, evnt);
8681
8684
  }
8682
8685
  }
8683
8686
  },
@@ -8691,6 +8694,7 @@ function getViewTypeLevel(type) {
8691
8694
  if (isEnableConf(menuConfig)) {
8692
8695
  evnt.stopPropagation();
8693
8696
  $xeTable.handleOpenMenuEvent(evnt, 'body', params);
8697
+ $xeTable.dispatchEvent('cell-menu', params, evnt);
8694
8698
  }
8695
8699
  }
8696
8700
  }