vxe-gantt 4.0.0-beta.0 → 4.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/es/gantt/src/emits.js +5 -1
- package/es/gantt/src/gantt-body.js +11 -2
- package/es/gantt/src/gantt-chart.js +35 -14
- package/es/gantt/src/gantt-header.js +5 -2
- package/es/gantt/src/gantt-view.js +5 -1
- package/es/gantt/src/gantt.js +84 -32
- package/es/gantt/src/grid-props.js +1 -1
- package/es/gantt/src/props.js +1 -1
- package/es/gantt/src/table-props.js +1 -1
- package/es/gantt/style.css +36 -17
- package/es/gantt/style.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +9 -2
- package/es/ui/src/log.js +3 -2
- package/es/ui/src/utils.js +3 -0
- package/es/vxe-gantt/style.css +36 -17
- package/es/vxe-gantt/style.min.css +1 -1
- package/helper/vetur/attributes.json +1 -1
- package/helper/vetur/tags.json +1 -1
- package/lib/gantt/src/emits.js +1 -1
- package/lib/gantt/src/emits.min.js +1 -1
- package/lib/gantt/src/gantt-body.js +16 -2
- package/lib/gantt/src/gantt-body.min.js +1 -1
- package/lib/gantt/src/gantt-chart.js +47 -10
- package/lib/gantt/src/gantt-chart.min.js +1 -1
- package/lib/gantt/src/gantt-header.js +6 -2
- package/lib/gantt/src/gantt-header.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +6 -2
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +101 -35
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/gantt/src/grid-props.js +2 -2
- package/lib/gantt/src/grid-props.min.js +1 -1
- package/lib/gantt/src/props.js +2 -1
- package/lib/gantt/src/props.min.js +1 -1
- package/lib/gantt/src/table-props.js +2 -2
- package/lib/gantt/src/table-props.min.js +1 -1
- package/lib/gantt/style/style.css +36 -17
- package/lib/gantt/style/style.min.css +1 -1
- package/lib/index.umd.js +214 -73
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +13 -3
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +6 -3
- package/lib/ui/src/log.min.js +1 -1
- package/lib/ui/src/utils.js +4 -0
- package/lib/ui/src/utils.min.js +1 -1
- package/lib/vxe-gantt/style/style.css +36 -17
- package/lib/vxe-gantt/style/style.min.css +1 -1
- package/package.json +4 -4
- package/packages/gantt/src/emits.ts +6 -1
- package/packages/gantt/src/gantt-body.ts +11 -2
- package/packages/gantt/src/gantt-chart.ts +26 -9
- package/packages/gantt/src/gantt-header.ts +5 -2
- package/packages/gantt/src/gantt-view.ts +5 -1
- package/packages/gantt/src/gantt.ts +88 -30
- package/packages/gantt/src/grid-props.ts +1 -1
- package/packages/gantt/src/props.ts +2 -1
- package/packages/gantt/src/table-props.ts +1 -1
- package/packages/ui/index.ts +9 -1
- package/packages/ui/src/log.ts +3 -1
- package/packages/ui/src/utils.ts +4 -0
- package/styles/components/gantt-module/gantt-chart.scss +28 -9
- package/styles/components/gantt.scss +12 -7
- package/styles/theme/base.scss +5 -1
package/README.md
CHANGED
package/es/gantt/src/emits.js
CHANGED
|
@@ -40,6 +40,12 @@ export default defineVxeComponent({
|
|
|
40
40
|
class: 'vxe-gantt-view--body-column',
|
|
41
41
|
style: {
|
|
42
42
|
height: `${cellHeight}px`
|
|
43
|
+
},
|
|
44
|
+
onClick(evnt) {
|
|
45
|
+
$xeGantt.handleTaskCellClickEvent(evnt, { row });
|
|
46
|
+
},
|
|
47
|
+
onDblclick(evnt) {
|
|
48
|
+
$xeGantt.handleTaskCellDblclickEvent(evnt, { row });
|
|
43
49
|
}
|
|
44
50
|
});
|
|
45
51
|
})));
|
|
@@ -47,7 +53,7 @@ export default defineVxeComponent({
|
|
|
47
53
|
return trVNs;
|
|
48
54
|
};
|
|
49
55
|
const renderVN = () => {
|
|
50
|
-
const { tableColumn } = reactData;
|
|
56
|
+
const { tableColumn, viewCellWidth } = reactData;
|
|
51
57
|
return h('div', {
|
|
52
58
|
ref: refElem,
|
|
53
59
|
class: 'vxe-gantt-view--body-wrapper'
|
|
@@ -71,7 +77,10 @@ export default defineVxeComponent({
|
|
|
71
77
|
}, [
|
|
72
78
|
h('colgroup', {}, tableColumn.map((column, cIndex) => {
|
|
73
79
|
return h('col', {
|
|
74
|
-
key: cIndex
|
|
80
|
+
key: cIndex,
|
|
81
|
+
style: {
|
|
82
|
+
width: `${viewCellWidth}px`
|
|
83
|
+
}
|
|
75
84
|
});
|
|
76
85
|
})),
|
|
77
86
|
h('tbody', {}, renderRows())
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { h, inject, ref, onMounted, onUnmounted } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
|
+
import { VxeUI } from '@vxe-ui/core';
|
|
3
4
|
import XEUtils from 'xe-utils';
|
|
4
5
|
import { getCellRestHeight } from './util';
|
|
6
|
+
import { getStringValue } from '../../ui/src/utils';
|
|
7
|
+
const { renderEmptyElement } = VxeUI;
|
|
5
8
|
export default defineVxeComponent({
|
|
6
9
|
name: 'VxeGanttViewChart',
|
|
7
10
|
setup() {
|
|
@@ -9,7 +12,7 @@ export default defineVxeComponent({
|
|
|
9
12
|
const $xeGanttView = inject('$xeGanttView', {});
|
|
10
13
|
const { reactData, internalData } = $xeGanttView;
|
|
11
14
|
const { refTable } = $xeGantt.getRefMaps();
|
|
12
|
-
const { computeProgressField } = $xeGantt.getComputeMaps();
|
|
15
|
+
const { computeProgressField, computeTitleField, computeTaskBarOpts } = $xeGantt.getComputeMaps();
|
|
13
16
|
const refElem = ref();
|
|
14
17
|
const renderVN = () => {
|
|
15
18
|
const $xeTable = refTable.value;
|
|
@@ -24,36 +27,54 @@ export default defineVxeComponent({
|
|
|
24
27
|
defaultRowHeight = computeDefaultRowHeight.value;
|
|
25
28
|
}
|
|
26
29
|
const { tableData } = reactData;
|
|
30
|
+
const titleField = computeTitleField.value;
|
|
27
31
|
const progressField = computeProgressField.value;
|
|
32
|
+
const taskBarOpts = computeTaskBarOpts.value;
|
|
33
|
+
const { showProgress, showContent, contentMethod, barStyle } = taskBarOpts;
|
|
34
|
+
const { round } = barStyle || {};
|
|
28
35
|
const trVNs = [];
|
|
29
36
|
tableData.forEach((row, rIndex) => {
|
|
30
37
|
const rowid = $xeTable ? $xeTable.getRowid(row) : '';
|
|
31
38
|
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
32
39
|
const cellHeight = getCellRestHeight(rowRest, cellOpts, rowOpts, defaultRowHeight);
|
|
33
|
-
|
|
40
|
+
let title = getStringValue(XEUtils.get(row, titleField));
|
|
41
|
+
const progressValue = showProgress ? Math.min(100, Math.max(0, XEUtils.toNumber(XEUtils.get(row, progressField)))) : 0;
|
|
42
|
+
if (contentMethod) {
|
|
43
|
+
title = getStringValue(contentMethod({ row, title }));
|
|
44
|
+
}
|
|
34
45
|
trVNs.push(h('div', {
|
|
35
46
|
key: rIndex,
|
|
36
47
|
rowid,
|
|
37
|
-
class: 'vxe-gantt-view--chart-row',
|
|
48
|
+
class: ['vxe-gantt-view--chart-row', {
|
|
49
|
+
'is--round': round
|
|
50
|
+
}],
|
|
38
51
|
style: {
|
|
39
52
|
height: `${cellHeight}px`
|
|
40
53
|
}
|
|
41
54
|
}, [
|
|
42
55
|
h('div', {
|
|
43
56
|
class: 'vxe-gantt-view--chart-bar',
|
|
44
|
-
rowid
|
|
57
|
+
rowid,
|
|
58
|
+
onClick(evnt) {
|
|
59
|
+
$xeGantt.handleTaskBarClickEvent(evnt, { row });
|
|
60
|
+
},
|
|
61
|
+
onDblclick(evnt) {
|
|
62
|
+
$xeGantt.handleTaskBarDblclickEvent(evnt, { row });
|
|
63
|
+
}
|
|
45
64
|
}, [
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
width: `${progressValue}%`
|
|
65
|
+
showProgress
|
|
66
|
+
? h('div', {
|
|
67
|
+
class: 'vxe-gantt-view--chart-progress',
|
|
68
|
+
style: {
|
|
69
|
+
width: `${progressValue || 0}%`
|
|
51
70
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
71
|
+
})
|
|
72
|
+
: renderEmptyElement($xeGantt),
|
|
73
|
+
showContent
|
|
74
|
+
? h('div', {
|
|
75
|
+
class: 'vxe-gantt-view--chart-content'
|
|
76
|
+
}, title)
|
|
77
|
+
: renderEmptyElement($xeGantt)
|
|
57
78
|
])
|
|
58
79
|
]));
|
|
59
80
|
});
|
|
@@ -10,7 +10,7 @@ export default defineVxeComponent({
|
|
|
10
10
|
const refHeaderTable = ref();
|
|
11
11
|
const refHeaderXSpace = ref();
|
|
12
12
|
const renderVN = () => {
|
|
13
|
-
const { tableColumn, headerGroups } = reactData;
|
|
13
|
+
const { tableColumn, headerGroups, viewCellWidth } = reactData;
|
|
14
14
|
return h('div', {
|
|
15
15
|
ref: refElem,
|
|
16
16
|
class: 'vxe-gantt-view--header-wrapper'
|
|
@@ -30,7 +30,10 @@ export default defineVxeComponent({
|
|
|
30
30
|
}, [
|
|
31
31
|
h('colgroup', {}, tableColumn.map((column, cIndex) => {
|
|
32
32
|
return h('col', {
|
|
33
|
-
key: cIndex
|
|
33
|
+
key: cIndex,
|
|
34
|
+
style: {
|
|
35
|
+
width: `${viewCellWidth}px`
|
|
36
|
+
}
|
|
34
37
|
});
|
|
35
38
|
})),
|
|
36
39
|
h('thead', {}, headerGroups.map((cols, rIndex) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, ref, reactive, nextTick, inject, watch, provide, onMounted, onUnmounted } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
3
|
import { setScrollTop, setScrollLeft } from '../../ui/src/dom';
|
|
4
|
-
import { VxeUI } from '
|
|
4
|
+
import { VxeUI } from '@vxe-ui/core';
|
|
5
5
|
import { getRefElem } from './util';
|
|
6
6
|
import XEUtils from 'xe-utils';
|
|
7
7
|
import GanttViewHeaderComponent from './gantt-header';
|
|
@@ -487,6 +487,10 @@ export default defineVxeComponent({
|
|
|
487
487
|
checkLastSyncScroll(isRollX, isRollY);
|
|
488
488
|
};
|
|
489
489
|
const ganttViewMethods = {
|
|
490
|
+
refreshData() {
|
|
491
|
+
handleUpdateData();
|
|
492
|
+
return handleLazyRecalculate();
|
|
493
|
+
},
|
|
490
494
|
updateViewData() {
|
|
491
495
|
const $xeTable = internalData.xeTable;
|
|
492
496
|
if ($xeTable) {
|
package/es/gantt/src/gantt.js
CHANGED
|
@@ -3,7 +3,7 @@ import { defineVxeComponent } from '../../ui/src/comp';
|
|
|
3
3
|
import XEUtils from 'xe-utils';
|
|
4
4
|
import { getLastZIndex, nextZIndex, isEnableConf } from '../../ui/src/utils';
|
|
5
5
|
import { getOffsetHeight, getPaddingTopBottomSize, getDomNode, toCssUnit, addClass, removeClass } from '../../ui/src/dom';
|
|
6
|
-
import { VxeUI } from '
|
|
6
|
+
import { VxeUI } from '@vxe-ui/core';
|
|
7
7
|
import { ganttProps } from './props';
|
|
8
8
|
import { ganttEmits } from './emits';
|
|
9
9
|
import { tableEmits } from './table-emits';
|
|
@@ -119,17 +119,20 @@ export default defineVxeComponent({
|
|
|
119
119
|
const computeTaskBarOpts = computed(() => {
|
|
120
120
|
return Object.assign({}, getConfig().gantt.taskBarConfig, props.taskBarConfig);
|
|
121
121
|
});
|
|
122
|
+
const computeTaskSplitOpts = computed(() => {
|
|
123
|
+
return Object.assign({}, getConfig().gantt.taskSplitConfig, props.taskSplitConfig);
|
|
124
|
+
});
|
|
122
125
|
const computeTitleField = computed(() => {
|
|
123
126
|
const taskOpts = computeTaskOpts.value;
|
|
124
127
|
return taskOpts.titleField || 'title';
|
|
125
128
|
});
|
|
126
129
|
const computeStartField = computed(() => {
|
|
127
130
|
const taskOpts = computeTaskOpts.value;
|
|
128
|
-
return taskOpts.startField || '
|
|
131
|
+
return taskOpts.startField || 'start';
|
|
129
132
|
});
|
|
130
133
|
const computeEndField = computed(() => {
|
|
131
134
|
const taskOpts = computeTaskOpts.value;
|
|
132
|
-
return taskOpts.endField || '
|
|
135
|
+
return taskOpts.endField || 'end';
|
|
133
136
|
});
|
|
134
137
|
const computeProgressField = computed(() => {
|
|
135
138
|
const taskOpts = computeTaskOpts.value;
|
|
@@ -149,6 +152,10 @@ export default defineVxeComponent({
|
|
|
149
152
|
const computeStyles = computed(() => {
|
|
150
153
|
const { height, maxHeight } = props;
|
|
151
154
|
const { isZMax, tZindex } = reactData;
|
|
155
|
+
const taskViewOpts = computeTaskViewOpts.value;
|
|
156
|
+
const { tableStyle } = taskViewOpts;
|
|
157
|
+
const taskBarOpts = computeTaskBarOpts.value;
|
|
158
|
+
const { barStyle } = taskBarOpts;
|
|
152
159
|
const stys = {};
|
|
153
160
|
if (isZMax) {
|
|
154
161
|
stys.zIndex = tZindex;
|
|
@@ -161,6 +168,21 @@ export default defineVxeComponent({
|
|
|
161
168
|
stys.maxHeight = maxHeight === 'auto' || maxHeight === '100%' ? '100%' : toCssUnit(maxHeight);
|
|
162
169
|
}
|
|
163
170
|
}
|
|
171
|
+
if (barStyle) {
|
|
172
|
+
const { bgColor, completedBgColor } = barStyle;
|
|
173
|
+
if (bgColor) {
|
|
174
|
+
stys['--vxe-ui-gantt-view-task-bar-background-color'] = bgColor;
|
|
175
|
+
}
|
|
176
|
+
if (completedBgColor) {
|
|
177
|
+
stys['--vxe-ui-gantt-view-task-bar-completed-background-color'] = completedBgColor;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
if (tableStyle) {
|
|
181
|
+
const { width: defTbWidth } = tableStyle;
|
|
182
|
+
if (defTbWidth) {
|
|
183
|
+
stys['--vxe-ui-gantt-view-table-default-width'] = toCssUnit(defTbWidth);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
164
186
|
return stys;
|
|
165
187
|
});
|
|
166
188
|
const computeTableExtendProps = computed(() => {
|
|
@@ -279,6 +301,7 @@ export default defineVxeComponent({
|
|
|
279
301
|
computeTaskOpts,
|
|
280
302
|
computeTaskViewOpts,
|
|
281
303
|
computeTaskBarOpts,
|
|
304
|
+
computeTaskSplitOpts,
|
|
282
305
|
computeTitleField,
|
|
283
306
|
computeStartField,
|
|
284
307
|
computeEndField,
|
|
@@ -1194,7 +1217,7 @@ export default defineVxeComponent({
|
|
|
1194
1217
|
};
|
|
1195
1218
|
}
|
|
1196
1219
|
return null;
|
|
1197
|
-
}
|
|
1220
|
+
},
|
|
1198
1221
|
// setProxyInfo (options) {
|
|
1199
1222
|
// if (props.proxyConfig && options) {
|
|
1200
1223
|
// const { pager, form } = options
|
|
@@ -1212,7 +1235,14 @@ export default defineVxeComponent({
|
|
|
1212
1235
|
// }
|
|
1213
1236
|
// }
|
|
1214
1237
|
// return nextTick()
|
|
1215
|
-
// }
|
|
1238
|
+
// },
|
|
1239
|
+
refreshTaskView() {
|
|
1240
|
+
const $ganttView = refGanttView.value;
|
|
1241
|
+
if ($ganttView) {
|
|
1242
|
+
return $ganttView.refreshData();
|
|
1243
|
+
}
|
|
1244
|
+
return nextTick();
|
|
1245
|
+
}
|
|
1216
1246
|
};
|
|
1217
1247
|
const ganttPrivateMethods = {
|
|
1218
1248
|
extendTableMethods,
|
|
@@ -1272,6 +1302,18 @@ export default defineVxeComponent({
|
|
|
1272
1302
|
triggerZoomEvent(evnt) {
|
|
1273
1303
|
$xeGantt.zoom();
|
|
1274
1304
|
$xeGantt.dispatchEvent('zoom', { type: reactData.isZMax ? 'max' : 'revert' }, evnt);
|
|
1305
|
+
},
|
|
1306
|
+
handleTaskCellClickEvent(evnt, params) {
|
|
1307
|
+
$xeGantt.dispatchEvent('task-cell-click', params, evnt);
|
|
1308
|
+
},
|
|
1309
|
+
handleTaskCellDblclickEvent(evnt, params) {
|
|
1310
|
+
$xeGantt.dispatchEvent('task-cell-dblclick', params, evnt);
|
|
1311
|
+
},
|
|
1312
|
+
handleTaskBarClickEvent(evnt, params) {
|
|
1313
|
+
$xeGantt.dispatchEvent('task-bar-click', params, evnt);
|
|
1314
|
+
},
|
|
1315
|
+
handleTaskBarDblclickEvent(evnt, params) {
|
|
1316
|
+
$xeGantt.dispatchEvent('task-bar-dblclick', params, evnt);
|
|
1275
1317
|
}
|
|
1276
1318
|
};
|
|
1277
1319
|
Object.assign($xeGantt, ganttExtendTableMethods, ganttMethods, ganttPrivateMethods, {
|
|
@@ -1524,37 +1566,47 @@ export default defineVxeComponent({
|
|
|
1524
1566
|
};
|
|
1525
1567
|
const renderSplitBar = () => {
|
|
1526
1568
|
const { showLeftView, showRightView } = reactData;
|
|
1569
|
+
const taskSplitOpts = computeTaskSplitOpts.value;
|
|
1570
|
+
const { enabled, resize, showCollapseTableButton, showCollapseTaskButton } = taskSplitOpts;
|
|
1571
|
+
if (!enabled) {
|
|
1572
|
+
return renderEmptyElement($xeGantt);
|
|
1573
|
+
}
|
|
1574
|
+
const ons = {};
|
|
1575
|
+
if (resize) {
|
|
1576
|
+
ons.onMousedown = dragSplitEvent;
|
|
1577
|
+
}
|
|
1527
1578
|
return h('div', {
|
|
1528
|
-
class: 'vxe-gantt--view-split-bar'
|
|
1579
|
+
class: ['vxe-gantt--view-split-bar', Object.assign({ 'is--resize': resize }, ons)]
|
|
1529
1580
|
}, [
|
|
1530
1581
|
h('div', {
|
|
1531
|
-
class: 'vxe-gantt--view-split-bar-handle'
|
|
1532
|
-
onMousedown: dragSplitEvent
|
|
1582
|
+
class: 'vxe-gantt--view-split-bar-handle'
|
|
1533
1583
|
}),
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1584
|
+
showCollapseTableButton || showCollapseTaskButton
|
|
1585
|
+
? h('div', {
|
|
1586
|
+
class: 'vxe-gantt--view-split-bar-btn-wrapper'
|
|
1587
|
+
}, [
|
|
1588
|
+
showCollapseTableButton && showRightView
|
|
1589
|
+
? h('div', {
|
|
1590
|
+
class: 'vxe-gantt--view-split-bar-left-btn',
|
|
1591
|
+
onClick: handleSplitLeftViewEvent
|
|
1592
|
+
}, [
|
|
1593
|
+
h('i', {
|
|
1594
|
+
class: showLeftView ? getIcon().GANTT_VIEW_LEFT_OPEN : getIcon().GANTT_VIEW_LEFT_CLOSE
|
|
1595
|
+
})
|
|
1596
|
+
])
|
|
1597
|
+
: renderEmptyElement($xeGantt),
|
|
1598
|
+
showCollapseTaskButton && showLeftView
|
|
1599
|
+
? h('div', {
|
|
1600
|
+
class: 'vxe-gantt--view-split-bar-right-btn',
|
|
1601
|
+
onClick: handleSplitRightViewEvent
|
|
1602
|
+
}, [
|
|
1603
|
+
h('i', {
|
|
1604
|
+
class: showRightView ? getIcon().GANTT_VIEW_RIGHT_OPEN : getIcon().GANTT_VIEW_RIGHT_CLOSE
|
|
1605
|
+
})
|
|
1606
|
+
])
|
|
1607
|
+
: renderEmptyElement($xeGantt)
|
|
1608
|
+
])
|
|
1609
|
+
: renderEmptyElement($xeGantt)
|
|
1558
1610
|
]);
|
|
1559
1611
|
};
|
|
1560
1612
|
const renderChildLayout = (layoutKeys) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VxeUI } from '
|
|
1
|
+
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
import { tableProps } from './table-props';
|
|
3
3
|
const { getConfig } = VxeUI;
|
|
4
4
|
export const gridProps = Object.assign(Object.assign({}, tableProps), { layouts: Array, columns: Array, pagerConfig: Object, proxyConfig: Object, toolbarConfig: Object, formConfig: Object, zoomConfig: Object, size: {
|
package/es/gantt/src/props.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { gridProps } from './grid-props';
|
|
2
|
-
export const ganttProps = Object.assign(Object.assign({}, gridProps), { layouts: Array, taskConfig: Object, taskViewConfig: Object, taskBarConfig: Object });
|
|
2
|
+
export const ganttProps = Object.assign(Object.assign({}, gridProps), { layouts: Array, taskConfig: Object, taskViewConfig: Object, taskBarConfig: Object, taskSplitConfig: Object });
|
package/es/gantt/style.css
CHANGED
|
@@ -9,19 +9,27 @@
|
|
|
9
9
|
.vxe-gantt-view--chart-row {
|
|
10
10
|
position: relative;
|
|
11
11
|
}
|
|
12
|
+
.vxe-gantt-view--chart-row.is--round > .vxe-gantt-view--chart-bar {
|
|
13
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
14
|
+
}
|
|
15
|
+
.vxe-gantt-view--chart-row.is--round > .vxe-gantt-view--chart-bar:hover::after {
|
|
16
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
17
|
+
}
|
|
18
|
+
.vxe-gantt-view--chart-row.is--round > .vxe-gantt-view--chart-bar > .vxe-gantt-view--chart-progress {
|
|
19
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius) 0 0 var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
20
|
+
}
|
|
12
21
|
|
|
13
22
|
.vxe-gantt-view--chart-bar {
|
|
14
23
|
display: flex;
|
|
15
24
|
flex-direction: row;
|
|
25
|
+
align-items: center;
|
|
16
26
|
position: absolute;
|
|
17
|
-
width: 100px;
|
|
18
27
|
top: 50%;
|
|
19
28
|
left: 0;
|
|
20
29
|
color: #ffffff;
|
|
21
30
|
transform: translateY(-50%);
|
|
22
|
-
border-radius: var(--vxe-ui-base-border-radius);
|
|
23
31
|
height: var(--vxe-ui-gantt-view-chart-bar-height);
|
|
24
|
-
background-color: var(--vxe-ui-
|
|
32
|
+
background-color: var(--vxe-ui-gantt-view-task-bar-background-color);
|
|
25
33
|
pointer-events: all;
|
|
26
34
|
}
|
|
27
35
|
.vxe-gantt-view--chart-bar:hover::after {
|
|
@@ -32,20 +40,27 @@
|
|
|
32
40
|
width: 100%;
|
|
33
41
|
height: 100%;
|
|
34
42
|
background-color: rgba(0, 0, 0, 0.1);
|
|
35
|
-
border-radius: var(--vxe-ui-base-border-radius);
|
|
36
43
|
}
|
|
37
44
|
|
|
38
45
|
.vxe-gantt-view--chart-progress {
|
|
39
46
|
flex-shrink: 0;
|
|
40
|
-
width:
|
|
47
|
+
width: 0;
|
|
48
|
+
height: 100%;
|
|
41
49
|
text-align: left;
|
|
42
|
-
|
|
43
|
-
|
|
50
|
+
background-color: var(--vxe-ui-gantt-view-task-bar-completed-background-color);
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
text-overflow: ellipsis;
|
|
53
|
+
white-space: nowrap;
|
|
44
54
|
}
|
|
45
55
|
|
|
46
56
|
.vxe-gantt-view--chart-content {
|
|
47
|
-
|
|
48
|
-
|
|
57
|
+
position: absolute;
|
|
58
|
+
width: 100%;
|
|
59
|
+
overflow: hidden;
|
|
60
|
+
text-overflow: ellipsis;
|
|
61
|
+
white-space: nowrap;
|
|
62
|
+
font-size: 0.9em;
|
|
63
|
+
padding: 0 0.6em;
|
|
49
64
|
}
|
|
50
65
|
|
|
51
66
|
.vxe-gantt {
|
|
@@ -121,17 +136,19 @@
|
|
|
121
136
|
}
|
|
122
137
|
.vxe-gantt .vxe-gantt--view-split-bar {
|
|
123
138
|
flex-shrink: 0;
|
|
124
|
-
cursor: col-resize;
|
|
125
139
|
width: var(--vxe-ui-gantt-view-split-bar-width);
|
|
126
140
|
background-color: var(--vxe-ui-gantt-view-split-bar-background-color);
|
|
127
141
|
}
|
|
142
|
+
.vxe-gantt .vxe-gantt--view-split-bar.is--resize {
|
|
143
|
+
cursor: col-resize;
|
|
144
|
+
}
|
|
128
145
|
.vxe-gantt.show--left .vxe-gantt--table-wrapper {
|
|
129
146
|
display: block;
|
|
130
147
|
}
|
|
131
148
|
.vxe-gantt.show--left.show--right .vxe-gantt--table-wrapper {
|
|
132
149
|
flex-grow: unset;
|
|
133
150
|
flex-shrink: 0;
|
|
134
|
-
width:
|
|
151
|
+
width: var(--vxe-ui-gantt-view-table-default-width);
|
|
135
152
|
}
|
|
136
153
|
.vxe-gantt.show--right .vxe-gantt--view-wrapper {
|
|
137
154
|
display: block;
|
|
@@ -281,6 +298,12 @@
|
|
|
281
298
|
z-index: 15;
|
|
282
299
|
pointer-events: none;
|
|
283
300
|
}
|
|
301
|
+
.vxe-gantt--view-split-bar-btn-wrapper > div {
|
|
302
|
+
margin-top: 1em;
|
|
303
|
+
}
|
|
304
|
+
.vxe-gantt--view-split-bar-btn-wrapper > div:first-child {
|
|
305
|
+
margin-top: 0;
|
|
306
|
+
}
|
|
284
307
|
|
|
285
308
|
.vxe-gantt--view-split-bar-left-btn,
|
|
286
309
|
.vxe-gantt--view-split-bar-right-btn {
|
|
@@ -311,10 +334,6 @@
|
|
|
311
334
|
transform: scale(0.9);
|
|
312
335
|
}
|
|
313
336
|
|
|
314
|
-
.vxe-gantt--view-split-bar-right-btn {
|
|
315
|
-
margin-top: 1em;
|
|
316
|
-
}
|
|
317
|
-
|
|
318
337
|
.vxe-gantt--resizable-split-tip {
|
|
319
338
|
display: none;
|
|
320
339
|
position: absolute;
|
|
@@ -505,7 +524,7 @@
|
|
|
505
524
|
}
|
|
506
525
|
|
|
507
526
|
.vxe-gantt-view--column-info {
|
|
508
|
-
width: var(--vxe-ui-gantt-view-
|
|
527
|
+
width: var(--vxe-ui-gantt-view-default-cell-width);
|
|
509
528
|
}
|
|
510
529
|
|
|
511
530
|
.vxe-gantt-view {
|
|
@@ -535,7 +554,7 @@
|
|
|
535
554
|
}
|
|
536
555
|
.vxe-gantt-view--header-table col,
|
|
537
556
|
.vxe-gantt-view--body-table col {
|
|
538
|
-
width: var(--vxe-ui-gantt-view-
|
|
557
|
+
width: var(--vxe-ui-gantt-view-default-cell-width);
|
|
539
558
|
}
|
|
540
559
|
|
|
541
560
|
.vxe-gantt-view--header-wrapper,
|
package/es/gantt/style.min.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";.vxe-gantt-view--chart-wrapper{position:absolute;top:0;left:0;pointer-events:none}.vxe-gantt-view--chart-row{position:relative}.vxe-gantt-view--chart-bar{display:flex;flex-direction:row;position:absolute;width:100px;top:50%;left:0;color:#fff;transform:translateY(-50%);border-radius:var(--vxe-ui-base-border-radius);height:var(--vxe-ui-gantt-view-chart-bar-height);background-color:var(--vxe-ui-font-primary-lighten-color);pointer-events:all}.vxe-gantt-view--chart-bar:hover::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.1);border-radius:var(--vxe-ui-base-border-radius)}.vxe-gantt-view--chart-progress{flex-shrink:0;width:40px;text-align:left;border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-font-primary-color)}.vxe-gantt-view--chart-content{flex-grow:1;text-align:right}.vxe-gantt{position:relative;overflow:auto;display:flex;flex-direction:column}.vxe-gantt.is--loading:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:99;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:var(--vxe-ui-loading-background-color)}.vxe-gantt.is--loading>.vxe-gantt-view .vxe-loading{background-color:transparent}.vxe-gantt.is--maximize{position:fixed;top:0;left:0;width:100%;height:100%;padding:.5em 1em;background-color:var(--vxe-ui-layout-background-color)}.vxe-gantt.is--split-drag{cursor:col-resize}.vxe-gantt.is--split-drag .vxe-gantt--table-wrapper::after,.vxe-gantt.is--split-drag .vxe-gantt--view-wrapper::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:0 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-gantt .vxe-gantt--bottom-wrapper,.vxe-gantt .vxe-gantt--form-wrapper,.vxe-gantt .vxe-gantt--top-wrapper{position:relative}.vxe-gantt .vxe-gantt--gantt-container{position:relative;display:flex;flex-direction:row}.vxe-gantt .vxe-gantt--left-wrapper,.vxe-gantt .vxe-gantt--right-wrapper{flex-shrink:0;overflow:auto;outline:0}.vxe-gantt .vxe-gantt--table-wrapper,.vxe-gantt .vxe-gantt--view-wrapper{display:none;position:relative;flex-grow:1;overflow:hidden}.vxe-gantt .vxe-gantt--view-split-bar{flex-shrink:0;cursor:col-resize;width:var(--vxe-ui-gantt-view-split-bar-width);background-color:var(--vxe-ui-gantt-view-split-bar-background-color)}.vxe-gantt.show--left .vxe-gantt--table-wrapper{display:block}.vxe-gantt.show--left.show--right .vxe-gantt--table-wrapper{flex-grow:unset;flex-shrink:0;width:30%}.vxe-gantt.show--right .vxe-gantt--view-wrapper{display:block}.vxe-gantt--layout-body-wrapper{display:flex;flex-direction:row;overflow:auto;flex-grow:1}.vxe-gantt--layout-body-content-wrapper{flex-grow:1;overflow:hidden}.vxe-gantt--layout-aside-left-wrapper,.vxe-gantt--layout-footer-wrapper,.vxe-gantt--layout-header-wrapper{flex-shrink:0;overflow:auto}.vxe-gantt--border-line{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;border:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--header-wrapper,.vxe-gantt.border--full .vxe-gantt-view--header-wrapper,.vxe-gantt.border--outer .vxe-gantt-view--header-wrapper{background-color:var(--vxe-ui-table-header-background-color)}.vxe-gantt.border--full .vxe-gantt-view--body-column,.vxe-gantt.border--full .vxe-gantt-view--footer-column,.vxe-gantt.border--full .vxe-gantt-view--header-column{background-image:linear-gradient(var(--vxe-ui-table-border-color),var(--vxe-ui-table-border-color)),linear-gradient(var(--vxe-ui-table-border-color),var(--vxe-ui-table-border-color));background-repeat:no-repeat;background-size:var(--vxe-ui-table-border-width) 100%,100% var(--vxe-ui-table-border-width);background-position:right top,right bottom}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-top-corner::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-width:0;border-style:solid;border-color:var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-top-corner::before{border-bottom-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-bottom-corner{border-top:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer .vxe-gantt-view--scroll-x-wrapper::after{content:"";position:absolute;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.vxe-gantt.border--default.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after{top:0;border-bottom:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after{bottom:0;height:calc(100% + var(--vxe-ui-table-border-width));border-top:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before{border-left-width:var(--vxe-ui-table-border-width);border-right-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner::before{border-left-width:var(--vxe-ui-table-border-width);border-right-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-top-corner::before{width:calc(100% + 1px);left:-1px}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-wrapper::after{content:"";position:absolute;top:0;width:100%;height:100%;z-index:1;pointer-events:none}.vxe-gantt.border--default.sy-pos--left .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full.sy-pos--left .vxe-gantt-view--scroll-y-wrapper::after{left:0;border-right:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-wrapper::after{right:0;width:calc(100% + var(--vxe-ui-table-border-width));border-left:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt--view-split-bar{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-gantt--view-split-bar-handle{position:absolute;top:0;left:0;width:100%;height:100%;z-index:13}.vxe-gantt--view-split-bar-btn-wrapper{display:flex;flex-direction:column;align-items:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:15;pointer-events:none}.vxe-gantt--view-split-bar-left-btn,.vxe-gantt--view-split-bar-right-btn{display:flex;flex-direction:row;align-items:center;justify-content:center;font-size:.5em;height:var(--vxe-ui-gantt-view-split-bar-height);width:var(--vxe-ui-gantt-view-split-bar-width);color:var(--vxe-ui-layout-background-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-gantt-view-handle-background-color);border:1px solid var(--vxe-ui-input-border-color);pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .1s ease-in-out}.vxe-gantt--view-split-bar-left-btn:hover,.vxe-gantt--view-split-bar-right-btn:hover{background-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-gantt--view-split-bar-left-btn:active,.vxe-gantt--view-split-bar-right-btn:active{transform:scale(.9)}.vxe-gantt--view-split-bar-right-btn{margin-top:1em}.vxe-gantt--resizable-split-tip{display:none;position:absolute;top:0;left:0;width:1px;height:100%;z-index:18;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:col-resize}.vxe-gantt--resizable-split-tip:before{content:"";display:block;height:100%;background-color:var(--vxe-ui-table-resizable-drag-line-color)}.vxe-gantt--resizable-split-tip-number{position:absolute;top:0;left:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.vxe-gantt--resizable-split-number-left,.vxe-gantt--resizable-split-number-right{position:absolute;padding:.25em .25em;font-size:12px;border-radius:var(--vxe-ui-border-radius);white-space:nowrap;color:#fff;background-color:var(--vxe-ui-table-resizable-drag-line-color)}.vxe-gantt--resizable-split-number-left{right:0}.vxe-gantt--resizable-split-number-right{left:1px}.vxe-gantt.is--loading>.vxe-gantt-view--scroll-x-virtual{visibility:hidden}.vxe-gantt.is--loading>.vxe-gantt-view--layout-wrapper>.vxe-gantt-view--scroll-y-virtual{visibility:hidden}.vxe-gantt .vxe-gantt-view--scroll-x-virtual{height:0}.vxe-gantt .vxe-gantt-view--scroll-y-virtual{width:0}.vxe-gantt .vxe-gantt-view--scroll-x-virtual,.vxe-gantt .vxe-gantt-view--scroll-y-virtual{visibility:hidden;position:relative;flex-shrink:0;z-index:7}.vxe-gantt .vxe-gantt-view--scroll-x-handle,.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner,.vxe-gantt .vxe-gantt-view--scroll-x-wrapper,.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-handle,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner,.vxe-gantt .vxe-gantt-view--scroll-y-wrapper{position:absolute}.vxe-gantt .vxe-gantt-view--scroll-x-handle,.vxe-gantt .vxe-gantt-view--scroll-x-wrapper{width:100%;left:0;bottom:0}.vxe-gantt .vxe-gantt-view--scroll-x-handle{overflow-y:hidden;overflow-x:scroll;height:18px}.vxe-gantt .vxe-gantt-view--scroll-x-wrapper{height:100%}.vxe-gantt .vxe-gantt-view--scroll-y-handle,.vxe-gantt .vxe-gantt-view--scroll-y-wrapper{width:100%;height:100%;right:0;top:0}.vxe-gantt .vxe-gantt-view--scroll-y-handle{overflow-y:scroll;overflow-x:hidden;width:18px;height:100%}.vxe-gantt .vxe-gantt-view--scroll-x-space{height:1px}.vxe-gantt .vxe-gantt-view--scroll-y-space{width:1px}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner,.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{display:none;position:absolute}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner{bottom:0;width:0;height:100%}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner::before,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-width:var(--vxe-ui-table-border-width);border-style:solid;border-color:var(--vxe-ui-table-border-color)}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner{left:0}.vxe-gantt .vxe-gantt-view--scroll-x-right-corner{right:0}.vxe-gantt.sy-pos--right .vxe-gantt-view--scroll-x-right-corner{right:1px}.vxe-gantt.sy-pos--right .vxe-gantt-view--scroll-x-right-corner::before{border-right:0}.vxe-gantt.sx-pos--bottom .vxe-gantt-view--scroll-x-right-corner{bottom:1px}.vxe-gantt.sx-pos--bottom .vxe-gantt-view--scroll-x-right-corner::before{border-bottom:0}.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{background-color:var(--vxe-ui-table-header-background-color)}.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{top:0;right:0;width:100%;height:0}.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner{margin-top:-1px}.vxe-gantt-view--layout-wrapper{display:flex;flex-direction:row;background-color:var(--vxe-ui-layout-background-color)}.vxe-gantt-view--viewport-wrapper{position:relative;overflow:hidden;flex-grow:1}.vxe-gantt-view--render-vars{width:0;height:0;overflow:hidden}.vxe-gantt-view--column-info{width:var(--vxe-ui-gantt-view-column-width)}.vxe-gantt-view{flex-grow:1;overflow:hidden}.vxe-gantt-view .vxe-body--x-space{width:100%;height:1px;margin-bottom:-1px}.vxe-gantt-view .vxe-body--y-space{width:0;float:left}.vxe-gantt-view--header-table{height:100%}.vxe-gantt-view--body-table,.vxe-gantt-view--header-table{border:0;border-spacing:0;border-collapse:separate;table-layout:fixed}.vxe-gantt-view--body-table col,.vxe-gantt-view--header-table col{width:var(--vxe-ui-gantt-view-column-width)}.vxe-gantt-view--body-wrapper,.vxe-gantt-view--header-wrapper{overflow:hidden}.vxe-gantt-view--header-inner-wrapper{overflow-y:hidden;overflow-x:scroll}.vxe-gantt-view--body-inner-wrapper{overflow-y:auto;overflow-x:auto}.vxe-gantt-view--body-inner-wrapper,.vxe-gantt-view--header-inner-wrapper{position:relative;width:100%;height:100%;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.vxe-gantt-view--header-column{text-align:center;font-size:1em}.vxe-gantt-view--body-column{height:48px}.vxe-gantt-view--body-column,.vxe-gantt-view--footer-column,.vxe-gantt-view--header-column{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-gantt-view.mode--day .vxe-gantt-view--header-column{height:50%}.vxe-gantt{font-size:var(--vxe-ui-font-size-default)}.vxe-gantt.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-gantt.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-gantt.size--mini{font-size:var(--vxe-ui-font-size-mini)}
|
|
1
|
+
@charset "UTF-8";.vxe-gantt-view--chart-wrapper{position:absolute;top:0;left:0;pointer-events:none}.vxe-gantt-view--chart-row{position:relative}.vxe-gantt-view--chart-row.is--round>.vxe-gantt-view--chart-bar{border-radius:var(--vxe-ui-gantt-view-task-bar-border-radius)}.vxe-gantt-view--chart-row.is--round>.vxe-gantt-view--chart-bar:hover::after{border-radius:var(--vxe-ui-gantt-view-task-bar-border-radius)}.vxe-gantt-view--chart-row.is--round>.vxe-gantt-view--chart-bar>.vxe-gantt-view--chart-progress{border-radius:var(--vxe-ui-gantt-view-task-bar-border-radius) 0 0 var(--vxe-ui-gantt-view-task-bar-border-radius)}.vxe-gantt-view--chart-bar{display:flex;flex-direction:row;align-items:center;position:absolute;top:50%;left:0;color:#fff;transform:translateY(-50%);height:var(--vxe-ui-gantt-view-chart-bar-height);background-color:var(--vxe-ui-gantt-view-task-bar-background-color);pointer-events:all}.vxe-gantt-view--chart-bar:hover::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.1)}.vxe-gantt-view--chart-progress{flex-shrink:0;width:0;height:100%;text-align:left;background-color:var(--vxe-ui-gantt-view-task-bar-completed-background-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-gantt-view--chart-content{position:absolute;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9em;padding:0 .6em}.vxe-gantt{position:relative;overflow:auto;display:flex;flex-direction:column}.vxe-gantt.is--loading:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:99;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:var(--vxe-ui-loading-background-color)}.vxe-gantt.is--loading>.vxe-gantt-view .vxe-loading{background-color:transparent}.vxe-gantt.is--maximize{position:fixed;top:0;left:0;width:100%;height:100%;padding:.5em 1em;background-color:var(--vxe-ui-layout-background-color)}.vxe-gantt.is--split-drag{cursor:col-resize}.vxe-gantt.is--split-drag .vxe-gantt--table-wrapper::after,.vxe-gantt.is--split-drag .vxe-gantt--view-wrapper::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:0 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-gantt .vxe-gantt--bottom-wrapper,.vxe-gantt .vxe-gantt--form-wrapper,.vxe-gantt .vxe-gantt--top-wrapper{position:relative}.vxe-gantt .vxe-gantt--gantt-container{position:relative;display:flex;flex-direction:row}.vxe-gantt .vxe-gantt--left-wrapper,.vxe-gantt .vxe-gantt--right-wrapper{flex-shrink:0;overflow:auto;outline:0}.vxe-gantt .vxe-gantt--table-wrapper,.vxe-gantt .vxe-gantt--view-wrapper{display:none;position:relative;flex-grow:1;overflow:hidden}.vxe-gantt .vxe-gantt--view-split-bar{flex-shrink:0;width:var(--vxe-ui-gantt-view-split-bar-width);background-color:var(--vxe-ui-gantt-view-split-bar-background-color)}.vxe-gantt .vxe-gantt--view-split-bar.is--resize{cursor:col-resize}.vxe-gantt.show--left .vxe-gantt--table-wrapper{display:block}.vxe-gantt.show--left.show--right .vxe-gantt--table-wrapper{flex-grow:unset;flex-shrink:0;width:var(--vxe-ui-gantt-view-table-default-width)}.vxe-gantt.show--right .vxe-gantt--view-wrapper{display:block}.vxe-gantt--layout-body-wrapper{display:flex;flex-direction:row;overflow:auto;flex-grow:1}.vxe-gantt--layout-body-content-wrapper{flex-grow:1;overflow:hidden}.vxe-gantt--layout-aside-left-wrapper,.vxe-gantt--layout-footer-wrapper,.vxe-gantt--layout-header-wrapper{flex-shrink:0;overflow:auto}.vxe-gantt--border-line{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;border:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--header-wrapper,.vxe-gantt.border--full .vxe-gantt-view--header-wrapper,.vxe-gantt.border--outer .vxe-gantt-view--header-wrapper{background-color:var(--vxe-ui-table-header-background-color)}.vxe-gantt.border--full .vxe-gantt-view--body-column,.vxe-gantt.border--full .vxe-gantt-view--footer-column,.vxe-gantt.border--full .vxe-gantt-view--header-column{background-image:linear-gradient(var(--vxe-ui-table-border-color),var(--vxe-ui-table-border-color)),linear-gradient(var(--vxe-ui-table-border-color),var(--vxe-ui-table-border-color));background-repeat:no-repeat;background-size:var(--vxe-ui-table-border-width) 100%,100% var(--vxe-ui-table-border-width);background-position:right top,right bottom}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-top-corner::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-width:0;border-style:solid;border-color:var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-top-corner::before{border-bottom-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--inner .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt.border--outer .vxe-gantt-view--scroll-y-bottom-corner{border-top:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer .vxe-gantt-view--scroll-x-wrapper::after{content:"";position:absolute;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.vxe-gantt.border--default.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer.sx-pos--top .vxe-gantt-view--scroll-x-wrapper::after{top:0;border-bottom:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--full.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--inner.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after,.vxe-gantt.border--outer.sx-pos--bottom .vxe-gantt-view--scroll-x-wrapper::after{bottom:0;height:calc(100% + var(--vxe-ui-table-border-width));border-top:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-top-corner::before{border-left-width:var(--vxe-ui-table-border-width);border-right-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-bottom-corner::before{border-left-width:var(--vxe-ui-table-border-width);border-right-width:var(--vxe-ui-table-border-width)}.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-top-corner::before,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-bottom-corner::before,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-top-corner::before{width:calc(100% + 1px);left:-1px}.vxe-gantt.border--default .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full .vxe-gantt-view--scroll-y-wrapper::after{content:"";position:absolute;top:0;width:100%;height:100%;z-index:1;pointer-events:none}.vxe-gantt.border--default.sy-pos--left .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full.sy-pos--left .vxe-gantt-view--scroll-y-wrapper::after{left:0;border-right:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt.border--default.sy-pos--right .vxe-gantt-view--scroll-y-wrapper::after,.vxe-gantt.border--full.sy-pos--right .vxe-gantt-view--scroll-y-wrapper::after{right:0;width:calc(100% + var(--vxe-ui-table-border-width));border-left:var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color)}.vxe-gantt--view-split-bar{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-gantt--view-split-bar-handle{position:absolute;top:0;left:0;width:100%;height:100%;z-index:13}.vxe-gantt--view-split-bar-btn-wrapper{display:flex;flex-direction:column;align-items:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:15;pointer-events:none}.vxe-gantt--view-split-bar-btn-wrapper>div{margin-top:1em}.vxe-gantt--view-split-bar-btn-wrapper>div:first-child{margin-top:0}.vxe-gantt--view-split-bar-left-btn,.vxe-gantt--view-split-bar-right-btn{display:flex;flex-direction:row;align-items:center;justify-content:center;font-size:.5em;height:var(--vxe-ui-gantt-view-split-bar-height);width:var(--vxe-ui-gantt-view-split-bar-width);color:var(--vxe-ui-layout-background-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-gantt-view-handle-background-color);border:1px solid var(--vxe-ui-input-border-color);pointer-events:all;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .1s ease-in-out}.vxe-gantt--view-split-bar-left-btn:hover,.vxe-gantt--view-split-bar-right-btn:hover{background-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-gantt--view-split-bar-left-btn:active,.vxe-gantt--view-split-bar-right-btn:active{transform:scale(.9)}.vxe-gantt--resizable-split-tip{display:none;position:absolute;top:0;left:0;width:1px;height:100%;z-index:18;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:col-resize}.vxe-gantt--resizable-split-tip:before{content:"";display:block;height:100%;background-color:var(--vxe-ui-table-resizable-drag-line-color)}.vxe-gantt--resizable-split-tip-number{position:absolute;top:0;left:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.vxe-gantt--resizable-split-number-left,.vxe-gantt--resizable-split-number-right{position:absolute;padding:.25em .25em;font-size:12px;border-radius:var(--vxe-ui-border-radius);white-space:nowrap;color:#fff;background-color:var(--vxe-ui-table-resizable-drag-line-color)}.vxe-gantt--resizable-split-number-left{right:0}.vxe-gantt--resizable-split-number-right{left:1px}.vxe-gantt.is--loading>.vxe-gantt-view--scroll-x-virtual{visibility:hidden}.vxe-gantt.is--loading>.vxe-gantt-view--layout-wrapper>.vxe-gantt-view--scroll-y-virtual{visibility:hidden}.vxe-gantt .vxe-gantt-view--scroll-x-virtual{height:0}.vxe-gantt .vxe-gantt-view--scroll-y-virtual{width:0}.vxe-gantt .vxe-gantt-view--scroll-x-virtual,.vxe-gantt .vxe-gantt-view--scroll-y-virtual{visibility:hidden;position:relative;flex-shrink:0;z-index:7}.vxe-gantt .vxe-gantt-view--scroll-x-handle,.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner,.vxe-gantt .vxe-gantt-view--scroll-x-wrapper,.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-handle,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner,.vxe-gantt .vxe-gantt-view--scroll-y-wrapper{position:absolute}.vxe-gantt .vxe-gantt-view--scroll-x-handle,.vxe-gantt .vxe-gantt-view--scroll-x-wrapper{width:100%;left:0;bottom:0}.vxe-gantt .vxe-gantt-view--scroll-x-handle{overflow-y:hidden;overflow-x:scroll;height:18px}.vxe-gantt .vxe-gantt-view--scroll-x-wrapper{height:100%}.vxe-gantt .vxe-gantt-view--scroll-y-handle,.vxe-gantt .vxe-gantt-view--scroll-y-wrapper{width:100%;height:100%;right:0;top:0}.vxe-gantt .vxe-gantt-view--scroll-y-handle{overflow-y:scroll;overflow-x:hidden;width:18px;height:100%}.vxe-gantt .vxe-gantt-view--scroll-x-space{height:1px}.vxe-gantt .vxe-gantt-view--scroll-y-space{width:1px}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner,.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{display:none;position:absolute}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner{bottom:0;width:0;height:100%}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner::before,.vxe-gantt .vxe-gantt-view--scroll-x-right-corner::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;border-width:var(--vxe-ui-table-border-width);border-style:solid;border-color:var(--vxe-ui-table-border-color)}.vxe-gantt .vxe-gantt-view--scroll-x-left-corner{left:0}.vxe-gantt .vxe-gantt-view--scroll-x-right-corner{right:0}.vxe-gantt.sy-pos--right .vxe-gantt-view--scroll-x-right-corner{right:1px}.vxe-gantt.sy-pos--right .vxe-gantt-view--scroll-x-right-corner::before{border-right:0}.vxe-gantt.sx-pos--bottom .vxe-gantt-view--scroll-x-right-corner{bottom:1px}.vxe-gantt.sx-pos--bottom .vxe-gantt-view--scroll-x-right-corner::before{border-bottom:0}.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{background-color:var(--vxe-ui-table-header-background-color)}.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner,.vxe-gantt .vxe-gantt-view--scroll-y-top-corner{top:0;right:0;width:100%;height:0}.vxe-gantt .vxe-gantt-view--scroll-y-bottom-corner{margin-top:-1px}.vxe-gantt-view--layout-wrapper{display:flex;flex-direction:row;background-color:var(--vxe-ui-layout-background-color)}.vxe-gantt-view--viewport-wrapper{position:relative;overflow:hidden;flex-grow:1}.vxe-gantt-view--render-vars{width:0;height:0;overflow:hidden}.vxe-gantt-view--column-info{width:var(--vxe-ui-gantt-view-default-cell-width)}.vxe-gantt-view{flex-grow:1;overflow:hidden}.vxe-gantt-view .vxe-body--x-space{width:100%;height:1px;margin-bottom:-1px}.vxe-gantt-view .vxe-body--y-space{width:0;float:left}.vxe-gantt-view--header-table{height:100%}.vxe-gantt-view--body-table,.vxe-gantt-view--header-table{border:0;border-spacing:0;border-collapse:separate;table-layout:fixed}.vxe-gantt-view--body-table col,.vxe-gantt-view--header-table col{width:var(--vxe-ui-gantt-view-default-cell-width)}.vxe-gantt-view--body-wrapper,.vxe-gantt-view--header-wrapper{overflow:hidden}.vxe-gantt-view--header-inner-wrapper{overflow-y:hidden;overflow-x:scroll}.vxe-gantt-view--body-inner-wrapper{overflow-y:auto;overflow-x:auto}.vxe-gantt-view--body-inner-wrapper,.vxe-gantt-view--header-inner-wrapper{position:relative;width:100%;height:100%;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.vxe-gantt-view--header-column{text-align:center;font-size:1em}.vxe-gantt-view--body-column{height:48px}.vxe-gantt-view--body-column,.vxe-gantt-view--footer-column,.vxe-gantt-view--header-column{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-gantt-view.mode--day .vxe-gantt-view--header-column{height:50%}.vxe-gantt{font-size:var(--vxe-ui-font-size-default)}.vxe-gantt.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-gantt.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-gantt.size--mini{font-size:var(--vxe-ui-font-size-mini)}
|