@lee576/vue3-gantt 1.0.9 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en-US.md +31 -0
- package/README.md +33 -0
- package/dist/assets/dataProcessor.worker-S1OnF-y_.js +2 -0
- package/dist/assets/dataProcessor.worker-S1OnF-y_.js.map +1 -0
- package/dist/vue3-gantt.css +1 -1
- package/dist/vue3-gantt.es.js +5173 -4204
- package/dist/vue3-gantt.es.js.map +1 -1
- package/dist/vue3-gantt.umd.js +92 -92
- package/dist/vue3-gantt.umd.js.map +1 -1
- package/package.json +21 -3
- package/dist/assets/dataProcessor.worker-2qThJYPh.js +0 -2
- package/dist/assets/dataProcessor.worker-2qThJYPh.js.map +0 -1
package/README.en-US.md
CHANGED
|
@@ -44,6 +44,7 @@ A feature-rich, highly customizable Vue 3 Gantt chart component that supports ta
|
|
|
44
44
|
- 🌍 **Internationalization** - Built-in 8 languages, easily extensible
|
|
45
45
|
- ⚡ **High Performance** - Virtual scrolling, handles massive task data effortlessly
|
|
46
46
|
- 💎 **Milestones** - Diamond markers for key nodes with dependency support
|
|
47
|
+
- 🎯 **Project Analysis** - Critical path analysis, dependency validation, constraint validation and more
|
|
47
48
|
|
|
48
49
|
## ✨ Core Features
|
|
49
50
|
|
|
@@ -123,6 +124,36 @@ Five time granularities for different scenarios:
|
|
|
123
124
|
- **Quick Operations** - Inline buttons for quickly adding/deleting subtasks
|
|
124
125
|
- **Hover Highlight** - Mouse hover highlights current task row
|
|
125
126
|
|
|
127
|
+
### 🎯 Project Analysis Features
|
|
128
|
+
Powerful project analysis tools to help you monitor project progress and identify potential issues.
|
|
129
|
+
|
|
130
|
+
#### Critical Path Analysis
|
|
131
|
+
- **Automatic Critical Path Detection** - Accurately calculate project critical path and critical tasks
|
|
132
|
+
- **Float Time Calculation** - Calculate total float and free float for each task
|
|
133
|
+
- **Project Duration Prediction** - Accurately predict total project duration and end date
|
|
134
|
+
- **Detailed Time Analysis** - Display early start, early finish, late start, late finish times for each task
|
|
135
|
+
- **Visual Presentation** - Critical path displayed clearly in flowchart format
|
|
136
|
+
- **Data Export** - Support exporting analysis results to CSV files
|
|
137
|
+
|
|
138
|
+
#### Dependency Validation
|
|
139
|
+
- **Circular Dependency Detection** - Automatically detect and alert circular dependencies between tasks
|
|
140
|
+
- **Invalid Link Identification** - Identify missing tasks or invalid dependency relationships
|
|
141
|
+
- **Date Conflict Check** - Verify consistency between dependency relationships and task dates
|
|
142
|
+
- **Dependency Type Display** - Clearly show the type of each dependency (FS/SS/FF/SF)
|
|
143
|
+
- **Error Classification** - Distinguish between critical errors and general errors for priority handling
|
|
144
|
+
- **Resolution Suggestions** - Provide specific solutions for each error
|
|
145
|
+
- **Redundant Dependency Alerts** - Identify potentially redundant dependencies and provide optimization suggestions
|
|
146
|
+
- **Detailed Report Export** - Support exporting complete validation reports
|
|
147
|
+
|
|
148
|
+
#### Task Constraint Validation
|
|
149
|
+
- **Multiple Constraint Types** - Support SNET, SNLT, FNET, FNLT, MSO, MFO, ASAP, ALAP and other constraints
|
|
150
|
+
- **Constraint Conflict Detection** - Automatically detect whether tasks violate time constraints
|
|
151
|
+
- **Detailed Conflict Information** - Display comparison between current dates and constraint dates
|
|
152
|
+
- **Filtering and Sorting** - Support filtering and sorting tasks by conflict type
|
|
153
|
+
- **Constraint Type Explanation** - Built-in constraint type descriptions to help understand various constraint meanings
|
|
154
|
+
- **Warning Alerts** - Provide warnings and suggestions for potentially problematic constraints
|
|
155
|
+
- **Report Export** - Support exporting constraint validation reports
|
|
156
|
+
|
|
126
157
|
## 🚀 Installation
|
|
127
158
|
|
|
128
159
|
### Option 1: Install via npm (Recommended)
|
package/README.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
[View Separate Files](.)
|
|
7
7
|
|
|
8
8
|
> 💡 **提示**: 点击上方语言链接可直接跳转到对应文档 | GitHub 上也可查看独立语言版本文件:[README.md](README.md) (默认中文) | [README.en-US.md](README.en-US.md) (English)
|
|
9
|
+
>
|
|
10
|
+
> <span style="color: #0078d4; font-weight: bold;">作者联系方式 QQ: 35568701 微信: wl_tww</span>
|
|
9
11
|
|
|
10
12
|
<style>
|
|
11
13
|
html {
|
|
@@ -59,6 +61,7 @@ details[open] > summary {
|
|
|
59
61
|
- 🌍 **国际化** - 内置8种语言,轻松扩展更多语言
|
|
60
62
|
- ⚡ **高性能** - 虚拟滚动优化,轻松处理大量任务数据
|
|
61
63
|
- 💎 **里程碑** - 菱形标记关键节点,支持依赖关系
|
|
64
|
+
- 🎯 **项目分析** - 关键路径分析、依赖验证、约束验证等专业功能
|
|
62
65
|
|
|
63
66
|
## ✨ 核心特性
|
|
64
67
|
|
|
@@ -138,6 +141,36 @@ details[open] > summary {
|
|
|
138
141
|
- **快速操作** - 行内按钮快速添加/删除子任务
|
|
139
142
|
- **悬停高亮** - 鼠标悬停时高亮显示当前任务行
|
|
140
143
|
|
|
144
|
+
### 🎯 项目分析功能
|
|
145
|
+
强大的项目分析工具,帮助您监控项目进度和识别潜在问题。
|
|
146
|
+
|
|
147
|
+
#### 关键路径分析
|
|
148
|
+
- **自动识别关键路径** - 准确计算项目的关键路径和关键任务
|
|
149
|
+
- **浮动时间计算** - 计算每个任务的总浮动时间和自由浮动时间
|
|
150
|
+
- **项目工期预测** - 准确预测项目总工期和项目结束日期
|
|
151
|
+
- **详细时间分析** - 显示每个任务的最早开始、最早完成、最晚开始、最晚完成时间
|
|
152
|
+
- **可视化展示** - 关键路径以流程图形式清晰展示
|
|
153
|
+
- **数据导出** - 支持将分析结果导出为 CSV 文件
|
|
154
|
+
|
|
155
|
+
#### 依赖关系验证
|
|
156
|
+
- **循环依赖检测** - 自动检测并提示任务间的循环依赖问题
|
|
157
|
+
- **无效连接识别** - 识别缺失任务或无效的依赖关系
|
|
158
|
+
- **日期冲突检查** - 验证依赖关系与任务日期的一致性
|
|
159
|
+
- **依赖类型显示** - 清晰显示每个依赖关系的类型(FS/SS/FF/SF)
|
|
160
|
+
- **错误分级** - 区分严重错误和一般错误,优先处理关键问题
|
|
161
|
+
- **解决方案建议** - 为每个错误提供具体的解决方案
|
|
162
|
+
- **冗余依赖提示** - 识别可能冗余的依赖关系并给出优化建议
|
|
163
|
+
- **详细报告导出** - 支持导出完整的验证报告
|
|
164
|
+
|
|
165
|
+
#### 任务约束验证
|
|
166
|
+
- **多种约束类型** - 支持 SNET、SNLT、FNET、FNLT、MSO、MFO、ASAP、ALAP 等约束
|
|
167
|
+
- **约束冲突检测** - 自动检测任务是否违反时间约束
|
|
168
|
+
- **详细冲突信息** - 显示当前日期与约束日期的对比
|
|
169
|
+
- **筛选和排序** - 支持按冲突类型筛选和排序任务
|
|
170
|
+
- **约束类型说明** - 内置约束类型说明,帮助理解各种约束的含义
|
|
171
|
+
- **警告提示** - 对可能存在问题的约束给出警告和建议
|
|
172
|
+
- **报告导出** - 支持导出约束验证报告
|
|
173
|
+
|
|
141
174
|
## 🚀 安装使用
|
|
142
175
|
|
|
143
176
|
### 方式一:通过 npm 安装(推荐)
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var ke=Object.defineProperty;var xe=(B,F,et)=>F in B?ke(B,F,{enumerable:!0,configurable:!0,writable:!0,value:et}):B[F]=et;var Ct=(B,F,et)=>xe(B,typeof F!="symbol"?F+"":F,et);(function(){"use strict";function B(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var F={exports:{}},et=F.exports,vt;function X(){return vt||(vt=1,function(l,r){(function(e,n){l.exports=n()})(et,function(){var e=1e3,n=6e4,a=36e5,s="millisecond",t="second",i="minute",o="hour",c="day",d="week",m="month",g="quarter",k="year",L="date",q="Invalid Date",Y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,v=/\[([^\]]+)]|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,x={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(M){var f=["th","st","nd","rd"],u=M%100;return"["+M+(f[(u-20)%10]||f[u]||f[0])+"]"}},H=function(M,f,u){var _=String(M);return!_||_.length>=f?M:""+Array(f+1-_.length).join(u)+M},R={s:H,z:function(M){var f=-M.utcOffset(),u=Math.abs(f),_=Math.floor(u/60),h=u%60;return(f<=0?"+":"-")+H(_,2,"0")+":"+H(h,2,"0")},m:function M(f,u){if(f.date()<u.date())return-M(u,f);var _=12*(u.year()-f.year())+(u.month()-f.month()),h=f.clone().add(_,m),p=u-h<0,D=f.clone().add(_+(p?-1:1),m);return+(-(_+(u-h)/(p?h-D:D-h))||0)},a:function(M){return M<0?Math.ceil(M)||0:Math.floor(M)},p:function(M){return{M:m,y:k,w:d,d:c,D:L,h:o,m:i,s:t,ms:s,Q:g}[M]||String(M||"").toLowerCase().replace(/s$/,"")},u:function(M){return M===void 0}},A="en",z={};z[A]=x;var N="$isDayjsObject",J=function(M){return M instanceof P||!(!M||!M[N])},C=function M(f,u,_){var h;if(!f)return A;if(typeof f=="string"){var p=f.toLowerCase();z[p]&&(h=p),u&&(z[p]=u,h=p);var D=f.split("-");if(!h&&D.length>1)return M(D[0])}else{var $=f.name;z[$]=f,h=$}return!_&&h&&(A=h),h||!_&&A},O=function(M,f){if(J(M))return M.clone();var u=typeof f=="object"?f:{};return u.date=M,u.args=arguments,new P(u)},w=R;w.l=C,w.i=J,w.w=function(M,f){return O(M,{locale:f.$L,utc:f.$u,x:f.$x,$offset:f.$offset})};var P=function(){function M(u){this.$L=C(u.locale,null,!0),this.parse(u),this.$x=this.$x||u.x||{},this[N]=!0}var f=M.prototype;return f.parse=function(u){this.$d=function(_){var h=_.date,p=_.utc;if(h===null)return new Date(NaN);if(w.u(h))return new Date;if(h instanceof Date)return new Date(h);if(typeof h=="string"&&!/Z$/i.test(h)){var D=h.match(Y);if(D){var $=D[2]-1||0,b=(D[7]||"0").substring(0,3);return p?new Date(Date.UTC(D[1],$,D[3]||1,D[4]||0,D[5]||0,D[6]||0,b)):new Date(D[1],$,D[3]||1,D[4]||0,D[5]||0,D[6]||0,b)}}return new Date(h)}(u),this.init()},f.init=function(){var u=this.$d;this.$y=u.getFullYear(),this.$M=u.getMonth(),this.$D=u.getDate(),this.$W=u.getDay(),this.$H=u.getHours(),this.$m=u.getMinutes(),this.$s=u.getSeconds(),this.$ms=u.getMilliseconds()},f.$utils=function(){return w},f.isValid=function(){return this.$d.toString()!==q},f.isSame=function(u,_){var h=O(u);return this.startOf(_)<=h&&h<=this.endOf(_)},f.isAfter=function(u,_){return O(u)<this.startOf(_)},f.isBefore=function(u,_){return this.endOf(_)<O(u)},f.$g=function(u,_,h){return w.u(u)?this[_]:this.set(h,u)},f.unix=function(){return Math.floor(this.valueOf()/1e3)},f.valueOf=function(){return this.$d.getTime()},f.startOf=function(u,_){var h=this,p=!!w.u(_)||_,D=w.p(u),$=function(Z,W){var Q=w.w(h.$u?Date.UTC(h.$y,W,Z):new Date(h.$y,W,Z),h);return p?Q:Q.endOf(c)},b=function(Z,W){return w.w(h.toDate()[Z].apply(h.toDate("s"),(p?[0,0,0,0]:[23,59,59,999]).slice(W)),h)},T=this.$W,j=this.$M,E=this.$D,G="set"+(this.$u?"UTC":"");switch(D){case k:return p?$(1,0):$(31,11);case m:return p?$(1,j):$(0,j+1);case d:var U=this.$locale().weekStart||0,tt=(T<U?T+7:T)-U;return $(p?E-tt:E+(6-tt),j);case c:case L:return b(G+"Hours",0);case o:return b(G+"Minutes",1);case i:return b(G+"Seconds",2);case t:return b(G+"Milliseconds",3);default:return this.clone()}},f.endOf=function(u){return this.startOf(u,!1)},f.$set=function(u,_){var h,p=w.p(u),D="set"+(this.$u?"UTC":""),$=(h={},h[c]=D+"Date",h[L]=D+"Date",h[m]=D+"Month",h[k]=D+"FullYear",h[o]=D+"Hours",h[i]=D+"Minutes",h[t]=D+"Seconds",h[s]=D+"Milliseconds",h)[p],b=p===c?this.$D+(_-this.$W):_;if(p===m||p===k){var T=this.clone().set(L,1);T.$d[$](b),T.init(),this.$d=T.set(L,Math.min(this.$D,T.daysInMonth())).$d}else $&&this.$d[$](b);return this.init(),this},f.set=function(u,_){return this.clone().$set(u,_)},f.get=function(u){return this[w.p(u)]()},f.add=function(u,_){var h,p=this;u=Number(u);var D=w.p(_),$=function(j){var E=O(p);return w.w(E.date(E.date()+Math.round(j*u)),p)};if(D===m)return this.set(m,this.$M+u);if(D===k)return this.set(k,this.$y+u);if(D===c)return $(1);if(D===d)return $(7);var b=(h={},h[i]=n,h[o]=a,h[t]=e,h)[D]||1,T=this.$d.getTime()+u*b;return w.w(T,this)},f.subtract=function(u,_){return this.add(-1*u,_)},f.format=function(u){var _=this,h=this.$locale();if(!this.isValid())return h.invalidDate||q;var p=u||"YYYY-MM-DDTHH:mm:ssZ",D=w.z(this),$=this.$H,b=this.$m,T=this.$M,j=h.weekdays,E=h.months,G=h.meridiem,U=function(W,Q,V,K){return W&&(W[Q]||W(_,p))||V[Q].slice(0,K)},tt=function(W){return w.s($%12||12,W,"0")},Z=G||function(W,Q,V){var K=W<12?"AM":"PM";return V?K.toLowerCase():K};return p.replace(v,function(W,Q){return Q||function(V){switch(V){case"YY":return String(_.$y).slice(-2);case"YYYY":return w.s(_.$y,4,"0");case"M":return T+1;case"MM":return w.s(T+1,2,"0");case"MMM":return U(h.monthsShort,T,E,3);case"MMMM":return U(E,T);case"D":return _.$D;case"DD":return w.s(_.$D,2,"0");case"d":return String(_.$W);case"dd":return U(h.weekdaysMin,_.$W,j,2);case"ddd":return U(h.weekdaysShort,_.$W,j,3);case"dddd":return j[_.$W];case"H":return String($);case"HH":return w.s($,2,"0");case"h":return tt(1);case"hh":return tt(2);case"a":return Z($,b,!0);case"A":return Z($,b,!1);case"m":return String(b);case"mm":return w.s(b,2,"0");case"s":return String(_.$s);case"ss":return w.s(_.$s,2,"0");case"SSS":return w.s(_.$ms,3,"0");case"Z":return D}return null}(W)||D.replace(":","")})},f.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},f.diff=function(u,_,h){var p,D=this,$=w.p(_),b=O(u),T=(b.utcOffset()-this.utcOffset())*n,j=this-b,E=function(){return w.m(D,b)};switch($){case k:p=E()/12;break;case m:p=E();break;case g:p=E()/3;break;case d:p=(j-T)/6048e5;break;case c:p=(j-T)/864e5;break;case o:p=j/a;break;case i:p=j/n;break;case t:p=j/e;break;default:p=j}return h?p:w.a(p)},f.daysInMonth=function(){return this.endOf(m).$D},f.$locale=function(){return z[this.$L]},f.locale=function(u,_){if(!u)return this.$L;var h=this.clone(),p=C(u,_,!0);return p&&(h.$L=p),h},f.clone=function(){return w.w(this.$d,this)},f.toDate=function(){return new Date(this.valueOf())},f.toJSON=function(){return this.isValid()?this.toISOString():null},f.toISOString=function(){return this.$d.toISOString()},f.toString=function(){return this.$d.toUTCString()},M}(),I=P.prototype;return O.prototype=I,[["$ms",s],["$s",t],["$m",i],["$H",o],["$W",c],["$M",m],["$y",k],["$D",L]].forEach(function(M){I[M[1]]=function(f){return this.$g(f,M[0],M[1])}}),O.extend=function(M,f){return M.$i||(M(f,P,O),M.$i=!0),O},O.locale=C,O.isDayjs=J,O.unix=function(M){return O(1e3*M)},O.en=z[A],O.Ls=z,O.p={},O})}(F)),F.exports}var It=X(),S=B(It),rt={exports:{}},Et=rt.exports,Lt;function Rt(){return Lt||(Lt=1,function(l,r){(function(e,n){l.exports=n()})(Et,function(){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"},n=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,s=/\d\d/,t=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,o={},c=function(Y){return(Y=+Y)+(Y>68?1900:2e3)},d=function(Y){return function(v){this[Y]=+v}},m=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(v){if(!v||v==="Z")return 0;var x=v.match(/([+-]|\d\d)/g),H=60*x[1]+(+x[2]||0);return H===0?0:x[0]==="+"?-H:H}(Y)}],g=function(Y){var v=o[Y];return v&&(v.indexOf?v:v.s.concat(v.f))},k=function(Y,v){var x,H=o.meridiem;if(H){for(var R=1;R<=24;R+=1)if(Y.indexOf(H(R,0,v))>-1){x=R>12;break}}else x=Y===(v?"pm":"PM");return x},L={A:[i,function(Y){this.afternoon=k(Y,!1)}],a:[i,function(Y){this.afternoon=k(Y,!0)}],Q:[a,function(Y){this.month=3*(Y-1)+1}],S:[a,function(Y){this.milliseconds=100*+Y}],SS:[s,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[t,d("seconds")],ss:[t,d("seconds")],m:[t,d("minutes")],mm:[t,d("minutes")],H:[t,d("hours")],h:[t,d("hours")],HH:[t,d("hours")],hh:[t,d("hours")],D:[t,d("day")],DD:[s,d("day")],Do:[i,function(Y){var v=o.ordinal,x=Y.match(/\d+/);if(this.day=x[0],v)for(var H=1;H<=31;H+=1)v(H).replace(/\[|\]/g,"")===Y&&(this.day=H)}],w:[t,d("week")],ww:[s,d("week")],M:[t,d("month")],MM:[s,d("month")],MMM:[i,function(Y){var v=g("months"),x=(g("monthsShort")||v.map(function(H){return H.slice(0,3)})).indexOf(Y)+1;if(x<1)throw new Error;this.month=x%12||x}],MMMM:[i,function(Y){var v=g("months").indexOf(Y)+1;if(v<1)throw new Error;this.month=v%12||v}],Y:[/[+-]?\d+/,d("year")],YY:[s,function(Y){this.year=c(Y)}],YYYY:[/\d{4}/,d("year")],Z:m,ZZ:m};function q(Y){var v,x;v=Y,x=o&&o.formats;for(var H=(Y=v.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(O,w,P){var I=P&&P.toUpperCase();return w||x[P]||e[P]||x[I].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(M,f,u){return f||u.slice(1)})})).match(n),R=H.length,A=0;A<R;A+=1){var z=H[A],N=L[z],J=N&&N[0],C=N&&N[1];H[A]=C?{regex:J,parser:C}:z.replace(/^\[|\]$/g,"")}return function(O){for(var w={},P=0,I=0;P<R;P+=1){var M=H[P];if(typeof M=="string")I+=M.length;else{var f=M.regex,u=M.parser,_=O.slice(I),h=f.exec(_)[0];u.call(w,h),O=O.replace(h,"")}}return function(p){var D=p.afternoon;if(D!==void 0){var $=p.hours;D?$<12&&(p.hours+=12):$===12&&(p.hours=0),delete p.afternoon}}(w),w}}return function(Y,v,x){x.p.customParseFormat=!0,Y&&Y.parseTwoDigitYear&&(c=Y.parseTwoDigitYear);var H=v.prototype,R=H.parse;H.parse=function(A){var z=A.date,N=A.utc,J=A.args;this.$u=N;var C=J[1];if(typeof C=="string"){var O=J[2]===!0,w=J[3]===!0,P=O||w,I=J[2];w&&(I=J[2]),o=this.$locale(),!O&&I&&(o=x.Ls[I]),this.$d=function(_,h,p,D){try{if(["x","X"].indexOf(h)>-1)return new Date((h==="X"?1e3:1)*_);var $=q(h)(_),b=$.year,T=$.month,j=$.day,E=$.hours,G=$.minutes,U=$.seconds,tt=$.milliseconds,Z=$.zone,W=$.week,Q=new Date,V=j||(b||T?1:Q.getDate()),K=b||Q.getFullYear(),mt=0;b&&!T||(mt=T>0?T-1:Q.getMonth());var Mt,Yt=E||0,pt=G||0,yt=U||0,Dt=tt||0;return Z?new Date(Date.UTC(K,mt,V,Yt,pt,yt,Dt+60*Z.offset*1e3)):p?new Date(Date.UTC(K,mt,V,Yt,pt,yt,Dt)):(Mt=new Date(K,mt,V,Yt,pt,yt,Dt),W&&(Mt=D(Mt).week(W).toDate()),Mt)}catch{return new Date("")}}(z,C,N,x),this.init(),I&&I!==!0&&(this.$L=this.locale(I).$L),P&&z!=this.format(C)&&(this.$d=new Date("")),o={}}else if(C instanceof Array)for(var M=C.length,f=1;f<=M;f+=1){J[1]=C[f-1];var u=x.apply(this,J);if(u.isValid()){this.$d=u.$d,this.$L=u.$L,this.init();break}f===M&&(this.$d=new Date(""))}else R.call(this,A)}}})}(rt)),rt.exports}var zt=Rt(),Jt=B(zt),nt={exports:{}},Ft=nt.exports,$t;function Qt(){return $t||($t=1,function(l,r){(function(e,n){l.exports=n()})(Ft,function(){var e="month",n="quarter";return function(a,s){var t=s.prototype;t.quarter=function(c){return this.$utils().u(c)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(c-1))};var i=t.add;t.add=function(c,d){return c=Number(c),this.$utils().p(d)===n?this.add(3*c,e):i.bind(this)(c,d)};var o=t.startOf;t.startOf=function(c,d){var m=this.$utils(),g=!!m.u(d)||d;if(m.p(c)===n){var k=this.quarter()-1;return g?this.month(3*k).startOf(e).startOf("day"):this.month(3*k+2).endOf(e).endOf("day")}return o.bind(this)(c,d)}}})}(nt)),nt.exports}var Bt=Qt(),Nt=B(Bt),st={exports:{}},Zt=st.exports,wt;function Xt(){return wt||(wt=1,function(l,r){(function(e,n){l.exports=n()})(Zt,function(){var e="day";return function(n,a,s){var t=function(c){return c.add(4-c.isoWeekday(),e)},i=a.prototype;i.isoWeekYear=function(){return t(this).year()},i.isoWeek=function(c){if(!this.$utils().u(c))return this.add(7*(c-this.isoWeek()),e);var d,m,g,k,L=t(this),q=(d=this.isoWeekYear(),m=this.$u,g=(m?s.utc:s)().year(d).startOf("year"),k=4-g.isoWeekday(),g.isoWeekday()>4&&(k+=7),g.add(k,e));return L.diff(q,"week")+1},i.isoWeekday=function(c){return this.$utils().u(c)?this.day()||7:this.day(this.day()%7?c:c-7)};var o=i.startOf;i.startOf=function(c,d){var m=this.$utils(),g=!!m.u(d)||d;return m.p(c)==="isoweek"?g?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):o.bind(this)(c,d)}}})}(st)),st.exports}var Ut=Xt(),St=B(Ut),at={exports:{}},Vt=at.exports,kt;function Gt(){return kt||(kt=1,function(l,r){(function(e,n){l.exports=n()})(Vt,function(){return function(e,n,a){n.prototype.isBetween=function(s,t,i,o){var c=a(s),d=a(t),m=(o=o||"()")[0]==="(",g=o[1]===")";return(m?this.isAfter(c,i):!this.isBefore(c,i))&&(g?this.isBefore(d,i):!this.isAfter(d,i))||(m?this.isBefore(c,i):!this.isAfter(c,i))&&(g?this.isAfter(d,i):!this.isBefore(d,i))}}})}(at)),at.exports}Gt();var it={exports:{}},Kt=it.exports,xt;function te(){return xt||(xt=1,function(l,r){(function(e,n){l.exports=n(X())})(Kt,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(t,i){return i==="W"?t+"周":t+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(t,i){var o=100*t+i;return o<600?"凌晨":o<900?"早上":o<1100?"上午":o<1300?"中午":o<1800?"下午":"晚上"}};return a.default.locale(s,null,!0),s})}(it)),it.exports}te();var ot={exports:{}},ee=ot.exports,gt;function re(){return gt||(gt=1,function(l,r){(function(e,n){l.exports=n(X())})(ee,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"zh-tw",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(t,i){return i==="W"?t+"週":t+"日"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"},meridiem:function(t,i){var o=100*t+i;return o<600?"凌晨":o<900?"早上":o<1100?"上午":o<1300?"中午":o<1800?"下午":"晚上"}};return a.default.locale(s,null,!0),s})}(ot)),ot.exports}re();var ut={exports:{}},ne=ut.exports,Ht;function se(){return Ht||(Ht=1,function(l,r){(function(e,n){l.exports=n()})(ne,function(){return{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(e){var n=["th","st","nd","rd"],a=e%100;return"["+e+(n[(a-20)%10]||n[a]||n[0])+"]"}}})}(ut)),ut.exports}se();var ct={exports:{}},ae=ct.exports,Ot;function ie(){return Ot||(Ot=1,function(l,r){(function(e,n){l.exports=n(X())})(ae,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"ja",weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(t){return t+"日"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiem:function(t){return t<12?"午前":"午後"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}};return a.default.locale(s,null,!0),s})}(ct)),ct.exports}ie();var dt={exports:{}},oe=dt.exports,bt;function ue(){return bt||(bt=1,function(l,r){(function(e,n){l.exports=n(X())})(oe,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"ko",weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),ordinal:function(t){return t+"일"},formats:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},meridiem:function(t){return t<12?"오전":"오후"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"}};return a.default.locale(s,null,!0),s})}(dt)),dt.exports}ue();var ft={exports:{}},ce=ft.exports,Tt;function de(){return Tt||(Tt=1,function(l,r){(function(e,n){l.exports=n(X())})(ce,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"fr",weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(t){return""+t+(t===1?"er":"")}};return a.default.locale(s,null,!0),s})}(ft)),ft.exports}de();var ht={exports:{}},fe=ht.exports,qt;function he(){return qt||(qt=1,function(l,r){(function(e,n){l.exports=n(X())})(fe,function(e){function n(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var a=n(e),s={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function t(o,c,d){var m=s[d];return Array.isArray(m)&&(m=m[c?0:1]),m.replace("%d",o)}var i={name:"de",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.".split("_"),ordinal:function(o){return o+"."},weekStart:1,yearStart:4,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t}};return a.default.locale(i,null,!0),i})}(ht)),ht.exports}he();var lt={exports:{}},le=lt.exports,jt;function _e(){return jt||(jt=1,function(l,r){(function(e,n){l.exports=n(X())})(le,function(e){function n(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var a=n(e),s={name:"es",monthsShort:"ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:function(t){return t+"º"}};return a.default.locale(s,null,!0),s})}(lt)),lt.exports}_e();var _t={exports:{}},me=_t.exports,Wt;function Me(){return Wt||(Wt=1,function(l,r){(function(e,n){l.exports=n(X())})(me,function(e){function n(L){return L&&typeof L=="object"&&"default"in L?L:{default:L}}var a=n(e),s="января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),t="январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),i="янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),o="янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_"),c=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function d(L,q,Y){var v,x;return Y==="m"?q?"минута":"минуту":L+" "+(v=+L,x={mm:q?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[Y].split("_"),v%10==1&&v%100!=11?x[0]:v%10>=2&&v%10<=4&&(v%100<10||v%100>=20)?x[1]:x[2])}var m=function(L,q){return c.test(q)?s[L.month()]:t[L.month()]};m.s=t,m.f=s;var g=function(L,q){return c.test(q)?i[L.month()]:o[L.month()]};g.s=o,g.f=i;var k={name:"ru",weekdays:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),weekdaysShort:"вск_пнд_втр_срд_чтв_птн_сбт".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),months:m,monthsShort:g,weekStart:1,yearStart:4,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:d,mm:d,h:"час",hh:d,d:"день",dd:d,M:"месяц",MM:d,y:"год",yy:d},ordinal:function(L){return L},meridiem:function(L){return L<4?"ночи":L<12?"утра":L<17?"дня":"вечера"}};return a.default.locale(k,null,!0),k})}(_t)),_t.exports}Me(),S.extend(Jt),S.extend(Nt),S.extend(St),S.extend(St);const At={"zh-CN":"zh-cn","zh-TW":"zh-tw","en-US":"en","ja-JP":"ja","ko-KR":"ko","fr-FR":"fr","de-DE":"de","es-ES":"es","ru-RU":"ru"};class y{static setLocale(r){this.currentLocale=r,S.locale(At[r]||"en")}static getLocale(){return this.currentLocale}static getDayjsLocale(){return At[this.currentLocale]||"en"}static create(r){return S(r).locale(this.getDayjsLocale())}static clone(r){return S(r).clone()}static locale(r,e){return r.locale(e)}static now(){return S().locale(this.getDayjsLocale())}static format(r,e){return S(r).locale(this.getDayjsLocale()).format(e)}static diff(r,e,n){return S(r).diff(S(e),n)}static add(r,e,n){return S(r).add(e,n)}static subtract(r,e,n){return S(r).subtract(e,n)}static startOf(r,e){return S(r).startOf(e)}static endOf(r,e){return S(r).endOf(e)}static isBetween(r,e,n){return S(r).isBetween(S(e),S(n))}static isBefore(r,e){return S(r).isBefore(e)}static isAfter(r,e){return S(r).isAfter(e)}static isSame(r,e,n){return S(r).isSame(e,n)}static year(r){return S(r).year()}static month(r){return S(r).month()}static quarter(r){return S(r).quarter()}static hour(r){return S(r).hour()}static minute(r){return S(r).minute()}static second(r){return S(r).second()}static date(r){return S(r).date()}static day(r){return S(r).day()}static getWeekNames(){return Array.from({length:7},(r,e)=>this.now().day(e+1).locale(this.getDayjsLocale()).format("dd"))}static getMonthName(r){return this.now().month(r-1).locale(this.getDayjsLocale()).format("MMMM")}static calcQuarterPosition(r){const{start:e,taskStart:n,taskEnd:a,scale:s}=r,t=this.startOf(e,"quarter"),i=this.startOf(n,"quarter"),o=this.startOf(a,"quarter"),c=(i.year()-t.year())*4+(i.quarter()-t.quarter()),d=s*c,m=(o.year()-i.year())*4+(o.quarter()-i.quarter())+1;return{dataX:d,width:m*s,takestime:`${m}个季度`}}static calcMonthPosition(r){const{start:e,taskStart:n,taskEnd:a,scale:s}=r,t=this.startOf(e,"month"),i=this.startOf(n,"month"),o=this.startOf(a,"month"),c=(i.year()-t.year())*12+(i.month()-t.month()),d=s*c,m=(o.year()-i.year())*12+(o.month()-i.month())+1;return{dataX:d,width:m*s,takestime:`${m}个月`}}static calcDayPosition(r){const{start:e,taskStart:n,taskEnd:a,scale:s,isHalfDay:t=!1}=r,i=t?2:1,o=this.diff(n,e,"days");let c,d;if(t){const g=this.create(n).hour(),k=this.create(a).hour(),L=g<12,q=k<12,Y=L?0:1,v=q?0:1;c=s*(o*2+Y);const H=this.diff(a,e,"days")*2+v,R=o*2+Y;d=(H-R+1)*s}else c=s*o*i,d=(this.diff(a,n,"days")+1)*s*i;const m=this.diff(a,n,"days")+1;return{dataX:c,width:d,takestime:`${m}天`}}static calcWeekPosition(r){const{start:e,taskStart:n,taskEnd:a,scale:s}=r,t=this.startOf(e,"isoWeek"),i=this.startOf(n,"isoWeek"),o=i.diff(t,"week"),c=s*o,m=this.startOf(a,"isoWeek").diff(i,"week")+1;return{dataX:c,width:m*s,takestime:`${m}周`}}static calcHourPosition(r){const{start:e,taskStart:n,taskEnd:a,scale:s,minuteInterval:t=60}=r;if(t<60){const i=this.diff(n,e,"minutes"),o=Math.floor(i/t),c=s*o,d=this.diff(a,n,"minutes")+t,g=Math.ceil(d/t)*s,k=Math.floor(d/60),L=d%60;let q="";return k>0&&L>0?q=`${k}小时${L}分钟`:k>0?q=`${k}小时`:q=`${L}分钟`,{dataX:c,width:g,takestime:q}}else{const i=this.diff(n,e,"hours"),o=s*i,c=this.diff(a,n,"hours")+1;return{dataX:o,width:c*s,takestime:`${c}小时`}}}static calcPositionByMode(r,e){switch(r){case"季度":return this.calcQuarterPosition(e);case"月":return this.calcMonthPosition(e);case"周":return this.calcWeekPosition(e);case"日":return this.calcDayPosition(e);case"时":return this.calcHourPosition(e);default:return null}}static batchFormatDates(r,e){return r.map(n=>{try{return this.format(n,e)}catch{return n}})}static batchCalcDates(r){return r.map(e=>{try{switch(e.type){case"add":return this.add(e.date,e.amount||0,e.unit||"day").format("YYYY-MM-DD HH:mm:ss");case"subtract":return this.subtract(e.date,e.amount||0,e.unit||"day").format("YYYY-MM-DD HH:mm:ss");case"diff":return this.diff(e.date,e.date2||"",e.unit||"day");default:return null}}catch{return null}})}static differenceInDays(r,e){const n=S(r),a=S(e);return n.diff(a,"day")}static addDays(r,e){return S(r).add(e,"day").format("YYYY-MM-DD")}static parseISO(r){return S(r)}static formatDate(r,e){return S(r).format(e)}}Ct(y,"currentLocale","zh-CN"),y.differenceInDays,y.addDays,y.parseISO,y.formatDate,y.diff;function Pt(l,r,e,n,a=[]){const s=r.filter(t=>t[n.parentId]===l);if(s&&s.length>0){e++;for(let t=0;t<s.length;t++){s[t].treeLevel=e,s[t].index=t+1;const i=a.filter(o=>o[n.id]===s[t][n.parentId]);if(i&&i.length>0){let o=i[0].index+"."+s[t].index,c=i[0];for(;c[n.parentId]!=="0";){const d=a.find(m=>m[n.id]===c[n.parentId]);if(d)o=d.index+"."+o,c=d;else break}s[t].no=o}else s[t].no=t+1+"";a.push(s[t]),Pt(s[t][n.id],r,e,n,a)}}return a}function Ye(l,r,e,n,a,s,t){return l.map(o=>{const c=o[a.startDate],d=o[a.endDate];if(!c||!d)return{id:o[a.id],position:null};const m=pe(r,c,d,e,n,s,t);return{id:o[a.id],position:m}})}function pe(l,r,e,n,a,s,t){try{switch(n){case"季度":return ye(l,r,e,a);case"月":return De(l,r,e,a);case"周":return ve(l,r,e,a);case"日":return Le(l,r,e,a,s==="half");case"时":const i=parseInt(t||"60");return $e(l,r,e,a,i);default:return null}}catch(i){return console.error("Error calculating position:",i),null}}function ye(l,r,e,n){const a=y.startOf(l,"quarter"),s=y.startOf(r,"quarter"),t=y.startOf(e,"quarter"),i=(y.year(s)-y.year(a))*4+(y.quarter(s)-y.quarter(a)),o=n*i,c=(y.year(t)-y.year(s))*4+(y.quarter(t)-y.quarter(s))+1;return{dataX:o,width:c*n}}function De(l,r,e,n){const a=y.startOf(l,"month"),s=y.startOf(r,"month"),t=y.startOf(e,"month"),i=(y.year(s)-y.year(a))*12+(y.month(s)-y.month(a)),o=n*i,c=(y.year(t)-y.year(s))*12+(y.month(t)-y.month(s))+1;return{dataX:o,width:c*n}}function ve(l,r,e,n){const a=y.startOf(l,"isoWeek"),s=y.startOf(r,"isoWeek"),t=y.diff(s,a,"week"),i=n*t,o=y.startOf(e,"isoWeek"),c=y.diff(o,s,"week")+1;return{dataX:i,width:c*n}}function Le(l,r,e,n,a){const s=a?2:1,t=y.diff(r,l,"days");let i,o;if(a){const c=y.hour(r),d=y.hour(e),m=c<12,g=d<12,k=m?0:1,L=g?0:1;i=n*(t*2+k);const Y=y.diff(e,l,"days")*2+L,v=t*2+k;o=(Y-v+1)*n}else i=n*t*s,o=(y.diff(e,r,"days")+1)*n*s;return{dataX:i,width:o}}function $e(l,r,e,n,a){if(a<60){const s=y.diff(r,l,"minutes"),t=Math.floor(s/a),i=n*t,o=y.diff(e,r,"minutes")+a,d=Math.ceil(o/a)*n;return{dataX:i,width:d}}else{const s=y.diff(r,l,"hours"),t=n*s,i=y.diff(e,r,"hours")+1;return{dataX:t,width:i*n}}}function we(l,r){return l.map(e=>{try{return y.format(e,r)}catch{return e}})}function Se(l){return l.map(r=>{try{switch(r.type){case"add":return y.format(y.add(r.date,r.amount||0,r.unit),"YYYY-MM-DD HH:mm:ss");case"subtract":return y.format(y.subtract(r.date,r.amount||0,r.unit),"YYYY-MM-DD HH:mm:ss");case"diff":return y.diff(r.date,r.date2,r.unit);default:return null}}catch{return null}})}self.onmessage=l=>{const{type:r,payload:e,id:n}=l.data;try{let a;switch(r){case"PROCESS_RECURSION_DATA":a=Pt(e.id,e.tasks,e.level,e.mapFields,[]);break;case"CALC_BAR_POSITIONS":a=Ye(e.tasks,e.startGanttDate,e.mode,e.scale,e.mapFields,e.daySubMode,e.hourSubMode);break;case"FORMAT_DATES":a=we(e.dates,e.format);break;case"CALC_DATES":a=Se(e.operations);break;default:throw new Error(`Unknown message type: ${r}`)}const s={type:r,payload:a,id:n};self.postMessage(s)}catch(a){const s={type:r,payload:null,id:n,error:a instanceof Error?a.message:"Unknown error"};self.postMessage(s)}}})();
|
|
2
|
+
//# sourceMappingURL=dataProcessor.worker-S1OnF-y_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataProcessor.worker-S1OnF-y_.js","sources":["../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/customParseFormat.js","../node_modules/dayjs/plugin/quarterOfYear.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/isBetween.js","../node_modules/dayjs/locale/zh-cn.js","../node_modules/dayjs/locale/zh-tw.js","../node_modules/dayjs/locale/en.js","../node_modules/dayjs/locale/ja.js","../node_modules/dayjs/locale/ko.js","../node_modules/dayjs/locale/fr.js","../node_modules/dayjs/locale/de.js","../node_modules/dayjs/locale/es.js","../node_modules/dayjs/locale/ru.js","../src/components/gantt/utils/dateUtils.ts","../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_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)}}}));","!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_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(e,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isBetween=i()}(this,(function(){\"use strict\";return function(e,i,t){i.prototype.isBetween=function(e,i,s,f){var n=t(e),o=t(i),r=\"(\"===(f=f||\"()\")[0],u=\")\"===f[1];return(r?this.isAfter(n,s):!this.isBefore(n,s))&&(u?this.isBefore(o,s):!this.isAfter(o,s))||(r?this.isBefore(n,s):!this.isAfter(n,s))&&(u?this.isAfter(o,s):!this.isBefore(o,s))}}}));","!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_zh_cn=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"zh-cn\",weekdays:\"星期日_星期一_星期二_星期三_星期四_星期五_星期六\".split(\"_\"),weekdaysShort:\"周日_周一_周二_周三_周四_周五_周六\".split(\"_\"),weekdaysMin:\"日_一_二_三_四_五_六\".split(\"_\"),months:\"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月\".split(\"_\"),monthsShort:\"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月\".split(\"_\"),ordinal:function(e,_){return\"W\"===_?e+\"周\":e+\"日\"},weekStart:1,yearStart:4,formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"YYYY/MM/DD\",LL:\"YYYY年M月D日\",LLL:\"YYYY年M月D日Ah点mm分\",LLLL:\"YYYY年M月D日ddddAh点mm分\",l:\"YYYY/M/D\",ll:\"YYYY年M月D日\",lll:\"YYYY年M月D日 HH:mm\",llll:\"YYYY年M月D日dddd HH:mm\"},relativeTime:{future:\"%s内\",past:\"%s前\",s:\"几秒\",m:\"1 分钟\",mm:\"%d 分钟\",h:\"1 小时\",hh:\"%d 小时\",d:\"1 天\",dd:\"%d 天\",M:\"1 个月\",MM:\"%d 个月\",y:\"1 年\",yy:\"%d 年\"},meridiem:function(e,_){var t=100*e+_;return t<600?\"凌晨\":t<900?\"早上\":t<1100?\"上午\":t<1300?\"中午\":t<1800?\"下午\":\"晚上\"}};return t.default.locale(d,null,!0),d}));","!function(_,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],e):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_zh_tw=e(_.dayjs)}(this,(function(_){\"use strict\";function e(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var t=e(_),d={name:\"zh-tw\",weekdays:\"星期日_星期一_星期二_星期三_星期四_星期五_星期六\".split(\"_\"),weekdaysShort:\"週日_週一_週二_週三_週四_週五_週六\".split(\"_\"),weekdaysMin:\"日_一_二_三_四_五_六\".split(\"_\"),months:\"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月\".split(\"_\"),monthsShort:\"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月\".split(\"_\"),ordinal:function(_,e){return\"W\"===e?_+\"週\":_+\"日\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"YYYY/MM/DD\",LL:\"YYYY年M月D日\",LLL:\"YYYY年M月D日 HH:mm\",LLLL:\"YYYY年M月D日dddd HH:mm\",l:\"YYYY/M/D\",ll:\"YYYY年M月D日\",lll:\"YYYY年M月D日 HH:mm\",llll:\"YYYY年M月D日dddd HH:mm\"},relativeTime:{future:\"%s內\",past:\"%s前\",s:\"幾秒\",m:\"1 分鐘\",mm:\"%d 分鐘\",h:\"1 小時\",hh:\"%d 小時\",d:\"1 天\",dd:\"%d 天\",M:\"1 個月\",MM:\"%d 個月\",y:\"1 年\",yy:\"%d 年\"},meridiem:function(_,e){var t=100*_+e;return t<600?\"凌晨\":t<900?\"早上\":t<1100?\"上午\":t<1300?\"中午\":t<1800?\"下午\":\"晚上\"}};return t.default.locale(d,null,!0),d}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_en=n()}(this,(function(){\"use strict\";return{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(e){var n=[\"th\",\"st\",\"nd\",\"rd\"],t=e%100;return\"[\"+e+(n[(t-20)%10]||n[t]||n[0])+\"]\"}}}));","!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ja=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"ja\",weekdays:\"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日\".split(\"_\"),weekdaysShort:\"日_月_火_水_木_金_土\".split(\"_\"),weekdaysMin:\"日_月_火_水_木_金_土\".split(\"_\"),months:\"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月\".split(\"_\"),monthsShort:\"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月\".split(\"_\"),ordinal:function(e){return e+\"日\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"YYYY/MM/DD\",LL:\"YYYY年M月D日\",LLL:\"YYYY年M月D日 HH:mm\",LLLL:\"YYYY年M月D日 dddd HH:mm\",l:\"YYYY/MM/DD\",ll:\"YYYY年M月D日\",lll:\"YYYY年M月D日 HH:mm\",llll:\"YYYY年M月D日(ddd) HH:mm\"},meridiem:function(e){return e<12?\"午前\":\"午後\"},relativeTime:{future:\"%s後\",past:\"%s前\",s:\"数秒\",m:\"1分\",mm:\"%d分\",h:\"1時間\",hh:\"%d時間\",d:\"1日\",dd:\"%d日\",M:\"1ヶ月\",MM:\"%dヶ月\",y:\"1年\",yy:\"%d年\"}};return t.default.locale(d,null,!0),d}));","!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_ko=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var d=_(e),t={name:\"ko\",weekdays:\"일요일_월요일_화요일_수요일_목요일_금요일_토요일\".split(\"_\"),weekdaysShort:\"일_월_화_수_목_금_토\".split(\"_\"),weekdaysMin:\"일_월_화_수_목_금_토\".split(\"_\"),months:\"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월\".split(\"_\"),monthsShort:\"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월\".split(\"_\"),ordinal:function(e){return e+\"일\"},formats:{LT:\"A h:mm\",LTS:\"A h:mm:ss\",L:\"YYYY.MM.DD.\",LL:\"YYYY년 MMMM D일\",LLL:\"YYYY년 MMMM D일 A h:mm\",LLLL:\"YYYY년 MMMM D일 dddd A h:mm\",l:\"YYYY.MM.DD.\",ll:\"YYYY년 MMMM D일\",lll:\"YYYY년 MMMM D일 A h:mm\",llll:\"YYYY년 MMMM D일 dddd A h:mm\"},meridiem:function(e){return e<12?\"오전\":\"오후\"},relativeTime:{future:\"%s 후\",past:\"%s 전\",s:\"몇 초\",m:\"1분\",mm:\"%d분\",h:\"한 시간\",hh:\"%d시간\",d:\"하루\",dd:\"%d일\",M:\"한 달\",MM:\"%d달\",y:\"일 년\",yy:\"%d년\"}};return d.default.locale(t,null,!0),t}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_fr=n(e.dayjs)}(this,(function(e){\"use strict\";function n(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=n(e),i={name:\"fr\",weekdays:\"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi\".split(\"_\"),weekdaysShort:\"dim._lun._mar._mer._jeu._ven._sam.\".split(\"_\"),weekdaysMin:\"di_lu_ma_me_je_ve_sa\".split(\"_\"),months:\"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre\".split(\"_\"),monthsShort:\"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.\".split(\"_\"),weekStart:1,yearStart:4,formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd D MMMM YYYY HH:mm\"},relativeTime:{future:\"dans %s\",past:\"il y a %s\",s:\"quelques secondes\",m:\"une minute\",mm:\"%d minutes\",h:\"une heure\",hh:\"%d heures\",d:\"un jour\",dd:\"%d jours\",M:\"un mois\",MM:\"%d mois\",y:\"un an\",yy:\"%d ans\"},ordinal:function(e){return\"\"+e+(1===e?\"er\":\"\")}};return t.default.locale(i,null,!0),i}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_de=n(e.dayjs)}(this,(function(e){\"use strict\";function n(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=n(e),a={s:\"ein paar Sekunden\",m:[\"eine Minute\",\"einer Minute\"],mm:\"%d Minuten\",h:[\"eine Stunde\",\"einer Stunde\"],hh:\"%d Stunden\",d:[\"ein Tag\",\"einem Tag\"],dd:[\"%d Tage\",\"%d Tagen\"],M:[\"ein Monat\",\"einem Monat\"],MM:[\"%d Monate\",\"%d Monaten\"],y:[\"ein Jahr\",\"einem Jahr\"],yy:[\"%d Jahre\",\"%d Jahren\"]};function i(e,n,t){var i=a[t];return Array.isArray(i)&&(i=i[n?0:1]),i.replace(\"%d\",e)}var r={name:\"de\",weekdays:\"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag\".split(\"_\"),weekdaysShort:\"So._Mo._Di._Mi._Do._Fr._Sa.\".split(\"_\"),weekdaysMin:\"So_Mo_Di_Mi_Do_Fr_Sa\".split(\"_\"),months:\"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember\".split(\"_\"),monthsShort:\"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.\".split(\"_\"),ordinal:function(e){return e+\".\"},weekStart:1,yearStart:4,formats:{LTS:\"HH:mm:ss\",LT:\"HH:mm\",L:\"DD.MM.YYYY\",LL:\"D. MMMM YYYY\",LLL:\"D. MMMM YYYY HH:mm\",LLLL:\"dddd, D. MMMM YYYY HH:mm\"},relativeTime:{future:\"in %s\",past:\"vor %s\",s:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i}};return t.default.locale(r,null,!0),r}));","!function(e,o){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=o(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],o):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_es=o(e.dayjs)}(this,(function(e){\"use strict\";function o(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var s=o(e),d={name:\"es\",monthsShort:\"ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic\".split(\"_\"),weekdays:\"domingo_lunes_martes_miércoles_jueves_viernes_sábado\".split(\"_\"),weekdaysShort:\"dom._lun._mar._mié._jue._vie._sáb.\".split(\"_\"),weekdaysMin:\"do_lu_ma_mi_ju_vi_sá\".split(\"_\"),months:\"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre\".split(\"_\"),weekStart:1,formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D [de] MMMM [de] YYYY\",LLL:\"D [de] MMMM [de] YYYY H:mm\",LLLL:\"dddd, D [de] MMMM [de] YYYY H:mm\"},relativeTime:{future:\"en %s\",past:\"hace %s\",s:\"unos segundos\",m:\"un minuto\",mm:\"%d minutos\",h:\"una hora\",hh:\"%d horas\",d:\"un día\",dd:\"%d días\",M:\"un mes\",MM:\"%d meses\",y:\"un año\",yy:\"%d años\"},ordinal:function(e){return e+\"º\"}};return s.default.locale(d,null,!0),d}));","!function(_,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],t):(_=\"undefined\"!=typeof globalThis?globalThis:_||self).dayjs_locale_ru=t(_.dayjs)}(this,(function(_){\"use strict\";function t(_){return _&&\"object\"==typeof _&&\"default\"in _?_:{default:_}}var e=t(_),n=\"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря\".split(\"_\"),s=\"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь\".split(\"_\"),r=\"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.\".split(\"_\"),o=\"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.\".split(\"_\"),i=/D[oD]?(\\[[^[\\]]*\\]|\\s)+MMMM?/;function d(_,t,e){var n,s;return\"m\"===e?t?\"минута\":\"минуту\":_+\" \"+(n=+_,s={mm:t?\"минута_минуты_минут\":\"минуту_минуты_минут\",hh:\"час_часа_часов\",dd:\"день_дня_дней\",MM:\"месяц_месяца_месяцев\",yy:\"год_года_лет\"}[e].split(\"_\"),n%10==1&&n%100!=11?s[0]:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?s[1]:s[2])}var u=function(_,t){return i.test(t)?n[_.month()]:s[_.month()]};u.s=s,u.f=n;var a=function(_,t){return i.test(t)?r[_.month()]:o[_.month()]};a.s=o,a.f=r;var m={name:\"ru\",weekdays:\"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота\".split(\"_\"),weekdaysShort:\"вск_пнд_втр_срд_чтв_птн_сбт\".split(\"_\"),weekdaysMin:\"вс_пн_вт_ср_чт_пт_сб\".split(\"_\"),months:u,monthsShort:a,weekStart:1,yearStart:4,formats:{LT:\"H:mm\",LTS:\"H:mm:ss\",L:\"DD.MM.YYYY\",LL:\"D MMMM YYYY г.\",LLL:\"D MMMM YYYY г., H:mm\",LLLL:\"dddd, D MMMM YYYY г., H:mm\"},relativeTime:{future:\"через %s\",past:\"%s назад\",s:\"несколько секунд\",m:d,mm:d,h:\"час\",hh:d,d:\"день\",dd:d,M:\"месяц\",MM:d,y:\"год\",yy:d},ordinal:function(_){return _},meridiem:function(_){return _<4?\"ночи\":_<12?\"утра\":_<17?\"дня\":\"вечера\"}};return e.default.locale(m,null,!0),m}));","import dayjs from 'dayjs'\r\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\r\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear'\r\nimport isoWeek from 'dayjs/plugin/isoWeek'\r\nimport isBetween from 'dayjs/plugin/isBetween'\r\nimport 'dayjs/locale/zh-cn'\r\nimport 'dayjs/locale/zh-tw'\r\nimport 'dayjs/locale/en'\r\nimport 'dayjs/locale/ja'\r\nimport 'dayjs/locale/ko'\r\nimport 'dayjs/locale/fr'\r\nimport 'dayjs/locale/de'\r\nimport 'dayjs/locale/es'\r\nimport 'dayjs/locale/ru'\r\n\r\ndayjs.extend(customParseFormat)\r\ndayjs.extend(quarterOfYear)\r\ndayjs.extend(isoWeek)\r\ndayjs.extend(isoWeek)\r\n\r\nexport type LocaleType = 'zh-CN' | 'zh-TW' | 'en-US' | 'ja-JP' | 'ko-KR' | 'fr-FR' | 'de-DE' | 'es-ES' | 'ru-RU'\r\n\r\nconst localeMap: Record<LocaleType, string> = {\r\n 'zh-CN': 'zh-cn',\r\n 'zh-TW': 'zh-tw',\r\n 'en-US': 'en',\r\n 'ja-JP': 'ja',\r\n 'ko-KR': 'ko',\r\n 'fr-FR': 'fr',\r\n 'de-DE': 'de',\r\n 'es-ES': 'es',\r\n 'ru-RU': 'ru',\r\n}\r\n\r\nexport interface DatePositionResult {\r\n dataX: number\r\n width: number\r\n takestime: string\r\n}\r\n\r\nexport interface DateCalcOptions {\r\n start: string\r\n taskStart: string\r\n taskEnd: string\r\n scale: number\r\n isHalfDay?: boolean\r\n minuteInterval?: number\r\n}\r\n\r\nexport class DateUtils {\r\n private static currentLocale: LocaleType = 'zh-CN'\r\n\r\n static setLocale(locale: LocaleType) {\r\n this.currentLocale = locale\r\n dayjs.locale(localeMap[locale] || 'en')\r\n }\r\n\r\n static getLocale(): LocaleType {\r\n return this.currentLocale\r\n }\r\n\r\n static getDayjsLocale(): string {\r\n return localeMap[this.currentLocale] || 'en'\r\n }\r\n\r\n static create(date?: string | Date | number) {\r\n return dayjs(date).locale(this.getDayjsLocale())\r\n }\r\n\r\n static clone(date: string | Date | dayjs.Dayjs): dayjs.Dayjs {\r\n return dayjs(date).clone()\r\n }\r\n\r\n static locale(date: dayjs.Dayjs, locale: string): dayjs.Dayjs {\r\n return date.locale(locale)\r\n }\r\n\r\n static now() {\r\n return dayjs().locale(this.getDayjsLocale())\r\n }\r\n\r\n static format(date: string | Date, formatStr: string): string {\r\n return dayjs(date).locale(this.getDayjsLocale()).format(formatStr)\r\n }\r\n\r\n static diff(date1: string | Date, date2: string | Date, unit: dayjs.ManipulateType | 'quarter' | 'isoWeek'): number {\r\n return dayjs(date1).diff(dayjs(date2), unit as dayjs.ManipulateType)\r\n }\r\n\r\n static add(date: string | Date, amount: number, unit: dayjs.ManipulateType | 'quarter' | 'isoWeek'): dayjs.Dayjs {\r\n return dayjs(date).add(amount, unit as dayjs.ManipulateType)\r\n }\r\n\r\n static subtract(date: string | Date, amount: number, unit: dayjs.ManipulateType | 'quarter' | 'isoWeek'): dayjs.Dayjs {\r\n return dayjs(date).subtract(amount, unit as dayjs.ManipulateType)\r\n }\r\n\r\n static startOf(date: string | Date, unit: dayjs.OpUnitType | 'quarter' | 'isoWeek'): dayjs.Dayjs {\r\n return dayjs(date).startOf(unit as dayjs.OpUnitType)\r\n }\r\n\r\n static endOf(date: string | Date, unit: dayjs.OpUnitType | 'quarter' | 'isoWeek'): dayjs.Dayjs {\r\n return dayjs(date).endOf(unit as dayjs.OpUnitType)\r\n }\r\n\r\n static isBetween(date: string | Date, date1: string | Date, date2: string | Date): boolean {\r\n return dayjs(date).isBetween(dayjs(date1), dayjs(date2))\r\n }\r\n\r\n static isBefore(date1: string | Date, date2: string | Date | dayjs.Dayjs): boolean {\r\n return dayjs(date1).isBefore(date2)\r\n }\r\n\r\n static isAfter(date1: string | Date, date2: string | Date): boolean {\r\n return dayjs(date1).isAfter(date2)\r\n }\r\n\r\n static isSame(date1: string | Date, date2: string | Date, unit?: dayjs.OpUnitType | 'quarter' | 'isoWeek'): boolean {\r\n return dayjs(date1).isSame(date2, unit as dayjs.OpUnitType)\r\n }\r\n\r\n static year(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).year()\r\n }\r\n\r\n static month(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).month()\r\n }\r\n\r\n static quarter(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).quarter()\r\n }\r\n\r\n static hour(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).hour()\r\n }\r\n\r\n static minute(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).minute()\r\n }\r\n\r\n static second(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).second()\r\n }\r\n\r\n static date(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).date()\r\n }\r\n\r\n static day(date: string | Date | dayjs.Dayjs): number {\r\n return dayjs(date).day()\r\n }\r\n\r\n static getWeekNames(): string[] {\r\n return Array.from({ length: 7 }, (_, i) =>\r\n this.now()\r\n .day(i + 1)\r\n .locale(this.getDayjsLocale())\r\n .format('dd')\r\n )\r\n }\r\n\r\n static getMonthName(month: number): string {\r\n return this.now()\r\n .month(month - 1)\r\n .locale(this.getDayjsLocale())\r\n .format('MMMM')\r\n }\r\n\r\n static calcQuarterPosition(options: DateCalcOptions): DatePositionResult {\r\n const { start, taskStart, taskEnd, scale } = options\r\n const ganttStartQuarter = this.startOf(start, 'quarter')\r\n const taskStartQuarter = this.startOf(taskStart, 'quarter')\r\n const taskEndQuarter = this.startOf(taskEnd, '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()) +\r\n 1\r\n\r\n return {\r\n dataX,\r\n width: spendQuarters * scale,\r\n takestime: `${spendQuarters}个季度`,\r\n }\r\n }\r\n\r\n static calcMonthPosition(options: DateCalcOptions): DatePositionResult {\r\n const { start, taskStart, taskEnd, scale } = options\r\n const ganttStartMonth = this.startOf(start, 'month')\r\n const taskStartMonth = this.startOf(taskStart, 'month')\r\n const taskEndMonth = this.startOf(taskEnd, '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()) +\r\n 1\r\n\r\n return {\r\n dataX,\r\n width: spendMonths * scale,\r\n takestime: `${spendMonths}个月`,\r\n }\r\n }\r\n\r\n static calcDayPosition(options: DateCalcOptions): DatePositionResult {\r\n const { start, taskStart, taskEnd, scale, isHalfDay = false } = options\r\n const cellsPerDay = isHalfDay ? 2 : 1\r\n const fromPlanStartDays = this.diff(taskStart, start, 'days')\r\n let dataX: number\r\n let width: number\r\n\r\n if (isHalfDay) {\r\n const startHour = this.create(taskStart).hour()\r\n const endHour = this.create(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 = this.diff(taskEnd, 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 = this.diff(taskEnd, taskStart, 'days') + 1\r\n width = spendDays * scale * cellsPerDay\r\n }\r\n\r\n const spendDays = this.diff(taskEnd, taskStart, 'days') + 1\r\n return { dataX, width, takestime: `${spendDays}天` }\r\n }\r\n\r\n static calcWeekPosition(options: DateCalcOptions): DatePositionResult {\r\n const { start, taskStart, taskEnd, scale } = options\r\n const startGanttWeek = this.startOf(start, 'isoWeek')\r\n const taskStartWeek = this.startOf(taskStart, 'isoWeek')\r\n const fromPlanStartWeeks = taskStartWeek.diff(startGanttWeek, 'week')\r\n const dataX = scale * fromPlanStartWeeks\r\n const taskEndWeek = this.startOf(taskEnd, 'isoWeek')\r\n const spendWeeks = taskEndWeek.diff(taskStartWeek, 'week') + 1\r\n\r\n return { dataX, width: spendWeeks * scale, takestime: `${spendWeeks}周` }\r\n }\r\n\r\n static calcHourPosition(options: DateCalcOptions): DatePositionResult {\r\n const { start, taskStart, taskEnd, scale, minuteInterval = 60 } = options\r\n\r\n if (minuteInterval < 60) {\r\n const fromPlanStartMinutes = this.diff(taskStart, start, 'minutes')\r\n const cellIndex = Math.floor(fromPlanStartMinutes / minuteInterval)\r\n const dataX = scale * cellIndex\r\n\r\n const spendMinutes = this.diff(taskEnd, taskStart, 'minutes') + minuteInterval\r\n const widthCells = Math.ceil(spendMinutes / minuteInterval)\r\n const width = widthCells * scale\r\n\r\n const diffHours = Math.floor(spendMinutes / 60)\r\n const remainMinutes = spendMinutes % 60\r\n let takestime = ''\r\n if (diffHours > 0 && remainMinutes > 0) {\r\n takestime = `${diffHours}小时${remainMinutes}分钟`\r\n } else if (diffHours > 0) {\r\n takestime = `${diffHours}小时`\r\n } else {\r\n takestime = `${remainMinutes}分钟`\r\n }\r\n return { dataX, width, takestime }\r\n } else {\r\n const fromPlanStartHours = this.diff(taskStart, start, 'hours')\r\n const dataX = scale * fromPlanStartHours\r\n const spendHours = this.diff(taskEnd, taskStart, 'hours') + 1\r\n return { dataX, width: spendHours * scale, takestime: `${spendHours}小时` }\r\n }\r\n }\r\n\r\n static calcPositionByMode(\r\n mode: string,\r\n options: DateCalcOptions\r\n ): DatePositionResult | null {\r\n switch (mode) {\r\n case '季度':\r\n return this.calcQuarterPosition(options)\r\n case '月':\r\n return this.calcMonthPosition(options)\r\n case '周':\r\n return this.calcWeekPosition(options)\r\n case '日':\r\n return this.calcDayPosition(options)\r\n case '时':\r\n return this.calcHourPosition(options)\r\n default:\r\n return null\r\n }\r\n }\r\n\r\n static batchFormatDates(dates: string[], formatStr: string): string[] {\r\n return dates.map(date => {\r\n try {\r\n return this.format(date, formatStr)\r\n } catch (error) {\r\n return date\r\n }\r\n })\r\n }\r\n\r\n static batchCalcDates(\r\n operations: Array<{\r\n type: 'add' | 'subtract' | 'diff'\r\n date: string\r\n amount?: number\r\n unit?: dayjs.ManipulateType\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 this.add(op.date, op.amount || 0, op.unit || 'day').format('YYYY-MM-DD HH:mm:ss')\r\n case 'subtract':\r\n return this.subtract(op.date, op.amount || 0, op.unit || 'day').format('YYYY-MM-DD HH:mm:ss')\r\n case 'diff':\r\n return this.diff(op.date, op.date2 || '', op.unit || 'day')\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 * 计算两个日期之间的天数差\r\n * @param date1 结束日期\r\n * @param date2 开始日期\r\n * @returns 天数差\r\n */\r\n static differenceInDays(date1: string, date2: string): number {\r\n const d1 = dayjs(date1);\r\n const d2 = dayjs(date2);\r\n return d1.diff(d2, 'day');\r\n }\r\n\r\n /**\r\n * 给日期添加天数\r\n * @param date 日期字符串\r\n * @param days 要添加的天数\r\n * @returns 添加天数后的日期字符串\r\n */\r\n static addDays(date: string, days: number): string {\r\n return dayjs(date).add(days, 'day').format('YYYY-MM-DD');\r\n }\r\n\r\n /**\r\n * 解析ISO格式的日期字符串\r\n * @param dateString ISO格式的日期字符串\r\n * @returns dayjs对象\r\n */\r\n static parseISO(dateString: string): dayjs.Dayjs {\r\n return dayjs(dateString);\r\n }\r\n\r\n /**\r\n * 格式化日期\r\n * @param date 日期字符串或dayjs对象\r\n * @param pattern 格式化模式\r\n * @returns 格式化后的日期字符串\r\n */\r\n static formatDate(date: string | dayjs.Dayjs, pattern: string): string {\r\n return dayjs(date).format(pattern);\r\n }\r\n}\r\n\r\n// 导出类的静态方法作为独立函数\r\nexport const differenceInDays = DateUtils.differenceInDays;\r\nexport const addDays = DateUtils.addDays;\r\nexport const parseISO = DateUtils.parseISO;\r\nexport const formatDate = DateUtils.formatDate;\r\nexport const diff = DateUtils.diff;\r\n\r\nexport default DateUtils\r\n","/**\n * Web Worker for data processing\n * 处理递归数据和日期计算,减少主线程负载\n */\n\nimport DateUtils from '../utils/dateUtils'\n\n/**\n * 消息类型定义\n */\nexport type WorkerMessageType =\n | 'PROCESS_RECURSION_DATA'\n | 'CALC_BAR_POSITIONS'\n | 'CALC_DATES'\n | 'FORMAT_DATES'\n\nexport interface WorkerMessage {\n type: WorkerMessageType\n payload: any\n id?: string\n}\n\nexport interface WorkerResponse {\n type: WorkerMessageType\n payload: any\n id?: string\n error?: string\n}\n\n/**\n * 递归处理数据\n * 将扁平化的树形数据处理为带层级的数据\n */\nfunction processRecursionData(\n id: any,\n tasks: any[],\n level: number,\n mapFields: Record<string, string>,\n initData: any[] = []\n): any[] {\n const findResult = tasks.filter(obj => obj[mapFields['parentId']] === id)\n\n if (findResult && findResult.length > 0) {\n level++\n for (let i = 0; i < findResult.length; i++) {\n findResult[i].treeLevel = level\n findResult[i].index = i + 1\n\n const parent = initData.filter(\n obj => obj[mapFields['id']] === findResult[i][mapFields['parentId']]\n )\n\n if (parent && parent.length > 0) {\n // 构建序号\n let result = parent[0].index + '.' + findResult[i].index\n\n // 查找所有父级\n let currentParent = parent[0]\n while (currentParent[mapFields['parentId']] !== '0') {\n const upperParent = initData.find(\n obj => obj[mapFields['id']] === currentParent[mapFields['parentId']]\n )\n if (upperParent) {\n result = upperParent.index + '.' + result\n currentParent = upperParent\n } else {\n break\n }\n }\n\n findResult[i].no = result\n } else {\n findResult[i].no = i + 1 + ''\n }\n\n initData.push(findResult[i])\n processRecursionData(findResult[i][mapFields['id']], tasks, level, mapFields, initData)\n }\n }\n\n return initData\n}\n\n/**\n * 批量计算甘特图条的位置\n */\nfunction calcBarPositions(\n tasks: any[],\n startGanttDate: string,\n mode: string,\n scale: number,\n mapFields: Record<string, string>,\n daySubMode?: string,\n hourSubMode?: string\n): any[] {\n const results = tasks.map(task => {\n const taskStart = task[mapFields['startDate']]\n const taskEnd = task[mapFields['endDate']]\n\n if (!taskStart || !taskEnd) {\n return { id: task[mapFields['id']], position: null }\n }\n\n const position = calcPositionForMode(\n startGanttDate,\n taskStart,\n taskEnd,\n mode,\n scale,\n daySubMode,\n hourSubMode\n )\n\n return {\n id: task[mapFields['id']],\n position,\n }\n })\n\n return results\n}\n\n/**\n * 根据不同模式计算位置\n */\nfunction calcPositionForMode(\n start: string,\n taskStart: string,\n taskEnd: string,\n mode: string,\n scale: number,\n daySubMode?: string,\n hourSubMode?: string\n): { dataX: number; width: number } | null {\n try {\n switch (mode) {\n case '季度':\n return calcQuarterPosition(start, taskStart, taskEnd, scale)\n case '月':\n return calcMonthPosition(start, taskStart, taskEnd, scale)\n case '周':\n return calcWeekPosition(start, taskStart, taskEnd, scale)\n case '日':\n return calcDayPosition(start, taskStart, taskEnd, scale, daySubMode === 'half')\n case '时':\n const minuteInterval = parseInt(hourSubMode || '60')\n return calcHourPosition(start, taskStart, taskEnd, scale, minuteInterval)\n default:\n return null\n }\n } catch (error) {\n console.error('Error calculating position:', error)\n return null\n }\n}\n\n/**\n * 计算季度位置\n */\nfunction calcQuarterPosition(\n start: string,\n taskStart: string,\n taskEnd: string,\n scale: number\n): { dataX: number; width: number } {\n const ganttStartQuarter = DateUtils.startOf(start, 'quarter')\n const taskStartQuarter = DateUtils.startOf(taskStart, 'quarter')\n const taskEndQuarter = DateUtils.startOf(taskEnd, 'quarter')\n\n const fromStartQuarters =\n (DateUtils.year(taskStartQuarter) - DateUtils.year(ganttStartQuarter)) * 4 +\n (DateUtils.quarter(taskStartQuarter) - DateUtils.quarter(ganttStartQuarter))\n const dataX = scale * fromStartQuarters\n\n const spendQuarters =\n (DateUtils.year(taskEndQuarter) - DateUtils.year(taskStartQuarter)) * 4 +\n (DateUtils.quarter(taskEndQuarter) - DateUtils.quarter(taskStartQuarter)) +\n 1\n\n return { dataX, width: spendQuarters * scale }\n}\n\n/**\n * 计算月份位置\n */\nfunction calcMonthPosition(\n start: string,\n taskStart: string,\n taskEnd: string,\n scale: number\n): { dataX: number; width: number } {\n const ganttStartMonth = DateUtils.startOf(start, 'month')\n const taskStartMonth = DateUtils.startOf(taskStart, 'month')\n const taskEndMonth = DateUtils.startOf(taskEnd, 'month')\n\n const fromStartMonths =\n (DateUtils.year(taskStartMonth) - DateUtils.year(ganttStartMonth)) * 12 +\n (DateUtils.month(taskStartMonth) - DateUtils.month(ganttStartMonth))\n const dataX = scale * fromStartMonths\n\n const spendMonths =\n (DateUtils.year(taskEndMonth) - DateUtils.year(taskStartMonth)) * 12 +\n (DateUtils.month(taskEndMonth) - DateUtils.month(taskStartMonth)) +\n 1\n\n return { dataX, width: spendMonths * scale }\n}\n\n/**\n * 计算周位置\n */\nfunction calcWeekPosition(\n start: string,\n taskStart: string,\n taskEnd: string,\n scale: number\n): { dataX: number; width: number } {\n const startGanttWeek = DateUtils.startOf(start, 'isoWeek')\n const taskStartWeek = DateUtils.startOf(taskStart, 'isoWeek')\n const fromPlanStartWeeks = DateUtils.diff(taskStartWeek, startGanttWeek, 'week')\n const dataX = scale * fromPlanStartWeeks\n\n const taskEndWeek = DateUtils.startOf(taskEnd, 'isoWeek')\n const spendWeeks = DateUtils.diff(taskEndWeek, taskStartWeek, 'week') + 1\n\n return { dataX, width: spendWeeks * scale }\n}\n\n/**\n * 计算日位置\n */\nfunction calcDayPosition(\n start: string,\n taskStart: string,\n taskEnd: string,\n scale: number,\n isHalfDay: boolean\n): { dataX: number; width: number } {\n const cellsPerDay = isHalfDay ? 2 : 1\n const fromPlanStartDays = DateUtils.diff(taskStart, start, 'days')\n let dataX: number\n let width: number\n\n if (isHalfDay) {\n const startHour = DateUtils.hour(taskStart)\n const endHour = DateUtils.hour(taskEnd)\n const startIsAM = startHour < 12\n const endIsAM = endHour < 12\n\n const startCellOffset = startIsAM ? 0 : 1\n const endCellOffset = endIsAM ? 0 : 1\n\n dataX = scale * (fromPlanStartDays * 2 + startCellOffset)\n\n const endDays = DateUtils.diff(taskEnd, start, 'days')\n const endCellIndex = endDays * 2 + endCellOffset\n const startCellIndex = fromPlanStartDays * 2 + startCellOffset\n\n width = (endCellIndex - startCellIndex + 1) * scale\n } else {\n dataX = scale * fromPlanStartDays * cellsPerDay\n const spendDays = DateUtils.diff(taskEnd, taskStart, 'days') + 1\n width = spendDays * scale * cellsPerDay\n }\n\n return { dataX, width }\n}\n\n/**\n * 计算小时位置\n */\nfunction calcHourPosition(\n start: string,\n taskStart: string,\n taskEnd: string,\n scale: number,\n minuteInterval: number\n): { dataX: number; width: number } {\n if (minuteInterval < 60) {\n const fromPlanStartMinutes = DateUtils.diff(taskStart, start, 'minutes')\n const cellIndex = Math.floor(fromPlanStartMinutes / minuteInterval)\n const dataX = scale * cellIndex\n\n const spendMinutes = DateUtils.diff(taskEnd, taskStart, 'minutes') + minuteInterval\n const widthCells = Math.ceil(spendMinutes / minuteInterval)\n const width = widthCells * scale\n\n return { dataX, width }\n } else {\n const fromPlanStartHours = DateUtils.diff(taskStart, start, 'hours')\n const dataX = scale * fromPlanStartHours\n const spendHours = DateUtils.diff(taskEnd, taskStart, 'hours') + 1\n return { dataX, width: spendHours * scale }\n }\n}\n\n/**\n * 批量格式化日期\n */\nfunction formatDates(dates: string[], format: string): string[] {\n return dates.map(date => {\n try {\n return DateUtils.format(date, format)\n } catch (error) {\n return date\n }\n })\n}\n\n/**\n * 批量计算日期\n */\nfunction calcDates(\n operations: Array<{\n type: 'add' | 'subtract' | 'diff'\n date: string\n amount?: number\n unit?: any\n date2?: string\n }>\n): any[] {\n return operations.map(op => {\n try {\n switch (op.type) {\n case 'add':\n return DateUtils.format(\n DateUtils.add(op.date, op.amount || 0, op.unit),\n 'YYYY-MM-DD HH:mm:ss'\n )\n case 'subtract':\n return DateUtils.format(\n DateUtils.subtract(op.date, op.amount || 0, op.unit),\n 'YYYY-MM-DD HH:mm:ss'\n )\n case 'diff':\n return DateUtils.diff(op.date, op.date2, op.unit)\n default:\n return null\n }\n } catch (error) {\n return null\n }\n })\n}\n\n/**\n * Worker 消息处理\n */\nself.onmessage = (event: MessageEvent<WorkerMessage>) => {\n const { type, payload, id } = event.data\n\n try {\n let result: any\n\n switch (type) {\n case 'PROCESS_RECURSION_DATA':\n result = processRecursionData(\n payload.id,\n payload.tasks,\n payload.level,\n payload.mapFields,\n []\n )\n break\n\n case 'CALC_BAR_POSITIONS':\n result = calcBarPositions(\n payload.tasks,\n payload.startGanttDate,\n payload.mode,\n payload.scale,\n payload.mapFields,\n payload.daySubMode,\n payload.hourSubMode\n )\n break\n\n case 'FORMAT_DATES':\n result = formatDates(payload.dates, payload.format)\n break\n\n case 'CALC_DATES':\n result = calcDates(payload.operations)\n break\n\n default:\n throw new Error(`Unknown message type: ${type}`)\n }\n\n const response: WorkerResponse = {\n type,\n payload: result,\n id,\n }\n\n self.postMessage(response)\n } catch (error) {\n const response: WorkerResponse = {\n type,\n payload: null,\n id,\n error: error instanceof Error ? error.message : 'Unknown error',\n }\n\n self.postMessage(response)\n }\n}\n\n// 导出类型供主线程使用\nexport type { WorkerResponse }\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","b","k","Y","L","require$$0","dayjs","customParseFormat","quarterOfYear","isoWeek","localeMap","DateUtils","locale","date","formatStr","date1","date2","unit","amount","month","options","start","taskStart","taskEnd","scale","ganttStartQuarter","taskStartQuarter","taskEndQuarter","fromStartQuarters","dataX","spendQuarters","ganttStartMonth","taskStartMonth","taskEndMonth","fromStartMonths","spendMonths","isHalfDay","cellsPerDay","fromPlanStartDays","width","startHour","endHour","startIsAM","endIsAM","startCellOffset","endCellOffset","endCellIndex","startCellIndex","spendDays","startGanttWeek","taskStartWeek","fromPlanStartWeeks","spendWeeks","minuteInterval","fromPlanStartMinutes","cellIndex","spendMinutes","diffHours","remainMinutes","takestime","fromPlanStartHours","spendHours","mode","dates","operations","op","d1","d2","days","dateString","pattern","__publicField","processRecursionData","id","tasks","level","mapFields","initData","findResult","obj","parent","result","currentParent","upperParent","calcBarPositions","startGanttDate","daySubMode","hourSubMode","task","position","calcPositionForMode","calcQuarterPosition","calcMonthPosition","calcWeekPosition","calcDayPosition","calcHourPosition","error","taskEndWeek","formatDates","format","calcDates","event","type","payload","response"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13]}
|