vxe-gantt 0.0.3 → 3.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 +14 -46
- package/es/components.js +3 -2
- package/es/gantt/src/gantt-body.js +83 -49
- package/es/gantt/src/gantt-chart.js +91 -43
- package/es/gantt/src/gantt-header.js +63 -36
- package/es/gantt/src/gantt-view.js +638 -586
- package/es/gantt/src/gantt.js +1346 -1178
- package/es/gantt/src/util.js +1 -4
- package/es/gantt/style.css +62 -28
- package/es/gantt/style.min.css +1 -1
- package/es/index.esm.js +5 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +9 -3
- package/es/ui/src/comp.js +1 -2
- package/es/ui/src/log.js +3 -2
- package/es/ui/src/utils.js +17 -17
- package/es/vxe-gantt/style.css +62 -28
- 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/components.js +20 -19
- package/lib/components.min.js +1 -1
- package/lib/gantt/index.js +3 -3
- package/lib/gantt/index.min.js +1 -1
- package/lib/gantt/src/gantt-body.js +109 -87
- package/lib/gantt/src/gantt-body.min.js +1 -1
- package/lib/gantt/src/gantt-chart.js +109 -69
- package/lib/gantt/src/gantt-chart.min.js +1 -1
- package/lib/gantt/src/gantt-header.js +75 -56
- package/lib/gantt/src/gantt-header.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +684 -686
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +1630 -1559
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/gantt/src/util.js +1 -4
- package/lib/gantt/src/util.min.js +1 -1
- package/lib/gantt/style/style.css +62 -28
- package/lib/gantt/style/style.min.css +1 -1
- package/lib/index.common.js +12 -7
- package/lib/index.umd.js +10704 -5870
- 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 +12 -16
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/comp.js +3 -2
- package/lib/ui/src/comp.min.js +1 -1
- package/lib/ui/src/dom.js +33 -33
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +4 -3
- package/lib/ui/src/log.min.js +1 -1
- package/lib/ui/src/utils.js +21 -24
- package/lib/ui/src/utils.min.js +1 -1
- package/lib/vxe-gantt/index.js +4 -2
- package/lib/vxe-gantt/index.min.js +1 -1
- package/lib/vxe-gantt/style/style.css +62 -28
- package/lib/vxe-gantt/style/style.min.css +1 -1
- package/lib/vxe-ui/index.js +4 -2
- package/lib/vxe-ui/index.min.js +1 -1
- package/package.json +13 -13
- package/packages/components.ts +8 -5
- package/packages/gantt/index.ts +2 -2
- package/packages/gantt/src/gantt-body.ts +89 -53
- package/packages/gantt/src/gantt-chart.ts +100 -49
- package/packages/gantt/src/gantt-header.ts +69 -39
- package/packages/gantt/src/gantt-view.ts +692 -624
- package/packages/gantt/src/gantt.ts +1459 -1240
- package/packages/gantt/src/util.ts +1 -4
- package/packages/index.ts +6 -2
- package/packages/ui/index.ts +9 -3
- package/packages/ui/src/comp.ts +2 -2
- package/packages/ui/src/log.ts +3 -1
- package/packages/ui/src/utils.ts +22 -21
- package/styles/components/gantt-module/gantt-chart.scss +28 -9
- package/styles/components/gantt.scss +36 -21
- package/styles/theme/base.scss +5 -1
- package/types/all.d.ts +3 -3
- package/types/index.d.ts +2 -2
- package/README.en.md +0 -72
- package/README.ja-JP.md +0 -72
- package/README.zh-TW.md +0 -73
- package/es/gantt/src/emits.js +0 -4
- package/es/gantt/src/grid-emits.js +0 -16
- package/es/gantt/src/grid-props.js +0 -7
- package/es/gantt/src/props.js +0 -2
- package/es/gantt/src/table-emits.js +0 -97
- package/es/gantt/src/table-props.js +0 -298
- package/lib/gantt/src/emits.js +0 -8
- package/lib/gantt/src/emits.min.js +0 -1
- package/lib/gantt/src/grid-emits.js +0 -8
- package/lib/gantt/src/grid-emits.min.js +0 -1
- package/lib/gantt/src/grid-props.js +0 -24
- package/lib/gantt/src/grid-props.min.js +0 -1
- package/lib/gantt/src/props.js +0 -13
- package/lib/gantt/src/props.min.js +0 -1
- package/lib/gantt/src/table-emits.js +0 -7
- package/lib/gantt/src/table-emits.min.js +0 -1
- package/lib/gantt/src/table-props.js +0 -306
- package/lib/gantt/src/table-props.min.js +0 -1
- package/packages/gantt/src/emits.ts +0 -7
- package/packages/gantt/src/grid-emits.ts +0 -19
- package/packages/gantt/src/grid-props.ts +0 -23
- package/packages/gantt/src/props.ts +0 -13
- package/packages/gantt/src/table-emits.ts +0 -109
- package/packages/gantt/src/table-props.ts +0 -304
|
@@ -2,10 +2,7 @@ import type { VxeTableDefines, VxeTablePropTypes } from 'vxe-table'
|
|
|
2
2
|
|
|
3
3
|
export function getRefElem (refEl: any) {
|
|
4
4
|
if (refEl) {
|
|
5
|
-
|
|
6
|
-
if (rest) {
|
|
7
|
-
return (rest.$el || rest) as HTMLElement
|
|
8
|
-
}
|
|
5
|
+
return (refEl.$el || refEl) as HTMLElement
|
|
9
6
|
}
|
|
10
7
|
return null
|
|
11
8
|
}
|
package/packages/index.ts
CHANGED
package/packages/ui/index.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { VxeUI
|
|
1
|
+
import { VxeUI } from '@vxe-ui/core'
|
|
2
|
+
|
|
3
|
+
const { setConfig, setIcon } = VxeUI
|
|
2
4
|
|
|
3
5
|
VxeUI.ganttVersion = process.env.VUE_APP_VXE_VERSION as string
|
|
4
6
|
|
|
@@ -39,6 +41,12 @@ setConfig({
|
|
|
39
41
|
// afterDelete: null,
|
|
40
42
|
// beforeSave: null,
|
|
41
43
|
// afterSave: null
|
|
44
|
+
},
|
|
45
|
+
taskSplitConfig: {
|
|
46
|
+
enabled: true,
|
|
47
|
+
resize: true,
|
|
48
|
+
showCollapseTableButton: true,
|
|
49
|
+
showCollapseTaskButton: true
|
|
42
50
|
}
|
|
43
51
|
}
|
|
44
52
|
})
|
|
@@ -51,8 +59,6 @@ setIcon({
|
|
|
51
59
|
GANTT_VIEW_LEFT_CLOSE: iconPrefix + 'arrow-right',
|
|
52
60
|
GANTT_VIEW_RIGHT_OPEN: iconPrefix + 'arrow-right',
|
|
53
61
|
GANTT_VIEW_RIGHT_CLOSE: iconPrefix + 'arrow-left'
|
|
54
|
-
|
|
55
62
|
})
|
|
56
63
|
|
|
57
|
-
export * from '@vxe-ui/core'
|
|
58
64
|
export default VxeUI
|
package/packages/ui/src/comp.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import
|
|
1
|
+
import Vue from 'vue'
|
|
2
2
|
|
|
3
|
-
export const defineVxeComponent =
|
|
3
|
+
export const defineVxeComponent = ((options: any) => options) as typeof Vue.extend
|
package/packages/ui/src/log.ts
CHANGED
package/packages/ui/src/utils.ts
CHANGED
|
@@ -2,22 +2,12 @@ import XEUtils from 'xe-utils'
|
|
|
2
2
|
import { VxeUI } from '@vxe-ui/core'
|
|
3
3
|
import DomZIndex from 'dom-zindex'
|
|
4
4
|
|
|
5
|
+
const { getConfig } = VxeUI
|
|
6
|
+
|
|
5
7
|
export function isEnableConf (conf: any): boolean {
|
|
6
8
|
return conf && conf.enabled !== false
|
|
7
9
|
}
|
|
8
10
|
|
|
9
|
-
export function isEmptyValue (cellValue: any) {
|
|
10
|
-
return cellValue === null || cellValue === undefined || cellValue === ''
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function parseFile (file: File) {
|
|
14
|
-
const name = file.name
|
|
15
|
-
const tIndex = XEUtils.lastIndexOf(name, '.')
|
|
16
|
-
const type = name.substring(tIndex + 1, name.length).toLowerCase()
|
|
17
|
-
const filename = name.substring(0, tIndex)
|
|
18
|
-
return { filename, type }
|
|
19
|
-
}
|
|
20
|
-
|
|
21
11
|
export function nextZIndex () {
|
|
22
12
|
return DomZIndex.getNext()
|
|
23
13
|
}
|
|
@@ -26,25 +16,36 @@ export function getLastZIndex () {
|
|
|
26
16
|
return DomZIndex.getCurrent()
|
|
27
17
|
}
|
|
28
18
|
|
|
29
|
-
export function
|
|
30
|
-
return
|
|
19
|
+
export function nextSubZIndex () {
|
|
20
|
+
return DomZIndex.getSubNext()
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function getSubLastZIndex () {
|
|
24
|
+
return DomZIndex.getSubCurrent()
|
|
31
25
|
}
|
|
32
26
|
|
|
33
|
-
export function
|
|
27
|
+
export function getGlobalDefaultConfig (value: any, globalValue: any) {
|
|
28
|
+
if (XEUtils.eqNull(value)) {
|
|
29
|
+
return globalValue
|
|
30
|
+
}
|
|
31
|
+
return value
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export function getFuncText (content: string | number | boolean | null | undefined, args?: any) {
|
|
34
35
|
if (content) {
|
|
35
|
-
const translate =
|
|
36
|
+
const translate = getConfig().translate
|
|
36
37
|
return XEUtils.toValueString(translate ? translate('' + content, args) : content)
|
|
37
38
|
}
|
|
38
39
|
return ''
|
|
39
40
|
}
|
|
40
41
|
|
|
41
|
-
export function formatText (value: any, placeholder?: any) {
|
|
42
|
-
return '' + (isEmptyValue(value) ? (placeholder ? VxeUI.getConfig().emptyCell : '') : value)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
42
|
/**
|
|
46
43
|
* 判断值为:'' | null | undefined 时都属于空值
|
|
47
44
|
*/
|
|
48
45
|
export function eqEmptyValue (cellValue: any) {
|
|
49
|
-
return cellValue ===
|
|
46
|
+
return cellValue === null || cellValue === undefined || cellValue === ''
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function getStringValue (cellValue: any) {
|
|
50
|
+
return eqEmptyValue(cellValue) ? '' : cellValue
|
|
50
51
|
}
|
|
@@ -6,19 +6,31 @@
|
|
|
6
6
|
}
|
|
7
7
|
.vxe-gantt-view--chart-row {
|
|
8
8
|
position: relative;
|
|
9
|
+
&.is--round {
|
|
10
|
+
& > .vxe-gantt-view--chart-bar {
|
|
11
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
12
|
+
&:hover {
|
|
13
|
+
&::after {
|
|
14
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
& > .vxe-gantt-view--chart-progress {
|
|
18
|
+
border-radius: var(--vxe-ui-gantt-view-task-bar-border-radius) 0 0 var(--vxe-ui-gantt-view-task-bar-border-radius);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
9
22
|
}
|
|
10
23
|
.vxe-gantt-view--chart-bar {
|
|
11
24
|
display: flex;
|
|
12
25
|
flex-direction: row;
|
|
26
|
+
align-items: center;
|
|
13
27
|
position: absolute;
|
|
14
|
-
width: 100px;
|
|
15
28
|
top: 50%;
|
|
16
29
|
left: 0;
|
|
17
30
|
color: #ffffff;
|
|
18
31
|
transform: translateY(-50%);
|
|
19
|
-
border-radius: var(--vxe-ui-base-border-radius);
|
|
20
32
|
height: var(--vxe-ui-gantt-view-chart-bar-height);
|
|
21
|
-
background-color: var(--vxe-ui-
|
|
33
|
+
background-color: var(--vxe-ui-gantt-view-task-bar-background-color);
|
|
22
34
|
pointer-events: all;
|
|
23
35
|
&:hover {
|
|
24
36
|
&::after {
|
|
@@ -29,18 +41,25 @@
|
|
|
29
41
|
width: 100%;
|
|
30
42
|
height: 100%;
|
|
31
43
|
background-color: rgba(0, 0, 0, 0.1);
|
|
32
|
-
border-radius: var(--vxe-ui-base-border-radius);
|
|
33
44
|
}
|
|
34
45
|
}
|
|
35
46
|
}
|
|
36
47
|
.vxe-gantt-view--chart-progress {
|
|
37
48
|
flex-shrink: 0;
|
|
38
|
-
width:
|
|
49
|
+
width: 0;
|
|
50
|
+
height: 100%;
|
|
39
51
|
text-align: left;
|
|
40
|
-
|
|
41
|
-
|
|
52
|
+
background-color: var(--vxe-ui-gantt-view-task-bar-completed-background-color);
|
|
53
|
+
overflow: hidden;
|
|
54
|
+
text-overflow: ellipsis;
|
|
55
|
+
white-space: nowrap;
|
|
42
56
|
}
|
|
43
57
|
.vxe-gantt-view--chart-content {
|
|
44
|
-
|
|
45
|
-
|
|
58
|
+
position: absolute;
|
|
59
|
+
width: 100%;
|
|
60
|
+
overflow: hidden;
|
|
61
|
+
text-overflow: ellipsis;
|
|
62
|
+
white-space: nowrap;
|
|
63
|
+
font-size: 0.9em;
|
|
64
|
+
padding: 0 0.6em;
|
|
46
65
|
}
|
|
@@ -75,9 +75,11 @@
|
|
|
75
75
|
}
|
|
76
76
|
.vxe-gantt--view-split-bar {
|
|
77
77
|
flex-shrink: 0;
|
|
78
|
-
cursor: col-resize;
|
|
79
78
|
width: var(--vxe-ui-gantt-view-split-bar-width);
|
|
80
79
|
background-color: var(--vxe-ui-gantt-view-split-bar-background-color);
|
|
80
|
+
&.is--resize {
|
|
81
|
+
cursor: col-resize;
|
|
82
|
+
}
|
|
81
83
|
}
|
|
82
84
|
&.show--left {
|
|
83
85
|
.vxe-gantt--table-wrapper {
|
|
@@ -87,7 +89,7 @@
|
|
|
87
89
|
.vxe-gantt--table-wrapper {
|
|
88
90
|
flex-grow: unset;
|
|
89
91
|
flex-shrink: 0;
|
|
90
|
-
width:
|
|
92
|
+
width: var(--vxe-ui-gantt-view-table-default-width);
|
|
91
93
|
}
|
|
92
94
|
}
|
|
93
95
|
}
|
|
@@ -128,13 +130,6 @@
|
|
|
128
130
|
border: var(--vxe-ui-table-border-width) solid var(--vxe-ui-table-border-color);
|
|
129
131
|
}
|
|
130
132
|
.vxe-gantt {
|
|
131
|
-
&.border--default,
|
|
132
|
-
&.border--full,
|
|
133
|
-
&.border--outer {
|
|
134
|
-
.vxe-gantt-view--header-wrapper {
|
|
135
|
-
background-color: var(--vxe-ui-table-header-background-color);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
133
|
&.border--full {
|
|
139
134
|
.vxe-gantt-view--header-column,
|
|
140
135
|
.vxe-gantt-view--body-column,
|
|
@@ -201,7 +196,6 @@
|
|
|
201
196
|
}
|
|
202
197
|
}
|
|
203
198
|
}
|
|
204
|
-
|
|
205
199
|
&.border--default,
|
|
206
200
|
&.border--full {
|
|
207
201
|
.vxe-gantt-view--scroll-y-top-corner {
|
|
@@ -254,6 +248,27 @@
|
|
|
254
248
|
}
|
|
255
249
|
}
|
|
256
250
|
}
|
|
251
|
+
&.border--default,
|
|
252
|
+
&.border--inner {
|
|
253
|
+
.vxe-gantt-view--header-column,
|
|
254
|
+
.vxe-gantt-view--body-column,
|
|
255
|
+
.vxe-gantt-view--footer-column {
|
|
256
|
+
background-image: linear-gradient(var(--vxe-ui-table-border-color), var(--vxe-ui-table-border-color));
|
|
257
|
+
background-repeat: no-repeat;
|
|
258
|
+
background-size: 100% var(--vxe-ui-table-border-width);
|
|
259
|
+
background-position: right bottom;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
&.border--inner {
|
|
263
|
+
.vxe-gantt--border-line {
|
|
264
|
+
border-width: 0 0 1px 0;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
&.border--none {
|
|
268
|
+
.vxe-gantt--border-line {
|
|
269
|
+
display: none;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
257
272
|
}
|
|
258
273
|
|
|
259
274
|
/*分割条*/
|
|
@@ -279,6 +294,12 @@
|
|
|
279
294
|
transform: translate(-50%, -50%);
|
|
280
295
|
z-index: 15;
|
|
281
296
|
pointer-events: none;
|
|
297
|
+
& > div {
|
|
298
|
+
margin-top: 1em;
|
|
299
|
+
&:first-child {
|
|
300
|
+
margin-top: 0;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
282
303
|
}
|
|
283
304
|
.vxe-gantt--view-split-bar-left-btn,
|
|
284
305
|
.vxe-gantt--view-split-bar-right-btn {
|
|
@@ -304,9 +325,6 @@
|
|
|
304
325
|
transform: scale(0.9);
|
|
305
326
|
}
|
|
306
327
|
}
|
|
307
|
-
.vxe-gantt--view-split-bar-right-btn {
|
|
308
|
-
margin-top: 1em;
|
|
309
|
-
}
|
|
310
328
|
.vxe-gantt--resizable-split-tip {
|
|
311
329
|
display: none;
|
|
312
330
|
position: absolute;
|
|
@@ -496,7 +514,7 @@
|
|
|
496
514
|
overflow: hidden;
|
|
497
515
|
}
|
|
498
516
|
.vxe-gantt-view--column-info {
|
|
499
|
-
width: var(--vxe-ui-gantt-view-
|
|
517
|
+
width: var(--vxe-ui-gantt-view-default-cell-width);
|
|
500
518
|
}
|
|
501
519
|
|
|
502
520
|
// 任务视图
|
|
@@ -513,9 +531,6 @@
|
|
|
513
531
|
float: left;
|
|
514
532
|
}
|
|
515
533
|
}
|
|
516
|
-
.vxe-gantt-view--header-table {
|
|
517
|
-
height: 100%;
|
|
518
|
-
}
|
|
519
534
|
.vxe-gantt-view--header-table,
|
|
520
535
|
.vxe-gantt-view--body-table {
|
|
521
536
|
border: 0;
|
|
@@ -523,9 +538,12 @@
|
|
|
523
538
|
border-collapse: separate;
|
|
524
539
|
table-layout: fixed;
|
|
525
540
|
col {
|
|
526
|
-
width: var(--vxe-ui-gantt-view-
|
|
541
|
+
width: var(--vxe-ui-gantt-view-default-cell-width);
|
|
527
542
|
}
|
|
528
543
|
}
|
|
544
|
+
.vxe-gantt-view--header-wrapper {
|
|
545
|
+
background-color: var(--vxe-ui-table-header-background-color);
|
|
546
|
+
}
|
|
529
547
|
.vxe-gantt-view--header-wrapper,
|
|
530
548
|
.vxe-gantt-view--body-wrapper {
|
|
531
549
|
overflow: hidden;
|
|
@@ -551,9 +569,6 @@
|
|
|
551
569
|
text-align: center;
|
|
552
570
|
font-size: 1em;
|
|
553
571
|
}
|
|
554
|
-
.vxe-gantt-view--body-column {
|
|
555
|
-
height: 48px;
|
|
556
|
-
}
|
|
557
572
|
.vxe-gantt-view--header-column,
|
|
558
573
|
.vxe-gantt-view--body-column,
|
|
559
574
|
.vxe-gantt-view--footer-column {
|
package/styles/theme/base.scss
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
:root {
|
|
2
2
|
/*gantt*/
|
|
3
|
-
--vxe-ui-gantt-view-
|
|
3
|
+
--vxe-ui-gantt-view-default-cell-width: 40px;
|
|
4
4
|
--vxe-ui-gantt-view-chart-bar-height: 1.6em;
|
|
5
5
|
--vxe-ui-gantt-view-split-bar-width: 10px;
|
|
6
6
|
--vxe-ui-gantt-view-split-bar-height: 6.8em;
|
|
7
|
+
--vxe-ui-gantt-view-table-default-width: 30%;
|
|
8
|
+
--vxe-ui-gantt-view-task-bar-border-radius: calc(var(--vxe-ui-gantt-view-split-bar-height) / 2);
|
|
9
|
+
--vxe-ui-gantt-view-task-bar-background-color: var(--vxe-ui-font-primary-lighten-color);
|
|
10
|
+
--vxe-ui-gantt-view-task-bar-completed-background-color: var(--vxe-ui-font-primary-color);
|
|
7
11
|
}
|
package/types/all.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { VueConstructor } from 'vue'
|
|
2
2
|
import { VxeUIExport, VxeGlobalConfig } from 'vxe-pc-ui'
|
|
3
3
|
|
|
4
4
|
declare global {
|
|
5
5
|
interface Window {
|
|
6
|
-
|
|
6
|
+
VxeUIDesign: VxeUIExport
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
export function install (app:
|
|
10
|
+
export function install (app: VueConstructor, options?: VxeGlobalConfig): void
|
|
11
11
|
|
|
12
12
|
// Vxe core
|
|
13
13
|
export * from 'vxe-pc-ui/types/ui'
|
package/types/index.d.ts
CHANGED
package/README.en.md
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
# vxe-gantt
|
|
2
|
-
|
|
3
|
-
[简体中文](README.md) | [繁體中文](README.zh-TW.md) | English | [日本語](README.ja-JP.md)
|
|
4
|
-
|
|
5
|
-
[](https://gitee.com/x-extends/vxe-gantt/stargazers)
|
|
6
|
-
[](https://www.npmjs.com/package/vxe-gantt)
|
|
7
|
-
[](https://github.com/x-extends/vxe-gantt/actions/workflows/webpack.yml)
|
|
8
|
-
[](https://npm-stat.com/charts.html?package=vxe-gantt)
|
|
9
|
-
[](https://github.com/x-extends/vxe-gantt/issues)
|
|
10
|
-
[](https://github.com/x-extends/vxe-gantt/issues?q=is%3Aissue+is%3Aclosed)
|
|
11
|
-
[](https://github.com/x-extends/vxe-gantt/pulls)
|
|
12
|
-
[](https://github.com/x-extends/vxe-gantt/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
|
-
[](LICENSE)
|
|
14
|
-
|
|
15
|
-
A PC-based Gantt chart component based on [Vxe UI](https://github.com/x-extends/ vxe-pc-ui).
|
|
16
|
-
|
|
17
|
-
## Browser Support
|
|
18
|
-
|
|
19
|
-
 |  |  |  | 
|
|
20
|
-
--- | --- | --- | --- | --- |
|
|
21
|
-
80+ ✔ | 80+ ✔ | 90+ ✔ | 75+ ✔ | 10+ ✔ |
|
|
22
|
-
|
|
23
|
-
## Use
|
|
24
|
-
|
|
25
|
-
版本:[vue](https://www.npmjs.com/package/vue) 3.x
|
|
26
|
-
|
|
27
|
-
```shell
|
|
28
|
-
npm install vxe-gantt
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Get on [unpkg](https://unpkg.com/vxe-gantt/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-gantt/)
|
|
32
|
-
|
|
33
|
-
### NPM
|
|
34
|
-
|
|
35
|
-
```javascript
|
|
36
|
-
// ...
|
|
37
|
-
import VxeUIAll from 'vxe-pc-ui'
|
|
38
|
-
import 'vxe-pc-ui/lib/style.css'
|
|
39
|
-
|
|
40
|
-
import VxeUITable from 'vxe-table'
|
|
41
|
-
import 'vxe-table/lib/style.css'
|
|
42
|
-
|
|
43
|
-
import VxeUIGantt from 'vxe-gantt'
|
|
44
|
-
import 'vxe-gantt/lib/style.css'
|
|
45
|
-
// ...
|
|
46
|
-
|
|
47
|
-
createApp(App).use(VxeUIAll).use(VxeUITable).use(VxeUIGantt).mount('#app')
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## Run the project
|
|
51
|
-
|
|
52
|
-
Install dependencies
|
|
53
|
-
|
|
54
|
-
```shell
|
|
55
|
-
npm install
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
Start local debugging
|
|
59
|
-
|
|
60
|
-
```shell
|
|
61
|
-
npm run serve
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
Compile packaging, generated compiled directory: es,lib
|
|
65
|
-
|
|
66
|
-
```shell
|
|
67
|
-
npm run lib
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## License
|
|
71
|
-
|
|
72
|
-
[MIT](LICENSE) © 2025-present, Xu Liangzhan
|
package/README.ja-JP.md
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
# vxe-gantt
|
|
2
|
-
|
|
3
|
-
[简体中文](README.md) | [繁體中文](README.zh-TW.md) | [English](README.en.md) | 日本語
|
|
4
|
-
|
|
5
|
-
[](https://gitee.com/x-extends/vxe-gantt/stargazers)
|
|
6
|
-
[](https://www.npmjs.com/package/vxe-gantt)
|
|
7
|
-
[](https://github.com/x-extends/vxe-gantt/actions/workflows/webpack.yml)
|
|
8
|
-
[](https://npm-stat.com/charts.html?package=vxe-gantt)
|
|
9
|
-
[](https://github.com/x-extends/vxe-gantt/issues)
|
|
10
|
-
[](https://github.com/x-extends/vxe-gantt/issues?q=is%3Aissue+is%3Aclosed)
|
|
11
|
-
[](https://github.com/x-extends/vxe-gantt/pulls)
|
|
12
|
-
[](https://github.com/x-extends/vxe-gantt/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
|
-
[](LICENSE)
|
|
14
|
-
|
|
15
|
-
一个基于 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的基于 PC 端甘特图组件
|
|
16
|
-
|
|
17
|
-
## ブラウザサポート
|
|
18
|
-
|
|
19
|
-
 |  |  |  | 
|
|
20
|
-
--- | --- | --- | --- | --- |
|
|
21
|
-
80+ ✔ | 80+ ✔ | 90+ ✔ | 75+ ✔ | 10+ ✔ |
|
|
22
|
-
|
|
23
|
-
### テーブルとUIの使用
|
|
24
|
-
|
|
25
|
-
版本:[vue](https://www.npmjs.com/package/vue) 3.x
|
|
26
|
-
|
|
27
|
-
```shell
|
|
28
|
-
npm install vxe-gantt
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Get on [unpkg](https://unpkg.com/vxe-gantt/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-gantt/)
|
|
32
|
-
|
|
33
|
-
### NPM
|
|
34
|
-
|
|
35
|
-
```javascript
|
|
36
|
-
// ...
|
|
37
|
-
import VxeUIAll from 'vxe-pc-ui'
|
|
38
|
-
import 'vxe-pc-ui/lib/style.css'
|
|
39
|
-
|
|
40
|
-
import VxeUITable from 'vxe-table'
|
|
41
|
-
import 'vxe-table/lib/style.css'
|
|
42
|
-
|
|
43
|
-
import VxeUIGantt from 'vxe-gantt'
|
|
44
|
-
import 'vxe-gantt/lib/style.css'
|
|
45
|
-
// ...
|
|
46
|
-
|
|
47
|
-
createApp(App).use(VxeUIAll).use(VxeUITable).use(VxeUIGantt).mount('#app')
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## プロジェクトの実行
|
|
51
|
-
|
|
52
|
-
依存関係をインストールする
|
|
53
|
-
|
|
54
|
-
```shell
|
|
55
|
-
npm install
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
ローカルデバッグを開始する
|
|
59
|
-
|
|
60
|
-
```shell
|
|
61
|
-
npm run serve
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
コンパイルパッケージング、生成されたコンパイルディレクトリ: es,lib
|
|
65
|
-
|
|
66
|
-
```shell
|
|
67
|
-
npm run lib
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## ライセンス
|
|
71
|
-
|
|
72
|
-
[MIT](LICENSE) © 2025-present, Xu Liangzhan
|
package/README.zh-TW.md
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# vxe-gantt
|
|
2
|
-
|
|
3
|
-
[简体中文](README.md) | 繁體中文 | [English](README.en.md) | [日本語](README.ja-JP.md)
|
|
4
|
-
|
|
5
|
-
[](https://gitee.com/x-extends/vxe-gantt/stargazers)
|
|
6
|
-
[](https://www.npmjs.com/package/vxe-gantt)
|
|
7
|
-
[](https://github.com/x-extends/vxe-gantt/actions/workflows/webpack.yml)
|
|
8
|
-
[](https://npm-stat.com/charts.html?package=vxe-gantt)
|
|
9
|
-
[](https://github.com/x-extends/vxe-gantt/issues)
|
|
10
|
-
[](https://github.com/x-extends/vxe-gantt/issues?q=is%3Aissue+is%3Aclosed)
|
|
11
|
-
[](https://github.com/x-extends/vxe-gantt/pulls)
|
|
12
|
-
[](https://github.com/x-extends/vxe-gantt/pulls?q=is%3Apr+is%3Aclosed)
|
|
13
|
-
[](LICENSE)
|
|
14
|
-
|
|
15
|
-
一个基于 [Vxe UI](https://github.com/x-extends/vxe-pc-ui) 的基于 PC 端甘特图组件
|
|
16
|
-
|
|
17
|
-
## 浏览器支持
|
|
18
|
-
|
|
19
|
-
 |  |  |  | 
|
|
20
|
-
--- | --- | --- | --- | --- |
|
|
21
|
-
80+ ✔ | 80+ ✔ | 90+ ✔ | 75+ ✔ | 10+ ✔ |
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
## 安装
|
|
25
|
-
|
|
26
|
-
版本:[vue](https://www.npmjs.com/package/vue) 3.x
|
|
27
|
-
|
|
28
|
-
```shell
|
|
29
|
-
npm install vxe-gantt
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
Get on [unpkg](https://unpkg.com/vxe-gantt/) and [cdnjs](https://cdn.jsdelivr.net/npm/vxe-gantt/)
|
|
33
|
-
|
|
34
|
-
### NPM
|
|
35
|
-
|
|
36
|
-
```javascript
|
|
37
|
-
// ...
|
|
38
|
-
import VxeUIAll from 'vxe-pc-ui'
|
|
39
|
-
import 'vxe-pc-ui/lib/style.css'
|
|
40
|
-
|
|
41
|
-
import VxeUITable from 'vxe-table'
|
|
42
|
-
import 'vxe-table/lib/style.css'
|
|
43
|
-
|
|
44
|
-
import VxeUIGantt from 'vxe-gantt'
|
|
45
|
-
import 'vxe-gantt/lib/style.css'
|
|
46
|
-
// ...
|
|
47
|
-
|
|
48
|
-
createApp(App).use(VxeUIAll).use(VxeUITable).use(VxeUIGantt).mount('#app')
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## 運行項目
|
|
52
|
-
|
|
53
|
-
安裝依賴
|
|
54
|
-
|
|
55
|
-
```shell
|
|
56
|
-
npm install
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
啓動本地調試
|
|
60
|
-
|
|
61
|
-
```shell
|
|
62
|
-
npm run serve
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
編譯打包,生成編譯後的目錄:es,lib
|
|
66
|
-
|
|
67
|
-
```shell
|
|
68
|
-
npm run lib
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## 許可證
|
|
72
|
-
|
|
73
|
-
[MIT](LICENSE) © 2025-present, Xu Liangzhan
|
package/es/gantt/src/emits.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { tableEmits } from './table-emits';
|
|
2
|
-
export const gridEmits = [
|
|
3
|
-
...tableEmits,
|
|
4
|
-
'page-change',
|
|
5
|
-
'form-submit',
|
|
6
|
-
'form-submit-invalid',
|
|
7
|
-
'form-reset',
|
|
8
|
-
'form-collapse',
|
|
9
|
-
'form-toggle-collapse',
|
|
10
|
-
'proxy-query',
|
|
11
|
-
'proxy-delete',
|
|
12
|
-
'proxy-save',
|
|
13
|
-
'toolbar-button-click',
|
|
14
|
-
'toolbar-tool-click',
|
|
15
|
-
'zoom'
|
|
16
|
-
];
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { VxeUI } from '../../ui';
|
|
2
|
-
import { tableProps } from './table-props';
|
|
3
|
-
const { getConfig } = VxeUI;
|
|
4
|
-
export const gridProps = Object.assign(Object.assign({}, tableProps), { layouts: Array, columns: Array, pagerConfig: Object, proxyConfig: Object, toolbarConfig: Object, formConfig: Object, zoomConfig: Object, size: {
|
|
5
|
-
type: String,
|
|
6
|
-
default: () => getConfig().gantt.size || getConfig().size
|
|
7
|
-
} });
|
package/es/gantt/src/props.js
DELETED