vxe-gantt 0.0.2 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/README.md +27 -1
  2. package/es/gantt/src/emits.js +4 -0
  3. package/es/gantt/src/gantt-body.js +103 -0
  4. package/es/gantt/src/gantt-chart.js +77 -0
  5. package/es/gantt/src/gantt-header.js +70 -0
  6. package/es/gantt/src/gantt-view.js +768 -0
  7. package/es/gantt/src/gantt.js +1707 -22
  8. package/es/gantt/src/grid-emits.js +16 -0
  9. package/es/gantt/src/grid-props.js +7 -0
  10. package/es/gantt/src/props.js +2 -0
  11. package/es/gantt/src/table-emits.js +97 -0
  12. package/es/gantt/src/table-props.js +298 -0
  13. package/es/gantt/src/util.js +12 -0
  14. package/es/gantt/style.css +599 -0
  15. package/es/gantt/style.min.css +1 -0
  16. package/es/style.css +1 -0
  17. package/es/style.min.css +1 -0
  18. package/es/ui/index.js +47 -3
  19. package/es/ui/src/dom.js +44 -105
  20. package/es/ui/src/log.js +1 -1
  21. package/es/ui/src/utils.js +18 -17
  22. package/es/ui/src/vn.js +1 -32
  23. package/es/vxe-gantt/style.css +599 -0
  24. package/es/vxe-gantt/style.min.css +1 -0
  25. package/lib/gantt/src/emits.js +8 -0
  26. package/lib/gantt/src/emits.min.js +1 -0
  27. package/lib/gantt/src/gantt-body.js +118 -0
  28. package/lib/gantt/src/gantt-body.min.js +1 -0
  29. package/lib/gantt/src/gantt-chart.js +94 -0
  30. package/lib/gantt/src/gantt-chart.min.js +1 -0
  31. package/lib/gantt/src/gantt-header.js +78 -0
  32. package/lib/gantt/src/gantt-header.min.js +1 -0
  33. package/lib/gantt/src/gantt-view.js +810 -0
  34. package/lib/gantt/src/gantt-view.min.js +1 -0
  35. package/lib/gantt/src/gantt.js +1945 -20
  36. package/lib/gantt/src/gantt.min.js +1 -1
  37. package/lib/gantt/src/grid-emits.js +8 -0
  38. package/lib/gantt/src/grid-emits.min.js +1 -0
  39. package/lib/gantt/src/grid-props.js +24 -0
  40. package/lib/gantt/src/grid-props.min.js +1 -0
  41. package/lib/gantt/src/props.js +13 -0
  42. package/lib/gantt/src/props.min.js +1 -0
  43. package/lib/gantt/src/table-emits.js +7 -0
  44. package/lib/gantt/src/table-emits.min.js +1 -0
  45. package/lib/gantt/src/table-props.js +306 -0
  46. package/lib/gantt/src/table-props.min.js +1 -0
  47. package/lib/gantt/src/util.js +19 -0
  48. package/lib/gantt/src/util.min.js +1 -0
  49. package/lib/gantt/style/style.css +599 -0
  50. package/lib/gantt/style/style.min.css +1 -0
  51. package/lib/index.umd.js +6554 -140
  52. package/lib/index.umd.min.js +1 -1
  53. package/lib/style.css +1 -0
  54. package/lib/style.min.css +1 -0
  55. package/lib/ui/index.js +47 -3
  56. package/lib/ui/index.min.js +1 -1
  57. package/lib/ui/src/dom.js +50 -110
  58. package/lib/ui/src/dom.min.js +1 -1
  59. package/lib/ui/src/log.js +1 -1
  60. package/lib/ui/src/log.min.js +1 -1
  61. package/lib/ui/src/utils.js +24 -20
  62. package/lib/ui/src/utils.min.js +1 -1
  63. package/lib/ui/src/vn.js +1 -43
  64. package/lib/ui/src/vn.min.js +0 -1
  65. package/lib/vxe-gantt/style/style.css +599 -0
  66. package/lib/vxe-gantt/style/style.min.css +1 -0
  67. package/package.json +4 -4
  68. package/packages/gantt/src/emits.ts +7 -0
  69. package/packages/gantt/src/gantt-body.ts +119 -0
  70. package/packages/gantt/src/gantt-chart.ts +97 -0
  71. package/packages/gantt/src/gantt-header.ts +79 -0
  72. package/packages/gantt/src/gantt-view.ts +840 -0
  73. package/packages/gantt/src/gantt.ts +1806 -24
  74. package/packages/gantt/src/grid-emits.ts +19 -0
  75. package/packages/gantt/src/grid-props.ts +23 -0
  76. package/packages/gantt/src/props.ts +13 -0
  77. package/packages/gantt/src/table-emits.ts +109 -0
  78. package/packages/gantt/src/table-props.ts +304 -0
  79. package/packages/gantt/src/util.ts +15 -0
  80. package/packages/ui/index.ts +48 -2
  81. package/packages/ui/src/dom.ts +53 -110
  82. package/packages/ui/src/log.ts +1 -1
  83. package/packages/ui/src/utils.ts +22 -21
  84. package/packages/ui/src/vn.ts +0 -37
  85. package/styles/components/gantt-module/all.scss +1 -0
  86. package/styles/components/gantt-module/gantt-chart.scss +46 -0
  87. package/styles/components/gantt.scss +586 -0
  88. package/styles/helpers/baseMixin.scss +96 -0
  89. package/styles/helpers/baseVar.scss +4 -0
  90. package/styles/helpers/placement.scss +39 -0
  91. package/styles/theme/base.scss +7 -0
  92. package/styles/theme/dark.scss +5 -0
  93. package/styles/theme/light.scss +5 -0
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _vue = require("vue");
8
+ var _comp = require("../../ui/src/comp");
9
+ var _util = require("./util");
10
+ var _ganttChart = _interopRequireDefault(require("./gantt-chart"));
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ var _default = exports.default = (0, _comp.defineVxeComponent)({
13
+ name: 'VxeGanttViewBody',
14
+ setup() {
15
+ const $xeGantt = (0, _vue.inject)('$xeGantt', {});
16
+ const $xeGanttView = (0, _vue.inject)('$xeGanttView', {});
17
+ const {
18
+ reactData,
19
+ internalData
20
+ } = $xeGanttView;
21
+ const {
22
+ refTable
23
+ } = $xeGantt.getRefMaps();
24
+ const refElem = (0, _vue.ref)();
25
+ const refBodyScroll = (0, _vue.ref)();
26
+ const refBodyTable = (0, _vue.ref)();
27
+ const refBodyXSpace = (0, _vue.ref)();
28
+ const refBodyYSpace = (0, _vue.ref)();
29
+ const renderRows = () => {
30
+ const $xeTable = refTable.value;
31
+ const fullAllDataRowIdData = $xeTable ? $xeTable.internalData.fullAllDataRowIdData : {};
32
+ let cellOpts = {};
33
+ let rowOpts = {};
34
+ let defaultRowHeight = 0;
35
+ if ($xeTable) {
36
+ const {
37
+ computeCellOpts,
38
+ computeRowOpts,
39
+ computeDefaultRowHeight
40
+ } = $xeTable.getComputeMaps();
41
+ cellOpts = computeCellOpts.value;
42
+ rowOpts = computeRowOpts.value;
43
+ defaultRowHeight = computeDefaultRowHeight.value;
44
+ }
45
+ const {
46
+ tableData,
47
+ tableColumn
48
+ } = reactData;
49
+ const trVNs = [];
50
+ tableData.forEach((row, rIndex) => {
51
+ const rowid = $xeTable ? $xeTable.getRowid(row) : '';
52
+ const rowRest = fullAllDataRowIdData[rowid] || {};
53
+ const cellHeight = (0, _util.getCellRestHeight)(rowRest, cellOpts, rowOpts, defaultRowHeight);
54
+ trVNs.push((0, _vue.h)('tr', {
55
+ key: rIndex
56
+ }, tableColumn.map((column, cIndex) => {
57
+ return (0, _vue.h)('td', {
58
+ key: cIndex,
59
+ class: 'vxe-gantt-view--body-column',
60
+ style: {
61
+ height: `${cellHeight}px`
62
+ }
63
+ });
64
+ })));
65
+ });
66
+ return trVNs;
67
+ };
68
+ const renderVN = () => {
69
+ const {
70
+ tableColumn
71
+ } = reactData;
72
+ return (0, _vue.h)('div', {
73
+ ref: refElem,
74
+ class: 'vxe-gantt-view--body-wrapper'
75
+ }, [(0, _vue.h)('div', {
76
+ ref: refBodyScroll,
77
+ class: 'vxe-gantt-view--body-inner-wrapper',
78
+ onScroll: $xeGanttView.triggerBodyScrollEvent
79
+ }, [(0, _vue.h)('div', {
80
+ ref: refBodyXSpace,
81
+ class: 'vxe-body--x-space'
82
+ }), (0, _vue.h)('div', {
83
+ ref: refBodyYSpace,
84
+ class: 'vxe-body--y-space'
85
+ }), (0, _vue.h)('table', {
86
+ ref: refBodyTable,
87
+ class: 'vxe-gantt-view--body-table'
88
+ }, [(0, _vue.h)('colgroup', {}, tableColumn.map((column, cIndex) => {
89
+ return (0, _vue.h)('col', {
90
+ key: cIndex
91
+ });
92
+ })), (0, _vue.h)('tbody', {}, renderRows())]), (0, _vue.h)(_ganttChart.default)])]);
93
+ };
94
+ (0, _vue.onMounted)(() => {
95
+ const {
96
+ elemStore
97
+ } = internalData;
98
+ const prefix = 'main-body-';
99
+ elemStore[`${prefix}wrapper`] = refElem;
100
+ elemStore[`${prefix}scroll`] = refBodyScroll;
101
+ elemStore[`${prefix}table`] = refBodyTable;
102
+ elemStore[`${prefix}xSpace`] = refBodyXSpace;
103
+ elemStore[`${prefix}ySpace`] = refBodyYSpace;
104
+ });
105
+ (0, _vue.onUnmounted)(() => {
106
+ const {
107
+ elemStore
108
+ } = internalData;
109
+ const prefix = 'main-body-';
110
+ elemStore[`${prefix}wrapper`] = null;
111
+ elemStore[`${prefix}scroll`] = null;
112
+ elemStore[`${prefix}table`] = null;
113
+ elemStore[`${prefix}xSpace`] = null;
114
+ elemStore[`${prefix}ySpace`] = null;
115
+ });
116
+ return renderVN;
117
+ }
118
+ });
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_util=require("./util"),_ganttChart=_interopRequireDefault(require("./gantt-chart"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewBody",setup(){var e=(0,_vue.inject)("$xeGantt",{});let t=(0,_vue.inject)("$xeGanttView",{}),{reactData:_,internalData:a}=t,c=e.getRefMaps().refTable,l=(0,_vue.ref)(),r=(0,_vue.ref)(),u=(0,_vue.ref)(),o=(0,_vue.ref)(),v=(0,_vue.ref)();return(0,_vue.onMounted)(()=>{var e=a.elemStore,t="main-body-";e[t+"wrapper"]=l,e[t+"scroll"]=r,e[t+"table"]=u,e[t+"xSpace"]=o,e[t+"ySpace"]=v}),(0,_vue.onUnmounted)(()=>{var e=a.elemStore,t="main-body-";e[t+"wrapper"]=null,e[t+"scroll"]=null,e[t+"table"]=null,e[t+"xSpace"]=null,e[t+"ySpace"]=null}),()=>{var e=_.tableColumn;return(0,_vue.h)("div",{ref:l,class:"vxe-gantt-view--body-wrapper"},[(0,_vue.h)("div",{ref:r,class:"vxe-gantt-view--body-inner-wrapper",onScroll:t.triggerBodyScrollEvent},[(0,_vue.h)("div",{ref:o,class:"vxe-body--x-space"}),(0,_vue.h)("div",{ref:v,class:"vxe-body--y-space"}),(0,_vue.h)("table",{ref:u,class:"vxe-gantt-view--body-table"},[(0,_vue.h)("colgroup",{},e.map((e,t)=>(0,_vue.h)("col",{key:t}))),(0,_vue.h)("tbody",{},(()=>{let l=c.value,r=l?l.internalData.fullAllDataRowIdData:{},u={},o={},v=0;var e,t,a;l&&({computeCellOpts:e,computeRowOpts:t,computeDefaultRowHeight:a}=l.getComputeMaps(),u=e.value,o=t.value,v=a.value);let{tableData:n,tableColumn:i}=_,p=[];return n.forEach((e,t)=>{e=l?l.getRowid(e):"",e=r[e]||{};let a=(0,_util.getCellRestHeight)(e,u,o,v);p.push((0,_vue.h)("tr",{key:t},i.map((e,t)=>(0,_vue.h)("td",{key:t,class:"vxe-gantt-view--body-column",style:{height:a+"px"}}))))}),p})())]),(0,_vue.h)(_ganttChart.default)])])}}});
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _vue = require("vue");
8
+ var _comp = require("../../ui/src/comp");
9
+ var _xeUtils = _interopRequireDefault(require("xe-utils"));
10
+ var _util = require("./util");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ var _default = exports.default = (0, _comp.defineVxeComponent)({
13
+ name: 'VxeGanttViewChart',
14
+ setup() {
15
+ const $xeGantt = (0, _vue.inject)('$xeGantt', {});
16
+ const $xeGanttView = (0, _vue.inject)('$xeGanttView', {});
17
+ const {
18
+ reactData,
19
+ internalData
20
+ } = $xeGanttView;
21
+ const {
22
+ refTable
23
+ } = $xeGantt.getRefMaps();
24
+ const {
25
+ computeProgressField
26
+ } = $xeGantt.getComputeMaps();
27
+ const refElem = (0, _vue.ref)();
28
+ const renderVN = () => {
29
+ const $xeTable = refTable.value;
30
+ const fullAllDataRowIdData = $xeTable ? $xeTable.internalData.fullAllDataRowIdData : {};
31
+ let cellOpts = {};
32
+ let rowOpts = {};
33
+ let defaultRowHeight = 0;
34
+ if ($xeTable) {
35
+ const {
36
+ computeCellOpts,
37
+ computeRowOpts,
38
+ computeDefaultRowHeight
39
+ } = $xeTable.getComputeMaps();
40
+ cellOpts = computeCellOpts.value;
41
+ rowOpts = computeRowOpts.value;
42
+ defaultRowHeight = computeDefaultRowHeight.value;
43
+ }
44
+ const {
45
+ tableData
46
+ } = reactData;
47
+ const progressField = computeProgressField.value;
48
+ const trVNs = [];
49
+ tableData.forEach((row, rIndex) => {
50
+ const rowid = $xeTable ? $xeTable.getRowid(row) : '';
51
+ const rowRest = fullAllDataRowIdData[rowid] || {};
52
+ const cellHeight = (0, _util.getCellRestHeight)(rowRest, cellOpts, rowOpts, defaultRowHeight);
53
+ const progressValue = _xeUtils.default.get(row, progressField);
54
+ trVNs.push((0, _vue.h)('div', {
55
+ key: rIndex,
56
+ rowid,
57
+ class: 'vxe-gantt-view--chart-row',
58
+ style: {
59
+ height: `${cellHeight}px`
60
+ }
61
+ }, [(0, _vue.h)('div', {
62
+ class: 'vxe-gantt-view--chart-bar',
63
+ rowid
64
+ }, [(0, _vue.h)('div', {
65
+ class: 'vxe-gantt-view--chart-progress',
66
+ style: progressValue ? {
67
+ width: `${progressValue}%`
68
+ } : undefined
69
+ }), (0, _vue.h)('div', {
70
+ class: 'vxe-gantt-view--chart-content'
71
+ })])]));
72
+ });
73
+ return (0, _vue.h)('div', {
74
+ ref: refElem,
75
+ class: 'vxe-gantt-view--chart-wrapper'
76
+ }, trVNs);
77
+ };
78
+ (0, _vue.onMounted)(() => {
79
+ const {
80
+ elemStore
81
+ } = internalData;
82
+ const prefix = 'main-chart-';
83
+ elemStore[`${prefix}wrapper`] = refElem;
84
+ });
85
+ (0, _vue.onUnmounted)(() => {
86
+ const {
87
+ elemStore
88
+ } = internalData;
89
+ const prefix = 'main-chart-';
90
+ elemStore[`${prefix}wrapper`] = null;
91
+ });
92
+ return renderVN;
93
+ }
94
+ });
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewChart",setup(){var e=(0,_vue.inject)("$xeGantt",{});let{reactData:r,internalData:t}=(0,_vue.inject)("$xeGanttView",{}),p=e.getRefMaps().refTable,c=e.getComputeMaps().computeProgressField,d=(0,_vue.ref)();return(0,_vue.onMounted)(()=>{var e=t.elemStore;e["main-chart-wrapper"]=d}),(0,_vue.onUnmounted)(()=>{var e=t.elemStore;e["main-chart-wrapper"]=null}),()=>{let u=p.value,l=u?u.internalData.fullAllDataRowIdData:{},i={},v={},o=0;var e,t,a=(u&&({computeCellOpts:a,computeRowOpts:e,computeDefaultRowHeight:t}=u.getComputeMaps(),i=a.value,v=e.value,o=t.value),r).tableData;let n=c.value,s=[];return a.forEach((e,t)=>{var a=u?u.getRowid(e):"",r=l[a]||{},r=(0,_util.getCellRestHeight)(r,i,v,o),e=_xeUtils.default.get(e,n);s.push((0,_vue.h)("div",{key:t,rowid:a,class:"vxe-gantt-view--chart-row",style:{height:r+"px"}},[(0,_vue.h)("div",{class:"vxe-gantt-view--chart-bar",rowid:a},[(0,_vue.h)("div",{class:"vxe-gantt-view--chart-progress",style:e?{width:e+"%"}:void 0}),(0,_vue.h)("div",{class:"vxe-gantt-view--chart-content"})])]))}),(0,_vue.h)("div",{ref:d,class:"vxe-gantt-view--chart-wrapper"},s)}}});
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _vue = require("vue");
8
+ var _comp = require("../../ui/src/comp");
9
+ var _default = exports.default = (0, _comp.defineVxeComponent)({
10
+ name: 'VxeGanttView',
11
+ setup() {
12
+ const $xeGanttView = (0, _vue.inject)('$xeGanttView', {});
13
+ const {
14
+ reactData,
15
+ internalData
16
+ } = $xeGanttView;
17
+ const refElem = (0, _vue.ref)();
18
+ const refHeaderScroll = (0, _vue.ref)();
19
+ const refHeaderTable = (0, _vue.ref)();
20
+ const refHeaderXSpace = (0, _vue.ref)();
21
+ const renderVN = () => {
22
+ const {
23
+ tableColumn,
24
+ headerGroups
25
+ } = reactData;
26
+ return (0, _vue.h)('div', {
27
+ ref: refElem,
28
+ class: 'vxe-gantt-view--header-wrapper'
29
+ }, [(0, _vue.h)('div', {
30
+ ref: refHeaderScroll,
31
+ class: 'vxe-gantt-view--header-inner-wrapper',
32
+ onScroll: $xeGanttView.triggerHeaderScrollEvent
33
+ }, [(0, _vue.h)('div', {
34
+ ref: refHeaderXSpace,
35
+ class: 'vxe-body--x-space'
36
+ }), (0, _vue.h)('table', {
37
+ ref: refHeaderTable,
38
+ class: 'vxe-gantt-view--header-table'
39
+ }, [(0, _vue.h)('colgroup', {}, tableColumn.map((column, cIndex) => {
40
+ return (0, _vue.h)('col', {
41
+ key: cIndex
42
+ });
43
+ })), (0, _vue.h)('thead', {}, headerGroups.map((cols, rIndex) => {
44
+ return (0, _vue.h)('tr', {
45
+ key: rIndex
46
+ }, cols.map((column, cIndex) => {
47
+ return (0, _vue.h)('th', {
48
+ key: cIndex,
49
+ class: 'vxe-gantt-view--header-column',
50
+ colspan: column.children ? column.children.length : null,
51
+ title: `${column.field}`
52
+ }, column.title);
53
+ }));
54
+ }))])])]);
55
+ };
56
+ (0, _vue.onMounted)(() => {
57
+ const {
58
+ elemStore
59
+ } = internalData;
60
+ const prefix = 'main-header-';
61
+ elemStore[`${prefix}wrapper`] = refElem;
62
+ elemStore[`${prefix}scroll`] = refHeaderScroll;
63
+ elemStore[`${prefix}table`] = refHeaderTable;
64
+ elemStore[`${prefix}xSpace`] = refHeaderXSpace;
65
+ });
66
+ (0, _vue.onUnmounted)(() => {
67
+ const {
68
+ elemStore
69
+ } = internalData;
70
+ const prefix = 'main-header-';
71
+ elemStore[`${prefix}wrapper`] = null;
72
+ elemStore[`${prefix}scroll`] = null;
73
+ elemStore[`${prefix}table`] = null;
74
+ elemStore[`${prefix}xSpace`] = null;
75
+ });
76
+ return renderVN;
77
+ }
78
+ });
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttView",setup(){let a=(0,_vue.inject)("$xeGanttView",{}),{reactData:t,internalData:l}=a,u=(0,_vue.ref)(),n=(0,_vue.ref)(),v=(0,_vue.ref)(),o=(0,_vue.ref)();return(0,_vue.onMounted)(()=>{var e=l.elemStore,r="main-header-";e[r+"wrapper"]=u,e[r+"scroll"]=n,e[r+"table"]=v,e[r+"xSpace"]=o}),(0,_vue.onUnmounted)(()=>{var e=l.elemStore,r="main-header-";e[r+"wrapper"]=null,e[r+"scroll"]=null,e[r+"table"]=null,e[r+"xSpace"]=null}),()=>{var{tableColumn:e,headerGroups:r}=t;return(0,_vue.h)("div",{ref:u,class:"vxe-gantt-view--header-wrapper"},[(0,_vue.h)("div",{ref:n,class:"vxe-gantt-view--header-inner-wrapper",onScroll:a.triggerHeaderScrollEvent},[(0,_vue.h)("div",{ref:o,class:"vxe-body--x-space"}),(0,_vue.h)("table",{ref:v,class:"vxe-gantt-view--header-table"},[(0,_vue.h)("colgroup",{},e.map((e,r)=>(0,_vue.h)("col",{key:r}))),(0,_vue.h)("thead",{},r.map((e,r)=>(0,_vue.h)("tr",{key:r},e.map((e,r)=>(0,_vue.h)("th",{key:r,class:"vxe-gantt-view--header-column",colspan:e.children?e.children.length:null,title:""+e.field},e.title)))))])])])}}});