vxe-table 3.4.14-beta.3 → 3.5.0-beta.1
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.
- package/README.md +2 -6
- package/helper/vetur/attributes.json +30 -10
- package/helper/vetur/tags.json +7 -2
- package/lib/button/src/button.js +19 -9
- package/lib/button/src/button.min.js +1 -1
- package/lib/checkbox/src/checkbox.js +2 -2
- package/lib/checkbox/src/checkbox.min.js +1 -1
- package/lib/edit/src/mixin.js +26 -18
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/export/src/export-panel.js +2 -2
- package/lib/export/src/export-panel.min.js +1 -1
- package/lib/export/src/import-panel.js +2 -2
- package/lib/export/src/import-panel.min.js +1 -1
- package/lib/export/src/mixin.js +26 -24
- package/lib/export/src/mixin.min.js +1 -1
- package/lib/filter/src/mixin.js +4 -4
- package/lib/filter/src/mixin.min.js +1 -1
- package/lib/filter/src/panel.js +2 -2
- package/lib/filter/src/panel.min.js +1 -1
- package/lib/footer/src/footer.js +7 -4
- package/lib/footer/src/footer.min.js +1 -1
- package/lib/form/src/form-gather.js +2 -2
- package/lib/form/src/form-gather.min.js +1 -1
- package/lib/form/src/form-item.js +10 -5
- package/lib/form/src/form-item.min.js +1 -1
- package/lib/form/src/form.js +72 -83
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/render.js +17 -14
- package/lib/form/src/render.min.js +1 -1
- package/lib/form/src/util.js +13 -2
- package/lib/form/src/util.min.js +1 -1
- package/lib/grid/src/grid.js +44 -34
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/header/src/header.js +10 -8
- package/lib/header/src/header.min.js +1 -1
- package/lib/index.css +1 -1
- package/lib/index.umd.js +2301 -2267
- package/lib/index.umd.min.js +1 -2
- package/lib/input/src/input.js +30 -18
- package/lib/input/src/input.min.js +1 -1
- package/lib/keyboard/src/mixin.js +12 -8
- package/lib/keyboard/src/mixin.min.js +1 -1
- package/lib/list/src/list.js +7 -5
- package/lib/list/src/list.min.js +1 -1
- package/lib/menu/src/mixin.js +24 -14
- package/lib/menu/src/mixin.min.js +1 -1
- package/lib/menu/src/panel.js +3 -3
- package/lib/menu/src/panel.min.js +1 -1
- package/lib/modal/src/modal.js +24 -12
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/pulldown/src/pulldown.js +16 -12
- package/lib/pulldown/src/pulldown.min.js +1 -1
- package/lib/radio/src/button.js +2 -2
- package/lib/radio/src/button.min.js +1 -1
- package/lib/radio/src/radio.js +2 -2
- package/lib/radio/src/radio.min.js +1 -1
- package/lib/select/src/select.js +26 -16
- package/lib/select/src/select.min.js +1 -1
- package/lib/select/style/style.css +1 -1
- package/lib/select/style/style.min.css +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/switch/src/switch.js +4 -4
- package/lib/switch/src/switch.min.js +1 -1
- package/lib/table/src/body.js +36 -38
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +22 -14
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/column.js +6 -4
- package/lib/table/src/column.min.js +1 -1
- package/lib/table/src/columnInfo.js +202 -0
- package/lib/table/src/columnInfo.min.js +1 -0
- package/lib/table/src/methods.js +241 -242
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +99 -124
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +38 -3
- package/lib/table/src/util.min.js +1 -1
- package/lib/textarea/src/textarea.js +2 -2
- package/lib/textarea/src/textarea.min.js +1 -1
- package/lib/toolbar/src/toolbar.js +16 -10
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/tools/{src/dom.js → dom.js} +6 -8
- package/lib/tools/dom.min.js +1 -0
- package/lib/tools/{src/event.js → event.js} +3 -6
- package/lib/tools/event.min.js +1 -0
- package/lib/tools/log.js +29 -0
- package/lib/tools/log.min.js +1 -0
- package/lib/tools/{src/resize.js → resize.js} +1 -1
- package/lib/tools/resize.min.js +1 -0
- package/lib/tools/utils.js +155 -0
- package/lib/tools/utils.min.js +1 -0
- package/lib/tooltip/src/tooltip.js +138 -76
- package/lib/tooltip/src/tooltip.min.js +1 -1
- package/lib/tooltip/style/style.css +1 -1
- package/lib/tooltip/style/style.min.css +1 -1
- package/lib/v-x-e-table/index.js +7 -4
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +12 -7
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/lib/v-x-e-table/src/interceptor.js +4 -4
- package/lib/v-x-e-table/src/interceptor.min.js +1 -1
- package/lib/v-x-e-table/src/renderer.js +18 -10
- package/lib/v-x-e-table/src/renderer.min.js +1 -1
- package/lib/v-x-e-table/src/store.js +3 -3
- package/lib/v-x-e-table/src/store.min.js +1 -1
- package/lib/validator/src/mixin.js +4 -4
- package/lib/validator/src/mixin.min.js +1 -1
- package/package.json +3 -3
- package/packages/button/src/button.js +4 -2
- package/packages/checkbox/src/checkbox.js +2 -2
- package/packages/edit/src/mixin.js +7 -6
- package/packages/export/src/export-panel.js +1 -1
- package/packages/export/src/import-panel.js +1 -1
- package/packages/export/src/mixin.js +20 -19
- package/packages/filter/src/mixin.js +3 -3
- package/packages/filter/src/panel.js +1 -1
- package/packages/footer/src/footer.js +4 -2
- package/packages/form/src/form-gather.js +2 -2
- package/packages/form/src/form-item.js +9 -4
- package/packages/form/src/form.js +41 -48
- package/packages/form/src/render.js +9 -9
- package/packages/form/src/util.js +9 -2
- package/packages/grid/src/grid.js +22 -20
- package/packages/header/src/header.js +3 -2
- package/packages/input/src/input.js +6 -3
- package/packages/keyboard/src/mixin.js +1 -2
- package/packages/list/src/list.js +3 -2
- package/packages/menu/src/mixin.js +5 -3
- package/packages/menu/src/panel.js +3 -3
- package/packages/modal/src/modal.js +7 -4
- package/packages/pulldown/src/pulldown.js +3 -1
- package/packages/radio/src/button.js +2 -2
- package/packages/radio/src/radio.js +2 -2
- package/packages/select/src/select.js +5 -3
- package/packages/switch/src/switch.js +4 -4
- package/packages/table/src/body.js +25 -27
- package/packages/table/src/cell.js +8 -7
- package/packages/table/src/column.js +4 -2
- package/packages/table/src/columnInfo.js +149 -0
- package/packages/table/src/methods.js +90 -101
- package/packages/table/src/table.js +68 -98
- package/packages/table/src/util.js +19 -1
- package/packages/textarea/src/textarea.js +2 -2
- package/packages/toolbar/src/toolbar.js +7 -4
- package/packages/tools/{src/dom.js → dom.js} +6 -6
- package/packages/tools/{src/event.js → event.js} +1 -3
- package/packages/tools/log.js +16 -0
- package/packages/tools/{src/resize.js → resize.js} +1 -1
- package/packages/tools/utils.js +108 -0
- package/packages/tooltip/src/tooltip.js +90 -46
- package/packages/v-x-e-table/index.js +4 -2
- package/packages/v-x-e-table/src/conf.js +12 -7
- package/packages/v-x-e-table/src/interceptor.js +3 -3
- package/packages/v-x-e-table/src/renderer.js +4 -3
- package/packages/v-x-e-table/src/store.js +2 -2
- package/packages/validator/src/mixin.js +3 -3
- package/styles/select.scss +1 -1
- package/styles/tooltip.scss +1 -1
- package/types/v-x-e-table/index.d.ts +8 -0
- package/README.en.md +0 -170
- package/README.zh-TW.md +0 -174
- package/lib/tools/index.js +0 -76
- package/lib/tools/index.min.js +0 -1
- package/lib/tools/src/dom.min.js +0 -1
- package/lib/tools/src/event.min.js +0 -1
- package/lib/tools/src/resize.min.js +0 -1
- package/lib/tools/src/utils.js +0 -365
- package/lib/tools/src/utils.min.js +0 -1
- package/packages/tools/index.js +0 -14
- package/packages/tools/src/utils.js +0 -272
package/lib/footer/src/footer.js
CHANGED
|
@@ -7,7 +7,9 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _utils = _interopRequireDefault(require("../../tools/utils"));
|
|
11
|
+
|
|
12
|
+
var _dom = _interopRequireDefault(require("../../tools/dom"));
|
|
11
13
|
|
|
12
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
15
|
|
|
@@ -93,6 +95,7 @@ var _default = {
|
|
|
93
95
|
allAlign = $xetable.align,
|
|
94
96
|
scrollXLoad = $xetable.scrollXLoad,
|
|
95
97
|
columnKey = $xetable.columnKey,
|
|
98
|
+
columnOpts = $xetable.columnOpts,
|
|
96
99
|
allColumnFooterOverflow = $xetable.showFooterOverflow,
|
|
97
100
|
currentColumn = $xetable.currentColumn,
|
|
98
101
|
overflowX = $xetable.overflowX,
|
|
@@ -227,7 +230,7 @@ var _default = {
|
|
|
227
230
|
if (showTitle || showTooltip || showAllTip) {
|
|
228
231
|
tfOns.mouseenter = function (evnt) {
|
|
229
232
|
if (showTitle) {
|
|
230
|
-
|
|
233
|
+
_dom.default.updateCellTitle(evnt.currentTarget, column);
|
|
231
234
|
} else if (showTooltip || showAllTip) {
|
|
232
235
|
$xetable.triggerFooterTooltipEvent(evnt, params);
|
|
233
236
|
}
|
|
@@ -300,11 +303,11 @@ var _default = {
|
|
|
300
303
|
}
|
|
301
304
|
|
|
302
305
|
return h('td', {
|
|
303
|
-
class: ['vxe-footer--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(footAlign), footAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === tableColumn.length - 1), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2),
|
|
306
|
+
class: ['vxe-footer--column', column.id, (_ref2 = {}, _defineProperty(_ref2, "col--".concat(footAlign), footAlign), _defineProperty(_ref2, "col--".concat(type), type), _defineProperty(_ref2, 'col--last', $columnIndex === tableColumn.length - 1), _defineProperty(_ref2, 'fixed--hidden', fixedHiddenColumn), _defineProperty(_ref2, 'col--ellipsis', hasEllipsis), _defineProperty(_ref2, 'col--current', currentColumn === column), _ref2), _utils.default.getClass(footerClassName, params), _utils.default.getClass(footerCellClassName, params)],
|
|
304
307
|
attrs: attrs,
|
|
305
308
|
style: footerCellStyle ? _xeUtils.default.isFunction(footerCellStyle) ? footerCellStyle(params) : footerCellStyle : null,
|
|
306
309
|
on: tfOns,
|
|
307
|
-
key: columnKey ? column.id : $columnIndex
|
|
310
|
+
key: columnKey || columnOpts.useKey ? column.id : $columnIndex
|
|
308
311
|
}, [h('div', {
|
|
309
312
|
class: ['vxe-cell', {
|
|
310
313
|
'c--title': showTitle,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_utils=_interopRequireDefault(require("../../tools/utils")),_dom=_interopRequireDefault(require("../../tools/dom"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}var cellType="footer";function mergeFooterMethod(e,t,l){for(var o=0;o<e.length;o++){var r=e[o],n=r.row,i=r.col,a=r.rowspan,r=r.colspan;if(-1<i&&-1<n&&a&&r){if(n===t&&i===l)return{rowspan:a,colspan:r};if(n<=t&&t<n+a&&i<=l&&l<i+r)return{rowspan:0,colspan:0}}}}var _default={name:"VxeTableFooter",props:{footerTableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:String,size:String},mounted:function(){var e=this.$parent,t=this.$el,l=this.$refs,o=this.fixedType,e=e.elemStore,o="".concat(o||"main","-footer-");e["".concat(o,"wrapper")]=t,e["".concat(o,"table")]=l.table,e["".concat(o,"colgroup")]=l.colgroup,e["".concat(o,"list")]=l.tfoot,e["".concat(o,"xSpace")]=l.xSpace},destroyed:function(){var e=this.$parent,t=this.fixedType,e=e.elemStore,t="".concat(t||"main","-footer-");e["".concat(t,"wrapper")]=null,e["".concat(t,"table")]=null,e["".concat(t,"colgroup")]=null,e["".concat(t,"list")]=null,e["".concat(t,"xSpace")]=null},render:function(h){var e=this._e,w=this.$parent,T=this.fixedType,t=this.fixedColumn,$=this.tableColumn,C=this.footerTableData,S=w.$listeners,l=w.tId,o=w.footerRowClassName,I=w.footerCellClassName,r=w.footerRowStyle,F=w.footerCellStyle,L=w.footerAlign,P=w.mergeFooterList,k=w.footerSpanMethod,E=w.align,O=w.scrollXLoad,q=w.columnKey,D=w.columnOpts,U=w.showFooterOverflow,A=w.currentColumn,R=w.overflowX,n=w.scrollbarWidth,M=w.tooltipOpts,i=w.visibleColumn;return T&&($=!O&&!U||P.length&&k?i:t),h("div",{class:["vxe-table--footer-wrapper",T?"fixed-".concat(T,"--wrapper"):"body--wrapper"],attrs:{xid:l},on:{scroll:this.scrollEvent}},[T?e():h("div",{class:"vxe-body--x-space",ref:"xSpace"}),h("table",{class:"vxe-table--footer",attrs:{xid:l,cellspacing:0,cellpadding:0,border:0},ref:"table"},[h("colgroup",{ref:"colgroup"},$.map(function(e,t){return h("col",{attrs:{name:e.id},key:t})}).concat(n?[h("col",{attrs:{name:"col_gutter"}})]:[])),h("tfoot",{ref:"tfoot"},C.map(function(y,b){var _=b;return h("tr",{class:["vxe-footer--row",o?_xeUtils.default.isFunction(o)?o({$table:w,_rowIndex:b,$rowIndex:_,fixed:T,type:cellType}):o:""],style:r?_xeUtils.default.isFunction(r)?r({$table:w,_rowIndex:b,$rowIndex:_,fixed:T,type:cellType}):r:null},$.map(function(t,e){var l=t.type,o=t.showFooterOverflow,r=t.footerAlign,n=t.align,i=t.footerClassName,a=M.showAll||M.enabled,c=t.children&&t.children.length,s=T?t.fixed!==T&&!c:t.fixed&&R,u=_xeUtils.default.isUndefined(o)||_xeUtils.default.isNull(o)?U:o,f=r||n||L||E,d="ellipsis"===u,p="title"===u,x=!0===u||"tooltip"===u,c=p||x||d,o={colid:t.id},r={},n=w.getColumnIndex(t),u=w.getVTColumnIndex(t),m={$table:w,_rowIndex:b,$rowIndex:_,column:t,columnIndex:n,$columnIndex:e,_columnIndex:u,itemIndex:u,items:y,fixed:T,type:cellType,data:C};if(O&&!c&&(d=c=!0),(p||x||a)&&(r.mouseenter=function(e){p?_dom.default.updateCellTitle(e.currentTarget,t):(x||a)&&w.triggerFooterTooltipEvent(e,m)}),(x||a)&&(r.mouseleave=function(e){(x||a)&&w.handleTargetLeaveEvent(e)}),S["footer-cell-click"]&&(r.click=function(e){w.emitEvent("footer-cell-click",Object.assign({cell:e.currentTarget},m),e)}),S["footer-cell-dblclick"]&&(r.dblclick=function(e){w.emitEvent("footer-cell-dblclick",Object.assign({cell:e.currentTarget},m),e)}),P.length){n=mergeFooterMethod(P,b,u);if(n){var u=n.rowspan,v=n.colspan;if(!u||!v)return null;1<u&&(o.rowspan=u),1<v&&(o.colspan=v)}}else if(k){var g=k(m)||{},v=g.rowspan,v=void 0===v?1:v,g=g.colspan,g=void 0===g?1:g;if(!v||!g)return null;1<v&&(o.rowspan=v),1<g&&(o.colspan=g)}return h("td",{class:["vxe-footer--column",t.id,(_defineProperty(g={},"col--".concat(f),f),_defineProperty(g,"col--".concat(l),l),_defineProperty(g,"col--last",e===$.length-1),_defineProperty(g,"fixed--hidden",s),_defineProperty(g,"col--ellipsis",c),_defineProperty(g,"col--current",A===t),g),_utils.default.getClass(i,m),_utils.default.getClass(I,m)],attrs:o,style:F?_xeUtils.default.isFunction(F)?F(m):F:null,on:r,key:q||D.useKey?t.id:e},[h("div",{class:["vxe-cell",{"c--title":p,"c--tooltip":x,"c--ellipsis":d}]},t.renderFooter(h,m))])}).concat(n?[h("td",{class:"vxe-footer--gutter col--gutter"})]:[]))}))])])},methods:{scrollEvent:function(e){var t=this.$parent,l=this.fixedType,o=t.$refs,r=t.scrollXLoad,n=t.triggerScrollXEvent,i=t.lastScrollLeft,a=o.tableHeader,c=o.tableBody,s=o.tableFooter,o=o.validTip,a=a?a.$el:null,s=s?s.$el:null,c=c.$el,s=s?s.scrollLeft:0,i=s!==i;t.lastScrollLeft=s,t.lastScrollTime=Date.now(),a&&(a.scrollLeft=s),c&&(c.scrollLeft=s),r&&i&&n(e),i&&o&&o.visible&&o.updatePlacement(),t.emitEvent("scroll",{type:cellType,fixed:l,scrollTop:c.scrollTop,scrollLeft:s,isX:i,isY:!1},e)}}};exports.default=_default;
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _formItem = _interopRequireDefault(require("./form-item"));
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _log = require("../../tools/log");
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
@@ -25,7 +25,7 @@ var _default = {
|
|
|
25
25
|
if (process.env.NODE_ENV === 'development') {
|
|
26
26
|
this.$nextTick(function () {
|
|
27
27
|
if (_this.$xeform && _this.$xeform.customLayout) {
|
|
28
|
-
|
|
28
|
+
(0, _log.errLog)('vxe.error.errConflicts', ['custom-layout', '<form-gather ...>']);
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _formItem=_interopRequireDefault(require("./form-item")),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _formItem=_interopRequireDefault(require("./form-item")),_log=require("../../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default={name:"VxeFormGather",extends:_formItem.default,provide:function(){return{xeformgather:this}},created:function(){var e=this;"development"===process.env.NODE_ENV&&this.$nextTick(function(){e.$xeform&&e.$xeform.customLayout&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","<form-gather ...>"])})},render:function(e){return e("div",this.$slots.default)}};exports.default=_default;
|
|
@@ -11,7 +11,7 @@ var _conf = _interopRequireDefault(require("../../v-x-e-table/src/conf"));
|
|
|
11
11
|
|
|
12
12
|
var _vXETable = _interopRequireDefault(require("../../v-x-e-table"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _utils = require("../../tools/utils");
|
|
15
15
|
|
|
16
16
|
var _util = require("./util");
|
|
17
17
|
|
|
@@ -70,7 +70,7 @@ var renderItem = function renderItem(h, _vm, item, slots) {
|
|
|
70
70
|
errRule = item.errRule,
|
|
71
71
|
className = item.className,
|
|
72
72
|
titleOverflow = item.titleOverflow;
|
|
73
|
-
var compConf = (0,
|
|
73
|
+
var compConf = (0, _utils.isEnableConf)(itemRender) ? _vXETable.default.renderer.get(itemRender.name) : null;
|
|
74
74
|
var span = item.span || _vm.span;
|
|
75
75
|
var align = item.align || _vm.align;
|
|
76
76
|
var titleAlign = item.titleAlign || _vm.titleAlign;
|
|
@@ -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.
|
|
120
|
+
_vm.triggerTitleTipEvent(evnt, params);
|
|
121
121
|
},
|
|
122
|
-
mouseleave: _vm.
|
|
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 : '', {
|
|
@@ -139,7 +139,7 @@ var renderItem = function renderItem(h, _vm, item, slots) {
|
|
|
139
139
|
width: isNaN(titleWidth) ? titleWidth : "".concat(titleWidth, "px")
|
|
140
140
|
} : null,
|
|
141
141
|
attrs: {
|
|
142
|
-
title: showTitle ?
|
|
142
|
+
title: showTitle ? (0, _utils.getFuncText)(title) : null
|
|
143
143
|
},
|
|
144
144
|
on: ons
|
|
145
145
|
}, (0, _render.renderTitle)(h, _vm, item)) : null, h('div', {
|
|
@@ -172,6 +172,11 @@ var _default = {
|
|
|
172
172
|
default: null
|
|
173
173
|
}
|
|
174
174
|
},
|
|
175
|
+
data: function data() {
|
|
176
|
+
return {
|
|
177
|
+
itemConfig: null
|
|
178
|
+
};
|
|
179
|
+
},
|
|
175
180
|
watch: watch,
|
|
176
181
|
mounted: function mounted() {
|
|
177
182
|
(0, _util.assemItem)(this);
|
|
@@ -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")),
|
|
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;
|
package/lib/form/src/form.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -13,21 +15,21 @@ var _size = _interopRequireDefault(require("../../mixins/size"));
|
|
|
13
15
|
|
|
14
16
|
var _vXETable = _interopRequireDefault(require("../../v-x-e-table"));
|
|
15
17
|
|
|
16
|
-
var
|
|
18
|
+
var _utils = require("../../tools/utils");
|
|
19
|
+
|
|
20
|
+
var _dom = _interopRequireWildcard(require("../../tools/dom"));
|
|
17
21
|
|
|
18
22
|
var _util = require("./util");
|
|
19
23
|
|
|
20
24
|
var _render = require("./render");
|
|
21
25
|
|
|
22
|
-
var
|
|
26
|
+
var _log = require("../../tools/log");
|
|
23
27
|
|
|
24
|
-
|
|
28
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
29
|
|
|
26
|
-
function
|
|
30
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
31
|
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
-
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; }
|
|
32
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
33
|
|
|
32
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; }
|
|
33
35
|
|
|
@@ -57,7 +59,7 @@ var Rule = /*#__PURE__*/function () {
|
|
|
57
59
|
_createClass(Rule, [{
|
|
58
60
|
key: "content",
|
|
59
61
|
get: function get() {
|
|
60
|
-
return
|
|
62
|
+
return (0, _utils.getFuncText)(this.$options.content || this.$options.message);
|
|
61
63
|
}
|
|
62
64
|
}, {
|
|
63
65
|
key: "message",
|
|
@@ -114,7 +116,7 @@ function renderItems(h, _vm, itemList) {
|
|
|
114
116
|
collapseAll = _vm.collapseAll,
|
|
115
117
|
validOpts = _vm.validOpts,
|
|
116
118
|
allTitleOverflow = _vm.titleOverflow;
|
|
117
|
-
return itemList.map(function (item
|
|
119
|
+
return itemList.map(function (item) {
|
|
118
120
|
var slots = item.slots,
|
|
119
121
|
title = item.title,
|
|
120
122
|
folding = item.folding,
|
|
@@ -128,7 +130,7 @@ function renderItems(h, _vm, itemList) {
|
|
|
128
130
|
className = item.className,
|
|
129
131
|
titleOverflow = item.titleOverflow,
|
|
130
132
|
children = item.children;
|
|
131
|
-
var compConf = (0,
|
|
133
|
+
var compConf = (0, _utils.isEnableConf)(itemRender) ? _vXETable.default.renderer.get(itemRender.name) : null;
|
|
132
134
|
var span = item.span || _vm.span;
|
|
133
135
|
var align = item.align || _vm.align;
|
|
134
136
|
var titleAlign = item.titleAlign || _vm.titleAlign;
|
|
@@ -190,9 +192,9 @@ function renderItems(h, _vm, itemList) {
|
|
|
190
192
|
|
|
191
193
|
var ons = showTooltip ? {
|
|
192
194
|
mouseenter: function mouseenter(evnt) {
|
|
193
|
-
_vm.
|
|
195
|
+
_vm.triggerTitleTipEvent(evnt, params);
|
|
194
196
|
},
|
|
195
|
-
mouseleave: _vm.
|
|
197
|
+
mouseleave: _vm.handleTitleTipLeaveEvent
|
|
196
198
|
} : {};
|
|
197
199
|
return h('div', {
|
|
198
200
|
class: ['vxe-form--item', item.id, span ? "vxe-col--".concat(span, " is--span") : null, className ? _xeUtils.default.isFunction(className) ? className(params) : className : '', {
|
|
@@ -202,7 +204,7 @@ function renderItems(h, _vm, itemList) {
|
|
|
202
204
|
'is--active': !itemVisibleMethod || itemVisibleMethod(params),
|
|
203
205
|
'is--error': showError
|
|
204
206
|
}],
|
|
205
|
-
key:
|
|
207
|
+
key: item.id
|
|
206
208
|
}, [h('div', {
|
|
207
209
|
class: 'vxe-form--item-inner'
|
|
208
210
|
}, [title || slots && slots.title ? h('div', {
|
|
@@ -213,7 +215,7 @@ function renderItems(h, _vm, itemList) {
|
|
|
213
215
|
width: isNaN(titleWidth) ? titleWidth : "".concat(titleWidth, "px")
|
|
214
216
|
} : null,
|
|
215
217
|
attrs: {
|
|
216
|
-
title: showTitle ?
|
|
218
|
+
title: showTitle ? (0, _utils.getFuncText)(title) : null
|
|
217
219
|
},
|
|
218
220
|
on: ons
|
|
219
221
|
}, (0, _render.renderTitle)(h, _vm, item)) : null, h('div', {
|
|
@@ -302,6 +304,7 @@ var _default2 = {
|
|
|
302
304
|
}
|
|
303
305
|
},
|
|
304
306
|
validConfig: Object,
|
|
307
|
+
tooltipConfig: Object,
|
|
305
308
|
customLayout: {
|
|
306
309
|
type: Boolean,
|
|
307
310
|
default: function _default() {
|
|
@@ -315,7 +318,6 @@ var _default2 = {
|
|
|
315
318
|
staticItems: [],
|
|
316
319
|
formItems: [],
|
|
317
320
|
tooltipTimeout: null,
|
|
318
|
-
tooltipActive: false,
|
|
319
321
|
tooltipStore: {
|
|
320
322
|
item: null,
|
|
321
323
|
visible: false
|
|
@@ -332,15 +334,7 @@ var _default2 = {
|
|
|
332
334
|
return Object.assign({}, _conf.default.form.validConfig, this.validConfig);
|
|
333
335
|
},
|
|
334
336
|
tooltipOpts: function tooltipOpts() {
|
|
335
|
-
|
|
336
|
-
leaveDelay: 300
|
|
337
|
-
}, _conf.default.form.tooltipConfig, this.tooltipConfig);
|
|
338
|
-
|
|
339
|
-
if (opts.enterable) {
|
|
340
|
-
opts.leaveMethod = this.handleTooltipLeaveMethod;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
return opts;
|
|
337
|
+
return Object.assign({}, _conf.default.tooltip, _conf.default.form.tooltipConfig, this.tooltipConfig);
|
|
344
338
|
}
|
|
345
339
|
},
|
|
346
340
|
watch: {
|
|
@@ -362,7 +356,7 @@ var _default2 = {
|
|
|
362
356
|
|
|
363
357
|
if (process.env.NODE_ENV === 'development') {
|
|
364
358
|
if (_this.customLayout && _this.items) {
|
|
365
|
-
|
|
359
|
+
(0, _log.errLog)('vxe.error.errConflicts', ['custom-layout', 'items']);
|
|
366
360
|
}
|
|
367
361
|
}
|
|
368
362
|
|
|
@@ -408,9 +402,10 @@ var _default2 = {
|
|
|
408
402
|
/**
|
|
409
403
|
* 工具提示
|
|
410
404
|
*/
|
|
411
|
-
hasUseTooltip ? h('vxe-tooltip',
|
|
412
|
-
ref: 'tooltip'
|
|
413
|
-
|
|
405
|
+
hasUseTooltip ? h('vxe-tooltip', {
|
|
406
|
+
ref: 'tooltip',
|
|
407
|
+
props: tooltipOpts
|
|
408
|
+
}) : _e()]);
|
|
414
409
|
},
|
|
415
410
|
methods: {
|
|
416
411
|
callSlot: function callSlot(slotFunc, params, h) {
|
|
@@ -438,7 +433,7 @@ var _default2 = {
|
|
|
438
433
|
_xeUtils.default.each(item.slots, function (func) {
|
|
439
434
|
if (!_xeUtils.default.isFunction(func)) {
|
|
440
435
|
if (!$scopedSlots[func]) {
|
|
441
|
-
|
|
436
|
+
(0, _log.errLog)('vxe.error.notSlot', [func]);
|
|
442
437
|
}
|
|
443
438
|
}
|
|
444
439
|
});
|
|
@@ -464,6 +459,15 @@ var _default2 = {
|
|
|
464
459
|
|
|
465
460
|
return itemList;
|
|
466
461
|
},
|
|
462
|
+
getItemByField: function getItemByField(field) {
|
|
463
|
+
var rest = _xeUtils.default.findTree(this.formItems, function (item) {
|
|
464
|
+
return item.field === field;
|
|
465
|
+
}, {
|
|
466
|
+
children: 'children'
|
|
467
|
+
});
|
|
468
|
+
|
|
469
|
+
return rest ? rest.item : null;
|
|
470
|
+
},
|
|
467
471
|
toggleCollapse: function toggleCollapse() {
|
|
468
472
|
var status = !this.collapseAll;
|
|
469
473
|
this.collapseAll = status;
|
|
@@ -523,7 +527,7 @@ var _default2 = {
|
|
|
523
527
|
resetValue = item.resetValue,
|
|
524
528
|
itemRender = item.itemRender;
|
|
525
529
|
|
|
526
|
-
if ((0,
|
|
530
|
+
if ((0, _utils.isEnableConf)(itemRender)) {
|
|
527
531
|
var compConf = _vXETable.default.renderer.get(itemRender.name);
|
|
528
532
|
|
|
529
533
|
if (compConf && compConf.itemResetMethod) {
|
|
@@ -552,17 +556,6 @@ var _default2 = {
|
|
|
552
556
|
$event: evnt
|
|
553
557
|
});
|
|
554
558
|
},
|
|
555
|
-
handleTooltipLeaveMethod: function handleTooltipLeaveMethod() {
|
|
556
|
-
var _this5 = this;
|
|
557
|
-
|
|
558
|
-
var tooltipOpts = this.tooltipOpts;
|
|
559
|
-
setTimeout(function () {
|
|
560
|
-
if (!_this5.tooltipActive) {
|
|
561
|
-
_this5.closeTooltip();
|
|
562
|
-
}
|
|
563
|
-
}, tooltipOpts.leaveDelay);
|
|
564
|
-
return false;
|
|
565
|
-
},
|
|
566
559
|
closeTooltip: function closeTooltip() {
|
|
567
560
|
var tooltipStore = this.tooltipStore;
|
|
568
561
|
var $tooltip = this.$refs.tooltip;
|
|
@@ -580,7 +573,7 @@ var _default2 = {
|
|
|
580
573
|
|
|
581
574
|
return this.$nextTick();
|
|
582
575
|
},
|
|
583
|
-
|
|
576
|
+
triggerTitleTipEvent: function triggerTitleTipEvent(evnt, params) {
|
|
584
577
|
var item = params.item;
|
|
585
578
|
var tooltipStore = this.tooltipStore;
|
|
586
579
|
var $tooltip = this.$refs.tooltip;
|
|
@@ -588,8 +581,10 @@ var _default2 = {
|
|
|
588
581
|
var content = (overflowElem.textContent || '').trim();
|
|
589
582
|
var isCellOverflow = overflowElem.scrollWidth > overflowElem.clientWidth;
|
|
590
583
|
clearTimeout(this.tooltipTimeout);
|
|
591
|
-
|
|
592
|
-
|
|
584
|
+
|
|
585
|
+
if (tooltipStore.item !== item) {
|
|
586
|
+
this.closeTooltip();
|
|
587
|
+
}
|
|
593
588
|
|
|
594
589
|
if (content && isCellOverflow) {
|
|
595
590
|
Object.assign(tooltipStore, {
|
|
@@ -602,37 +597,37 @@ var _default2 = {
|
|
|
602
597
|
}
|
|
603
598
|
}
|
|
604
599
|
},
|
|
605
|
-
|
|
606
|
-
var
|
|
600
|
+
handleTitleTipLeaveEvent: function handleTitleTipLeaveEvent() {
|
|
601
|
+
var _this5 = this;
|
|
607
602
|
|
|
608
603
|
var tooltipOpts = this.tooltipOpts;
|
|
609
|
-
|
|
604
|
+
var $tooltip = this.$refs.tooltip;
|
|
605
|
+
|
|
606
|
+
if ($tooltip) {
|
|
607
|
+
$tooltip.setActived(false);
|
|
608
|
+
}
|
|
610
609
|
|
|
611
610
|
if (tooltipOpts.enterable) {
|
|
612
611
|
this.tooltipTimeout = setTimeout(function () {
|
|
613
|
-
|
|
612
|
+
$tooltip = _this5.$refs.tooltip;
|
|
614
613
|
|
|
615
|
-
if ($tooltip && !$tooltip.
|
|
616
|
-
|
|
614
|
+
if ($tooltip && !$tooltip.isActived()) {
|
|
615
|
+
_this5.closeTooltip();
|
|
617
616
|
}
|
|
618
617
|
}, tooltipOpts.leaveDelay);
|
|
619
618
|
} else {
|
|
620
619
|
this.closeTooltip();
|
|
621
620
|
}
|
|
622
621
|
},
|
|
623
|
-
clearValidate: function clearValidate(
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
if (field) {
|
|
627
|
-
var item = itemList.find(function (item) {
|
|
628
|
-
return item.field === field;
|
|
629
|
-
});
|
|
622
|
+
clearValidate: function clearValidate(fieldOrItem) {
|
|
623
|
+
if (fieldOrItem) {
|
|
624
|
+
var item = (0, _util.handleFieldOrItem)(this, fieldOrItem);
|
|
630
625
|
|
|
631
626
|
if (item) {
|
|
632
627
|
item.showError = false;
|
|
633
628
|
}
|
|
634
629
|
} else {
|
|
635
|
-
|
|
630
|
+
this.getItems().forEach(function (item) {
|
|
636
631
|
item.showError = false;
|
|
637
632
|
});
|
|
638
633
|
}
|
|
@@ -643,13 +638,12 @@ var _default2 = {
|
|
|
643
638
|
this.clearValidate();
|
|
644
639
|
return this.beginValidate(this.getItems(), '', callback);
|
|
645
640
|
},
|
|
646
|
-
validateField: function validateField(
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
}), '', callback);
|
|
641
|
+
validateField: function validateField(fieldOrItem, callback) {
|
|
642
|
+
var item = (0, _util.handleFieldOrItem)(this, fieldOrItem);
|
|
643
|
+
return this.beginValidate(item ? [item] : [], '', callback);
|
|
650
644
|
},
|
|
651
645
|
beginValidate: function beginValidate(itemList, type, callback) {
|
|
652
|
-
var
|
|
646
|
+
var _this6 = this;
|
|
653
647
|
|
|
654
648
|
var data = this.data,
|
|
655
649
|
formRules = this.rules,
|
|
@@ -664,7 +658,7 @@ var _default2 = {
|
|
|
664
658
|
var field = item.field;
|
|
665
659
|
|
|
666
660
|
if (field) {
|
|
667
|
-
itemValids.push(
|
|
661
|
+
itemValids.push(_this6.validItemRules(type || 'all', field).then(function () {
|
|
668
662
|
item.errRule = null;
|
|
669
663
|
}).catch(function (_ref2) {
|
|
670
664
|
var rule = _ref2.rule,
|
|
@@ -675,7 +669,7 @@ var _default2 = {
|
|
|
675
669
|
data: data,
|
|
676
670
|
field: field,
|
|
677
671
|
property: field,
|
|
678
|
-
$form:
|
|
672
|
+
$form: _this6
|
|
679
673
|
};
|
|
680
674
|
|
|
681
675
|
if (!validRest[field]) {
|
|
@@ -694,8 +688,8 @@ var _default2 = {
|
|
|
694
688
|
callback();
|
|
695
689
|
}
|
|
696
690
|
}).catch(function () {
|
|
697
|
-
return new Promise(function (resolve
|
|
698
|
-
|
|
691
|
+
return new Promise(function (resolve) {
|
|
692
|
+
_this6.showErrTime = setTimeout(function () {
|
|
699
693
|
itemList.forEach(function (item) {
|
|
700
694
|
if (item.errRule) {
|
|
701
695
|
item.showError = true;
|
|
@@ -704,8 +698,8 @@ var _default2 = {
|
|
|
704
698
|
}, 20);
|
|
705
699
|
|
|
706
700
|
if (validOpts.autoPos) {
|
|
707
|
-
|
|
708
|
-
|
|
701
|
+
_this6.$nextTick(function () {
|
|
702
|
+
_this6.handleFocus(validFields);
|
|
709
703
|
});
|
|
710
704
|
}
|
|
711
705
|
|
|
@@ -713,7 +707,7 @@ var _default2 = {
|
|
|
713
707
|
callback(validRest);
|
|
714
708
|
resolve();
|
|
715
709
|
} else {
|
|
716
|
-
|
|
710
|
+
resolve(validRest);
|
|
717
711
|
}
|
|
718
712
|
});
|
|
719
713
|
});
|
|
@@ -741,7 +735,7 @@ var _default2 = {
|
|
|
741
735
|
* trigger=change 触发方式
|
|
742
736
|
*/
|
|
743
737
|
validItemRules: function validItemRules(validType, property, val) {
|
|
744
|
-
var
|
|
738
|
+
var _this7 = this;
|
|
745
739
|
|
|
746
740
|
var data = this.data,
|
|
747
741
|
formRules = this.rules;
|
|
@@ -767,7 +761,7 @@ var _default2 = {
|
|
|
767
761
|
data: data,
|
|
768
762
|
field: property,
|
|
769
763
|
property: property,
|
|
770
|
-
$form:
|
|
764
|
+
$form: _this7
|
|
771
765
|
});
|
|
772
766
|
|
|
773
767
|
if (customValid) {
|
|
@@ -814,14 +808,13 @@ var _default2 = {
|
|
|
814
808
|
});
|
|
815
809
|
},
|
|
816
810
|
handleFocus: function handleFocus(fields) {
|
|
811
|
+
var _this8 = this;
|
|
812
|
+
|
|
817
813
|
var $el = this.$el;
|
|
818
|
-
var itemList = this.getItems();
|
|
819
814
|
fields.some(function (property, index) {
|
|
820
|
-
var item =
|
|
821
|
-
return item.field === property;
|
|
822
|
-
});
|
|
815
|
+
var item = _this8.getItemByField(property);
|
|
823
816
|
|
|
824
|
-
if (item && (0,
|
|
817
|
+
if (item && (0, _utils.isEnableConf)(item.itemRender)) {
|
|
825
818
|
var itemRender = item.itemRender;
|
|
826
819
|
|
|
827
820
|
var compConf = _vXETable.default.renderer.get(itemRender.name);
|
|
@@ -829,7 +822,7 @@ var _default2 = {
|
|
|
829
822
|
var inputElem; // 定位到第一个
|
|
830
823
|
|
|
831
824
|
if (!index) {
|
|
832
|
-
|
|
825
|
+
_dom.default.scrollToView($el.querySelector(".".concat(item.id)));
|
|
833
826
|
} // 如果指定了聚焦 class
|
|
834
827
|
|
|
835
828
|
|
|
@@ -873,11 +866,7 @@ var _default2 = {
|
|
|
873
866
|
}).catch(function (_ref3) {
|
|
874
867
|
var rule = _ref3.rule;
|
|
875
868
|
|
|
876
|
-
var
|
|
877
|
-
|
|
878
|
-
var item = itemList.find(function (item) {
|
|
879
|
-
return item.field === property;
|
|
880
|
-
});
|
|
869
|
+
var item = _this9.getItemByField(property);
|
|
881
870
|
|
|
882
871
|
if (item) {
|
|
883
872
|
item.showError = true;
|
package/lib/form/src/form.min.js
CHANGED
|
@@ -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")),_size=_interopRequireDefault(require("../../mixins/size")),_vXETable=_interopRequireDefault(require("../../v-x-e-table")),_tools=require("../../tools"),_util=require("./util"),_render=require("./render"),_utils=require("../../tools/src/utils"),_dom=require("../../tools/src/dom");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 _tools.UtilTools.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,o=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)||!(!o||(_xeUtils.default.isRegExp(o)?o:new RegExp(o)).test(t))))}function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}function renderItems(w,$,e){var U=$._e,R=$.rules,S=$.data,I=$.collapseAll,P=$.validOpts,j=$.titleOverflow;return e.map(function(e,t){var i,r=e.slots,l=e.title,o=e.folding,n=e.visible,s=e.visibleMethod,a=e.field,u=e.collapseNode,c=e.itemRender,f=e.showError,d=e.errRule,m=e.className,h=e.titleOverflow,p=e.children,v=(0,_tools.isEnableConf)(c)?_vXETable.default.renderer.get(c.name):null,g=e.span||$.span,_=e.align||$.align,x=e.titleAlign||$.titleAlign,b=e.titleWidth||$.titleWidth,y=s,E=_xeUtils.default.isUndefined(h)||_xeUtils.default.isNull(h)?j:h,s="title"===E,h=!0===E||"tooltip"===E,E=s||h||"ellipsis"===E,O={data:S,field:a,property:a,item:e,$form:$};if(!1===n)return U();if(p&&0<p.length){p=renderItems(w,$,e.children);return p.length?w("div",{class:["vxe-form--gather vxe-row",e.id,g?"vxe-col--".concat(g," is--span"):"",m?_xeUtils.default.isFunction(m)?m(O):m:""]},p):U()}!y&&v&&v.itemVisibleMethod&&(y=v.itemVisibleMethod),!R||(T=R[a])&&(i=T.some(function(e){return e.required}));var T=[];r&&r.default?T=$.callSlot(r.default,O,w):v&&v.renderItemContent?T=v.renderItemContent.call($,w,c,O):v&&v.renderItem?T=v.renderItem.call($,w,c,O):a&&(T=["".concat(_xeUtils.default.get(S,a))]);h=h?{mouseenter:function(e){$.triggerHeaderHelpEvent(e,O)},mouseleave:$.handleTargetLeaveEvent}:{};return w("div",{class:["vxe-form--item",e.id,g?"vxe-col--".concat(g," is--span"):null,m?_xeUtils.default.isFunction(m)?m(O):m:"",{"is--title":l,"is--required":i,"is--hidden":o&&I,"is--active":!y||y(O),"is--error":f}],key:t},[w("div",{class:"vxe-form--item-inner"},[l||r&&r.title?w("div",{class:["vxe-form--item-title",x?"align--".concat(x):null,{"is--ellipsis":E}],style:b?{width:isNaN(b)?b:"".concat(b,"px")}:null,attrs:{title:s?_tools.UtilTools.getFuncText(l):null},on:h},(0,_render.renderTitle)(w,$,e)):null,w("div",{class:["vxe-form--item-content",_?"align--".concat(_):null]},T.concat([u?w("div",{class:"vxe-form--item-trigger-node",on:{click:$.toggleCollapseEvent}},[w("span",{class:"vxe-form--item-trigger-text"},I?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),w("i",{class:["vxe-form--item-trigger-icon",I?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})]):null,d&&P.showMessage?w("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&&_tools.UtilTools.error("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,o=this.vSize,n=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(o),o),_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"},n)):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]||_tools.UtilTools.error("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},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,o=this.data;return o&&this.getItems().forEach(function(e){var t=e.field,i=e.resetValue,r=e.itemRender;(0,_tools.isEnableConf)(r)&&((r=_vXETable.default.renderer.get(r.name))&&r.itemResetMethod?r.itemResetMethod({data:o,field:t,property:t,item:e,$form:l}):t&&_xeUtils.default.set(o,t,null===i?getResetValue(_xeUtils.default.get(o,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,o=e.currentTarget.children[0],t=(o.textContent||"").trim(),e=o.scrollWidth>o.clientWidth;clearTimeout(this.tooltipTimeout),this.tooltipActive=!0,this.closeTooltip(),t&&e&&(Object.assign(r,{item:i,visible:!0}),l&&l.open(o,t))},handleTargetLeaveEvent:function(){var t=this,e=this.tooltipOpts;this.tooltipActive=!1,e.enterable?this.tooltipTimeout=setTimeout(function(){var e=t.$refs.tooltip;e&&!e.isHover&&t.closeTooltip()},e.leaveDelay):this.closeTooltip()},clearValidate:function(t){var e,i=this.getItems();return t?(e=i.find(function(e){return e.field===t}))&&(e.showError=!1):i.forEach(function(e){e.showError=!1}),this.$nextTick()},validate:function(e){return this.clearValidate(),this.beginValidate(this.getItems(),"",e)},validateField:function(t,e){return this.beginValidate(this.getItems().filter(function(e){return e.field===t}),"",e)},beginValidate:function(i,e,r){var l=this,o=this.data,t=this.rules,n=this.validOpts,s={},a=[],u=[];return clearTimeout(this.showErrTime),o&&t?(i.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:o,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(){r&&r()}).catch(function(){return new Promise(function(e,t){l.showErrTime=setTimeout(function(){i.forEach(function(e){e.errRule&&(e.showError=!0)})},20),n.autoPos&&l.$nextTick(function(){l.handleFocus(a)}),r?(r(s),e()):t(s)})})):(r&&r(),Promise.resolve())},validItemRules:function(o,n,e){var s,a,u=this,c=this.data,t=this.rules,f=[],d=[];return n&&t&&((s=_xeUtils.default.get(t,n))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(c,n):e,s.forEach(function(t){var e,i=t.type,r=t.trigger,l=t.required;"all"!==o&&r&&o!==t.trigger||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:s,data:c,field:n,property:n,$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.$el,s=this.getItems();e.some(function(t,e){var i=s.find(function(e){return e.field===t});if(i&&(0,_tools.isEnableConf)(i.itemRender)){var r,l=i.itemRender,o=_vXETable.default.renderer.get(l.name);if(e||_tools.DomTools.scrollToView(n.querySelector(".".concat(i.id))),r=!(r=l.autofocus?n.querySelector(".".concat(i.id," ").concat(l.autofocus)):r)&&o&&o.autofocus?n.querySelector(".".concat(i.id," ").concat(o.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.getItems().find(function(e){return e.field===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;
|