vxe-table 4.1.5 → 4.1.6
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/es/form/src/form.js +2 -2
- package/es/table/src/table.js +13 -9
- package/es/v-x-e-table/src/conf.js +1 -1
- package/es/validator/src/hook.js +3 -3
- package/lib/form/src/form.js +2 -2
- package/lib/form/src/form.min.js +1 -1
- package/lib/index.umd.js +31 -112
- package/lib/index.umd.min.js +2 -1
- package/lib/table/src/table.js +14 -12
- package/lib/table/src/table.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +1 -1
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/lib/validator/src/hook.js +3 -3
- package/lib/validator/src/hook.min.js +1 -1
- package/package.json +3 -26
- package/packages/form/src/form.ts +2 -2
- package/packages/table/src/table.ts +12 -8
- package/packages/v-x-e-table/src/conf.ts +1 -1
- package/packages/v-x-e-table/src/renderer.ts +1 -1
- package/packages/validator/src/hook.ts +3 -3
- package/types/v-x-e-table/renderer.d.ts +4 -2
package/es/form/src/form.js
CHANGED
|
@@ -379,7 +379,7 @@ export default defineComponent({
|
|
|
379
379
|
callback();
|
|
380
380
|
}
|
|
381
381
|
}).catch(function () {
|
|
382
|
-
return new Promise(function (resolve
|
|
382
|
+
return new Promise(function (resolve) {
|
|
383
383
|
showErrTime = window.setTimeout(function () {
|
|
384
384
|
itemList.forEach(function (item) {
|
|
385
385
|
if (item.errRule) {
|
|
@@ -397,7 +397,7 @@ export default defineComponent({
|
|
|
397
397
|
resolve();
|
|
398
398
|
}
|
|
399
399
|
else {
|
|
400
|
-
|
|
400
|
+
resolve(validRest);
|
|
401
401
|
}
|
|
402
402
|
});
|
|
403
403
|
});
|
package/es/table/src/table.js
CHANGED
|
@@ -3054,6 +3054,17 @@ export default defineComponent({
|
|
|
3054
3054
|
var treeOpts = computeTreeOpts.value;
|
|
3055
3055
|
var reserveSelection = [];
|
|
3056
3056
|
if (checkboxOpts.reserve) {
|
|
3057
|
+
var afterFullIdMaps_1 = {};
|
|
3058
|
+
if (treeConfig) {
|
|
3059
|
+
XEUtils.eachTree(afterFullData, function (row) {
|
|
3060
|
+
afterFullIdMaps_1[getRowid($xetable, row)] = 1;
|
|
3061
|
+
}, treeOpts);
|
|
3062
|
+
}
|
|
3063
|
+
else {
|
|
3064
|
+
afterFullData.forEach(function (row) {
|
|
3065
|
+
afterFullIdMaps_1[getRowid($xetable, row)] = 1;
|
|
3066
|
+
});
|
|
3067
|
+
}
|
|
3057
3068
|
XEUtils.each(checkboxReserveRowMap, function (oldRow, oldRowid) {
|
|
3058
3069
|
if (oldRow) {
|
|
3059
3070
|
if (isFull) {
|
|
@@ -3062,15 +3073,8 @@ export default defineComponent({
|
|
|
3062
3073
|
}
|
|
3063
3074
|
}
|
|
3064
3075
|
else {
|
|
3065
|
-
if (
|
|
3066
|
-
|
|
3067
|
-
reserveSelection.push(oldRow);
|
|
3068
|
-
}
|
|
3069
|
-
}
|
|
3070
|
-
else {
|
|
3071
|
-
if (!afterFullData.some(function (row) { return getRowid($xetable, row) === oldRowid; })) {
|
|
3072
|
-
reserveSelection.push(oldRow);
|
|
3073
|
-
}
|
|
3076
|
+
if (!afterFullIdMaps_1[oldRowid]) {
|
|
3077
|
+
reserveSelection.push(oldRow);
|
|
3074
3078
|
}
|
|
3075
3079
|
}
|
|
3076
3080
|
}
|
|
@@ -10,6 +10,7 @@ var GlobalConfig = {
|
|
|
10
10
|
showHeader: true,
|
|
11
11
|
animat: true,
|
|
12
12
|
delayHover: 250,
|
|
13
|
+
autoResize: true,
|
|
13
14
|
// keepSource: false,
|
|
14
15
|
// showOverflow: null,
|
|
15
16
|
// showHeaderOverflow: null,
|
|
@@ -17,7 +18,6 @@ var GlobalConfig = {
|
|
|
17
18
|
// resizeInterval: 500,
|
|
18
19
|
// size: null,
|
|
19
20
|
// zIndex: null,
|
|
20
|
-
// autoResize: false,
|
|
21
21
|
// stripe: false,
|
|
22
22
|
// border: false,
|
|
23
23
|
// round: false,
|
package/es/validator/src/hook.js
CHANGED
|
@@ -160,14 +160,14 @@ var validatorHook = {
|
|
|
160
160
|
var ruleProps = Object.keys(validRest);
|
|
161
161
|
return nextTick().then(function () {
|
|
162
162
|
if (ruleProps.length) {
|
|
163
|
-
return
|
|
163
|
+
return validRest[ruleProps[0]][0];
|
|
164
164
|
}
|
|
165
165
|
if (cb) {
|
|
166
166
|
cb();
|
|
167
167
|
}
|
|
168
168
|
});
|
|
169
169
|
}).catch(function (firstErrParams) {
|
|
170
|
-
return new Promise(function (resolve
|
|
170
|
+
return new Promise(function (resolve) {
|
|
171
171
|
var finish = function () {
|
|
172
172
|
nextTick(function () {
|
|
173
173
|
if (cb) {
|
|
@@ -175,7 +175,7 @@ var validatorHook = {
|
|
|
175
175
|
resolve();
|
|
176
176
|
}
|
|
177
177
|
else {
|
|
178
|
-
|
|
178
|
+
resolve(validRest);
|
|
179
179
|
}
|
|
180
180
|
});
|
|
181
181
|
};
|
package/lib/form/src/form.js
CHANGED
|
@@ -563,7 +563,7 @@ var _default2 = (0, _vue.defineComponent)({
|
|
|
563
563
|
callback();
|
|
564
564
|
}
|
|
565
565
|
}).catch(function () {
|
|
566
|
-
return new Promise(function (resolve
|
|
566
|
+
return new Promise(function (resolve) {
|
|
567
567
|
showErrTime = window.setTimeout(function () {
|
|
568
568
|
itemList.forEach(function (item) {
|
|
569
569
|
if (item.errRule) {
|
|
@@ -582,7 +582,7 @@ var _default2 = (0, _vue.defineComponent)({
|
|
|
582
582
|
callback(validRest);
|
|
583
583
|
resolve();
|
|
584
584
|
} else {
|
|
585
|
-
|
|
585
|
+
resolve(validRest);
|
|
586
586
|
}
|
|
587
587
|
});
|
|
588
588
|
});
|
package/lib/form/src/form.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util"),_render=require("./render"),_size=require("../../hooks/size");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},Rule=function(){function e(e){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 Object.defineProperty(e.prototype,"content",{get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this.content},enumerable:!1,configurable:!0}),e}(),validErrorRuleValue=function(e,t){var i=e.type,n=e.min,r=e.max,l=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(n)&&i<_xeUtils.default.toNumber(n)||(!_xeUtils.default.eqNull(r)&&i>_xeUtils.default.toNumber(r)||!(!l||(_xeUtils.default.isRegExp(l)?l:new RegExp(l)).test(t))))};function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}var _default2=(0,_vue.defineComponent)({name:"VxeForm",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}}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup:function(V,e){function t(){var e=b.value;return setTimeout(function(){a.tooltipActive||h.closeTooltip()},e.leaveDelay),!1}function i(e){return e.length&&("development"===process.env.NODE_ENV&&e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),p.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(A,e)},{children:"children"})),(0,_vue.nextTick)()}function n(){return p.collapseAll}function r(){var e=!n();return p.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()}function c(e){e.preventDefault(),R(),h.dispatchEvent("reset",{data:V.data},e)}function f(t){t.preventDefault(),V.preventSubmit||N(T()).then(function(){h.dispatchEvent("submit",{data:V.data},t)}).catch(function(e){h.dispatchEvent("submit-invalid",{data:V.data,errMap:e},t)})}function o(){var e=a.tooltipStore,t=g.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),(0,_vue.nextTick)()}function q(e){var S=V.data,w=V.rules,N=V.titleOverflow,O=p.collapseAll,C=x.value;return e.map(function(e,t){var i=e.slots,n=e.title,r=e.visible,l=e.folding,o=e.visibleMethod,u=e.field,a=e.collapseNode,s=e.itemRender,c=e.showError,f=e.errRule,d=e.className,v=e.titleOverflow,m=e.children,p=(0,_utils.isEnableConf)(s)?_vXETable.VXETable.renderer.get(s.name):null,_=i?i.default:null,g=i?i.title:null,h=e.span||V.span,x=e.align||V.align,b=e.titleAlign||V.titleAlign,y=e.titleWidth||V.titleWidth,E=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?N:v,T="title"===E,i=!0===E||"tooltip"===E,v=T||i||"ellipsis"===E,E=o,U={data:S,property:u,item:e,$form:A};if(!1===r)return(0,_vue.createCommentVNode)();o=!1;if(!w||(r=w[u])&&(o=r.some(function(e){return e.required})),m&&0<m.length){var R=q(e.children);return R.length?(0,_vue.h)("div",{class:["vxe-form--gather vxe-row",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:""]},R):(0,_vue.createCommentVNode)()}!E&&p&&p.itemVisibleMethod&&(E=p.itemVisibleMethod);R=[];_?R=j(_,U):p&&p.renderItemContent?R=p.renderItemContent(s,U):u&&(R=[""+_xeUtils.default.get(S,u)]),a&&R.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:M},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},O?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",O?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})])),f&&C.showMessage&&R.push((0,_vue.h)("div",{class:"vxe-form--item-valid",style:f.maxWidth?{width:f.maxWidth+"px"}:null},f.content));i=i?{onMouseenter:function(e){I(e,U)},onMouseleave:D}:{};return(0,_vue.h)("div",{class:["vxe-form--item",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:"",{"is--title":n,"is--required":o,"is--hidden":l&&O,"is--active":!E||E(U),"is--error":c}],key:t},[(0,_vue.h)("div",{class:"vxe-form--item-inner"},[n||g?(0,_vue.h)("div",__assign({class:["vxe-form--item-title",b?"align--"+b:null,{"is--ellipsis":v}],style:y?{width:isNaN(y)?y:y+"px"}:null,title:T?(0,_utils.getFuncText)(n):null},i),(0,_render.renderTitle)(A,e)):null,(0,_vue.h)("div",{class:["vxe-form--item-content",x?"align--"+x:null]},R)])])})}var s,d=_vXETable.VXETable.tooltip,v=e.slots,l=e.emit,u=_xeUtils.default.uniqueId(),m=(0,_size.useSize)(V),p=(0,_vue.reactive)({collapseAll:V.collapseStatus,staticItems:[],formItems:[]}),a=(0,_vue.reactive)({tooltipTimeout:null,tooltipActive:!1,tooltipStore:{item:null,visible:!1}}),_=(0,_vue.ref)(),g=(0,_vue.ref)(),h={},x=(0,_vue.computed)(function(){return Object.assign({},_conf.default.form.validConfig,V.validConfig)}),b=(0,_vue.ref)(),b=(0,_vue.computed)(function(){var e=Object.assign({leaveDelay:300},_conf.default.form.tooltipConfig,V.tooltipConfig);return e.enterable&&(e.leaveMethod=t),e}),y={refElem:_},E={computeSize:m,computeValidOpts:x,computeTooltipOpts:b},A={xID:u,props:V,context:e,reactData:p,getRefMaps:function(){return y},getComputeMaps:function(){return E}},j=function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=v[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},T=function(){var t=[];return _xeUtils.default.eachTree(p.formItems,function(e){t.push(e)},{children:"children"}),t},M=function(e){r();var t=n();h.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:V.data},e),h.dispatchEvent("collapse",{status:t,collapse:t,data:V.data},e)},U=function(t){var e,i=T();return t?(e=i.find(function(e){return e.field===t}))&&(e.showError=!1):i.forEach(function(e){e.showError=!1}),(0,_vue.nextTick)()},R=function(){var r=V.data,e=T();return r&&e.forEach(function(e){var t=e.field,i=e.resetValue,n=e.itemRender;(0,_utils.isEnableConf)(n)&&((n=_vXETable.VXETable.renderer.get(n.name))&&n.itemResetMethod?n.itemResetMethod({data:r,property:t,item:e,$form:A}):t&&_xeUtils.default.set(r,t,null===i?getResetValue(_xeUtils.default.get(r,t),void 0):i))}),U()},S=function(e){var o=T(),u=_.value;e.some(function(t,e){var i=o.find(function(e){return e.field===t});if(i&&(0,_utils.isEnableConf)(i.itemRender)){var n=i.itemRender,r=_vXETable.VXETable.renderer.get(n.name),l=null;if(e||(0,_dom.scrollToView)(u.querySelector("."+i.id)),l=!(l=n.autofocus?u.querySelector("."+i.id+" "+n.autofocus):l)&&r&&r.autofocus?u.querySelector("."+i.id+" "+r.autofocus):l)return l.focus(),!0}})},w=function(l,o,e){var u,a,s=V.data,t=V.rules,c=[],f=[];return o&&t&&((u=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(s,o):e,u.forEach(function(t){var e,i=t.type,n=t.trigger,r=t.required;"all"!==l&&n&&l!==n||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:u,data:s,property:o,$form:A}))&&(_xeUtils.default.isError(e)?c.push(new Rule({type:"custom",trigger:n,content:e.message,rule:new Rule(t)})):e.catch&&f.push(e.catch(function(e){c.push(new Rule({type:"custom",trigger:n,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))&&c.push(new Rule(t))))}))),Promise.all(f).then(function(){if(c.length){var e={rules:c,rule:c[0]};return Promise.reject(e)}})},N=function(i,e,n){var r=V.data,t=V.rules,l=x.value,o={},u=[],a=[];return U(),clearTimeout(s),r&&t?(i.forEach(function(i){var n=i.field;n&&a.push(w(e||"all",n).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:r,property:n,$form:A};return o[n]||(o[n]=[]),o[n].push(e),u.push(n),i.errRule=t,Promise.reject(e)}))}),Promise.all(a).then(function(){n&&n()}).catch(function(){return new Promise(function(e,t){s=window.setTimeout(function(){i.forEach(function(e){e.errRule&&(e.showError=!0)})},20),!1!==l.autoPos&&(0,_vue.nextTick)(function(){S(u)}),n?(n(o),e()):t(o)})})):(n&&n(),Promise.resolve())},I=function(e,t){var i=t.item,n=a.tooltipStore,r=g.value,l=e.currentTarget.children[0],t=(l.textContent||"").trim(),e=l.scrollWidth>l.clientWidth;clearTimeout(a.tooltipTimeout),a.tooltipActive=!0,o(),t&&e&&(Object.assign(n,{item:i,visible:!0}),r&&r.open(l,t))},D=function(){var e=b.value;a.tooltipActive=!1,e.enterable?a.tooltipTimeout=setTimeout(function(){var e=g.value;e&&!e.reactData.isHover&&o()},e.leaveDelay):o()},h={dispatchEvent:function(e,t,i){l(e,Object.assign({$form:A,$event:i},t))},reset:R,validate:function(e){return N(T(),"",e)},validateField:function(t,e){return N(T().filter(function(e){return e.field===t}),"",e)},clearValidate:U,updateStatus:function(e,t){var i=e.property;i&&w("change",i,t).then(function(){U(i)}).catch(function(e){var t=e.rule,e=T().find(function(e){return e.field===i});e&&(e.showError=!0,e.errRule=t)})},toggleCollapse:r,getItems:T,closeTooltip:o};Object.assign(A,h,{callSlot:j,toggleCollapseEvent:M,triggerHeaderHelpEvent:I,handleTargetLeaveEvent:D}),(0,_vue.watch)(function(){return p.staticItems},function(e){p.formItems=e}),(0,_vue.watch)(function(){return V.items},function(e){i(e||[])}),(0,_vue.watch)(function(){return V.collapseStatus},function(e){p.collapseAll=!!e}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){"development"===process.env.NODE_ENV&&V.customLayout&&V.items&&(0,_utils.errLog)("vxe.error.errConflicts",["custom-layout","items"]),i(V.items||[])})});return A.renderVN=function(){var e=V.loading,t=V.className,i=V.data,n=V.titleColon,r=V.titleAsterisk,l=V.customLayout,o=p.formItems,u=m.value,a=b.value,s=v.default;return(0,_vue.h)("form",{ref:_,class:["vxe-form",t?_xeUtils.default.isFunction(t)?t({items:o,data:i,$form:A}):t:"",((t={})["size--"+u]=u,t["is--colon"]=n,t["is--asterisk"]=r,t["is--loading"]=e,t)],onSubmit:f,onReset:c},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-row"},l?s?s({}):[]:q(o)),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!l&&s?s({}):[]),(0,_vue.h)("div",{class:["vxe-loading",{"is--visible":e}]},[(0,_vue.h)("div",{class:"vxe-loading--spinner"})]),d?(0,_vue.h)((0,_vue.resolveComponent)("vxe-tooltip"),__assign({ref:g},a)):(0,_vue.createCommentVNode)()])},(0,_vue.provide)("$xeform",A),A},render:function(){return this.renderVN()}});exports.default=_default2;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_vXETable=require("../../v-x-e-table"),_utils=require("../../tools/utils"),_dom=require("../../tools/dom"),_util=require("./util"),_render=require("./render"),_size=require("../../hooks/size");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)},Rule=function(){function e(e){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 Object.defineProperty(e.prototype,"content",{get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"message",{get:function(){return this.content},enumerable:!1,configurable:!0}),e}(),validErrorRuleValue=function(e,t){var i=e.type,n=e.min,r=e.max,l=e.pattern,e="number"===i,i=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(n)&&i<_xeUtils.default.toNumber(n)||(!_xeUtils.default.eqNull(r)&&i>_xeUtils.default.toNumber(r)||!(!l||(_xeUtils.default.isRegExp(l)?l:new RegExp(l)).test(t))))};function getResetValue(e,t){return t=_xeUtils.default.isArray(e)?[]:t}var _default2=(0,_vue.defineComponent)({name:"VxeForm",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}}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup:function(V,e){function t(){var e=b.value;return setTimeout(function(){a.tooltipActive||h.closeTooltip()},e.leaveDelay),!1}function i(e){return e.length&&("development"===process.env.NODE_ENV&&e.forEach(function(e){e.slots&&_xeUtils.default.each(e.slots,function(e){_xeUtils.default.isFunction(e)||v[e]||(0,_utils.errLog)("vxe.error.notSlot",[e])})}),p.staticItems=_xeUtils.default.mapTree(e,function(e){return(0,_util.createItem)(A,e)},{children:"children"})),(0,_vue.nextTick)()}function n(){return p.collapseAll}function r(){var e=!n();return p.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()}function c(e){e.preventDefault(),R(),h.dispatchEvent("reset",{data:V.data},e)}function f(t){t.preventDefault(),V.preventSubmit||N(T()).then(function(){h.dispatchEvent("submit",{data:V.data},t)}).catch(function(e){h.dispatchEvent("submit-invalid",{data:V.data,errMap:e},t)})}function o(){var e=a.tooltipStore,t=g.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t&&t.close()),(0,_vue.nextTick)()}function q(e){var S=V.data,w=V.rules,N=V.titleOverflow,O=p.collapseAll,C=x.value;return e.map(function(e,t){var i=e.slots,n=e.title,r=e.visible,l=e.folding,o=e.visibleMethod,u=e.field,a=e.collapseNode,s=e.itemRender,c=e.showError,f=e.errRule,d=e.className,v=e.titleOverflow,m=e.children,p=(0,_utils.isEnableConf)(s)?_vXETable.VXETable.renderer.get(s.name):null,_=i?i.default:null,g=i?i.title:null,h=e.span||V.span,x=e.align||V.align,b=e.titleAlign||V.titleAlign,y=e.titleWidth||V.titleWidth,E=_xeUtils.default.isUndefined(v)||_xeUtils.default.isNull(v)?N:v,T="title"===E,i=!0===E||"tooltip"===E,v=T||i||"ellipsis"===E,E=o,U={data:S,property:u,item:e,$form:A};if(!1===r)return(0,_vue.createCommentVNode)();o=!1;if(!w||(r=w[u])&&(o=r.some(function(e){return e.required})),m&&0<m.length){var R=q(e.children);return R.length?(0,_vue.h)("div",{class:["vxe-form--gather vxe-row",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:""]},R):(0,_vue.createCommentVNode)()}!E&&p&&p.itemVisibleMethod&&(E=p.itemVisibleMethod);R=[];_?R=j(_,U):p&&p.renderItemContent?R=p.renderItemContent(s,U):u&&(R=[""+_xeUtils.default.get(S,u)]),a&&R.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:M},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},O?_conf.default.i18n("vxe.form.unfolding"):_conf.default.i18n("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",O?_conf.default.icon.FORM_FOLDING:_conf.default.icon.FORM_UNFOLDING]})])),f&&C.showMessage&&R.push((0,_vue.h)("div",{class:"vxe-form--item-valid",style:f.maxWidth?{width:f.maxWidth+"px"}:null},f.content));i=i?{onMouseenter:function(e){I(e,U)},onMouseleave:D}:{};return(0,_vue.h)("div",{class:["vxe-form--item",e.id,h?"vxe-col--"+h+" is--span":"",d?_xeUtils.default.isFunction(d)?d(U):d:"",{"is--title":n,"is--required":o,"is--hidden":l&&O,"is--active":!E||E(U),"is--error":c}],key:t},[(0,_vue.h)("div",{class:"vxe-form--item-inner"},[n||g?(0,_vue.h)("div",__assign({class:["vxe-form--item-title",b?"align--"+b:null,{"is--ellipsis":v}],style:y?{width:isNaN(y)?y:y+"px"}:null,title:T?(0,_utils.getFuncText)(n):null},i),(0,_render.renderTitle)(A,e)):null,(0,_vue.h)("div",{class:["vxe-form--item-content",x?"align--"+x:null]},R)])])})}var s,d=_vXETable.VXETable.tooltip,v=e.slots,l=e.emit,u=_xeUtils.default.uniqueId(),m=(0,_size.useSize)(V),p=(0,_vue.reactive)({collapseAll:V.collapseStatus,staticItems:[],formItems:[]}),a=(0,_vue.reactive)({tooltipTimeout:null,tooltipActive:!1,tooltipStore:{item:null,visible:!1}}),_=(0,_vue.ref)(),g=(0,_vue.ref)(),h={},x=(0,_vue.computed)(function(){return Object.assign({},_conf.default.form.validConfig,V.validConfig)}),b=(0,_vue.ref)(),b=(0,_vue.computed)(function(){var e=Object.assign({leaveDelay:300},_conf.default.form.tooltipConfig,V.tooltipConfig);return e.enterable&&(e.leaveMethod=t),e}),y={refElem:_},E={computeSize:m,computeValidOpts:x,computeTooltipOpts:b},A={xID:u,props:V,context:e,reactData:p,getRefMaps:function(){return y},getComputeMaps:function(){return E}},j=function(e,t){return e&&(_xeUtils.default.isString(e)&&(e=v[e]||null),_xeUtils.default.isFunction(e))?e(t):[]},T=function(){var t=[];return _xeUtils.default.eachTree(p.formItems,function(e){t.push(e)},{children:"children"}),t},M=function(e){r();var t=n();h.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:V.data},e),h.dispatchEvent("collapse",{status:t,collapse:t,data:V.data},e)},U=function(t){var e,i=T();return t?(e=i.find(function(e){return e.field===t}))&&(e.showError=!1):i.forEach(function(e){e.showError=!1}),(0,_vue.nextTick)()},R=function(){var r=V.data,e=T();return r&&e.forEach(function(e){var t=e.field,i=e.resetValue,n=e.itemRender;(0,_utils.isEnableConf)(n)&&((n=_vXETable.VXETable.renderer.get(n.name))&&n.itemResetMethod?n.itemResetMethod({data:r,property:t,item:e,$form:A}):t&&_xeUtils.default.set(r,t,null===i?getResetValue(_xeUtils.default.get(r,t),void 0):i))}),U()},S=function(e){var o=T(),u=_.value;e.some(function(t,e){var i=o.find(function(e){return e.field===t});if(i&&(0,_utils.isEnableConf)(i.itemRender)){var n=i.itemRender,r=_vXETable.VXETable.renderer.get(n.name),l=null;if(e||(0,_dom.scrollToView)(u.querySelector("."+i.id)),l=!(l=n.autofocus?u.querySelector("."+i.id+" "+n.autofocus):l)&&r&&r.autofocus?u.querySelector("."+i.id+" "+r.autofocus):l)return l.focus(),!0}})},w=function(l,o,e){var u,a,s=V.data,t=V.rules,c=[],f=[];return o&&t&&((u=_xeUtils.default.get(t,o))&&(a=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(s,o):e,u.forEach(function(t){var e,i=t.type,n=t.trigger,r=t.required;"all"!==l&&n&&l!==n||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({itemValue:a,rule:t,rules:u,data:s,property:o,$form:A}))&&(_xeUtils.default.isError(e)?c.push(new Rule({type:"custom",trigger:n,content:e.message,rule:new Rule(t)})):e.catch&&f.push(e.catch(function(e){c.push(new Rule({type:"custom",trigger:n,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))&&c.push(new Rule(t))))}))),Promise.all(f).then(function(){if(c.length){var e={rules:c,rule:c[0]};return Promise.reject(e)}})},N=function(t,e,i){var r=V.data,n=V.rules,l=x.value,o={},u=[],a=[];return U(),clearTimeout(s),r&&n?(t.forEach(function(i){var n=i.field;n&&a.push(w(e||"all",n).then(function(){i.errRule=null}).catch(function(e){var t=e.rule,e={rule:t,rules:e.rules,data:r,property:n,$form:A};return o[n]||(o[n]=[]),o[n].push(e),u.push(n),i.errRule=t,Promise.reject(e)}))}),Promise.all(a).then(function(){i&&i()}).catch(function(){return new Promise(function(e){s=window.setTimeout(function(){t.forEach(function(e){e.errRule&&(e.showError=!0)})},20),!1!==l.autoPos&&(0,_vue.nextTick)(function(){S(u)}),i?(i(o),e()):e(o)})})):(i&&i(),Promise.resolve())},I=function(e,t){var i=t.item,n=a.tooltipStore,r=g.value,l=e.currentTarget.children[0],t=(l.textContent||"").trim(),e=l.scrollWidth>l.clientWidth;clearTimeout(a.tooltipTimeout),a.tooltipActive=!0,o(),t&&e&&(Object.assign(n,{item:i,visible:!0}),r&&r.open(l,t))},D=function(){var e=b.value;a.tooltipActive=!1,e.enterable?a.tooltipTimeout=setTimeout(function(){var e=g.value;e&&!e.reactData.isHover&&o()},e.leaveDelay):o()},h={dispatchEvent:function(e,t,i){l(e,Object.assign({$form:A,$event:i},t))},reset:R,validate:function(e){return N(T(),"",e)},validateField:function(t,e){return N(T().filter(function(e){return e.field===t}),"",e)},clearValidate:U,updateStatus:function(e,t){var i=e.property;i&&w("change",i,t).then(function(){U(i)}).catch(function(e){var t=e.rule,e=T().find(function(e){return e.field===i});e&&(e.showError=!0,e.errRule=t)})},toggleCollapse:r,getItems:T,closeTooltip:o};Object.assign(A,h,{callSlot:j,toggleCollapseEvent:M,triggerHeaderHelpEvent:I,handleTargetLeaveEvent:D}),(0,_vue.watch)(function(){return p.staticItems},function(e){p.formItems=e}),(0,_vue.watch)(function(){return V.items},function(e){i(e||[])}),(0,_vue.watch)(function(){return V.collapseStatus},function(e){p.collapseAll=!!e}),(0,_vue.onMounted)(function(){(0,_vue.nextTick)(function(){"development"===process.env.NODE_ENV&&V.customLayout&&V.items&&(0,_utils.errLog)("vxe.error.errConflicts",["custom-layout","items"]),i(V.items||[])})});return A.renderVN=function(){var e=V.loading,t=V.className,i=V.data,n=V.titleColon,r=V.titleAsterisk,l=V.customLayout,o=p.formItems,u=m.value,a=b.value,s=v.default;return(0,_vue.h)("form",{ref:_,class:["vxe-form",t?_xeUtils.default.isFunction(t)?t({items:o,data:i,$form:A}):t:"",((t={})["size--"+u]=u,t["is--colon"]=n,t["is--asterisk"]=r,t["is--loading"]=e,t)],onSubmit:f,onReset:c},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-row"},l?s?s({}):[]:q(o)),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!l&&s?s({}):[]),(0,_vue.h)("div",{class:["vxe-loading",{"is--visible":e}]},[(0,_vue.h)("div",{class:"vxe-loading--spinner"})]),d?(0,_vue.h)((0,_vue.resolveComponent)("vxe-tooltip"),__assign({ref:g},a)):(0,_vue.createCommentVNode)()])},(0,_vue.provide)("$xeform",A),A},render:function(){return this.renderVN()}});exports.default=_default2;
|