vxe-gantt 4.9.0-beta.2 → 4.9.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.
- package/dist/all.esm.js +57 -13
- package/es/gantt/src/gantt-view.js +55 -11
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/gantt/src/gantt-view.js +63 -13
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/index.umd.js +65 -15
- package/lib/index.umd.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +3 -3
- package/packages/gantt/src/gantt-view.ts +61 -11
package/dist/all.esm.js
CHANGED
|
@@ -6,7 +6,7 @@ import DomZIndex from 'dom-zindex';
|
|
|
6
6
|
import { VxeTable } from 'vxe-table';
|
|
7
7
|
|
|
8
8
|
const { setConfig: setConfig$1, setIcon } = VxeUI;
|
|
9
|
-
VxeUI.ganttVersion = "4.9.0
|
|
9
|
+
VxeUI.ganttVersion = "4.9.0";
|
|
10
10
|
const ymdFormat = 'yyyy-MM-dd';
|
|
11
11
|
const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
|
|
12
12
|
setConfig$1({
|
|
@@ -130,7 +130,7 @@ setIcon({
|
|
|
130
130
|
});
|
|
131
131
|
|
|
132
132
|
const { log } = VxeUI;
|
|
133
|
-
const ganttVersion = `gantt v${"4.9.0
|
|
133
|
+
const ganttVersion = `gantt v${"4.9.0"}`;
|
|
134
134
|
function createComponentLog(name) {
|
|
135
135
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
136
136
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -1437,6 +1437,27 @@ function createInternalData$1() {
|
|
|
1437
1437
|
xThumbLeft: 0,
|
|
1438
1438
|
lastScrollTop: 0,
|
|
1439
1439
|
lastScrollLeft: 0
|
|
1440
|
+
// 刷新布局
|
|
1441
|
+
// rceTimeout: undefined,
|
|
1442
|
+
// rceRunTime: undefined,
|
|
1443
|
+
// // 滚动属性
|
|
1444
|
+
// intoRunScroll: false,
|
|
1445
|
+
// inVirtualScroll: false,
|
|
1446
|
+
// inWheelScroll: false,
|
|
1447
|
+
// inHeaderScroll: false,
|
|
1448
|
+
// inBodyScroll: false,
|
|
1449
|
+
// inFooterScroll: false,
|
|
1450
|
+
// scrollRenderType: '',
|
|
1451
|
+
// isSyncTableScrollTop: false,
|
|
1452
|
+
// // 同步滚动
|
|
1453
|
+
// lcsTimeout: undefined,
|
|
1454
|
+
// lcsRunTime: undefined,
|
|
1455
|
+
// // 横向虚拟
|
|
1456
|
+
// lxRunTime: undefined,
|
|
1457
|
+
// lxTimeout: undefined,
|
|
1458
|
+
// // 纵向虚拟
|
|
1459
|
+
// lyRunTime: undefined,
|
|
1460
|
+
// lyTimeout: undefined
|
|
1440
1461
|
};
|
|
1441
1462
|
}
|
|
1442
1463
|
function createReactData$1() {
|
|
@@ -3225,6 +3246,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3225
3246
|
clearTimeout(lcsTimeout);
|
|
3226
3247
|
}
|
|
3227
3248
|
internalData.lcsTimeout = setTimeout(() => {
|
|
3249
|
+
const $xeTable = internalData.xeTable;
|
|
3228
3250
|
internalData.lcsRunTime = Date.now();
|
|
3229
3251
|
internalData.lcsTimeout = undefined;
|
|
3230
3252
|
internalData.intoRunScroll = false;
|
|
@@ -3234,6 +3256,10 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3234
3256
|
internalData.inBodyScroll = false;
|
|
3235
3257
|
internalData.inFooterScroll = false;
|
|
3236
3258
|
reactData.lazScrollLoading = false;
|
|
3259
|
+
if ($xeTable) {
|
|
3260
|
+
const tableInternalData = $xeTable.internalData;
|
|
3261
|
+
tableInternalData.isSyncGanttScrollTop = false;
|
|
3262
|
+
}
|
|
3237
3263
|
}, 200);
|
|
3238
3264
|
};
|
|
3239
3265
|
const handleScrollData = (isRollY, isRollX, scrollTop, scrollLeft) => {
|
|
@@ -3308,7 +3334,10 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3308
3334
|
}
|
|
3309
3335
|
}
|
|
3310
3336
|
}
|
|
3311
|
-
|
|
3337
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
3338
|
+
if (isVScrollbar) {
|
|
3339
|
+
updateThumbOffset();
|
|
3340
|
+
}
|
|
3312
3341
|
handleScrollData(isRollY, isRollX, scrollTop, scrollLeft);
|
|
3313
3342
|
const evntParams = {
|
|
3314
3343
|
source: sourceType,
|
|
@@ -3374,14 +3403,15 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3374
3403
|
* 同步表格滚动
|
|
3375
3404
|
*/
|
|
3376
3405
|
const syncTableScrollTop = (scrollTop) => {
|
|
3406
|
+
const { isSyncTableScrollTop } = internalData;
|
|
3407
|
+
if (isSyncTableScrollTop) {
|
|
3408
|
+
return;
|
|
3409
|
+
}
|
|
3377
3410
|
const $xeTable = internalData.xeTable;
|
|
3378
3411
|
if ($xeTable) {
|
|
3379
3412
|
const tableInternalData = $xeTable.internalData;
|
|
3380
|
-
|
|
3381
|
-
|
|
3382
|
-
if (tableBodyScrollElem) {
|
|
3383
|
-
tableBodyScrollElem.scrollTop = scrollTop;
|
|
3384
|
-
}
|
|
3413
|
+
tableInternalData.isSyncGanttScrollTop = true;
|
|
3414
|
+
$xeTable.handleSyncScrollTop({ scrollTop });
|
|
3385
3415
|
}
|
|
3386
3416
|
};
|
|
3387
3417
|
const ganttViewPrivateMethods = {
|
|
@@ -3416,6 +3446,14 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3416
3446
|
}
|
|
3417
3447
|
}
|
|
3418
3448
|
},
|
|
3449
|
+
handleSyncScrollTop(params) {
|
|
3450
|
+
const { scrollTop } = params;
|
|
3451
|
+
const { elemStore } = internalData;
|
|
3452
|
+
const bodyScrollElem = getRefElem(elemStore['main-body-scroll']);
|
|
3453
|
+
if (bodyScrollElem) {
|
|
3454
|
+
bodyScrollElem.scrollTop = scrollTop;
|
|
3455
|
+
}
|
|
3456
|
+
},
|
|
3419
3457
|
triggerHeaderScrollEvent(evnt) {
|
|
3420
3458
|
const { elemStore, inVirtualScroll, inBodyScroll, inFooterScroll } = internalData;
|
|
3421
3459
|
if (inVirtualScroll) {
|
|
@@ -3542,15 +3580,21 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3542
3580
|
}
|
|
3543
3581
|
};
|
|
3544
3582
|
const updateScrollbar = () => {
|
|
3545
|
-
|
|
3546
|
-
|
|
3583
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
3584
|
+
if (isVScrollbar) {
|
|
3585
|
+
return nextTick().then(() => {
|
|
3586
|
+
updateThumbSize();
|
|
3587
|
+
updateThumbOffset();
|
|
3588
|
+
});
|
|
3589
|
+
}
|
|
3590
|
+
return Promise.resolve();
|
|
3547
3591
|
};
|
|
3548
3592
|
const handleGlobalResizeEvent = () => {
|
|
3549
3593
|
handleLazyRecalculate();
|
|
3550
3594
|
};
|
|
3551
3595
|
const bindScrollbarResize = () => {
|
|
3552
3596
|
const { elemStore, scrollObserver } = internalData;
|
|
3553
|
-
const isVScrollbar =
|
|
3597
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
3554
3598
|
if (isVScrollbar) {
|
|
3555
3599
|
if (!scrollObserver) {
|
|
3556
3600
|
const el = refElem.value;
|
|
@@ -3669,7 +3713,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3669
3713
|
const renderVirtualBody = () => {
|
|
3670
3714
|
const { showLeftView } = ganttReactData;
|
|
3671
3715
|
const { xThumbWidth, yThumbHeight } = reactData;
|
|
3672
|
-
const isVScrollbar =
|
|
3716
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
3673
3717
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
3674
3718
|
const scrollXAutoHide = computeScrollXAutoHide.value;
|
|
3675
3719
|
const scrollYAutoHide = computeScrollYAutoHide.value;
|
|
@@ -3732,7 +3776,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
3732
3776
|
};
|
|
3733
3777
|
const renderVN = () => {
|
|
3734
3778
|
const { overflowX, overflowY, scrollXLoad, scrollYLoad } = reactData;
|
|
3735
|
-
const isVScrollbar =
|
|
3779
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
3736
3780
|
const scrollbarXToTop = computeScrollbarXToTop.value;
|
|
3737
3781
|
return h('div', {
|
|
3738
3782
|
ref: refElem,
|
|
@@ -46,6 +46,27 @@ function createInternalData() {
|
|
|
46
46
|
xThumbLeft: 0,
|
|
47
47
|
lastScrollTop: 0,
|
|
48
48
|
lastScrollLeft: 0
|
|
49
|
+
// 刷新布局
|
|
50
|
+
// rceTimeout: undefined,
|
|
51
|
+
// rceRunTime: undefined,
|
|
52
|
+
// // 滚动属性
|
|
53
|
+
// intoRunScroll: false,
|
|
54
|
+
// inVirtualScroll: false,
|
|
55
|
+
// inWheelScroll: false,
|
|
56
|
+
// inHeaderScroll: false,
|
|
57
|
+
// inBodyScroll: false,
|
|
58
|
+
// inFooterScroll: false,
|
|
59
|
+
// scrollRenderType: '',
|
|
60
|
+
// isSyncTableScrollTop: false,
|
|
61
|
+
// // 同步滚动
|
|
62
|
+
// lcsTimeout: undefined,
|
|
63
|
+
// lcsRunTime: undefined,
|
|
64
|
+
// // 横向虚拟
|
|
65
|
+
// lxRunTime: undefined,
|
|
66
|
+
// lxTimeout: undefined,
|
|
67
|
+
// // 纵向虚拟
|
|
68
|
+
// lyRunTime: undefined,
|
|
69
|
+
// lyTimeout: undefined
|
|
49
70
|
};
|
|
50
71
|
}
|
|
51
72
|
function createReactData() {
|
|
@@ -1834,6 +1855,7 @@ export default defineVxeComponent({
|
|
|
1834
1855
|
clearTimeout(lcsTimeout);
|
|
1835
1856
|
}
|
|
1836
1857
|
internalData.lcsTimeout = setTimeout(() => {
|
|
1858
|
+
const $xeTable = internalData.xeTable;
|
|
1837
1859
|
internalData.lcsRunTime = Date.now();
|
|
1838
1860
|
internalData.lcsTimeout = undefined;
|
|
1839
1861
|
internalData.intoRunScroll = false;
|
|
@@ -1843,6 +1865,10 @@ export default defineVxeComponent({
|
|
|
1843
1865
|
internalData.inBodyScroll = false;
|
|
1844
1866
|
internalData.inFooterScroll = false;
|
|
1845
1867
|
reactData.lazScrollLoading = false;
|
|
1868
|
+
if ($xeTable) {
|
|
1869
|
+
const tableInternalData = $xeTable.internalData;
|
|
1870
|
+
tableInternalData.isSyncGanttScrollTop = false;
|
|
1871
|
+
}
|
|
1846
1872
|
}, 200);
|
|
1847
1873
|
};
|
|
1848
1874
|
const handleScrollData = (isRollY, isRollX, scrollTop, scrollLeft) => {
|
|
@@ -1917,7 +1943,10 @@ export default defineVxeComponent({
|
|
|
1917
1943
|
}
|
|
1918
1944
|
}
|
|
1919
1945
|
}
|
|
1920
|
-
|
|
1946
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
1947
|
+
if (isVScrollbar) {
|
|
1948
|
+
updateThumbOffset();
|
|
1949
|
+
}
|
|
1921
1950
|
handleScrollData(isRollY, isRollX, scrollTop, scrollLeft);
|
|
1922
1951
|
const evntParams = {
|
|
1923
1952
|
source: sourceType,
|
|
@@ -1983,14 +2012,15 @@ export default defineVxeComponent({
|
|
|
1983
2012
|
* 同步表格滚动
|
|
1984
2013
|
*/
|
|
1985
2014
|
const syncTableScrollTop = (scrollTop) => {
|
|
2015
|
+
const { isSyncTableScrollTop } = internalData;
|
|
2016
|
+
if (isSyncTableScrollTop) {
|
|
2017
|
+
return;
|
|
2018
|
+
}
|
|
1986
2019
|
const $xeTable = internalData.xeTable;
|
|
1987
2020
|
if ($xeTable) {
|
|
1988
2021
|
const tableInternalData = $xeTable.internalData;
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
if (tableBodyScrollElem) {
|
|
1992
|
-
tableBodyScrollElem.scrollTop = scrollTop;
|
|
1993
|
-
}
|
|
2022
|
+
tableInternalData.isSyncGanttScrollTop = true;
|
|
2023
|
+
$xeTable.handleSyncScrollTop({ scrollTop });
|
|
1994
2024
|
}
|
|
1995
2025
|
};
|
|
1996
2026
|
const ganttViewPrivateMethods = {
|
|
@@ -2025,6 +2055,14 @@ export default defineVxeComponent({
|
|
|
2025
2055
|
}
|
|
2026
2056
|
}
|
|
2027
2057
|
},
|
|
2058
|
+
handleSyncScrollTop(params) {
|
|
2059
|
+
const { scrollTop } = params;
|
|
2060
|
+
const { elemStore } = internalData;
|
|
2061
|
+
const bodyScrollElem = getRefElem(elemStore['main-body-scroll']);
|
|
2062
|
+
if (bodyScrollElem) {
|
|
2063
|
+
bodyScrollElem.scrollTop = scrollTop;
|
|
2064
|
+
}
|
|
2065
|
+
},
|
|
2028
2066
|
triggerHeaderScrollEvent(evnt) {
|
|
2029
2067
|
const { elemStore, inVirtualScroll, inBodyScroll, inFooterScroll } = internalData;
|
|
2030
2068
|
if (inVirtualScroll) {
|
|
@@ -2151,15 +2189,21 @@ export default defineVxeComponent({
|
|
|
2151
2189
|
}
|
|
2152
2190
|
};
|
|
2153
2191
|
const updateScrollbar = () => {
|
|
2154
|
-
|
|
2155
|
-
|
|
2192
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2193
|
+
if (isVScrollbar) {
|
|
2194
|
+
return nextTick().then(() => {
|
|
2195
|
+
updateThumbSize();
|
|
2196
|
+
updateThumbOffset();
|
|
2197
|
+
});
|
|
2198
|
+
}
|
|
2199
|
+
return Promise.resolve();
|
|
2156
2200
|
};
|
|
2157
2201
|
const handleGlobalResizeEvent = () => {
|
|
2158
2202
|
handleLazyRecalculate();
|
|
2159
2203
|
};
|
|
2160
2204
|
const bindScrollbarResize = () => {
|
|
2161
2205
|
const { elemStore, scrollObserver } = internalData;
|
|
2162
|
-
const isVScrollbar =
|
|
2206
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2163
2207
|
if (isVScrollbar) {
|
|
2164
2208
|
if (!scrollObserver) {
|
|
2165
2209
|
const el = refElem.value;
|
|
@@ -2278,7 +2322,7 @@ export default defineVxeComponent({
|
|
|
2278
2322
|
const renderVirtualBody = () => {
|
|
2279
2323
|
const { showLeftView } = ganttReactData;
|
|
2280
2324
|
const { xThumbWidth, yThumbHeight } = reactData;
|
|
2281
|
-
const isVScrollbar =
|
|
2325
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2282
2326
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
2283
2327
|
const scrollXAutoHide = computeScrollXAutoHide.value;
|
|
2284
2328
|
const scrollYAutoHide = computeScrollYAutoHide.value;
|
|
@@ -2341,7 +2385,7 @@ export default defineVxeComponent({
|
|
|
2341
2385
|
};
|
|
2342
2386
|
const renderVN = () => {
|
|
2343
2387
|
const { overflowX, overflowY, scrollXLoad, scrollYLoad } = reactData;
|
|
2344
|
-
const isVScrollbar =
|
|
2388
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2345
2389
|
const scrollbarXToTop = computeScrollbarXToTop.value;
|
|
2346
2390
|
return h('div', {
|
|
2347
2391
|
ref: refElem,
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const ganttVersion = `gantt v${"4.9.0
|
|
3
|
+
const ganttVersion = `gantt v${"4.9.0"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
6
6
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -64,6 +64,27 @@ function createInternalData() {
|
|
|
64
64
|
xThumbLeft: 0,
|
|
65
65
|
lastScrollTop: 0,
|
|
66
66
|
lastScrollLeft: 0
|
|
67
|
+
// 刷新布局
|
|
68
|
+
// rceTimeout: undefined,
|
|
69
|
+
// rceRunTime: undefined,
|
|
70
|
+
// // 滚动属性
|
|
71
|
+
// intoRunScroll: false,
|
|
72
|
+
// inVirtualScroll: false,
|
|
73
|
+
// inWheelScroll: false,
|
|
74
|
+
// inHeaderScroll: false,
|
|
75
|
+
// inBodyScroll: false,
|
|
76
|
+
// inFooterScroll: false,
|
|
77
|
+
// scrollRenderType: '',
|
|
78
|
+
// isSyncTableScrollTop: false,
|
|
79
|
+
// // 同步滚动
|
|
80
|
+
// lcsTimeout: undefined,
|
|
81
|
+
// lcsRunTime: undefined,
|
|
82
|
+
// // 横向虚拟
|
|
83
|
+
// lxRunTime: undefined,
|
|
84
|
+
// lxTimeout: undefined,
|
|
85
|
+
// // 纵向虚拟
|
|
86
|
+
// lyRunTime: undefined,
|
|
87
|
+
// lyTimeout: undefined
|
|
67
88
|
};
|
|
68
89
|
}
|
|
69
90
|
function createReactData() {
|
|
@@ -2092,6 +2113,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2092
2113
|
clearTimeout(lcsTimeout);
|
|
2093
2114
|
}
|
|
2094
2115
|
internalData.lcsTimeout = setTimeout(() => {
|
|
2116
|
+
const $xeTable = internalData.xeTable;
|
|
2095
2117
|
internalData.lcsRunTime = Date.now();
|
|
2096
2118
|
internalData.lcsTimeout = undefined;
|
|
2097
2119
|
internalData.intoRunScroll = false;
|
|
@@ -2101,6 +2123,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2101
2123
|
internalData.inBodyScroll = false;
|
|
2102
2124
|
internalData.inFooterScroll = false;
|
|
2103
2125
|
reactData.lazScrollLoading = false;
|
|
2126
|
+
if ($xeTable) {
|
|
2127
|
+
const tableInternalData = $xeTable.internalData;
|
|
2128
|
+
tableInternalData.isSyncGanttScrollTop = false;
|
|
2129
|
+
}
|
|
2104
2130
|
}, 200);
|
|
2105
2131
|
};
|
|
2106
2132
|
const handleScrollData = (isRollY, isRollX, scrollTop, scrollLeft) => {
|
|
@@ -2180,7 +2206,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2180
2206
|
}
|
|
2181
2207
|
}
|
|
2182
2208
|
}
|
|
2183
|
-
|
|
2209
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2210
|
+
if (isVScrollbar) {
|
|
2211
|
+
updateThumbOffset();
|
|
2212
|
+
}
|
|
2184
2213
|
handleScrollData(isRollY, isRollX, scrollTop, scrollLeft);
|
|
2185
2214
|
const evntParams = {
|
|
2186
2215
|
source: sourceType,
|
|
@@ -2252,16 +2281,19 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2252
2281
|
* 同步表格滚动
|
|
2253
2282
|
*/
|
|
2254
2283
|
const syncTableScrollTop = scrollTop => {
|
|
2284
|
+
const {
|
|
2285
|
+
isSyncTableScrollTop
|
|
2286
|
+
} = internalData;
|
|
2287
|
+
if (isSyncTableScrollTop) {
|
|
2288
|
+
return;
|
|
2289
|
+
}
|
|
2255
2290
|
const $xeTable = internalData.xeTable;
|
|
2256
2291
|
if ($xeTable) {
|
|
2257
2292
|
const tableInternalData = $xeTable.internalData;
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
if (tableBodyScrollElem) {
|
|
2263
|
-
tableBodyScrollElem.scrollTop = scrollTop;
|
|
2264
|
-
}
|
|
2293
|
+
tableInternalData.isSyncGanttScrollTop = true;
|
|
2294
|
+
$xeTable.handleSyncScrollTop({
|
|
2295
|
+
scrollTop
|
|
2296
|
+
});
|
|
2265
2297
|
}
|
|
2266
2298
|
};
|
|
2267
2299
|
const ganttViewPrivateMethods = {
|
|
@@ -2296,6 +2328,18 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2296
2328
|
}
|
|
2297
2329
|
}
|
|
2298
2330
|
},
|
|
2331
|
+
handleSyncScrollTop(params) {
|
|
2332
|
+
const {
|
|
2333
|
+
scrollTop
|
|
2334
|
+
} = params;
|
|
2335
|
+
const {
|
|
2336
|
+
elemStore
|
|
2337
|
+
} = internalData;
|
|
2338
|
+
const bodyScrollElem = (0, _util.getRefElem)(elemStore['main-body-scroll']);
|
|
2339
|
+
if (bodyScrollElem) {
|
|
2340
|
+
bodyScrollElem.scrollTop = scrollTop;
|
|
2341
|
+
}
|
|
2342
|
+
},
|
|
2299
2343
|
triggerHeaderScrollEvent(evnt) {
|
|
2300
2344
|
const {
|
|
2301
2345
|
elemStore,
|
|
@@ -2446,8 +2490,14 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2446
2490
|
}
|
|
2447
2491
|
};
|
|
2448
2492
|
const updateScrollbar = () => {
|
|
2449
|
-
|
|
2450
|
-
|
|
2493
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2494
|
+
if (isVScrollbar) {
|
|
2495
|
+
return (0, _vue.nextTick)().then(() => {
|
|
2496
|
+
updateThumbSize();
|
|
2497
|
+
updateThumbOffset();
|
|
2498
|
+
});
|
|
2499
|
+
}
|
|
2500
|
+
return Promise.resolve();
|
|
2451
2501
|
};
|
|
2452
2502
|
const handleGlobalResizeEvent = () => {
|
|
2453
2503
|
handleLazyRecalculate();
|
|
@@ -2457,7 +2507,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2457
2507
|
elemStore,
|
|
2458
2508
|
scrollObserver
|
|
2459
2509
|
} = internalData;
|
|
2460
|
-
const isVScrollbar =
|
|
2510
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2461
2511
|
if (isVScrollbar) {
|
|
2462
2512
|
if (!scrollObserver) {
|
|
2463
2513
|
const el = refElem.value;
|
|
@@ -2551,7 +2601,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2551
2601
|
xThumbWidth,
|
|
2552
2602
|
yThumbHeight
|
|
2553
2603
|
} = reactData;
|
|
2554
|
-
const isVScrollbar =
|
|
2604
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2555
2605
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
2556
2606
|
const scrollXAutoHide = computeScrollXAutoHide.value;
|
|
2557
2607
|
const scrollYAutoHide = computeScrollYAutoHide.value;
|
|
@@ -2605,7 +2655,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2605
2655
|
scrollXLoad,
|
|
2606
2656
|
scrollYLoad
|
|
2607
2657
|
} = reactData;
|
|
2608
|
-
const isVScrollbar =
|
|
2658
|
+
const isVScrollbar = computeGanttIsVScrollbar.value;
|
|
2609
2659
|
const scrollbarXToTop = computeScrollbarXToTop.value;
|
|
2610
2660
|
return (0, _vue.h)('div', {
|
|
2611
2661
|
ref: refElem,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_utils=require("../../ui/src/utils"),_util=require("./util"),_static=require("./static"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,domUtils,globalResize,globalEvents,renderEmptyElement}=_core.VxeUI,{FinishToStart,StartToFinish,StartToStart,FinishToFinish}=_static.VxeGanttDependencyType,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function getTaskLinkKey(e,t,l){return e+"_"+t+"_"+(l||0)}function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,yThumbHeight:0,xThumbWidth:0,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(S,E){var k=_xeUtils.default.uniqueId();let l=Object.assign({},getConfig().scrollbar),N=(0,_vue.inject)("$xeGantt",{}),te=N.props,G=N.reactData,Q=N.internalData,{computeDateFormat:r,computeTaskBarOpts:le,computeTaskViewOpts:t,computeStartField:A,computeEndField:ae,computeTypeField:K,computeScrollbarOpts:f,computeScaleUnit:L,computeWeekScale:H,computeMinScale:D,computeTaskNowLineOpts:C,computeScaleStep:W,computeIsVScrollbar:h}=N.getComputeMaps(),s=(0,_vue.ref)(),R=(0,_vue.ref)(),O=(0,_vue.ref)(),d=(0,_vue.ref)(),z=(0,_vue.ref)(),Y=(0,_vue.ref)(),c=(0,_vue.ref)(),F=(0,_vue.ref)(),j=(0,_vue.ref)(),I=(0,_vue.ref)(),X=(0,_vue.ref)(),V=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),J=(0,_vue.reactive)(createReactData()),Z=createInternalData(),B={refElem:s,refScrollXHandleElem:d,refScrollYHandleElem:c};var P=(0,_vue.computed)(()=>h.value);let a=(0,_vue.computed)(()=>{var e=f.value;return e.x?Object.assign({},e.x,e.xConfig):e.xConfig||{}}),i=(0,_vue.computed)(()=>{var e=f.value;return e.y?Object.assign({},e.y,e.yConfig):e.yConfig||{}});var re=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.height,e.height),l.height))}),ie=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.width,e.width),l.width))});let v=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return(0,_utils.getDefaultConfig)(t.visible,e.visible)}),b=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return(0,_utils.getDefaultConfig)(t.visible,e.visible)}),se=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.autoHide,e.autoHide),l.autoHide)}),oe=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.autoHide,e.autoHide),l.autoHide)}),w=(0,_vue.computed)(()=>"top"===a.value.position),T=(0,_vue.computed)(()=>"left"===i.value.position),ue=(0,_vue.computed)(()=>{var{yThumbHeight:e,xThumbWidth:t}=J,l=w.value,a=T.value,r=v.value,i=b.value;return domUtils.buildClass(["vxe-scrollbar is--virtual","ov-x--"+(!1===r?"hidden":"visible"),"ov-y--"+(!1===i?"hidden":"visible"),"sx-pos--"+(l?"top":"bottom"),"sy-pos--"+(a?"left":"right")],{"overflow-y":e,"overflow-x":t})}),ne=(0,_vue.computed)(()=>{var{minViewDate:a,maxViewDate:r}=J,e=t.value,i=D.value,s=W.value,e=e.gridding,o=[];if(i&&a&&r){var{type:i,startDay:u}=i;let t=-(G.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),l=G.currRightSpacing+_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(0<s&&(t*=s,l*=s),i){case"year":{let e=_xeUtils.default.getWhatYear(a,t,"first");for(var n=_xeUtils.default.getWhatYear(r,l,"first");e<=n;){var d=e;o.push(d),e=_xeUtils.default.getWhatYear(e,s)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(a,t,"first");for(var c=_xeUtils.default.getWhatQuarter(r,l,"first");e<=c;){var f=e;o.push(f),e=_xeUtils.default.getWhatQuarter(e,s)}break}case"month":{let e=_xeUtils.default.getWhatMonth(a,t,"first");for(var h=_xeUtils.default.getWhatMonth(r,l,"first");e<=h;){var v=e;o.push(v),e=_xeUtils.default.getWhatMonth(e,s)}break}case"week":{let e=_xeUtils.default.getWhatWeek(a,t,u,u);for(var g=_xeUtils.default.getWhatWeek(r,l,u,u);e<=g;){var m=e;o.push(m),e=_xeUtils.default.getWhatWeek(e,s)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(a,t,"first");for(var _=_xeUtils.default.getWhatDay(r,l,"first");e<=_;){var x=e;o.push(x),e=_xeUtils.default.getWhatDay(e,s)}break}case"hour":{let e=_xeUtils.default.getWhatHours(a,t,"first");for(var p=_xeUtils.default.getWhatHours(r,l,"first");e<=p;){var y=e;o.push(y),e=_xeUtils.default.getWhatHours(e,s)}break}case"minute":{let e=_xeUtils.default.getWhatMinutes(a,t,"first");for(var S=_xeUtils.default.getWhatMinutes(r,l,"first");e<=S;){var b=e;o.push(b),e=_xeUtils.default.getWhatMinutes(e,s)}break}case"second":{let e=_xeUtils.default.getWhatSeconds(a,t,"first");for(var w=_xeUtils.default.getWhatSeconds(r,l,"first");e<=w;){var T=e;o.push(T),e=_xeUtils.default.getWhatSeconds(e,s)}break}}}return o});var e=(0,_vue.computed)(()=>{var{minViewDate:e,maxViewDate:a,viewCellWidth:r}=J,{visibleColumn:i,todayDateMaps:s}=Z,o=D.value,u=t.value.showNowLine,n=C.value.mode,d=G.nowTime;let c=0;if(u&&o&&e&&a&&d>=e.getTime()&&d<=a.getTime()){var u=s[o.type],f=_xeUtils.default.toStringDate(u);let t=null,l=null;for(let e=0;e<i.length;e++){var h=i[e],{startDateObj:v,endDateObj:g}=h;if(v.date<=f&&g.date>=f){t=h,c=e*r,l=i[e+1];break}}"progress"===n?t&&l&&(e=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(d-e)/(l.dateObj.date.getTime()-e))),c+=a*r):"center"===n?c+=r/2:"end"===n&&(c+=r-1)}return c});let de={computeScrollXHeight:re,computeScrollYWidth:ie,computeScrollXVisible:v,computeScrollYVisible:b,computeScrollXAutoHide:se,computeScrollYAutoHide:oe,computeScrollbarXToTop:w,computeScrollbarYToLeft:T,computeScaleDateList:ne,computeNowLineLeft:e},U={xID:k,props:S,context:E,reactData:J,internalData:Z,getRefMaps:()=>B,getComputeMaps:()=>de},{refTrackXElem:ce,refTrackYElem:fe,refThumbXElem:he,refThumbYElem:ve,updateThumbSize:ge,updateThumbOffset:me,clickTrackXEvent:_e,clickTrackYEvent:xe,pointerdownThumbXEvent:pe,pointermoveThumbXEvent:ye,cleatPointerThumbEvent:g,pointerdownThumbYEvent:Se,pointermoveThumbYEvent:be}=_core.useFns.useInitVScrollbar(U),ee=e=>{var t=r.value;return _xeUtils.default.toStringDate(e,t)},we=()=>{var o=G.taskScaleList,u=D.value;if(u){var o=o.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,s]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var d=n.getDay()+1,c=Math.ceil((n.getMonth()+1)/3),o=""+_xeUtils.default.getYearWeek(n,o?o.startDay:void 0);u&&M(o,t)&&(e=""+(Number(e)+1),l="01"),G.nowTime=n.getTime(),Z.todayDateMaps={year:e,quarter:e+"_q"+c,month:e+"_"+l,week:e+"_W"+o,day:`${e}_${l}_${a}_E`+d,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+s}}},Te=()=>{var e=G.taskScaleList,t=L.value;let o=D.value,p=H.value;var l=ne.value,a=W.value,r=p?p.startDay:void 0;let u=[],n=[];if(o&&t&&l.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},s={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}},x="week"===o.type;var d=(t,l,a)=>{if(o.type!==t){var l=l[t],r=""+l.field;let e=s[t][r];e||(e=l,s[t][r]=e,i[t].push(e)),e&&(e.children||(e.children=[]),e.children.push(a))}},c=e=>{let[t,l,a,r,i,s,o,u,n,d,c,f]=_xeUtils.default.toDateString(e,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-");var h=e.getDay(),v=h+1,g=Math.ceil((e.getMonth()+1)/3),m=""+_xeUtils.default.getYearWeek(e,p?p.startDay:void 0),_=_xeUtils.default.padStart(m,2,"0");return x&&M(m,a)&&(l=""+(Number(l)+1),a="1",r="0"+a),{date:e,yy:t,yyyy:l,M:a,MM:r,d:i,dd:s,H:o,HH:u,m:n,mm:d,s:c,ss:f,q:g,W:m,WW:_,E:v,e:h}};for(let e=0;e<l.length;e++){var f=l[e],h=c(f),{yyyy:v,MM:g,dd:m,HH:_,mm:y,ss:S,q:b,W:w,E:T}=h,U=h,b={year:{field:v,title:v,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatYear(f,a-1)):U},quarter:{field:v+"_q"+b,title:""+b,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatQuarter(f,a-1)):U},month:{field:v+"_"+g,title:g,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatMonth(f,a-1)):U},week:{field:v+"_W"+w,title:""+w,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatWeek(f,a-1,r,r)):U},day:{field:v+`_${g}_${m}_E`+T,title:""+T,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatDay(f,a-1)):U},date:{field:v+`_${g}_`+m,title:m,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatDay(f,a-1)):U},hour:{field:v+`_${g}_${m}_`+_,title:_,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatHours(f,a-1)):U},minute:{field:v+`_${g}_${m}_${_}_`+y,title:y,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatMinutes(f,a-1)):U},second:{field:v+`_${g}_${m}_${_}_${y}_`+S,title:S,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatSeconds(f,a-1)):U}},w=b[o.type];o.level<19&&d("year",b,w),o.level<17&&d("quarter",b,w),o.level<15&&d("month",b,w),o.level<13&&d("week",b,w),o.level<11&&d("day",b,w),o.level<9&&d("date",b,w),o.level<7&&d("hour",b,w),o.level<5&&d("minute",b,w),o.level<3&&d("second",b,w),u.push(w)}e.forEach(e=>{var t;e.type===o.type?n.push({scaleItem:e,columns:u}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),n.push({scaleItem:e,columns:t}))})}return{fullCols:u,groupCols:n}},M=(e,t)=>""+e=="1"&&""+t=="12",Ue=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return M(e,a+1)&&l++,{yyyy:l,W:e}},De=e=>{var t=D.value;let o=W.value;var l=L.value;let c=H.value;var a=r.value;if(t){let f=1<o?1/o:0;switch(l){case"year":{let n=/M|d|H|m|s|S/.test(a),d="yyyy",c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,"yyyy");if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(l.date,o-t),d);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,d),r=n?e:_xeUtils.default.getWhatYear(e,0,"first"),e=_xeUtils.default.getWhatYear(e,0,"first"),i=_xeUtils.default.toDateString(t,d),t=n?t:_xeUtils.default.getWhatYear(t,0,"last"),s=_xeUtils.default.getWhatYear(t,0,"first");let o=0,u=1;n&&(l=_xeUtils.default.getDayOfYear(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfYear(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"quarter":{let n=/M|d|H|m|ss|S/.test(a),d="yyyy-q",c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(l.date,o-t),d);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,d),r=n?e:_xeUtils.default.getWhatQuarter(e,0,"first"),e=_xeUtils.default.getWhatQuarter(e,0,"first"),i=_xeUtils.default.toDateString(t,d),t=n?t:_xeUtils.default.getWhatQuarter(t,0,"last"),s=_xeUtils.default.getWhatQuarter(t,0,"first");let o=0,u=1;n&&(l=_xeUtils.default.getDayOfQuarter(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfQuarter(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"month":{let n="yyyy-MM",d=/d|H|m|ss|S/.test(a),c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,n);if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(l.date,o-t),n);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,n),r=d?e:_xeUtils.default.getWhatMonth(e,0,"first"),e=_xeUtils.default.getWhatMonth(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=d?t:_xeUtils.default.getWhatMonth(t,0,"last"),s=_xeUtils.default.getWhatMonth(t,0,"first");let o=0,u=1;d&&(l=_xeUtils.default.getDayOfMonth(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfMonth(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"week":{let u=c?c.startDay:void 0,n=/d|H|m|s|S/.test(a),d={};return e.forEach(({dateObj:r},i)=>{let e=r.yyyy+"-"+r.W;if(d[e]=i,f){let a=o-1;for(;a;){var s=_xeUtils.default.getWhatWeek(r.date,o-a,u,u);let[e,t]=_xeUtils.default.toDateString(s,"yyyy-M-MM-dd-HH-mm-ss").split("-");s=""+_xeUtils.default.getYearWeek(s,c?c.startDay:void 0);let l=(e=M(s,t)?""+(Number(e)+1):e)+"-"+s;d[l]=i+(o-a)*f,a--}}}),(e,t)=>{var e=ee(e),t=ee(t),e=n?e:_xeUtils.default.getWhatWeek(e,0,"first",u),l=Ue(e,u),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,"first",u),t=n?t:_xeUtils.default.getWhatWeek(t,0,"first",u),r=Ue(t,u),r=r.yyyy+"-"+r.W,i=_xeUtils.default.getWhatWeek(t,0,"first",u);let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/dayMs/7,o=(t.getTime()-i.getTime())/dayMs/7,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"day":case"date":{let u="yyyy-MM-dd",n=/H|m|s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatDay(e,0,"first"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatDay(t,0,"last"),i=_xeUtils.default.getWhatDay(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/dayMs,o=(t.getTime()-i.getTime())/dayMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"hour":{let u="yyyy-MM-dd HH",n=/m|s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatHours(e,0,"first"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatHours(t,0,"last"),i=_xeUtils.default.getWhatHours(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/hourMs,o=(t.getTime()-i.getTime())/hourMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"minute":{let u="yyyy-MM-dd HH:mm",n=/s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatMinutes(e,0,"first"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatMinutes(t,0,"last"),i=_xeUtils.default.getWhatMinutes(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/minuteMs,o=(t.getTime()-i.getTime())/minuteMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"second":{let u="yyyy-MM-dd HH:mm:ss",n=/S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatSeconds(e,0,"first"),a=_xeUtils.default.getWhatSeconds(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatSeconds(t,0,"last"),i=_xeUtils.default.getWhatSeconds(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/secondMs,o=(t.getTime()-i.getTime())/secondMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},We=()=>{var z=G.linkList,Y=te.treeConfig,e=Z.scrollXStore,t=Z.xeTable;let o=null,u=null,n=[];if(t){let r=A.value,i=ae.value,s=K.value;var{computeAggregateOpts:l,computeTreeOpts:a}=t.getComputeMaps(),d=t.reactData.isRowGroupStatus,{afterFullData:t,afterTreeFullData:F,afterGroupFullData:c}=t.internalData,l=l.value,a=a.value,j=a.transform,I=a.children||a.childrenField,f=e=>{let t=_xeUtils.default.get(e,r),l=_xeUtils.default.get(e,i);var a=_xeUtils.default.get(e,s),a=(0,_util.hasMilestoneTask)(a);t=t||l,!a&&l||(l=t),t&&(a=ee(t),!o||o.getTime()>a.getTime())&&(o=a),l&&(a=ee(l),!u||u.getTime()<a.getTime())&&(u=a),n.push(e)};d?(d=l.mapChildrenField)&&_xeUtils.default.eachTree(c,f,{children:d}):Y?_xeUtils.default.eachTree(F,f,{children:j?a.mapChildrenField:I}):t.forEach(f)}e.startIndex=0,e.endIndex=Math.max(1,e.visibleSize),J.minViewDate=o,J.maxViewDate=u,Z.startMaps={},Z.endMaps={},(()=>{var e=N.props.treeConfig,{minViewDate:t,maxViewDate:l}=J,{fullCols:a,groupCols:r}=Te();if(t&&l&&a.length){let c=Z.xeTable;if(c){let s=A.value,o=ae.value,u=K.value;var{computeAggregateOpts:t,computeTreeOpts:l}=c.getComputeMaps(),i=c.reactData.isRowGroupStatus,{afterFullData:f,afterTreeFullData:h,afterGroupFullData:v}=c.internalData,t=t.value,l=l.value,g=l.transform,m=l.children||l.childrenField;let n={},d=De(a);var _=e=>{var t=c.getRowid(e);let l=_xeUtils.default.get(e,s),a=_xeUtils.default.get(e,o);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,u)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?n[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=d(l,a),n[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,_,{children:i}):e?_xeUtils.default.eachTree(h,_,{children:g?l.mapChildrenField:m}):f.forEach(_),Z.chartMaps=n}}Z.visibleColumn=a,J.headerGroups=r,we(),Re(),Oe()})();var l=n,c=z,d=le.value,r=Z.xeTable,i=[],s=new Map,h=new Map;if(Q.criticalRowList=i,Q.criticalRowMaps=s,Q.criticalLinkKeyMaps=h,d.showCriticalPath&&c.length&&l.length&&r){var v,X=Z.chartMaps,g=new Map;for(v of l){var m=r.getRowid(v),_=X[m];g.set(m,{row:v,rowid:m,duration:_?_.oWidthSize:0,incoming:[],outgoing:[],indeg:0,ES:0,EF:0,LS:0,LF:0})}var x,p=[];for(x of c){var V,y=""+x.from,S=""+x.to;g.has(y)&&g.has(S)&&y!=S&&(y={from:x.from,to:x.to,type:_xeUtils.default.toNumber(x.type)||0,raw:x},p.push(y),S=g.get(""+x.to),(V=g.get(""+x.from))&&V.outgoing.push(y),S)&&(S.incoming.push(y),S.indeg++)}let t=[];g.forEach(e=>{0===e.indeg&&t.push(e)});var b=[];for(let e=0;e<t.length;e++){var w,$=t[e];b.push($);for(w of $.outgoing){var q,T=g.get(""+w.to);T&&(q=T.indeg-1,0==(T.indeg=q))&&t.push(g.get(""+w.to))}}if(b.length!==g.size)(G.criticalRowIds.length||G.criticalLinks.length)&&G.criticalPathFlag++,G.criticalLinks=[],G.criticalRowIds=[];else{let l=0;for(var U of b){let e=0;for(var D of U.incoming){var W=g.get(""+D.from);W&&(D=((e,t,l,a)=>{switch(e){case FinishToStart:return l;case StartToFinish:return t-a;case StartToStart:return t;case FinishToFinish:return l-a;default:return 0}})(D.type,W.ES,W.EF,U.duration))>e&&(e=D)}U.ES=e,U.EF=e+U.duration,U.EF>l&&(l=U.EF)}for(let t=b.length-1;0<=t;t--){var M,E=b[t];let e=l;for(M of E.outgoing){var k=g.get(""+M.to);k&&(k=((e,t,l,a)=>{switch(e){case FinishToStart:return t;case StartToFinish:return l+a;case StartToStart:return t+a;case FinishToFinish:return l;default:return-1}})(M.type,k.LS,k.LF,E.duration))<e&&(e=k)}E.LF=e,E.LS=e-E.duration}var L,H=new Set,B=[];for(L of b)Math.abs(L.LS-L.ES)<1e-6&&(H.add(L.rowid),B.push(L.rowid),i.push(L.row),s.set(L.rowid,L.row));var C,P=[];for(C of p){var R=g.get(""+C.to),O=g.get(""+C.from);R&&O&&H.has(O.rowid)&&H.has(R.rowid)&&((e,t,l,a,r,i)=>{switch(e){case FinishToStart:return Math.abs(l-a)<i;case StartToFinish:return Math.abs(t-r)<i;case StartToStart:return Math.abs(t-a)<i;case FinishToFinish:return Math.abs(l-r)<i;default:return}})(C.type,O.ES,O.EF,R.ES,R.EF,1e-6)&&(P.push(C.raw),h.set(getTaskLinkKey(C.from,C.to,C.type),C.raw))}G.criticalLinks=P,G.criticalRowIds=B,G.criticalPathFlag++}}else(G.criticalRowIds.length||G.criticalLinks.length)&&G.criticalPathFlag++,G.criticalLinks=[],G.criticalRowIds=[]};let m=()=>{var{scrollXWidth:e,scrollYHeight:t}=J,l=Z.elemStore,a=f.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=d.value,i=c.value,s=!1;l&&(s=t>l.clientHeight,i&&(t=a.width||i.offsetWidth-i.clientWidth||14,J.scrollbarWidth=t,G.scrollbarWidth=t),J.overflowY=s,G.overflowY=s,i=e>l.clientWidth,r&&(t=a.height||r.offsetHeight-r.clientHeight||14,J.scrollbarHeight=t,G.scrollbarHeight=t),J.overflowX=i,G.overflowX=i)},Me=(l,e)=>{let a=Z.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=K.value,i=0,s=0;return _xeUtils.default.eachTree(e,e=>{var t=l.getRowid(e),e=_xeUtils.default.get(e,r);(0,_util.hasSubviewTask)(e)||(e=t?a[t]:null)&&(s=Math.max(s,e.oLeftSize+e.oWidthSize),i=i?Math.min(i,e.oLeftSize):e.oLeftSize)},{children:t}),{minSize:i,maxSize:s}},Ee=()=>{let s=Q.dragBarRow,o=J.viewCellWidth,{elemStore:e,chartMaps:u}=Z,n=Z.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&n){var l=n.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),s&&n.getRowid(s)===e||(l=(e=e?u[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?u[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=Me(n,t),e.style.left=o*t+"px",e.style.width=o*(l-t)+"px"):(e.style.left=(0,_util.getTaskBarLeft)(a,o)+"px",(0,_dom.hasClass)(e,"is--milestone")||(e.style.width=(0,_util.getTaskBarWidth)(a,o)+"px")))}):(t=(t=t.children[0])?t.children[0]:null)&&(l=l?l[i]:[],{minSize:l,maxSize:a}=Me(n,l),t.style.left=o*l+"px",t.style.width=o*(a-l)+"px")):(r.style.left=(0,_util.getTaskBarLeft)(e,o)+"px",(0,_dom.hasClass)(r,"is--milestone")||(r.style.width=(0,_util.getTaskBarWidth)(e,o)+"px"))))})}return(0,_vue.nextTick)()},_=()=>{var o=G.showLeftView,{scrollbarWidth:u,scrollbarHeight:n,headerGroups:d,tableColumn:c}=J,{elemStore:f,visibleColumn:h}=Z,v=Z.xeTable,g=s.value;if(g&&N){var m=b.value,_=w.value,x=T.value,p=z.value,y=Y.value,S=R.value;let e=u;u=n;let t=0,l=0,a=0,r=(v&&(n=v.internalData,t=n.tBodyHeight,l=n.tHeaderHeight,a=n.tFooterHeight),"visible");(!1===m||"hidden"===m||x&&o)&&(e=0,r="hidden");var v=(0,_util.getRefElem)(f["main-header-scroll"]),n=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/d.length+"px")),(0,_util.getRefElem)(f["main-body-scroll"])),m=(n&&(n.style.height=t+"px"),(0,_util.getRefElem)(f["main-footer-scroll"])),x=(m&&(m.style.height=a+"px"),S&&(S.style.height=u+"px",S.style.visibility="visible"),j.value),o=(x&&(x.style.left=_?e+"px":"",x.style.width=g.clientWidth-e+"px"),p&&(p.style.width=_?e+"px":"",p.style.display=_&&u?"block":""),y&&(y.style.width=_?"":e+"px",y.style.display=!_&&u?"block":""),O.value),v=(o&&(o.style.width=e+"px",o.style.height=t+l+a+"px",o.style.visibility=r),F.value),d=(v&&(v.style.height=l+"px",v.style.display=l?"block":""),I.value),m=(d&&(d.style.height=t+"px",d.style.top=l+"px"),X.value),S=(m&&(m.style.height=a+"px",m.style.top=l+t+"px",m.style.display=a?"block":""),q.value);let i=40,s=i=S?S.clientWidth||40:i;h.length&&(s=Math.max(0,i*h.length),n)&&0<(g=(x=n.clientWidth)-s)&&(i+=Math.max(0,g/h.length),s=x),J.viewCellWidth=i;p=(0,_util.getRefElem)(f["main-header-table"]),y=(0,_util.getRefElem)(f["main-body-table"]),_=i*c.length;return p&&(p.style.width=s+"px"),y&&(y.style.width=_+"px"),J.scrollXWidth=s,Promise.all([Ee(),N.handleUpTaskLinkStyle?N.handleUpTaskLinkStyle(U):null])}},o=()=>{var e=s.value;return Z.rceRunTime=Date.now(),e&&e.clientWidth&&N?(m(),_(),(0,_vue.nextTick)().then(()=>{var e,t=J.scrollXLoad,l=Z.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=Le(),l.preloadSize=1,l.offsetSize=2,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+2,l.endIndex),l.visibleStartIndex=Math.max(l.startIndex,t),l.visibleEndIndex=Math.min(l.endIndex,t+e),Ce().then(()=>{He()})):u()})):(0,_vue.nextTick)()},ke=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=Z,a=Z.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),n(),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(o()):(0,_vue.nextTick)(()=>{e()}),Z.rceTimeout=setTimeout(()=>{Z.rceTimeout=void 0,o()},r)}),Le=()=>{var e,t=J.viewCellWidth,l=Z.elemStore,l=(0,_util.getRefElem)(l["main-body-scroll"]);return l?(e=l.clientWidth,l=l.scrollLeft,l=Math.floor(l/t)-1,e=Math.ceil(e/t)+1,{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}},He=()=>{var e=J.isScrollXBig,t=Z.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:s,visibleSize:o}=Le(),e={startIndex:Math.max(0,e?s-1:s-1-i-l),endIndex:e?s+o:s+o+i+l},{startIndex:i,endIndex:l}=(t.visibleStartIndex=s-1,t.visibleEndIndex=s+o+1,e);!(s<=a||r-o-1<=s)||a===i&&r===l||(t.startIndex=i,t.endIndex=l,Ce())},Ce=()=>(Oe(),u(),(0,_vue.nextTick)()),Re=()=>J.scrollXLoad=!0,Oe=()=>{var e=J.scrollXLoad,{visibleColumn:t,scrollXStore:l}=Z,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);J.tableColumn=e},u=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=J,{elemStore:a,scrollXStore:r}=Z;var i=(0,_util.getRefElem)(a["main-body-table"]),s=r.startIndex;let o=0,u=(t&&(o=Math.max(0,s*l)),i&&(i.style.transform=`translate(${o}px, ${J.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?u+"px":"")});s=V.value,s&&(s.style.width=u+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),s=i?i.firstElementChild:null,s&&(s.style.width=u+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),s=i?i.firstElementChild:null;return s&&(s.style.width=u+"px"),J.scrollXLeft=o,J.scrollXWidth=u,m(),(0,_vue.nextTick)()},ze=()=>{He()},Ye=(e,t)=>{var l=Z.lcsTimeout;J.lazScrollLoading=!0,l&&clearTimeout(l),Z.lcsTimeout=setTimeout(()=>{Z.lcsRunTime=Date.now(),Z.lcsTimeout=void 0,Z.intoRunScroll=!1,Z.inVirtualScroll=!1,Z.inWheelScroll=!1,Z.inHeaderScroll=!1,Z.inBodyScroll=!1,Z.inFooterScroll=!1,J.lazScrollLoading=!1},200)},Fe=(e,t,l,a)=>{t&&(Z.lastScrollLeft=a),e&&(Z.lastScrollTop=l),J.lastScrollTime=Date.now(),Ye(t,e)},x=(n,d,c,f,h)=>{var v=Z.xeTable,{elemStore:g,lastScrollLeft:m,lastScrollTop:_}=Z,g=(0,_util.getRefElem)(g["main-body-scroll"]);if(g&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:x}=v.getComputeMaps(),p=g.clientHeight,y=g.clientWidth,S=g.scrollHeight,g=g.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,s=!1,o=!1,u=!1;c&&(v=v.value,(l=h<=0)||(a=g-1<=h+y),m<h?(r="right",g-v<=h+y&&(u=!0)):(r="left",h<=v&&(o=!0))),d&&(m=x.value,(e=f<=0)||(t=S-1<=f+p),_<f?(r="bottom",S-m<=f+p&&(s=!0)):(r="top",f<=m&&(i=!0))),me(),Fe(d,c,f,h);v={source:sourceType,scrollTop:f,scrollLeft:h,bodyHeight:p,bodyWidth:y,scrollHeight:S,scrollWidth:g,isX:c,isY:d,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(s||i||u||o)&&N.dispatchEvent("scroll-boundary",v,n),N.dispatchEvent("scroll",v,n)}},je=e=>{var t=Z.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:_,handleLazyRecalculate:ke,handleUpdateCurrentRow(e){var t,l,a=Z.xeTable,r=s.value;a&&r&&(e?(t=a.props,l=a.getComputeMaps().computeRowOpts,(l.value.isCurrent||t.highlightCurrentRow)&&_xeUtils.default.arrayEach(r.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${a.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--current"))):_xeUtils.default.arrayEach(r.querySelectorAll(".vxe-gantt-view--body-row.row--current"),e=>(0,_dom.removeClass)(e,"row--current")))},handleUpdateHoverRow(e){var t=Z.xeTable,l=s.value;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${t.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--hover")):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-gantt-view--body-row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")))},triggerHeaderScrollEvent(e){var{elemStore:t,inVirtualScroll:l,inBodyScroll:a,inFooterScroll:r}=Z;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=d.value,a&&l&&(t=l.scrollLeft,Z.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),x(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=J.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:s,inFooterScroll:o,lastScrollLeft:u,lastScrollTop:n}=Z;i||s||o||(i=e.currentTarget,s=(0,_util.getRefElem)(r["main-header-scroll"]),o=d.value,r=c.value,u=(t=i.scrollLeft)!==u,n=(l=i.scrollTop)!==n,Z.inBodyScroll=!0,Z.scrollRenderType="",n&&((0,_dom.setScrollTop)(r,l),je(l)),u&&(Z.inBodyScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(s,t),a)&&ze(),x(e,n,u,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=J.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=Z;r||i||(r=e.currentTarget,i=(0,_util.getRefElem)(a["main-header-scroll"]),a=(0,_util.getRefElem)(a["main-body-scroll"]),r&&(t=r.scrollLeft,Z.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&ze(),x(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=Z;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,Z.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),je(e),Fe(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return u()},handleUpdateSYSpace(){return(()=>{var{scrollYLoad:e,overflowY:t}=J,l=Z.elemStore,a=Z.xeTable,r=(0,_util.getRefElem)(l["main-body-scroll"]),i=(0,_util.getRefElem)(l["main-body-table"]);let s=0,o=0,u=!1,n=(a&&(a=a.reactData,s=a.scrollYTop,o=a.scrollYHeight,u=a.isScrollYBig),o),d=s,c=0;r&&(c=r.clientHeight),u&&(d=r&&i&&r.scrollTop+c>=maxYHeight?maxYHeight-i.clientHeight:(maxYHeight-c)*(s/(o-c)),n=maxYHeight),e&&t||(d=0);a=(0,_util.getRefElem)(l["main-chart-task-wrapper"]),i&&(i.style.transform=`translate(${J.scrollXLeft||0}px, ${d}px)`),a&&(a.style.transform=`translateY(${d}px)`),r=(0,_util.getRefElem)(l["main-body-ySpace"]),r&&(r.style.height=n?n+"px":""),e=$.value,e&&(e.style.height=n?n+"px":""),t=(0,_util.getRefElem)(l["main-chart-before-wrapper"]),i=t?t.firstElementChild:null,i&&(i.style.height=n?n+"px":""),a=(0,_util.getRefElem)(l["main-chart-after-wrapper"]),r=a?a.firstElementChild:null,r&&(r.style.height=n?n+"px":""),e=(0,_util.getRefElem)(l["main-chart-now-line"]);return e&&(e.style.height=n?n+"px":""),J.scrollYTop=d,J.scrollYHeight=o,J.isScrollYBig=u,m(),(0,_vue.nextTick)().then(()=>{_()})})()},handleUpdateSYStatus(e){J.scrollYLoad=e},updateScrollbar(){return n()}};let n=()=>{ge(),me()},Ie=()=>{ke()},Xe=()=>{let{elemStore:t,scrollObserver:e}=Z;var l=h.value;if(l&&!e){var l=s.value,a=(0,_util.getRefElem)(t["main-body-xSpace"]),r=(0,_util.getRefElem)(t["main-body-xSpace"]);let e=globalResize.create(()=>{y.value++});l&&e.observe(l),a&&e.observe(a),r&&e.observe(r),Z.scrollObserver=e}},Ve=(Object.assign(U,{getScrollViewElem(){var e=Z.elemStore;return(0,_util.getRefElem)(e["main-body-scroll"])},refreshData(){return We(),o(),(0,_vue.nextTick)().then(()=>{var e=Z.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=Z.xeTable;return t&&(t=t.reactData.tableData,J.tableData=t,e&&(G.currLeftSpacing=0,G.currRightSpacing=0,We()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(Z.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:R,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:z,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:j,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:d,class:"vxe-gantt-view--scroll-x-handle",onScroll:U.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:V,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-x-right-corner"})])),$e=()=>(0,_vue.h)("div",{key:"vsy",ref:O,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:F,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:I,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:c,class:"vxe-gantt-view--scroll-y-handle",onScroll:U.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:$,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:X,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),p=()=>(0,_vue.h)("div",{key:"tvw",class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),qe=()=>{var e=T.value;return(0,_vue.h)("div",{key:"lnb",class:"vxe-gantt-view--layout-wrapper"},e?[$e(),p()]:[p(),$e()])};let y=(0,_vue.ref)(0);return(0,_vue.watch)(P,()=>{(0,_vue.nextTick)(()=>{Xe(),(0,_vue.nextTick)(()=>{y.value++})})}),(0,_vue.watch)(w,()=>{y.value++}),(0,_vue.watch)(T,()=>{y.value++}),(0,_vue.watch)(v,()=>{y.value++}),(0,_vue.watch)(b,()=>{y.value++}),(0,_vue.watch)(re,()=>{y.value++}),(0,_vue.watch)(ie,()=>{y.value++}),(0,_vue.watch)(y,()=>{(0,_vue.nextTick)(()=>{n(),(0,_vue.nextTick)(()=>{n()})})}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{Xe()}),globalEvents.on(U,"resize",Ie)}),(0,_vue.onBeforeUnmount)(()=>{var e=Z.scrollObserver;e&&e.disconnect(),_xeUtils.default.assign(J,createReactData()),_xeUtils.default.assign(Z,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(U,"keydown")}),U.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=J,r=h.value,i=w.value;return(0,_vue.h)("div",{ref:s,class:["vxe-gantt-view",{"is--scroll-y":t,"is--scroll-x":e,"is--virtual-x":l,"is--virtual-y":a}]},[(0,_vue.h)("div",{class:"vxe-gantt-view--render-wrapper"},r?[(()=>{var e=G.showLeftView,{xThumbWidth:t,yThumbHeight:l}=J,a=h.value,r=f.value,i=se.value,s=oe.value,o=v.value,u=b.value,n=w.value,d=T.value,c=ue.value;return(0,_vue.h)("div",{key:"lvb",class:["vxe-gantt--layout-wrapper","sx-pos--"+(n?"top":"bottom"),"sy-pos--"+(d?"left":"right"),{"is--virtual-scrollbar":a,"ov-padding":a&&r.padding,"ov-x--auto-hide":a&&i,"ov-y--auto-hide":a&&s,"overflow-y":l,"overflow-x":t}]},[p(),(0,_vue.h)("div",{class:c},[!1===o?renderEmptyElement(N):(0,_vue.h)("div",{ref:ce,class:"vxe-scrollbar--track-x",onClick:_e},[(0,_vue.h)("div",{ref:he,class:"vxe-scrollbar--thumb-x",onPointerdown:pe,onPointermove:ye,onPointerup:g,onPointercancel:g,onLostpointercapture:g})]),d&&e||!1===u?renderEmptyElement(N):(0,_vue.h)("div",{ref:fe,class:"vxe-scrollbar--track-y",onClick:xe},[(0,_vue.h)("div",{ref:ve,class:"vxe-scrollbar--thumb-y",onPointerdown:Se,onPointermove:be,onPointerup:g,onPointercancel:g,onLostpointercapture:g})])])])})()]:i?[Ve(),qe()]:[qe(),Ve()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:q,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",U),U},render(){return this.renderVN()}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_utils=require("../../ui/src/utils"),_util=require("./util"),_static=require("./static"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let{getConfig,domUtils,globalResize,globalEvents,renderEmptyElement}=_core.VxeUI,{FinishToStart,StartToFinish,StartToStart,FinishToFinish}=_static.VxeGanttDependencyType,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function getTaskLinkKey(e,t,l){return e+"_"+t+"_"+(l||0)}function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,yThumbHeight:0,xThumbWidth:0,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(y,S){var k=_xeUtils.default.uniqueId();let l=Object.assign({},getConfig().scrollbar),G=(0,_vue.inject)("$xeGantt",{}),te=G.props,N=G.reactData,Q=G.internalData,{computeDateFormat:r,computeTaskBarOpts:le,computeTaskViewOpts:t,computeStartField:A,computeEndField:ae,computeTypeField:K,computeScrollbarOpts:f,computeScaleUnit:L,computeWeekScale:H,computeMinScale:D,computeTaskNowLineOpts:C,computeScaleStep:W,computeIsVScrollbar:R}=G.getComputeMaps(),s=(0,_vue.ref)(),O=(0,_vue.ref)(),z=(0,_vue.ref)(),d=(0,_vue.ref)(),Y=(0,_vue.ref)(),F=(0,_vue.ref)(),c=(0,_vue.ref)(),j=(0,_vue.ref)(),I=(0,_vue.ref)(),X=(0,_vue.ref)(),V=(0,_vue.ref)(),$=(0,_vue.ref)(),q=(0,_vue.ref)(),B=(0,_vue.ref)(),J=(0,_vue.reactive)(createReactData()),Z=createInternalData(),P={refElem:s,refScrollXHandleElem:d,refScrollYHandleElem:c},b=(0,_vue.computed)(()=>R.value),a=(0,_vue.computed)(()=>{var e=f.value;return e.x?Object.assign({},e.x,e.xConfig):e.xConfig||{}}),i=(0,_vue.computed)(()=>{var e=f.value;return e.y?Object.assign({},e.y,e.yConfig):e.yConfig||{}});var re=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.height,e.height),l.height))}),ie=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return _xeUtils.default.toNumber((0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.width,e.width),l.width))});let h=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return(0,_utils.getDefaultConfig)(t.visible,e.visible)}),w=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return(0,_utils.getDefaultConfig)(t.visible,e.visible)}),se=(0,_vue.computed)(()=>{var e=f.value,t=a.value;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.autoHide,e.autoHide),l.autoHide)}),oe=(0,_vue.computed)(()=>{var e=f.value,t=i.value;return(0,_utils.getDefaultConfig)((0,_utils.getDefaultConfig)(t.autoHide,e.autoHide),l.autoHide)}),T=(0,_vue.computed)(()=>"top"===a.value.position),U=(0,_vue.computed)(()=>"left"===i.value.position),ue=(0,_vue.computed)(()=>{var{yThumbHeight:e,xThumbWidth:t}=J,l=T.value,a=U.value,r=h.value,i=w.value;return domUtils.buildClass(["vxe-scrollbar is--virtual","ov-x--"+(!1===r?"hidden":"visible"),"ov-y--"+(!1===i?"hidden":"visible"),"sx-pos--"+(l?"top":"bottom"),"sy-pos--"+(a?"left":"right")],{"overflow-y":e,"overflow-x":t})}),ne=(0,_vue.computed)(()=>{var{minViewDate:a,maxViewDate:r}=J,e=t.value,i=D.value,s=W.value,e=e.gridding,o=[];if(i&&a&&r){var{type:i,startDay:u}=i;let t=-(N.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),l=N.currRightSpacing+_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(0<s&&(t*=s,l*=s),i){case"year":{let e=_xeUtils.default.getWhatYear(a,t,"first");for(var n=_xeUtils.default.getWhatYear(r,l,"first");e<=n;){var d=e;o.push(d),e=_xeUtils.default.getWhatYear(e,s)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(a,t,"first");for(var c=_xeUtils.default.getWhatQuarter(r,l,"first");e<=c;){var f=e;o.push(f),e=_xeUtils.default.getWhatQuarter(e,s)}break}case"month":{let e=_xeUtils.default.getWhatMonth(a,t,"first");for(var h=_xeUtils.default.getWhatMonth(r,l,"first");e<=h;){var v=e;o.push(v),e=_xeUtils.default.getWhatMonth(e,s)}break}case"week":{let e=_xeUtils.default.getWhatWeek(a,t,u,u);for(var g=_xeUtils.default.getWhatWeek(r,l,u,u);e<=g;){var m=e;o.push(m),e=_xeUtils.default.getWhatWeek(e,s)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(a,t,"first");for(var _=_xeUtils.default.getWhatDay(r,l,"first");e<=_;){var p=e;o.push(p),e=_xeUtils.default.getWhatDay(e,s)}break}case"hour":{let e=_xeUtils.default.getWhatHours(a,t,"first");for(var x=_xeUtils.default.getWhatHours(r,l,"first");e<=x;){var y=e;o.push(y),e=_xeUtils.default.getWhatHours(e,s)}break}case"minute":{let e=_xeUtils.default.getWhatMinutes(a,t,"first");for(var S=_xeUtils.default.getWhatMinutes(r,l,"first");e<=S;){var b=e;o.push(b),e=_xeUtils.default.getWhatMinutes(e,s)}break}case"second":{let e=_xeUtils.default.getWhatSeconds(a,t,"first");for(var w=_xeUtils.default.getWhatSeconds(r,l,"first");e<=w;){var T=e;o.push(T),e=_xeUtils.default.getWhatSeconds(e,s)}break}}}return o});var e=(0,_vue.computed)(()=>{var{minViewDate:e,maxViewDate:a,viewCellWidth:r}=J,{visibleColumn:i,todayDateMaps:s}=Z,o=D.value,u=t.value.showNowLine,n=C.value.mode,d=N.nowTime;let c=0;if(u&&o&&e&&a&&d>=e.getTime()&&d<=a.getTime()){var u=s[o.type],f=_xeUtils.default.toStringDate(u);let t=null,l=null;for(let e=0;e<i.length;e++){var h=i[e],{startDateObj:v,endDateObj:g}=h;if(v.date<=f&&g.date>=f){t=h,c=e*r,l=i[e+1];break}}"progress"===n?t&&l&&(e=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(d-e)/(l.dateObj.date.getTime()-e))),c+=a*r):"center"===n?c+=r/2:"end"===n&&(c+=r-1)}return c});let de={computeScrollXHeight:re,computeScrollYWidth:ie,computeScrollXVisible:h,computeScrollYVisible:w,computeScrollXAutoHide:se,computeScrollYAutoHide:oe,computeScrollbarXToTop:T,computeScrollbarYToLeft:U,computeScaleDateList:ne,computeNowLineLeft:e},M={xID:k,props:y,context:S,reactData:J,internalData:Z,getRefMaps:()=>P,getComputeMaps:()=>de},{refTrackXElem:ce,refTrackYElem:fe,refThumbXElem:he,refThumbYElem:ve,updateThumbSize:ge,updateThumbOffset:me,clickTrackXEvent:_e,clickTrackYEvent:pe,pointerdownThumbXEvent:xe,pointermoveThumbXEvent:ye,cleatPointerThumbEvent:v,pointerdownThumbYEvent:Se,pointermoveThumbYEvent:be}=_core.useFns.useInitVScrollbar(M),ee=e=>{var t=r.value;return _xeUtils.default.toStringDate(e,t)},we=()=>{var o=N.taskScaleList,u=D.value;if(u){var o=o.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,s]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var d=n.getDay()+1,c=Math.ceil((n.getMonth()+1)/3),o=""+_xeUtils.default.getYearWeek(n,o?o.startDay:void 0);u&&E(o,t)&&(e=""+(Number(e)+1),l="01"),N.nowTime=n.getTime(),Z.todayDateMaps={year:e,quarter:e+"_q"+c,month:e+"_"+l,week:e+"_W"+o,day:`${e}_${l}_${a}_E`+d,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+s}}},Te=()=>{var e=N.taskScaleList,t=L.value;let o=D.value,x=H.value;var l=ne.value,a=W.value,r=x?x.startDay:void 0;let u=[],n=[];if(o&&t&&l.length){let i={year:[],quarter:[],month:[],week:[],day:[],date:[],hour:[],minute:[],second:[]},s={year:{},quarter:{},month:{},week:{},day:{},date:{},hour:{},minute:{},second:{}},p="week"===o.type;var d=(t,l,a)=>{if(o.type!==t){var l=l[t],r=""+l.field;let e=s[t][r];e||(e=l,s[t][r]=e,i[t].push(e)),e&&(e.children||(e.children=[]),e.children.push(a))}},c=e=>{let[t,l,a,r,i,s,o,u,n,d,c,f]=_xeUtils.default.toDateString(e,"yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss").split("-");var h=e.getDay(),v=h+1,g=Math.ceil((e.getMonth()+1)/3),m=""+_xeUtils.default.getYearWeek(e,x?x.startDay:void 0),_=_xeUtils.default.padStart(m,2,"0");return p&&E(m,a)&&(l=""+(Number(l)+1),a="1",r="0"+a),{date:e,yy:t,yyyy:l,M:a,MM:r,d:i,dd:s,H:o,HH:u,m:n,mm:d,s:c,ss:f,q:g,W:m,WW:_,E:v,e:h}};for(let e=0;e<l.length;e++){var f=l[e],h=c(f),{yyyy:v,MM:g,dd:m,HH:_,mm:y,ss:S,q:b,W:w,E:T}=h,U=h,b={year:{field:v,title:v,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatYear(f,a-1)):U},quarter:{field:v+"_q"+b,title:""+b,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatQuarter(f,a-1)):U},month:{field:v+"_"+g,title:g,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatMonth(f,a-1)):U},week:{field:v+"_W"+w,title:""+w,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatWeek(f,a-1,r,r)):U},day:{field:v+`_${g}_${m}_E`+T,title:""+T,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatDay(f,a-1)):U},date:{field:v+`_${g}_`+m,title:m,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatDay(f,a-1)):U},hour:{field:v+`_${g}_${m}_`+_,title:_,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatHours(f,a-1)):U},minute:{field:v+`_${g}_${m}_${_}_`+y,title:y,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatMinutes(f,a-1)):U},second:{field:v+`_${g}_${m}_${_}_${y}_`+S,title:S,dateObj:h,startDateObj:U,endDateObj:1<a?c(_xeUtils.default.getWhatSeconds(f,a-1)):U}},w=b[o.type];o.level<19&&d("year",b,w),o.level<17&&d("quarter",b,w),o.level<15&&d("month",b,w),o.level<13&&d("week",b,w),o.level<11&&d("day",b,w),o.level<9&&d("date",b,w),o.level<7&&d("hour",b,w),o.level<5&&d("minute",b,w),o.level<3&&d("second",b,w),u.push(w)}e.forEach(e=>{var t;e.type===o.type?n.push({scaleItem:e,columns:u}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),n.push({scaleItem:e,columns:t}))})}return{fullCols:u,groupCols:n}},E=(e,t)=>""+e=="1"&&""+t=="12",Ue=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return E(e,a+1)&&l++,{yyyy:l,W:e}},De=e=>{var t=D.value;let o=W.value;var l=L.value;let c=H.value;var a=r.value;if(t){let f=1<o?1/o:0;switch(l){case"year":{let n=/M|d|H|m|s|S/.test(a),d="yyyy",c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,"yyyy");if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(l.date,o-t),d);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,d),r=n?e:_xeUtils.default.getWhatYear(e,0,"first"),e=_xeUtils.default.getWhatYear(e,0,"first"),i=_xeUtils.default.toDateString(t,d),t=n?t:_xeUtils.default.getWhatYear(t,0,"last"),s=_xeUtils.default.getWhatYear(t,0,"first");let o=0,u=1;n&&(l=_xeUtils.default.getDayOfYear(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfYear(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"quarter":{let n=/M|d|H|m|ss|S/.test(a),d="yyyy-q",c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(l.date,o-t),d);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,d),r=n?e:_xeUtils.default.getWhatQuarter(e,0,"first"),e=_xeUtils.default.getWhatQuarter(e,0,"first"),i=_xeUtils.default.toDateString(t,d),t=n?t:_xeUtils.default.getWhatQuarter(t,0,"last"),s=_xeUtils.default.getWhatQuarter(t,0,"first");let o=0,u=1;n&&(l=_xeUtils.default.getDayOfQuarter(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfQuarter(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"month":{let n="yyyy-MM",d=/d|H|m|ss|S/.test(a),c={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,n);if(c[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(l.date,o-t),n);c[e]=a+(o-t)*f,t--}}}),(e,t)=>{var l,e=ee(e),t=ee(t),a=_xeUtils.default.toDateString(e,n),r=d?e:_xeUtils.default.getWhatMonth(e,0,"first"),e=_xeUtils.default.getWhatMonth(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=d?t:_xeUtils.default.getWhatMonth(t,0,"last"),s=_xeUtils.default.getWhatMonth(t,0,"first");let o=0,u=1;d&&(l=_xeUtils.default.getDayOfMonth(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfMonth(t,0),u=(t.getTime()-s.getTime())/dayMs/r,f)&&(o*=f,u*=f);e=(c[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(c[i]||0)-e+u}}}case"week":{let u=c?c.startDay:void 0,n=/d|H|m|s|S/.test(a),d={};return e.forEach(({dateObj:r},i)=>{let e=r.yyyy+"-"+r.W;if(d[e]=i,f){let a=o-1;for(;a;){var s=_xeUtils.default.getWhatWeek(r.date,o-a,u,u);let[e,t]=_xeUtils.default.toDateString(s,"yyyy-M-MM-dd-HH-mm-ss").split("-");s=""+_xeUtils.default.getYearWeek(s,c?c.startDay:void 0);let l=(e=E(s,t)?""+(Number(e)+1):e)+"-"+s;d[l]=i+(o-a)*f,a--}}}),(e,t)=>{var e=ee(e),t=ee(t),e=n?e:_xeUtils.default.getWhatWeek(e,0,"first",u),l=Ue(e,u),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,"first",u),t=n?t:_xeUtils.default.getWhatWeek(t,0,"first",u),r=Ue(t,u),r=r.yyyy+"-"+r.W,i=_xeUtils.default.getWhatWeek(t,0,"first",u);let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/dayMs/7,o=(t.getTime()-i.getTime())/dayMs/7,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"day":case"date":{let u="yyyy-MM-dd",n=/H|m|s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatDay(e,0,"first"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatDay(t,0,"last"),i=_xeUtils.default.getWhatDay(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/dayMs,o=(t.getTime()-i.getTime())/dayMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"hour":{let u="yyyy-MM-dd HH",n=/m|s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatHours(e,0,"first"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatHours(t,0,"last"),i=_xeUtils.default.getWhatHours(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/hourMs,o=(t.getTime()-i.getTime())/hourMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"minute":{let u="yyyy-MM-dd HH:mm",n=/s|S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatMinutes(e,0,"first"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatMinutes(t,0,"last"),i=_xeUtils.default.getWhatMinutes(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/minuteMs,o=(t.getTime()-i.getTime())/minuteMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}case"second":{let u="yyyy-MM-dd HH:mm:ss",n=/S/.test(a),d={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(d[e]=a,f){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(l.date,o-t),u);d[e]=a+(o-t)*f,t--}}}),(e,t)=>{var e=ee(e),t=ee(t),l=_xeUtils.default.toDateString(e,u),e=n?e:_xeUtils.default.getWhatSeconds(e,0,"first"),a=_xeUtils.default.getWhatSeconds(e,0,"first"),r=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatSeconds(t,0,"last"),i=_xeUtils.default.getWhatSeconds(t,0,"first");let s=0,o=1;n&&(s=(e.getTime()-a.getTime())/secondMs,o=(t.getTime()-i.getTime())/secondMs,f)&&(s*=f,o*=f);e=(d[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(d[r]||0)-e+o}}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},We=()=>{var z=N.linkList,Y=te.treeConfig,e=Z.scrollXStore,t=Z.xeTable;let o=null,u=null,n=[];if(t){let r=A.value,i=ae.value,s=K.value;var{computeAggregateOpts:l,computeTreeOpts:a}=t.getComputeMaps(),d=t.reactData.isRowGroupStatus,{afterFullData:t,afterTreeFullData:F,afterGroupFullData:c}=t.internalData,l=l.value,a=a.value,j=a.transform,I=a.children||a.childrenField,f=e=>{let t=_xeUtils.default.get(e,r),l=_xeUtils.default.get(e,i);var a=_xeUtils.default.get(e,s),a=(0,_util.hasMilestoneTask)(a);t=t||l,!a&&l||(l=t),t&&(a=ee(t),!o||o.getTime()>a.getTime())&&(o=a),l&&(a=ee(l),!u||u.getTime()<a.getTime())&&(u=a),n.push(e)};d?(d=l.mapChildrenField)&&_xeUtils.default.eachTree(c,f,{children:d}):Y?_xeUtils.default.eachTree(F,f,{children:j?a.mapChildrenField:I}):t.forEach(f)}e.startIndex=0,e.endIndex=Math.max(1,e.visibleSize),J.minViewDate=o,J.maxViewDate=u,Z.startMaps={},Z.endMaps={},(()=>{var e=G.props.treeConfig,{minViewDate:t,maxViewDate:l}=J,{fullCols:a,groupCols:r}=Te();if(t&&l&&a.length){let c=Z.xeTable;if(c){let s=A.value,o=ae.value,u=K.value;var{computeAggregateOpts:t,computeTreeOpts:l}=c.getComputeMaps(),i=c.reactData.isRowGroupStatus,{afterFullData:f,afterTreeFullData:h,afterGroupFullData:v}=c.internalData,t=t.value,l=l.value,g=l.transform,m=l.children||l.childrenField;let n={},d=De(a);var _=e=>{var t=c.getRowid(e);let l=_xeUtils.default.get(e,s),a=_xeUtils.default.get(e,o);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,u)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?n[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=d(l,a),n[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,_,{children:i}):e?_xeUtils.default.eachTree(h,_,{children:g?l.mapChildrenField:m}):f.forEach(_),Z.chartMaps=n}}Z.visibleColumn=a,J.headerGroups=r,we(),Re(),Oe()})();var l=n,c=z,d=le.value,r=Z.xeTable,i=[],s=new Map,h=new Map;if(Q.criticalRowList=i,Q.criticalRowMaps=s,Q.criticalLinkKeyMaps=h,d.showCriticalPath&&c.length&&l.length&&r){var v,X=Z.chartMaps,g=new Map;for(v of l){var m=r.getRowid(v),_=X[m];g.set(m,{row:v,rowid:m,duration:_?_.oWidthSize:0,incoming:[],outgoing:[],indeg:0,ES:0,EF:0,LS:0,LF:0})}var p,x=[];for(p of c){var V,y=""+p.from,S=""+p.to;g.has(y)&&g.has(S)&&y!=S&&(y={from:p.from,to:p.to,type:_xeUtils.default.toNumber(p.type)||0,raw:p},x.push(y),S=g.get(""+p.to),(V=g.get(""+p.from))&&V.outgoing.push(y),S)&&(S.incoming.push(y),S.indeg++)}let t=[];g.forEach(e=>{0===e.indeg&&t.push(e)});var b=[];for(let e=0;e<t.length;e++){var w,$=t[e];b.push($);for(w of $.outgoing){var q,T=g.get(""+w.to);T&&(q=T.indeg-1,0==(T.indeg=q))&&t.push(g.get(""+w.to))}}if(b.length!==g.size)(N.criticalRowIds.length||N.criticalLinks.length)&&N.criticalPathFlag++,N.criticalLinks=[],N.criticalRowIds=[];else{let l=0;for(var U of b){let e=0;for(var D of U.incoming){var W=g.get(""+D.from);W&&(D=((e,t,l,a)=>{switch(e){case FinishToStart:return l;case StartToFinish:return t-a;case StartToStart:return t;case FinishToFinish:return l-a;default:return 0}})(D.type,W.ES,W.EF,U.duration))>e&&(e=D)}U.ES=e,U.EF=e+U.duration,U.EF>l&&(l=U.EF)}for(let t=b.length-1;0<=t;t--){var M,E=b[t];let e=l;for(M of E.outgoing){var k=g.get(""+M.to);k&&(k=((e,t,l,a)=>{switch(e){case FinishToStart:return t;case StartToFinish:return l+a;case StartToStart:return t+a;case FinishToFinish:return l;default:return-1}})(M.type,k.LS,k.LF,E.duration))<e&&(e=k)}E.LF=e,E.LS=e-E.duration}var L,H=new Set,B=[];for(L of b)Math.abs(L.LS-L.ES)<1e-6&&(H.add(L.rowid),B.push(L.rowid),i.push(L.row),s.set(L.rowid,L.row));var C,P=[];for(C of x){var R=g.get(""+C.to),O=g.get(""+C.from);R&&O&&H.has(O.rowid)&&H.has(R.rowid)&&((e,t,l,a,r,i)=>{switch(e){case FinishToStart:return Math.abs(l-a)<i;case StartToFinish:return Math.abs(t-r)<i;case StartToStart:return Math.abs(t-a)<i;case FinishToFinish:return Math.abs(l-r)<i;default:return}})(C.type,O.ES,O.EF,R.ES,R.EF,1e-6)&&(P.push(C.raw),h.set(getTaskLinkKey(C.from,C.to,C.type),C.raw))}N.criticalLinks=P,N.criticalRowIds=B,N.criticalPathFlag++}}else(N.criticalRowIds.length||N.criticalLinks.length)&&N.criticalPathFlag++,N.criticalLinks=[],N.criticalRowIds=[]};let g=()=>{var{scrollXWidth:e,scrollYHeight:t}=J,l=Z.elemStore,a=f.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=d.value,i=c.value,s=!1;l&&(s=t>l.clientHeight,i&&(t=a.width||i.offsetWidth-i.clientWidth||14,J.scrollbarWidth=t,N.scrollbarWidth=t),J.overflowY=s,N.overflowY=s,i=e>l.clientWidth,r&&(t=a.height||r.offsetHeight-r.clientHeight||14,J.scrollbarHeight=t,N.scrollbarHeight=t),J.overflowX=i,N.overflowX=i)},Me=(l,e)=>{let a=Z.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=K.value,i=0,s=0;return _xeUtils.default.eachTree(e,e=>{var t=l.getRowid(e),e=_xeUtils.default.get(e,r);(0,_util.hasSubviewTask)(e)||(e=t?a[t]:null)&&(s=Math.max(s,e.oLeftSize+e.oWidthSize),i=i?Math.min(i,e.oLeftSize):e.oLeftSize)},{children:t}),{minSize:i,maxSize:s}},Ee=()=>{let s=Q.dragBarRow,o=J.viewCellWidth,{elemStore:e,chartMaps:u}=Z,n=Z.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&n){var l=n.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),s&&n.getRowid(s)===e||(l=(e=e?u[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?u[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=Me(n,t),e.style.left=o*t+"px",e.style.width=o*(l-t)+"px"):(e.style.left=(0,_util.getTaskBarLeft)(a,o)+"px",(0,_dom.hasClass)(e,"is--milestone")||(e.style.width=(0,_util.getTaskBarWidth)(a,o)+"px")))}):(t=(t=t.children[0])?t.children[0]:null)&&(l=l?l[i]:[],{minSize:l,maxSize:a}=Me(n,l),t.style.left=o*l+"px",t.style.width=o*(a-l)+"px")):(r.style.left=(0,_util.getTaskBarLeft)(e,o)+"px",(0,_dom.hasClass)(r,"is--milestone")||(r.style.width=(0,_util.getTaskBarWidth)(e,o)+"px"))))})}return(0,_vue.nextTick)()},m=()=>{var o=N.showLeftView,{scrollbarWidth:u,scrollbarHeight:n,headerGroups:d,tableColumn:c}=J,{elemStore:f,visibleColumn:h}=Z,v=Z.xeTable,g=s.value;if(g&&G){var m=w.value,_=T.value,p=U.value,x=Y.value,y=F.value,S=O.value;let e=u;u=n;let t=0,l=0,a=0,r=(v&&(n=v.internalData,t=n.tBodyHeight,l=n.tHeaderHeight,a=n.tFooterHeight),"visible");(!1===m||"hidden"===m||p&&o)&&(e=0,r="hidden");var v=(0,_util.getRefElem)(f["main-header-scroll"]),n=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/d.length+"px")),(0,_util.getRefElem)(f["main-body-scroll"])),m=(n&&(n.style.height=t+"px"),(0,_util.getRefElem)(f["main-footer-scroll"])),p=(m&&(m.style.height=a+"px"),S&&(S.style.height=u+"px",S.style.visibility="visible"),I.value),o=(p&&(p.style.left=_?e+"px":"",p.style.width=g.clientWidth-e+"px"),x&&(x.style.width=_?e+"px":"",x.style.display=_&&u?"block":""),y&&(y.style.width=_?"":e+"px",y.style.display=!_&&u?"block":""),z.value),v=(o&&(o.style.width=e+"px",o.style.height=t+l+a+"px",o.style.visibility=r),j.value),d=(v&&(v.style.height=l+"px",v.style.display=l?"block":""),X.value),m=(d&&(d.style.height=t+"px",d.style.top=l+"px"),V.value),S=(m&&(m.style.height=a+"px",m.style.top=l+t+"px",m.style.display=a?"block":""),B.value);let i=40,s=i=S?S.clientWidth||40:i;h.length&&(s=Math.max(0,i*h.length),n)&&0<(g=(p=n.clientWidth)-s)&&(i+=Math.max(0,g/h.length),s=p),J.viewCellWidth=i;x=(0,_util.getRefElem)(f["main-header-table"]),y=(0,_util.getRefElem)(f["main-body-table"]),_=i*c.length;return x&&(x.style.width=s+"px"),y&&(y.style.width=_+"px"),J.scrollXWidth=s,Promise.all([Ee(),G.handleUpTaskLinkStyle?G.handleUpTaskLinkStyle(M):null])}},o=()=>{var e=s.value;return Z.rceRunTime=Date.now(),e&&e.clientWidth&&G?(g(),m(),(0,_vue.nextTick)().then(()=>{var e,t=J.scrollXLoad,l=Z.scrollXStore;t?({toVisibleIndex:t,visibleSize:e}=Le(),l.preloadSize=1,l.offsetSize=2,l.visibleSize=e,l.endIndex=Math.max(l.startIndex+l.visibleSize+2,l.endIndex),l.visibleStartIndex=Math.max(l.startIndex,t),l.visibleEndIndex=Math.min(l.endIndex,t+e),Ce().then(()=>{He()})):u()})):(0,_vue.nextTick)()},ke=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=Z,a=Z.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),n(),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(o()):(0,_vue.nextTick)(()=>{e()}),Z.rceTimeout=setTimeout(()=>{Z.rceTimeout=void 0,o()},r)}),Le=()=>{var e,t=J.viewCellWidth,l=Z.elemStore,l=(0,_util.getRefElem)(l["main-body-scroll"]);return l?(e=l.clientWidth,l=l.scrollLeft,l=Math.floor(l/t)-1,e=Math.ceil(e/t)+1,{toVisibleIndex:Math.max(0,l),visibleSize:Math.max(1,e)}):{toVisibleIndex:0,visibleSize:6}},He=()=>{var e=J.isScrollXBig,t=Z.scrollXStore,{preloadSize:l,startIndex:a,endIndex:r,offsetSize:i}=t,{toVisibleIndex:s,visibleSize:o}=Le(),e={startIndex:Math.max(0,e?s-1:s-1-i-l),endIndex:e?s+o:s+o+i+l},{startIndex:i,endIndex:l}=(t.visibleStartIndex=s-1,t.visibleEndIndex=s+o+1,e);!(s<=a||r-o-1<=s)||a===i&&r===l||(t.startIndex=i,t.endIndex=l,Ce())},Ce=()=>(Oe(),u(),(0,_vue.nextTick)()),Re=()=>J.scrollXLoad=!0,Oe=()=>{var e=J.scrollXLoad,{visibleColumn:t,scrollXStore:l}=Z,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);J.tableColumn=e},u=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=J,{elemStore:a,scrollXStore:r}=Z;var i=(0,_util.getRefElem)(a["main-body-table"]),s=r.startIndex;let o=0,u=(t&&(o=Math.max(0,s*l)),i&&(i.style.transform=`translate(${o}px, ${J.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?u+"px":"")});s=$.value,s&&(s.style.width=u+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),s=i?i.firstElementChild:null,s&&(s.style.width=u+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),s=i?i.firstElementChild:null;return s&&(s.style.width=u+"px"),J.scrollXLeft=o,J.scrollXWidth=u,g(),(0,_vue.nextTick)()},ze=()=>{He()},Ye=(e,t)=>{var l=Z.lcsTimeout;J.lazScrollLoading=!0,l&&clearTimeout(l),Z.lcsTimeout=setTimeout(()=>{var e=Z.xeTable;Z.lcsRunTime=Date.now(),Z.lcsTimeout=void 0,Z.intoRunScroll=!1,Z.inVirtualScroll=!1,Z.inWheelScroll=!1,Z.inHeaderScroll=!1,Z.inBodyScroll=!1,Z.inFooterScroll=!1,J.lazScrollLoading=!1,e&&(e.internalData.isSyncGanttScrollTop=!1)},200)},Fe=(e,t,l,a)=>{t&&(Z.lastScrollLeft=a),e&&(Z.lastScrollTop=l),J.lastScrollTime=Date.now(),Ye(t,e)},_=(n,d,c,f,h)=>{var v=Z.xeTable,{elemStore:g,lastScrollLeft:m,lastScrollTop:_}=Z,g=(0,_util.getRefElem)(g["main-body-scroll"]);if(g&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:p}=v.getComputeMaps(),x=g.clientHeight,y=g.clientWidth,S=g.scrollHeight,g=g.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,s=!1,o=!1,u=!1;c&&(v=v.value,(l=h<=0)||(a=g-1<=h+y),m<h?(r="right",g-v<=h+y&&(u=!0)):(r="left",h<=v&&(o=!0))),d&&(m=p.value,(e=f<=0)||(t=S-1<=f+x),_<f?(r="bottom",S-m<=f+x&&(s=!0)):(r="top",f<=m&&(i=!0)));b.value&&me(),Fe(d,c,f,h);v={source:sourceType,scrollTop:f,scrollLeft:h,bodyHeight:x,bodyWidth:y,scrollHeight:S,scrollWidth:g,isX:c,isY:d,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(s||i||u||o)&&G.dispatchEvent("scroll-boundary",v,n),G.dispatchEvent("scroll",v,n)}},je=e=>{var t=Z.isSyncTableScrollTop;t||(t=Z.xeTable)&&(t.internalData.isSyncGanttScrollTop=!0,t.handleSyncScrollTop({scrollTop:e}))};e={handleUpdateStyle:m,handleLazyRecalculate:ke,handleUpdateCurrentRow(e){var t,l,a=Z.xeTable,r=s.value;a&&r&&(e?(t=a.props,l=a.getComputeMaps().computeRowOpts,(l.value.isCurrent||t.highlightCurrentRow)&&_xeUtils.default.arrayEach(r.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${a.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--current"))):_xeUtils.default.arrayEach(r.querySelectorAll(".vxe-gantt-view--body-row.row--current"),e=>(0,_dom.removeClass)(e,"row--current")))},handleUpdateHoverRow(e){var t=Z.xeTable,l=s.value;t&&l&&(e?_xeUtils.default.arrayEach(l.querySelectorAll(`.vxe-gantt-view--body-row[rowid="${t.getRowid(e)}"]`),e=>(0,_dom.addClass)(e,"row--hover")):_xeUtils.default.arrayEach(l.querySelectorAll(".vxe-gantt-view--body-row.row--hover"),e=>(0,_dom.removeClass)(e,"row--hover")))},handleSyncScrollTop(e){var e=e.scrollTop,t=Z.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]);t&&(t.scrollTop=e)},triggerHeaderScrollEvent(e){var{elemStore:t,inVirtualScroll:l,inBodyScroll:a,inFooterScroll:r}=Z;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=d.value,a&&l&&(t=l.scrollLeft,Z.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),_(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=J.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:s,inFooterScroll:o,lastScrollLeft:u,lastScrollTop:n}=Z;i||s||o||(i=e.currentTarget,s=(0,_util.getRefElem)(r["main-header-scroll"]),o=d.value,r=c.value,u=(t=i.scrollLeft)!==u,n=(l=i.scrollTop)!==n,Z.inBodyScroll=!0,Z.scrollRenderType="",n&&((0,_dom.setScrollTop)(r,l),je(l)),u&&(Z.inBodyScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(s,t),a)&&ze(),_(e,n,u,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=J.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=Z;r||i||(r=e.currentTarget,i=(0,_util.getRefElem)(a["main-header-scroll"]),a=(0,_util.getRefElem)(a["main-body-scroll"]),r&&(t=r.scrollLeft,Z.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&ze(),_(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=Z;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,Z.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),je(e),Fe(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return u()},handleUpdateSYSpace(){return(()=>{var{scrollYLoad:e,overflowY:t}=J,l=Z.elemStore,a=Z.xeTable,r=(0,_util.getRefElem)(l["main-body-scroll"]),i=(0,_util.getRefElem)(l["main-body-table"]);let s=0,o=0,u=!1,n=(a&&(a=a.reactData,s=a.scrollYTop,o=a.scrollYHeight,u=a.isScrollYBig),o),d=s,c=0;r&&(c=r.clientHeight),u&&(d=r&&i&&r.scrollTop+c>=maxYHeight?maxYHeight-i.clientHeight:(maxYHeight-c)*(s/(o-c)),n=maxYHeight),e&&t||(d=0);a=(0,_util.getRefElem)(l["main-chart-task-wrapper"]),i&&(i.style.transform=`translate(${J.scrollXLeft||0}px, ${d}px)`),a&&(a.style.transform=`translateY(${d}px)`),r=(0,_util.getRefElem)(l["main-body-ySpace"]),r&&(r.style.height=n?n+"px":""),e=q.value,e&&(e.style.height=n?n+"px":""),t=(0,_util.getRefElem)(l["main-chart-before-wrapper"]),i=t?t.firstElementChild:null,i&&(i.style.height=n?n+"px":""),a=(0,_util.getRefElem)(l["main-chart-after-wrapper"]),r=a?a.firstElementChild:null,r&&(r.style.height=n?n+"px":""),e=(0,_util.getRefElem)(l["main-chart-now-line"]);return e&&(e.style.height=n?n+"px":""),J.scrollYTop=d,J.scrollYHeight=o,J.isScrollYBig=u,g(),(0,_vue.nextTick)().then(()=>{m()})})()},handleUpdateSYStatus(e){J.scrollYLoad=e},updateScrollbar(){return n()}};let n=()=>b.value?(0,_vue.nextTick)().then(()=>{ge(),me()}):Promise.resolve(),Ie=()=>{ke()},Xe=()=>{let{elemStore:t,scrollObserver:e}=Z;var l=b.value;if(l&&!e){var l=s.value,a=(0,_util.getRefElem)(t["main-body-xSpace"]),r=(0,_util.getRefElem)(t["main-body-xSpace"]);let e=globalResize.create(()=>{x.value++});l&&e.observe(l),a&&e.observe(a),r&&e.observe(r),Z.scrollObserver=e}},Ve=(Object.assign(M,{getScrollViewElem(){var e=Z.elemStore;return(0,_util.getRefElem)(e["main-body-scroll"])},refreshData(){return We(),o(),(0,_vue.nextTick)().then(()=>{var e=Z.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=Z.xeTable;return t&&(t=t.reactData.tableData,J.tableData=t,e&&(N.currLeftSpacing=0,N.currRightSpacing=0,We()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(Z.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:O,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:I,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:d,class:"vxe-gantt-view--scroll-x-handle",onScroll:M.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:$,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:F,class:"vxe-gantt-view--scroll-x-right-corner"})])),$e=()=>(0,_vue.h)("div",{key:"vsy",ref:z,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:j,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:X,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:c,class:"vxe-gantt-view--scroll-y-handle",onScroll:M.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:q,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:V,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),p=()=>(0,_vue.h)("div",{key:"tvw",class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),qe=()=>{var e=U.value;return(0,_vue.h)("div",{key:"lnb",class:"vxe-gantt-view--layout-wrapper"},e?[$e(),p()]:[p(),$e()])};let x=(0,_vue.ref)(0);return(0,_vue.watch)(b,()=>{(0,_vue.nextTick)(()=>{Xe(),(0,_vue.nextTick)(()=>{x.value++})})}),(0,_vue.watch)(T,()=>{x.value++}),(0,_vue.watch)(U,()=>{x.value++}),(0,_vue.watch)(h,()=>{x.value++}),(0,_vue.watch)(w,()=>{x.value++}),(0,_vue.watch)(re,()=>{x.value++}),(0,_vue.watch)(ie,()=>{x.value++}),(0,_vue.watch)(x,()=>{(0,_vue.nextTick)(()=>{n(),(0,_vue.nextTick)(()=>{n()})})}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{Xe()}),globalEvents.on(M,"resize",Ie)}),(0,_vue.onBeforeUnmount)(()=>{var e=Z.scrollObserver;e&&e.disconnect(),_xeUtils.default.assign(J,createReactData()),_xeUtils.default.assign(Z,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(M,"keydown")}),M.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=J,r=b.value,i=T.value;return(0,_vue.h)("div",{ref:s,class:["vxe-gantt-view",{"is--scroll-y":t,"is--scroll-x":e,"is--virtual-x":l,"is--virtual-y":a}]},[(0,_vue.h)("div",{class:"vxe-gantt-view--render-wrapper"},r?[(()=>{var e=N.showLeftView,{xThumbWidth:t,yThumbHeight:l}=J,a=b.value,r=f.value,i=se.value,s=oe.value,o=h.value,u=w.value,n=T.value,d=U.value,c=ue.value;return(0,_vue.h)("div",{key:"lvb",class:["vxe-gantt--layout-wrapper","sx-pos--"+(n?"top":"bottom"),"sy-pos--"+(d?"left":"right"),{"is--virtual-scrollbar":a,"ov-padding":a&&r.padding,"ov-x--auto-hide":a&&i,"ov-y--auto-hide":a&&s,"overflow-y":l,"overflow-x":t}]},[p(),(0,_vue.h)("div",{class:c},[!1===o?renderEmptyElement(G):(0,_vue.h)("div",{ref:ce,class:"vxe-scrollbar--track-x",onClick:_e},[(0,_vue.h)("div",{ref:he,class:"vxe-scrollbar--thumb-x",onPointerdown:xe,onPointermove:ye,onPointerup:v,onPointercancel:v,onLostpointercapture:v})]),d&&e||!1===u?renderEmptyElement(G):(0,_vue.h)("div",{ref:fe,class:"vxe-scrollbar--track-y",onClick:pe},[(0,_vue.h)("div",{ref:ve,class:"vxe-scrollbar--thumb-y",onPointerdown:Se,onPointermove:be,onPointerup:v,onPointercancel:v,onLostpointercapture:v})])])])})()]:i?[Ve(),qe()]:[qe(),Ve()]),(0,_vue.h)("div",{class:"vxe-gantt-view--render-vars"},[(0,_vue.h)("div",{ref:B,class:"vxe-gantt-view--column-info"})])])},(0,_vue.provide)("$xeGanttView",M),M},render(){return this.renderVN()}});
|