vxe-table 4.13.5 → 4.13.7

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 (174) hide show
  1. package/es/grid/src/grid.js +1 -1
  2. package/es/index.css +1 -1
  3. package/es/index.min.css +1 -1
  4. package/es/locale/lang/ar-EG.js +3 -2
  5. package/es/locale/lang/de-DE.js +3 -2
  6. package/es/locale/lang/en-US.js +2 -1
  7. package/es/locale/lang/es-ES.js +3 -2
  8. package/es/locale/lang/fr-FR.js +2 -1
  9. package/es/locale/lang/hu-HU.js +2 -1
  10. package/es/locale/lang/hy-AM.js +2 -1
  11. package/es/locale/lang/id-ID.js +2 -1
  12. package/es/locale/lang/it-IT.js +2 -1
  13. package/es/locale/lang/ja-JP.js +2 -1
  14. package/es/locale/lang/ko-KR.js +2 -1
  15. package/es/locale/lang/nb-NO.js +2 -1
  16. package/es/locale/lang/pt-BR.js +2 -1
  17. package/es/locale/lang/ru-RU.js +2 -1
  18. package/es/locale/lang/th-TH.js +2 -1
  19. package/es/locale/lang/ug-CN.js +2 -1
  20. package/es/locale/lang/uk-UA.js +2 -1
  21. package/es/locale/lang/vi-VN.js +2 -1
  22. package/es/locale/lang/zh-CHT.js +2 -1
  23. package/es/locale/lang/zh-CN.js +2 -1
  24. package/es/style.css +1 -1
  25. package/es/style.min.css +1 -1
  26. package/es/table/module/custom/hook.js +11 -8
  27. package/es/table/module/custom/panel.js +7 -7
  28. package/es/table/module/export/hook.js +21 -20
  29. package/es/table/module/keyboard/hook.js +3 -2
  30. package/es/table/src/body.js +45 -10
  31. package/es/table/src/cell.js +159 -69
  32. package/es/table/src/column.js +2 -0
  33. package/es/table/src/columnInfo.js +1 -0
  34. package/es/table/src/emits.js +1 -0
  35. package/es/table/src/props.js +9 -7
  36. package/es/table/src/table.js +659 -171
  37. package/es/table/style.css +70 -40
  38. package/es/table/style.min.css +1 -1
  39. package/es/ui/index.js +13 -1
  40. package/es/ui/src/dom.js +3 -0
  41. package/es/ui/src/log.js +1 -1
  42. package/es/vxe-table/style.css +70 -40
  43. package/es/vxe-table/style.min.css +1 -1
  44. package/lib/grid/src/grid.js +1 -1
  45. package/lib/grid/src/grid.min.js +1 -1
  46. package/lib/index.css +1 -1
  47. package/lib/index.min.css +1 -1
  48. package/lib/index.umd.js +419 -179
  49. package/lib/index.umd.min.js +1 -1
  50. package/lib/locale/lang/ar-EG.js +3 -2
  51. package/lib/locale/lang/ar-EG.min.js +1 -1
  52. package/lib/locale/lang/de-DE.js +3 -2
  53. package/lib/locale/lang/de-DE.min.js +1 -1
  54. package/lib/locale/lang/en-US.js +2 -1
  55. package/lib/locale/lang/en-US.min.js +1 -1
  56. package/lib/locale/lang/en-US.umd.js +2 -1
  57. package/lib/locale/lang/es-ES.js +3 -2
  58. package/lib/locale/lang/es-ES.min.js +1 -1
  59. package/lib/locale/lang/es-ES.umd.js +3 -2
  60. package/lib/locale/lang/fr-FR.js +2 -1
  61. package/lib/locale/lang/fr-FR.min.js +1 -1
  62. package/lib/locale/lang/hu-HU.js +2 -1
  63. package/lib/locale/lang/hu-HU.min.js +1 -1
  64. package/lib/locale/lang/hu-HU.umd.js +2 -1
  65. package/lib/locale/lang/hy-AM.js +2 -1
  66. package/lib/locale/lang/hy-AM.min.js +1 -1
  67. package/lib/locale/lang/id-ID.js +2 -1
  68. package/lib/locale/lang/id-ID.min.js +1 -1
  69. package/lib/locale/lang/it-IT.js +2 -1
  70. package/lib/locale/lang/it-IT.min.js +1 -1
  71. package/lib/locale/lang/ja-JP.js +2 -1
  72. package/lib/locale/lang/ja-JP.min.js +1 -1
  73. package/lib/locale/lang/ja-JP.umd.js +2 -1
  74. package/lib/locale/lang/ko-KR.js +2 -1
  75. package/lib/locale/lang/ko-KR.min.js +1 -1
  76. package/lib/locale/lang/ko-KR.umd.js +2 -1
  77. package/lib/locale/lang/nb-NO.js +2 -1
  78. package/lib/locale/lang/nb-NO.min.js +1 -1
  79. package/lib/locale/lang/pt-BR.js +2 -1
  80. package/lib/locale/lang/pt-BR.min.js +1 -1
  81. package/lib/locale/lang/pt-BR.umd.js +2 -1
  82. package/lib/locale/lang/ru-RU.js +2 -1
  83. package/lib/locale/lang/ru-RU.min.js +1 -1
  84. package/lib/locale/lang/ru-RU.umd.js +2 -1
  85. package/lib/locale/lang/th-TH.js +2 -1
  86. package/lib/locale/lang/th-TH.min.js +1 -1
  87. package/lib/locale/lang/ug-CN.js +2 -1
  88. package/lib/locale/lang/ug-CN.min.js +1 -1
  89. package/lib/locale/lang/uk-UA.js +2 -1
  90. package/lib/locale/lang/uk-UA.min.js +1 -1
  91. package/lib/locale/lang/uk-UA.umd.js +2 -1
  92. package/lib/locale/lang/vi-VN.js +2 -1
  93. package/lib/locale/lang/vi-VN.min.js +1 -1
  94. package/lib/locale/lang/zh-CHT.js +2 -1
  95. package/lib/locale/lang/zh-CHT.min.js +1 -1
  96. package/lib/locale/lang/zh-CN.js +2 -1
  97. package/lib/locale/lang/zh-CN.min.js +1 -1
  98. package/lib/locale/lang/zh-CN.umd.js +2 -1
  99. package/lib/style.css +1 -1
  100. package/lib/style.min.css +1 -1
  101. package/lib/table/module/custom/hook.js +11 -1
  102. package/lib/table/module/custom/hook.min.js +1 -1
  103. package/lib/table/module/custom/panel.js +6 -2
  104. package/lib/table/module/custom/panel.min.js +1 -1
  105. package/lib/table/module/export/hook.js +21 -11
  106. package/lib/table/module/export/hook.min.js +1 -1
  107. package/lib/table/module/keyboard/hook.js +2 -1
  108. package/lib/table/module/keyboard/hook.min.js +1 -1
  109. package/lib/table/src/body.js +35 -9
  110. package/lib/table/src/body.min.js +1 -1
  111. package/lib/table/src/cell.js +177 -52
  112. package/lib/table/src/cell.min.js +1 -1
  113. package/lib/table/src/column.js +2 -0
  114. package/lib/table/src/column.min.js +1 -1
  115. package/lib/table/src/columnInfo.js +1 -0
  116. package/lib/table/src/columnInfo.min.js +1 -1
  117. package/lib/table/src/emits.js +1 -1
  118. package/lib/table/src/emits.min.js +1 -1
  119. package/lib/table/src/props.js +9 -7
  120. package/lib/table/src/props.min.js +1 -1
  121. package/lib/table/src/table.js +134 -91
  122. package/lib/table/src/table.min.js +1 -1
  123. package/lib/table/style/style.css +70 -40
  124. package/lib/table/style/style.min.css +1 -1
  125. package/lib/ui/index.js +13 -1
  126. package/lib/ui/index.min.js +1 -1
  127. package/lib/ui/src/dom.js +4 -0
  128. package/lib/ui/src/dom.min.js +1 -1
  129. package/lib/ui/src/log.js +1 -1
  130. package/lib/ui/src/log.min.js +1 -1
  131. package/lib/vxe-table/style/style.css +70 -40
  132. package/lib/vxe-table/style/style.min.css +1 -1
  133. package/package.json +2 -2
  134. package/packages/grid/src/grid.ts +1 -1
  135. package/packages/locale/lang/ar-EG.ts +3 -2
  136. package/packages/locale/lang/de-DE.ts +3 -2
  137. package/packages/locale/lang/en-US.ts +2 -1
  138. package/packages/locale/lang/es-ES.ts +3 -2
  139. package/packages/locale/lang/fr-FR.ts +2 -1
  140. package/packages/locale/lang/hu-HU.ts +2 -1
  141. package/packages/locale/lang/hy-AM.ts +2 -1
  142. package/packages/locale/lang/id-ID.ts +2 -1
  143. package/packages/locale/lang/it-IT.ts +2 -1
  144. package/packages/locale/lang/ja-JP.ts +2 -1
  145. package/packages/locale/lang/ko-KR.ts +2 -1
  146. package/packages/locale/lang/nb-NO.ts +2 -1
  147. package/packages/locale/lang/pt-BR.ts +2 -1
  148. package/packages/locale/lang/ru-RU.ts +2 -1
  149. package/packages/locale/lang/th-TH.ts +2 -1
  150. package/packages/locale/lang/ug-CN.ts +2 -1
  151. package/packages/locale/lang/uk-UA.ts +2 -1
  152. package/packages/locale/lang/vi-VN.ts +2 -1
  153. package/packages/locale/lang/zh-CHT.ts +2 -1
  154. package/packages/locale/lang/zh-CN.ts +2 -1
  155. package/packages/table/module/custom/hook.ts +14 -8
  156. package/packages/table/module/custom/panel.ts +7 -7
  157. package/packages/table/module/export/hook.ts +28 -27
  158. package/packages/table/module/keyboard/hook.ts +3 -2
  159. package/packages/table/src/body.ts +46 -10
  160. package/packages/table/src/cell.ts +162 -73
  161. package/packages/table/src/column.ts +2 -0
  162. package/packages/table/src/columnInfo.ts +1 -0
  163. package/packages/table/src/emits.ts +1 -0
  164. package/packages/table/src/props.ts +9 -7
  165. package/packages/table/src/table.ts +664 -176
  166. package/packages/ui/index.ts +12 -0
  167. package/packages/ui/src/dom.ts +4 -0
  168. package/styles/components/table.scss +131 -92
  169. /package/es/{iconfont.1744880866629.ttf → iconfont.1745290253213.ttf} +0 -0
  170. /package/es/{iconfont.1744880866629.woff → iconfont.1745290253213.woff} +0 -0
  171. /package/es/{iconfont.1744880866629.woff2 → iconfont.1745290253213.woff2} +0 -0
  172. /package/lib/{iconfont.1744880866629.ttf → iconfont.1745290253213.ttf} +0 -0
  173. /package/lib/{iconfont.1744880866629.woff → iconfont.1745290253213.woff} +0 -0
  174. /package/lib/{iconfont.1744880866629.woff2 → iconfont.1745290253213.woff2} +0 -0
@@ -132,7 +132,17 @@ VxeUI.setConfig({
132
132
  // isEvery: false,
133
133
  showIcon: true
134
134
  },
135
+ rowGroupConfig: {
136
+ padding: true,
137
+ rowField: 'id',
138
+ parentField: '_X_ROW_PARENT_KEY',
139
+ childrenField: '_X_ROW_CHILDREN',
140
+ mapChildrenField: '_X_ROW_CHILD_LIST',
141
+ indent: 20,
142
+ showIcon: true
143
+ },
135
144
  treeConfig: {
145
+ padding: true,
136
146
  rowField: 'id',
137
147
  parentField: 'parentId',
138
148
  childrenField: 'children',
@@ -295,6 +305,8 @@ VxeUI.setIcon({
295
305
  TABLE_DRAG_STATUS_SUB_ROW: iconPrefix + 'add-sub',
296
306
  TABLE_DRAG_STATUS_COLUMN: iconPrefix + 'swap',
297
307
  TABLE_DRAG_DISABLED: iconPrefix + 'no-drop',
308
+ TABLE_ROW_GROUP_OPEN: iconPrefix + 'arrow-right rotate90',
309
+ TABLE_ROW_GROUP_CLOSE: iconPrefix + 'arrow-right',
298
310
 
299
311
  // toolbar
300
312
  TOOLBAR_TOOLS_REFRESH: iconPrefix + 'repeat',
@@ -71,6 +71,10 @@ export function addClass (elem: any, cls: string) {
71
71
  }
72
72
  }
73
73
 
74
+ export function hasControlKey (evnt: KeyboardEvent | MouseEvent | DragEvent) {
75
+ return evnt.ctrlKey || evnt.metaKey
76
+ }
77
+
74
78
  export function toCssUnit (val?: number | string, unit = 'px') {
75
79
  if (XEUtils.isNumber(val) || /^\d+$/.test(`${val}`)) {
76
80
  return `${val}${unit}`
@@ -135,6 +135,7 @@
135
135
  & > .vxe-ico-picker {
136
136
  width: 100%;
137
137
  }
138
+ & > .vxe-row-group--tree-node,
138
139
  & > .vxe-cell--tree-node {
139
140
  .vxe-default-input,
140
141
  .vxe-default-textarea,
@@ -221,6 +222,7 @@
221
222
  & > .vxe-default-textarea {
222
223
  resize: none;
223
224
  }
225
+ & > .vxe-row-group--tree-node,
224
226
  & > .vxe-cell--tree-node {
225
227
  .vxe-input > .vxe-input--inner,
226
228
  .vxe-textarea > .vxe-textarea--inner {
@@ -896,84 +898,6 @@
896
898
  }
897
899
  }
898
900
  }
899
- .vxe-body--row {
900
- &.row--stripe {
901
- background-color: var(--vxe-ui-table-row-striped-background-color);
902
- }
903
- &.row--radio {
904
- background-color: var(--vxe-ui-table-row-radio-checked-background-color);
905
- }
906
- &.row--checked {
907
- background-color: var(--vxe-ui-table-row-checkbox-checked-background-color);
908
- }
909
- &.row--current {
910
- background-color: var(--vxe-ui-table-row-current-background-color);
911
- }
912
- &.row--hover {
913
- background-color: var(--vxe-ui-table-row-hover-background-color);
914
- &.row--stripe {
915
- background-color: var(--vxe-ui-table-row-hover-striped-background-color);
916
- }
917
- &.row--radio {
918
- background-color: var(--vxe-ui-table-row-hover-radio-checked-background-color);
919
- }
920
- &.row--checked {
921
- background-color: var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
922
- }
923
- &.row--current {
924
- background-color: var(--vxe-ui-table-row-hover-current-background-color);
925
- }
926
- }
927
- }
928
- // &.is--tree-line {
929
- // .vxe-body--row {
930
- // &.row--stripe {
931
- // .vxe-tree--btn-wrapper {
932
- // background-color: var(--vxe-ui-table-row-striped-background-color);
933
- // }
934
- // }
935
- // &.row--radio {
936
- // .vxe-tree--btn-wrapper {
937
- // background-color: var(--vxe-ui-table-row-radio-checked-background-color);
938
- // }
939
- // }
940
- // &.row--checked {
941
- // .vxe-tree--btn-wrapper {
942
- // background-color: var(--vxe-ui-table-row-checkbox-checked-background-color);
943
- // }
944
- // }
945
- // &.row--current {
946
- // .vxe-tree--btn-wrapper {
947
- // background-color: var(--vxe-ui-table-row-current-background-color);
948
- // }
949
- // }
950
- // &.row--hover {
951
- // .vxe-tree--btn-wrapper {
952
- // background-color: var(--vxe-ui-table-row-hover-background-color);
953
- // }
954
- // &.row--stripe {
955
- // .vxe-tree--btn-wrapper {
956
- // background-color: var(--vxe-ui-table-row-hover-striped-background-color);
957
- // }
958
- // }
959
- // &.row--radio {
960
- // .vxe-tree--btn-wrapper {
961
- // background-color: var(--vxe-ui-table-row-hover-radio-checked-background-color);
962
- // }
963
- // }
964
- // &.row--checked {
965
- // .vxe-tree--btn-wrapper {
966
- // background-color: var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
967
- // }
968
- // }
969
- // &.row--current {
970
- // .vxe-tree--btn-wrapper {
971
- // background-color: var(--vxe-ui-table-row-hover-current-background-color);
972
- // }
973
- // }
974
- // }
975
- // }
976
- // }
977
901
  &.col-drag--resize {
978
902
  .vxe-table--main-wrapper,
979
903
  .vxe-table--fixed-left-wrapper,
@@ -1068,7 +992,7 @@
1068
992
  text-align: left;
1069
993
  &.col--current {
1070
994
  background-color: var(--vxe-ui-table-column-current-background-color);
1071
- // .vxe-tree--btn-wrapper {
995
+ // .vxe-cell--tree-btn {
1072
996
  // background-color: var(--vxe-ui-table-column-current-background-color);
1073
997
  // }
1074
998
  }
@@ -1090,7 +1014,7 @@
1090
1014
  // .vxe-body--column,
1091
1015
  // .vxe-footer--column {
1092
1016
  // &.col--current {
1093
- // .vxe-tree--btn-wrapper {
1017
+ // .vxe-cell--tree-btn {
1094
1018
  // background-color: var(--vxe-ui-table-column-current-background-color);
1095
1019
  // }
1096
1020
  // }
@@ -1111,6 +1035,104 @@
1111
1035
  }
1112
1036
  }
1113
1037
  }
1038
+
1039
+ // 行高亮
1040
+ .vxe-body--row {
1041
+ &.row--stripe {
1042
+ & > .vxe-body--column {
1043
+ background-color: var(--vxe-ui-table-row-striped-background-color);
1044
+ }
1045
+ }
1046
+ &.row--radio {
1047
+ & > .vxe-body--column {
1048
+ background-color: var(--vxe-ui-table-row-radio-checked-background-color);
1049
+ }
1050
+ }
1051
+ &.row--checked {
1052
+ & > .vxe-body--column {
1053
+ background-color: var(--vxe-ui-table-row-checkbox-checked-background-color);
1054
+ }
1055
+ }
1056
+ &.row--current {
1057
+ & > .vxe-body--column {
1058
+ background-color: var(--vxe-ui-table-row-current-background-color);
1059
+ }
1060
+ }
1061
+ &.row--hover {
1062
+ & > .vxe-body--column {
1063
+ background-color: var(--vxe-ui-table-row-hover-background-color);
1064
+ }
1065
+ &.row--stripe {
1066
+ & > .vxe-body--column {
1067
+ background-color: var(--vxe-ui-table-row-hover-striped-background-color);
1068
+ }
1069
+ }
1070
+ &.row--radio {
1071
+ & > .vxe-body--column {
1072
+ background-color: var(--vxe-ui-table-row-hover-radio-checked-background-color);
1073
+ }
1074
+ }
1075
+ &.row--checked {
1076
+ & > .vxe-body--column {
1077
+ background-color: var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
1078
+ }
1079
+ }
1080
+ &.row--current {
1081
+ & > .vxe-body--column {
1082
+ background-color: var(--vxe-ui-table-row-hover-current-background-color);
1083
+ }
1084
+ }
1085
+ }
1086
+ }
1087
+ // &.is--tree-line {
1088
+ // .vxe-body--row {
1089
+ // &.row--stripe {
1090
+ // .vxe-cell--tree-btn {
1091
+ // background-color: var(--vxe-ui-table-row-striped-background-color);
1092
+ // }
1093
+ // }
1094
+ // &.row--radio {
1095
+ // .vxe-cell--tree-btn {
1096
+ // background-color: var(--vxe-ui-table-row-radio-checked-background-color);
1097
+ // }
1098
+ // }
1099
+ // &.row--checked {
1100
+ // .vxe-cell--tree-btn {
1101
+ // background-color: var(--vxe-ui-table-row-checkbox-checked-background-color);
1102
+ // }
1103
+ // }
1104
+ // &.row--current {
1105
+ // .vxe-cell--tree-btn {
1106
+ // background-color: var(--vxe-ui-table-row-current-background-color);
1107
+ // }
1108
+ // }
1109
+ // &.row--hover {
1110
+ // .vxe-cell--tree-btn {
1111
+ // background-color: var(--vxe-ui-table-row-hover-background-color);
1112
+ // }
1113
+ // &.row--stripe {
1114
+ // .vxe-cell--tree-btn {
1115
+ // background-color: var(--vxe-ui-table-row-hover-striped-background-color);
1116
+ // }
1117
+ // }
1118
+ // &.row--radio {
1119
+ // .vxe-cell--tree-btn {
1120
+ // background-color: var(--vxe-ui-table-row-hover-radio-checked-background-color);
1121
+ // }
1122
+ // }
1123
+ // &.row--checked {
1124
+ // .vxe-cell--tree-btn {
1125
+ // background-color: var(--vxe-ui-table-row-hover-checkbox-checked-background-color);
1126
+ // }
1127
+ // }
1128
+ // &.row--current {
1129
+ // .vxe-cell--tree-btn {
1130
+ // background-color: var(--vxe-ui-table-row-hover-current-background-color);
1131
+ // }
1132
+ // }
1133
+ // }
1134
+ // }
1135
+ // }
1114
1136
 
1115
1137
  /*边框*/
1116
1138
  .vxe-table--footer-wrapper {
@@ -1607,10 +1629,28 @@
1607
1629
  border-color: var(--vxe-ui-table-tree-node-line-color);
1608
1630
  pointer-events: none;
1609
1631
  }
1632
+ .vxe-row-group--tree-node,
1610
1633
  .vxe-cell--tree-node {
1611
1634
  position: relative;
1612
1635
  }
1613
- .vxe-tree--btn-wrapper {
1636
+ .vxe-cell--tree-btn {
1637
+ &:hover {
1638
+ color: var(--vxe-ui-font-color);
1639
+ }
1640
+ & > i {
1641
+ display: block;
1642
+ color: var(--vxe-ui-font-lighten-color);
1643
+ @include baseMixin.createAnimationTransition(transform);
1644
+ // background-color: var(--vxe-ui-layout-background-color); // 影响选择行相关
1645
+ }
1646
+ }
1647
+ .vxe-row-group-cell,
1648
+ .vxe-tree-cell {
1649
+ display: block;
1650
+ padding-left: 1.5em;
1651
+ }
1652
+ .vxe-cell--tree-btn,
1653
+ .vxe-row-group--node-btn{
1614
1654
  position: absolute;
1615
1655
  top: 50%;
1616
1656
  width: 1em;
@@ -1620,27 +1660,25 @@
1620
1660
  z-index: 1;
1621
1661
  user-select: none;
1622
1662
  cursor: pointer;
1623
- // & > i {
1624
- // background-color: var(--vxe-ui-layout-background-color); // 影响选择行相关
1625
- // }
1626
1663
  }
1627
- .vxe-tree--node-btn {
1628
- display: block;
1629
- color: var(--vxe-ui-font-lighten-color);
1630
- @include baseMixin.createAnimationTransition(transform);
1664
+
1665
+ /*行分组*/
1666
+ .vxe-row-group--node-btn {
1631
1667
  &:hover {
1632
1668
  color: var(--vxe-ui-font-color);
1633
1669
  }
1634
- }
1635
- .vxe-tree-cell {
1636
- display: block;
1637
- padding-left: 1.5em;
1670
+ & > i {
1671
+ display: block;
1672
+ color: var(--vxe-ui-font-lighten-color);
1673
+ @include baseMixin.createAnimationTransition(transform);
1674
+ }
1638
1675
  }
1639
1676
 
1640
1677
  /*单元格高度*/
1641
1678
  .vxe-body--column {
1642
1679
  &.col--ellipsis {
1643
1680
  & > .vxe-cell {
1681
+ .vxe-row-group-cell,
1644
1682
  .vxe-tree-cell {
1645
1683
  overflow: hidden;
1646
1684
  text-overflow: ellipsis;
@@ -1681,6 +1719,7 @@
1681
1719
  }
1682
1720
  }
1683
1721
  }
1722
+ &.vxe-row-group-cell,
1684
1723
  &.vxe-tree-cell,
1685
1724
  &.col--vertical-top {
1686
1725
  & > .vxe-cell {