@lee576/vue3-gantt 1.0.8 → 1.1.0

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.
@@ -0,0 +1,2 @@
1
+ (function(){"use strict";function B(p){return p&&p.__esModule&&Object.prototype.hasOwnProperty.call(p,"default")?p.default:p}var G={exports:{}},lt=G.exports,ut;function mt(){return ut||(ut=1,function(p,h){(function(s,o){p.exports=o()})(lt,function(){var s=1e3,o=6e4,f=36e5,i="millisecond",n="second",$="minute",M="hour",c="day",l="week",O="month",L="quarter",W="year",E="date",J="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,k={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(u){var e=["th","st","nd","rd"],t=u%100;return"["+u+(e[(t-20)%10]||e[t]||e[0])+"]"}},S=function(u,e,t){var a=String(u);return!a||a.length>=e?u:""+Array(e+1-a.length).join(t)+u},R={s:S,z:function(u){var e=-u.utcOffset(),t=Math.abs(e),a=Math.floor(t/60),r=t%60;return(e<=0?"+":"-")+S(a,2,"0")+":"+S(r,2,"0")},m:function u(e,t){if(e.date()<t.date())return-u(t,e);var a=12*(t.year()-e.year())+(t.month()-e.month()),r=e.clone().add(a,O),d=t-r<0,m=e.clone().add(a+(d?-1:1),O);return+(-(a+(t-r)/(d?r-m:m-r))||0)},a:function(u){return u<0?Math.ceil(u)||0:Math.floor(u)},p:function(u){return{M:O,y:W,w:l,d:c,D:E,h:M,m:$,s:n,ms:i,Q:L}[u]||String(u||"").toLowerCase().replace(/s$/,"")},u:function(u){return u===void 0}},P="en",I={};I[P]=k;var U="$isDayjsObject",j=function(u){return u instanceof H||!(!u||!u[U])},A=function u(e,t,a){var r;if(!e)return P;if(typeof e=="string"){var d=e.toLowerCase();I[d]&&(r=d),t&&(I[d]=t,r=d);var m=e.split("-");if(!r&&m.length>1)return u(m[0])}else{var v=e.name;I[v]=e,r=v}return!a&&r&&(P=r),r||!a&&P},Y=function(u,e){if(j(u))return u.clone();var t=typeof e=="object"?e:{};return t.date=u,t.args=arguments,new H(t)},D=R;D.l=A,D.i=j,D.w=function(u,e){return Y(u,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var H=function(){function u(t){this.$L=A(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[U]=!0}var e=u.prototype;return e.parse=function(t){this.$d=function(a){var r=a.date,d=a.utc;if(r===null)return new Date(NaN);if(D.u(r))return new Date;if(r instanceof Date)return new Date(r);if(typeof r=="string"&&!/Z$/i.test(r)){var m=r.match(y);if(m){var v=m[2]-1||0,x=(m[7]||"0").substring(0,3);return d?new Date(Date.UTC(m[1],v,m[3]||1,m[4]||0,m[5]||0,m[6]||0,x)):new Date(m[1],v,m[3]||1,m[4]||0,m[5]||0,m[6]||0,x)}}return new Date(r)}(t),this.init()},e.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},e.$utils=function(){return D},e.isValid=function(){return this.$d.toString()!==J},e.isSame=function(t,a){var r=Y(t);return this.startOf(a)<=r&&r<=this.endOf(a)},e.isAfter=function(t,a){return Y(t)<this.startOf(a)},e.isBefore=function(t,a){return this.endOf(a)<Y(t)},e.$g=function(t,a,r){return D.u(t)?this[a]:this.set(r,t)},e.unix=function(){return Math.floor(this.valueOf()/1e3)},e.valueOf=function(){return this.$d.getTime()},e.startOf=function(t,a){var r=this,d=!!D.u(a)||a,m=D.p(t),v=function(Z,C){var Q=D.w(r.$u?Date.UTC(r.$y,C,Z):new Date(r.$y,C,Z),r);return d?Q:Q.endOf(c)},x=function(Z,C){return D.w(r.toDate()[Z].apply(r.toDate("s"),(d?[0,0,0,0]:[23,59,59,999]).slice(C)),r)},b=this.$W,_=this.$M,q=this.$D,z="set"+(this.$u?"UTC":"");switch(m){case W:return d?v(1,0):v(31,11);case O:return d?v(1,_):v(0,_+1);case l:var N=this.$locale().weekStart||0,V=(b<N?b+7:b)-N;return v(d?q-V:q+(6-V),_);case c:case E:return x(z+"Hours",0);case M:return x(z+"Minutes",1);case $:return x(z+"Seconds",2);case n:return x(z+"Milliseconds",3);default:return this.clone()}},e.endOf=function(t){return this.startOf(t,!1)},e.$set=function(t,a){var r,d=D.p(t),m="set"+(this.$u?"UTC":""),v=(r={},r[c]=m+"Date",r[E]=m+"Date",r[O]=m+"Month",r[W]=m+"FullYear",r[M]=m+"Hours",r[$]=m+"Minutes",r[n]=m+"Seconds",r[i]=m+"Milliseconds",r)[d],x=d===c?this.$D+(a-this.$W):a;if(d===O||d===W){var b=this.clone().set(E,1);b.$d[v](x),b.init(),this.$d=b.set(E,Math.min(this.$D,b.daysInMonth())).$d}else v&&this.$d[v](x);return this.init(),this},e.set=function(t,a){return this.clone().$set(t,a)},e.get=function(t){return this[D.p(t)]()},e.add=function(t,a){var r,d=this;t=Number(t);var m=D.p(a),v=function(_){var q=Y(d);return D.w(q.date(q.date()+Math.round(_*t)),d)};if(m===O)return this.set(O,this.$M+t);if(m===W)return this.set(W,this.$y+t);if(m===c)return v(1);if(m===l)return v(7);var x=(r={},r[$]=o,r[M]=f,r[n]=s,r)[m]||1,b=this.$d.getTime()+t*x;return D.w(b,this)},e.subtract=function(t,a){return this.add(-1*t,a)},e.format=function(t){var a=this,r=this.$locale();if(!this.isValid())return r.invalidDate||J;var d=t||"YYYY-MM-DDTHH:mm:ssZ",m=D.z(this),v=this.$H,x=this.$m,b=this.$M,_=r.weekdays,q=r.months,z=r.meridiem,N=function(C,Q,X,F){return C&&(C[Q]||C(a,d))||X[Q].slice(0,F)},V=function(C){return D.s(v%12||12,C,"0")},Z=z||function(C,Q,X){var F=C<12?"AM":"PM";return X?F.toLowerCase():F};return d.replace(g,function(C,Q){return Q||function(X){switch(X){case"YY":return String(a.$y).slice(-2);case"YYYY":return D.s(a.$y,4,"0");case"M":return b+1;case"MM":return D.s(b+1,2,"0");case"MMM":return N(r.monthsShort,b,q,3);case"MMMM":return N(q,b);case"D":return a.$D;case"DD":return D.s(a.$D,2,"0");case"d":return String(a.$W);case"dd":return N(r.weekdaysMin,a.$W,_,2);case"ddd":return N(r.weekdaysShort,a.$W,_,3);case"dddd":return _[a.$W];case"H":return String(v);case"HH":return D.s(v,2,"0");case"h":return V(1);case"hh":return V(2);case"a":return Z(v,x,!0);case"A":return Z(v,x,!1);case"m":return String(x);case"mm":return D.s(x,2,"0");case"s":return String(a.$s);case"ss":return D.s(a.$s,2,"0");case"SSS":return D.s(a.$ms,3,"0");case"Z":return m}return null}(C)||m.replace(":","")})},e.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},e.diff=function(t,a,r){var d,m=this,v=D.p(a),x=Y(t),b=(x.utcOffset()-this.utcOffset())*o,_=this-x,q=function(){return D.m(m,x)};switch(v){case W:d=q()/12;break;case O:d=q();break;case L:d=q()/3;break;case l:d=(_-b)/6048e5;break;case c:d=(_-b)/864e5;break;case M:d=_/f;break;case $:d=_/o;break;case n:d=_/s;break;default:d=_}return r?d:D.a(d)},e.daysInMonth=function(){return this.endOf(O).$D},e.$locale=function(){return I[this.$L]},e.locale=function(t,a){if(!t)return this.$L;var r=this.clone(),d=A(t,a,!0);return d&&(r.$L=d),r},e.clone=function(){return D.w(this.$d,this)},e.toDate=function(){return new Date(this.valueOf())},e.toJSON=function(){return this.isValid()?this.toISOString():null},e.toISOString=function(){return this.$d.toISOString()},e.toString=function(){return this.$d.toUTCString()},u}(),T=H.prototype;return Y.prototype=T,[["$ms",i],["$s",n],["$m",$],["$H",M],["$W",c],["$M",O],["$y",W],["$D",E]].forEach(function(u){T[u[1]]=function(e){return this.$g(e,u[0],u[1])}}),Y.extend=function(u,e){return u.$i||(u(e,H,Y),u.$i=!0),Y},Y.locale=A,Y.isDayjs=j,Y.unix=function(u){return Y(1e3*u)},Y.en=I[P],Y.Ls=I,Y.p={},Y})}(G)),G.exports}var $t=mt(),w=B($t),K={exports:{}},yt=K.exports,ct;function pt(){return ct||(ct=1,function(p,h){(function(s,o){p.exports=o()})(yt,function(){var s="day";return function(o,f,i){var n=function(c){return c.add(4-c.isoWeekday(),s)},$=f.prototype;$.isoWeekYear=function(){return n(this).year()},$.isoWeek=function(c){if(!this.$utils().u(c))return this.add(7*(c-this.isoWeek()),s);var l,O,L,W,E=n(this),J=(l=this.isoWeekYear(),O=this.$u,L=(O?i.utc:i)().year(l).startOf("year"),W=4-L.isoWeekday(),L.isoWeekday()>4&&(W+=7),L.add(W,s));return E.diff(J,"week")+1},$.isoWeekday=function(c){return this.$utils().u(c)?this.day()||7:this.day(this.day()%7?c:c-7)};var M=$.startOf;$.startOf=function(c,l){var O=this.$utils(),L=!!O.u(l)||l;return O.p(c)==="isoweek"?L?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):M.bind(this)(c,l)}}})}(K)),K.exports}var Mt=pt(),vt=B(Mt),tt={exports:{}},Dt=tt.exports,ft;function wt(){return ft||(ft=1,function(p,h){(function(s,o){p.exports=o()})(Dt,function(){var s="month",o="quarter";return function(f,i){var n=i.prototype;n.quarter=function(c){return this.$utils().u(c)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(c-1))};var $=n.add;n.add=function(c,l){return c=Number(c),this.$utils().p(l)===o?this.add(3*c,s):$.bind(this)(c,l)};var M=n.startOf;n.startOf=function(c,l){var O=this.$utils(),L=!!O.u(l)||l;if(O.p(c)===o){var W=this.quarter()-1;return L?this.month(3*W).startOf(s).startOf("day"):this.month(3*W+2).endOf(s).endOf("day")}return M.bind(this)(c,l)}}})}(tt)),tt.exports}var gt=wt(),Ot=B(gt),et={exports:{}},Yt=et.exports,dt;function St(){return dt||(dt=1,function(p,h){(function(s,o){p.exports=o()})(Yt,function(){var s={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},o=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,f=/\d/,i=/\d\d/,n=/\d\d?/,$=/\d*[^-_:/,()\s\d]+/,M={},c=function(y){return(y=+y)+(y>68?1900:2e3)},l=function(y){return function(g){this[y]=+g}},O=[/[+-]\d\d:?(\d\d)?|Z/,function(y){(this.zone||(this.zone={})).offset=function(g){if(!g||g==="Z")return 0;var k=g.match(/([+-]|\d\d)/g),S=60*k[1]+(+k[2]||0);return S===0?0:k[0]==="+"?-S:S}(y)}],L=function(y){var g=M[y];return g&&(g.indexOf?g:g.s.concat(g.f))},W=function(y,g){var k,S=M.meridiem;if(S){for(var R=1;R<=24;R+=1)if(y.indexOf(S(R,0,g))>-1){k=R>12;break}}else k=y===(g?"pm":"PM");return k},E={A:[$,function(y){this.afternoon=W(y,!1)}],a:[$,function(y){this.afternoon=W(y,!0)}],Q:[f,function(y){this.month=3*(y-1)+1}],S:[f,function(y){this.milliseconds=100*+y}],SS:[i,function(y){this.milliseconds=10*+y}],SSS:[/\d{3}/,function(y){this.milliseconds=+y}],s:[n,l("seconds")],ss:[n,l("seconds")],m:[n,l("minutes")],mm:[n,l("minutes")],H:[n,l("hours")],h:[n,l("hours")],HH:[n,l("hours")],hh:[n,l("hours")],D:[n,l("day")],DD:[i,l("day")],Do:[$,function(y){var g=M.ordinal,k=y.match(/\d+/);if(this.day=k[0],g)for(var S=1;S<=31;S+=1)g(S).replace(/\[|\]/g,"")===y&&(this.day=S)}],w:[n,l("week")],ww:[i,l("week")],M:[n,l("month")],MM:[i,l("month")],MMM:[$,function(y){var g=L("months"),k=(L("monthsShort")||g.map(function(S){return S.slice(0,3)})).indexOf(y)+1;if(k<1)throw new Error;this.month=k%12||k}],MMMM:[$,function(y){var g=L("months").indexOf(y)+1;if(g<1)throw new Error;this.month=g%12||g}],Y:[/[+-]?\d+/,l("year")],YY:[i,function(y){this.year=c(y)}],YYYY:[/\d{4}/,l("year")],Z:O,ZZ:O};function J(y){var g,k;g=y,k=M&&M.formats;for(var S=(y=g.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Y,D,H){var T=H&&H.toUpperCase();return D||k[H]||s[H]||k[T].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(u,e,t){return e||t.slice(1)})})).match(o),R=S.length,P=0;P<R;P+=1){var I=S[P],U=E[I],j=U&&U[0],A=U&&U[1];S[P]=A?{regex:j,parser:A}:I.replace(/^\[|\]$/g,"")}return function(Y){for(var D={},H=0,T=0;H<R;H+=1){var u=S[H];if(typeof u=="string")T+=u.length;else{var e=u.regex,t=u.parser,a=Y.slice(T),r=e.exec(a)[0];t.call(D,r),Y=Y.replace(r,"")}}return function(d){var m=d.afternoon;if(m!==void 0){var v=d.hours;m?v<12&&(d.hours+=12):v===12&&(d.hours=0),delete d.afternoon}}(D),D}}return function(y,g,k){k.p.customParseFormat=!0,y&&y.parseTwoDigitYear&&(c=y.parseTwoDigitYear);var S=g.prototype,R=S.parse;S.parse=function(P){var I=P.date,U=P.utc,j=P.args;this.$u=U;var A=j[1];if(typeof A=="string"){var Y=j[2]===!0,D=j[3]===!0,H=Y||D,T=j[2];D&&(T=j[2]),M=this.$locale(),!Y&&T&&(M=k.Ls[T]),this.$d=function(a,r,d,m){try{if(["x","X"].indexOf(r)>-1)return new Date((r==="X"?1e3:1)*a);var v=J(r)(a),x=v.year,b=v.month,_=v.day,q=v.hours,z=v.minutes,N=v.seconds,V=v.milliseconds,Z=v.zone,C=v.week,Q=new Date,X=_||(x||b?1:Q.getDate()),F=x||Q.getFullYear(),rt=0;x&&!b||(rt=b>0?b-1:Q.getMonth());var nt,st=q||0,at=z||0,it=N||0,ot=V||0;return Z?new Date(Date.UTC(F,rt,X,st,at,it,ot+60*Z.offset*1e3)):d?new Date(Date.UTC(F,rt,X,st,at,it,ot)):(nt=new Date(F,rt,X,st,at,it,ot),C&&(nt=m(nt).week(C).toDate()),nt)}catch{return new Date("")}}(I,A,U,k),this.init(),T&&T!==!0&&(this.$L=this.locale(T).$L),H&&I!=this.format(A)&&(this.$d=new Date("")),M={}}else if(A instanceof Array)for(var u=A.length,e=1;e<=u;e+=1){j[1]=A[e-1];var t=k.apply(this,j);if(t.isValid()){this.$d=t.$d,this.$L=t.$L,this.init();break}e===u&&(this.$d=new Date(""))}else R.call(this,P)}}})}(et)),et.exports}var xt=St(),kt=B(xt);w.extend(vt),w.extend(Ot),w.extend(kt);function ht(p,h,s,o,f=[]){const i=h.filter(n=>n[o.parentId]===p);if(i&&i.length>0){s++;for(let n=0;n<i.length;n++){i[n].treeLevel=s,i[n].index=n+1;const $=f.filter(M=>M[o.id]===i[n][o.parentId]);if($&&$.length>0){let M=$[0].index+"."+i[n].index,c=$[0];for(;c[o.parentId]!=="0";){const l=f.find(O=>O[o.id]===c[o.parentId]);if(l)M=l.index+"."+M,c=l;else break}i[n].no=M}else i[n].no=n+1+"";f.push(i[n]),ht(i[n][o.id],h,s,o,f)}}return f}function bt(p,h,s,o,f,i,n){return p.map(M=>{const c=M[f.startDate],l=M[f.endDate];if(!c||!l)return{id:M[f.id],position:null};const O=Wt(h,c,l,s,o,i,n);return{id:M[f.id],position:O}})}function Wt(p,h,s,o,f,i,n){try{switch(o){case"季度":return _t(p,h,s,f);case"月":return Lt(p,h,s,f);case"周":return Ct(p,h,s,f);case"日":return Pt(p,h,s,f,i==="half");case"时":const $=parseInt(n||"60");return Ht(p,h,s,f,$);default:return null}}catch($){return console.error("Error calculating position:",$),null}}function _t(p,h,s,o){const f=w(p).startOf("quarter"),i=w(h).startOf("quarter"),n=w(s).startOf("quarter"),$=(i.year()-f.year())*4+(i.quarter()-f.quarter()),M=o*$,c=(n.year()-i.year())*4+(n.quarter()-i.quarter())+1;return{dataX:M,width:c*o}}function Lt(p,h,s,o){const f=w(p).startOf("month"),i=w(h).startOf("month"),n=w(s).startOf("month"),$=(i.year()-f.year())*12+(i.month()-f.month()),M=o*$,c=(n.year()-i.year())*12+(n.month()-i.month())+1;return{dataX:M,width:c*o}}function Ct(p,h,s,o){const f=w(p).startOf("isoWeek"),i=w(h).startOf("isoWeek"),n=i.diff(f,"week"),$=o*n,c=w(s).startOf("isoWeek").diff(i,"week")+1;return{dataX:$,width:c*o}}function Pt(p,h,s,o,f){const i=f?2:1,n=w(h).diff(w(p),"days");let $,M;if(f){const c=w(h).hour(),l=w(s).hour(),O=c<12,L=l<12,W=O?0:1,E=L?0:1;$=o*(n*2+W);const y=w(s).diff(w(p),"days")*2+E,g=n*2+W;M=(y-g+1)*o}else $=o*n*i,M=(w(s).diff(w(h),"days")+1)*o*i;return{dataX:$,width:M}}function Ht(p,h,s,o,f){if(f<60){const i=w(h).diff(w(p),"minutes"),n=Math.floor(i/f),$=o*n,M=w(s).diff(w(h),"minutes")+f,l=Math.ceil(M/f)*o;return{dataX:$,width:l}}else{const i=w(h).diff(w(p),"hours"),n=o*i,$=w(s).diff(w(h),"hours")+1;return{dataX:n,width:$*o}}}function At(p,h){return p.map(s=>{try{return w(s).format(h)}catch{return s}})}function Tt(p){return p.map(h=>{try{switch(h.type){case"add":return w(h.date).add(h.amount||0,h.unit).format("YYYY-MM-DD HH:mm:ss");case"subtract":return w(h.date).subtract(h.amount||0,h.unit).format("YYYY-MM-DD HH:mm:ss");case"diff":return w(h.date).diff(w(h.date2),h.unit);default:return null}}catch{return null}})}self.onmessage=p=>{const{type:h,payload:s,id:o}=p.data;try{let f;switch(h){case"PROCESS_RECURSION_DATA":f=ht(s.id,s.tasks,s.level,s.mapFields,[]);break;case"CALC_BAR_POSITIONS":f=bt(s.tasks,s.startGanttDate,s.mode,s.scale,s.mapFields,s.daySubMode,s.hourSubMode);break;case"FORMAT_DATES":f=At(s.dates,s.format);break;case"CALC_DATES":f=Tt(s.operations);break;default:throw new Error(`Unknown message type: ${h}`)}const i={type:h,payload:f,id:o};self.postMessage(i)}catch(f){const i={type:h,payload:null,id:o,error:f instanceof Error?f.message:"Unknown error"};self.postMessage(i)}}})();
2
+ //# sourceMappingURL=dataProcessor.worker-2qThJYPh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataProcessor.worker-2qThJYPh.js","sources":["../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/quarterOfYear.js","../node_modules/dayjs/plugin/customParseFormat.js","../src/components/gantt/workers/dataProcessor.worker.ts"],"sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return+(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},g=\"en\",D={};D[g]=M;var p=\"$isDayjsObject\",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if(\"string\"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split(\"-\");if(!i&&u.length>1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate(\"s\"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+\"Hours\",0);case u:return $(v+\"Minutes\",1);case s:return $(v+\"Seconds\",2);case i:return $(v+\"Milliseconds\",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f=\"set\"+(this.$u?\"UTC\":\"\"),l=(n={},n[a]=f+\"Date\",n[d]=f+\"Date\",n[c]=f+\"Month\",n[h]=f+\"FullYear\",n[u]=f+\"Hours\",n[s]=f+\"Minutes\",n[i]=f+\"Seconds\",n[r]=f+\"Milliseconds\",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||\"YYYY-MM-DDTHH:mm:ssZ\",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,\"0\")},$=f||function(t,e,n){var r=t<12?\"AM\":\"PM\";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case\"YY\":return String(e.$y).slice(-2);case\"YYYY\":return b.s(e.$y,4,\"0\");case\"M\":return a+1;case\"MM\":return b.s(a+1,2,\"0\");case\"MMM\":return h(n.monthsShort,a,c,3);case\"MMMM\":return h(c,a);case\"D\":return e.$D;case\"DD\":return b.s(e.$D,2,\"0\");case\"d\":return String(e.$W);case\"dd\":return h(n.weekdaysMin,e.$W,o,2);case\"ddd\":return h(n.weekdaysShort,e.$W,o,3);case\"dddd\":return o[e.$W];case\"H\":return String(s);case\"HH\":return b.s(s,2,\"0\");case\"h\":return d(1);case\"hh\":return d(2);case\"a\":return $(s,u,!0);case\"A\":return $(s,u,!1);case\"m\":return String(u);case\"mm\":return b.s(u,2,\"0\");case\"s\":return String(e.$s);case\"ss\":return b.s(e.$s,2,\"0\");case\"SSS\":return b.s(e.$ms,3,\"0\");case\"Z\":return i}return null}(t)||i.replace(\":\",\"\")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[[\"$ms\",r],[\"$s\",i],[\"$m\",s],[\"$H\",u],[\"$W\",a],[\"$M\",c],[\"$y\",h],[\"$D\",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isoWeek=t()}(this,(function(){\"use strict\";var e=\"day\";return function(t,i,s){var a=function(t){return t.add(4-t.isoWeekday(),e)},d=i.prototype;d.isoWeekYear=function(){return a(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var i,d,n,o,r=a(this),u=(i=this.isoWeekYear(),d=this.$u,n=(d?s.utc:s)().year(i).startOf(\"year\"),o=4-n.isoWeekday(),n.isoWeekday()>4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_quarterOfYear=n()}(this,(function(){\"use strict\";var t=\"month\",n=\"quarter\";return function(e,i){var r=i.prototype;r.quarter=function(t){return this.$utils().u(t)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(t-1))};var s=r.add;r.add=function(e,i){return e=Number(e),this.$utils().p(i)===n?this.add(3*e,t):s.bind(this)(e,i)};var u=r.startOf;r.startOf=function(e,i){var r=this.$utils(),s=!!r.u(i)||i;if(r.p(e)===n){var o=this.quarter()-1;return s?this.month(3*o).startOf(t).startOf(\"day\"):this.month(3*o+2).endOf(t).endOf(\"day\")}return u.bind(this)(e,i)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_customParseFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"},t=/(\\[[^[]*\\])|([-_:/.,()\\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\\d/,r=/\\d\\d/,i=/\\d\\d?/,o=/\\d*[^-_:/,()\\s\\d]+/,s={},a=function(e){return(e=+e)+(e>68?1900:2e3)};var f=function(e){return function(t){this[e]=+t}},h=[/[+-]\\d\\d:?(\\d\\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if(\"Z\"===e)return 0;var t=e.match(/([+-]|\\d\\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:\"+\"===t[0]?-n:n}(e)}],u=function(e){var t=s[e];return t&&(t.indexOf?t:t.s.concat(t.f))},d=function(e,t){var n,r=s.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?\"pm\":\"PM\");return n},c={A:[o,function(e){this.afternoon=d(e,!1)}],a:[o,function(e){this.afternoon=d(e,!0)}],Q:[n,function(e){this.month=3*(e-1)+1}],S:[n,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\\d{3}/,function(e){this.milliseconds=+e}],s:[i,f(\"seconds\")],ss:[i,f(\"seconds\")],m:[i,f(\"minutes\")],mm:[i,f(\"minutes\")],H:[i,f(\"hours\")],h:[i,f(\"hours\")],HH:[i,f(\"hours\")],hh:[i,f(\"hours\")],D:[i,f(\"day\")],DD:[r,f(\"day\")],Do:[o,function(e){var t=s.ordinal,n=e.match(/\\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\\[|\\]/g,\"\")===e&&(this.day=r)}],w:[i,f(\"week\")],ww:[r,f(\"week\")],M:[i,f(\"month\")],MM:[r,f(\"month\")],MMM:[o,function(e){var t=u(\"months\"),n=(u(\"monthsShort\")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[o,function(e){var t=u(\"months\").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\\d+/,f(\"year\")],YY:[r,function(e){this.year=a(e)}],YYYY:[/\\d{4}/,f(\"year\")],Z:h,ZZ:h};function l(n){var r,i;r=n,i=s&&s.formats;for(var o=(n=r.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=o.length,f=0;f<a;f+=1){var h=o[f],u=c[h],d=u&&u[0],l=u&&u[1];o[f]=l?{regex:d,parser:l}:h.replace(/^\\[|\\]$/g,\"\")}return function(e){for(var t={},n=0,r=0;n<a;n+=1){var i=o[n];if(\"string\"==typeof i)r+=i.length;else{var s=i.regex,f=i.parser,h=e.slice(r),u=s.exec(h)[0];f.call(t,u),e=e.replace(u,\"\")}}return function(e){var t=e.afternoon;if(void 0!==t){var n=e.hours;t?n<12&&(e.hours+=12):12===n&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(a=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,o=e.args;this.$u=r;var a=o[1];if(\"string\"==typeof a){var f=!0===o[2],h=!0===o[3],u=f||h,d=o[2];h&&(d=o[2]),s=this.$locale(),!f&&d&&(s=n.Ls[d]),this.$d=function(e,t,n,r){try{if([\"x\",\"X\"].indexOf(t)>-1)return new Date((\"X\"===t?1e3:1)*e);var i=l(t)(e),o=i.year,s=i.month,a=i.day,f=i.hours,h=i.minutes,u=i.seconds,d=i.milliseconds,c=i.zone,m=i.week,M=new Date,Y=a||(o||s?1:M.getDate()),p=o||M.getFullYear(),v=0;o&&!s||(v=s>0?s-1:M.getMonth());var D,w=f||0,g=h||0,y=u||0,L=d||0;return c?new Date(Date.UTC(p,v,Y,w,g,y,L+60*c.offset*1e3)):n?new Date(Date.UTC(p,v,Y,w,g,y,L)):(D=new Date(p,v,Y,w,g,y,L),m&&(D=r(D).week(m).toDate()),D)}catch(e){return new Date(\"\")}}(t,a,r,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date(\"\")),s={}}else if(a instanceof Array)for(var c=a.length,m=1;m<=c;m+=1){o[1]=a[m-1];var M=n.apply(this,o);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===c&&(this.$d=new Date(\"\"))}else i.call(this,e)}}}));","/**\r\n * Web Worker for data processing\r\n * 处理递归数据和日期计算,减少主线程负载\r\n */\r\n\r\nimport dayjs from 'dayjs';\r\nimport isoWeek from 'dayjs/plugin/isoWeek';\r\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear';\r\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\r\n\r\ndayjs.extend(isoWeek);\r\ndayjs.extend(quarterOfYear);\r\ndayjs.extend(customParseFormat);\r\n\r\n/**\r\n * 消息类型定义\r\n */\r\nexport type WorkerMessageType =\r\n | 'PROCESS_RECURSION_DATA'\r\n | 'CALC_BAR_POSITIONS'\r\n | 'CALC_DATES'\r\n | 'FORMAT_DATES';\r\n\r\nexport interface WorkerMessage {\r\n type: WorkerMessageType;\r\n payload: any;\r\n id?: string;\r\n}\r\n\r\nexport interface WorkerResponse {\r\n type: WorkerMessageType;\r\n payload: any;\r\n id?: string;\r\n error?: string;\r\n}\r\n\r\n/**\r\n * 递归处理数据\r\n * 将扁平化的树形数据处理为带层级的数据\r\n */\r\nfunction processRecursionData(\r\n id: any,\r\n tasks: any[],\r\n level: number,\r\n mapFields: Record<string, string>,\r\n initData: any[] = []\r\n): any[] {\r\n const findResult = tasks.filter(obj => obj[mapFields['parentId']] === id);\r\n\r\n if (findResult && findResult.length > 0) {\r\n level++;\r\n for (let i = 0; i < findResult.length; i++) {\r\n findResult[i].treeLevel = level;\r\n findResult[i].index = i + 1;\r\n\r\n const parent = initData.filter(\r\n obj => obj[mapFields['id']] === findResult[i][mapFields['parentId']]\r\n );\r\n\r\n if (parent && parent.length > 0) {\r\n // 构建序号\r\n let result = parent[0].index + '.' + findResult[i].index;\r\n\r\n // 查找所有父级\r\n let currentParent = parent[0];\r\n while (currentParent[mapFields['parentId']] !== '0') {\r\n const upperParent = initData.find(\r\n obj => obj[mapFields['id']] === currentParent[mapFields['parentId']]\r\n );\r\n if (upperParent) {\r\n result = upperParent.index + '.' + result;\r\n currentParent = upperParent;\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n findResult[i].no = result;\r\n } else {\r\n findResult[i].no = (i + 1) + '';\r\n }\r\n\r\n initData.push(findResult[i]);\r\n processRecursionData(\r\n findResult[i][mapFields['id']],\r\n tasks,\r\n level,\r\n mapFields,\r\n initData\r\n );\r\n }\r\n }\r\n\r\n return initData;\r\n}\r\n\r\n/**\r\n * 批量计算甘特图条的位置\r\n */\r\nfunction calcBarPositions(\r\n tasks: any[],\r\n startGanttDate: string,\r\n mode: string,\r\n scale: number,\r\n mapFields: Record<string, string>,\r\n daySubMode?: string,\r\n hourSubMode?: string\r\n): any[] {\r\n const results = tasks.map(task => {\r\n const taskStart = task[mapFields['startDate']];\r\n const taskEnd = task[mapFields['endDate']];\r\n\r\n if (!taskStart || !taskEnd) {\r\n return { id: task[mapFields['id']], position: null };\r\n }\r\n\r\n const position = calcPositionForMode(\r\n startGanttDate,\r\n taskStart,\r\n taskEnd,\r\n mode,\r\n scale,\r\n daySubMode,\r\n hourSubMode\r\n );\r\n\r\n return {\r\n id: task[mapFields['id']],\r\n position\r\n };\r\n });\r\n\r\n return results;\r\n}\r\n\r\n/**\r\n * 根据不同模式计算位置\r\n */\r\nfunction calcPositionForMode(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n mode: string,\r\n scale: number,\r\n daySubMode?: string,\r\n hourSubMode?: string\r\n): { dataX: number; width: number } | null {\r\n try {\r\n switch (mode) {\r\n case '季度':\r\n return calcQuarterPosition(start, taskStart, taskEnd, scale);\r\n case '月':\r\n return calcMonthPosition(start, taskStart, taskEnd, scale);\r\n case '周':\r\n return calcWeekPosition(start, taskStart, taskEnd, scale);\r\n case '日':\r\n return calcDayPosition(start, taskStart, taskEnd, scale, daySubMode === 'half');\r\n case '时':\r\n const minuteInterval = parseInt(hourSubMode || '60');\r\n return calcHourPosition(start, taskStart, taskEnd, scale, minuteInterval);\r\n default:\r\n return null;\r\n }\r\n } catch (error) {\r\n console.error('Error calculating position:', error);\r\n return null;\r\n }\r\n}\r\n\r\n/**\r\n * 计算季度位置\r\n */\r\nfunction calcQuarterPosition(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n scale: number\r\n): { dataX: number; width: number } {\r\n const ganttStartQuarter = dayjs(start).startOf('quarter');\r\n const taskStartQuarter = dayjs(taskStart).startOf('quarter');\r\n const taskEndQuarter = dayjs(taskEnd).startOf('quarter');\r\n\r\n const fromStartQuarters =\r\n (taskStartQuarter.year() - ganttStartQuarter.year()) * 4 +\r\n (taskStartQuarter.quarter() - ganttStartQuarter.quarter());\r\n const dataX = scale * fromStartQuarters;\r\n\r\n const spendQuarters =\r\n (taskEndQuarter.year() - taskStartQuarter.year()) * 4 +\r\n (taskEndQuarter.quarter() - taskStartQuarter.quarter()) + 1;\r\n\r\n return { dataX, width: spendQuarters * scale };\r\n}\r\n\r\n/**\r\n * 计算月份位置\r\n */\r\nfunction calcMonthPosition(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n scale: number\r\n): { dataX: number; width: number } {\r\n const ganttStartMonth = dayjs(start).startOf('month');\r\n const taskStartMonth = dayjs(taskStart).startOf('month');\r\n const taskEndMonth = dayjs(taskEnd).startOf('month');\r\n\r\n const fromStartMonths =\r\n (taskStartMonth.year() - ganttStartMonth.year()) * 12 +\r\n (taskStartMonth.month() - ganttStartMonth.month());\r\n const dataX = scale * fromStartMonths;\r\n\r\n const spendMonths =\r\n (taskEndMonth.year() - taskStartMonth.year()) * 12 +\r\n (taskEndMonth.month() - taskStartMonth.month()) + 1;\r\n\r\n return { dataX, width: spendMonths * scale };\r\n}\r\n\r\n/**\r\n * 计算周位置\r\n */\r\nfunction calcWeekPosition(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n scale: number\r\n): { dataX: number; width: number } {\r\n const startGanttWeek = dayjs(start).startOf('isoWeek');\r\n const taskStartWeek = dayjs(taskStart).startOf('isoWeek');\r\n const fromPlanStartWeeks = taskStartWeek.diff(startGanttWeek, 'week');\r\n const dataX = scale * fromPlanStartWeeks;\r\n\r\n const taskEndWeek = dayjs(taskEnd).startOf('isoWeek');\r\n const spendWeeks = taskEndWeek.diff(taskStartWeek, 'week') + 1;\r\n\r\n return { dataX, width: spendWeeks * scale };\r\n}\r\n\r\n/**\r\n * 计算日位置\r\n */\r\nfunction calcDayPosition(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n scale: number,\r\n isHalfDay: boolean\r\n): { dataX: number; width: number } {\r\n const cellsPerDay = isHalfDay ? 2 : 1;\r\n const fromPlanStartDays = dayjs(taskStart).diff(dayjs(start), 'days');\r\n let dataX: number;\r\n let width: number;\r\n\r\n if (isHalfDay) {\r\n const startHour = dayjs(taskStart).hour();\r\n const endHour = dayjs(taskEnd).hour();\r\n const startIsAM = startHour < 12;\r\n const endIsAM = endHour < 12;\r\n\r\n const startCellOffset = startIsAM ? 0 : 1;\r\n const endCellOffset = endIsAM ? 0 : 1;\r\n\r\n dataX = scale * (fromPlanStartDays * 2 + startCellOffset);\r\n\r\n const endDays = dayjs(taskEnd).diff(dayjs(start), 'days');\r\n const endCellIndex = endDays * 2 + endCellOffset;\r\n const startCellIndex = fromPlanStartDays * 2 + startCellOffset;\r\n\r\n width = (endCellIndex - startCellIndex + 1) * scale;\r\n } else {\r\n dataX = scale * fromPlanStartDays * cellsPerDay;\r\n const spendDays = dayjs(taskEnd).diff(dayjs(taskStart), 'days') + 1;\r\n width = spendDays * scale * cellsPerDay;\r\n }\r\n\r\n return { dataX, width };\r\n}\r\n\r\n/**\r\n * 计算小时位置\r\n */\r\nfunction calcHourPosition(\r\n start: string,\r\n taskStart: string,\r\n taskEnd: string,\r\n scale: number,\r\n minuteInterval: number\r\n): { dataX: number; width: number } {\r\n if (minuteInterval < 60) {\r\n const fromPlanStartMinutes = dayjs(taskStart).diff(dayjs(start), 'minutes');\r\n const cellIndex = Math.floor(fromPlanStartMinutes / minuteInterval);\r\n const dataX = scale * cellIndex;\r\n\r\n const spendMinutes = dayjs(taskEnd).diff(dayjs(taskStart), 'minutes') + minuteInterval;\r\n const widthCells = Math.ceil(spendMinutes / minuteInterval);\r\n const width = widthCells * scale;\r\n\r\n return { dataX, width };\r\n } else {\r\n const fromPlanStartHours = dayjs(taskStart).diff(dayjs(start), 'hours');\r\n const dataX = scale * fromPlanStartHours;\r\n const spendHours = dayjs(taskEnd).diff(dayjs(taskStart), 'hours') + 1;\r\n return { dataX, width: spendHours * scale };\r\n }\r\n}\r\n\r\n/**\r\n * 批量格式化日期\r\n */\r\nfunction formatDates(\r\n dates: string[],\r\n format: string\r\n): string[] {\r\n return dates.map(date => {\r\n try {\r\n return dayjs(date).format(format);\r\n } catch (error) {\r\n return date;\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * 批量计算日期\r\n */\r\nfunction calcDates(\r\n operations: Array<{\r\n type: 'add' | 'subtract' | 'diff';\r\n date: string;\r\n amount?: number;\r\n unit?: any;\r\n date2?: string;\r\n }>\r\n): any[] {\r\n return operations.map(op => {\r\n try {\r\n switch (op.type) {\r\n case 'add':\r\n return dayjs(op.date).add(op.amount || 0, op.unit).format('YYYY-MM-DD HH:mm:ss');\r\n case 'subtract':\r\n return dayjs(op.date).subtract(op.amount || 0, op.unit).format('YYYY-MM-DD HH:mm:ss');\r\n case 'diff':\r\n return dayjs(op.date).diff(dayjs(op.date2), op.unit);\r\n default:\r\n return null;\r\n }\r\n } catch (error) {\r\n return null;\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Worker 消息处理\r\n */\r\nself.onmessage = (event: MessageEvent<WorkerMessage>) => {\r\n const { type, payload, id } = event.data;\r\n\r\n try {\r\n let result: any;\r\n\r\n switch (type) {\r\n case 'PROCESS_RECURSION_DATA':\r\n result = processRecursionData(\r\n payload.id,\r\n payload.tasks,\r\n payload.level,\r\n payload.mapFields,\r\n []\r\n );\r\n break;\r\n\r\n case 'CALC_BAR_POSITIONS':\r\n result = calcBarPositions(\r\n payload.tasks,\r\n payload.startGanttDate,\r\n payload.mode,\r\n payload.scale,\r\n payload.mapFields,\r\n payload.daySubMode,\r\n payload.hourSubMode\r\n );\r\n break;\r\n\r\n case 'FORMAT_DATES':\r\n result = formatDates(payload.dates, payload.format);\r\n break;\r\n\r\n case 'CALC_DATES':\r\n result = calcDates(payload.operations);\r\n break;\r\n\r\n default:\r\n throw new Error(`Unknown message type: ${type}`);\r\n }\r\n\r\n const response: WorkerResponse = {\r\n type,\r\n payload: result,\r\n id\r\n };\r\n\r\n self.postMessage(response);\r\n } catch (error) {\r\n const response: WorkerResponse = {\r\n type,\r\n payload: null,\r\n id,\r\n error: error instanceof Error ? error.message : 'Unknown error'\r\n };\r\n\r\n self.postMessage(response);\r\n }\r\n};\r\n\r\n// 导出类型供主线程使用\r\nexport type { WorkerResponse };\r\n"],"names":["t","e","module","this","n","r","i","s","u","a","o","c","f","h","d","l","$","y","M","m","v","g","D","p","S","_","w","O","b","k","Y","L","dayjs","isoWeek","quarterOfYear","customParseFormat","processRecursionData","id","tasks","level","mapFields","initData","findResult","obj","parent","result","currentParent","upperParent","calcBarPositions","startGanttDate","mode","scale","daySubMode","hourSubMode","task","taskStart","taskEnd","position","calcPositionForMode","start","calcQuarterPosition","calcMonthPosition","calcWeekPosition","calcDayPosition","minuteInterval","calcHourPosition","error","ganttStartQuarter","taskStartQuarter","taskEndQuarter","fromStartQuarters","dataX","spendQuarters","ganttStartMonth","taskStartMonth","taskEndMonth","fromStartMonths","spendMonths","startGanttWeek","taskStartWeek","fromPlanStartWeeks","spendWeeks","isHalfDay","cellsPerDay","fromPlanStartDays","width","startHour","endHour","startIsAM","endIsAM","startCellOffset","endCellOffset","endCellIndex","startCellIndex","fromPlanStartMinutes","cellIndex","spendMinutes","fromPlanStartHours","spendHours","formatDates","dates","format","date","calcDates","operations","op","event","type","payload","response"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}