vxe-table 3.5.0-beta.0 → 3.5.0-beta.3

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 (61) hide show
  1. package/helper/vetur/attributes.json +30 -10
  2. package/helper/vetur/tags.json +7 -2
  3. package/lib/form/src/form-item.js +2 -2
  4. package/lib/form/src/form-item.min.js +1 -1
  5. package/lib/form/src/form.js +32 -53
  6. package/lib/form/src/form.min.js +1 -1
  7. package/lib/form/src/render.js +14 -11
  8. package/lib/form/src/render.min.js +1 -1
  9. package/lib/index.css +1 -1
  10. package/lib/index.umd.js +410 -441
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/select/src/select.js +16 -5
  13. package/lib/select/src/select.min.js +1 -1
  14. package/lib/select/style/style.css +1 -1
  15. package/lib/select/style/style.min.css +1 -1
  16. package/lib/style.css +1 -1
  17. package/lib/style.min.css +1 -1
  18. package/lib/table/src/body.js +2 -5
  19. package/lib/table/src/body.min.js +1 -1
  20. package/lib/table/src/cell.js +3 -3
  21. package/lib/table/src/cell.min.js +1 -1
  22. package/lib/table/src/column.js +3 -1
  23. package/lib/table/src/column.min.js +1 -1
  24. package/lib/table/src/columnInfo.js +1 -0
  25. package/lib/table/src/columnInfo.min.js +1 -1
  26. package/lib/table/src/methods.js +184 -188
  27. package/lib/table/src/methods.min.js +1 -1
  28. package/lib/table/src/table.js +42 -73
  29. package/lib/table/src/table.min.js +1 -1
  30. package/lib/table/src/util.js +14 -0
  31. package/lib/table/src/util.min.js +1 -1
  32. package/lib/tools/log.js +1 -1
  33. package/lib/tools/log.min.js +1 -1
  34. package/lib/tools/utils.js +0 -13
  35. package/lib/tools/utils.min.js +1 -1
  36. package/lib/tooltip/src/tooltip.js +51 -28
  37. package/lib/tooltip/src/tooltip.min.js +1 -1
  38. package/lib/tooltip/style/style.css +1 -1
  39. package/lib/tooltip/style/style.min.css +1 -1
  40. package/lib/v-x-e-table/index.js +1 -1
  41. package/lib/v-x-e-table/index.min.js +1 -1
  42. package/lib/v-x-e-table/src/conf.js +13 -8
  43. package/lib/v-x-e-table/src/conf.min.js +1 -1
  44. package/package.json +1 -1
  45. package/packages/form/src/form-item.js +2 -2
  46. package/packages/form/src/form.js +12 -25
  47. package/packages/form/src/render.js +7 -7
  48. package/packages/select/src/select.js +14 -5
  49. package/packages/table/src/body.js +3 -3
  50. package/packages/table/src/cell.js +3 -3
  51. package/packages/table/src/column.js +3 -1
  52. package/packages/table/src/columnInfo.js +1 -0
  53. package/packages/table/src/methods.js +34 -50
  54. package/packages/table/src/table.js +34 -67
  55. package/packages/table/src/util.js +11 -0
  56. package/packages/tools/utils.js +0 -11
  57. package/packages/tooltip/src/tooltip.js +44 -25
  58. package/packages/v-x-e-table/src/conf.js +13 -8
  59. package/styles/select.scss +1 -1
  60. package/styles/tooltip.scss +1 -1
  61. package/types/table.d.ts +6 -6
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "vxe-table/resizable": {
27
27
  "type": "boolean",
28
- "description": "所有的列是否允许拖动列宽调整大小"
28
+ "description": "所有的列是否允许拖动列宽调整大小,被 column-config.resizable 替换"
29
29
  },
30
30
  "vxe-table/stripe": {
31
31
  "type": "boolean",
@@ -65,19 +65,19 @@
65
65
  },
66
66
  "vxe-table/highlight-current-row": {
67
67
  "type": "boolean",
68
- "description": "是否要高亮当前行"
68
+ "description": "是否要高亮当前行,被 row-config.isCurrent 替换"
69
69
  },
70
70
  "vxe-table/highlight-hover-row": {
71
71
  "type": "boolean",
72
- "description": "鼠标移到行是否要高亮显示"
72
+ "description": "鼠标移到行是否要高亮显示,被 row-config.isHover 替换"
73
73
  },
74
74
  "vxe-table/highlight-current-column": {
75
75
  "type": "boolean",
76
- "description": "是否要高亮当前列"
76
+ "description": "是否要高亮当前列,被 column-config.isCurrent 替换"
77
77
  },
78
78
  "vxe-table/highlight-hover-column": {
79
79
  "type": "boolean",
80
- "description": "鼠标移到列是否要高亮显示"
80
+ "description": "鼠标移到列是否要高亮显,被 column-config.isHover 替换示"
81
81
  },
82
82
  "vxe-table/row-class-name": {
83
83
  "type": "string | (({ row, rowindex, $rowindex }) => any)",
@@ -521,7 +521,7 @@
521
521
  },
522
522
  "vxe-grid/resizable": {
523
523
  "type": "boolean",
524
- "description": "所有的列是否允许拖动列宽调整大小"
524
+ "description": "所有的列是否允许拖动列宽调整大小,被 column-config.resizable 替换"
525
525
  },
526
526
  "vxe-grid/stripe": {
527
527
  "type": "boolean",
@@ -561,19 +561,19 @@
561
561
  },
562
562
  "vxe-grid/highlight-current-row": {
563
563
  "type": "boolean",
564
- "description": "是否要高亮当前行"
564
+ "description": "是否要高亮当前行,被 row-config.isCurrent 替换"
565
565
  },
566
566
  "vxe-grid/highlight-hover-row": {
567
567
  "type": "boolean",
568
- "description": "鼠标移到行是否要高亮显示"
568
+ "description": "鼠标移到行是否要高亮显示,被 row-config.isHover 替换"
569
569
  },
570
570
  "vxe-grid/highlight-current-column": {
571
571
  "type": "boolean",
572
- "description": "是否要高亮当前列"
572
+ "description": "是否要高亮当前列,被 column-config.isCurrent 替换"
573
573
  },
574
574
  "vxe-grid/highlight-hover-column": {
575
575
  "type": "boolean",
576
- "description": "鼠标移到列是否要高亮显示"
576
+ "description": "鼠标移到列是否要高亮显,被 column-config.isHover 替换示"
577
577
  },
578
578
  "vxe-grid/row-class-name": {
579
579
  "type": "string | (({ row, rowindex, $rowindex }) => any)",
@@ -951,6 +951,10 @@
951
951
  "type": "boolean",
952
952
  "description": "是否禁用"
953
953
  },
954
+ "vxe-radio/strict": {
955
+ "type": "boolean",
956
+ "description": "严格模式,选中后不能取消"
957
+ },
954
958
  "vxe-radio/name": {
955
959
  "type": "string",
956
960
  "description": "原生 name 属性"
@@ -967,6 +971,10 @@
967
971
  "type": "boolean",
968
972
  "description": "是否禁用"
969
973
  },
974
+ "vxe-radio-group/strict": {
975
+ "type": "boolean",
976
+ "description": "严格模式,选中后不能取消"
977
+ },
970
978
  "vxe-radio-button/value": {
971
979
  "type": "any",
972
980
  "description": "v-model 绑定值"
@@ -983,6 +991,10 @@
983
991
  "type": "boolean",
984
992
  "description": "是否禁用"
985
993
  },
994
+ "vxe-radio-button/strict": {
995
+ "type": "boolean",
996
+ "description": "严格模式,选中后不能取消"
997
+ },
986
998
  "vxe-checkbox/value": {
987
999
  "type": "string | number | boolean",
988
1000
  "description": "v-model 绑定值"
@@ -1387,6 +1399,10 @@
1387
1399
  "type": "boolean",
1388
1400
  "description": "鼠标是否可进入到 tooltip 中"
1389
1401
  },
1402
+ "vxe-tooltip/enter-delay": {
1403
+ "type": "number",
1404
+ "description": "鼠标移入后延时多少才显示 tooltip"
1405
+ },
1390
1406
  "vxe-tooltip/leave-delay": {
1391
1407
  "type": "number",
1392
1408
  "description": "鼠标移出后延时多少才隐藏 tooltip"
@@ -1727,6 +1743,10 @@
1727
1743
  "type": "any",
1728
1744
  "description": "纵向虚拟滚动配置"
1729
1745
  },
1746
+ "vxe-pulldown/model-value": {
1747
+ "type": "boolean",
1748
+ "description": "v-model 绑定值"
1749
+ },
1730
1750
  "vxe-pulldown/size": {
1731
1751
  "type": "string",
1732
1752
  "description": "尺寸"
@@ -276,6 +276,7 @@
276
276
  "content",
277
277
  "size",
278
278
  "disabled",
279
+ "strict",
279
280
  "name"
280
281
  ],
281
282
  "description": "单选框"
@@ -284,7 +285,8 @@
284
285
  "attributes": [
285
286
  "value",
286
287
  "size",
287
- "disabled"
288
+ "disabled",
289
+ "strict"
288
290
  ],
289
291
  "subtags": [
290
292
  "vxe-radio",
@@ -297,7 +299,8 @@
297
299
  "value",
298
300
  "label",
299
301
  "content",
300
- "disabled"
302
+ "disabled",
303
+ "strict"
301
304
  ],
302
305
  "description": "单选按钮"
303
306
  },
@@ -454,6 +457,7 @@
454
457
  "z-index",
455
458
  "is-arrow",
456
459
  "enterable",
460
+ "enter-delay",
457
461
  "leave-delay"
458
462
  ],
459
463
  "description": "工具提示"
@@ -572,6 +576,7 @@
572
576
  },
573
577
  "vxe-pulldown": {
574
578
  "attributes": [
579
+ "model-value",
575
580
  "size",
576
581
  "disabled",
577
582
  "placement",
@@ -117,9 +117,9 @@ var renderItem = function renderItem(h, _vm, item, slots) {
117
117
 
118
118
  var ons = showTooltip ? {
119
119
  mouseenter: function mouseenter(evnt) {
120
- _vm.triggerHeaderHelpEvent(evnt, params);
120
+ _vm.triggerTitleTipEvent(evnt, params);
121
121
  },
122
- mouseleave: _vm.handleTargetLeaveEvent
122
+ mouseleave: _vm.handleTitleTipLeaveEvent
123
123
  } : {};
124
124
  return h('div', {
125
125
  class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? _xeUtils.default.isFunction(className) ? className(params) : className : '', {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_util=require("./util"),_render=require("./render");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var props={title:String,field:String,size:String,span:[String,Number],align:String,titleAlign:String,titleWidth:[String,Number],className:[String,Function],titleOverflow:{type:[Boolean,String],default:null},titlePrefix:Object,titleSuffix:Object,resetValue:{default:null},visible:{type:Boolean,default:null},visibleMethod:Function,folding:Boolean,collapseNode:Boolean,itemRender:Object},watch={};Object.keys(props).forEach(function(t){watch[t]=function(e){this.itemConfig.update(t,e)}});var renderItem=function(e,t,i,l){var n,r=t.rules,o=t.data,a=t.collapseAll,s=t.validOpts,u=t.titleOverflow,d=i.title,f=i.folding,c=i.visible,m=i.visibleMethod,v=i.field,g=i.collapseNode,p=i.itemRender,x=i.showError,_=i.errRule,h=i.className,b=i.titleOverflow,O=(0,_utils.isEnableConf)(p)?_vXETable.default.renderer.get(p.name):null,q=i.span||t.span,I=i.align||t.align,N=i.titleAlign||t.titleAlign,S=i.titleWidth||t.titleWidth,w=m,m=_xeUtils.default.isUndefined(b)||_xeUtils.default.isNull(b)?u:b,u="title"===m,b=!0===m||"tooltip"===m,m=u||b||"ellipsis"===m,y={data:o,property:v,item:i,$form:t};!w&&O&&O.itemVisibleMethod&&(w=O.itemVisibleMethod),!r||(F=r[v])&&(n=F.some(function(e){return e.required}));var F=[];l&&l.default?F=t.callSlot(l.default,y,e):O&&O.renderItemContent?F=O.renderItemContent.call(t,e,p,y):O&&O.renderItem?F=O.renderItem.call(t,e,p,y):v&&(F=["".concat(_xeUtils.default.get(o,v))]);b=b?{mouseenter:function(e){t.triggerHeaderHelpEvent(e,y)},mouseleave:t.handleTargetLeaveEvent}:{};return e("div",{class:["vxe-form--item",i.id,q?"vxe-col--".concat(q," is--span"):null,h?_xeUtils.default.isFunction(h)?h(y):h:"",{"is--title":d,"is--required":n,"is--hidden":!1===c||f&&a,"is--active":!w||w(y),"is--error":x}]},[e("div",{class:"vxe-form--item-inner"},[d||l&&l.title?e("div",{class:["vxe-form--item-title",N?"align--".concat(N):null,{"is--ellipsis":m}],style:S?{width:isNaN(S)?S:"".concat(S,"px")}:null,attrs:{title:u?(0,_utils.getFuncText)(d):null},on:b},(0,_render.renderTitle)(e,t,i)):null,e("div",{class:["vxe-form--item-content",I?"align--".concat(I):null]},F.concat([g?e("div",{class:"vxe-form--item-trigger-node",on:{click:t.toggleCollapseEvent}},[e("span",{class:"vxe-form--item-trigger-text"},a?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),e("i",{class:["vxe-form--item-trigger-icon",a?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})]):null,_&&s.showMessage?e("div",{class:"vxe-form--item-valid",style:_.maxWidth?{width:"".concat(_.maxWidth,"px")}:null},_.message):null]))])])},_default={name:"VxeFormItem",props:props,inject:{$xeform:{default:null},xeformgather:{default:null}},data:function(){return{itemConfig:null}},watch:watch,mounted:function(){(0,_util.assemItem)(this)},created:function(){this.itemConfig=(0,_util.createItem)(this.$xeform,this)},destroyed:function(){(0,_util.destroyItem)(this)},render:function(e){var t=this.$xeform;return t&&t.customLayout?renderItem(e,t,this.itemConfig,this.$scopedSlots):e("div")}};exports.default=_default;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_util=require("./util"),_render=require("./render");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var props={title:String,field:String,size:String,span:[String,Number],align:String,titleAlign:String,titleWidth:[String,Number],className:[String,Function],titleOverflow:{type:[Boolean,String],default:null},titlePrefix:Object,titleSuffix:Object,resetValue:{default:null},visible:{type:Boolean,default:null},visibleMethod:Function,folding:Boolean,collapseNode:Boolean,itemRender:Object},watch={};Object.keys(props).forEach(function(t){watch[t]=function(e){this.itemConfig.update(t,e)}});var renderItem=function(e,t,i,l){var n,r=t.rules,o=t.data,a=t.collapseAll,s=t.validOpts,u=t.titleOverflow,d=i.title,f=i.folding,c=i.visible,m=i.visibleMethod,v=i.field,g=i.collapseNode,p=i.itemRender,x=i.showError,_=i.errRule,h=i.className,b=i.titleOverflow,O=(0,_utils.isEnableConf)(p)?_vXETable.default.renderer.get(p.name):null,q=i.span||t.span,I=i.align||t.align,N=i.titleAlign||t.titleAlign,S=i.titleWidth||t.titleWidth,w=m,m=_xeUtils.default.isUndefined(b)||_xeUtils.default.isNull(b)?u:b,u="title"===m,b=!0===m||"tooltip"===m,m=u||b||"ellipsis"===m,y={data:o,property:v,item:i,$form:t};!w&&O&&O.itemVisibleMethod&&(w=O.itemVisibleMethod),!r||(F=r[v])&&(n=F.some(function(e){return e.required}));var F=[];l&&l.default?F=t.callSlot(l.default,y,e):O&&O.renderItemContent?F=O.renderItemContent.call(t,e,p,y):O&&O.renderItem?F=O.renderItem.call(t,e,p,y):v&&(F=["".concat(_xeUtils.default.get(o,v))]);b=b?{mouseenter:function(e){t.triggerTitleTipEvent(e,y)},mouseleave:t.handleTitleTipLeaveEvent}:{};return e("div",{class:["vxe-form--item",i.id,q?"vxe-col--".concat(q," is--span"):null,h?_xeUtils.default.isFunction(h)?h(y):h:"",{"is--title":d,"is--required":n,"is--hidden":!1===c||f&&a,"is--active":!w||w(y),"is--error":x}]},[e("div",{class:"vxe-form--item-inner"},[d||l&&l.title?e("div",{class:["vxe-form--item-title",N?"align--".concat(N):null,{"is--ellipsis":m}],style:S?{width:isNaN(S)?S:"".concat(S,"px")}:null,attrs:{title:u?(0,_utils.getFuncText)(d):null},on:b},(0,_render.renderTitle)(e,t,i)):null,e("div",{class:["vxe-form--item-content",I?"align--".concat(I):null]},F.concat([g?e("div",{class:"vxe-form--item-trigger-node",on:{click:t.toggleCollapseEvent}},[e("span",{class:"vxe-form--item-trigger-text"},a?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),e("i",{class:["vxe-form--item-trigger-icon",a?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})]):null,_&&s.showMessage?e("div",{class:"vxe-form--item-valid",style:_.maxWidth?{width:"".concat(_.maxWidth,"px")}:null},_.message):null]))])])},_default={name:"VxeFormItem",props:props,inject:{$xeform:{default:null},xeformgather:{default:null}},data:function(){return{itemConfig:null}},watch:watch,mounted:function(){(0,_util.assemItem)(this)},created:function(){this.itemConfig=(0,_util.createItem)(this.$xeform,this)},destroyed:function(){(0,_util.destroyItem)(this)},render:function(e){var t=this.$xeform;return t&&t.customLayout?renderItem(e,t,this.itemConfig,this.$scopedSlots):e("div")}};exports.default=_default;
@@ -31,10 +31,6 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
31
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
33
 
34
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
35
-
36
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
37
-
38
34
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
35
 
40
36
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -120,7 +116,7 @@ function renderItems(h, _vm, itemList) {
120
116
  collapseAll = _vm.collapseAll,
121
117
  validOpts = _vm.validOpts,
122
118
  allTitleOverflow = _vm.titleOverflow;
123
- return itemList.map(function (item, index) {
119
+ return itemList.map(function (item) {
124
120
  var slots = item.slots,
125
121
  title = item.title,
126
122
  folding = item.folding,
@@ -196,9 +192,9 @@ function renderItems(h, _vm, itemList) {
196
192
 
197
193
  var ons = showTooltip ? {
198
194
  mouseenter: function mouseenter(evnt) {
199
- _vm.triggerHeaderHelpEvent(evnt, params);
195
+ _vm.triggerTitleTipEvent(evnt, params);
200
196
  },
201
- mouseleave: _vm.handleTargetLeaveEvent
197
+ mouseleave: _vm.handleTitleTipLeaveEvent
202
198
  } : {};
203
199
  return h('div', {
204
200
  class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? _xeUtils.default.isFunction(className) ? className(params) : className : '', {
@@ -208,7 +204,7 @@ function renderItems(h, _vm, itemList) {
208
204
  'is--active': !itemVisibleMethod || itemVisibleMethod(params),
209
205
  'is--error': showError
210
206
  }],
211
- key: index
207
+ key: item.id
212
208
  }, [h('div', {
213
209
  class: 'vxe-form--item-inner'
214
210
  }, [title || slots && slots.title ? h('div', {
@@ -308,6 +304,7 @@ var _default2 = {
308
304
  }
309
305
  },
310
306
  validConfig: Object,
307
+ tooltipConfig: Object,
311
308
  customLayout: {
312
309
  type: Boolean,
313
310
  default: function _default() {
@@ -321,7 +318,6 @@ var _default2 = {
321
318
  staticItems: [],
322
319
  formItems: [],
323
320
  tooltipTimeout: null,
324
- tooltipActive: false,
325
321
  tooltipStore: {
326
322
  item: null,
327
323
  visible: false
@@ -338,15 +334,7 @@ var _default2 = {
338
334
  return Object.assign({}, _conf.default.form.validConfig, this.validConfig);
339
335
  },
340
336
  tooltipOpts: function tooltipOpts() {
341
- var opts = Object.assign({
342
- leaveDelay: 300
343
- }, _conf.default.form.tooltipConfig, this.tooltipConfig);
344
-
345
- if (opts.enterable) {
346
- opts.leaveMethod = this.handleTooltipLeaveMethod;
347
- }
348
-
349
- return opts;
337
+ return Object.assign({}, _conf.default.tooltip, _conf.default.form.tooltipConfig, this.tooltipConfig);
350
338
  }
351
339
  },
352
340
  watch: {
@@ -414,9 +402,10 @@ var _default2 = {
414
402
  /**
415
403
  * 工具提示
416
404
  */
417
- hasUseTooltip ? h('vxe-tooltip', _objectSpread({
418
- ref: 'tooltip'
419
- }, tooltipOpts)) : _e()]);
405
+ hasUseTooltip ? h('vxe-tooltip', {
406
+ ref: 'tooltip',
407
+ props: tooltipOpts
408
+ }) : _e()]);
420
409
  },
421
410
  methods: {
422
411
  callSlot: function callSlot(slotFunc, params, h) {
@@ -567,17 +556,6 @@ var _default2 = {
567
556
  $event: evnt
568
557
  });
569
558
  },
570
- handleTooltipLeaveMethod: function handleTooltipLeaveMethod() {
571
- var _this5 = this;
572
-
573
- var tooltipOpts = this.tooltipOpts;
574
- setTimeout(function () {
575
- if (!_this5.tooltipActive) {
576
- _this5.closeTooltip();
577
- }
578
- }, tooltipOpts.leaveDelay);
579
- return false;
580
- },
581
559
  closeTooltip: function closeTooltip() {
582
560
  var tooltipStore = this.tooltipStore;
583
561
  var $tooltip = this.$refs.tooltip;
@@ -595,7 +573,7 @@ var _default2 = {
595
573
 
596
574
  return this.$nextTick();
597
575
  },
598
- triggerHeaderHelpEvent: function triggerHeaderHelpEvent(evnt, params) {
576
+ triggerTitleTipEvent: function triggerTitleTipEvent(evnt, params) {
599
577
  var item = params.item;
600
578
  var tooltipStore = this.tooltipStore;
601
579
  var $tooltip = this.$refs.tooltip;
@@ -603,8 +581,10 @@ var _default2 = {
603
581
  var content = (overflowElem.textContent || '').trim();
604
582
  var isCellOverflow = overflowElem.scrollWidth > overflowElem.clientWidth;
605
583
  clearTimeout(this.tooltipTimeout);
606
- this.tooltipActive = true;
607
- this.closeTooltip();
584
+
585
+ if (tooltipStore.item !== item) {
586
+ this.closeTooltip();
587
+ }
608
588
 
609
589
  if (content && isCellOverflow) {
610
590
  Object.assign(tooltipStore, {
@@ -617,12 +597,11 @@ var _default2 = {
617
597
  }
618
598
  }
619
599
  },
620
- handleTargetLeaveEvent: function handleTargetLeaveEvent() {
621
- var _this6 = this;
600
+ handleTitleTipLeaveEvent: function handleTitleTipLeaveEvent() {
601
+ var _this5 = this;
622
602
 
623
603
  var tooltipOpts = this.tooltipOpts;
624
604
  var $tooltip = this.$refs.tooltip;
625
- this.tooltipActive = false;
626
605
 
627
606
  if ($tooltip) {
628
607
  $tooltip.setActived(false);
@@ -630,10 +609,10 @@ var _default2 = {
630
609
 
631
610
  if (tooltipOpts.enterable) {
632
611
  this.tooltipTimeout = setTimeout(function () {
633
- $tooltip = _this6.$refs.tooltip;
612
+ $tooltip = _this5.$refs.tooltip;
634
613
 
635
614
  if ($tooltip && !$tooltip.isActived()) {
636
- _this6.closeTooltip();
615
+ _this5.closeTooltip();
637
616
  }
638
617
  }, tooltipOpts.leaveDelay);
639
618
  } else {
@@ -664,7 +643,7 @@ var _default2 = {
664
643
  return this.beginValidate(item ? [item] : [], '', callback);
665
644
  },
666
645
  beginValidate: function beginValidate(itemList, type, callback) {
667
- var _this7 = this;
646
+ var _this6 = this;
668
647
 
669
648
  var data = this.data,
670
649
  formRules = this.rules,
@@ -679,7 +658,7 @@ var _default2 = {
679
658
  var field = item.field;
680
659
 
681
660
  if (field) {
682
- itemValids.push(_this7.validItemRules(type || 'all', field).then(function () {
661
+ itemValids.push(_this6.validItemRules(type || 'all', field).then(function () {
683
662
  item.errRule = null;
684
663
  }).catch(function (_ref2) {
685
664
  var rule = _ref2.rule,
@@ -690,7 +669,7 @@ var _default2 = {
690
669
  data: data,
691
670
  field: field,
692
671
  property: field,
693
- $form: _this7
672
+ $form: _this6
694
673
  };
695
674
 
696
675
  if (!validRest[field]) {
@@ -710,7 +689,7 @@ var _default2 = {
710
689
  }
711
690
  }).catch(function () {
712
691
  return new Promise(function (resolve) {
713
- _this7.showErrTime = setTimeout(function () {
692
+ _this6.showErrTime = setTimeout(function () {
714
693
  itemList.forEach(function (item) {
715
694
  if (item.errRule) {
716
695
  item.showError = true;
@@ -719,8 +698,8 @@ var _default2 = {
719
698
  }, 20);
720
699
 
721
700
  if (validOpts.autoPos) {
722
- _this7.$nextTick(function () {
723
- _this7.handleFocus(validFields);
701
+ _this6.$nextTick(function () {
702
+ _this6.handleFocus(validFields);
724
703
  });
725
704
  }
726
705
 
@@ -756,7 +735,7 @@ var _default2 = {
756
735
  * trigger=change 触发方式
757
736
  */
758
737
  validItemRules: function validItemRules(validType, property, val) {
759
- var _this8 = this;
738
+ var _this7 = this;
760
739
 
761
740
  var data = this.data,
762
741
  formRules = this.rules;
@@ -782,7 +761,7 @@ var _default2 = {
782
761
  data: data,
783
762
  field: property,
784
763
  property: property,
785
- $form: _this8
764
+ $form: _this7
786
765
  });
787
766
 
788
767
  if (customValid) {
@@ -829,11 +808,11 @@ var _default2 = {
829
808
  });
830
809
  },
831
810
  handleFocus: function handleFocus(fields) {
832
- var _this9 = this;
811
+ var _this8 = this;
833
812
 
834
813
  var $el = this.$el;
835
814
  fields.some(function (property, index) {
836
- var item = _this9.getItemByField(property);
815
+ var item = _this8.getItemByField(property);
837
816
 
838
817
  if (item && (0, _utils.isEnableConf)(item.itemRender)) {
839
818
  var itemRender = item.itemRender;
@@ -877,17 +856,17 @@ var _default2 = {
877
856
  * 如果单元格配置了校验规则,则会进行校验
878
857
  */
879
858
  updateStatus: function updateStatus(scope, itemValue) {
880
- var _this10 = this;
859
+ var _this9 = this;
881
860
 
882
861
  var property = scope.property;
883
862
 
884
863
  if (property) {
885
864
  this.validItemRules('change', property, itemValue).then(function () {
886
- _this10.clearValidate(property);
865
+ _this9.clearValidate(property);
887
866
  }).catch(function (_ref3) {
888
867
  var rule = _ref3.rule;
889
868
 
890
- var item = _this10.getItemByField(property);
869
+ var item = _this9.getItemByField(property);
891
870
 
892
871
  if (item) {
893
872
  item.showError = true;
@@ -1 +1 @@
1
- "use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_dom=_interopRequireWildcard(require("../../tools/dom")),_util=require("./util"),_render=require("./render"),_log=require("../../tools/log");function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(_getRequireWildcardCache=function(e){return e?i:t})(e)}function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};t=_getRequireWildcardCache(t);if(t&&t.has(e))return t.get(e);var i,r,l={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&((r=n?Object.getOwnPropertyDescriptor(e,i):null)&&(r.get||r.set)?Object.defineProperty(l,i,r):l[i]=e[i]);return l.default=e,t&&t.set(e,l),l}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function ownKeys(t,e){var i,r=Object.keys(t);return Object.getOwnPropertySymbols&&(i=Object.getOwnPropertySymbols(t),e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,i)),r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(i),!0).forEach(function(e){_defineProperty(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ownKeys(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _createClass(e,t,i){return t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return _createClass(t,[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),t}();function validErrorRuleValue(e,t){var i=e.type,r=e.min,l=e.max,n=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(r)&&i<_xeUtils.default.toNumber(r)||(!_xeUtils.default.eqNull(l)&&i>_xeUtils.default.toNumber(l)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}function renderItems(R,T,e){var $=T._e,S=T.rules,I=T.data,U=T.collapseAll,j=T.validOpts,P=T.titleOverflow;return e.map(function(e,t){var i,r=e.slots,l=e.title,n=e.folding,o=e.visible,s=e.visibleMethod,a=e.field,u=e.collapseNode,c=e.itemRender,f=e.showError,d=e.errRule,p=e.className,m=e.titleOverflow,h=e.children,v=(0,_utils.isEnableConf)(c)?_vXETable.default.renderer.get(c.name):null,g=e.span||T.span,_=e.align||T.align,y=e.titleAlign||T.titleAlign,b=e.titleWidth||T.titleWidth,x=s,O=_xeUtils.default.isUndefined(m)||_xeUtils.default.isNull(m)?P:m,s="title"===O,m=!0===O||"tooltip"===O,O=s||m||"ellipsis"===O,E={data:I,field:a,property:a,item:e,$form:T};if(!1===o)return $();if(h&&0<h.length){h=renderItems(R,T,e.children);return h.length?R("div",{class:["vxe-form--gather vxe-row",e.id,g?"vxe-col--".concat(g," is--span"):"",p?_xeUtils.default.isFunction(p)?p(E):p:""]},h):$()}!x&&v&&v.itemVisibleMethod&&(x=v.itemVisibleMethod),!S||(w=S[a])&&(i=w.some(function(e){return e.required}));var w=[];r&&r.default?w=T.callSlot(r.default,E,R):v&&v.renderItemContent?w=v.renderItemContent.call(T,R,c,E):v&&v.renderItem?w=v.renderItem.call(T,R,c,E):a&&(w=["".concat(_xeUtils.default.get(I,a))]);m=m?{mouseenter:function(e){T.triggerHeaderHelpEvent(e,E)},mouseleave:T.handleTargetLeaveEvent}:{};return R("div",{class:["vxe-form--item",e.id,g?"vxe-col--".concat(g," is--span"):null,p?_xeUtils.default.isFunction(p)?p(E):p:"",{"is--title":l,"is--required":i,"is--hidden":n&&U,"is--active":!x||x(E),"is--error":f}],key:t},[R("div",{class:"vxe-form--item-inner"},[l||r&&r.title?R("div",{class:["vxe-form--item-title",y?"align--".concat(y):null,{"is--ellipsis":O}],style:b?{width:isNaN(b)?b:"".concat(b,"px")}:null,attrs:{title:s?(0,_utils.getFuncText)(l):null},on:m},(0,_render.renderTitle)(R,T,e)):null,R("div",{class:["vxe-form--item-content",_?"align--".concat(_):null]},w.concat([u?R("div",{class:"vxe-form--item-trigger-node",on:{click:T.toggleCollapseEvent}},[R("span",{class:"vxe-form--item-trigger-text"},U?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),R("i",{class:["vxe-form--item-trigger-icon",U?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})]):null,d&&j.showMessage?R("div",{class:"vxe-form--item-valid",style:d.maxWidth?{width:"".concat(d.maxWidth,"px")}:null},d.content):null]))])])})}var _default2={name:"VxeForm",mixins:[_size.default],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},data:function(){return{collapseAll:this.collapseStatus,staticItems:[],formItems:[],tooltipTimeout:null,tooltipActive:!1,tooltipStore:{item:null,visible:!1}}},provide:function(){return{$xeform:this}},computed:{validOpts:function(){return Object.assign({},_conf.default.form.validConfig,this.validConfig)},tooltipOpts:function(){var e=Object.assign({leaveDelay:300},_conf.default.form.tooltipConfig,this.tooltipConfig);return e.enterable&&(e.leaveMethod=this.handleTooltipLeaveMethod),e}},watch:{staticItems:function(e){this.formItems=e},items:function(e){this.loadItem(e)},collapseStatus:function(e){this.collapseAll=!!e}},created:function(){var t=this;this.$nextTick(function(){var e=t.items;"development"===process.env.NODE_ENV&&t.customLayout&&t.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"]),e&&t.loadItem(e)})},render:function(e){var t=this._e,i=this.loading,r=this.className,l=this.data,n=this.vSize,o=this.tooltipOpts,s=this.formItems,a=this.customLayout,u=_vXETable.default._tooltip;return e("form",{class:["vxe-form",r?_xeUtils.default.isFunction(r)?r({items:s,data:l,$form:this}):r:"",(_defineProperty(r={},"size--".concat(n),n),_defineProperty(r,"is--colon",this.titleColon),_defineProperty(r,"is--asterisk",this.titleAsterisk),_defineProperty(r,"is--loading",i),r)],on:{submit:this.submitEvent,reset:this.resetEvent}},[e("div",{class:"vxe-form--wrapper vxe-row"},a?this.$slots.default:renderItems(e,this,s)),e("div",{class:"vxe-form-slots",ref:"hideItem"},a?[]:this.$slots.default),e("div",{class:["vxe-loading",{"is--visible":i}]},[e("div",{class:"vxe-loading--spinner"})]),u?e("vxe-tooltip",_objectSpread({ref:"tooltip"},o)):t()])},methods:{callSlot:function(e,t,i){if(e){var r=this.$scopedSlots;if(_xeUtils.default.isString(e)&&(e=r[e]||null),_xeUtils.default.isFunction(e))return e.call(this,t,i)}return[]},loadItem:function(e){var t,i=this;return"development"===process.env.NODE_ENV&&(t=this.$scopedSlots,e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||t[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})})),this.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(i,e)},{children:"children"}),this.$nextTick()},getItems:function(){var t=[];return _xeUtils.default.eachTree(this.formItems,function(e){t.push(e)},{children:"children"}),t},getItemByField:function(t){var e=_xeUtils.default.findTree(this.formItems,function(e){return e.field===t},{children:"children"});return e?e.item:null},toggleCollapse:function(){var e=!this.collapseAll;return this.collapseAll=e,this.$emit("update:collapseStatus",e),this.$nextTick()},toggleCollapseEvent:function(e){this.toggleCollapse();var t=this.collapseAll;this.$emit("toggle-collapse",{status:t,collapse:t,data:this.data,$form:this,$event:e},e),this.$emit("collapse",{status:t,collapse:t,data:this.data,$form:this,$event:e},e)},submitEvent:function(t){var i=this;t.preventDefault(),this.preventSubmit||(this.clearValidate(),this.beginValidate(this.getItems()).then(function(){i.$emit("submit",{data:i.data,$form:i,$event:t})}).catch(function(e){i.$emit("submit-invalid",{data:i.data,errMap:e,$form:i,$event:t})}))},reset:function(){var l=this,n=this.data;return n&&this.getItems().forEach(function(e){var t=e.field,i=e.resetValue,r=e.itemRender;(0,_utils.isEnableConf)(r)&&((r=_vXETable.default.renderer.get(r.name))&&r.itemResetMethod?r.itemResetMethod({data:n,field:t,property:t,item:e,$form:l}):t&&_xeUtils.default.set(n,t,null===i?getResetValue(_xeUtils.default.get(n,t),void 0):i))}),this.clearValidate()},resetEvent:function(e){e.preventDefault(),this.reset(),this.$emit("reset",{data:this.data,$form:this,$event:e})},handleTooltipLeaveMethod:function(){var e=this,t=this.tooltipOpts;return setTimeout(function(){e.tooltipActive||e.closeTooltip()},t.leaveDelay),!1},closeTooltip:function(){var e=this.tooltipStore,t=this.$refs.tooltip;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),this.$nextTick()},triggerHeaderHelpEvent:function(e,t){var i=t.item,r=this.tooltipStore,l=this.$refs.tooltip,n=e.currentTarget.children[0],t=(n.textContent||"").trim(),e=n.scrollWidth>n.clientWidth;clearTimeout(this.tooltipTimeout),this.tooltipActive=!0,this.closeTooltip(),t&&e&&(Object.assign(r,{item:i,visible:!0}),l&&l.open(n,t))},handleTargetLeaveEvent:function(){var e=this,t=this.tooltipOpts,i=this.$refs.tooltip;this.tooltipActive=!1,i&&i.setActived(!1),t.enterable?this.tooltipTimeout=setTimeout(function(){(i=e.$refs.tooltip)&&!i.isActived()&&e.closeTooltip()},t.leaveDelay):this.closeTooltip()},clearValidate:function(e){return e?(e=(0,_util.handleFieldOrItem)(this,e))&&(e.showError=!1):this.getItems().forEach(function(e){e.showError=!1}),this.$nextTick()},validate:function(e){return this.clearValidate(),this.beginValidate(this.getItems(),"",e)},validateField:function(e,t){e=(0,_util.handleFieldOrItem)(this,e);return this.beginValidate(e?[e]:[],"",t)},beginValidate:function(t,e,i){var l=this,n=this.data,r=this.rules,o=this.validOpts,s={},a=[],u=[];return clearTimeout(this.showErrTime),n&&r?(t.forEach(function(i){var r=i.field;r&&u.push(l.validItemRules(e||"all",r).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:n,field:r,property:r,$form:l};return s[r]||(s[r]=[]),s[r].push(e),a.push(r),i.errRule=t,Promise.reject(e)}))}),Promise.all(u).then(function(){i&&i()}).catch(function(){return new Promise(function(e){l.showErrTime=setTimeout(function(){t.forEach(function(e){e.errRule&&(e.showError=!0)})},20),o.autoPos&&l.$nextTick(function(){l.handleFocus(a)}),i?(i(s),e()):e(s)})})):(i&&i(),Promise.resolve())},validItemRules:function(n,o,e){var s,a,u=this,c=this.data,t=this.rules,f=[],d=[];return o&&t&&((s=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(c,o):e,s.forEach(function(t){var e,i=t.type,r=t.trigger,l=t.required;"all"!==n&&r&&n!==t.trigger||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:s,data:c,field:o,property:o,$form:u}))&&(_xeUtils.default.isError(e)?f.push(new Rule({type:"custom",trigger:r,content:e.message,rule:new Rule(t)})):e.catch&&d.push(e.catch(function(e){f.push(new Rule({type:"custom",trigger:r,content:e?e.message:t.content||t.message,rule:new Rule(t)}))}))):(i="array"===i?!_xeUtils.default.isArray(a)||!a.length:(0,_utils.eqEmptyValue)(a),(l?i||validErrorRuleValue(t,a):!i&&validErrorRuleValue(t,a))&&f.push(new Rule(t))))}))),Promise.all(d).then(function(){if(f.length){var e={rules:f,rule:f[0]};return Promise.reject(e)}})},handleFocus:function(e){var n=this,o=this.$el;e.some(function(e,t){var i=n.getItemByField(e);if(i&&(0,_utils.isEnableConf)(i.itemRender)){var r,l=i.itemRender,e=_vXETable.default.renderer.get(l.name);if(t||_dom.default.scrollToView(o.querySelector(".".concat(i.id))),r=!(r=l.autofocus?o.querySelector(".".concat(i.id," ").concat(l.autofocus)):r)&&e&&e.autofocus?o.querySelector(".".concat(i.id," ").concat(e.autofocus)):r)return r.focus(),_dom.browse.msie&&((r=r.createTextRange()).collapse(!1),r.select()),!0}})},updateStatus:function(e,t){var i=this,r=e.property;r&&this.validItemRules("change",r,t).then(function(){i.clearValidate(r)}).catch(function(e){var t=e.rule,e=i.getItemByField(r);e&&(e.showError=!0,e.errRule=t)})}}};exports.default=_default2;
1
+ "use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils"),_dom=_interopRequireWildcard(require("../../tools/dom")),_util=require("./util"),_render=require("./render"),_log=require("../../tools/log");function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(_getRequireWildcardCache=function(e){return e?i:t})(e)}function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};t=_getRequireWildcardCache(t);if(t&&t.has(e))return t.get(e);var i,l,r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&((l=n?Object.getOwnPropertyDescriptor(e,i):null)&&(l.get||l.set)?Object.defineProperty(r,i,l):r[i]=e[i]);return r.default=e,t&&t.set(e,r),r}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var i=0;i<t.length;i++){var l=t[i];l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l&&(l.writable=!0),Object.defineProperty(e,l.key,l)}}function _createClass(e,t,i){return t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}return _createClass(t,[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]),t}();function validErrorRuleValue(e,t){var i=e.type,l=e.min,r=e.max,n=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(l)&&i<_xeUtils.default.toNumber(l)||(!_xeUtils.default.eqNull(r)&&i>_xeUtils.default.toNumber(r)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}function renderItems(R,$,e){var O=$._e,w=$.rules,I=$.data,S=$.collapseAll,U=$.validOpts,q=$.titleOverflow;return e.map(function(e){var t,i=e.slots,l=e.title,r=e.folding,n=e.visible,o=e.visibleMethod,s=e.field,a=e.collapseNode,u=e.itemRender,c=e.showError,f=e.errRule,d=e.className,m=e.titleOverflow,p=e.children,h=(0,_utils.isEnableConf)(u)?_vXETable.default.renderer.get(u.name):null,v=e.span||$.span,g=e.align||$.align,_=e.titleAlign||$.titleAlign,x=e.titleWidth||$.titleWidth,y=o,b=_xeUtils.default.isUndefined(m)||_xeUtils.default.isNull(m)?q:m,o="title"===b,m=!0===b||"tooltip"===b,b=o||m||"ellipsis"===b,E={data:I,field:s,property:s,item:e,$form:$};if(!1===n)return O();if(p&&0<p.length){p=renderItems(R,$,e.children);return p.length?R("div",{class:["vxe-form--gather vxe-row",e.id,v?"vxe-col--".concat(v," is--span"):"",d?_xeUtils.default.isFunction(d)?d(E):d:""]},p):O()}!y&&h&&h.itemVisibleMethod&&(y=h.itemVisibleMethod),!w||(T=w[s])&&(t=T.some(function(e){return e.required}));var T=[];i&&i.default?T=$.callSlot(i.default,E,R):h&&h.renderItemContent?T=h.renderItemContent.call($,R,u,E):h&&h.renderItem?T=h.renderItem.call($,R,u,E):s&&(T=["".concat(_xeUtils.default.get(I,s))]);m=m?{mouseenter:function(e){$.triggerTitleTipEvent(e,E)},mouseleave:$.handleTitleTipLeaveEvent}:{};return R("div",{class:["vxe-form--item",e.id,v?"vxe-col--".concat(v," is--span"):null,d?_xeUtils.default.isFunction(d)?d(E):d:"",{"is--title":l,"is--required":t,"is--hidden":r&&S,"is--active":!y||y(E),"is--error":c}],key:e.id},[R("div",{class:"vxe-form--item-inner"},[l||i&&i.title?R("div",{class:["vxe-form--item-title",_?"align--".concat(_):null,{"is--ellipsis":b}],style:x?{width:isNaN(x)?x:"".concat(x,"px")}:null,attrs:{title:o?(0,_utils.getFuncText)(l):null},on:m},(0,_render.renderTitle)(R,$,e)):null,R("div",{class:["vxe-form--item-content",g?"align--".concat(g):null]},T.concat([a?R("div",{class:"vxe-form--item-trigger-node",on:{click:$.toggleCollapseEvent}},[R("span",{class:"vxe-form--item-trigger-text"},S?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),R("i",{class:["vxe-form--item-trigger-icon",S?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})]):null,f&&U.showMessage?R("div",{class:"vxe-form--item-valid",style:f.maxWidth?{width:"".concat(f.maxWidth,"px")}:null},f.content):null]))])])})}var _default2={name:"VxeForm",mixins:[_size.default],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return _conf.default.form.size||_conf.default.size}},span:{type:[String,Number],default:function(){return _conf.default.form.span}},align:{type:String,default:function(){return _conf.default.form.align}},titleAlign:{type:String,default:function(){return _conf.default.form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return _conf.default.form.titleWidth}},titleColon:{type:Boolean,default:function(){return _conf.default.form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return _conf.default.form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:null},className:[String,Function],items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return _conf.default.form.preventSubmit}},validConfig:Object,tooltipConfig:Object,customLayout:{type:Boolean,default:function(){return _conf.default.form.customLayout}}},data:function(){return{collapseAll:this.collapseStatus,staticItems:[],formItems:[],tooltipTimeout:null,tooltipStore:{item:null,visible:!1}}},provide:function(){return{$xeform:this}},computed:{validOpts:function(){return Object.assign({},_conf.default.form.validConfig,this.validConfig)},tooltipOpts:function(){return Object.assign({},_conf.default.tooltip,_conf.default.form.tooltipConfig,this.tooltipConfig)}},watch:{staticItems:function(e){this.formItems=e},items:function(e){this.loadItem(e)},collapseStatus:function(e){this.collapseAll=!!e}},created:function(){var t=this;this.$nextTick(function(){var e=t.items;"development"===process.env.NODE_ENV&&t.customLayout&&t.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"]),e&&t.loadItem(e)})},render:function(e){var t=this._e,i=this.loading,l=this.className,r=this.data,n=this.vSize,o=this.tooltipOpts,s=this.formItems,a=this.customLayout,u=_vXETable.default._tooltip;return e("form",{class:["vxe-form",l?_xeUtils.default.isFunction(l)?l({items:s,data:r,$form:this}):l:"",(_defineProperty(l={},"size--".concat(n),n),_defineProperty(l,"is--colon",this.titleColon),_defineProperty(l,"is--asterisk",this.titleAsterisk),_defineProperty(l,"is--loading",i),l)],on:{submit:this.submitEvent,reset:this.resetEvent}},[e("div",{class:"vxe-form--wrapper vxe-row"},a?this.$slots.default:renderItems(e,this,s)),e("div",{class:"vxe-form-slots",ref:"hideItem"},a?[]:this.$slots.default),e("div",{class:["vxe-loading",{"is--visible":i}]},[e("div",{class:"vxe-loading--spinner"})]),u?e("vxe-tooltip",{ref:"tooltip",props:o}):t()])},methods:{callSlot:function(e,t,i){if(e){var l=this.$scopedSlots;if(_xeUtils.default.isString(e)&&(e=l[e]||null),_xeUtils.default.isFunction(e))return e.call(this,t,i)}return[]},loadItem:function(e){var t,i=this;return"development"===process.env.NODE_ENV&&(t=this.$scopedSlots,e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||t[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})})),this.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(i,e)},{children:"children"}),this.$nextTick()},getItems:function(){var t=[];return _xeUtils.default.eachTree(this.formItems,function(e){t.push(e)},{children:"children"}),t},getItemByField:function(t){var e=_xeUtils.default.findTree(this.formItems,function(e){return e.field===t},{children:"children"});return e?e.item:null},toggleCollapse:function(){var e=!this.collapseAll;return this.collapseAll=e,this.$emit("update:collapseStatus",e),this.$nextTick()},toggleCollapseEvent:function(e){this.toggleCollapse();var t=this.collapseAll;this.$emit("toggle-collapse",{status:t,collapse:t,data:this.data,$form:this,$event:e},e),this.$emit("collapse",{status:t,collapse:t,data:this.data,$form:this,$event:e},e)},submitEvent:function(t){var i=this;t.preventDefault(),this.preventSubmit||(this.clearValidate(),this.beginValidate(this.getItems()).then(function(){i.$emit("submit",{data:i.data,$form:i,$event:t})}).catch(function(e){i.$emit("submit-invalid",{data:i.data,errMap:e,$form:i,$event:t})}))},reset:function(){var r=this,n=this.data;return n&&this.getItems().forEach(function(e){var t=e.field,i=e.resetValue,l=e.itemRender;(0,_utils.isEnableConf)(l)&&((l=_vXETable.default.renderer.get(l.name))&&l.itemResetMethod?l.itemResetMethod({data:n,field:t,property:t,item:e,$form:r}):t&&_xeUtils.default.set(n,t,null===i?getResetValue(_xeUtils.default.get(n,t),void 0):i))}),this.clearValidate()},resetEvent:function(e){e.preventDefault(),this.reset(),this.$emit("reset",{data:this.data,$form:this,$event:e})},closeTooltip:function(){var e=this.tooltipStore,t=this.$refs.tooltip;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),this.$nextTick()},triggerTitleTipEvent:function(e,t){var i=t.item,l=this.tooltipStore,r=this.$refs.tooltip,n=e.currentTarget.children[0],t=(n.textContent||"").trim(),e=n.scrollWidth>n.clientWidth;clearTimeout(this.tooltipTimeout),l.item!==i&&this.closeTooltip(),t&&e&&(Object.assign(l,{item:i,visible:!0}),r&&r.open(n,t))},handleTitleTipLeaveEvent:function(){var e=this,t=this.tooltipOpts,i=this.$refs.tooltip;i&&i.setActived(!1),t.enterable?this.tooltipTimeout=setTimeout(function(){(i=e.$refs.tooltip)&&!i.isActived()&&e.closeTooltip()},t.leaveDelay):this.closeTooltip()},clearValidate:function(e){return e?(e=(0,_util.handleFieldOrItem)(this,e))&&(e.showError=!1):this.getItems().forEach(function(e){e.showError=!1}),this.$nextTick()},validate:function(e){return this.clearValidate(),this.beginValidate(this.getItems(),"",e)},validateField:function(e,t){e=(0,_util.handleFieldOrItem)(this,e);return this.beginValidate(e?[e]:[],"",t)},beginValidate:function(t,e,i){var r=this,n=this.data,l=this.rules,o=this.validOpts,s={},a=[],u=[];return clearTimeout(this.showErrTime),n&&l?(t.forEach(function(i){var l=i.field;l&&u.push(r.validItemRules(e||"all",l).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:n,field:l,property:l,$form:r};return s[l]||(s[l]=[]),s[l].push(e),a.push(l),i.errRule=t,Promise.reject(e)}))}),Promise.all(u).then(function(){i&&i()}).catch(function(){return new Promise(function(e){r.showErrTime=setTimeout(function(){t.forEach(function(e){e.errRule&&(e.showError=!0)})},20),o.autoPos&&r.$nextTick(function(){r.handleFocus(a)}),i?(i(s),e()):e(s)})})):(i&&i(),Promise.resolve())},validItemRules:function(n,o,e){var s,a,u=this,c=this.data,t=this.rules,f=[],d=[];return o&&t&&((s=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(c,o):e,s.forEach(function(t){var e,i=t.type,l=t.trigger,r=t.required;"all"!==n&&l&&n!==t.trigger||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:s,data:c,field:o,property:o,$form:u}))&&(_xeUtils.default.isError(e)?f.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)})):e.catch&&d.push(e.catch(function(e){f.push(new Rule({type:"custom",trigger:l,content:e?e.message:t.content||t.message,rule:new Rule(t)}))}))):(i="array"===i?!_xeUtils.default.isArray(a)||!a.length:(0,_utils.eqEmptyValue)(a),(r?i||validErrorRuleValue(t,a):!i&&validErrorRuleValue(t,a))&&f.push(new Rule(t))))}))),Promise.all(d).then(function(){if(f.length){var e={rules:f,rule:f[0]};return Promise.reject(e)}})},handleFocus:function(e){var n=this,o=this.$el;e.some(function(e,t){var i=n.getItemByField(e);if(i&&(0,_utils.isEnableConf)(i.itemRender)){var l,r=i.itemRender,e=_vXETable.default.renderer.get(r.name);if(t||_dom.default.scrollToView(o.querySelector(".".concat(i.id))),l=!(l=r.autofocus?o.querySelector(".".concat(i.id," ").concat(r.autofocus)):l)&&e&&e.autofocus?o.querySelector(".".concat(i.id," ").concat(e.autofocus)):l)return l.focus(),_dom.browse.msie&&((l=l.createTextRange()).collapse(!1),l.select()),!0}})},updateStatus:function(e,t){var i=this,l=e.property;l&&this.validItemRules("change",l,t).then(function(){i.clearValidate(l)}).catch(function(e){var t=e.rule,e=i.getItemByField(l);e&&(e.showError=!0,e.errRule=t)})}}};exports.default=_default2;
@@ -13,6 +13,12 @@ var _utils = require("../../tools/utils");
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
16
22
  function renderPrefixIcon(h, titlePrefix) {
17
23
  return h('span', {
18
24
  class: 'vxe-form--item-title-prefix'
@@ -30,7 +36,8 @@ function renderSuffixIcon(h, titleSuffix) {
30
36
  }
31
37
 
32
38
  function renderTitle(h, _vm, item) {
33
- var data = _vm.data;
39
+ var data = _vm.data,
40
+ tooltipOpts = _vm.tooltipOpts;
34
41
  var slots = item.slots,
35
42
  field = item.field,
36
43
  itemRender = item.itemRender,
@@ -48,11 +55,9 @@ function renderTitle(h, _vm, item) {
48
55
 
49
56
  if (titlePrefix) {
50
57
  titVNs.push(titlePrefix.content || titlePrefix.message ? h('vxe-tooltip', {
51
- props: {
52
- content: (0, _utils.getFuncText)(titlePrefix.content || titlePrefix.message),
53
- enterable: titlePrefix.enterable,
54
- theme: titlePrefix.theme
55
- }
58
+ props: _objectSpread(_objectSpread(_objectSpread({}, tooltipOpts), titlePrefix), {}, {
59
+ content: (0, _utils.getFuncText)(titlePrefix.content || titlePrefix.message)
60
+ })
56
61
  }, [renderPrefixIcon(h, titlePrefix)]) : renderPrefixIcon(h, titlePrefix));
57
62
  }
58
63
 
@@ -66,11 +71,9 @@ function renderTitle(h, _vm, item) {
66
71
 
67
72
  if (titleSuffix) {
68
73
  fixVNs.push(titleSuffix.content || titleSuffix.message ? h('vxe-tooltip', {
69
- props: {
70
- content: (0, _utils.getFuncText)(titleSuffix.content || titleSuffix.message),
71
- enterable: titleSuffix.enterable,
72
- theme: titleSuffix.theme
73
- }
74
+ props: _objectSpread(_objectSpread(_objectSpread({}, tooltipOpts), titlePrefix), {}, {
75
+ content: (0, _utils.getFuncText)(titleSuffix.content || titleSuffix.message)
76
+ })
74
77
  }, [renderSuffixIcon(h, titleSuffix)]) : renderSuffixIcon(h, titleSuffix));
75
78
  }
76
79
 
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderTitle=renderTitle;var _conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function renderPrefixIcon(e,t){return e("span",{class:"vxe-form--item-title-prefix"},[e("i",{class:t.icon||_conf.default.icon.FORM_PREFIX})])}function renderSuffixIcon(e,t){return e("span",{class:"vxe-form--item-title-suffix"},[e("i",{class:t.icon||_conf.default.icon.FORM_SUFFIX})])}function renderTitle(e,t,r){var n=t.data,i=r.slots,l=r.field,o=r.itemRender,s=r.titlePrefix,u=r.titleSuffix,a=(0,_utils.isEnableConf)(o)?_vXETable.default.renderer.get(o.name):null,f={data:n,property:l,item:r,$form:t},n=[],l=[];s&&l.push(s.content||s.message?e("vxe-tooltip",{props:{content:(0,_utils.getFuncText)(s.content||s.message),enterable:s.enterable,theme:s.theme}},[renderPrefixIcon(e,s)]):renderPrefixIcon(e,s)),l.push(e("span",{class:"vxe-form--item-title-label"},a&&a.renderItemTitle?a.renderItemTitle(o,f):i&&i.title?t.callSlot(i.title,f,e):(0,_utils.getFuncText)(r.title))),n.push(e("div",{class:"vxe-form--item-title-content"},l));l=[];return u&&l.push(u.content||u.message?e("vxe-tooltip",{props:{content:(0,_utils.getFuncText)(u.content||u.message),enterable:u.enterable,theme:u.theme}},[renderSuffixIcon(e,u)]):renderSuffixIcon(e,u)),n.push(e("div",{class:"vxe-form--item-title-postfix"},l)),n}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderTitle=renderTitle;var _conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_utils=require("../../tools/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function ownKeys(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){_defineProperty(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function renderPrefixIcon(e,t){return e("span",{class:"vxe-form--item-title-prefix"},[e("i",{class:t.icon||_conf.default.icon.FORM_PREFIX})])}function renderSuffixIcon(e,t){return e("span",{class:"vxe-form--item-title-suffix"},[e("i",{class:t.icon||_conf.default.icon.FORM_SUFFIX})])}function renderTitle(e,t,r){var n=t.data,o=t.tooltipOpts,i=r.slots,c=r.field,l=r.itemRender,s=r.titlePrefix,u=r.titleSuffix,f=(0,_utils.isEnableConf)(l)?_vXETable.default.renderer.get(l.name):null,a={data:n,property:c,item:r,$form:t},n=[],c=[];s&&c.push(s.content||s.message?e("vxe-tooltip",{props:_objectSpread(_objectSpread(_objectSpread({},o),s),{},{content:(0,_utils.getFuncText)(s.content||s.message)})},[renderPrefixIcon(e,s)]):renderPrefixIcon(e,s)),c.push(e("span",{class:"vxe-form--item-title-label"},f&&f.renderItemTitle?f.renderItemTitle(l,a):i&&i.title?t.callSlot(i.title,a,e):(0,_utils.getFuncText)(r.title))),n.push(e("div",{class:"vxe-form--item-title-content"},c));c=[];return u&&c.push(u.content||u.message?e("vxe-tooltip",{props:_objectSpread(_objectSpread(_objectSpread({},o),s),{},{content:(0,_utils.getFuncText)(u.content||u.message)})},[renderSuffixIcon(e,u)]):renderSuffixIcon(e,u)),n.push(e("div",{class:"vxe-form--item-title-postfix"},c)),n}