vxe-gantt 4.6.7 → 4.6.9
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 +35 -29
- package/es/gantt/src/gantt-view.js +34 -17
- package/es/gantt/src/util.js +0 -11
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/gantt/src/gantt-view.js +33 -14
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/util.js +0 -12
- package/lib/gantt/src/util.min.js +1 -1
- package/lib/index.umd.js +35 -27
- 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 +2 -2
- package/packages/gantt/src/gantt-view.ts +34 -17
- package/packages/gantt/src/util.ts +0 -12
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.6.
|
|
9
|
+
VxeUI.ganttVersion = "4.6.9";
|
|
10
10
|
const ymdFormat = 'yyyy-MM-dd';
|
|
11
11
|
const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
|
|
12
12
|
setConfig$1({
|
|
@@ -115,7 +115,7 @@ setIcon({
|
|
|
115
115
|
});
|
|
116
116
|
|
|
117
117
|
const { log } = VxeUI;
|
|
118
|
-
const ganttVersion = `gantt v${"4.6.
|
|
118
|
+
const ganttVersion = `gantt v${"4.6.9"}`;
|
|
119
119
|
function createComponentLog(name) {
|
|
120
120
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
121
121
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -412,17 +412,6 @@ function getRefElem(refEl) {
|
|
|
412
412
|
function getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight) {
|
|
413
413
|
return rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight;
|
|
414
414
|
}
|
|
415
|
-
function getStandardGapTime(type) {
|
|
416
|
-
switch (type) {
|
|
417
|
-
case 'hour':
|
|
418
|
-
return 1000 * 60 * 60;
|
|
419
|
-
case 'minute':
|
|
420
|
-
return 1000 * 60;
|
|
421
|
-
case 'second':
|
|
422
|
-
return 1000;
|
|
423
|
-
}
|
|
424
|
-
return 1000 * 60 * 60 * 24;
|
|
425
|
-
}
|
|
426
415
|
function getTaskBarLeft(chartRest, viewCellWidth) {
|
|
427
416
|
return chartRest ? viewCellWidth * chartRest.oLeftSize : 0;
|
|
428
417
|
}
|
|
@@ -1475,16 +1464,33 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1475
1464
|
}
|
|
1476
1465
|
break;
|
|
1477
1466
|
}
|
|
1478
|
-
case 'hour':
|
|
1479
|
-
|
|
1467
|
+
case 'hour': {
|
|
1468
|
+
let currDate = XEUtils.getWhatHours(minViewDate, leftSize, 'first');
|
|
1469
|
+
const endDate = XEUtils.getWhatHours(maxViewDate, rightSize, 'first');
|
|
1470
|
+
while (currDate <= endDate) {
|
|
1471
|
+
const itemDate = currDate;
|
|
1472
|
+
dateList.push(itemDate);
|
|
1473
|
+
currDate = XEUtils.getWhatHours(currDate, scaleStep);
|
|
1474
|
+
}
|
|
1475
|
+
break;
|
|
1476
|
+
}
|
|
1477
|
+
case 'minute': {
|
|
1478
|
+
let currDate = XEUtils.getWhatMinutes(minViewDate, leftSize, 'first');
|
|
1479
|
+
const endDate = XEUtils.getWhatMinutes(maxViewDate, rightSize, 'first');
|
|
1480
|
+
while (currDate <= endDate) {
|
|
1481
|
+
const itemDate = currDate;
|
|
1482
|
+
dateList.push(itemDate);
|
|
1483
|
+
currDate = XEUtils.getWhatMinutes(currDate, scaleStep);
|
|
1484
|
+
}
|
|
1485
|
+
break;
|
|
1486
|
+
}
|
|
1480
1487
|
case 'second': {
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
const itemDate = new Date(currTime);
|
|
1488
|
+
let currDate = XEUtils.getWhatSeconds(minViewDate, leftSize, 'first');
|
|
1489
|
+
const endDate = XEUtils.getWhatSeconds(maxViewDate, rightSize, 'first');
|
|
1490
|
+
while (currDate <= endDate) {
|
|
1491
|
+
const itemDate = currDate;
|
|
1486
1492
|
dateList.push(itemDate);
|
|
1487
|
-
|
|
1493
|
+
currDate = XEUtils.getWhatSeconds(currDate, scaleStep);
|
|
1488
1494
|
}
|
|
1489
1495
|
break;
|
|
1490
1496
|
}
|
|
@@ -1820,7 +1826,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1820
1826
|
let currStep = scaleStep - 1;
|
|
1821
1827
|
while (currStep) {
|
|
1822
1828
|
const currStr = XEUtils.toDateString(XEUtils.getWhatYear(dateObj.date, scaleStep - currStep), renderFormat);
|
|
1823
|
-
indexMaps[currStr] = i + currRatio;
|
|
1829
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
1824
1830
|
currStep--;
|
|
1825
1831
|
}
|
|
1826
1832
|
}
|
|
@@ -1866,7 +1872,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1866
1872
|
let currStep = scaleStep - 1;
|
|
1867
1873
|
while (currStep) {
|
|
1868
1874
|
const currStr = XEUtils.toDateString(XEUtils.getWhatQuarter(dateObj.date, scaleStep - currStep), renderFormat);
|
|
1869
|
-
indexMaps[currStr] = i + currRatio;
|
|
1875
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
1870
1876
|
currStep--;
|
|
1871
1877
|
}
|
|
1872
1878
|
}
|
|
@@ -1912,7 +1918,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1912
1918
|
let currStep = scaleStep - 1;
|
|
1913
1919
|
while (currStep) {
|
|
1914
1920
|
const currStr = XEUtils.toDateString(XEUtils.getWhatMonth(dateObj.date, scaleStep - currStep), renderFormat);
|
|
1915
|
-
indexMaps[currStr] = i + currRatio;
|
|
1921
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
1916
1922
|
currStep--;
|
|
1917
1923
|
}
|
|
1918
1924
|
}
|
|
@@ -1964,7 +1970,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1964
1970
|
yyyy = `${Number(yyyy) + 1}`;
|
|
1965
1971
|
}
|
|
1966
1972
|
const currStr = `${yyyy}-${W}`;
|
|
1967
|
-
indexMaps[currStr] = i + currRatio;
|
|
1973
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
1968
1974
|
currStep--;
|
|
1969
1975
|
}
|
|
1970
1976
|
}
|
|
@@ -2011,7 +2017,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
2011
2017
|
let currStep = scaleStep - 1;
|
|
2012
2018
|
while (currStep) {
|
|
2013
2019
|
const currStr = XEUtils.toDateString(XEUtils.getWhatDay(dateObj.date, scaleStep - currStep), renderFormat);
|
|
2014
|
-
indexMaps[currStr] = i + currRatio;
|
|
2020
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
2015
2021
|
currStep--;
|
|
2016
2022
|
}
|
|
2017
2023
|
}
|
|
@@ -2054,7 +2060,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
2054
2060
|
let currStep = scaleStep - 1;
|
|
2055
2061
|
while (currStep) {
|
|
2056
2062
|
const currStr = XEUtils.toDateString(XEUtils.getWhatHours(dateObj.date, scaleStep - currStep), renderFormat);
|
|
2057
|
-
indexMaps[currStr] = i + currRatio;
|
|
2063
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
2058
2064
|
currStep--;
|
|
2059
2065
|
}
|
|
2060
2066
|
}
|
|
@@ -2097,7 +2103,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
2097
2103
|
let currStep = scaleStep - 1;
|
|
2098
2104
|
while (currStep) {
|
|
2099
2105
|
const currStr = XEUtils.toDateString(XEUtils.getWhatMinutes(dateObj.date, scaleStep - currStep), renderFormat);
|
|
2100
|
-
indexMaps[currStr] = i + currRatio;
|
|
2106
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
2101
2107
|
currStep--;
|
|
2102
2108
|
}
|
|
2103
2109
|
}
|
|
@@ -2140,7 +2146,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
2140
2146
|
let currStep = scaleStep - 1;
|
|
2141
2147
|
while (currStep) {
|
|
2142
2148
|
const currStr = XEUtils.toDateString(XEUtils.getWhatSeconds(dateObj.date, scaleStep - currStep), renderFormat);
|
|
2143
|
-
indexMaps[currStr] = i + currRatio;
|
|
2149
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
2144
2150
|
currStep--;
|
|
2145
2151
|
}
|
|
2146
2152
|
}
|
|
@@ -2,7 +2,7 @@ import { h, ref, reactive, nextTick, inject, onBeforeUnmount, provide, computed,
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
3
|
import { setScrollTop, setScrollLeft, removeClass, addClass, hasClass } from '../../ui/src/dom';
|
|
4
4
|
import { VxeUI } from '@vxe-ui/core';
|
|
5
|
-
import { getRefElem,
|
|
5
|
+
import { getRefElem, getTaskBarLeft, getTaskBarWidth, hasMilestoneTask, getTaskType, hasSubviewTask } from './util';
|
|
6
6
|
import XEUtils from 'xe-utils';
|
|
7
7
|
import GanttViewHeaderComponent from './gantt-header';
|
|
8
8
|
import GanttViewBodyComponent from './gantt-body';
|
|
@@ -168,16 +168,33 @@ export default defineVxeComponent({
|
|
|
168
168
|
}
|
|
169
169
|
break;
|
|
170
170
|
}
|
|
171
|
-
case 'hour':
|
|
172
|
-
|
|
171
|
+
case 'hour': {
|
|
172
|
+
let currDate = XEUtils.getWhatHours(minViewDate, leftSize, 'first');
|
|
173
|
+
const endDate = XEUtils.getWhatHours(maxViewDate, rightSize, 'first');
|
|
174
|
+
while (currDate <= endDate) {
|
|
175
|
+
const itemDate = currDate;
|
|
176
|
+
dateList.push(itemDate);
|
|
177
|
+
currDate = XEUtils.getWhatHours(currDate, scaleStep);
|
|
178
|
+
}
|
|
179
|
+
break;
|
|
180
|
+
}
|
|
181
|
+
case 'minute': {
|
|
182
|
+
let currDate = XEUtils.getWhatMinutes(minViewDate, leftSize, 'first');
|
|
183
|
+
const endDate = XEUtils.getWhatMinutes(maxViewDate, rightSize, 'first');
|
|
184
|
+
while (currDate <= endDate) {
|
|
185
|
+
const itemDate = currDate;
|
|
186
|
+
dateList.push(itemDate);
|
|
187
|
+
currDate = XEUtils.getWhatMinutes(currDate, scaleStep);
|
|
188
|
+
}
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
173
191
|
case 'second': {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
const itemDate = new Date(currTime);
|
|
192
|
+
let currDate = XEUtils.getWhatSeconds(minViewDate, leftSize, 'first');
|
|
193
|
+
const endDate = XEUtils.getWhatSeconds(maxViewDate, rightSize, 'first');
|
|
194
|
+
while (currDate <= endDate) {
|
|
195
|
+
const itemDate = currDate;
|
|
179
196
|
dateList.push(itemDate);
|
|
180
|
-
|
|
197
|
+
currDate = XEUtils.getWhatSeconds(currDate, scaleStep);
|
|
181
198
|
}
|
|
182
199
|
break;
|
|
183
200
|
}
|
|
@@ -513,7 +530,7 @@ export default defineVxeComponent({
|
|
|
513
530
|
let currStep = scaleStep - 1;
|
|
514
531
|
while (currStep) {
|
|
515
532
|
const currStr = XEUtils.toDateString(XEUtils.getWhatYear(dateObj.date, scaleStep - currStep), renderFormat);
|
|
516
|
-
indexMaps[currStr] = i + currRatio;
|
|
533
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
517
534
|
currStep--;
|
|
518
535
|
}
|
|
519
536
|
}
|
|
@@ -559,7 +576,7 @@ export default defineVxeComponent({
|
|
|
559
576
|
let currStep = scaleStep - 1;
|
|
560
577
|
while (currStep) {
|
|
561
578
|
const currStr = XEUtils.toDateString(XEUtils.getWhatQuarter(dateObj.date, scaleStep - currStep), renderFormat);
|
|
562
|
-
indexMaps[currStr] = i + currRatio;
|
|
579
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
563
580
|
currStep--;
|
|
564
581
|
}
|
|
565
582
|
}
|
|
@@ -605,7 +622,7 @@ export default defineVxeComponent({
|
|
|
605
622
|
let currStep = scaleStep - 1;
|
|
606
623
|
while (currStep) {
|
|
607
624
|
const currStr = XEUtils.toDateString(XEUtils.getWhatMonth(dateObj.date, scaleStep - currStep), renderFormat);
|
|
608
|
-
indexMaps[currStr] = i + currRatio;
|
|
625
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
609
626
|
currStep--;
|
|
610
627
|
}
|
|
611
628
|
}
|
|
@@ -657,7 +674,7 @@ export default defineVxeComponent({
|
|
|
657
674
|
yyyy = `${Number(yyyy) + 1}`;
|
|
658
675
|
}
|
|
659
676
|
const currStr = `${yyyy}-${W}`;
|
|
660
|
-
indexMaps[currStr] = i + currRatio;
|
|
677
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
661
678
|
currStep--;
|
|
662
679
|
}
|
|
663
680
|
}
|
|
@@ -704,7 +721,7 @@ export default defineVxeComponent({
|
|
|
704
721
|
let currStep = scaleStep - 1;
|
|
705
722
|
while (currStep) {
|
|
706
723
|
const currStr = XEUtils.toDateString(XEUtils.getWhatDay(dateObj.date, scaleStep - currStep), renderFormat);
|
|
707
|
-
indexMaps[currStr] = i + currRatio;
|
|
724
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
708
725
|
currStep--;
|
|
709
726
|
}
|
|
710
727
|
}
|
|
@@ -747,7 +764,7 @@ export default defineVxeComponent({
|
|
|
747
764
|
let currStep = scaleStep - 1;
|
|
748
765
|
while (currStep) {
|
|
749
766
|
const currStr = XEUtils.toDateString(XEUtils.getWhatHours(dateObj.date, scaleStep - currStep), renderFormat);
|
|
750
|
-
indexMaps[currStr] = i + currRatio;
|
|
767
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
751
768
|
currStep--;
|
|
752
769
|
}
|
|
753
770
|
}
|
|
@@ -790,7 +807,7 @@ export default defineVxeComponent({
|
|
|
790
807
|
let currStep = scaleStep - 1;
|
|
791
808
|
while (currStep) {
|
|
792
809
|
const currStr = XEUtils.toDateString(XEUtils.getWhatMinutes(dateObj.date, scaleStep - currStep), renderFormat);
|
|
793
|
-
indexMaps[currStr] = i + currRatio;
|
|
810
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
794
811
|
currStep--;
|
|
795
812
|
}
|
|
796
813
|
}
|
|
@@ -833,7 +850,7 @@ export default defineVxeComponent({
|
|
|
833
850
|
let currStep = scaleStep - 1;
|
|
834
851
|
while (currStep) {
|
|
835
852
|
const currStr = XEUtils.toDateString(XEUtils.getWhatSeconds(dateObj.date, scaleStep - currStep), renderFormat);
|
|
836
|
-
indexMaps[currStr] = i + currRatio;
|
|
853
|
+
indexMaps[currStr] = i + ((scaleStep - currStep) * currRatio);
|
|
837
854
|
currStep--;
|
|
838
855
|
}
|
|
839
856
|
}
|
package/es/gantt/src/util.js
CHANGED
|
@@ -16,17 +16,6 @@ export function getCalcHeight(height) {
|
|
|
16
16
|
export function getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight) {
|
|
17
17
|
return rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight;
|
|
18
18
|
}
|
|
19
|
-
export function getStandardGapTime(type) {
|
|
20
|
-
switch (type) {
|
|
21
|
-
case 'hour':
|
|
22
|
-
return 1000 * 60 * 60;
|
|
23
|
-
case 'minute':
|
|
24
|
-
return 1000 * 60;
|
|
25
|
-
case 'second':
|
|
26
|
-
return 1000;
|
|
27
|
-
}
|
|
28
|
-
return 1000 * 60 * 60 * 24;
|
|
29
|
-
}
|
|
30
19
|
export function getTaskBarLeft(chartRest, viewCellWidth) {
|
|
31
20
|
return chartRest ? viewCellWidth * chartRest.oLeftSize : 0;
|
|
32
21
|
}
|
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.6.
|
|
3
|
+
const ganttVersion = `gantt v${"4.6.9"}`;
|
|
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}` : '';
|
|
@@ -208,16 +208,35 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
208
208
|
break;
|
|
209
209
|
}
|
|
210
210
|
case 'hour':
|
|
211
|
+
{
|
|
212
|
+
let currDate = _xeUtils.default.getWhatHours(minViewDate, leftSize, 'first');
|
|
213
|
+
const endDate = _xeUtils.default.getWhatHours(maxViewDate, rightSize, 'first');
|
|
214
|
+
while (currDate <= endDate) {
|
|
215
|
+
const itemDate = currDate;
|
|
216
|
+
dateList.push(itemDate);
|
|
217
|
+
currDate = _xeUtils.default.getWhatHours(currDate, scaleStep);
|
|
218
|
+
}
|
|
219
|
+
break;
|
|
220
|
+
}
|
|
211
221
|
case 'minute':
|
|
222
|
+
{
|
|
223
|
+
let currDate = _xeUtils.default.getWhatMinutes(minViewDate, leftSize, 'first');
|
|
224
|
+
const endDate = _xeUtils.default.getWhatMinutes(maxViewDate, rightSize, 'first');
|
|
225
|
+
while (currDate <= endDate) {
|
|
226
|
+
const itemDate = currDate;
|
|
227
|
+
dateList.push(itemDate);
|
|
228
|
+
currDate = _xeUtils.default.getWhatMinutes(currDate, scaleStep);
|
|
229
|
+
}
|
|
230
|
+
break;
|
|
231
|
+
}
|
|
212
232
|
case 'second':
|
|
213
233
|
{
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
const itemDate = new Date(currTime);
|
|
234
|
+
let currDate = _xeUtils.default.getWhatSeconds(minViewDate, leftSize, 'first');
|
|
235
|
+
const endDate = _xeUtils.default.getWhatSeconds(maxViewDate, rightSize, 'first');
|
|
236
|
+
while (currDate <= endDate) {
|
|
237
|
+
const itemDate = currDate;
|
|
219
238
|
dateList.push(itemDate);
|
|
220
|
-
|
|
239
|
+
currDate = _xeUtils.default.getWhatSeconds(currDate, scaleStep);
|
|
221
240
|
}
|
|
222
241
|
break;
|
|
223
242
|
}
|
|
@@ -600,7 +619,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
600
619
|
let currStep = scaleStep - 1;
|
|
601
620
|
while (currStep) {
|
|
602
621
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatYear(dateObj.date, scaleStep - currStep), renderFormat);
|
|
603
|
-
indexMaps[currStr] = i + currRatio;
|
|
622
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
604
623
|
currStep--;
|
|
605
624
|
}
|
|
606
625
|
}
|
|
@@ -649,7 +668,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
649
668
|
let currStep = scaleStep - 1;
|
|
650
669
|
while (currStep) {
|
|
651
670
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(dateObj.date, scaleStep - currStep), renderFormat);
|
|
652
|
-
indexMaps[currStr] = i + currRatio;
|
|
671
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
653
672
|
currStep--;
|
|
654
673
|
}
|
|
655
674
|
}
|
|
@@ -698,7 +717,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
698
717
|
let currStep = scaleStep - 1;
|
|
699
718
|
while (currStep) {
|
|
700
719
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(dateObj.date, scaleStep - currStep), renderFormat);
|
|
701
|
-
indexMaps[currStr] = i + currRatio;
|
|
720
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
702
721
|
currStep--;
|
|
703
722
|
}
|
|
704
723
|
}
|
|
@@ -753,7 +772,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
753
772
|
yyyy = `${Number(yyyy) + 1}`;
|
|
754
773
|
}
|
|
755
774
|
const currStr = `${yyyy}-${W}`;
|
|
756
|
-
indexMaps[currStr] = i + currRatio;
|
|
775
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
757
776
|
currStep--;
|
|
758
777
|
}
|
|
759
778
|
}
|
|
@@ -803,7 +822,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
803
822
|
let currStep = scaleStep - 1;
|
|
804
823
|
while (currStep) {
|
|
805
824
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatDay(dateObj.date, scaleStep - currStep), renderFormat);
|
|
806
|
-
indexMaps[currStr] = i + currRatio;
|
|
825
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
807
826
|
currStep--;
|
|
808
827
|
}
|
|
809
828
|
}
|
|
@@ -849,7 +868,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
849
868
|
let currStep = scaleStep - 1;
|
|
850
869
|
while (currStep) {
|
|
851
870
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatHours(dateObj.date, scaleStep - currStep), renderFormat);
|
|
852
|
-
indexMaps[currStr] = i + currRatio;
|
|
871
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
853
872
|
currStep--;
|
|
854
873
|
}
|
|
855
874
|
}
|
|
@@ -895,7 +914,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
895
914
|
let currStep = scaleStep - 1;
|
|
896
915
|
while (currStep) {
|
|
897
916
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(dateObj.date, scaleStep - currStep), renderFormat);
|
|
898
|
-
indexMaps[currStr] = i + currRatio;
|
|
917
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
899
918
|
currStep--;
|
|
900
919
|
}
|
|
901
920
|
}
|
|
@@ -941,7 +960,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
941
960
|
let currStep = scaleStep - 1;
|
|
942
961
|
while (currStep) {
|
|
943
962
|
const currStr = _xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(dateObj.date, scaleStep - currStep), renderFormat);
|
|
944
|
-
indexMaps[currStr] = i + currRatio;
|
|
963
|
+
indexMaps[currStr] = i + (scaleStep - currStep) * currRatio;
|
|
945
964
|
currStep--;
|
|
946
965
|
}
|
|
947
966
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let globalEvents=_core.VxeUI.globalEvents,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(t,d){var u=_xeUtils.default.uniqueId();let D=(0,_vue.inject)("$xeGantt",{}),{reactData:w,internalData:f}=D,{computeDateFormat:r,computeTaskViewOpts:l,computeStartField:x,computeEndField:p,computeTypeField:y,computeScrollbarOpts:b,computeScrollbarXToTop:U,computeScrollbarYToLeft:T,computeScaleUnit:i,computeWeekScale:s,computeMinScale:W,computeTaskNowLineOpts:v,computeScaleStep:M}=D.getComputeMaps(),E=(0,_vue.ref)(),L=(0,_vue.ref)(),k=(0,_vue.ref)(),H=(0,_vue.ref)(),O=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),C=(0,_vue.ref)(),Y=(0,_vue.ref)(),j=(0,_vue.ref)(),F=(0,_vue.ref)(),g=(0,_vue.ref)(),_=(0,_vue.ref)(),B=(0,_vue.ref)(),$=(0,_vue.reactive)(createReactData()),I=createInternalData(),S={refElem:E,refScrollXHandleElem:H,refScrollYHandleElem:z},G=(0,_vue.computed)(()=>{var{minViewDate:a,maxViewDate:r}=$,e=l.value,i=W.value,s=M.value,e=e.gridding,o=[];if(i&&a&&r){var{type:d,startDay:u}=i;let t=-(w.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),l=w.currRightSpacing+_xeUtils.default.toNumber(e&&e.rightSpacing||0);switch(0<s&&(t*=s,l*=s),d){case"year":{let e=_xeUtils.default.getWhatYear(a,t,"first");for(var n=_xeUtils.default.getWhatYear(r,l,"first");e<=n;){var f=e;o.push(f),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 h=e;o.push(h),e=_xeUtils.default.getWhatQuarter(e,s)}break}case"month":{let e=_xeUtils.default.getWhatMonth(a,t,"first");for(var v=_xeUtils.default.getWhatMonth(r,l,"first");e<=v;){var g=e;o.push(g),e=_xeUtils.default.getWhatMonth(e,s)}break}case"week":{let e=_xeUtils.default.getWhatWeek(a,t,u,u);for(var m=_xeUtils.default.getWhatWeek(r,l,u,u);e<=m;){var _=e;o.push(_),e=_xeUtils.default.getWhatWeek(e,s)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(a,t,"first");for(var x=_xeUtils.default.getWhatDay(r,l,"first");e<=x;){var p=e;o.push(p),e=_xeUtils.default.getWhatDay(e,s)}break}case"hour":case"minute":case"second":{var y=(0,_util.getStandardGapTime)(i.type)*s;let e=a.getTime()+t*y;for(var S=r.getTime()+l*y;e<=S;){var b=new Date(e);o.push(b),e+=y}break}}}return o});var e=(0,_vue.computed)(()=>{var e=D.reactData,{minViewDate:a,maxViewDate:t,viewCellWidth:r}=$,{visibleColumn:i,todayDateMaps:s}=I,o=W.value,d=l.value.showNowLine,u=v.value.mode,e=e.nowTime;let n=0;if(d&&o&&a&&t&&e>=a.getTime()&&e<=t.getTime()){var f=s[o.type];let t=null,l=null;for(let e=0;e<i.length;e++){var c=i[e];if(c.field===f){t=c,n=e*r,l=i[e+1];break}}"progress"===u?t&&l&&(d=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(e-d)/(l.dateObj.date.getTime()-d))),n+=a*r):"center"===u?n+=r/2:"end"===u&&(n+=r-1)}return n});let Q={computeScaleDateList:G,computeNowLineLeft:e},X={xID:u,props:t,context:d,reactData:$,internalData:I,getRefMaps:()=>S,getComputeMaps:()=>Q},m=e=>{var t=r.value;return _xeUtils.default.toStringDate(e,t)},N=()=>{var o=D.reactData,d=o.taskScaleList,u=W.value;if(u){var d=d.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,s]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var f=n.getDay()+1,c=Math.ceil((n.getMonth()+1)/3),d=""+_xeUtils.default.getYearWeek(n,d?d.startDay:void 0);u&&V(d,t)&&(e=""+(Number(e)+1),l="01"),o.nowTime=n.getTime(),I.todayDateMaps={year:e,quarter:e+"_q"+c,month:e+"_"+l,week:e+"_W"+d,day:`${e}_${l}_${a}_E`+f,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+s}}},A=()=>{var e=D.reactData.taskScaleList,t=i.value;let o=W.value,p=s.value;var l=G.value,a=M.value,r=p?p.startDay:void 0;let d=[],u=[];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 n=(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))}},f=e=>{let[t,l,a,r,i,s,o,d,u,n,f,c]=_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&&V(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:d,m:u,mm:n,s:f,ss:c,q:g,W:m,WW:_,E:v,e:h}};for(let e=0;e<l.length;e++){var c=l[e],h=f(c),{yyyy:v,MM:g,dd:m,HH:_,mm:y,ss:S,q:b,W:w,E:U}=h,T=h,b={year:{field:v,title:v,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatYear(c,a-1)):T},quarter:{field:v+"_q"+b,title:""+b,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatQuarter(c,a-1)):T},month:{field:v+"_"+g,title:g,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatMonth(c,a-1)):T},week:{field:v+"_W"+w,title:""+w,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatWeek(c,a-1,r,r)):T},day:{field:v+`_${g}_${m}_E`+U,title:""+U,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatDay(c,a-1)):T},date:{field:v+`_${g}_`+m,title:m,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatDay(c,a-1)):T},hour:{field:v+`_${g}_${m}_`+_,title:_,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatHours(c,a-1)):T},minute:{field:v+`_${g}_${m}_${_}_`+y,title:y,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatMinutes(c,a-1)):T},second:{field:v+`_${g}_${m}_${_}_${y}_`+S,title:S,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatSeconds(c,a-1)):T}},w=b[o.type];o.level<19&&n("year",b,w),o.level<17&&n("quarter",b,w),o.level<15&&n("month",b,w),o.level<13&&n("week",b,w),o.level<11&&n("day",b,w),o.level<9&&n("date",b,w),o.level<7&&n("hour",b,w),o.level<5&&n("minute",b,w),o.level<3&&n("second",b,w),d.push(w)}e.forEach(e=>{var t;e.type===o.type?u.push({scaleItem:e,columns:d}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),u.push({scaleItem:e,columns:t}))})}return{fullCols:d,groupCols:u}},V=(e,t)=>""+e=="1"&&""+t=="12",P=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return V(e,a+1)&&l++,{yyyy:l,W:e}},J=e=>{var t=W.value;let o=M.value;var l=i.value;let f=s.value;var a=r.value;if(t){let c=1<o?1/o:0;switch(l){case"year":{let u=/M|d|H|m|s|S/.test(a),n="yyyy",f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,"yyyy");if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(l.date,o-t),n);f[e]=a+c,t--}}}),(e,t)=>{var l,e=m(e),t=m(t),a=_xeUtils.default.toDateString(e,n),r=u?e:_xeUtils.default.getWhatYear(e,0,"first"),e=_xeUtils.default.getWhatYear(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=u?t:_xeUtils.default.getWhatYear(t,0,"last"),s=_xeUtils.default.getWhatYear(t,0,"first");let o=0,d=1;u&&(l=_xeUtils.default.getDayOfYear(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfYear(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"quarter":{let u=/M|d|H|m|ss|S/.test(a),n="yyyy-q",f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,n);if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(l.date,o-t),n);f[e]=a+c,t--}}}),(e,t)=>{var l,e=m(e),t=m(t),a=_xeUtils.default.toDateString(e,n),r=u?e:_xeUtils.default.getWhatQuarter(e,0,"first"),e=_xeUtils.default.getWhatQuarter(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=u?t:_xeUtils.default.getWhatQuarter(t,0,"last"),s=_xeUtils.default.getWhatQuarter(t,0,"first");let o=0,d=1;u&&(l=_xeUtils.default.getDayOfQuarter(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfQuarter(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"month":{let u="yyyy-MM",n=/d|H|m|ss|S/.test(a),f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(l.date,o-t),u);f[e]=a+c,t--}}}),(e,t)=>{var l,e=m(e),t=m(t),a=_xeUtils.default.toDateString(e,u),r=n?e:_xeUtils.default.getWhatMonth(e,0,"first"),e=_xeUtils.default.getWhatMonth(e,0,"first"),i=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatMonth(t,0,"last"),s=_xeUtils.default.getWhatMonth(t,0,"first");let o=0,d=1;n&&(l=_xeUtils.default.getDayOfMonth(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfMonth(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"week":{let d=f?f.startDay:void 0,u=/d|H|m|s|S/.test(a),n={};return e.forEach(({dateObj:r},i)=>{let e=r.yyyy+"-"+r.W;if(n[e]=i,c){let a=o-1;for(;a;){var s=_xeUtils.default.getWhatWeek(r.date,o-a,d,d);let[e,t]=_xeUtils.default.toDateString(s,"yyyy-M-MM-dd-HH-mm-ss").split("-");s=""+_xeUtils.default.getYearWeek(s,f?f.startDay:void 0);let l=(e=V(s,t)?""+(Number(e)+1):e)+"-"+s;n[l]=i+c,a--}}}),(e,t)=>{var e=m(e),t=m(t),e=u?e:_xeUtils.default.getWhatWeek(e,0,"first",d),l=P(e,d),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,"first",d),t=u?t:_xeUtils.default.getWhatWeek(t,0,"first",d),r=P(t,d),r=r.yyyy+"-"+r.W,i=_xeUtils.default.getWhatWeek(t,0,"first",d);let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/dayMs/7,o=(t.getTime()-i.getTime())/dayMs/7,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"day":case"date":{let d="yyyy-MM-dd",u=/H|m|s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(l.date,o-t),d);n[e]=a+c,t--}}}),(e,t)=>{var e=m(e),t=m(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatDay(e,0,"first"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatDay(t,0,"last"),i=_xeUtils.default.getWhatDay(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/dayMs,o=(t.getTime()-i.getTime())/dayMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"hour":{let d="yyyy-MM-dd HH",u=/m|s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(l.date,o-t),d);n[e]=a+c,t--}}}),(e,t)=>{var e=m(e),t=m(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatHours(e,0,"first"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatHours(t,0,"last"),i=_xeUtils.default.getWhatHours(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/hourMs,o=(t.getTime()-i.getTime())/hourMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"minute":{let d="yyyy-MM-dd HH:mm",u=/s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(l.date,o-t),d);n[e]=a+c,t--}}}),(e,t)=>{var e=m(e),t=m(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatMinutes(e,0,"first"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatMinutes(t,0,"last"),i=_xeUtils.default.getWhatMinutes(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/minuteMs,o=(t.getTime()-i.getTime())/minuteMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"second":{let d="yyyy-MM-dd HH:mm:ss",u=/S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(l.date,o-t),d);n[e]=a+c,t--}}}),(e,t)=>{var e=m(e),t=m(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatSeconds(e,0,"first"),a=_xeUtils.default.getWhatSeconds(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatSeconds(t,0,"last"),i=_xeUtils.default.getWhatSeconds(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/secondMs,o=(t.getTime()-i.getTime())/secondMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},K=()=>{var e=D.props.treeConfig,t=I.scrollXStore,l=I.xeTable;let s=null,o=null;if(l){let a=x.value,r=p.value,i=y.value;var{computeAggregateOpts:d,computeTreeOpts:u}=l.getComputeMaps(),n=l.reactData.isRowGroupStatus,{afterFullData:l,afterTreeFullData:f,afterGroupFullData:c}=l.internalData,d=d.value,u=u.value,h=u.transform,v=u.children||u.childrenField,g=e=>{let t=_xeUtils.default.get(e,a),l=_xeUtils.default.get(e,r);var e=_xeUtils.default.get(e,i),e=(0,_util.hasMilestoneTask)(e);t=t||l,!e&&l||(l=t),t&&(e=m(t),!s||s.getTime()>e.getTime())&&(s=e),l&&(e=m(l),!o||o.getTime()<e.getTime())&&(o=e)};n?(n=d.mapChildrenField)&&_xeUtils.default.eachTree(c,g,{children:n}):e?_xeUtils.default.eachTree(f,g,{children:h?u.mapChildrenField:v}):l.forEach(g)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),$.minViewDate=s,$.maxViewDate=o,I.startMaps={},I.endMaps={},(()=>{var e=D.props.treeConfig,{minViewDate:t,maxViewDate:l}=$,{fullCols:a,groupCols:r}=A();if(t&&l&&a.length){let f=I.xeTable;if(f){let s=x.value,o=p.value,d=y.value;var{computeAggregateOpts:t,computeTreeOpts:l}=f.getComputeMaps(),i=f.reactData.isRowGroupStatus,{afterFullData:c,afterTreeFullData:h,afterGroupFullData:v}=f.internalData,t=t.value,l=l.value,g=l.transform,m=l.children||l.childrenField;let u={},n=J(a);var _=e=>{var t=f.getRowid(e);let l=_xeUtils.default.get(e,s),a=_xeUtils.default.get(e,o);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,d)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?u[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=n(l,a),u[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,_,{children:i}):e?_xeUtils.default.eachTree(h,_,{children:g?l.mapChildrenField:m}):c.forEach(_),I.chartMaps=u}}I.visibleColumn=a,$.headerGroups=r,N(),ie(),se()})()},c=()=>{var{scrollXWidth:e,scrollYHeight:t}=$,l=I.elemStore,a=b.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=H.value,i=z.value,s=!1;l&&(s=t>l.clientHeight,i&&(t=a.width||i.offsetWidth-i.clientWidth||14,$.scrollbarWidth=t,w.scrollbarWidth=t),$.overflowY=s,w.overflowY=s,i=e>l.clientWidth,r&&(t=a.height||r.offsetHeight-r.clientHeight||14,$.scrollbarHeight=t,w.scrollbarHeight=t),$.overflowX=i,w.overflowX=i)},Z=(l,e)=>{let a=I.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=y.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=f.dragBarRow,o=$.viewCellWidth,{elemStore:e,chartMaps:d}=I,u=I.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&u){var l=u.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),s&&u.getRowid(s)===e||(l=(e=e?d[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?d[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=Z(u,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}=Z(u,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)()},h=()=>{var o=w.showLeftView,{scrollbarWidth:d,scrollbarHeight:u,headerGroups:n,tableColumn:f}=$,{elemStore:c,visibleColumn:h}=I,v=I.xeTable,g=E.value;if(g&&D){var m=b.value,_=U.value,x=T.value,p=O.value,y=R.value,S=L.value;let e=d;d=u;let t=0,l=0,a=0,r=(v&&(u=v.internalData,t=u.tBodyHeight,l=u.tHeaderHeight,a=u.tFooterHeight),"visible");(x&&o||m.y&&!1===m.y.visible)&&(e=0,r="hidden");var v=(0,_util.getRefElem)(c["main-header-scroll"]),u=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/n.length+"px")),(0,_util.getRefElem)(c["main-body-scroll"])),x=(u&&(u.style.height=t+"px"),(0,_util.getRefElem)(c["main-footer-scroll"])),o=(x&&(x.style.height=a+"px"),S&&(S.style.height=d+"px",S.style.visibility="visible"),Y.value),m=(o&&(o.style.left=_?e+"px":"",o.style.width=g.clientWidth-e+"px"),p&&(p.style.width=_?e+"px":"",p.style.display=_&&d?"block":""),y&&(y.style.width=_?"":e+"px",y.style.display=!_&&d?"block":""),k.value),v=(m&&(m.style.width=e+"px",m.style.height=t+l+a+"px",m.style.visibility=r),C.value),n=(v&&(v.style.height=l+"px",v.style.display=l?"block":""),j.value),x=(n&&(n.style.height=t+"px",n.style.top=l+"px"),F.value),S=(x&&(x.style.height=a+"px",x.style.top=l+t+"px",x.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),u)&&0<(g=(o=u.clientWidth)-s)&&(i+=Math.max(0,g/h.length),s=o),$.viewCellWidth=i;p=(0,_util.getRefElem)(c["main-header-table"]),y=(0,_util.getRefElem)(c["main-body-table"]),_=i*f.length;return p&&(p.style.width=s+"px"),y&&(y.style.width=_+"px"),$.scrollXWidth=s,Promise.all([ee(),D.handleUpdateTaskLinkStyle?D.handleUpdateTaskLinkStyle(X):null])}},o=()=>{var e=E.value;return I.rceRunTime=Date.now(),e&&e.clientWidth&&D?(c(),h(),(0,_vue.nextTick)().then(()=>{var e,t=$.scrollXLoad,l=I.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),re().then(()=>{ae()})):a()})):(0,_vue.nextTick)()},te=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=I,a=I.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(o()):(0,_vue.nextTick)(()=>{e()}),I.rceTimeout=setTimeout(()=>{I.rceTimeout=void 0,o()},r)}),le=()=>{var e,t=$.viewCellWidth,l=I.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}},ae=()=>{var e=$.isScrollXBig,t=I.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,re())},re=()=>(se(),a(),(0,_vue.nextTick)()),ie=()=>$.scrollXLoad=!0,se=()=>{var e=$.scrollXLoad,{visibleColumn:t,scrollXStore:l}=I,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);$.tableColumn=e},a=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=$,{elemStore:a,scrollXStore:r}=I;var i=(0,_util.getRefElem)(a["main-body-table"]),s=r.startIndex;let o=0,d=(t&&(o=Math.max(0,s*l)),i&&(i.style.transform=`translate(${o}px, ${$.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?d+"px":"")});s=g.value,s&&(s.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),s=i?i.firstElementChild:null,s&&(s.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),s=i?i.firstElementChild:null;return s&&(s.style.width=d+"px"),$.scrollXLeft=o,$.scrollXWidth=d,c(),(0,_vue.nextTick)()},oe=()=>{ae()},de=(e,t)=>{var l=I.lcsTimeout;$.lazScrollLoading=!0,l&&clearTimeout(l),I.lcsTimeout=setTimeout(()=>{I.lcsRunTime=Date.now(),I.lcsTimeout=void 0,I.intoRunScroll=!1,I.inVirtualScroll=!1,I.inWheelScroll=!1,I.inHeaderScroll=!1,I.inBodyScroll=!1,I.inFooterScroll=!1,$.lazScrollLoading=!1},200)},q=(e,t,l,a)=>{t&&(I.lastScrollLeft=a),e&&(I.lastScrollTop=l),$.lastScrollTime=Date.now(),de(t,e)},n=(u,n,f,c,h)=>{var v=I.xeTable,{lastScrollLeft:g,lastScrollTop:m}=I,_=H.value,x=z.value;if(_&&x&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:p}=v.getComputeMaps(),y=x.clientHeight,S=_.clientWidth,x=x.scrollHeight,_=_.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,s=!1,o=!1,d=!1;f&&(v=v.value,(l=h<=0)||(a=_-1<=h+S),g<h?(r="right",_-v<=h+S&&(d=!0)):(r="left",h<=v&&(o=!0))),n&&(g=p.value,(e=c<=0)||(t=x-1<=c+y),m<c?(r="bottom",x-g<=c+y&&(s=!0)):(r="top",c<=g&&(i=!0))),q(n,f,c,h);v={source:sourceType,scrollTop:c,scrollLeft:h,bodyHeight:y,bodyWidth:S,scrollHeight:x,scrollWidth:_,isX:f,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(s||i||d||o)&&D.dispatchEvent("scroll-boundary",v,u),D.dispatchEvent("scroll",v,u)}},ue=e=>{var t=I.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:h,handleLazyRecalculate:te,handleUpdateCurrentRow(e){var t,l,a=I.xeTable,r=E.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=I.xeTable,l=E.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}=I;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=H.value,a&&l&&(t=l.scrollLeft,I.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),n(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=$.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:s,inFooterScroll:o,lastScrollLeft:d,lastScrollTop:u}=I;i||s||o||(i=e.currentTarget,s=(0,_util.getRefElem)(r["main-header-scroll"]),o=H.value,r=z.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,I.inBodyScroll=!0,I.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),ue(l)),d&&(I.inBodyScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(s,t),a)&&oe(),u&&q(u,d,i.scrollTop,t),d&&n(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=$.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=I;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,I.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&oe(),n(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=I;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,I.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),ue(e),q(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return a()},handleUpdateSYSpace(){return(()=>{var{scrollYLoad:e,overflowY:t}=$,l=I.elemStore,a=I.xeTable,r=(0,_util.getRefElem)(l["main-body-scroll"]),i=(0,_util.getRefElem)(l["main-body-table"]);let s=0,o=0,d=!1,u=(a&&(a=a.reactData,s=a.scrollYTop,o=a.scrollYHeight,d=a.isScrollYBig),o),n=s,f=0;r&&(f=r.clientHeight),d&&(n=r&&i&&r.scrollTop+f>=maxYHeight?maxYHeight-i.clientHeight:(maxYHeight-f)*(s/(o-f)),u=maxYHeight),e&&t||(n=0);a=(0,_util.getRefElem)(l["main-chart-task-wrapper"]),i&&(i.style.transform=`translate(${$.scrollXLeft||0}px, ${n}px)`),a&&(a.style.transform=`translateY(${n}px)`),r=(0,_util.getRefElem)(l["main-body-ySpace"]),r&&(r.style.height=u?u+"px":""),e=_.value,e&&(e.style.height=u?u+"px":""),t=(0,_util.getRefElem)(l["main-chart-before-wrapper"]),i=t?t.firstElementChild:null,i&&(i.style.height=u?u+"px":""),a=(0,_util.getRefElem)(l["main-chart-after-wrapper"]),r=a?a.firstElementChild:null,r&&(r.style.height=u?u+"px":""),e=(0,_util.getRefElem)(l["main-chart-now-line"]);return e&&(e.style.height=u?u+"px":""),$.scrollYTop=n,$.scrollYHeight=o,$.isScrollYBig=d,c(),(0,_vue.nextTick)().then(()=>{h()})})()},handleUpdateSYStatus(e){$.scrollYLoad=e}};let ne=()=>{te()},fe=(Object.assign(X,{refreshData(){return K(),o(),(0,_vue.nextTick)().then(()=>{var e=I.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=I.xeTable;return t&&(t=t.reactData.tableData,$.tableData=t,e&&(w.currLeftSpacing=0,w.currRightSpacing=0,K()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(I.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:L,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:O,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:H,class:"vxe-gantt-view--scroll-x-handle",onScroll:X.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:g,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-x-right-corner"})])),ce=()=>(0,_vue.h)("div",{ref:k,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:j,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:z,class:"vxe-gantt-view--scroll-y-handle",onScroll:X.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:F,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),he=()=>(0,_vue.h)("div",{class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),ve=()=>{var e=T.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ce(),he()]:[he(),ce()])};return(0,_vue.onMounted)(()=>{globalEvents.on(X,"resize",ne)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign($,createReactData()),_xeUtils.default.assign(I,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(X,"keydown")}),X.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=$,r=U.value;return(0,_vue.h)("div",{ref:E,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?[fe(),ve()]:[ve(),fe()]),(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",X),X},render(){return this.renderVN()}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_dom=require("../../ui/src/dom"),_core=require("@vxe-ui/core"),_util=require("./util"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ganttHeader=_interopRequireDefault(require("./gantt-header")),_ganttBody=_interopRequireDefault(require("./gantt-body")),_ganttFooter=_interopRequireDefault(require("./gantt-footer"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let globalEvents=_core.VxeUI.globalEvents,sourceType="gantt",secondMs=1e3,minuteMs=6e4,hourMs=36e5,dayMs=24*hourMs;function createInternalData(){return{xeTable:null,visibleColumn:[],startMaps:{},endMaps:{},chartMaps:{},todayDateMaps:{},elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},lastScrollTop:0,lastScrollLeft:0}}function createReactData(){return{scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!0,scrollbarWidth:0,scrollbarHeight:0,lastScrollTime:0,lazScrollLoading:!1,scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,minViewDate:null,maxViewDate:null,tableData:[],tableColumn:[],headerGroups:[],viewCellWidth:40}}let maxYHeight=5e6;var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(t,d){var u=_xeUtils.default.uniqueId();let W=(0,_vue.inject)("$xeGantt",{}),{reactData:T,internalData:f}=W,{computeDateFormat:r,computeTaskViewOpts:l,computeStartField:m,computeEndField:p,computeTypeField:y,computeScrollbarOpts:b,computeScrollbarXToTop:U,computeScrollbarYToLeft:w,computeScaleUnit:i,computeWeekScale:s,computeMinScale:D,computeTaskNowLineOpts:v,computeScaleStep:M}=W.getComputeMaps(),E=(0,_vue.ref)(),H=(0,_vue.ref)(),k=(0,_vue.ref)(),L=(0,_vue.ref)(),O=(0,_vue.ref)(),R=(0,_vue.ref)(),z=(0,_vue.ref)(),C=(0,_vue.ref)(),Y=(0,_vue.ref)(),j=(0,_vue.ref)(),F=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),B=(0,_vue.ref)(),$=(0,_vue.reactive)(createReactData()),I=createInternalData(),S={refElem:E,refScrollXHandleElem:L,refScrollYHandleElem:z},Q=(0,_vue.computed)(()=>{var{minViewDate:a,maxViewDate:r}=$,e=l.value,i=D.value,s=M.value,e=e.gridding,o=[];if(i&&a&&r){var{type:i,startDay:d}=i;let t=-(T.currLeftSpacing+_xeUtils.default.toNumber(e&&e.leftSpacing||0)),l=T.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 u=_xeUtils.default.getWhatYear(r,l,"first");e<=u;){var n=e;o.push(n),e=_xeUtils.default.getWhatYear(e,s)}break}case"quarter":{let e=_xeUtils.default.getWhatQuarter(a,t,"first");for(var f=_xeUtils.default.getWhatQuarter(r,l,"first");e<=f;){var c=e;o.push(c),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,d,d);for(var g=_xeUtils.default.getWhatWeek(r,l,d,d);e<=g;){var _=e;o.push(_),e=_xeUtils.default.getWhatWeek(e,s)}break}case"day":case"date":{let e=_xeUtils.default.getWhatDay(a,t,"first");for(var x=_xeUtils.default.getWhatDay(r,l,"first");e<=x;){var m=e;o.push(m),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 U=_xeUtils.default.getWhatSeconds(r,l,"first");e<=U;){var w=e;o.push(w),e=_xeUtils.default.getWhatSeconds(e,s)}break}}}return o});var e=(0,_vue.computed)(()=>{var e=W.reactData,{minViewDate:a,maxViewDate:t,viewCellWidth:r}=$,{visibleColumn:i,todayDateMaps:s}=I,o=D.value,d=l.value.showNowLine,u=v.value.mode,e=e.nowTime;let n=0;if(d&&o&&a&&t&&e>=a.getTime()&&e<=t.getTime()){var f=s[o.type];let t=null,l=null;for(let e=0;e<i.length;e++){var c=i[e];if(c.field===f){t=c,n=e*r,l=i[e+1];break}}"progress"===u?t&&l&&(d=t.dateObj.date.getTime(),a=Math.max(0,Math.min(1,(e-d)/(l.dateObj.date.getTime()-d))),n+=a*r):"center"===u?n+=r/2:"end"===u&&(n+=r-1)}return n});let G={computeScaleDateList:Q,computeNowLineLeft:e},X={xID:u,props:t,context:d,reactData:$,internalData:I,getRefMaps:()=>S,getComputeMaps:()=>G},_=e=>{var t=r.value;return _xeUtils.default.toStringDate(e,t)},N=()=>{var o=W.reactData,d=o.taskScaleList,u=D.value;if(u){var d=d.find(e=>"week"===e.type),u="week"===u.type,n=new Date;let[e,t,l,a,r,i,s]=_xeUtils.default.toDateString(n,"yyyy-M-MM-dd-HH-mm-ss").split("-");var f=n.getDay()+1,c=Math.ceil((n.getMonth()+1)/3),d=""+_xeUtils.default.getYearWeek(n,d?d.startDay:void 0);u&&V(d,t)&&(e=""+(Number(e)+1),l="01"),o.nowTime=n.getTime(),I.todayDateMaps={year:e,quarter:e+"_q"+c,month:e+"_"+l,week:e+"_W"+d,day:`${e}_${l}_${a}_E`+f,date:`${e}_${l}_`+a,hour:`${e}_${l}_${a}_`+r,minute:`${e}_${l}_${a}_${r}_`+i,second:`${e}_${l}_${a}_${r}_${i}_`+s}}},A=()=>{var e=W.reactData.taskScaleList,t=i.value;let o=D.value,p=s.value;var l=Q.value,a=M.value,r=p?p.startDay:void 0;let d=[],u=[];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:{}},m="week"===o.type;var n=(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))}},f=e=>{let[t,l,a,r,i,s,o,d,u,n,f,c]=_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),_=""+_xeUtils.default.getYearWeek(e,p?p.startDay:void 0),x=_xeUtils.default.padStart(_,2,"0");return m&&V(_,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:d,m:u,mm:n,s:f,ss:c,q:g,W:_,WW:x,E:v,e:h}};for(let e=0;e<l.length;e++){var c=l[e],h=f(c),{yyyy:v,MM:g,dd:_,HH:x,mm:y,ss:S,q:b,W:U,E:w}=h,T=h,b={year:{field:v,title:v,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatYear(c,a-1)):T},quarter:{field:v+"_q"+b,title:""+b,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatQuarter(c,a-1)):T},month:{field:v+"_"+g,title:g,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatMonth(c,a-1)):T},week:{field:v+"_W"+U,title:""+U,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatWeek(c,a-1,r,r)):T},day:{field:v+`_${g}_${_}_E`+w,title:""+w,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatDay(c,a-1)):T},date:{field:v+`_${g}_`+_,title:_,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatDay(c,a-1)):T},hour:{field:v+`_${g}_${_}_`+x,title:x,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatHours(c,a-1)):T},minute:{field:v+`_${g}_${_}_${x}_`+y,title:y,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatMinutes(c,a-1)):T},second:{field:v+`_${g}_${_}_${x}_${y}_`+S,title:S,dateObj:h,startDateObj:T,endDateObj:1<a?f(_xeUtils.default.getWhatSeconds(c,a-1)):T}},U=b[o.type];o.level<19&&n("year",b,U),o.level<17&&n("quarter",b,U),o.level<15&&n("month",b,U),o.level<13&&n("week",b,U),o.level<11&&n("day",b,U),o.level<9&&n("date",b,U),o.level<7&&n("hour",b,U),o.level<5&&n("minute",b,U),o.level<3&&n("second",b,U),d.push(U)}e.forEach(e=>{var t;e.type===o.type?u.push({scaleItem:e,columns:d}):((t=i[e.type]||[])&&t.forEach(e=>{e.childCount=e.children?e.children.length:0,e.children=void 0}),u.push({scaleItem:e,columns:t}))})}return{fullCols:d,groupCols:u}},V=(e,t)=>""+e=="1"&&""+t=="12",P=(e,t)=>{e=_xeUtils.default.toStringDate(e);let l=e.getFullYear();var a=e.getMonth(),e=_xeUtils.default.getYearWeek(e,t);return V(e,a+1)&&l++,{yyyy:l,W:e}},J=e=>{var t=D.value;let o=M.value;var l=i.value;let f=s.value;var a=r.value;if(t){let c=1<o?1/o:0;switch(l){case"year":{let u=/M|d|H|m|s|S/.test(a),n="yyyy",f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,"yyyy");if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatYear(l.date,o-t),n);f[e]=a+(o-t)*c,t--}}}),(e,t)=>{var l,e=_(e),t=_(t),a=_xeUtils.default.toDateString(e,n),r=u?e:_xeUtils.default.getWhatYear(e,0,"first"),e=_xeUtils.default.getWhatYear(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=u?t:_xeUtils.default.getWhatYear(t,0,"last"),s=_xeUtils.default.getWhatYear(t,0,"first");let o=0,d=1;u&&(l=_xeUtils.default.getDayOfYear(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfYear(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"quarter":{let u=/M|d|H|m|ss|S/.test(a),n="yyyy-q",f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,n);if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatQuarter(l.date,o-t),n);f[e]=a+(o-t)*c,t--}}}),(e,t)=>{var l,e=_(e),t=_(t),a=_xeUtils.default.toDateString(e,n),r=u?e:_xeUtils.default.getWhatQuarter(e,0,"first"),e=_xeUtils.default.getWhatQuarter(e,0,"first"),i=_xeUtils.default.toDateString(t,n),t=u?t:_xeUtils.default.getWhatQuarter(t,0,"last"),s=_xeUtils.default.getWhatQuarter(t,0,"first");let o=0,d=1;u&&(l=_xeUtils.default.getDayOfQuarter(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfQuarter(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"month":{let u="yyyy-MM",n=/d|H|m|ss|S/.test(a),f={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,u);if(f[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMonth(l.date,o-t),u);f[e]=a+(o-t)*c,t--}}}),(e,t)=>{var l,e=_(e),t=_(t),a=_xeUtils.default.toDateString(e,u),r=n?e:_xeUtils.default.getWhatMonth(e,0,"first"),e=_xeUtils.default.getWhatMonth(e,0,"first"),i=_xeUtils.default.toDateString(t,u),t=n?t:_xeUtils.default.getWhatMonth(t,0,"last"),s=_xeUtils.default.getWhatMonth(t,0,"first");let o=0,d=1;n&&(l=_xeUtils.default.getDayOfMonth(r,0),o=(r.getTime()-e.getTime())/dayMs/l,r=_xeUtils.default.getDayOfMonth(t,0),d=(t.getTime()-s.getTime())/dayMs/r,c)&&(o*=c,d*=c);e=(f[a]||0)+o;return{offsetLeftSize:e,offsetWidthSize:(f[i]||0)-e+d}}}case"week":{let d=f?f.startDay:void 0,u=/d|H|m|s|S/.test(a),n={};return e.forEach(({dateObj:r},i)=>{let e=r.yyyy+"-"+r.W;if(n[e]=i,c){let a=o-1;for(;a;){var s=_xeUtils.default.getWhatWeek(r.date,o-a,d,d);let[e,t]=_xeUtils.default.toDateString(s,"yyyy-M-MM-dd-HH-mm-ss").split("-");s=""+_xeUtils.default.getYearWeek(s,f?f.startDay:void 0);let l=(e=V(s,t)?""+(Number(e)+1):e)+"-"+s;n[l]=i+(o-a)*c,a--}}}),(e,t)=>{var e=_(e),t=_(t),e=u?e:_xeUtils.default.getWhatWeek(e,0,"first",d),l=P(e,d),l=l.yyyy+"-"+l.W,a=_xeUtils.default.getWhatWeek(e,0,"first",d),t=u?t:_xeUtils.default.getWhatWeek(t,0,"first",d),r=P(t,d),r=r.yyyy+"-"+r.W,i=_xeUtils.default.getWhatWeek(t,0,"first",d);let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/dayMs/7,o=(t.getTime()-i.getTime())/dayMs/7,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"day":case"date":{let d="yyyy-MM-dd",u=/H|m|s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatDay(l.date,o-t),d);n[e]=a+(o-t)*c,t--}}}),(e,t)=>{var e=_(e),t=_(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatDay(e,0,"first"),a=_xeUtils.default.getWhatDay(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatDay(t,0,"last"),i=_xeUtils.default.getWhatDay(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/dayMs,o=(t.getTime()-i.getTime())/dayMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"hour":{let d="yyyy-MM-dd HH",u=/m|s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatHours(l.date,o-t),d);n[e]=a+(o-t)*c,t--}}}),(e,t)=>{var e=_(e),t=_(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatHours(e,0,"first"),a=_xeUtils.default.getWhatHours(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatHours(t,0,"last"),i=_xeUtils.default.getWhatHours(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/hourMs,o=(t.getTime()-i.getTime())/hourMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"minute":{let d="yyyy-MM-dd HH:mm",u=/s|S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatMinutes(l.date,o-t),d);n[e]=a+(o-t)*c,t--}}}),(e,t)=>{var e=_(e),t=_(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatMinutes(e,0,"first"),a=_xeUtils.default.getWhatMinutes(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatMinutes(t,0,"last"),i=_xeUtils.default.getWhatMinutes(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/minuteMs,o=(t.getTime()-i.getTime())/minuteMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}case"second":{let d="yyyy-MM-dd HH:mm:ss",u=/S/.test(a),n={};return e.forEach(({dateObj:l},a)=>{let e=_xeUtils.default.toDateString(l.date,d);if(n[e]=a,c){let t=o-1;for(;t;){let e=_xeUtils.default.toDateString(_xeUtils.default.getWhatSeconds(l.date,o-t),d);n[e]=a+(o-t)*c,t--}}}),(e,t)=>{var e=_(e),t=_(t),l=_xeUtils.default.toDateString(e,d),e=u?e:_xeUtils.default.getWhatSeconds(e,0,"first"),a=_xeUtils.default.getWhatSeconds(e,0,"first"),r=_xeUtils.default.toDateString(t,d),t=u?t:_xeUtils.default.getWhatSeconds(t,0,"last"),i=_xeUtils.default.getWhatSeconds(t,0,"first");let s=0,o=1;u&&(s=(e.getTime()-a.getTime())/secondMs,o=(t.getTime()-i.getTime())/secondMs,c)&&(s*=c,o*=c);e=(n[l]||0)+s;return{offsetLeftSize:e,offsetWidthSize:(n[r]||0)-e+o}}}}}return()=>({offsetLeftSize:0,offsetWidthSize:0})},K=()=>{var e=W.props.treeConfig,t=I.scrollXStore,l=I.xeTable;let s=null,o=null;if(l){let a=m.value,r=p.value,i=y.value;var{computeAggregateOpts:d,computeTreeOpts:u}=l.getComputeMaps(),n=l.reactData.isRowGroupStatus,{afterFullData:l,afterTreeFullData:f,afterGroupFullData:c}=l.internalData,d=d.value,u=u.value,h=u.transform,v=u.children||u.childrenField,g=e=>{let t=_xeUtils.default.get(e,a),l=_xeUtils.default.get(e,r);var e=_xeUtils.default.get(e,i),e=(0,_util.hasMilestoneTask)(e);t=t||l,!e&&l||(l=t),t&&(e=_(t),!s||s.getTime()>e.getTime())&&(s=e),l&&(e=_(l),!o||o.getTime()<e.getTime())&&(o=e)};n?(n=d.mapChildrenField)&&_xeUtils.default.eachTree(c,g,{children:n}):e?_xeUtils.default.eachTree(f,g,{children:h?u.mapChildrenField:v}):l.forEach(g)}t.startIndex=0,t.endIndex=Math.max(1,t.visibleSize),$.minViewDate=s,$.maxViewDate=o,I.startMaps={},I.endMaps={},(()=>{var e=W.props.treeConfig,{minViewDate:t,maxViewDate:l}=$,{fullCols:a,groupCols:r}=A();if(t&&l&&a.length){let f=I.xeTable;if(f){let s=m.value,o=p.value,d=y.value;var{computeAggregateOpts:t,computeTreeOpts:l}=f.getComputeMaps(),i=f.reactData.isRowGroupStatus,{afterFullData:c,afterTreeFullData:h,afterGroupFullData:v}=f.internalData,t=t.value,l=l.value,g=l.transform,_=l.children||l.childrenField;let u={},n=J(a);var x=e=>{var t=f.getRowid(e);let l=_xeUtils.default.get(e,s),a=_xeUtils.default.get(e,o);var r=(0,_util.getTaskType)(_xeUtils.default.get(e,d)),i=(0,_util.hasMilestoneTask)(r),r=(0,_util.hasSubviewTask)(r);i&&(l=l||a,a=l),r?u[t]={row:e,rowid:t,oLeftSize:0,oWidthSize:0}:l&&a&&({offsetLeftSize:i,offsetWidthSize:r}=n(l,a),u[t]={row:e,rowid:t,oLeftSize:i,oWidthSize:r})};i?(i=t.mapChildrenField)&&_xeUtils.default.eachTree(v,x,{children:i}):e?_xeUtils.default.eachTree(h,x,{children:g?l.mapChildrenField:_}):c.forEach(x),I.chartMaps=u}}I.visibleColumn=a,$.headerGroups=r,N(),ie(),se()})()},c=()=>{var{scrollXWidth:e,scrollYHeight:t}=$,l=I.elemStore,a=b.value,l=(0,_util.getRefElem)(l["main-body-wrapper"]),r=L.value,i=z.value,s=!1;l&&(s=t>l.clientHeight,i&&(t=a.width||i.offsetWidth-i.clientWidth||14,$.scrollbarWidth=t,T.scrollbarWidth=t),$.overflowY=s,T.overflowY=s,i=e>l.clientWidth,r&&(t=a.height||r.offsetHeight-r.clientHeight||14,$.scrollbarHeight=t,T.scrollbarHeight=t),$.overflowX=i,T.overflowX=i)},Z=(l,e)=>{let a=I.chartMaps;var t=l.getComputeMaps().computeTreeOpts,t=t.value,t=t.children||t.childrenField;let r=y.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=f.dragBarRow,o=$.viewCellWidth,{elemStore:e,chartMaps:d}=I,u=I.xeTable;var t=(0,_util.getRefElem)(e["main-chart-task-wrapper"]);if(t&&u){var l=u.getComputeMaps().computeTreeOpts,l=l.value;let i=l.children||l.childrenField;_xeUtils.default.arrayEach(t.children,e=>{var t,l,a,r=e.children[0];r&&(e=e.getAttribute("rowid"),s&&u.getRowid(s)===e||(l=(e=e?d[e]:null)?e.row:null,(0,_dom.hasClass)(r,"is--subview")?(t=r.firstElementChild)&&((0,_dom.hasClass)(t,"is--inline")?_xeUtils.default.arrayEach(t.children,e=>{var t,l,e=e.children[0],a=e.getAttribute("rowid")||"",a=a?d[a]:null;a&&(t=a.row,(0,_dom.hasClass)(e,"is--subview")?(t=t[i],{minSize:t,maxSize:l}=Z(u,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}=Z(u,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)()},h=()=>{var o=T.showLeftView,{scrollbarWidth:d,scrollbarHeight:u,headerGroups:n,tableColumn:f}=$,{elemStore:c,visibleColumn:h}=I,v=I.xeTable,g=E.value;if(g&&W){var _=b.value,x=U.value,m=w.value,p=O.value,y=R.value,S=H.value;let e=d;d=u;let t=0,l=0,a=0,r=(v&&(u=v.internalData,t=u.tBodyHeight,l=u.tHeaderHeight,a=u.tFooterHeight),"visible");(m&&o||_.y&&!1===_.y.visible)&&(e=0,r="hidden");var v=(0,_util.getRefElem)(c["main-header-scroll"]),u=(v&&(v.style.height=l+"px",v.style.setProperty("--vxe-ui-gantt-view-cell-height",l/n.length+"px")),(0,_util.getRefElem)(c["main-body-scroll"])),m=(u&&(u.style.height=t+"px"),(0,_util.getRefElem)(c["main-footer-scroll"])),o=(m&&(m.style.height=a+"px"),S&&(S.style.height=d+"px",S.style.visibility="visible"),Y.value),_=(o&&(o.style.left=x?e+"px":"",o.style.width=g.clientWidth-e+"px"),p&&(p.style.width=x?e+"px":"",p.style.display=x&&d?"block":""),y&&(y.style.width=x?"":e+"px",y.style.display=!x&&d?"block":""),k.value),v=(_&&(_.style.width=e+"px",_.style.height=t+l+a+"px",_.style.visibility=r),C.value),n=(v&&(v.style.height=l+"px",v.style.display=l?"block":""),j.value),m=(n&&(n.style.height=t+"px",n.style.top=l+"px"),F.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),u)&&0<(g=(o=u.clientWidth)-s)&&(i+=Math.max(0,g/h.length),s=o),$.viewCellWidth=i;p=(0,_util.getRefElem)(c["main-header-table"]),y=(0,_util.getRefElem)(c["main-body-table"]),x=i*f.length;return p&&(p.style.width=s+"px"),y&&(y.style.width=x+"px"),$.scrollXWidth=s,Promise.all([ee(),W.handleUpdateTaskLinkStyle?W.handleUpdateTaskLinkStyle(X):null])}},o=()=>{var e=E.value;return I.rceRunTime=Date.now(),e&&e.clientWidth&&W?(c(),h(),(0,_vue.nextTick)().then(()=>{var e,t=$.scrollXLoad,l=I.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),re().then(()=>{ae()})):a()})):(0,_vue.nextTick)()},te=()=>new Promise(e=>{var{rceTimeout:t,rceRunTime:l}=I,a=I.xeTable;let r=30;a&&(a=a.getComputeMaps().computeResizeOpts,a=a.value,r=a.refreshDelay||r),!t||(clearTimeout(t),l&&l+(r-5)<Date.now())?e(o()):(0,_vue.nextTick)(()=>{e()}),I.rceTimeout=setTimeout(()=>{I.rceTimeout=void 0,o()},r)}),le=()=>{var e,t=$.viewCellWidth,l=I.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}},ae=()=>{var e=$.isScrollXBig,t=I.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,re())},re=()=>(se(),a(),(0,_vue.nextTick)()),ie=()=>$.scrollXLoad=!0,se=()=>{var e=$.scrollXLoad,{visibleColumn:t,scrollXStore:l}=I,e=e?t.slice(l.startIndex,l.endIndex):t.slice(0);$.tableColumn=e},a=()=>{let{scrollXLoad:t,scrollXWidth:e,viewCellWidth:l}=$,{elemStore:a,scrollXStore:r}=I;var i=(0,_util.getRefElem)(a["main-body-table"]),s=r.startIndex;let o=0,d=(t&&(o=Math.max(0,s*l)),i&&(i.style.transform=`translate(${o}px, ${$.scrollYTop||0}px)`),e);["header","body","footer"].forEach(e=>{e=(0,_util.getRefElem)(a[`main-${e}-xSpace`]);e&&(e.style.width=t?d+"px":"")});s=g.value,s&&(s.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-before-wrapper"]),s=i?i.firstElementChild:null,s&&(s.style.width=d+"px"),i=(0,_util.getRefElem)(a["main-chart-after-wrapper"]),s=i?i.firstElementChild:null;return s&&(s.style.width=d+"px"),$.scrollXLeft=o,$.scrollXWidth=d,c(),(0,_vue.nextTick)()},oe=()=>{ae()},de=(e,t)=>{var l=I.lcsTimeout;$.lazScrollLoading=!0,l&&clearTimeout(l),I.lcsTimeout=setTimeout(()=>{I.lcsRunTime=Date.now(),I.lcsTimeout=void 0,I.intoRunScroll=!1,I.inVirtualScroll=!1,I.inWheelScroll=!1,I.inHeaderScroll=!1,I.inBodyScroll=!1,I.inFooterScroll=!1,$.lazScrollLoading=!1},200)},q=(e,t,l,a)=>{t&&(I.lastScrollLeft=a),e&&(I.lastScrollTop=l),$.lastScrollTime=Date.now(),de(t,e)},n=(u,n,f,c,h)=>{var v=I.xeTable,{lastScrollLeft:g,lastScrollTop:_}=I,x=L.value,m=z.value;if(x&&m&&v){var{computeScrollXThreshold:v,computeScrollYThreshold:p}=v.getComputeMaps(),y=m.clientHeight,S=x.clientWidth,m=m.scrollHeight,x=x.scrollWidth;let e=!1,t=!1,l=!1,a=!1,r="",i=!1,s=!1,o=!1,d=!1;f&&(v=v.value,(l=h<=0)||(a=x-1<=h+S),g<h?(r="right",x-v<=h+S&&(d=!0)):(r="left",h<=v&&(o=!0))),n&&(g=p.value,(e=c<=0)||(t=m-1<=c+y),_<c?(r="bottom",m-g<=c+y&&(s=!0)):(r="top",c<=g&&(i=!0))),q(n,f,c,h);v={source:sourceType,scrollTop:c,scrollLeft:h,bodyHeight:y,bodyWidth:S,scrollHeight:m,scrollWidth:x,isX:f,isY:n,isTop:e,isBottom:t,isLeft:l,isRight:a,direction:r};(s||i||d||o)&&W.dispatchEvent("scroll-boundary",v,u),W.dispatchEvent("scroll",v,u)}},ue=e=>{var t=I.xeTable;t&&(t=t.internalData.elemStore,t=(0,_util.getRefElem)(t["main-body-scroll"]))&&(t.scrollTop=e)};e={handleUpdateStyle:h,handleLazyRecalculate:te,handleUpdateCurrentRow(e){var t,l,a=I.xeTable,r=E.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=I.xeTable,l=E.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}=I;l||a||r||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),r=L.value,a&&l&&(t=l.scrollLeft,I.inHeaderScroll=!0,(0,_dom.setScrollLeft)(r,t),(0,_dom.setScrollLeft)(a,t),n(e,!1,!0,l.scrollTop,t)))},triggerBodyScrollEvent(e){var t,l,a=$.scrollXLoad,{elemStore:r,inVirtualScroll:i,inHeaderScroll:s,inFooterScroll:o,lastScrollLeft:d,lastScrollTop:u}=I;i||s||o||(i=e.currentTarget,s=(0,_util.getRefElem)(r["main-header-scroll"]),o=L.value,r=z.value,d=(t=i.scrollLeft)!==d,u=(l=i.scrollTop)!==u,I.inBodyScroll=!0,I.scrollRenderType="",u&&((0,_dom.setScrollTop)(r,l),ue(l)),d&&(I.inBodyScroll=!0,(0,_dom.setScrollLeft)(o,t),(0,_dom.setScrollLeft)(s,t),a)&&oe(),u&&q(u,d,i.scrollTop,t),d&&n(e,u,d,i.scrollTop,t))},triggerVirtualScrollXEvent(e){var t,l=$.scrollXLoad,{elemStore:a,inHeaderScroll:r,inBodyScroll:i}=I;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,I.inVirtualScroll=!0,(0,_dom.setScrollLeft)(i,t),(0,_dom.setScrollLeft)(a,t),l&&oe(),n(e,!1,!0,r.scrollTop,t)))},triggerVirtualScrollYEvent(e){var{elemStore:t,inHeaderScroll:l,inBodyScroll:a}=I;l||a||(l=e.currentTarget,a=(0,_util.getRefElem)(t["main-body-scroll"]),l&&(e=l.scrollTop,I.inVirtualScroll=!0,(0,_dom.setScrollTop)(a,e),ue(e),q(!0,!1,e,l.scrollLeft)))},handleUpdateSXSpace(){return a()},handleUpdateSYSpace(){return(()=>{var{scrollYLoad:e,overflowY:t}=$,l=I.elemStore,a=I.xeTable,r=(0,_util.getRefElem)(l["main-body-scroll"]),i=(0,_util.getRefElem)(l["main-body-table"]);let s=0,o=0,d=!1,u=(a&&(a=a.reactData,s=a.scrollYTop,o=a.scrollYHeight,d=a.isScrollYBig),o),n=s,f=0;r&&(f=r.clientHeight),d&&(n=r&&i&&r.scrollTop+f>=maxYHeight?maxYHeight-i.clientHeight:(maxYHeight-f)*(s/(o-f)),u=maxYHeight),e&&t||(n=0);a=(0,_util.getRefElem)(l["main-chart-task-wrapper"]),i&&(i.style.transform=`translate(${$.scrollXLeft||0}px, ${n}px)`),a&&(a.style.transform=`translateY(${n}px)`),r=(0,_util.getRefElem)(l["main-body-ySpace"]),r&&(r.style.height=u?u+"px":""),e=x.value,e&&(e.style.height=u?u+"px":""),t=(0,_util.getRefElem)(l["main-chart-before-wrapper"]),i=t?t.firstElementChild:null,i&&(i.style.height=u?u+"px":""),a=(0,_util.getRefElem)(l["main-chart-after-wrapper"]),r=a?a.firstElementChild:null,r&&(r.style.height=u?u+"px":""),e=(0,_util.getRefElem)(l["main-chart-now-line"]);return e&&(e.style.height=u?u+"px":""),$.scrollYTop=n,$.scrollYHeight=o,$.isScrollYBig=d,c(),(0,_vue.nextTick)().then(()=>{h()})})()},handleUpdateSYStatus(e){$.scrollYLoad=e}};let ne=()=>{te()},fe=(Object.assign(X,{refreshData(){return K(),o(),(0,_vue.nextTick)().then(()=>{var e=I.xeTable;if(o(),e)return e.recalculate()})},updateViewData(e){var t=I.xeTable;return t&&(t=t.reactData.tableData,$.tableData=t,e&&(T.currLeftSpacing=0,T.currRightSpacing=0,K()),o()),(0,_vue.nextTick)()},connectUpdate({$table:e}){return e&&(I.xeTable=e),(0,_vue.nextTick)()}},e),()=>(0,_vue.h)("div",{key:"vsx",ref:H,class:"vxe-gantt-view--scroll-x-virtual"},[(0,_vue.h)("div",{ref:O,class:"vxe-gantt-view--scroll-x-left-corner"}),(0,_vue.h)("div",{ref:Y,class:"vxe-gantt-view--scroll-x-wrapper"},[(0,_vue.h)("div",{ref:L,class:"vxe-gantt-view--scroll-x-handle",onScroll:X.triggerVirtualScrollXEvent},[(0,_vue.h)("div",{ref:g,class:"vxe-gantt-view--scroll-x-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-x-handle-appearance"})]),(0,_vue.h)("div",{ref:R,class:"vxe-gantt-view--scroll-x-right-corner"})])),ce=()=>(0,_vue.h)("div",{ref:k,class:"vxe-gantt-view--scroll-y-virtual"},[(0,_vue.h)("div",{ref:C,class:"vxe-gantt-view--scroll-y-top-corner"}),(0,_vue.h)("div",{ref:j,class:"vxe-gantt-view--scroll-y-wrapper"},[(0,_vue.h)("div",{ref:z,class:"vxe-gantt-view--scroll-y-handle",onScroll:X.triggerVirtualScrollYEvent},[(0,_vue.h)("div",{ref:x,class:"vxe-gantt-view--scroll-y-space"})]),(0,_vue.h)("div",{class:"vxe-gantt-view--scroll-y-handle-appearance"})]),(0,_vue.h)("div",{ref:F,class:"vxe-gantt-view--scroll-y-bottom-corner"})]),he=()=>(0,_vue.h)("div",{class:"vxe-gantt-view--viewport-wrapper"},[(0,_vue.h)(_ganttHeader.default),(0,_vue.h)(_ganttBody.default),(0,_vue.h)(_ganttFooter.default)]),ve=()=>{var e=w.value;return(0,_vue.h)("div",{class:"vxe-gantt-view--layout-wrapper"},e?[ce(),he()]:[he(),ce()])};return(0,_vue.onMounted)(()=>{globalEvents.on(X,"resize",ne)}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign($,createReactData()),_xeUtils.default.assign(I,createInternalData())}),(0,_vue.onUnmounted)(()=>{globalEvents.off(X,"keydown")}),X.renderVN=()=>{var{overflowX:e,overflowY:t,scrollXLoad:l,scrollYLoad:a}=$,r=U.value;return(0,_vue.h)("div",{ref:E,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?[fe(),ve()]:[ve(),fe()]),(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",X),X},render(){return this.renderVN()}});
|
package/lib/gantt/src/util.js
CHANGED
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.getCalcHeight = getCalcHeight;
|
|
7
7
|
exports.getCellRestHeight = getCellRestHeight;
|
|
8
8
|
exports.getRefElem = getRefElem;
|
|
9
|
-
exports.getStandardGapTime = getStandardGapTime;
|
|
10
9
|
exports.getTaskBarLeft = getTaskBarLeft;
|
|
11
10
|
exports.getTaskBarWidth = getTaskBarWidth;
|
|
12
11
|
exports.getTaskType = getTaskType;
|
|
@@ -30,17 +29,6 @@ function getCalcHeight(height) {
|
|
|
30
29
|
function getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight) {
|
|
31
30
|
return rowRest.resizeHeight || cellOpts.height || rowOpts.height || rowRest.height || defaultRowHeight;
|
|
32
31
|
}
|
|
33
|
-
function getStandardGapTime(type) {
|
|
34
|
-
switch (type) {
|
|
35
|
-
case 'hour':
|
|
36
|
-
return 1000 * 60 * 60;
|
|
37
|
-
case 'minute':
|
|
38
|
-
return 1000 * 60;
|
|
39
|
-
case 'second':
|
|
40
|
-
return 1000;
|
|
41
|
-
}
|
|
42
|
-
return 1000 * 60 * 60 * 24;
|
|
43
|
-
}
|
|
44
32
|
function getTaskBarLeft(chartRest, viewCellWidth) {
|
|
45
33
|
return chartRest ? viewCellWidth * chartRest.oLeftSize : 0;
|
|
46
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getCellRestHeight(e,t,s,a){return e.resizeHeight||t.height||s.height||e.height||a}function
|
|
1
|
+
function getRefElem(e){if(e){e=e.value;if(e)return e.$el||e}return null}function getCalcHeight(e){return"unset"!==e&&e||0}function getCellRestHeight(e,t,s,a){return e.resizeHeight||t.height||s.height||e.height||a}function getTaskBarLeft(e,t){return e?t*e.oLeftSize:0}function getTaskBarWidth(e,t){return e&&e.oWidthSize?Math.max(1,e?Math.floor(t*e.oWidthSize)-1:0):0}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCalcHeight=getCalcHeight,exports.getCellRestHeight=getCellRestHeight,exports.getRefElem=getRefElem,exports.getTaskBarLeft=getTaskBarLeft,exports.getTaskBarWidth=getTaskBarWidth,exports.getTaskType=getTaskType,exports.hasMilestoneTask=hasMilestoneTask,exports.hasSubviewTask=hasSubviewTask;let taskTypeMaps={milestone:!0,subview:!0};function hasMilestoneTask(e){return"milestone"===e}function hasSubviewTask(e){return"subview"===e}function getTaskType(e){return taskTypeMaps[e]?e:"default"}
|