vxe-table 4.1.20 → 4.2.0-beta.2

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 (324) hide show
  1. package/README.en.md +2 -4
  2. package/README.md +2 -3
  3. package/README.zh-TW.md +2 -4
  4. package/es/button/index.js +1 -1
  5. package/es/checkbox/index.js +1 -1
  6. package/es/checkbox-group/index.js +1 -1
  7. package/es/colgroup/index.js +3 -2
  8. package/es/column/index.js +3 -2
  9. package/es/edit/src/hook.js +2 -1
  10. package/es/export/index.js +2 -2
  11. package/es/export/src/hook.js +2 -1
  12. package/es/export/src/util.js +3 -5
  13. package/es/filter/index.js +1 -1
  14. package/es/filter/src/hook.js +17 -10
  15. package/es/footer/index.js +1 -1
  16. package/es/footer/src/footer.js +3 -2
  17. package/es/form/index.js +1 -1
  18. package/es/form/src/form-gather.js +3 -3
  19. package/es/form/src/form-item.js +4 -4
  20. package/es/form/src/form.js +36 -43
  21. package/es/form/src/render.js +15 -10
  22. package/es/form/src/util.js +6 -0
  23. package/es/form-gather/index.js +1 -1
  24. package/es/form-item/index.js +1 -1
  25. package/es/grid/index.js +1 -1
  26. package/es/grid/src/grid.js +2 -1
  27. package/es/header/index.js +1 -1
  28. package/es/header/src/header.js +1 -1
  29. package/es/input/index.js +1 -1
  30. package/es/input/src/date.js +41 -0
  31. package/es/input/src/input.js +4 -51
  32. package/es/input/src/number.js +10 -0
  33. package/es/list/index.js +1 -1
  34. package/es/menu/index.js +1 -1
  35. package/es/modal/index.js +1 -1
  36. package/es/modal/src/modal.js +2 -1
  37. package/es/optgroup/index.js +1 -1
  38. package/es/option/index.js +1 -1
  39. package/es/pager/index.js +1 -1
  40. package/es/pager/src/pager.js +13 -2
  41. package/es/pulldown/index.js +1 -1
  42. package/es/radio/index.js +1 -1
  43. package/es/radio-button/index.js +1 -1
  44. package/es/radio-group/index.js +1 -1
  45. package/es/select/index.js +1 -1
  46. package/es/select/style.css +1 -1
  47. package/es/style.css +1 -1
  48. package/es/style.min.css +1 -1
  49. package/es/switch/index.js +1 -1
  50. package/es/table/index.js +1 -1
  51. package/es/table/src/body.js +32 -11
  52. package/es/table/src/cell.js +3 -3
  53. package/es/table/src/column.js +3 -1
  54. package/es/table/src/columnInfo.js +5 -4
  55. package/es/table/src/emits.js +5 -1
  56. package/es/table/src/props.js +5 -2
  57. package/es/table/src/table.js +120 -86
  58. package/es/table/src/util.js +5 -3
  59. package/es/textarea/index.js +1 -1
  60. package/es/toolbar/index.js +1 -1
  61. package/es/toolbar/src/toolbar.js +2 -1
  62. package/es/tools/dom.js +9 -0
  63. package/es/tools/log.js +13 -0
  64. package/es/tools/utils.js +0 -12
  65. package/es/tooltip/index.js +1 -1
  66. package/es/tooltip/src/tooltip.js +85 -45
  67. package/es/tooltip/style.css +1 -1
  68. package/es/v-x-e-table/index.js +1 -0
  69. package/es/v-x-e-table/src/conf.js +12 -7
  70. package/es/v-x-e-table/src/interceptor.js +1 -1
  71. package/es/v-x-e-table/src/renderer.js +2 -1
  72. package/es/v-x-e-table/src/store.js +1 -1
  73. package/helper/vetur/attributes.json +31 -11
  74. package/helper/vetur/tags.json +8 -3
  75. package/lib/button/index.js +3 -2
  76. package/lib/button/index.min.js +1 -1
  77. package/lib/checkbox/index.js +3 -2
  78. package/lib/checkbox/index.min.js +1 -1
  79. package/lib/checkbox-group/index.js +3 -2
  80. package/lib/checkbox-group/index.min.js +1 -1
  81. package/lib/colgroup/index.js +6 -4
  82. package/lib/colgroup/index.min.js +1 -1
  83. package/lib/column/index.js +6 -4
  84. package/lib/column/index.min.js +1 -1
  85. package/lib/edit/src/hook.js +7 -5
  86. package/lib/edit/src/hook.min.js +1 -1
  87. package/lib/export/index.js +5 -4
  88. package/lib/export/index.min.js +1 -1
  89. package/lib/export/src/hook.js +14 -12
  90. package/lib/export/src/hook.min.js +1 -1
  91. package/lib/export/src/util.js +7 -9
  92. package/lib/export/src/util.min.js +1 -1
  93. package/lib/filter/index.js +3 -2
  94. package/lib/filter/index.min.js +1 -1
  95. package/lib/filter/src/hook.js +24 -13
  96. package/lib/filter/src/hook.min.js +1 -1
  97. package/lib/footer/index.js +3 -2
  98. package/lib/footer/index.min.js +1 -1
  99. package/lib/footer/src/footer.js +7 -3
  100. package/lib/footer/src/footer.min.js +1 -1
  101. package/lib/form/index.js +3 -2
  102. package/lib/form/index.min.js +1 -1
  103. package/lib/form/src/form-gather.js +3 -3
  104. package/lib/form/src/form-gather.min.js +1 -1
  105. package/lib/form/src/form-item.js +3 -3
  106. package/lib/form/src/form-item.min.js +1 -1
  107. package/lib/form/src/form.js +45 -58
  108. package/lib/form/src/form.min.js +1 -1
  109. package/lib/form/src/render.js +24 -10
  110. package/lib/form/src/render.min.js +1 -1
  111. package/lib/form/src/util.js +11 -0
  112. package/lib/form/src/util.min.js +1 -1
  113. package/lib/form-gather/index.js +3 -2
  114. package/lib/form-gather/index.min.js +1 -1
  115. package/lib/form-item/index.js +3 -2
  116. package/lib/form-item/index.min.js +1 -1
  117. package/lib/grid/index.js +3 -2
  118. package/lib/grid/index.min.js +1 -1
  119. package/lib/grid/src/grid.js +16 -14
  120. package/lib/grid/src/grid.min.js +1 -1
  121. package/lib/header/index.js +3 -2
  122. package/lib/header/index.min.js +1 -1
  123. package/lib/header/src/header.js +1 -1
  124. package/lib/header/src/header.min.js +1 -1
  125. package/lib/index.umd.js +584 -415
  126. package/lib/index.umd.min.js +1 -2
  127. package/lib/input/index.js +3 -2
  128. package/lib/input/index.min.js +1 -1
  129. package/lib/input/src/date.js +56 -0
  130. package/lib/input/src/date.min.js +1 -0
  131. package/lib/input/src/input.js +13 -67
  132. package/lib/input/src/input.min.js +1 -1
  133. package/lib/input/src/number.js +23 -0
  134. package/lib/input/src/number.min.js +1 -0
  135. package/lib/list/index.js +3 -2
  136. package/lib/list/index.min.js +1 -1
  137. package/lib/menu/index.js +3 -2
  138. package/lib/menu/index.min.js +1 -1
  139. package/lib/modal/index.js +3 -2
  140. package/lib/modal/index.min.js +1 -1
  141. package/lib/modal/src/modal.js +3 -1
  142. package/lib/modal/src/modal.min.js +1 -1
  143. package/lib/optgroup/index.js +3 -2
  144. package/lib/optgroup/index.min.js +1 -1
  145. package/lib/option/index.js +3 -2
  146. package/lib/option/index.min.js +1 -1
  147. package/lib/pager/index.js +3 -2
  148. package/lib/pager/index.min.js +1 -1
  149. package/lib/pager/src/pager.js +15 -1
  150. package/lib/pager/src/pager.min.js +1 -1
  151. package/lib/pulldown/index.js +3 -2
  152. package/lib/pulldown/index.min.js +1 -1
  153. package/lib/radio/index.js +3 -2
  154. package/lib/radio/index.min.js +1 -1
  155. package/lib/radio-button/index.js +3 -2
  156. package/lib/radio-button/index.min.js +1 -1
  157. package/lib/radio-group/index.js +3 -2
  158. package/lib/radio-group/index.min.js +1 -1
  159. package/lib/select/index.js +3 -2
  160. package/lib/select/index.min.js +1 -1
  161. package/lib/select/style/style.css +1 -1
  162. package/lib/select/style/style.min.css +1 -1
  163. package/lib/style.css +1 -1
  164. package/lib/style.min.css +1 -1
  165. package/lib/switch/index.js +3 -2
  166. package/lib/switch/index.min.js +1 -1
  167. package/lib/table/index.js +3 -2
  168. package/lib/table/index.min.js +1 -1
  169. package/lib/table/src/body.js +32 -11
  170. package/lib/table/src/body.min.js +1 -1
  171. package/lib/table/src/cell.js +3 -3
  172. package/lib/table/src/cell.min.js +1 -1
  173. package/lib/table/src/column.js +3 -1
  174. package/lib/table/src/column.min.js +1 -1
  175. package/lib/table/src/columnInfo.js +13 -9
  176. package/lib/table/src/columnInfo.min.js +1 -1
  177. package/lib/table/src/emits.js +1 -1
  178. package/lib/table/src/emits.min.js +1 -1
  179. package/lib/table/src/props.js +5 -2
  180. package/lib/table/src/table.js +187 -148
  181. package/lib/table/src/table.min.js +1 -1
  182. package/lib/table/src/util.js +5 -3
  183. package/lib/table/src/util.min.js +1 -1
  184. package/lib/textarea/index.js +3 -2
  185. package/lib/textarea/index.min.js +1 -1
  186. package/lib/toolbar/index.js +3 -2
  187. package/lib/toolbar/index.min.js +1 -1
  188. package/lib/toolbar/src/toolbar.js +4 -2
  189. package/lib/toolbar/src/toolbar.min.js +1 -1
  190. package/lib/tools/dom.js +12 -1
  191. package/lib/tools/dom.min.js +1 -1
  192. package/lib/tools/log.js +29 -0
  193. package/lib/tools/log.min.js +1 -0
  194. package/lib/tools/utils.js +0 -20
  195. package/lib/tools/utils.min.js +1 -1
  196. package/lib/tooltip/index.js +3 -3
  197. package/lib/tooltip/index.min.js +1 -1
  198. package/lib/tooltip/src/tooltip.js +114 -60
  199. package/lib/tooltip/src/tooltip.min.js +1 -1
  200. package/lib/tooltip/style/style.css +1 -1
  201. package/lib/tooltip/style/style.min.css +1 -1
  202. package/lib/v-x-e-table/index.js +1 -0
  203. package/lib/v-x-e-table/index.min.js +1 -1
  204. package/lib/v-x-e-table/src/conf.js +12 -7
  205. package/lib/v-x-e-table/src/conf.min.js +1 -1
  206. package/lib/v-x-e-table/src/interceptor.js +3 -3
  207. package/lib/v-x-e-table/src/interceptor.min.js +1 -1
  208. package/lib/v-x-e-table/src/renderer.js +3 -1
  209. package/lib/v-x-e-table/src/renderer.min.js +1 -1
  210. package/lib/v-x-e-table/src/store.js +2 -2
  211. package/lib/v-x-e-table/src/store.min.js +1 -1
  212. package/package.json +4 -4
  213. package/packages/button/index.ts +2 -1
  214. package/packages/checkbox/index.ts +2 -1
  215. package/packages/checkbox-group/index.ts +2 -1
  216. package/packages/colgroup/index.ts +4 -2
  217. package/packages/column/index.ts +4 -2
  218. package/packages/edit/src/hook.ts +2 -1
  219. package/packages/export/index.ts +3 -2
  220. package/packages/export/src/hook.ts +2 -1
  221. package/packages/export/src/util.ts +4 -6
  222. package/packages/filter/index.ts +2 -1
  223. package/packages/filter/src/hook.ts +17 -10
  224. package/packages/footer/index.ts +2 -1
  225. package/packages/footer/src/footer.ts +3 -2
  226. package/packages/form/index.ts +2 -1
  227. package/packages/form/src/form-gather.ts +3 -3
  228. package/packages/form/src/form-item.ts +4 -4
  229. package/packages/form/src/form.ts +38 -46
  230. package/packages/form/src/render.ts +8 -6
  231. package/packages/form/src/util.ts +8 -1
  232. package/packages/form-gather/index.ts +2 -1
  233. package/packages/form-item/index.ts +2 -1
  234. package/packages/grid/index.ts +2 -1
  235. package/packages/grid/src/grid.ts +2 -1
  236. package/packages/header/index.ts +2 -1
  237. package/packages/header/src/header.ts +1 -1
  238. package/packages/input/index.ts +2 -1
  239. package/packages/input/src/date.ts +42 -0
  240. package/packages/input/src/input.ts +3 -51
  241. package/packages/input/src/number.ts +12 -0
  242. package/packages/list/index.ts +2 -1
  243. package/packages/menu/index.ts +2 -1
  244. package/packages/modal/index.ts +2 -1
  245. package/packages/modal/src/modal.ts +2 -1
  246. package/packages/optgroup/index.ts +2 -1
  247. package/packages/option/index.ts +2 -1
  248. package/packages/pager/index.ts +2 -1
  249. package/packages/pager/src/pager.ts +17 -3
  250. package/packages/pulldown/index.ts +2 -1
  251. package/packages/radio/index.ts +2 -1
  252. package/packages/radio-button/index.ts +2 -1
  253. package/packages/radio-group/index.ts +2 -1
  254. package/packages/select/index.ts +2 -1
  255. package/packages/switch/index.ts +2 -1
  256. package/packages/table/index.ts +2 -1
  257. package/packages/table/src/body.ts +33 -12
  258. package/packages/table/src/cell.ts +3 -3
  259. package/packages/table/src/column.ts +3 -1
  260. package/packages/table/src/columnInfo.ts +5 -3
  261. package/packages/table/src/emits.ts +5 -1
  262. package/packages/table/src/props.ts +5 -2
  263. package/packages/table/src/table.ts +120 -84
  264. package/packages/table/src/util.ts +5 -3
  265. package/packages/textarea/index.ts +2 -1
  266. package/packages/toolbar/index.ts +2 -1
  267. package/packages/toolbar/src/toolbar.ts +2 -1
  268. package/packages/tools/dom.ts +11 -0
  269. package/packages/tools/log.ts +16 -0
  270. package/packages/tools/utils.ts +0 -15
  271. package/packages/tooltip/index.ts +2 -1
  272. package/packages/tooltip/src/tooltip.ts +87 -46
  273. package/packages/v-x-e-table/index.ts +1 -0
  274. package/packages/v-x-e-table/src/conf.ts +12 -7
  275. package/packages/v-x-e-table/src/interceptor.ts +1 -1
  276. package/packages/v-x-e-table/src/renderer.ts +2 -1
  277. package/packages/v-x-e-table/src/store.ts +1 -1
  278. package/styles/select.scss +1 -1
  279. package/styles/tooltip.scss +1 -1
  280. package/types/all.d.ts +2 -2
  281. package/types/button.d.ts +54 -54
  282. package/types/checkbox-group.d.ts +21 -21
  283. package/types/checkbox.d.ts +30 -30
  284. package/types/colgroup.d.ts +16 -16
  285. package/types/column.d.ts +172 -161
  286. package/types/component.d.ts +9 -9
  287. package/types/edit.d.ts +35 -35
  288. package/types/export.d.ts +101 -101
  289. package/types/filter.d.ts +19 -19
  290. package/types/footer.d.ts +1 -1
  291. package/types/form-gather.d.ts +3 -3
  292. package/types/form-item.d.ts +68 -66
  293. package/types/form.d.ts +136 -131
  294. package/types/grid.d.ts +257 -257
  295. package/types/header.d.ts +1 -1
  296. package/types/icon.d.ts +1 -1
  297. package/types/input.d.ts +162 -162
  298. package/types/keyboard.d.ts +6 -6
  299. package/types/list.d.ts +54 -54
  300. package/types/menu.d.ts +33 -33
  301. package/types/modal.d.ts +160 -160
  302. package/types/optgroup.d.ts +5 -5
  303. package/types/option.d.ts +19 -19
  304. package/types/pager.d.ts +65 -61
  305. package/types/plugins/pro.d.ts +245 -215
  306. package/types/pulldown.d.ts +36 -36
  307. package/types/radio-button.d.ts +25 -25
  308. package/types/radio-group.d.ts +20 -20
  309. package/types/radio.d.ts +27 -27
  310. package/types/select.d.ts +82 -82
  311. package/types/switch.d.ts +40 -40
  312. package/types/table.d.ts +1422 -1336
  313. package/types/textarea.d.ts +71 -71
  314. package/types/toolbar.d.ts +65 -65
  315. package/types/tooltip.d.ts +50 -44
  316. package/types/v-x-e-table/commands.d.ts +12 -12
  317. package/types/v-x-e-table/formats.d.ts +10 -10
  318. package/types/v-x-e-table/hooks.d.ts +9 -9
  319. package/types/v-x-e-table/index.d.ts +51 -43
  320. package/types/v-x-e-table/interceptor.d.ts +26 -26
  321. package/types/v-x-e-table/menus.d.ts +13 -13
  322. package/types/v-x-e-table/renderer.d.ts +128 -128
  323. package/types/v-x-e-table/setup.d.ts +55 -55
  324. package/types/validator.d.ts +28 -28
@@ -13,6 +13,8 @@ var _dom = require("../../tools/dom");
13
13
 
14
14
  var _utils = require("../../tools/utils");
15
15
 
16
+ var _log = require("../../tools/log");
17
+
16
18
  var _resize = require("../../tools/resize");
17
19
 
18
20
  var _event = require("../../tools/event");
@@ -202,6 +204,14 @@ var _default = (0, _vue.defineComponent)({
202
204
  insertList: [],
203
205
  removeList: []
204
206
  },
207
+ // 存放 tooltip 相关信息
208
+ tooltipStore: {
209
+ row: null,
210
+ column: null,
211
+ content: null,
212
+ visible: false,
213
+ currOpts: null
214
+ },
205
215
  // 存放数据校验相关信息
206
216
  validStore: {
207
217
  visible: false,
@@ -273,8 +283,6 @@ var _default = (0, _vue.defineComponent)({
273
283
  startIndex: 0,
274
284
  endIndex: 0
275
285
  },
276
- // 存放 tooltip 相关信息
277
- tooltipStore: {},
278
286
  // 表格宽度
279
287
  tableWidth: 0,
280
288
  // 表格高度
@@ -320,7 +328,6 @@ var _default = (0, _vue.defineComponent)({
320
328
  fullColumnIdData: {},
321
329
  fullColumnFieldData: {},
322
330
  inited: false,
323
- tooltipActive: false,
324
331
  tooltipTimeout: null,
325
332
  initStatus: false,
326
333
  isActivated: false
@@ -386,27 +393,13 @@ var _default = (0, _vue.defineComponent)({
386
393
  return Object.assign({}, _conf.default.table.checkboxConfig, props.checkboxConfig);
387
394
  });
388
395
  var computeTooltipOpts = (0, _vue.ref)();
389
-
390
- var handleTooltipLeaveMethod = function handleTooltipLeaveMethod() {
391
- var tooltipOpts = computeTooltipOpts.value;
392
- setTimeout(function () {
393
- if (!internalData.tooltipActive) {
394
- tableMethods.closeTooltip();
395
- }
396
- }, tooltipOpts.leaveDelay);
397
- return false;
398
- };
399
-
400
396
  computeTooltipOpts = (0, _vue.computed)(function () {
401
- var opts = Object.assign({
402
- leaveDelay: 300
403
- }, _conf.default.table.tooltipConfig, props.tooltipConfig);
404
-
405
- if (opts.enterable) {
406
- opts.leaveMethod = handleTooltipLeaveMethod;
407
- }
408
-
409
- return opts;
397
+ return Object.assign({}, _conf.default.tooltip, _conf.default.table.tooltipConfig, props.tooltipConfig);
398
+ });
399
+ var computeTipConfig = (0, _vue.computed)(function () {
400
+ var tooltipStore = reactData.tooltipStore;
401
+ var tooltipOpts = computeTooltipOpts.value;
402
+ return __assign(__assign({}, tooltipOpts), tooltipStore.currOpts);
410
403
  });
411
404
  var computeValidTipOpts = (0, _vue.computed)(function () {
412
405
  var tooltipOpts = computeTooltipOpts.value;
@@ -775,7 +768,7 @@ var _default = (0, _vue.defineComponent)({
775
768
  var visibleColumn_1 = internalData.visibleColumn;
776
769
 
777
770
  if (treeConfig) {
778
- (0, _utils.errLog)('vxe.error.noTree', ['merge-footer-items']);
771
+ (0, _log.errLog)('vxe.error.noTree', ['merge-footer-items']);
779
772
  return;
780
773
  }
781
774
 
@@ -841,7 +834,7 @@ var _default = (0, _vue.defineComponent)({
841
834
  var visibleColumn_2 = internalData.visibleColumn;
842
835
 
843
836
  if (treeConfig) {
844
- throw new Error((0, _utils.getLog)('vxe.error.noTree', ['merge-cells']));
837
+ throw new Error((0, _log.getLog)('vxe.error.noTree', ['merge-cells']));
845
838
  }
846
839
 
847
840
  if (!_xeUtils.default.isArray(merges)) {
@@ -922,7 +915,7 @@ var _default = (0, _vue.defineComponent)({
922
915
  var customMap_1 = {};
923
916
 
924
917
  if (!id) {
925
- (0, _utils.errLog)('vxe.error.reqProp', ['id']);
918
+ (0, _log.errLog)('vxe.error.reqProp', ['id']);
926
919
  return;
927
920
  }
928
921
 
@@ -1033,7 +1026,7 @@ var _default = (0, _vue.defineComponent)({
1033
1026
  if (property) {
1034
1027
  if (process.env.NODE_ENV === 'development') {
1035
1028
  if (fullColumnFieldData[property]) {
1036
- (0, _utils.warnLog)('vxe.error.colRepet', ['field', property]);
1029
+ (0, _log.warnLog)('vxe.error.colRepet', ['field', property]);
1037
1030
  }
1038
1031
  }
1039
1032
 
@@ -1047,7 +1040,7 @@ var _default = (0, _vue.defineComponent)({
1047
1040
  if (treeNode) {
1048
1041
  if (process.env.NODE_ENV === 'development') {
1049
1042
  if (treeNodeColumn) {
1050
- (0, _utils.warnLog)('vxe.error.colRepet', ['tree-node', treeNode]);
1043
+ (0, _log.warnLog)('vxe.error.colRepet', ['tree-node', treeNode]);
1051
1044
  }
1052
1045
  }
1053
1046
 
@@ -1057,7 +1050,7 @@ var _default = (0, _vue.defineComponent)({
1057
1050
  } else if (type === 'expand') {
1058
1051
  if (process.env.NODE_ENV === 'development') {
1059
1052
  if (expandColumn) {
1060
- (0, _utils.warnLog)('vxe.error.colRepet', ['type', type]);
1053
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
1061
1054
  }
1062
1055
  }
1063
1056
 
@@ -1069,7 +1062,7 @@ var _default = (0, _vue.defineComponent)({
1069
1062
  if (process.env.NODE_ENV === 'development') {
1070
1063
  if (type === 'checkbox') {
1071
1064
  if (checkboxColumn) {
1072
- (0, _utils.warnLog)('vxe.error.colRepet', ['type', type]);
1065
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
1073
1066
  }
1074
1067
 
1075
1068
  if (!checkboxColumn) {
@@ -1077,7 +1070,7 @@ var _default = (0, _vue.defineComponent)({
1077
1070
  }
1078
1071
  } else if (type === 'radio') {
1079
1072
  if (radioColumn) {
1080
- (0, _utils.warnLog)('vxe.error.colRepet', ['type', type]);
1073
+ (0, _log.warnLog)('vxe.error.colRepet', ['type', type]);
1081
1074
  }
1082
1075
 
1083
1076
  if (!radioColumn) {
@@ -1091,7 +1084,7 @@ var _default = (0, _vue.defineComponent)({
1091
1084
  }
1092
1085
 
1093
1086
  if (fullColumnIdData[colid]) {
1094
- (0, _utils.errLog)('vxe.error.colRepet', ['colId', colid]);
1087
+ (0, _log.errLog)('vxe.error.colRepet', ['colId', colid]);
1095
1088
  }
1096
1089
 
1097
1090
  fullColumnIdData[colid] = rest;
@@ -1108,7 +1101,7 @@ var _default = (0, _vue.defineComponent)({
1108
1101
 
1109
1102
  if (process.env.NODE_ENV === 'development') {
1110
1103
  if (expandColumn && mouseOpts.area) {
1111
- (0, _utils.errLog)('vxe.error.errConflicts', ['mouse-config.area', 'column.type=expand']);
1104
+ (0, _log.errLog)('vxe.error.errConflicts', ['mouse-config.area', 'column.type=expand']);
1112
1105
  }
1113
1106
  }
1114
1107
 
@@ -1752,7 +1745,7 @@ var _default = (0, _vue.defineComponent)({
1752
1745
  } else if (layout === 'body') {
1753
1746
  var emptyBlockElem = elemStore[name + "-" + layout + "-emptyBlock"];
1754
1747
 
1755
- if (wrapperElem) {
1748
+ if ((0, _dom.isNodeElement)(wrapperElem)) {
1756
1749
  if (customMaxHeight) {
1757
1750
  wrapperElem.style.maxHeight = (fixedType ? customMaxHeight - headerHeight - (showFooter ? 0 : scrollbarHeight) : customMaxHeight - headerHeight) + "px";
1758
1751
  } else {
@@ -1766,7 +1759,7 @@ var _default = (0, _vue.defineComponent)({
1766
1759
 
1767
1760
 
1768
1761
  if (fixedWrapperElem) {
1769
- if (wrapperElem) {
1762
+ if ((0, _dom.isNodeElement)(wrapperElem)) {
1770
1763
  wrapperElem.style.top = headerHeight + "px";
1771
1764
  }
1772
1765
 
@@ -1783,14 +1776,7 @@ var _default = (0, _vue.defineComponent)({
1783
1776
  if (!mergeList.length && !spanMethod && !(keyboardConfig && keyboardOpts.isMerge)) {
1784
1777
  tableColumn = fixedColumn;
1785
1778
  } else {
1786
- tableColumn = visibleColumn; // 检查固定列是否被合并,合并范围是否超出固定列
1787
- // if (mergeList.length && !isMergeLeftFixedExceeded && fixedType === 'left') {
1788
- // tableColumn = fixedColumn
1789
- // } else if (mergeList.length && !isMergeRightFixedExceeded && fixedType === 'right') {
1790
- // tableColumn = fixedColumn
1791
- // } else {
1792
- // tableColumn = visibleColumn
1793
- // }
1779
+ tableColumn = visibleColumn;
1794
1780
  }
1795
1781
  } else {
1796
1782
  tableColumn = visibleColumn;
@@ -1818,14 +1804,7 @@ var _default = (0, _vue.defineComponent)({
1818
1804
  if (!mergeFooterList.length || !footerSpanMethod) {
1819
1805
  tableColumn = fixedColumn;
1820
1806
  } else {
1821
- tableColumn = visibleColumn; // 检查固定列是否被合并,合并范围是否超出固定列
1822
- // if (mergeFooterList.length && !isMergeFooterLeftFixedExceeded && fixedType === 'left') {
1823
- // tableColumn = fixedColumn
1824
- // } else if (mergeFooterList.length && !isMergeFooterRightFixedExceeded && fixedType === 'right') {
1825
- // tableColumn = fixedColumn
1826
- // } else {
1827
- // tableColumn = visibleColumn
1828
- // }
1807
+ tableColumn = visibleColumn;
1829
1808
  }
1830
1809
  } else {
1831
1810
  tableColumn = visibleColumn;
@@ -1836,7 +1815,7 @@ var _default = (0, _vue.defineComponent)({
1836
1815
  return previous + column.renderWidth;
1837
1816
  }, 0);
1838
1817
 
1839
- if (wrapperElem) {
1818
+ if ((0, _dom.isNodeElement)(wrapperElem)) {
1840
1819
  // 如果是固定列
1841
1820
  if (fixedWrapperElem) {
1842
1821
  wrapperElem.style.top = (customHeight > 0 ? customHeight - footerHeight : tableHeight + headerHeight) + "px";
@@ -2393,28 +2372,28 @@ var _default = (0, _vue.defineComponent)({
2393
2372
  // 树结构自动转换
2394
2373
  if (process.env.NODE_ENV === 'development') {
2395
2374
  if (!treeOpts.rowField) {
2396
- (0, _utils.errLog)('vxe.error.reqProp', ['tree-config.rowField']);
2375
+ (0, _log.errLog)('vxe.error.reqProp', ['tree-config.rowField']);
2397
2376
  }
2398
2377
 
2399
2378
  if (!treeOpts.parentField) {
2400
- (0, _utils.errLog)('vxe.error.reqProp', ['tree-config.parentField']);
2379
+ (0, _log.errLog)('vxe.error.reqProp', ['tree-config.parentField']);
2401
2380
  }
2402
2381
 
2403
2382
  if (!treeOpts.children) {
2404
- (0, _utils.errLog)('vxe.error.reqProp', ['tree-config.children']);
2383
+ (0, _log.errLog)('vxe.error.reqProp', ['tree-config.children']);
2405
2384
  }
2406
2385
 
2407
2386
  if (!treeOpts.mapChildren) {
2408
- (0, _utils.errLog)('vxe.error.reqProp', ['tree-config.mapChildren']);
2387
+ (0, _log.errLog)('vxe.error.reqProp', ['tree-config.mapChildren']);
2409
2388
  }
2410
2389
 
2411
2390
  if (treeOpts.children === treeOpts.mapChildren) {
2412
- (0, _utils.errLog)('vxe.error.errConflicts', ['tree-config.children', 'tree-config.mapChildren']);
2391
+ (0, _log.errLog)('vxe.error.errConflicts', ['tree-config.children', 'tree-config.mapChildren']);
2413
2392
  }
2414
2393
 
2415
2394
  fullData.forEach(function (row) {
2416
2395
  if (row[treeOpts.children] && row[treeOpts.children].length) {
2417
- (0, _utils.warnLog)('vxe.error.errConflicts', ['tree-config.transform', "row." + treeOpts.children]);
2396
+ (0, _log.warnLog)('vxe.error.errConflicts', ['tree-config.transform', "row." + treeOpts.children]);
2418
2397
  }
2419
2398
  });
2420
2399
  }
@@ -2454,15 +2433,15 @@ var _default = (0, _vue.defineComponent)({
2454
2433
  if (process.env.NODE_ENV === 'development') {
2455
2434
  if (sYLoad) {
2456
2435
  if (!(props.height || props.maxHeight)) {
2457
- (0, _utils.errLog)('vxe.error.reqProp', ['table.height | table.max-height | table.scroll-y={enabled: false}']);
2436
+ (0, _log.errLog)('vxe.error.reqProp', ['table.height | table.max-height | table.scroll-y={enabled: false}']);
2458
2437
  }
2459
2438
 
2460
2439
  if (!props.showOverflow) {
2461
- (0, _utils.warnLog)('vxe.error.reqProp', ['table.show-overflow']);
2440
+ (0, _log.warnLog)('vxe.error.reqProp', ['table.show-overflow']);
2462
2441
  }
2463
2442
 
2464
2443
  if (props.spanMethod) {
2465
- (0, _utils.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
2444
+ (0, _log.warnLog)('vxe.error.scrollErrProp', ['table.span-method']);
2466
2445
  }
2467
2446
  }
2468
2447
  }
@@ -2616,7 +2595,7 @@ var _default = (0, _vue.defineComponent)({
2616
2595
  }
2617
2596
 
2618
2597
  if (parent && column.fixed !== parent.fixed) {
2619
- (0, _utils.errLog)('vxe.error.groupFixed');
2598
+ (0, _log.errLog)('vxe.error.groupFixed');
2620
2599
  }
2621
2600
 
2622
2601
  if (isColGroup) {
@@ -2674,26 +2653,26 @@ var _default = (0, _vue.defineComponent)({
2674
2653
  scrollXLoad = false;
2675
2654
 
2676
2655
  if (process.env.NODE_ENV === 'development') {
2677
- (0, _utils.warnLog)('vxe.error.scrollXNotGroup');
2656
+ (0, _log.warnLog)('vxe.error.scrollXNotGroup');
2678
2657
  }
2679
2658
  }
2680
2659
 
2681
2660
  if (scrollXLoad) {
2682
2661
  if (process.env.NODE_ENV === 'development') {
2683
2662
  if (props.showHeader && !props.showHeaderOverflow) {
2684
- (0, _utils.warnLog)('vxe.error.reqProp', ['show-header-overflow']);
2663
+ (0, _log.warnLog)('vxe.error.reqProp', ['show-header-overflow']);
2685
2664
  }
2686
2665
 
2687
2666
  if (props.showFooter && !props.showFooterOverflow) {
2688
- (0, _utils.warnLog)('vxe.error.reqProp', ['show-footer-overflow']);
2667
+ (0, _log.warnLog)('vxe.error.reqProp', ['show-footer-overflow']);
2689
2668
  }
2690
2669
 
2691
2670
  if (props.spanMethod) {
2692
- (0, _utils.warnLog)('vxe.error.scrollErrProp', ['span-method']);
2671
+ (0, _log.warnLog)('vxe.error.scrollErrProp', ['span-method']);
2693
2672
  }
2694
2673
 
2695
2674
  if (props.footerSpanMethod) {
2696
- (0, _utils.warnLog)('vxe.error.scrollErrProp', ['footer-span-method']);
2675
+ (0, _log.warnLog)('vxe.error.scrollErrProp', ['footer-span-method']);
2697
2676
  }
2698
2677
  }
2699
2678
 
@@ -2748,7 +2727,7 @@ var _default = (0, _vue.defineComponent)({
2748
2727
 
2749
2728
  if (process.env.NODE_ENV === 'development') {
2750
2729
  if ((reactData.scrollXLoad || reactData.scrollYLoad) && reactData.expandColumn) {
2751
- (0, _utils.warnLog)('vxe.error.scrollErrProp', ['column.type=expand']);
2730
+ (0, _log.warnLog)('vxe.error.scrollErrProp', ['column.type=expand']);
2752
2731
  }
2753
2732
  }
2754
2733
 
@@ -2972,12 +2951,34 @@ var _default = (0, _vue.defineComponent)({
2972
2951
  },
2973
2952
 
2974
2953
  /**
2975
- * 手动处理数据
2954
+ * 手动处理数据,用于手动排序与筛选
2976
2955
  * 对于手动更改了排序、筛选...等条件后需要重新处理数据时可能会用到
2977
2956
  */
2978
2957
  updateData: function updateData() {
2979
- return tablePrivateMethods.handleTableData(true).then(tableMethods.updateFooter).then(function () {
2980
- return tableMethods.recalculate();
2958
+ var scrollXLoad = reactData.scrollXLoad,
2959
+ scrollYLoad = reactData.scrollYLoad;
2960
+ return tablePrivateMethods.handleTableData(true).then(function () {
2961
+ tableMethods.updateFooter();
2962
+
2963
+ if (scrollXLoad || scrollYLoad) {
2964
+ if (scrollXLoad) {
2965
+ tablePrivateMethods.updateScrollXSpace();
2966
+ }
2967
+
2968
+ if (scrollYLoad) {
2969
+ tablePrivateMethods.updateScrollYSpace();
2970
+ }
2971
+
2972
+ return tableMethods.refreshScroll();
2973
+ }
2974
+ }).then(function () {
2975
+ tablePrivateMethods.updateCellAreas();
2976
+ return tableMethods.recalculate(true);
2977
+ }).then(function () {
2978
+ // 存在滚动行为未结束情况
2979
+ setTimeout(function () {
2980
+ return $xetable.recalculate();
2981
+ }, 50);
2981
2982
  });
2982
2983
  },
2983
2984
 
@@ -3058,7 +3059,7 @@ var _default = (0, _vue.defineComponent)({
3058
3059
  reactData.tableData = tableData.slice(0);
3059
3060
  } else {
3060
3061
  if (process.env.NODE_ENV === 'development') {
3061
- (0, _utils.warnLog)('vxe.error.reqProp', ['keep-source']);
3062
+ (0, _log.warnLog)('vxe.error.reqProp', ['keep-source']);
3062
3063
  }
3063
3064
  }
3064
3065
 
@@ -3292,7 +3293,7 @@ var _default = (0, _vue.defineComponent)({
3292
3293
 
3293
3294
  if (!keepSource) {
3294
3295
  if (process.env.NODE_ENV === 'development') {
3295
- (0, _utils.warnLog)('vxe.error.reqProp', ['keep-source']);
3296
+ (0, _log.warnLog)('vxe.error.reqProp', ['keep-source']);
3296
3297
  }
3297
3298
 
3298
3299
  return (0, _vue.nextTick)();
@@ -3684,18 +3685,24 @@ var _default = (0, _vue.defineComponent)({
3684
3685
  var tableBodyElem = tableBody ? tableBody.$el : null;
3685
3686
  var leftBodyElem = leftBody ? leftBody.$el : null;
3686
3687
  var rightBodyElem = rightBody ? rightBody.$el : null;
3687
- var tableFooterElem = tableFooter ? tableFooter.$el : null; // 还原滚动条位置
3688
+ var tableFooterElem = tableFooter ? tableFooter.$el : null;
3689
+ return new Promise(function (resolve) {
3690
+ // 还原滚动条位置
3691
+ if (lastScrollLeft || lastScrollTop) {
3692
+ return (0, _util.restoreScrollLocation)($xetable, lastScrollLeft, lastScrollTop).then(resolve).then(function () {
3693
+ // 存在滚动行为未结束情况
3694
+ setTimeout(resolve, 30);
3695
+ });
3696
+ } // 重置
3688
3697
 
3689
- if (lastScrollLeft || lastScrollTop) {
3690
- return (0, _util.restoreScrollLocation)($xetable, lastScrollLeft, lastScrollTop);
3691
- } // 重置
3692
3698
 
3699
+ (0, _dom.setScrollTop)(tableBodyElem, lastScrollTop);
3700
+ (0, _dom.setScrollTop)(leftBodyElem, lastScrollTop);
3701
+ (0, _dom.setScrollTop)(rightBodyElem, lastScrollTop);
3702
+ (0, _dom.setScrollLeft)(tableFooterElem, lastScrollLeft); // 存在滚动行为未结束情况
3693
3703
 
3694
- (0, _dom.setScrollTop)(tableBodyElem, lastScrollTop);
3695
- (0, _dom.setScrollTop)(leftBodyElem, lastScrollTop);
3696
- (0, _dom.setScrollTop)(rightBodyElem, lastScrollTop);
3697
- (0, _dom.setScrollLeft)(tableFooterElem, lastScrollLeft);
3698
- return (0, _vue.nextTick)();
3704
+ setTimeout(resolve, 30);
3705
+ });
3699
3706
  },
3700
3707
 
3701
3708
  /**
@@ -3738,7 +3745,7 @@ var _default = (0, _vue.defineComponent)({
3738
3745
  * 关闭 tooltip
3739
3746
  */
3740
3747
  closeTooltip: function closeTooltip() {
3741
- var tooltipStore = internalData.tooltipStore;
3748
+ var tooltipStore = reactData.tooltipStore;
3742
3749
  var $tooltip = refTooltip.value;
3743
3750
  var $commTip = refCommTooltip.value;
3744
3751
 
@@ -4444,7 +4451,7 @@ var _default = (0, _vue.defineComponent)({
4444
4451
  },
4445
4452
  reloadExpandContent: function reloadExpandContent(row) {
4446
4453
  if (process.env.NODE_ENV === 'development') {
4447
- (0, _utils.warnLog)('vxe.error.delFunc', ['reloadExpandContent', 'reloadRowExpand']);
4454
+ (0, _log.warnLog)('vxe.error.delFunc', ['reloadExpandContent', 'reloadRowExpand']);
4448
4455
  } // 即将废弃
4449
4456
 
4450
4457
 
@@ -4648,7 +4655,7 @@ var _default = (0, _vue.defineComponent)({
4648
4655
  },
4649
4656
  reloadTreeChilds: function reloadTreeChilds(row) {
4650
4657
  if (process.env.NODE_ENV === 'development') {
4651
- (0, _utils.warnLog)('vxe.error.delFunc', ['reloadTreeChilds', 'reloadTreeExpand']);
4658
+ (0, _log.warnLog)('vxe.error.delFunc', ['reloadTreeChilds', 'reloadTreeExpand']);
4652
4659
  } // 即将废弃
4653
4660
 
4654
4661
 
@@ -4956,7 +4963,7 @@ var _default = (0, _vue.defineComponent)({
4956
4963
  */
4957
4964
  setMergeCells: function setMergeCells(merges) {
4958
4965
  if (props.spanMethod) {
4959
- (0, _utils.errLog)('vxe.error.errConflicts', ['merge-cells', 'span-method']);
4966
+ (0, _log.errLog)('vxe.error.errConflicts', ['merge-cells', 'span-method']);
4960
4967
  }
4961
4968
 
4962
4969
  setMerges(merges, reactData.mergeList, internalData.afterFullData);
@@ -4971,7 +4978,7 @@ var _default = (0, _vue.defineComponent)({
4971
4978
  */
4972
4979
  removeMergeCells: function removeMergeCells(merges) {
4973
4980
  if (props.spanMethod) {
4974
- (0, _utils.errLog)('vxe.error.errConflicts', ['merge-cells', 'span-method']);
4981
+ (0, _log.errLog)('vxe.error.errConflicts', ['merge-cells', 'span-method']);
4975
4982
  }
4976
4983
 
4977
4984
  var rest = removeMerges(merges, reactData.mergeList, internalData.afterFullData);
@@ -4997,7 +5004,7 @@ var _default = (0, _vue.defineComponent)({
4997
5004
  },
4998
5005
  setMergeFooterItems: function setMergeFooterItems(merges) {
4999
5006
  if (props.footerSpanMethod) {
5000
- (0, _utils.errLog)('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
5007
+ (0, _log.errLog)('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
5001
5008
  }
5002
5009
 
5003
5010
  setMerges(merges, reactData.mergeFooterList);
@@ -5007,7 +5014,7 @@ var _default = (0, _vue.defineComponent)({
5007
5014
  },
5008
5015
  removeMergeFooterItems: function removeMergeFooterItems(merges) {
5009
5016
  if (props.footerSpanMethod) {
5010
- (0, _utils.errLog)('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
5017
+ (0, _log.errLog)('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
5011
5018
  }
5012
5019
 
5013
5020
  var rest = removeMerges(merges, reactData.mergeFooterList);
@@ -5052,7 +5059,7 @@ var _default = (0, _vue.defineComponent)({
5052
5059
  $table: $xetable
5053
5060
  });
5054
5061
  } else {
5055
- (0, _utils.errLog)('vxe.error.barUnableLink');
5062
+ (0, _log.errLog)('vxe.error.barUnableLink');
5056
5063
  }
5057
5064
 
5058
5065
  return (0, _vue.nextTick)();
@@ -5206,6 +5213,8 @@ var _default = (0, _vue.defineComponent)({
5206
5213
 
5207
5214
  if (isEsc) {
5208
5215
  tablePrivateMethods.preventEvent(evnt, 'event.keydown', null, function () {
5216
+ tableMethods.dispatchEvent('keydown-start', {}, evnt);
5217
+
5209
5218
  if (keyboardConfig && mouseConfig && mouseOpts.area && $xetable.handleKeyboardEvent) {
5210
5219
  $xetable.handleKeyboardEvent(evnt);
5211
5220
  } else if (actived.row || filterStore.visible || ctxMenuStore.visible) {
@@ -5233,6 +5242,7 @@ var _default = (0, _vue.defineComponent)({
5233
5242
  }
5234
5243
 
5235
5244
  tableMethods.dispatchEvent('keydown', {}, evnt);
5245
+ tableMethods.dispatchEvent('keydown-end', {}, evnt);
5236
5246
  });
5237
5247
  }
5238
5248
  };
@@ -5572,10 +5582,17 @@ var _default = (0, _vue.defineComponent)({
5572
5582
  tableMethods.recalculate(true);
5573
5583
  };
5574
5584
 
5575
- var handleTargetEnterEvent = function handleTargetEnterEvent() {
5585
+ var handleTargetEnterEvent = function handleTargetEnterEvent(isClear) {
5586
+ var $tooltip = refTooltip.value;
5576
5587
  clearTimeout(internalData.tooltipTimeout);
5577
- internalData.tooltipActive = true;
5578
- tableMethods.closeTooltip();
5588
+
5589
+ if (isClear) {
5590
+ tableMethods.closeTooltip();
5591
+ } else {
5592
+ if ($tooltip) {
5593
+ $tooltip.setActived(true);
5594
+ }
5595
+ }
5579
5596
  };
5580
5597
  /**
5581
5598
  * 处理显示 tooltip
@@ -5587,13 +5604,12 @@ var _default = (0, _vue.defineComponent)({
5587
5604
 
5588
5605
  var handleTooltip = function handleTooltip(evnt, cell, overflowElem, tipElem, params) {
5589
5606
  params.cell = cell;
5590
- var tooltipStore = internalData.tooltipStore;
5607
+ var tooltipStore = reactData.tooltipStore;
5591
5608
  var tooltipOpts = computeTooltipOpts.value;
5592
5609
  var column = params.column,
5593
5610
  row = params.row;
5594
5611
  var showAll = tooltipOpts.showAll,
5595
5612
  contentMethod = tooltipOpts.contentMethod;
5596
- var $tooltip = refTooltip.value;
5597
5613
  var customContent = contentMethod ? contentMethod(params) : null;
5598
5614
  var useCustom = contentMethod && !_xeUtils.default.eqNull(customContent);
5599
5615
  var content = useCustom ? customContent : (column.type === 'html' ? overflowElem.innerText : overflowElem.textContent).trim();
@@ -5603,12 +5619,16 @@ var _default = (0, _vue.defineComponent)({
5603
5619
  Object.assign(tooltipStore, {
5604
5620
  row: row,
5605
5621
  column: column,
5606
- visible: true
5622
+ visible: true,
5623
+ currOpts: null
5607
5624
  });
5625
+ (0, _vue.nextTick)(function () {
5626
+ var $tooltip = refTooltip.value;
5608
5627
 
5609
- if ($tooltip) {
5610
- $tooltip.open(isCellOverflow ? overflowElem : tipElem || overflowElem, (0, _utils.formatText)(content));
5611
- }
5628
+ if ($tooltip) {
5629
+ $tooltip.open(isCellOverflow ? overflowElem : tipElem || overflowElem, (0, _utils.formatText)(content));
5630
+ }
5631
+ });
5612
5632
  }
5613
5633
 
5614
5634
  return (0, _vue.nextTick)();
@@ -5875,7 +5895,7 @@ var _default = (0, _vue.defineComponent)({
5875
5895
  var columnWidthStorage_1;
5876
5896
 
5877
5897
  if (!id) {
5878
- (0, _utils.errLog)('vxe.error.reqProp', ['id']);
5898
+ (0, _log.errLog)('vxe.error.reqProp', ['id']);
5879
5899
  return;
5880
5900
  }
5881
5901
 
@@ -5912,7 +5932,7 @@ var _default = (0, _vue.defineComponent)({
5912
5932
  var colShows_1 = [];
5913
5933
 
5914
5934
  if (!id) {
5915
- (0, _utils.errLog)('vxe.error.reqProp', ['id']);
5935
+ (0, _log.errLog)('vxe.error.reqProp', ['id']);
5916
5936
  return;
5917
5937
  }
5918
5938
 
@@ -6233,18 +6253,23 @@ var _default = (0, _vue.defineComponent)({
6233
6253
  },
6234
6254
  triggerHeaderHelpEvent: function triggerHeaderHelpEvent(evnt, params) {
6235
6255
  var column = params.column;
6236
- var titleHelp = column.titleHelp;
6256
+ var titlePrefix = column.titlePrefix || column.titleHelp;
6237
6257
 
6238
- if (titleHelp.content || titleHelp.message) {
6239
- var tooltipStore = internalData.tooltipStore;
6240
- var $tooltip = refTooltip.value;
6241
- var content = (0, _utils.getFuncText)(titleHelp.content || titleHelp.message);
6242
- handleTargetEnterEvent();
6258
+ if (titlePrefix.content || titlePrefix.message) {
6259
+ var tooltipStore = reactData.tooltipStore;
6260
+ var content_1 = (0, _utils.getFuncText)(titlePrefix.content || titlePrefix.message);
6261
+ handleTargetEnterEvent(true);
6243
6262
  tooltipStore.visible = true;
6263
+ tooltipStore.currOpts = __assign(__assign({}, titlePrefix), {
6264
+ content: null
6265
+ });
6266
+ (0, _vue.nextTick)(function () {
6267
+ var $tooltip = refTooltip.value;
6244
6268
 
6245
- if ($tooltip) {
6246
- $tooltip.open(evnt.currentTarget, content);
6247
- }
6269
+ if ($tooltip) {
6270
+ $tooltip.open(evnt.currentTarget, content_1);
6271
+ }
6272
+ });
6248
6273
  }
6249
6274
  },
6250
6275
 
@@ -6252,10 +6277,10 @@ var _default = (0, _vue.defineComponent)({
6252
6277
  * 触发表头 tooltip 事件
6253
6278
  */
6254
6279
  triggerHeaderTooltipEvent: function triggerHeaderTooltipEvent(evnt, params) {
6255
- var tooltipStore = internalData.tooltipStore;
6280
+ var tooltipStore = reactData.tooltipStore;
6256
6281
  var column = params.column;
6257
6282
  var titleElem = evnt.currentTarget;
6258
- handleTargetEnterEvent();
6283
+ handleTargetEnterEvent(true);
6259
6284
 
6260
6285
  if (tooltipStore.column !== column || !tooltipStore.visible) {
6261
6286
  handleTooltip(evnt, titleElem, titleElem, null, params);
@@ -6268,13 +6293,13 @@ var _default = (0, _vue.defineComponent)({
6268
6293
  triggerBodyTooltipEvent: function triggerBodyTooltipEvent(evnt, params) {
6269
6294
  var editConfig = props.editConfig;
6270
6295
  var editStore = reactData.editStore;
6271
- var tooltipStore = internalData.tooltipStore;
6296
+ var tooltipStore = reactData.tooltipStore;
6272
6297
  var editOpts = computeEditOpts.value;
6273
6298
  var actived = editStore.actived;
6274
6299
  var row = params.row,
6275
6300
  column = params.column;
6276
6301
  var cell = evnt.currentTarget;
6277
- handleTargetEnterEvent();
6302
+ handleTargetEnterEvent(tooltipStore.column !== column || tooltipStore.row !== row);
6278
6303
 
6279
6304
  if ((0, _utils.isEnableConf)(editConfig)) {
6280
6305
  if (editOpts.mode === 'row' && actived.row === row || actived.row === row && actived.column === column) {
@@ -6305,9 +6330,9 @@ var _default = (0, _vue.defineComponent)({
6305
6330
  */
6306
6331
  triggerFooterTooltipEvent: function triggerFooterTooltipEvent(evnt, params) {
6307
6332
  var column = params.column;
6308
- var tooltipStore = internalData.tooltipStore;
6333
+ var tooltipStore = reactData.tooltipStore;
6309
6334
  var cell = evnt.currentTarget;
6310
- handleTargetEnterEvent();
6335
+ handleTargetEnterEvent(tooltipStore.column !== column || tooltipStore.row);
6311
6336
 
6312
6337
  if (tooltipStore.column !== column || !tooltipStore.visible) {
6313
6338
  handleTooltip(evnt, cell, cell.querySelector('.vxe-cell--item') || cell.children[0], null, params);
@@ -6315,13 +6340,17 @@ var _default = (0, _vue.defineComponent)({
6315
6340
  },
6316
6341
  handleTargetLeaveEvent: function handleTargetLeaveEvent() {
6317
6342
  var tooltipOpts = computeTooltipOpts.value;
6318
- internalData.tooltipActive = false;
6343
+ var $tooltip = refTooltip.value;
6344
+
6345
+ if ($tooltip) {
6346
+ $tooltip.setActived(false);
6347
+ }
6319
6348
 
6320
6349
  if (tooltipOpts.enterable) {
6321
6350
  internalData.tooltipTimeout = setTimeout(function () {
6322
- var $tooltip = refTooltip.value;
6351
+ $tooltip = refTooltip.value;
6323
6352
 
6324
- if ($tooltip && !$tooltip.reactData.isHover) {
6353
+ if ($tooltip && !$tooltip.isActived()) {
6325
6354
  tableMethods.closeTooltip();
6326
6355
  }
6327
6356
  }, tooltipOpts.leaveDelay);
@@ -6989,12 +7018,12 @@ var _default = (0, _vue.defineComponent)({
6989
7018
  if (process.env.NODE_ENV === 'development') {
6990
7019
  'openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',').forEach(function (name) {
6991
7020
  $xetable[name] = function () {
6992
- (0, _utils.errLog)('vxe.error.reqModule', ['Export']);
7021
+ (0, _log.errLog)('vxe.error.reqModule', ['Export']);
6993
7022
  };
6994
7023
  });
6995
7024
  'clearValidate,fullValidate,validate'.split(',').forEach(function (name) {
6996
7025
  $xetable[name] = function () {
6997
- (0, _utils.errLog)('vxe.error.reqModule', ['Validator']);
7026
+ (0, _log.errLog)('vxe.error.reqModule', ['Validator']);
6998
7027
  };
6999
7028
  });
7000
7029
  }
@@ -7092,7 +7121,7 @@ var _default = (0, _vue.defineComponent)({
7092
7121
 
7093
7122
  if (process.env.NODE_ENV === 'development') {
7094
7123
  if ((scrollXLoad || scrollYLoad) && expandColumn) {
7095
- (0, _utils.warnLog)('vxe.error.scrollErrProp', ['column.type=expand']);
7124
+ (0, _log.warnLog)('vxe.error.scrollErrProp', ['column.type=expand']);
7096
7125
  }
7097
7126
  }
7098
7127
 
@@ -7218,26 +7247,36 @@ var _default = (0, _vue.defineComponent)({
7218
7247
  var radioOpts = computeRadioOpts.value;
7219
7248
  var checkboxOpts = computeCheckboxOpts.value;
7220
7249
  var expandOpts = computeExpandOpts.value;
7250
+ var rowOpts = computeRowOpts.value;
7221
7251
 
7222
7252
  if (process.env.NODE_ENV === 'development') {
7223
- if (!props.rowId && (checkboxOpts.reserve || checkboxOpts.checkRowKeys || radioOpts.reserve || radioOpts.checkRowKey || expandOpts.expandRowKeys || treeOpts.expandRowKeys)) {
7224
- (0, _utils.warnLog)('vxe.error.reqProp', ['row-id']);
7253
+ // if (props.rowId) {
7254
+ // warnLog('vxe.error.delProp', ['rowId', 'row-config.keyField'])
7255
+ // }
7256
+ // if (props.rowKey) {
7257
+ // warnLog('vxe.error.delProp', ['rowId', 'row-config.useKey'])
7258
+ // }
7259
+ // if (props.columnKey) {
7260
+ // warnLog('vxe.error.delProp', ['rowId', 'column-config.useKey'])
7261
+ // }
7262
+ if (!(props.rowId || rowOpts.keyField) && (checkboxOpts.reserve || checkboxOpts.checkRowKeys || radioOpts.reserve || radioOpts.checkRowKey || expandOpts.expandRowKeys || treeOpts.expandRowKeys)) {
7263
+ (0, _log.warnLog)('vxe.error.reqProp', ['row-config.keyField']);
7225
7264
  }
7226
7265
 
7227
7266
  if (props.editConfig && (editOpts.showStatus || editOpts.showUpdateStatus || editOpts.showInsertStatus) && !props.keepSource) {
7228
- (0, _utils.warnLog)('vxe.error.reqProp', ['keep-source']);
7267
+ (0, _log.warnLog)('vxe.error.reqProp', ['keep-source']);
7229
7268
  }
7230
7269
 
7231
- if (treeConfig && treeOpts.line && (!props.rowKey || !showOverflow)) {
7232
- (0, _utils.warnLog)('vxe.error.reqProp', ['row-key | show-overflow']);
7270
+ if (treeConfig && treeOpts.line && (!(props.rowKey || rowOpts.useKey) || !showOverflow)) {
7271
+ (0, _log.warnLog)('vxe.error.reqProp', ['row-config.useKey | show-overflow']);
7233
7272
  }
7234
7273
 
7235
7274
  if (treeConfig && props.stripe) {
7236
- (0, _utils.warnLog)('vxe.error.noTree', ['stripe']);
7275
+ (0, _log.warnLog)('vxe.error.noTree', ['stripe']);
7237
7276
  }
7238
7277
 
7239
7278
  if (props.showFooter && !props.footerMethod) {
7240
- (0, _utils.warnLog)('vxe.error.reqProp', ['footer-method']);
7279
+ (0, _log.warnLog)('vxe.error.reqProp', ['footer-method']);
7241
7280
  } // 检查导入导出类型,如果自定义导入导出方法,则不校验类型
7242
7281
 
7243
7282
 
@@ -7247,13 +7286,13 @@ var _default = (0, _vue.defineComponent)({
7247
7286
  var importOpts = computeImportOpts.value;
7248
7287
 
7249
7288
  if (importConfig && importOpts.types && !importOpts.importMethod && !_xeUtils.default.includeArrays(_vXETable.VXETable.config.importTypes, importOpts.types)) {
7250
- (0, _utils.warnLog)('vxe.error.errProp', ["export-config.types=" + importOpts.types.join(','), importOpts.types.filter(function (type) {
7289
+ (0, _log.warnLog)('vxe.error.errProp', ["export-config.types=" + importOpts.types.join(','), importOpts.types.filter(function (type) {
7251
7290
  return _xeUtils.default.includes(_vXETable.VXETable.config.importTypes, type);
7252
7291
  }).join(',') || _vXETable.VXETable.config.importTypes.join(',')]);
7253
7292
  }
7254
7293
 
7255
7294
  if (exportConfig && exportOpts.types && !exportOpts.exportMethod && !_xeUtils.default.includeArrays(_vXETable.VXETable.config.exportTypes, exportOpts.types)) {
7256
- (0, _utils.warnLog)('vxe.error.errProp', ["export-config.types=" + exportOpts.types.join(','), exportOpts.types.filter(function (type) {
7295
+ (0, _log.warnLog)('vxe.error.errProp', ["export-config.types=" + exportOpts.types.join(','), exportOpts.types.filter(function (type) {
7257
7296
  return _xeUtils.default.includes(_vXETable.VXETable.config.exportTypes, type);
7258
7297
  }).join(',') || _vXETable.VXETable.config.exportTypes.join(',')]);
7259
7298
  }
@@ -7262,64 +7301,64 @@ var _default = (0, _vue.defineComponent)({
7262
7301
  if (process.env.NODE_ENV === 'development') {
7263
7302
  var customOpts = computeCustomOpts.value;
7264
7303
  var mouseOpts = computeMouseOpts.value;
7265
- var rowOpts = computeRowOpts.value;
7304
+ var rowOpts_1 = computeRowOpts.value;
7266
7305
 
7267
7306
  if (!props.id && props.customConfig && (customOpts.storage === true || customOpts.storage && customOpts.storage.resizable || customOpts.storage && customOpts.storage.visible)) {
7268
- (0, _utils.errLog)('vxe.error.reqProp', ['id']);
7307
+ (0, _log.errLog)('vxe.error.reqProp', ['id']);
7269
7308
  }
7270
7309
 
7271
7310
  if (props.treeConfig && checkboxOpts.range) {
7272
- (0, _utils.errLog)('vxe.error.noTree', ['checkbox-config.range']);
7311
+ (0, _log.errLog)('vxe.error.noTree', ['checkbox-config.range']);
7273
7312
  }
7274
7313
 
7275
- if (rowOpts.height && !props.showOverflow) {
7276
- (0, _utils.warnLog)('vxe.error.notProp', ['table.show-overflow']);
7314
+ if (rowOpts_1.height && !props.showOverflow) {
7315
+ (0, _log.warnLog)('vxe.error.notProp', ['table.show-overflow']);
7277
7316
  }
7278
7317
 
7279
7318
  if (!$xetable.handleUpdateCellAreas) {
7280
7319
  if (props.clipConfig) {
7281
- (0, _utils.warnLog)('vxe.error.notProp', ['clip-config']);
7320
+ (0, _log.warnLog)('vxe.error.notProp', ['clip-config']);
7282
7321
  }
7283
7322
 
7284
7323
  if (props.fnrConfig) {
7285
- (0, _utils.warnLog)('vxe.error.notProp', ['fnr-config']);
7324
+ (0, _log.warnLog)('vxe.error.notProp', ['fnr-config']);
7286
7325
  }
7287
7326
 
7288
7327
  if (mouseOpts.area) {
7289
- (0, _utils.errLog)('vxe.error.notProp', ['mouse-config.area']);
7328
+ (0, _log.errLog)('vxe.error.notProp', ['mouse-config.area']);
7290
7329
  return;
7291
7330
  }
7292
7331
  }
7293
7332
 
7294
7333
  if (mouseOpts.area && mouseOpts.selected) {
7295
- (0, _utils.warnLog)('vxe.error.errConflicts', ['mouse-config.area', 'mouse-config.selected']);
7334
+ (0, _log.warnLog)('vxe.error.errConflicts', ['mouse-config.area', 'mouse-config.selected']);
7296
7335
  }
7297
7336
 
7298
7337
  if (mouseOpts.area && checkboxOpts.range) {
7299
- (0, _utils.warnLog)('vxe.error.errConflicts', ['mouse-config.area', 'checkbox-config.range']);
7338
+ (0, _log.warnLog)('vxe.error.errConflicts', ['mouse-config.area', 'checkbox-config.range']);
7300
7339
  }
7301
7340
 
7302
7341
  if (props.treeConfig && mouseOpts.area) {
7303
- (0, _utils.errLog)('vxe.error.noTree', ['mouse-config.area']);
7342
+ (0, _log.errLog)('vxe.error.noTree', ['mouse-config.area']);
7304
7343
  }
7305
7344
  } // 检查是否有安装需要的模块
7306
7345
 
7307
7346
 
7308
7347
  if (process.env.NODE_ENV === 'development') {
7309
7348
  if (props.editConfig && !$xetable.insert) {
7310
- (0, _utils.errLog)('vxe.error.reqModule', ['Edit']);
7349
+ (0, _log.errLog)('vxe.error.reqModule', ['Edit']);
7311
7350
  }
7312
7351
 
7313
7352
  if (props.editRules && !$xetable.validate) {
7314
- (0, _utils.errLog)('vxe.error.reqModule', ['Validator']);
7353
+ (0, _log.errLog)('vxe.error.reqModule', ['Validator']);
7315
7354
  }
7316
7355
 
7317
7356
  if ((checkboxOpts.range || props.keyboardConfig || props.mouseConfig) && !$xetable.triggerCellMousedownEvent) {
7318
- (0, _utils.errLog)('vxe.error.reqModule', ['Keyboard']);
7357
+ (0, _log.errLog)('vxe.error.reqModule', ['Keyboard']);
7319
7358
  }
7320
7359
 
7321
7360
  if ((props.printConfig || props.importConfig || props.exportConfig) && !$xetable.exportData) {
7322
- (0, _utils.errLog)('vxe.error.reqModule', ['Export']);
7361
+ (0, _log.errLog)('vxe.error.reqModule', ['Export']);
7323
7362
  }
7324
7363
  }
7325
7364
 
@@ -7456,7 +7495,7 @@ var _default = (0, _vue.defineComponent)({
7456
7495
  filterStore = reactData.filterStore;
7457
7496
  var leftList = columnStore.leftList,
7458
7497
  rightList = columnStore.rightList;
7459
- var tooltipOpts = computeTooltipOpts.value;
7498
+ var tipConfig = computeTipConfig.value;
7460
7499
  var treeOpts = computeTreeOpts.value;
7461
7500
  var rowOpts = computeRowOpts.value;
7462
7501
  var columnOpts = computeColumnOpts.value;
@@ -7598,7 +7637,7 @@ var _default = (0, _vue.defineComponent)({
7598
7637
  */
7599
7638
  hasUseTooltip ? (0, _vue.h)((0, _vue.resolveComponent)('vxe-tooltip'), __assign({
7600
7639
  ref: refTooltip
7601
- }, tooltipOpts)) : (0, _vue.createCommentVNode)()]);
7640
+ }, tipConfig)) : (0, _vue.createCommentVNode)()]);
7602
7641
  };
7603
7642
 
7604
7643
  $xetable.renderVN = renderVN;