vxe-table 3.5.6 → 3.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/all.js +15 -15
- package/lib/all.min.js +1 -1
- package/lib/button/style/style.css +0 -5
- package/lib/button/style/style.min.css +1 -1
- package/lib/checkbox/src/checkbox.js +12 -2
- package/lib/checkbox/src/checkbox.min.js +1 -1
- package/lib/checkbox/src/group.js +14 -2
- package/lib/checkbox/src/group.min.js +1 -1
- package/lib/edit/src/mixin.js +39 -4
- package/lib/edit/src/mixin.min.js +1 -1
- package/lib/form/src/form-config-item.js +185 -0
- package/lib/form/src/form-config-item.min.js +1 -0
- package/lib/form/src/form-gather.js +5 -1
- package/lib/form/src/form-gather.min.js +1 -1
- package/lib/form/src/form-item.js +17 -1
- package/lib/form/src/form-item.min.js +1 -1
- package/lib/form/src/form.js +35 -149
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/util.js +3 -3
- package/lib/form/src/util.min.js +1 -1
- package/lib/form/style/style.css +6 -6
- package/lib/form/style/style.min.css +1 -1
- package/lib/icon/style/style.css +11 -9
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.umd.js +1555 -1286
- package/lib/index.umd.min.js +1 -1
- package/lib/input/src/input.js +60 -7
- package/lib/input/src/input.min.js +1 -1
- package/lib/input/style/style.css +5 -0
- package/lib/input/style/style.min.css +1 -1
- package/lib/radio/src/button.js +12 -2
- package/lib/radio/src/button.min.js +1 -1
- package/lib/radio/src/group.js +14 -2
- package/lib/radio/src/group.min.js +1 -1
- package/lib/radio/src/radio.js +12 -2
- package/lib/radio/src/radio.min.js +1 -1
- package/lib/select/src/select.js +13 -1
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/switch/src/switch.js +14 -1
- package/lib/switch/src/switch.min.js +1 -1
- package/lib/table/src/body.js +18 -9
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/methods.js +1 -1
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/src/table.js +4 -2
- package/lib/table/src/table.min.js +1 -1
- package/lib/textarea/src/textarea.js +13 -1
- package/lib/textarea/src/textarea.min.js +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/validator/src/mixin.js +1 -1
- package/lib/validator/src/mixin.min.js +1 -1
- package/package.json +2 -2
- package/packages/all.js +0 -2
- package/packages/checkbox/src/checkbox.js +11 -1
- package/packages/checkbox/src/group.js +13 -1
- package/packages/edit/src/mixin.js +39 -4
- package/packages/form/src/form-config-item.js +150 -0
- package/packages/form/src/form-gather.js +5 -1
- package/packages/form/src/form-item.js +17 -1
- package/packages/form/src/form.js +31 -126
- package/packages/form/src/util.js +3 -3
- package/packages/input/src/input.js +45 -6
- package/packages/radio/src/button.js +11 -1
- package/packages/radio/src/group.js +13 -1
- package/packages/radio/src/radio.js +11 -1
- package/packages/select/src/select.js +12 -0
- package/packages/switch/src/switch.js +12 -0
- package/packages/table/src/body.js +16 -7
- package/packages/table/src/methods.js +1 -1
- package/packages/table/src/table.js +3 -2
- package/packages/textarea/src/textarea.js +12 -0
- package/packages/validator/src/mixin.js +1 -1
- package/styles/button.scss +0 -5
- package/styles/form.scss +17 -19
- package/styles/icon.scss +10 -9
- package/styles/input.scss +4 -0
- package/styles/variable.scss +1 -0
- package/types/all.d.ts +0 -1
- package/types/optgroup.d.ts +1 -1
- package/types/option.d.ts +1 -1
- package/types/pulldown.d.ts +1 -1
- package/types/radio-button.d.ts +1 -1
- package/types/radio-group.d.ts +1 -1
|
@@ -62,6 +62,14 @@ var _default2 = {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
},
|
|
65
|
+
inject: {
|
|
66
|
+
$xeform: {
|
|
67
|
+
default: null
|
|
68
|
+
},
|
|
69
|
+
$xeformiteminfo: {
|
|
70
|
+
default: null
|
|
71
|
+
}
|
|
72
|
+
},
|
|
65
73
|
data: function data() {
|
|
66
74
|
return {
|
|
67
75
|
inputValue: this.value
|
|
@@ -190,7 +198,11 @@ var _default2 = {
|
|
|
190
198
|
this.$emit('change', {
|
|
191
199
|
value: value,
|
|
192
200
|
$event: evnt
|
|
193
|
-
});
|
|
201
|
+
}); // 自动更新校验状态
|
|
202
|
+
|
|
203
|
+
if (this.$xeform && this.$xeformiteminfo) {
|
|
204
|
+
this.$xeform.triggerItemEvent(evnt, this.$xeformiteminfo.itemConfig.field, value);
|
|
205
|
+
}
|
|
194
206
|
}
|
|
195
207
|
},
|
|
196
208
|
inputEvent: function inputEvent(evnt) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var autoTxtElem,_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_utils=require("../../tools/utils");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}var _default2={name:"VxeTextarea",mixins:[_size.default],model:{prop:"value",event:"modelValue"},props:{value:[String,Number],immediate:{type:Boolean,default:!0},name:String,readonly:Boolean,disabled:Boolean,placeholder:String,maxlength:[String,Number],rows:{type:[String,Number],default:2},cols:{type:[String,Number],default:null},showWordCount:Boolean,countMethod:Function,autosize:[Boolean,Object],form:String,resize:{type:String,default:function(){return _conf.default.textarea.resize}},className:String,size:{type:String,default:function(){return _conf.default.textarea.size||_conf.default.size}}},data:function(){return{inputValue:this.value}},computed:{inputCount:function(){return _xeUtils.default.getSize(this.inputValue)},isCountError:function(){return this.maxlength&&this.inputCount>_xeUtils.default.toNumber(this.maxlength)},defaultEvents:function(){var i=this,n={};return _xeUtils.default.each(this.$listeners,function(e,t){-1===["input","change","blur"].indexOf(t)&&(n[t]=i.triggerEvent)}),n.input=this.inputEvent,n.change=this.changeEvent,n.blur=this.blurEvent,n},sizeOpts:function(){return Object.assign({minRows:1,maxRows:10},_conf.default.textarea.autosize,this.autosize)}},watch:{value:function(e){this.inputValue=e,this.updateAutoTxt()}},mounted:function(){this.autosize&&(this.updateAutoTxt(),this.handleResize())},render:function(e){var t=this.className,i=this.defaultEvents,n=this.inputValue,a=this.vSize,u=this.name,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var autoTxtElem,_xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_size=_interopRequireDefault(require("../../mixins/size")),_utils=require("../../tools/utils");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}var _default2={name:"VxeTextarea",mixins:[_size.default],model:{prop:"value",event:"modelValue"},props:{value:[String,Number],immediate:{type:Boolean,default:!0},name:String,readonly:Boolean,disabled:Boolean,placeholder:String,maxlength:[String,Number],rows:{type:[String,Number],default:2},cols:{type:[String,Number],default:null},showWordCount:Boolean,countMethod:Function,autosize:[Boolean,Object],form:String,resize:{type:String,default:function(){return _conf.default.textarea.resize}},className:String,size:{type:String,default:function(){return _conf.default.textarea.size||_conf.default.size}}},inject:{$xeform:{default:null},$xeformiteminfo:{default:null}},data:function(){return{inputValue:this.value}},computed:{inputCount:function(){return _xeUtils.default.getSize(this.inputValue)},isCountError:function(){return this.maxlength&&this.inputCount>_xeUtils.default.toNumber(this.maxlength)},defaultEvents:function(){var i=this,n={};return _xeUtils.default.each(this.$listeners,function(e,t){-1===["input","change","blur"].indexOf(t)&&(n[t]=i.triggerEvent)}),n.input=this.inputEvent,n.change=this.changeEvent,n.blur=this.blurEvent,n},sizeOpts:function(){return Object.assign({minRows:1,maxRows:10},_conf.default.textarea.autosize,this.autosize)}},watch:{value:function(e){this.inputValue=e,this.updateAutoTxt()}},mounted:function(){this.autosize&&(this.updateAutoTxt(),this.handleResize())},render:function(e){var t=this.className,i=this.defaultEvents,n=this.inputValue,a=this.vSize,u=this.name,r=this.form,s=this.resize,o=this.placeholder,l=this.readonly,d=this.disabled,h=this.maxlength,f=this.autosize,c=this.showWordCount,m=this.countMethod,p=this.rows,x=this.cols,l={name:u,form:r,placeholder:o,maxlength:h,readonly:l,disabled:d,rows:p,cols:x};return o&&(l.placeholder=(0,_utils.getFuncText)(o)),e("div",{class:["vxe-textarea",t,(_defineProperty(t={},"size--".concat(a),a),_defineProperty(t,"is--autosize",f),_defineProperty(t,"is--disabled",d),_defineProperty(t,"def--rows",!_xeUtils.default.eqNull(p)),_defineProperty(t,"def--cols",!_xeUtils.default.eqNull(x)),t)]},[e("textarea",{ref:"textarea",class:"vxe-textarea--inner",domProps:{value:n},attrs:l,style:s?{resize:s}:null,on:i}),c?e("span",{class:["vxe-textarea--count",{"is--error":this.isCountError}]},m?"".concat(m({value:n})):"".concat(this.inputCount).concat(h?"/".concat(h):"")):null])},methods:{focus:function(){return this.$refs.textarea.focus(),this.$nextTick()},blur:function(){return this.$refs.textarea.blur(),this.$nextTick()},triggerEvent:function(e){var t=this.inputValue;this.$emit(e.type,{value:t,$event:e})},emitUpdate:function(e,t){this.inputValue=e,this.$emit("modelValue",e),this.value!==e&&(this.$emit("change",{value:e,$event:t}),this.$xeform&&this.$xeformiteminfo&&this.$xeform.triggerItemEvent(t,this.$xeformiteminfo.itemConfig.field,e))},inputEvent:function(e){var t=this.immediate,i=e.target.value;this.inputValue=i,t&&this.emitUpdate(i,e),this.handleResize(),this.triggerEvent(e)},changeEvent:function(e){this.immediate?this.triggerEvent(e):this.emitUpdate(this.inputValue,e)},blurEvent:function(e){var t=this.inputValue;this.immediate||this.emitUpdate(t,e),this.$emit("blur",{value:t,$event:e})},updateAutoTxt:function(){var e,t=this.$refs,i=this.inputValue,n=this.size;this.autosize&&((autoTxtElem=autoTxtElem||document.createElement("div")).parentNode||document.body.appendChild(autoTxtElem),e=t.textarea,t=getComputedStyle(e),autoTxtElem.className=["vxe-textarea--autosize",n?"size--".concat(n):""].join(" "),autoTxtElem.style.width="".concat(e.clientWidth,"px"),autoTxtElem.style.padding=t.padding,autoTxtElem.innerHTML=(""+(i||" ")).replace(/\n$/,"\n "))},handleResize:function(){var s=this;this.autosize&&this.$nextTick(function(){var e=s.$refs,t=s.sizeOpts,i=t.minRows,n=t.maxRows,a=e.textarea,u=autoTxtElem.clientHeight,r=getComputedStyle(a),t=_xeUtils.default.toNumber(r.lineHeight),e=_xeUtils.default.toNumber(r.paddingTop)+_xeUtils.default.toNumber(r.paddingBottom)+_xeUtils.default.toNumber(r.borderTopWidth)+_xeUtils.default.toNumber(r.borderBottomWidth),r=(u-e)/t,u=r&&/[0-9]/.test(r)?r:Math.floor(r)+1,r=u;u<i?r=i:n<u&&(r=n),a.style.height="".concat(r*t+e,"px")})}}};exports.default=_default2;
|
package/lib/tools/log.js
CHANGED
|
@@ -12,7 +12,7 @@ var _conf = _interopRequireDefault(require("../v-x-e-table/src/conf"));
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
14
|
function getLog(message, params) {
|
|
15
|
-
return "[vxe-table v".concat("3.5.
|
|
15
|
+
return "[vxe-table v".concat("3.5.7-beta.2", "] ", _conf.default.i18n(message, params));
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
function outLog(type) {
|
package/lib/tools/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.errLog=void 0,exports.getLog=getLog,exports.warnLog=void 0;var _conf=_interopRequireDefault(require("../v-x-e-table/src/conf"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getLog(e,r){return"[vxe-table v".concat("3.5.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.errLog=void 0,exports.getLog=getLog,exports.warnLog=void 0;var _conf=_interopRequireDefault(require("../v-x-e-table/src/conf"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function getLog(e,r){return"[vxe-table v".concat("3.5.7-beta.2","] ",_conf.default.i18n(e,r))}function outLog(o){return function(e,r){r=getLog(e,r);return console[o](r),r}}var warnLog=outLog("warn");exports.warnLog=warnLog;var errLog=outLog("error");exports.errLog=errLog;
|
package/lib/v-x-e-table/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={use:!0,config:!0,t:!0,_t:!0,v:!0,VXETable:!0};exports.VXETable=void 0,exports._t=_t,exports.default=exports.config=void 0,exports.t=t,exports.use=use,exports.v=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../v-x-e-table/src/conf")),_interceptor=require("./src/interceptor");Object.keys(_interceptor).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_interceptor[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _interceptor[e]}}))});var _renderer=require("./src/renderer");Object.keys(_renderer).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_renderer[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _renderer[e]}}))});var _commands=require("./src/commands");Object.keys(_commands).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_commands[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _commands[e]}}))});var _menus=require("./src/menus");Object.keys(_menus).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_menus[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _menus[e]}}))});var _formats=require("./src/formats");Object.keys(_formats).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_formats[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _formats[e]}}))});var _setup=require("./src/setup");Object.keys(_setup).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_setup[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _setup[e]}}))});var _utils=require("../tools/utils"),_log=require("../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default: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 r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var installedPlugins=[];function use(e,t){return e&&e.install&&-1===installedPlugins.indexOf(e)&&(e.install(VXETable,t),installedPlugins.push(e)),VXETable}function reg(e){"development"===process.env.NODE_ENV&&VXETable.Table&&(0,_log.errLog)("vxe.error.useErr",[e]),VXETable["_".concat(e)]=1}function getExportOrImpotType(e,r){var o=[];return _xeUtils.default.objectEach(e,function(e,t){0!==e&&e!==r||o.push(t)}),o}var VXETableConfig=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"zIndex",get:function(){return _utils.UtilTools.getLastZIndex()}},{key:"nextZIndex",get:function(){return _utils.UtilTools.nextZIndex()}},{key:"exportTypes",get:function(){return getExportOrImpotType(_conf.default.export.types,1)}},{key:"importTypes",get:function(){return getExportOrImpotType(_conf.default.export.types,2)}}]),e}(),config=new VXETableConfig;function t(e,t){return _conf.default.i18n(e,t)}function _t(e,t){return e?_xeUtils.default.toValueString(_conf.default.translate?_conf.default.translate(e,t):e):""}exports.config=config;var v="v3",VXETable={v:exports.v=v,version:"3.5.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _exportNames={use:!0,config:!0,t:!0,_t:!0,v:!0,VXETable:!0};exports.VXETable=void 0,exports._t=_t,exports.default=exports.config=void 0,exports.t=t,exports.use=use,exports.v=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../v-x-e-table/src/conf")),_interceptor=require("./src/interceptor");Object.keys(_interceptor).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_interceptor[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _interceptor[e]}}))});var _renderer=require("./src/renderer");Object.keys(_renderer).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_renderer[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _renderer[e]}}))});var _commands=require("./src/commands");Object.keys(_commands).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_commands[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _commands[e]}}))});var _menus=require("./src/menus");Object.keys(_menus).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_menus[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _menus[e]}}))});var _formats=require("./src/formats");Object.keys(_formats).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_formats[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _formats[e]}}))});var _setup=require("./src/setup");Object.keys(_setup).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(_exportNames,e)||e in exports&&exports[e]===_setup[e]||Object.defineProperty(exports,e,{enumerable:!0,get:function(){return _setup[e]}}))});var _utils=require("../tools/utils"),_log=require("../tools/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default: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 r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var installedPlugins=[];function use(e,t){return e&&e.install&&-1===installedPlugins.indexOf(e)&&(e.install(VXETable,t),installedPlugins.push(e)),VXETable}function reg(e){"development"===process.env.NODE_ENV&&VXETable.Table&&(0,_log.errLog)("vxe.error.useErr",[e]),VXETable["_".concat(e)]=1}function getExportOrImpotType(e,r){var o=[];return _xeUtils.default.objectEach(e,function(e,t){0!==e&&e!==r||o.push(t)}),o}var VXETableConfig=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"zIndex",get:function(){return _utils.UtilTools.getLastZIndex()}},{key:"nextZIndex",get:function(){return _utils.UtilTools.nextZIndex()}},{key:"exportTypes",get:function(){return getExportOrImpotType(_conf.default.export.types,1)}},{key:"importTypes",get:function(){return getExportOrImpotType(_conf.default.export.types,2)}}]),e}(),config=new VXETableConfig;function t(e,t){return _conf.default.i18n(e,t)}function _t(e,t){return e?_xeUtils.default.toValueString(_conf.default.translate?_conf.default.translate(e,t):e):""}exports.config=config;var v="v3",VXETable={v:exports.v=v,version:"3.5.7-beta.2",reg:reg,use:use,setup:_setup.setup,interceptor:_interceptor.interceptor,renderer:_renderer.renderer,commands:_commands.commands,formats:_formats.formats,menus:_menus.menus,config:config,t:t,_t:_t},_default=exports.VXETable=VXETable;exports.default=_default;
|
|
@@ -366,7 +366,7 @@ var _default = {
|
|
|
366
366
|
}
|
|
367
367
|
} else {
|
|
368
368
|
var isArrType = type === 'array';
|
|
369
|
-
var hasEmpty = isArrType ? !_xeUtils.default.isArray(cellValue) || !cellValue.length : (0, _utils.eqEmptyValue)(cellValue);
|
|
369
|
+
var hasEmpty = isArrType || _xeUtils.default.isArray(cellValue) ? !_xeUtils.default.isArray(cellValue) || !cellValue.length : (0, _utils.eqEmptyValue)(cellValue);
|
|
370
370
|
|
|
371
371
|
if (required ? hasEmpty || validErrorRuleValue(rule, cellValue) : !hasEmpty && validErrorRuleValue(rule, cellValue)) {
|
|
372
372
|
_this3.validRuleErr = true;
|
|
@@ -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")),_utils=require("../../tools/utils"),_dom=_interopRequireDefault(require("../../tools/dom"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default: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 r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,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 r=e.type,i=e.min,l=e.max,n=e.pattern,e="number"===r,r=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(i)&&r<_xeUtils.default.toNumber(i)||(!_xeUtils.default.eqNull(l)&&r>_xeUtils.default.toNumber(l)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}var _default={methods:{_fullValidate:function(e,t){return this.beginValidate(e,t,!0)},_validate:function(e,t){return this.beginValidate(e,t)},handleValidError:function(t){var r=this;return new Promise(function(e){!1===r.validOpts.autoPos?(r.emitEvent("valid-error",t),e()):r.handleActived(t,{type:"valid-error",trigger:"call"}).then(function(){setTimeout(function(){e(r.showValidTooltip(t))},10)})})},beginValidate:function(e,o,i){var a=this,s={},l=this.editRules,c=this.afterFullData,d=this.treeConfig,t=this.treeOpts;!0===e?r=c:e&&(_xeUtils.default.isFunction(e)?o=e:r=_xeUtils.default.isArray(e)?e:[e]);var r=r||this.getInsertRecords().concat(this.getUpdateRecords()),n=[];if(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),l){var u=this.getColumns(),e=function(r){var e;!i&&a.validRuleErr||(e=[],u.forEach(function(t){!i&&a.validRuleErr||!_xeUtils.default.has(l,t.property)||e.push(a.validCellRules("all",r,t).catch(function(e){e={rule:e.rule,rules:e.rules,rowIndex:a.getRowIndex(r),row:r,columnIndex:a.getColumnIndex(t),column:t,field:t.property,$table:a};if(s[t.property]||(s[t.property]=[]),s[t.property].push(e),!i)return a.validRuleErr=!0,Promise.reject(e)}))}),n.push(Promise.all(e)))};return d?_xeUtils.default.eachTree(r,e,t):r.forEach(e),Promise.all(n).then(function(){var e=Object.keys(s);return a.$nextTick().then(function(){return e.length?Promise.reject(s[e[0]][0]):void(o&&o())})}).catch(function(u){return new Promise(function(e,t){function r(){a.$nextTick(function(){o?(o(s),e()):("obsolete"===_conf.default.validToReject?t:e)(s)})}function i(){u.cell=a.getCell(u.row,u.column),_dom.default.scrollToView(u.cell),a.handleValidError(u).then(r)}var l=u.row,n=c.indexOf(l),l=0<n?c[n-1]:l;!1===a.validOpts.autoPos?r():(d?a.scrollToTreeRow(l):a.scrollToRow(l)).then(i)})})}return this.$nextTick().then(function(){o&&o()})},hasCellRules:function(t,e,r){var i=this.editRules,r=r.property;if(r&&i){r=_xeUtils.default.get(i,r);return r&&_xeUtils.default.find(r,function(e){return"all"===t||!e.trigger||t===e.trigger})}return!1},validCellRules:function(n,u,o,e){var a,s,c=this,t=this.editRules,r=o.property,d=[],f=[];return r&&t&&((a=_xeUtils.default.get(t,r))&&(s=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(u,r):e,a.forEach(function(t){var e,r=t.type,i=t.trigger,l=t.required;"all"!==n&&i&&n!==i||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({cellValue:s,rule:t,rules:a,row:u,rowIndex:c.getRowIndex(u),column:o,columnIndex:c.getColumnIndex(o),field:o.property,$table:c}))&&(_xeUtils.default.isError(e)?(c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e.message,rule:new Rule(t)}))):e.catch&&f.push(e.catch(function(e){c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))}))):(r="array"===r?!_xeUtils.default.isArray(s)||!s.length:(0,_utils.eqEmptyValue)(s),(l?r||validErrorRuleValue(t,s):!r&&validErrorRuleValue(t,s))&&(c.validRuleErr=!0,d.push(new Rule(t)))))}))),Promise.all(f).then(function(){if(d.length){var e={rules:d,rule:d[0]};return Promise.reject(e)}})},_clearValidate:function(){var e=this.$refs.validTip;return Object.assign(this.validStore,{visible:!1,row:null,column:null,content:"",rule:null}),e&&e.visible&&e.close(),this.$nextTick()},triggerValidate:function(t){var r=this,e=this.editConfig,i=this.editStore,l=this.editRules,n=this.validStore,i=i.actived;if(i.row&&l){var i=i.args,u=i.row,o=i.column,a=i.cell;if(this.hasCellRules(t,u,o))return this.validCellRules(t,u,o).then(function(){"row"===e.mode&&n.visible&&n.row===u&&n.column===o&&r.clearValidate()}).catch(function(e){e=e.rule;if(e.trigger&&t!==e.trigger)return Promise.resolve();e={rule:e,row:u,column:o,cell:a};return r.showValidTooltip(e),Promise.reject(e)})}return Promise.resolve()},showValidTooltip:function(e){var t=this,r=this.$refs,i=this.height,l=this.tableData,n=this.validOpts,u=e.rule,o=e.row,a=e.column,s=e.cell,c=r.validTip,d=u.content;return this.$nextTick(function(){if(Object.assign(t.validStore,{row:o,column:a,rule:u,content:d,visible:!0}),t.emitEvent("valid-error",e),c&&("tooltip"===n.message||"default"===n.message&&!i&&l.length<2))return c.open(s,d)})}}};exports.default=_default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _xeUtils=_interopRequireDefault(require("xe-utils")),_conf=_interopRequireDefault(require("../../v-x-e-table/src/conf")),_utils=require("../../tools/utils"),_dom=_interopRequireDefault(require("../../tools/dom"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default: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 r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}var Rule=function(){function t(e){_classCallCheck(this,t),Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.max,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 r=e.type,i=e.min,l=e.max,n=e.pattern,e="number"===r,r=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||(!_xeUtils.default.eqNull(i)&&r<_xeUtils.default.toNumber(i)||(!_xeUtils.default.eqNull(l)&&r>_xeUtils.default.toNumber(l)||!(!n||(_xeUtils.default.isRegExp(n)?n:new RegExp(n)).test(t))))}var _default={methods:{_fullValidate:function(e,t){return this.beginValidate(e,t,!0)},_validate:function(e,t){return this.beginValidate(e,t)},handleValidError:function(t){var r=this;return new Promise(function(e){!1===r.validOpts.autoPos?(r.emitEvent("valid-error",t),e()):r.handleActived(t,{type:"valid-error",trigger:"call"}).then(function(){setTimeout(function(){e(r.showValidTooltip(t))},10)})})},beginValidate:function(e,o,i){var a=this,s={},l=this.editRules,c=this.afterFullData,d=this.treeConfig,t=this.treeOpts;!0===e?r=c:e&&(_xeUtils.default.isFunction(e)?o=e:r=_xeUtils.default.isArray(e)?e:[e]);var r=r||this.getInsertRecords().concat(this.getUpdateRecords()),n=[];if(this.lastCallTime=Date.now(),this.validRuleErr=!1,this.clearValidate(),l){var u=this.getColumns(),e=function(r){var e;!i&&a.validRuleErr||(e=[],u.forEach(function(t){!i&&a.validRuleErr||!_xeUtils.default.has(l,t.property)||e.push(a.validCellRules("all",r,t).catch(function(e){e={rule:e.rule,rules:e.rules,rowIndex:a.getRowIndex(r),row:r,columnIndex:a.getColumnIndex(t),column:t,field:t.property,$table:a};if(s[t.property]||(s[t.property]=[]),s[t.property].push(e),!i)return a.validRuleErr=!0,Promise.reject(e)}))}),n.push(Promise.all(e)))};return d?_xeUtils.default.eachTree(r,e,t):r.forEach(e),Promise.all(n).then(function(){var e=Object.keys(s);return a.$nextTick().then(function(){return e.length?Promise.reject(s[e[0]][0]):void(o&&o())})}).catch(function(u){return new Promise(function(e,t){function r(){a.$nextTick(function(){o?(o(s),e()):("obsolete"===_conf.default.validToReject?t:e)(s)})}function i(){u.cell=a.getCell(u.row,u.column),_dom.default.scrollToView(u.cell),a.handleValidError(u).then(r)}var l=u.row,n=c.indexOf(l),l=0<n?c[n-1]:l;!1===a.validOpts.autoPos?r():(d?a.scrollToTreeRow(l):a.scrollToRow(l)).then(i)})})}return this.$nextTick().then(function(){o&&o()})},hasCellRules:function(t,e,r){var i=this.editRules,r=r.property;if(r&&i){r=_xeUtils.default.get(i,r);return r&&_xeUtils.default.find(r,function(e){return"all"===t||!e.trigger||t===e.trigger})}return!1},validCellRules:function(n,u,o,e){var a,s,c=this,t=this.editRules,r=o.property,d=[],f=[];return r&&t&&((a=_xeUtils.default.get(t,r))&&(s=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(u,r):e,a.forEach(function(t){var e,r=t.type,i=t.trigger,l=t.required;"all"!==n&&i&&n!==i||(_xeUtils.default.isFunction(t.validator)?(e=t.validator({cellValue:s,rule:t,rules:a,row:u,rowIndex:c.getRowIndex(u),column:o,columnIndex:c.getColumnIndex(o),field:o.property,$table:c}))&&(_xeUtils.default.isError(e)?(c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e.message,rule:new Rule(t)}))):e.catch&&f.push(e.catch(function(e){c.validRuleErr=!0,d.push(new Rule({type:"custom",trigger:i,content:e&&e.message?e.message:t.content||t.message,rule:new Rule(t)}))}))):(r="array"===r||_xeUtils.default.isArray(s)?!_xeUtils.default.isArray(s)||!s.length:(0,_utils.eqEmptyValue)(s),(l?r||validErrorRuleValue(t,s):!r&&validErrorRuleValue(t,s))&&(c.validRuleErr=!0,d.push(new Rule(t)))))}))),Promise.all(f).then(function(){if(d.length){var e={rules:d,rule:d[0]};return Promise.reject(e)}})},_clearValidate:function(){var e=this.$refs.validTip;return Object.assign(this.validStore,{visible:!1,row:null,column:null,content:"",rule:null}),e&&e.visible&&e.close(),this.$nextTick()},triggerValidate:function(t){var r=this,e=this.editConfig,i=this.editStore,l=this.editRules,n=this.validStore,i=i.actived;if(i.row&&l){var i=i.args,u=i.row,o=i.column,a=i.cell;if(this.hasCellRules(t,u,o))return this.validCellRules(t,u,o).then(function(){"row"===e.mode&&n.visible&&n.row===u&&n.column===o&&r.clearValidate()}).catch(function(e){e=e.rule;if(e.trigger&&t!==e.trigger)return Promise.resolve();e={rule:e,row:u,column:o,cell:a};return r.showValidTooltip(e),Promise.reject(e)})}return Promise.resolve()},showValidTooltip:function(e){var t=this,r=this.$refs,i=this.height,l=this.tableData,n=this.validOpts,u=e.rule,o=e.row,a=e.column,s=e.cell,c=r.validTip,d=u.content;return this.$nextTick(function(){if(Object.assign(t.validStore,{row:o,column:a,rule:u,content:d,visible:!0}),t.emitEvent("valid-error",e),c&&("tooltip"===n.message||"default"===n.message&&!i&&l.length<2))return c.open(s,d)})}}};exports.default=_default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.7",
|
|
4
4
|
"description": "一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟列表、虚拟树、懒加载、快捷菜单、数据校验、树形结构、打印导出、表单渲染、数据分页、弹窗、自定义模板、渲染器、贼灵活的配置项、扩展接口等...",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"serve": "vue-cli-service serve",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"gulp-sass": "^4.1.0",
|
|
55
55
|
"gulp-sourcemaps": "^2.6.5",
|
|
56
56
|
"gulp-uglify": "^3.0.2",
|
|
57
|
-
"sass": "^1.
|
|
57
|
+
"sass": "^1.52.1",
|
|
58
58
|
"sass-loader": "^8.0.2",
|
|
59
59
|
"typescript": "~3.9.3",
|
|
60
60
|
"vue": "^2.6.14",
|
package/packages/all.js
CHANGED
|
@@ -8,7 +8,6 @@ import { Edit } from './edit'
|
|
|
8
8
|
import { Export } from './export'
|
|
9
9
|
import { Keyboard } from './keyboard'
|
|
10
10
|
import { Validator } from './validator'
|
|
11
|
-
import { Header } from './header'
|
|
12
11
|
import { Footer } from './footer'
|
|
13
12
|
|
|
14
13
|
import { Column } from './column'
|
|
@@ -43,7 +42,6 @@ import zhCN from './locale/lang/zh-CN'
|
|
|
43
42
|
// 按需加载的组件
|
|
44
43
|
const components = [
|
|
45
44
|
// 功能模块
|
|
46
|
-
Header,
|
|
47
45
|
Footer,
|
|
48
46
|
Icon,
|
|
49
47
|
Filter,
|
|
@@ -20,6 +20,12 @@ export default {
|
|
|
20
20
|
inject: {
|
|
21
21
|
$xecheckboxgroup: {
|
|
22
22
|
default: null
|
|
23
|
+
},
|
|
24
|
+
$xeform: {
|
|
25
|
+
default: null
|
|
26
|
+
},
|
|
27
|
+
$xeformiteminfo: {
|
|
28
|
+
default: null
|
|
23
29
|
}
|
|
24
30
|
},
|
|
25
31
|
computed: {
|
|
@@ -73,10 +79,14 @@ export default {
|
|
|
73
79
|
const value = checked ? checkedValue : uncheckedValue
|
|
74
80
|
const params = { checked, value, label, $event: evnt }
|
|
75
81
|
if (isGroup) {
|
|
76
|
-
$xecheckboxgroup.handleChecked(params)
|
|
82
|
+
$xecheckboxgroup.handleChecked(params, evnt)
|
|
77
83
|
} else {
|
|
78
84
|
this.$emit('input', value)
|
|
79
85
|
this.$emit('change', params)
|
|
86
|
+
// 自动更新校验状态
|
|
87
|
+
if (this.$xeform && this.$xeformiteminfo) {
|
|
88
|
+
this.$xeform.triggerItemEvent(evnt, this.$xeformiteminfo.itemConfig.field, value)
|
|
89
|
+
}
|
|
80
90
|
}
|
|
81
91
|
}
|
|
82
92
|
}
|
|
@@ -7,6 +7,14 @@ export default {
|
|
|
7
7
|
disabled: Boolean,
|
|
8
8
|
size: { type: String, default: () => GlobalConfig.checkbox.size || GlobalConfig.size }
|
|
9
9
|
},
|
|
10
|
+
inject: {
|
|
11
|
+
$xeform: {
|
|
12
|
+
default: null
|
|
13
|
+
},
|
|
14
|
+
$xeformiteminfo: {
|
|
15
|
+
default: null
|
|
16
|
+
}
|
|
17
|
+
},
|
|
10
18
|
provide () {
|
|
11
19
|
return {
|
|
12
20
|
$xecheckboxgroup: this
|
|
@@ -24,7 +32,7 @@ export default {
|
|
|
24
32
|
}, $scopedSlots.default ? $scopedSlots.default.call(this, {}) : [])
|
|
25
33
|
},
|
|
26
34
|
methods: {
|
|
27
|
-
handleChecked (params) {
|
|
35
|
+
handleChecked (params, evnt) {
|
|
28
36
|
const { checked, label } = params
|
|
29
37
|
const checklist = this.value || []
|
|
30
38
|
const checkIndex = checklist.indexOf(label)
|
|
@@ -37,6 +45,10 @@ export default {
|
|
|
37
45
|
}
|
|
38
46
|
this.$emit('input', checklist)
|
|
39
47
|
this.$emit('change', Object.assign({ checklist }, params))
|
|
48
|
+
// 自动更新校验状态
|
|
49
|
+
if (this.$xeform && this.$xeformiteminfo) {
|
|
50
|
+
this.$xeform.triggerItemEvent(evnt, this.$xeformiteminfo.itemConfig.field, checklist)
|
|
51
|
+
}
|
|
40
52
|
}
|
|
41
53
|
}
|
|
42
54
|
}
|
|
@@ -473,10 +473,17 @@ export default {
|
|
|
473
473
|
}
|
|
474
474
|
}
|
|
475
475
|
},
|
|
476
|
+
_clearActived (evnt) {
|
|
477
|
+
// if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
|
|
478
|
+
// warnLog('vxe.error.delFunc', ['clearActived', 'clearEdit'])
|
|
479
|
+
// }
|
|
480
|
+
// 即将废弃
|
|
481
|
+
return this.clearEdit(evnt)
|
|
482
|
+
},
|
|
476
483
|
/**
|
|
477
484
|
* 清除激活的编辑
|
|
478
485
|
*/
|
|
479
|
-
|
|
486
|
+
_clearEdit (evnt) {
|
|
480
487
|
const { editStore } = this
|
|
481
488
|
const { actived } = editStore
|
|
482
489
|
const { row, column } = actived
|
|
@@ -498,6 +505,13 @@ export default {
|
|
|
498
505
|
return VXETable._valid ? this.clearValidate() : this.$nextTick()
|
|
499
506
|
},
|
|
500
507
|
_getActiveRecord () {
|
|
508
|
+
// if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
|
|
509
|
+
// warnLog('vxe.error.delFunc', ['getActiveRecord', 'getEditRecord'])
|
|
510
|
+
// }
|
|
511
|
+
// 即将废弃
|
|
512
|
+
return this.getEditRecord()
|
|
513
|
+
},
|
|
514
|
+
_getEditRecord () {
|
|
501
515
|
const { $el, editStore, afterFullData } = this
|
|
502
516
|
const { actived } = editStore
|
|
503
517
|
const { args, row } = actived
|
|
@@ -506,11 +520,18 @@ export default {
|
|
|
506
520
|
}
|
|
507
521
|
return null
|
|
508
522
|
},
|
|
523
|
+
_isActiveByRow (row) {
|
|
524
|
+
// if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
|
|
525
|
+
// warnLog('vxe.error.delFunc', ['isActiveByRow', 'isEditByRow'])
|
|
526
|
+
// }
|
|
527
|
+
// 即将废弃
|
|
528
|
+
return this.isEditByRow(row)
|
|
529
|
+
},
|
|
509
530
|
/**
|
|
510
531
|
* 判断行是否为激活编辑状态
|
|
511
532
|
* @param {Row} row 行对象
|
|
512
533
|
*/
|
|
513
|
-
|
|
534
|
+
_isEditByRow (row) {
|
|
514
535
|
return this.editStore.actived.row === row
|
|
515
536
|
},
|
|
516
537
|
/**
|
|
@@ -549,16 +570,30 @@ export default {
|
|
|
549
570
|
}
|
|
550
571
|
}
|
|
551
572
|
},
|
|
573
|
+
_setActiveRow (row) {
|
|
574
|
+
// if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
|
|
575
|
+
// warnLog('vxe.error.delFunc', ['setActiveRow', 'setEditRow'])
|
|
576
|
+
// }
|
|
577
|
+
// 即将废弃
|
|
578
|
+
return this.setEditRow(row)
|
|
579
|
+
},
|
|
552
580
|
/**
|
|
553
581
|
* 激活行编辑
|
|
554
582
|
*/
|
|
555
|
-
|
|
583
|
+
_setEditRow (row) {
|
|
556
584
|
return this.setActiveCell(row, XEUtils.find(this.visibleColumn, column => isEnableConf(column.editRender)))
|
|
557
585
|
},
|
|
586
|
+
_setActiveCell (row) {
|
|
587
|
+
// if (process.env.VUE_APP_VXE_TABLE_ENV === 'development') {
|
|
588
|
+
// warnLog('vxe.error.delFunc', ['setActiveCell', 'setEditCell'])
|
|
589
|
+
// }
|
|
590
|
+
// 即将废弃
|
|
591
|
+
return this.setEditCell(row)
|
|
592
|
+
},
|
|
558
593
|
/**
|
|
559
594
|
* 激活单元格编辑
|
|
560
595
|
*/
|
|
561
|
-
|
|
596
|
+
_setEditCell (row, fieldOrColumn) {
|
|
562
597
|
const { editConfig } = this
|
|
563
598
|
const column = XEUtils.isString(fieldOrColumn) ? this.getColumnByField(fieldOrColumn) : fieldOrColumn
|
|
564
599
|
if (row && column && isEnableConf(editConfig) && isEnableConf(column.editRender)) {
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import XEUtils from 'xe-utils'
|
|
2
|
+
import GlobalConfig from '../../v-x-e-table/src/conf'
|
|
3
|
+
import VXETable from '../../v-x-e-table'
|
|
4
|
+
import { isEnableConf, getFuncText } from '../../tools/utils'
|
|
5
|
+
import { renderTitle } from './render'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* 配置式项
|
|
9
|
+
*/
|
|
10
|
+
const VxeFormConfigItem = {
|
|
11
|
+
name: 'VxeFormConfigItem',
|
|
12
|
+
props: {
|
|
13
|
+
itemConfig: Object
|
|
14
|
+
},
|
|
15
|
+
inject: {
|
|
16
|
+
$xeform: {
|
|
17
|
+
default: null
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
provide () {
|
|
21
|
+
return {
|
|
22
|
+
$xeformgather: null,
|
|
23
|
+
$xeformiteminfo: {
|
|
24
|
+
itemConfig: this.itemConfig
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
render (h) {
|
|
29
|
+
const { _e, $xeform, itemConfig: item } = this
|
|
30
|
+
const { rules, data, collapseAll, validOpts, titleOverflow: allTitleOverflow } = $xeform
|
|
31
|
+
const { slots, title, folding, visible, visibleMethod, field, collapseNode, itemRender, showError, errRule, className, titleOverflow, children } = item
|
|
32
|
+
const compConf = isEnableConf(itemRender) ? VXETable.renderer.get(itemRender.name) : null
|
|
33
|
+
const span = item.span || $xeform.span
|
|
34
|
+
const align = item.align || $xeform.align
|
|
35
|
+
const titleAlign = item.titleAlign || $xeform.titleAlign
|
|
36
|
+
const titleWidth = item.titleWidth || $xeform.titleWidth
|
|
37
|
+
const titleColon = item.titleColon === null ? $xeform.titleColon : item.titleColon
|
|
38
|
+
const titleAsterisk = item.titleAsterisk === null ? $xeform.titleAsterisk : item.titleAsterisk
|
|
39
|
+
let itemVisibleMethod = visibleMethod
|
|
40
|
+
const itemOverflow = (XEUtils.isUndefined(titleOverflow) || XEUtils.isNull(titleOverflow)) ? allTitleOverflow : titleOverflow
|
|
41
|
+
const showEllipsis = itemOverflow === 'ellipsis'
|
|
42
|
+
const showTitle = itemOverflow === 'title'
|
|
43
|
+
const showTooltip = itemOverflow === true || itemOverflow === 'tooltip'
|
|
44
|
+
const hasEllipsis = showTitle || showTooltip || showEllipsis
|
|
45
|
+
const params = { data, field, property: field, item, $form: $xeform }
|
|
46
|
+
let isRequired
|
|
47
|
+
if (visible === false) {
|
|
48
|
+
return _e()
|
|
49
|
+
}
|
|
50
|
+
// 如果为项集合
|
|
51
|
+
const isGather = children && children.length > 0
|
|
52
|
+
if (isGather) {
|
|
53
|
+
const childVNs = item.children.map((childItem, index) => {
|
|
54
|
+
return h(VxeFormConfigItem, {
|
|
55
|
+
key: index,
|
|
56
|
+
props: {
|
|
57
|
+
itemConfig: childItem
|
|
58
|
+
}
|
|
59
|
+
})
|
|
60
|
+
})
|
|
61
|
+
return childVNs.length ? h('div', {
|
|
62
|
+
class: ['vxe-form--gather vxe-row', item.id, span ? `vxe-col--${span} is--span` : '', className ? (XEUtils.isFunction(className) ? className(params) : className) : '']
|
|
63
|
+
}, childVNs) : _e()
|
|
64
|
+
}
|
|
65
|
+
if (!itemVisibleMethod && compConf && compConf.itemVisibleMethod) {
|
|
66
|
+
itemVisibleMethod = compConf.itemVisibleMethod
|
|
67
|
+
}
|
|
68
|
+
if (rules) {
|
|
69
|
+
const itemRules = rules[field]
|
|
70
|
+
if (itemRules) {
|
|
71
|
+
isRequired = itemRules.some(rule => rule.required)
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
let contentVNs = []
|
|
75
|
+
if (slots && slots.default) {
|
|
76
|
+
contentVNs = $xeform.callSlot(slots.default, params, h)
|
|
77
|
+
} else if (compConf && compConf.renderItemContent) {
|
|
78
|
+
contentVNs = compConf.renderItemContent.call($xeform, h, itemRender, params)
|
|
79
|
+
} else if (compConf && compConf.renderItem) {
|
|
80
|
+
contentVNs = compConf.renderItem.call($xeform, h, itemRender, params)
|
|
81
|
+
} else if (field) {
|
|
82
|
+
contentVNs = [`${XEUtils.get(data, field)}`]
|
|
83
|
+
}
|
|
84
|
+
const ons = showTooltip ? {
|
|
85
|
+
mouseenter (evnt) {
|
|
86
|
+
$xeform.triggerTitleTipEvent(evnt, params)
|
|
87
|
+
},
|
|
88
|
+
mouseleave: $xeform.handleTitleTipLeaveEvent
|
|
89
|
+
} : {}
|
|
90
|
+
return h('div', {
|
|
91
|
+
class: ['vxe-form--item', item.id, span ? `vxe-col--${span} is--span` : null, className ? (XEUtils.isFunction(className) ? className(params) : className) : '', {
|
|
92
|
+
'is--title': title,
|
|
93
|
+
'is--colon': titleColon,
|
|
94
|
+
'is--asterisk': titleAsterisk,
|
|
95
|
+
'is--required': isRequired,
|
|
96
|
+
'is--hidden': folding && collapseAll,
|
|
97
|
+
'is--active': !itemVisibleMethod || itemVisibleMethod(params),
|
|
98
|
+
'is--error': showError
|
|
99
|
+
}],
|
|
100
|
+
props: {
|
|
101
|
+
itemConfig: item
|
|
102
|
+
},
|
|
103
|
+
key: item.id
|
|
104
|
+
}, [
|
|
105
|
+
h('div', {
|
|
106
|
+
class: 'vxe-form--item-inner'
|
|
107
|
+
}, [
|
|
108
|
+
title || (slots && slots.title) ? h('div', {
|
|
109
|
+
class: ['vxe-form--item-title', titleAlign ? `align--${titleAlign}` : null, {
|
|
110
|
+
'is--ellipsis': hasEllipsis
|
|
111
|
+
}],
|
|
112
|
+
style: titleWidth ? {
|
|
113
|
+
width: isNaN(titleWidth) ? titleWidth : `${titleWidth}px`
|
|
114
|
+
} : null,
|
|
115
|
+
attrs: {
|
|
116
|
+
title: showTitle ? getFuncText(title) : null
|
|
117
|
+
},
|
|
118
|
+
on: ons
|
|
119
|
+
}, renderTitle(h, $xeform, item)) : null,
|
|
120
|
+
h('div', {
|
|
121
|
+
class: ['vxe-form--item-content', align ? `align--${align}` : null]
|
|
122
|
+
}, contentVNs.concat(
|
|
123
|
+
[
|
|
124
|
+
collapseNode ? h('div', {
|
|
125
|
+
class: 'vxe-form--item-trigger-node',
|
|
126
|
+
on: {
|
|
127
|
+
click: $xeform.toggleCollapseEvent
|
|
128
|
+
}
|
|
129
|
+
}, [
|
|
130
|
+
h('span', {
|
|
131
|
+
class: 'vxe-form--item-trigger-text'
|
|
132
|
+
}, collapseAll ? GlobalConfig.i18n('vxe.form.unfolding') : GlobalConfig.i18n('vxe.form.folding')),
|
|
133
|
+
h('i', {
|
|
134
|
+
class: ['vxe-form--item-trigger-icon', collapseAll ? GlobalConfig.icon.FORM_FOLDING : GlobalConfig.icon.FORM_UNFOLDING]
|
|
135
|
+
})
|
|
136
|
+
]) : null,
|
|
137
|
+
errRule && validOpts.showMessage ? h('div', {
|
|
138
|
+
class: 'vxe-form--item-valid',
|
|
139
|
+
style: errRule.maxWidth ? {
|
|
140
|
+
width: `${errRule.maxWidth}px`
|
|
141
|
+
} : null
|
|
142
|
+
}, errRule.content) : null
|
|
143
|
+
])
|
|
144
|
+
)
|
|
145
|
+
])
|
|
146
|
+
])
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export default VxeFormConfigItem
|
|
@@ -13,6 +13,14 @@ const props = {
|
|
|
13
13
|
align: String,
|
|
14
14
|
titleAlign: String,
|
|
15
15
|
titleWidth: [String, Number],
|
|
16
|
+
titleColon: {
|
|
17
|
+
type: Boolean,
|
|
18
|
+
default: null
|
|
19
|
+
},
|
|
20
|
+
titleAsterisk: {
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: null
|
|
23
|
+
},
|
|
16
24
|
className: [String, Function],
|
|
17
25
|
titleOverflow: { type: [Boolean, String], default: null },
|
|
18
26
|
titlePrefix: Object,
|
|
@@ -133,10 +141,18 @@ export default {
|
|
|
133
141
|
$xeform: {
|
|
134
142
|
default: null
|
|
135
143
|
},
|
|
136
|
-
xeformgather: {
|
|
144
|
+
$xeformgather: {
|
|
137
145
|
default: null
|
|
138
146
|
}
|
|
139
147
|
},
|
|
148
|
+
provide () {
|
|
149
|
+
return {
|
|
150
|
+
$xeformitem: this,
|
|
151
|
+
$xeformiteminfo: {
|
|
152
|
+
itemConfig: this.itemConfig
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
},
|
|
140
156
|
data () {
|
|
141
157
|
return {
|
|
142
158
|
itemConfig: null
|