evui 3.3.36 → 3.3.39

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 (141) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +40 -40
  3. package/dist/evui.common.js +1907 -1832
  4. package/dist/evui.common.js.map +1 -1
  5. package/dist/evui.umd.js +1907 -1832
  6. package/dist/evui.umd.js.map +1 -1
  7. package/dist/evui.umd.min.js +1 -1
  8. package/dist/evui.umd.min.js.map +1 -1
  9. package/dist/img/{EVUI.7f3588fb.svg → EVUI.b82ee81a.svg} +292 -292
  10. package/dist/img/{icon_mysql.7ea26d5d.svg → icon_mysql.1085fdc9.svg} +78 -78
  11. package/dist/img/{icon_oracle.9009b108.svg → icon_oracle.0572d3ee.svg} +13 -13
  12. package/dist/img/{icon_postgresql.f8fffba9.svg → icon_postgresql.ee12bde8.svg} +58 -58
  13. package/package.json +61 -61
  14. package/src/common/emitter.js +20 -20
  15. package/src/common/utils.debounce.js +223 -223
  16. package/src/common/utils.js +134 -134
  17. package/src/common/utils.table.js +78 -78
  18. package/src/common/utils.throttle.js +83 -83
  19. package/src/common/utils.tree.js +18 -18
  20. package/src/components/button/Button.vue +198 -198
  21. package/src/components/button/index.js +7 -7
  22. package/src/components/buttonGroup/ButtonGroup.vue +11 -11
  23. package/src/components/buttonGroup/index.js +7 -7
  24. package/src/components/calendar/Calendar.vue +661 -661
  25. package/src/components/calendar/index.js +7 -7
  26. package/src/components/calendar/uses.js +1272 -1272
  27. package/src/components/chart/Chart.vue +189 -192
  28. package/src/components/chart/chart.core.js +870 -870
  29. package/src/components/chart/element/element.bar.js +524 -524
  30. package/src/components/chart/element/element.bar.time.js +156 -156
  31. package/src/components/chart/element/element.heatmap.js +533 -533
  32. package/src/components/chart/element/element.line.js +339 -339
  33. package/src/components/chart/element/element.pie.js +197 -197
  34. package/src/components/chart/element/element.scatter.js +184 -184
  35. package/src/components/chart/element/element.tip.js +550 -542
  36. package/src/components/chart/helpers/helpers.canvas.js +265 -265
  37. package/src/components/chart/helpers/helpers.constant.js +206 -206
  38. package/src/components/chart/helpers/helpers.util.js +346 -338
  39. package/src/components/chart/index.js +9 -9
  40. package/src/components/chart/model/index.js +4 -4
  41. package/src/components/chart/model/model.series.js +93 -93
  42. package/src/components/chart/model/model.store.js +977 -967
  43. package/src/components/chart/plugins/plugins.interaction.js +769 -769
  44. package/src/components/chart/plugins/plugins.legend.gradient.js +602 -602
  45. package/src/components/chart/plugins/plugins.legend.js +1155 -1151
  46. package/src/components/chart/plugins/plugins.pie.js +254 -254
  47. package/src/components/chart/plugins/plugins.title.js +56 -56
  48. package/src/components/chart/plugins/plugins.tooltip.js +692 -692
  49. package/src/components/chart/scale/scale.js +848 -848
  50. package/src/components/chart/scale/scale.linear.js +38 -38
  51. package/src/components/chart/scale/scale.logarithmic.js +128 -128
  52. package/src/components/chart/scale/scale.step.js +336 -336
  53. package/src/components/chart/scale/scale.time.category.js +277 -277
  54. package/src/components/chart/scale/scale.time.js +48 -48
  55. package/src/components/chart/style/chart.scss +312 -312
  56. package/src/components/chart/uses.js +264 -252
  57. package/src/components/checkbox/Checkbox.vue +200 -200
  58. package/src/components/checkbox/index.js +7 -7
  59. package/src/components/checkboxGroup/CheckboxGroup.vue +44 -44
  60. package/src/components/checkboxGroup/index.js +7 -7
  61. package/src/components/contextMenu/ContextMenu.vue +80 -80
  62. package/src/components/contextMenu/MenuList.vue +149 -149
  63. package/src/components/contextMenu/index.js +7 -7
  64. package/src/components/contextMenu/uses.js +203 -203
  65. package/src/components/datePicker/DatePicker.vue +437 -437
  66. package/src/components/datePicker/index.js +7 -7
  67. package/src/components/datePicker/uses.js +419 -419
  68. package/src/components/grid/Grid.vue +827 -827
  69. package/src/components/grid/grid.filter.window.vue +493 -493
  70. package/src/components/grid/grid.pagination.vue +75 -75
  71. package/src/components/grid/grid.summary.vue +265 -265
  72. package/src/components/grid/grid.toolbar.vue +26 -26
  73. package/src/components/grid/index.js +11 -11
  74. package/src/components/grid/style/grid.scss +263 -263
  75. package/src/components/grid/uses.js +1002 -1007
  76. package/src/components/icon/Icon.vue +49 -49
  77. package/src/components/icon/index.js +8 -8
  78. package/src/components/inputNumber/InputNumber.vue +212 -212
  79. package/src/components/inputNumber/index.js +7 -7
  80. package/src/components/inputNumber/uses.js +217 -217
  81. package/src/components/loading/Loading.vue +125 -125
  82. package/src/components/loading/index.js +7 -7
  83. package/src/components/menu/Menu.vue +68 -68
  84. package/src/components/menu/MenuItem.vue +187 -187
  85. package/src/components/menu/index.js +7 -7
  86. package/src/components/message/Message.vue +223 -223
  87. package/src/components/message/index.js +31 -31
  88. package/src/components/messageBox/MessageBox.vue +358 -358
  89. package/src/components/messageBox/index.js +22 -22
  90. package/src/components/notification/Notification.vue +316 -316
  91. package/src/components/notification/index.js +49 -49
  92. package/src/components/pagination/Pagination.vue +271 -271
  93. package/src/components/pagination/index.js +7 -7
  94. package/src/components/pagination/pageButton.vue +30 -30
  95. package/src/components/progress/Progress.vue +139 -139
  96. package/src/components/progress/index.js +7 -7
  97. package/src/components/radio/Radio.vue +159 -159
  98. package/src/components/radio/index.js +7 -7
  99. package/src/components/radioGroup/RadioGroup.vue +41 -41
  100. package/src/components/radioGroup/index.js +7 -7
  101. package/src/components/scheduler/Scheduler.vue +149 -149
  102. package/src/components/scheduler/index.js +7 -7
  103. package/src/components/scheduler/uses.js +183 -183
  104. package/src/components/select/Select.vue +440 -440
  105. package/src/components/select/index.js +7 -7
  106. package/src/components/select/uses.js +270 -270
  107. package/src/components/slider/Slider.vue +505 -505
  108. package/src/components/slider/index.js +7 -7
  109. package/src/components/slider/uses.js +390 -390
  110. package/src/components/tabPanel/TabPanel.vue +74 -74
  111. package/src/components/tabPanel/index.js +7 -7
  112. package/src/components/tabs/Tabs.vue +517 -517
  113. package/src/components/tabs/index.js +7 -7
  114. package/src/components/textField/TextField.vue +375 -375
  115. package/src/components/textField/index.js +7 -7
  116. package/src/components/timePicker/TimePicker.vue +352 -352
  117. package/src/components/timePicker/index.js +7 -7
  118. package/src/components/toggle/Toggle.vue +115 -115
  119. package/src/components/toggle/index.js +7 -7
  120. package/src/components/tree/Tree.vue +313 -313
  121. package/src/components/tree/TreeNode.vue +293 -293
  122. package/src/components/tree/index.js +7 -7
  123. package/src/components/treeGrid/TreeGrid.vue +758 -758
  124. package/src/components/treeGrid/TreeGridNode.vue +275 -275
  125. package/src/components/treeGrid/index.js +9 -9
  126. package/src/components/treeGrid/style/treeGrid.scss +261 -261
  127. package/src/components/treeGrid/treeGrid.toolbar.vue +26 -26
  128. package/src/components/treeGrid/uses.js +867 -867
  129. package/src/components/window/Window.vue +329 -329
  130. package/src/components/window/index.js +7 -7
  131. package/src/components/window/uses.js +899 -899
  132. package/src/directives/clickoutside.js +90 -90
  133. package/src/main.js +116 -116
  134. package/src/style/components/input.scss +108 -108
  135. package/src/style/functions.scss +3 -3
  136. package/src/style/index.scss +6 -6
  137. package/src/style/lib/fonts/EVUI.svg +292 -292
  138. package/src/style/lib/icon.css +888 -888
  139. package/src/style/mixins.scss +94 -94
  140. package/src/style/themes.scss +67 -67
  141. package/src/style/variables.scss +22 -22
@@ -1,183 +1,183 @@
1
- import {
2
- getCurrentInstance, computed, reactive,
3
- } from 'vue';
4
-
5
- const getMatrixArr = (row, col) => Array.from(Array(row), () => Array(col).fill(false));
6
-
7
- export const useModel = () => {
8
- const { props, emit } = getCurrentInstance();
9
-
10
- const mv = computed({
11
- get: () => {
12
- if (props.modelValue.length !== props.rowLabels.length
13
- || !props.modelValue[0]
14
- || props.modelValue[0].length !== props.colLabels.length
15
- ) {
16
- return getMatrixArr(props.rowLabels.length, props.colLabels.length);
17
- }
18
- return props.modelValue;
19
- },
20
- set: (val) => {
21
- emit('update:modelValue', val);
22
- emit('change', val);
23
- },
24
- });
25
-
26
- /**
27
- * 초기값 배열의 length와 options의 count가 안맞는 경우 valid체크하는 로직
28
- */
29
- const validateValue = () => {
30
- if (props.modelValue.length !== props.rowLabels.length
31
- || !props.modelValue[0]
32
- || props.modelValue[0].length !== props.colLabels.length
33
- ) {
34
- mv.value = [...getMatrixArr(props.rowLabels.length, props.colLabels.length)];
35
- }
36
- };
37
-
38
- return {
39
- mv,
40
- validateValue,
41
- };
42
- };
43
-
44
- export const useEvent = (param) => {
45
- const { mv } = param;
46
- const mousePos = reactive({
47
- startRow: null,
48
- startCol: null,
49
- dragRow: null,
50
- dragCol: null,
51
- endRow: null,
52
- endCol: null,
53
- dragEventName: null,
54
- });
55
-
56
- /**
57
- * 스케쥴 내 드래그 시 선택영역의 style 세팅
58
- * @param rows
59
- * @param cols
60
- */
61
- const selectionStyle = (rows, cols) => {
62
- if (mousePos.dragCol === null || mousePos.dragRow === null) {
63
- return {};
64
- }
65
- const minRow = mousePos.startRow < mousePos.dragRow ? mousePos.startRow : mousePos.dragRow;
66
- const maxRow = mousePos.startRow > mousePos.dragRow ? mousePos.startRow : mousePos.dragRow;
67
- const minCol = mousePos.startCol < mousePos.dragCol ? mousePos.startCol : mousePos.dragCol;
68
- const maxCol = mousePos.startCol > mousePos.dragCol ? mousePos.startCol : mousePos.dragCol;
69
- if (minRow > rows || maxRow < rows || minCol > cols || maxCol < cols) {
70
- return {};
71
- }
72
- const borderValue = '2px solid #5292F7';
73
- let result = {};
74
- if (rows === minRow) {
75
- result = { ...result, 'border-top': borderValue };
76
- }
77
- if (rows === maxRow) {
78
- result = { ...result, 'border-bottom': borderValue };
79
- }
80
- if (cols === minCol) {
81
- result = { ...result, 'border-left': borderValue };
82
- }
83
- if (cols === maxCol) {
84
- result = { ...result, 'border-right': borderValue };
85
- }
86
- return result;
87
- };
88
-
89
- /**
90
- * 마우스다운할 때 좌표값 세팅 및 드래그이벤트명을 mousemove로 변경함으로서 마우스이벤트 활성화
91
- * @param rows
92
- * @param cols
93
- */
94
- const mousedownBox = (rows, cols) => {
95
- mousePos.startRow = rows;
96
- mousePos.startCol = cols;
97
- mousePos.dragRow = rows;
98
- mousePos.dragCol = cols;
99
- mousePos.dragEventName = 'mousemove';
100
- };
101
-
102
- /**
103
- * 마우스업할 때 start~end의 행열 값을 가져오고 mv에 적용
104
- * @param rows
105
- * @param cols
106
- */
107
- const mouseupBox = (rows, cols) => {
108
- if (!mousePos.dragEventName) {
109
- return;
110
- }
111
- mousePos.endRow = rows;
112
- mousePos.endCol = cols;
113
- mousePos.dragEventName = null;
114
- const tempArr = [...mv.value];
115
- const minRow = mousePos.startRow < mousePos.endRow ? mousePos.startRow : mousePos.endRow;
116
- const maxRow = mousePos.startRow > mousePos.endRow ? mousePos.startRow : mousePos.endRow;
117
- const minCol = mousePos.startCol < mousePos.endCol ? mousePos.startCol : mousePos.endCol;
118
- const maxCol = mousePos.startCol > mousePos.endCol ? mousePos.startCol : mousePos.endCol;
119
- for (let i = minRow; i <= maxRow; i++) {
120
- for (let j = minCol; j <= maxCol; j++) {
121
- tempArr[i][j] = !tempArr[i][j];
122
- }
123
- }
124
- mv.value = [...tempArr];
125
- mousePos.dragRow = null;
126
- mousePos.dragCol = null;
127
- };
128
-
129
- /**
130
- * 마우스다운 후 이벤트명이 mousemove일 때 실행되는 이벤트
131
- * 즉, 드래그할 때의 박스들의 rows, cols값을 입력받음
132
- * @param rows
133
- * @param cols
134
- */
135
- const mousemoveBox = (rows, cols) => {
136
- mousePos.dragRow = rows;
137
- mousePos.dragCol = cols;
138
- };
139
-
140
- /**
141
- * tbody밖으로 마우스벗어나는 경우 마우스업하는 이벤트 실행
142
- */
143
- const mouseleaveBoxArea = () => {
144
- mouseupBox(mousePos.dragRow, mousePos.dragCol);
145
- };
146
-
147
- /**
148
- * 선택된 Column의 첫번째 row의 값의 반대로 전체 적용
149
- * @param wIdx
150
- */
151
- const selectColumn = (wIdx) => {
152
- const tempArr = [...mv.value];
153
- const firstValue = tempArr[0][wIdx];
154
- for (let i = 0; i < tempArr.length; i++) {
155
- tempArr[i][wIdx] = !firstValue;
156
- }
157
- mv.value = [...tempArr];
158
- };
159
-
160
- /**
161
- * 선택된 Row의 첫번째 column의 값의 반대로 전체 적용
162
- * @param hIdx
163
- */
164
- const selectRow = (hIdx) => {
165
- const tempArr = [...mv.value];
166
- const firstValue = tempArr[hIdx][0];
167
- for (let i = 0; i < tempArr[0].length; i++) {
168
- tempArr[hIdx][i] = !firstValue;
169
- }
170
- mv.value = [...tempArr];
171
- };
172
-
173
- return {
174
- mousePos,
175
- selectionStyle,
176
- mousedownBox,
177
- mouseupBox,
178
- mousemoveBox,
179
- mouseleaveBoxArea,
180
- selectColumn,
181
- selectRow,
182
- };
183
- };
1
+ import {
2
+ getCurrentInstance, computed, reactive,
3
+ } from 'vue';
4
+
5
+ const getMatrixArr = (row, col) => Array.from(Array(row), () => Array(col).fill(false));
6
+
7
+ export const useModel = () => {
8
+ const { props, emit } = getCurrentInstance();
9
+
10
+ const mv = computed({
11
+ get: () => {
12
+ if (props.modelValue.length !== props.rowLabels.length
13
+ || !props.modelValue[0]
14
+ || props.modelValue[0].length !== props.colLabels.length
15
+ ) {
16
+ return getMatrixArr(props.rowLabels.length, props.colLabels.length);
17
+ }
18
+ return props.modelValue;
19
+ },
20
+ set: (val) => {
21
+ emit('update:modelValue', val);
22
+ emit('change', val);
23
+ },
24
+ });
25
+
26
+ /**
27
+ * 초기값 배열의 length와 options의 count가 안맞는 경우 valid체크하는 로직
28
+ */
29
+ const validateValue = () => {
30
+ if (props.modelValue.length !== props.rowLabels.length
31
+ || !props.modelValue[0]
32
+ || props.modelValue[0].length !== props.colLabels.length
33
+ ) {
34
+ mv.value = [...getMatrixArr(props.rowLabels.length, props.colLabels.length)];
35
+ }
36
+ };
37
+
38
+ return {
39
+ mv,
40
+ validateValue,
41
+ };
42
+ };
43
+
44
+ export const useEvent = (param) => {
45
+ const { mv } = param;
46
+ const mousePos = reactive({
47
+ startRow: null,
48
+ startCol: null,
49
+ dragRow: null,
50
+ dragCol: null,
51
+ endRow: null,
52
+ endCol: null,
53
+ dragEventName: null,
54
+ });
55
+
56
+ /**
57
+ * 스케쥴 내 드래그 시 선택영역의 style 세팅
58
+ * @param rows
59
+ * @param cols
60
+ */
61
+ const selectionStyle = (rows, cols) => {
62
+ if (mousePos.dragCol === null || mousePos.dragRow === null) {
63
+ return {};
64
+ }
65
+ const minRow = mousePos.startRow < mousePos.dragRow ? mousePos.startRow : mousePos.dragRow;
66
+ const maxRow = mousePos.startRow > mousePos.dragRow ? mousePos.startRow : mousePos.dragRow;
67
+ const minCol = mousePos.startCol < mousePos.dragCol ? mousePos.startCol : mousePos.dragCol;
68
+ const maxCol = mousePos.startCol > mousePos.dragCol ? mousePos.startCol : mousePos.dragCol;
69
+ if (minRow > rows || maxRow < rows || minCol > cols || maxCol < cols) {
70
+ return {};
71
+ }
72
+ const borderValue = '2px solid #5292F7';
73
+ let result = {};
74
+ if (rows === minRow) {
75
+ result = { ...result, 'border-top': borderValue };
76
+ }
77
+ if (rows === maxRow) {
78
+ result = { ...result, 'border-bottom': borderValue };
79
+ }
80
+ if (cols === minCol) {
81
+ result = { ...result, 'border-left': borderValue };
82
+ }
83
+ if (cols === maxCol) {
84
+ result = { ...result, 'border-right': borderValue };
85
+ }
86
+ return result;
87
+ };
88
+
89
+ /**
90
+ * 마우스다운할 때 좌표값 세팅 및 드래그이벤트명을 mousemove로 변경함으로서 마우스이벤트 활성화
91
+ * @param rows
92
+ * @param cols
93
+ */
94
+ const mousedownBox = (rows, cols) => {
95
+ mousePos.startRow = rows;
96
+ mousePos.startCol = cols;
97
+ mousePos.dragRow = rows;
98
+ mousePos.dragCol = cols;
99
+ mousePos.dragEventName = 'mousemove';
100
+ };
101
+
102
+ /**
103
+ * 마우스업할 때 start~end의 행열 값을 가져오고 mv에 적용
104
+ * @param rows
105
+ * @param cols
106
+ */
107
+ const mouseupBox = (rows, cols) => {
108
+ if (!mousePos.dragEventName) {
109
+ return;
110
+ }
111
+ mousePos.endRow = rows;
112
+ mousePos.endCol = cols;
113
+ mousePos.dragEventName = null;
114
+ const tempArr = [...mv.value];
115
+ const minRow = mousePos.startRow < mousePos.endRow ? mousePos.startRow : mousePos.endRow;
116
+ const maxRow = mousePos.startRow > mousePos.endRow ? mousePos.startRow : mousePos.endRow;
117
+ const minCol = mousePos.startCol < mousePos.endCol ? mousePos.startCol : mousePos.endCol;
118
+ const maxCol = mousePos.startCol > mousePos.endCol ? mousePos.startCol : mousePos.endCol;
119
+ for (let i = minRow; i <= maxRow; i++) {
120
+ for (let j = minCol; j <= maxCol; j++) {
121
+ tempArr[i][j] = !tempArr[i][j];
122
+ }
123
+ }
124
+ mv.value = [...tempArr];
125
+ mousePos.dragRow = null;
126
+ mousePos.dragCol = null;
127
+ };
128
+
129
+ /**
130
+ * 마우스다운 후 이벤트명이 mousemove일 때 실행되는 이벤트
131
+ * 즉, 드래그할 때의 박스들의 rows, cols값을 입력받음
132
+ * @param rows
133
+ * @param cols
134
+ */
135
+ const mousemoveBox = (rows, cols) => {
136
+ mousePos.dragRow = rows;
137
+ mousePos.dragCol = cols;
138
+ };
139
+
140
+ /**
141
+ * tbody밖으로 마우스벗어나는 경우 마우스업하는 이벤트 실행
142
+ */
143
+ const mouseleaveBoxArea = () => {
144
+ mouseupBox(mousePos.dragRow, mousePos.dragCol);
145
+ };
146
+
147
+ /**
148
+ * 선택된 Column의 첫번째 row의 값의 반대로 전체 적용
149
+ * @param wIdx
150
+ */
151
+ const selectColumn = (wIdx) => {
152
+ const tempArr = [...mv.value];
153
+ const firstValue = tempArr[0][wIdx];
154
+ for (let i = 0; i < tempArr.length; i++) {
155
+ tempArr[i][wIdx] = !firstValue;
156
+ }
157
+ mv.value = [...tempArr];
158
+ };
159
+
160
+ /**
161
+ * 선택된 Row의 첫번째 column의 값의 반대로 전체 적용
162
+ * @param hIdx
163
+ */
164
+ const selectRow = (hIdx) => {
165
+ const tempArr = [...mv.value];
166
+ const firstValue = tempArr[hIdx][0];
167
+ for (let i = 0; i < tempArr[0].length; i++) {
168
+ tempArr[hIdx][i] = !firstValue;
169
+ }
170
+ mv.value = [...tempArr];
171
+ };
172
+
173
+ return {
174
+ mousePos,
175
+ selectionStyle,
176
+ mousedownBox,
177
+ mouseupBox,
178
+ mousemoveBox,
179
+ mouseleaveBoxArea,
180
+ selectColumn,
181
+ selectRow,
182
+ };
183
+ };