vxe-pc-ui 3.14.20 → 3.14.22
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 -1
- package/es/form/src/render.js +1 -1
- package/es/tabs/src/tabs.js +1 -1
- package/es/tree/src/tree.js +24 -19
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/form/src/form.js +2 -1
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/render.js +1 -1
- package/lib/form/src/render.min.js +1 -1
- package/lib/index.umd.js +39 -29
- package/lib/index.umd.min.js +1 -1
- package/lib/tabs/src/tabs.js +1 -1
- package/lib/tabs/src/tabs.min.js +1 -1
- package/lib/tree/src/tree.js +33 -24
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/form/src/form.ts +2 -1
- package/packages/form/src/render.ts +1 -1
- package/packages/tabs/src/tabs.ts +1 -1
- package/packages/tree/src/tree.ts +25 -19
- package/types/components/colgroup.d.ts +3 -71
- package/types/components/column.d.ts +6 -0
- package/types/components/form-item.d.ts +1 -1
- package/types/components/table.d.ts +1 -0
- package/types/components/tree.d.ts +4 -0
- /package/es/icon/{iconfont.1779671249035.ttf → iconfont.1779767616042.ttf} +0 -0
- /package/es/icon/{iconfont.1779671249035.woff → iconfont.1779767616042.woff} +0 -0
- /package/es/icon/{iconfont.1779671249035.woff2 → iconfont.1779767616042.woff2} +0 -0
- /package/es/{iconfont.1779671249035.ttf → iconfont.1779767616042.ttf} +0 -0
- /package/es/{iconfont.1779671249035.woff → iconfont.1779767616042.woff} +0 -0
- /package/es/{iconfont.1779671249035.woff2 → iconfont.1779767616042.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1779671249035.ttf → iconfont.1779767616042.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1779671249035.woff → iconfont.1779767616042.woff} +0 -0
- /package/lib/icon/style/{iconfont.1779671249035.woff2 → iconfont.1779767616042.woff2} +0 -0
- /package/lib/{iconfont.1779671249035.ttf → iconfont.1779767616042.ttf} +0 -0
- /package/lib/{iconfont.1779671249035.woff → iconfont.1779767616042.woff} +0 -0
- /package/lib/{iconfont.1779671249035.woff2 → iconfont.1779767616042.woff2} +0 -0
package/es/form/src/form.js
CHANGED
|
@@ -530,7 +530,8 @@ export default {
|
|
|
530
530
|
const errorRules = [];
|
|
531
531
|
const syncVailds = [];
|
|
532
532
|
if (property && formRules) {
|
|
533
|
-
const
|
|
533
|
+
const item = $xeForm.getItemByField(property);
|
|
534
|
+
const rules = item && item.rules ? item.rules : XEUtils.get(formRules, property);
|
|
534
535
|
if (rules) {
|
|
535
536
|
const itemValue = XEUtils.isUndefined(val) ? XEUtils.get(data, property) : val;
|
|
536
537
|
rules.forEach((rule) => {
|
package/es/form/src/render.js
CHANGED
|
@@ -54,7 +54,7 @@ export function getItemClass($xeForm, item, isGroup) {
|
|
|
54
54
|
let isRequired = false;
|
|
55
55
|
let isValid = false;
|
|
56
56
|
if (!readonly && rules) {
|
|
57
|
-
const itemRules = rules[field];
|
|
57
|
+
const itemRules = item.rules ? item.rules : rules[field];
|
|
58
58
|
if (itemRules && itemRules.length) {
|
|
59
59
|
isValid = true;
|
|
60
60
|
isRequired = itemRules.some((rule) => rule.required);
|
package/es/tabs/src/tabs.js
CHANGED
package/es/tree/src/tree.js
CHANGED
|
@@ -450,6 +450,17 @@ function handleNodeDragSwapEvent($xeTree, evnt, dragNode, prevDragNode, prevDrag
|
|
|
450
450
|
clearCrossTreeDragStatus($xeTree);
|
|
451
451
|
return Promise.resolve(errRest);
|
|
452
452
|
}
|
|
453
|
+
function handleVisibleOrCheckMode(mode, isExistChild, nLevel) {
|
|
454
|
+
if (mode) {
|
|
455
|
+
if (mode === 'first') {
|
|
456
|
+
return !nLevel;
|
|
457
|
+
}
|
|
458
|
+
if (mode === 'last') {
|
|
459
|
+
return !isExistChild;
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
return true;
|
|
463
|
+
}
|
|
453
464
|
function createInternalData() {
|
|
454
465
|
return {
|
|
455
466
|
// initialized: false,
|
|
@@ -2498,18 +2509,15 @@ export default {
|
|
|
2498
2509
|
}
|
|
2499
2510
|
return renderEmptyElement($xeTree);
|
|
2500
2511
|
},
|
|
2501
|
-
renderRadio(h, node, nodeid, isChecked) {
|
|
2512
|
+
renderRadio(h, node, nodeid, isExistChild, nLevel, isChecked) {
|
|
2502
2513
|
const $xeTree = this;
|
|
2503
2514
|
const props = $xeTree;
|
|
2504
2515
|
const { showRadio } = props;
|
|
2505
2516
|
const radioOpts = $xeTree.computeRadioOpts;
|
|
2506
|
-
const { showIcon, checkMethod, visibleMethod } = radioOpts;
|
|
2507
|
-
const isVisible =
|
|
2508
|
-
let isDisabled = !!checkMethod;
|
|
2517
|
+
const { showIcon, checkMode, checkMethod, visibleMode, visibleMethod } = radioOpts;
|
|
2518
|
+
const isVisible = visibleMethod ? visibleMethod({ $tree: $xeTree, node }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
|
|
2509
2519
|
if (showRadio && showIcon && isVisible) {
|
|
2510
|
-
|
|
2511
|
-
isDisabled = !checkMethod({ $tree: $xeTree, node });
|
|
2512
|
-
}
|
|
2520
|
+
const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
|
|
2513
2521
|
return h('div', {
|
|
2514
2522
|
class: ['vxe-tree--radio-option', {
|
|
2515
2523
|
'is--checked': isChecked,
|
|
@@ -2530,18 +2538,15 @@ export default {
|
|
|
2530
2538
|
}
|
|
2531
2539
|
return renderEmptyElement($xeTree);
|
|
2532
2540
|
},
|
|
2533
|
-
renderCheckbox(h, node, nodeid, isChecked, isIndeterminate) {
|
|
2541
|
+
renderCheckbox(h, node, nodeid, isExistChild, nLevel, isChecked, isIndeterminate) {
|
|
2534
2542
|
const $xeTree = this;
|
|
2535
2543
|
const props = $xeTree;
|
|
2536
2544
|
const { showCheckbox } = props;
|
|
2537
2545
|
const checkboxOpts = $xeTree.computeCheckboxOpts;
|
|
2538
|
-
const { showIcon, checkMethod, visibleMethod } = checkboxOpts;
|
|
2539
|
-
const isVisible =
|
|
2540
|
-
let isDisabled = !!checkMethod;
|
|
2546
|
+
const { showIcon, checkMode, checkMethod, visibleMode, visibleMethod } = checkboxOpts;
|
|
2547
|
+
const isVisible = visibleMethod ? visibleMethod({ $tree: $xeTree, node }) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
|
|
2541
2548
|
if (showCheckbox && showIcon && isVisible) {
|
|
2542
|
-
|
|
2543
|
-
isDisabled = !checkMethod({ $tree: $xeTree, node });
|
|
2544
|
-
}
|
|
2549
|
+
const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
|
|
2545
2550
|
return h('div', {
|
|
2546
2551
|
class: ['vxe-tree--checkbox-option', {
|
|
2547
2552
|
'is--checked': isChecked,
|
|
@@ -2576,12 +2581,12 @@ export default {
|
|
|
2576
2581
|
const titleField = $xeTree.computeTitleField;
|
|
2577
2582
|
const hasChildField = $xeTree.computeHasChildField;
|
|
2578
2583
|
const childList = XEUtils.get(node, childrenField);
|
|
2579
|
-
const
|
|
2584
|
+
const isExistChild = childList && childList.length > 0;
|
|
2580
2585
|
const iconSlot = slots.icon;
|
|
2581
2586
|
const titleSlot = slots.title;
|
|
2582
2587
|
const extraSlot = slots.extra;
|
|
2583
2588
|
const isExpand = updateExpandedFlag && treeExpandedMaps[nodeid];
|
|
2584
|
-
const nodeItem = nodeMaps[nodeid];
|
|
2589
|
+
const nodeItem = nodeMaps[nodeid] || {};
|
|
2585
2590
|
const nodeValue = XEUtils.get(node, titleField);
|
|
2586
2591
|
const nLevel = nodeItem.level;
|
|
2587
2592
|
let isRadioChecked = false;
|
|
@@ -2655,7 +2660,7 @@ export default {
|
|
|
2655
2660
|
: renderEmptyElement($xeTree),
|
|
2656
2661
|
h('div', {
|
|
2657
2662
|
class: 'vxe-tree--node-item-switcher'
|
|
2658
|
-
}, showIcon && (lazy ? (isLazyLoaded ?
|
|
2663
|
+
}, showIcon && (lazy ? (isLazyLoaded ? isExistChild : hasLazyChilds) : isExistChild)
|
|
2659
2664
|
? [
|
|
2660
2665
|
h('div', {
|
|
2661
2666
|
class: 'vxe-tree--node-item-icon',
|
|
@@ -2674,8 +2679,8 @@ export default {
|
|
|
2674
2679
|
]
|
|
2675
2680
|
: []),
|
|
2676
2681
|
$xeTree.renderDragIcon(h, node, nodeid),
|
|
2677
|
-
$xeTree.renderRadio(h, node, nodeid, isRadioChecked),
|
|
2678
|
-
$xeTree.renderCheckbox(h, node, nodeid, isCheckboxChecked, isIndeterminate),
|
|
2682
|
+
$xeTree.renderRadio(h, node, nodeid, isExistChild, nLevel, isRadioChecked),
|
|
2683
|
+
$xeTree.renderCheckbox(h, node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate),
|
|
2679
2684
|
h('div', {
|
|
2680
2685
|
class: 'vxe-tree--node-item-inner'
|
|
2681
2686
|
}, [
|
package/es/ui/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
|
|
2
2
|
import { dynamicApp } from '../dynamics';
|
|
3
3
|
import { warnLog } from './src/log';
|
|
4
|
-
export const version = "3.14.
|
|
4
|
+
export const version = "3.14.22";
|
|
5
5
|
VxeUI.uiVersion = version;
|
|
6
6
|
VxeUI.dynamicApp = dynamicApp;
|
|
7
7
|
export function config(options) {
|
package/es/ui/src/log.js
CHANGED
package/lib/form/src/form.js
CHANGED
|
@@ -626,7 +626,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
626
626
|
var errorRules = [];
|
|
627
627
|
var syncVailds = [];
|
|
628
628
|
if (property && formRules) {
|
|
629
|
-
var
|
|
629
|
+
var item = $xeForm.getItemByField(property);
|
|
630
|
+
var rules = item && item.rules ? item.rules : _xeUtils.default.get(formRules, property);
|
|
630
631
|
if (rules) {
|
|
631
632
|
var itemValue = _xeUtils.default.isUndefined(val) ? _xeUtils.default.get(data, property) : val;
|
|
632
633
|
rules.forEach(function (rule) {
|
package/lib/form/src/form.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip")),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_loading=_interopRequireDefault(require("../../loading")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _defineProperty(t,e,i){return(e=_toPropertyKey(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,_toPropertyKey(r.key),r)}}function _createClass(t,e,i){return e&&_defineProperties(t.prototype,e),i&&_defineProperties(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t}function _toPropertyKey(t){t=_toPrimitive(t,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive(t,e){if("object"!=_typeof(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0===i)return("string"===e?String:Number)(t);i=i.call(t,e||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}require("../render");var Rule=(()=>_createClass(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})},[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]))();function validREValue(t,e){return!(t&&!(_xeUtils.default.isRegExp(t)?t:new RegExp(t)).test(e))}function validMaxValue(t,e){return!(!_xeUtils.default.eqNull(t)&&e>_xeUtils.default.toNumber(t))}function validMinValue(t,e){return!(!_xeUtils.default.eqNull(t)&&e<_xeUtils.default.toNumber(t))}function validRuleValue(t,e,i){var r=t.type,n=t.min,l=t.max,t=t.pattern,a="array"===r,o="number"===r,r="string"===r,u="".concat(e);if(!validREValue(t,u))return!1;if(a){if(!_xeUtils.default.isArray(e))return!1;if(i&&!e.length)return!1;if(!validMinValue(n,e.length))return!1;if(!validMaxValue(l,e.length))return!1}else if(o){t=Number(e);if(isNaN(t))return!1;if(!validMinValue(n,t))return!1;if(!validMaxValue(l,t))return!1}else{if(r&&!_xeUtils.default.isString(e))return!1;if(i&&!u)return!1;if(!validMinValue(n,u.length))return!1;if(!validMaxValue(l,u.length))return!1}return!0}function checkRuleStatus(t,e,i){var r=t.required,n=t.field,e=n?_xeUtils.default.get(e,n):i,n=_xeUtils.default.isArray(e)?!e.length:(0,_utils.eqEmptyValue)(e);if(r){if(n)return!1;if(!validRuleValue(t,e,r))return!1}else if(!n&&!validRuleValue(t,e,r))return!1;return!0}function createInternalData(){return{meTimeout:void 0,stTimeout:void 0,tooltipStore:{item:null,visible:!1},itemFormatCache:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeForm",mixins:[_ui.globalMixins.sizeMixin],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return(0,_ui.getConfig)().form.size||(0,_ui.getConfig)().size}},span:{type:[String,Number],default:function(){return(0,_ui.getConfig)().form.span}},align:{type:String,default:function(){return(0,_ui.getConfig)().form.align}},verticalAlign:{type:String,default:function(){return(0,_ui.getConfig)().form.verticalAlign}},border:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.border}},titleBackground:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleBackground}},titleBold:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleBold}},titleAlign:{type:String,default:function(){return(0,_ui.getConfig)().form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().form.titleWidth}},titleColon:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:function(){return(0,_ui.getConfig)().form.titleOverflow}},vertical:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.vertical}},padding:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.padding}},className:[String,Function],readonly:Boolean,disabled:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.preventSubmit}},validConfig:Object,tooltipConfig:Object,collapseConfig:Object,customLayout:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.customLayout}},params:Object},inject:{$xeGrid:{default:null}},provide:function(){return{$xeForm:this,xeFormItemInfo:null,$xeFormGroup:null,$xeFormItem:null}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{collapseAll:!1,staticItems:[],formItems:[],itemWidth:0},internalData:createInternalData(),recalcFlag:0}},computed:Object.assign(Object.assign({},{}),{computeValidOpts:function(){return Object.assign({},(0,_ui.getConfig)().form.validConfig,this.validConfig)},computeTooltipOpts:function(){return Object.assign({},(0,_ui.getConfig)().tooltip,(0,_ui.getConfig)().form.tooltipConfig,this.tooltipConfig)},computeCollapseOpts:function(){return Object.assign({},(0,_ui.getConfig)().form.collapseConfig,this.collapseConfig)},computeAutoItemWidthList:function(){var t=this.reactData,r=this.titleWidth,n=this.vertical,t=t.formItems,l=[];return _xeUtils.default.eachTree(t,function(t){var e=t.titleWidth,i=t.vertical;"auto"!==e&&("auto"!==((_xeUtils.default.eqNull(i)?n:i)?null:_xeUtils.default.eqNull(e)?r:e)||t.children&&t.children.length)||l.push(t)},{children:"children"}),l}}),methods:{dispatchEvent:function(t,e,i){this.$emit(t,(0,_ui.createEvent)(i,{$form:this},e))},callSlot:function(t,e,i){var r=this.$scopedSlots;return t&&(_xeUtils.default.isString(t)&&(t=r[t]||null),_xeUtils.default.isFunction(t))?(0,_vn.getSlotVNs)(t.call(this,e,i)):[]},loadItem:function(t){var e=this,i=e.$scopedSlots,r=e.reactData,n=e.internalData;return t.length&&t.forEach(function(t){t.slots&&_xeUtils.default.each(t.slots,function(t){_xeUtils.default.isFunction(t)||i[t]||(0,_log.errLog)("vxe.error.notSlot",["[form] ".concat(t)])})}),r.staticItems=_xeUtils.default.mapTree(t,function(t){return(0,_util.createItem)(e,t)},{children:"children"}),n.itemFormatCache={},e.$nextTick().then(function(){return e.recalculate()})},getItems:function(){var t=this.reactData,e=[];return _xeUtils.default.eachTree(t.formItems,function(t){e.push(t)},{children:"children"}),e},getItemByField:function(e){var t=this.reactData,t=_xeUtils.default.findTree(t.formItems,function(t){return t.field===e},{children:"children"});return t?t.item:null},getCollapseStatus:function(){return this.reactData.collapseAll},toggleCollapse:function(){var t=this.reactData,e=!this.getCollapseStatus();return t.collapseAll=e,this.$emit("update:collapseStatus",e),this.$nextTick()},toggleCollapseEvent:function(t){var e=this,i=e,r=e.$xeGrid,n=e.toggleCollapse(),l=e.getCollapseStatus();e.dispatchEvent("toggle-collapse",{status:l,collapse:l,data:i.data},t),e.dispatchEvent("collapse",{status:l,collapse:l,data:i.data},t),n.then(function(){e.recalculate().then(function(){r&&r.recalculate(!0)}),r&&r.recalculate()})},clearValidate:function(t){var e,i=this;return t?(e=_xeUtils.default.isArray(e=t)?e:[t]).forEach(function(t){t&&(t=(0,_util.handleFieldOrItem)(i,t))&&(t.showError=!1,t.showIconMsg=!1)}):i.getItems().forEach(function(t){t.showError=!1,t.showIconMsg=!1}),i.$nextTick()},getResetValue:function(t,e,i){var r=this.$xeGrid,n=t.field,l=t.resetValue;return _xeUtils.default.isFunction(l)?l({field:n,item:t,data:e,$form:this,$grid:r}):null===l&&_xeUtils.default.isArray(i)?[]:l},reset:function(){var a=this,o=a.$xeGrid,t=a.internalData,u=a.data,e=a.getItems();return u&&e.forEach(function(t){var e,i,r,n=t.field,l=t.itemRender;(0,_utils.isEnableConf)(l)&&(r=l.name,e=l.startField,l=l.endField,i=(r=_ui.renderer.get(r))?r.formItemResetMethod||r.itemResetMethod:null,r&&i?i({data:u,field:n,property:n,item:t,$form:a,$grid:o}):n&&(r=_xeUtils.default.get(u,n),_xeUtils.default.set(u,n,a.getResetValue(t,u,r))),e)&&l&&(_xeUtils.default.set(u,e,a.getResetValue(t,u,_xeUtils.default.get(u,e))),_xeUtils.default.set(u,l,a.getResetValue(t,u,_xeUtils.default.get(u,l))))}),t.itemFormatCache={},a.clearValidate(),a.recalculate()},resetEvent:function(t){t.preventDefault(),this.reset(),this.dispatchEvent("reset",{data:this.data},t)},handleFocus:function(t){var e=this,i=e,r=e.$xeGrid,n=e.$refs.refElem;if(n)for(var l=0;l<t.length;l++){var a=t[l],o=e.getItemByField(a);if(o&&(0,_utils.isEnableConf)(o.itemRender)){var u=o.itemRender,s=_ui.renderer.get(u.name),c=(l||(0,_dom.scrollToView)(n.querySelector(".".concat(o.id))),null),u=u.autoFocus||u.autofocus||(s?s.formItemAutoFocus:null);if(_xeUtils.default.isFunction(u)?c=u({$form:e,$grid:r,item:o,data:i.data,field:a}):!0===u?c=n.querySelector(".".concat(o.id," input,textarea")):u&&(c=n.querySelector(".".concat(o.id," ").concat(u))),c){c.focus();break}}}},validItemRules:function(f,t,e){var d=this,m=d.data,i=d.rules,r={};return _xeUtils.default.isArray(t)||(t=[t]),Promise.all(t.map(function(a){var o,u,s=[],c=[];return a&&i&&(o=_xeUtils.default.get(i,a))&&(u=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(m,a):e,o.forEach(function(e){var t,i,r,n=e.trigger,l=e.validator;"all"!==f&&n&&f!==n||(l?(t={itemValue:u,rule:e,rules:o,data:m,field:a,property:a,$form:d},_xeUtils.default.isString(l)?(r=_ui.validators.get(l))?(r=r.formItemValidatorMethod||r.itemValidatorMethod)?i=r(t):(0,_log.warnLog)("vxe.error.notValidators",["[form] ".concat(l)]):(0,_log.errLog)("vxe.error.notValidators",["[form] ".concat(l)]):i=l(t),i&&(_xeUtils.default.isError(i)?s.push(new Rule({type:"custom",trigger:n,content:i.message,rule:new Rule(e)})):i.catch&&c.push(i.catch(function(t){s.push(new Rule({type:"custom",trigger:n,content:t?t.message:e.content||e.message,rule:new Rule(e)}))})))):checkRuleStatus(e,m,u)||s.push(new Rule(e)))})),Promise.all(c).then(function(){s.length&&(r[a]=s.map(function(t){return{$form:d,rule:t,data:m,field:a,property:a}}))})})).then(function(){if(!_xeUtils.default.isEmpty(r))return Promise.reject(r)})},beginValidate:function(e,t,i){var r=this,n=r.internalData,l=r.data,a=r.rules,o=r.computeValidOpts,u={},s=[],c=[];return clearTimeout(n.meTimeout),l&&a?(e.forEach(function(e){var i=e.field;i&&!(0,_util.isHiddenItem)(r,e)&&(0,_util.isActiveItem)(r,e)&&c.push(r.validItemRules(t||"all",i).then(function(){e.errRule=null}).catch(function(t){t=t[i];return u[i]||(u[i]=[]),u[i].push(t),s.push(i),e.errRule=t[0].rule,Promise.reject(t)}))}),Promise.all(c).then(function(){i&&i()}).catch(function(){return new Promise(function(t){n.meTimeout=setTimeout(function(){e.forEach(function(t){t.errRule&&(t.showError=!0)})},20),!1!==o.autoPos&&r.$nextTick(function(){r.handleFocus(s)}),i?(i(u),t()):t(u)})})):(i&&i(),Promise.resolve())},validate:function(t){var e=this,i=e.readonly;return e.clearValidate(),i?e.$nextTick():e.beginValidate(e.getItems(),"",t).then(function(t){return e.recalculate(),t})},validateField:function(t,e){var i,r=this;return r.readonly?r.$nextTick():(i=[],t=(i=t?_xeUtils.default.isArray(t)?t:[t]:i).map(function(t){return(0,_util.handleFieldOrItem)(r,t)}),r.beginValidate(t,"",e).then(function(t){return r.recalculate(),t}))},handleSubmitEvent:function(e){var i=this,r=i,t=r.readonly;i.clearValidate(),t?(i.dispatchEvent("submit",{data:r.data},e),i.recalculate()):i.beginValidate(i.getItems()).then(function(t){t?i.dispatchEvent("submit-invalid",{data:r.data,errMap:t},e):i.dispatchEvent("submit",{data:r.data},e),i.recalculate()})},submitEvent:function(t){t.preventDefault(),this.preventSubmit||this.handleSubmitEvent(t)},closeTooltip:function(){var t=this.internalData.tooltipStore,e=this.$refs.refTooltip;return t.visible&&(Object.assign(t,{item:null,visible:!1}),e)&&e.close(),this.$nextTick()},triggerTitleTipEvent:function(t,e){var i=this.internalData,e=e.item,r=i.tooltipStore,n=this.$refs.refTooltip,t=t.currentTarget.children[0],l=(t.textContent||"").trim(),a=t.scrollWidth>t.clientWidth;clearTimeout(i.stTimeout),r.item!==e&&this.closeTooltip(),l&&a&&(Object.assign(r,{item:e,visible:!0}),n)&&n.open(t,l)},handleTitleTipLeaveEvent:function(){var t=this,e=t.internalData,i=t.computeTooltipOpts,r=t.$refs.refTooltip;r&&r.setActived(!1),i.enterable?e.stTimeout=setTimeout(function(){(r=t.$refs.refTooltip)&&!r.isActived()&&t.closeTooltip()},i.leaveDelay):t.closeTooltip()},handleValidIconEvent:function(t,e){e=e.item;e.showIconMsg=!e.showIconMsg},triggerItemEvent:function(t,i,e){var r=this;return i?r.validItemRules(t?["blur"].includes(t.type)?"blur":"change":"all",i,e).then(function(){r.clearValidate(i)}).catch(function(t){var t=t[i],e=r.getItemByField(i);t&&e&&(e.showError=!0,e.errRule=t[0].rule)}):r.$nextTick()},updateStatus:function(t,e){t=t.field;return this.triggerItemEvent(new Event("change"),t,e)},recalculate:function(){var e,t=this.computeAutoItemWidthList,i=this.$refs.refElem;return i&&t.length&&(i=i.querySelectorAll(t.map(function(t){return'.vxe-form--item-title[itemid="'.concat(t.id,'"]')}).join(",")),e=0,_xeUtils.default.arrayEach(i,function(t){t.style.width="",e=Math.max(e,Math.ceil(t.clientWidth+2))}),_xeUtils.default.arrayEach(i,function(t){t.style.width="".concat(e,"px")})),this.$nextTick()},handleGlobalResizeEvent:function(){this.recalculate()},renderVN:function(i){var t=this,e=t.$scopedSlots,r=t.loading,n=t.border,l=t.className,a=t.data,o=t.customLayout,u=t.reactData.formItems,s=t.computeSize,c=t.computeTooltipOpts,e=e.default;return i("form",{ref:"refElem",class:["vxe-form",l?_xeUtils.default.isFunction(l)?l({items:u,data:a,$form:t}):l:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(s),s),"is--border",n),"custom--layout",o),"is--loading",r)],on:{submit:t.submitEvent,reset:t.resetEvent}},[i("div",{class:"vxe-form--wrapper vxe-form--item-row"},o?e?e({}):[]:u.map(function(t,e){return i(_formConfigItem.default,{key:e,props:{itemConfig:t}})})),i("div",{class:"vxe-form-slots",ref:"hideItem"},!o&&e?e({}):[]),i(_loading.default,{class:"vxe-form--loading",props:{value:r}}),i(_tooltip.default,Object.assign({ref:"refTooltip"},c))])}},watch:{vertical:function(){this.recalcFlag++},titleWidth:function(){this.recalcFlag++},recalcFlag:function(){var t=this;t.$nextTick().then(function(){t.recalculate()})},"reactData.staticItems":function(){var t=this.reactData;t.formItems=t.staticItems,this.recalcFlag++},items:function(){this.loadItem(this.items||[])},collapseStatus:function(t){this.reactData.collapseAll=!!t},readonly:function(){this.clearValidate()},disabled:function(){this.clearValidate()}},created:function(){this.reactData.collapseAll=!!this.collapseStatus},mounted:function(){var t=this,e=t;e.items&&t.loadItem(e.items),t.$nextTick(function(){e.customLayout&&e.items&&(0,_log.errLog)("vxe.error.errConflicts",["[form] custom-layout","items"])}),_ui.globalEvents.on(t,"resize",t.handleGlobalResizeEvent)},destroyed:function(){var t=this.internalData;_ui.globalEvents.off(this,"resize"),_xeUtils.default.assign(t,createInternalData())},render:function(t){return this.renderVN(t)}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip")),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_loading=_interopRequireDefault(require("../../loading")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _defineProperty(t,e,i){return(e=_toPropertyKey(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,_toPropertyKey(r.key),r)}}function _createClass(t,e,i){return e&&_defineProperties(t.prototype,e),i&&_defineProperties(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t}function _toPropertyKey(t){t=_toPrimitive(t,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive(t,e){if("object"!=_typeof(t)||!t)return t;var i=t[Symbol.toPrimitive];if(void 0===i)return("string"===e?String:Number)(t);i=i.call(t,e||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}require("../render");var Rule=(()=>_createClass(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})},[{key:"content",get:function(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}},{key:"message",get:function(){return this.content}}]))();function validREValue(t,e){return!(t&&!(_xeUtils.default.isRegExp(t)?t:new RegExp(t)).test(e))}function validMaxValue(t,e){return!(!_xeUtils.default.eqNull(t)&&e>_xeUtils.default.toNumber(t))}function validMinValue(t,e){return!(!_xeUtils.default.eqNull(t)&&e<_xeUtils.default.toNumber(t))}function validRuleValue(t,e,i){var r=t.type,n=t.min,l=t.max,t=t.pattern,a="array"===r,o="number"===r,r="string"===r,u="".concat(e);if(!validREValue(t,u))return!1;if(a){if(!_xeUtils.default.isArray(e))return!1;if(i&&!e.length)return!1;if(!validMinValue(n,e.length))return!1;if(!validMaxValue(l,e.length))return!1}else if(o){t=Number(e);if(isNaN(t))return!1;if(!validMinValue(n,t))return!1;if(!validMaxValue(l,t))return!1}else{if(r&&!_xeUtils.default.isString(e))return!1;if(i&&!u)return!1;if(!validMinValue(n,u.length))return!1;if(!validMaxValue(l,u.length))return!1}return!0}function checkRuleStatus(t,e,i){var r=t.required,n=t.field,e=n?_xeUtils.default.get(e,n):i,n=_xeUtils.default.isArray(e)?!e.length:(0,_utils.eqEmptyValue)(e);if(r){if(n)return!1;if(!validRuleValue(t,e,r))return!1}else if(!n&&!validRuleValue(t,e,r))return!1;return!0}function createInternalData(){return{meTimeout:void 0,stTimeout:void 0,tooltipStore:{item:null,visible:!1},itemFormatCache:{}}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeForm",mixins:[_ui.globalMixins.sizeMixin],props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:function(){return(0,_ui.getConfig)().form.size||(0,_ui.getConfig)().size}},span:{type:[String,Number],default:function(){return(0,_ui.getConfig)().form.span}},align:{type:String,default:function(){return(0,_ui.getConfig)().form.align}},verticalAlign:{type:String,default:function(){return(0,_ui.getConfig)().form.verticalAlign}},border:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.border}},titleBackground:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleBackground}},titleBold:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleBold}},titleAlign:{type:String,default:function(){return(0,_ui.getConfig)().form.titleAlign}},titleWidth:{type:[String,Number],default:function(){return(0,_ui.getConfig)().form.titleWidth}},titleColon:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleColon}},titleAsterisk:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.titleAsterisk}},titleOverflow:{type:[Boolean,String],default:function(){return(0,_ui.getConfig)().form.titleOverflow}},vertical:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.vertical}},padding:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.padding}},className:[String,Function],readonly:Boolean,disabled:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.preventSubmit}},validConfig:Object,tooltipConfig:Object,collapseConfig:Object,customLayout:{type:Boolean,default:function(){return(0,_ui.getConfig)().form.customLayout}},params:Object},inject:{$xeGrid:{default:null}},provide:function(){return{$xeForm:this,xeFormItemInfo:null,$xeFormGroup:null,$xeFormItem:null}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{collapseAll:!1,staticItems:[],formItems:[],itemWidth:0},internalData:createInternalData(),recalcFlag:0}},computed:Object.assign(Object.assign({},{}),{computeValidOpts:function(){return Object.assign({},(0,_ui.getConfig)().form.validConfig,this.validConfig)},computeTooltipOpts:function(){return Object.assign({},(0,_ui.getConfig)().tooltip,(0,_ui.getConfig)().form.tooltipConfig,this.tooltipConfig)},computeCollapseOpts:function(){return Object.assign({},(0,_ui.getConfig)().form.collapseConfig,this.collapseConfig)},computeAutoItemWidthList:function(){var t=this.reactData,r=this.titleWidth,n=this.vertical,t=t.formItems,l=[];return _xeUtils.default.eachTree(t,function(t){var e=t.titleWidth,i=t.vertical;"auto"!==e&&("auto"!==((_xeUtils.default.eqNull(i)?n:i)?null:_xeUtils.default.eqNull(e)?r:e)||t.children&&t.children.length)||l.push(t)},{children:"children"}),l}}),methods:{dispatchEvent:function(t,e,i){this.$emit(t,(0,_ui.createEvent)(i,{$form:this},e))},callSlot:function(t,e,i){var r=this.$scopedSlots;return t&&(_xeUtils.default.isString(t)&&(t=r[t]||null),_xeUtils.default.isFunction(t))?(0,_vn.getSlotVNs)(t.call(this,e,i)):[]},loadItem:function(t){var e=this,i=e.$scopedSlots,r=e.reactData,n=e.internalData;return t.length&&t.forEach(function(t){t.slots&&_xeUtils.default.each(t.slots,function(t){_xeUtils.default.isFunction(t)||i[t]||(0,_log.errLog)("vxe.error.notSlot",["[form] ".concat(t)])})}),r.staticItems=_xeUtils.default.mapTree(t,function(t){return(0,_util.createItem)(e,t)},{children:"children"}),n.itemFormatCache={},e.$nextTick().then(function(){return e.recalculate()})},getItems:function(){var t=this.reactData,e=[];return _xeUtils.default.eachTree(t.formItems,function(t){e.push(t)},{children:"children"}),e},getItemByField:function(e){var t=this.reactData,t=_xeUtils.default.findTree(t.formItems,function(t){return t.field===e},{children:"children"});return t?t.item:null},getCollapseStatus:function(){return this.reactData.collapseAll},toggleCollapse:function(){var t=this.reactData,e=!this.getCollapseStatus();return t.collapseAll=e,this.$emit("update:collapseStatus",e),this.$nextTick()},toggleCollapseEvent:function(t){var e=this,i=e,r=e.$xeGrid,n=e.toggleCollapse(),l=e.getCollapseStatus();e.dispatchEvent("toggle-collapse",{status:l,collapse:l,data:i.data},t),e.dispatchEvent("collapse",{status:l,collapse:l,data:i.data},t),n.then(function(){e.recalculate().then(function(){r&&r.recalculate(!0)}),r&&r.recalculate()})},clearValidate:function(t){var e,i=this;return t?(e=_xeUtils.default.isArray(e=t)?e:[t]).forEach(function(t){t&&(t=(0,_util.handleFieldOrItem)(i,t))&&(t.showError=!1,t.showIconMsg=!1)}):i.getItems().forEach(function(t){t.showError=!1,t.showIconMsg=!1}),i.$nextTick()},getResetValue:function(t,e,i){var r=this.$xeGrid,n=t.field,l=t.resetValue;return _xeUtils.default.isFunction(l)?l({field:n,item:t,data:e,$form:this,$grid:r}):null===l&&_xeUtils.default.isArray(i)?[]:l},reset:function(){var a=this,o=a.$xeGrid,t=a.internalData,u=a.data,e=a.getItems();return u&&e.forEach(function(t){var e,i,r,n=t.field,l=t.itemRender;(0,_utils.isEnableConf)(l)&&(r=l.name,e=l.startField,l=l.endField,i=(r=_ui.renderer.get(r))?r.formItemResetMethod||r.itemResetMethod:null,r&&i?i({data:u,field:n,property:n,item:t,$form:a,$grid:o}):n&&(r=_xeUtils.default.get(u,n),_xeUtils.default.set(u,n,a.getResetValue(t,u,r))),e)&&l&&(_xeUtils.default.set(u,e,a.getResetValue(t,u,_xeUtils.default.get(u,e))),_xeUtils.default.set(u,l,a.getResetValue(t,u,_xeUtils.default.get(u,l))))}),t.itemFormatCache={},a.clearValidate(),a.recalculate()},resetEvent:function(t){t.preventDefault(),this.reset(),this.dispatchEvent("reset",{data:this.data},t)},handleFocus:function(t){var e=this,i=e,r=e.$xeGrid,n=e.$refs.refElem;if(n)for(var l=0;l<t.length;l++){var a=t[l],o=e.getItemByField(a);if(o&&(0,_utils.isEnableConf)(o.itemRender)){var u=o.itemRender,s=_ui.renderer.get(u.name),c=(l||(0,_dom.scrollToView)(n.querySelector(".".concat(o.id))),null),u=u.autoFocus||u.autofocus||(s?s.formItemAutoFocus:null);if(_xeUtils.default.isFunction(u)?c=u({$form:e,$grid:r,item:o,data:i.data,field:a}):!0===u?c=n.querySelector(".".concat(o.id," input,textarea")):u&&(c=n.querySelector(".".concat(o.id," ").concat(u))),c){c.focus();break}}}},validItemRules:function(f,t,e){var d=this,m=d.data,i=d.rules,r={};return _xeUtils.default.isArray(t)||(t=[t]),Promise.all(t.map(function(a){var t,o,u,s=[],c=[];return a&&i&&(t=d.getItemByField(a),o=t&&t.rules?t.rules:_xeUtils.default.get(i,a))&&(u=_xeUtils.default.isUndefined(e)?_xeUtils.default.get(m,a):e,o.forEach(function(e){var t,i,r,n=e.trigger,l=e.validator;"all"!==f&&n&&f!==n||(l?(t={itemValue:u,rule:e,rules:o,data:m,field:a,property:a,$form:d},_xeUtils.default.isString(l)?(r=_ui.validators.get(l))?(r=r.formItemValidatorMethod||r.itemValidatorMethod)?i=r(t):(0,_log.warnLog)("vxe.error.notValidators",["[form] ".concat(l)]):(0,_log.errLog)("vxe.error.notValidators",["[form] ".concat(l)]):i=l(t),i&&(_xeUtils.default.isError(i)?s.push(new Rule({type:"custom",trigger:n,content:i.message,rule:new Rule(e)})):i.catch&&c.push(i.catch(function(t){s.push(new Rule({type:"custom",trigger:n,content:t?t.message:e.content||e.message,rule:new Rule(e)}))})))):checkRuleStatus(e,m,u)||s.push(new Rule(e)))})),Promise.all(c).then(function(){s.length&&(r[a]=s.map(function(t){return{$form:d,rule:t,data:m,field:a,property:a}}))})})).then(function(){if(!_xeUtils.default.isEmpty(r))return Promise.reject(r)})},beginValidate:function(e,t,i){var r=this,n=r.internalData,l=r.data,a=r.rules,o=r.computeValidOpts,u={},s=[],c=[];return clearTimeout(n.meTimeout),l&&a?(e.forEach(function(e){var i=e.field;i&&!(0,_util.isHiddenItem)(r,e)&&(0,_util.isActiveItem)(r,e)&&c.push(r.validItemRules(t||"all",i).then(function(){e.errRule=null}).catch(function(t){t=t[i];return u[i]||(u[i]=[]),u[i].push(t),s.push(i),e.errRule=t[0].rule,Promise.reject(t)}))}),Promise.all(c).then(function(){i&&i()}).catch(function(){return new Promise(function(t){n.meTimeout=setTimeout(function(){e.forEach(function(t){t.errRule&&(t.showError=!0)})},20),!1!==o.autoPos&&r.$nextTick(function(){r.handleFocus(s)}),i?(i(u),t()):t(u)})})):(i&&i(),Promise.resolve())},validate:function(t){var e=this,i=e.readonly;return e.clearValidate(),i?e.$nextTick():e.beginValidate(e.getItems(),"",t).then(function(t){return e.recalculate(),t})},validateField:function(t,e){var i,r=this;return r.readonly?r.$nextTick():(i=[],t=(i=t?_xeUtils.default.isArray(t)?t:[t]:i).map(function(t){return(0,_util.handleFieldOrItem)(r,t)}),r.beginValidate(t,"",e).then(function(t){return r.recalculate(),t}))},handleSubmitEvent:function(e){var i=this,r=i,t=r.readonly;i.clearValidate(),t?(i.dispatchEvent("submit",{data:r.data},e),i.recalculate()):i.beginValidate(i.getItems()).then(function(t){t?i.dispatchEvent("submit-invalid",{data:r.data,errMap:t},e):i.dispatchEvent("submit",{data:r.data},e),i.recalculate()})},submitEvent:function(t){t.preventDefault(),this.preventSubmit||this.handleSubmitEvent(t)},closeTooltip:function(){var t=this.internalData.tooltipStore,e=this.$refs.refTooltip;return t.visible&&(Object.assign(t,{item:null,visible:!1}),e)&&e.close(),this.$nextTick()},triggerTitleTipEvent:function(t,e){var i=this.internalData,e=e.item,r=i.tooltipStore,n=this.$refs.refTooltip,t=t.currentTarget.children[0],l=(t.textContent||"").trim(),a=t.scrollWidth>t.clientWidth;clearTimeout(i.stTimeout),r.item!==e&&this.closeTooltip(),l&&a&&(Object.assign(r,{item:e,visible:!0}),n)&&n.open(t,l)},handleTitleTipLeaveEvent:function(){var t=this,e=t.internalData,i=t.computeTooltipOpts,r=t.$refs.refTooltip;r&&r.setActived(!1),i.enterable?e.stTimeout=setTimeout(function(){(r=t.$refs.refTooltip)&&!r.isActived()&&t.closeTooltip()},i.leaveDelay):t.closeTooltip()},handleValidIconEvent:function(t,e){e=e.item;e.showIconMsg=!e.showIconMsg},triggerItemEvent:function(t,i,e){var r=this;return i?r.validItemRules(t?["blur"].includes(t.type)?"blur":"change":"all",i,e).then(function(){r.clearValidate(i)}).catch(function(t){var t=t[i],e=r.getItemByField(i);t&&e&&(e.showError=!0,e.errRule=t[0].rule)}):r.$nextTick()},updateStatus:function(t,e){t=t.field;return this.triggerItemEvent(new Event("change"),t,e)},recalculate:function(){var e,t=this.computeAutoItemWidthList,i=this.$refs.refElem;return i&&t.length&&(i=i.querySelectorAll(t.map(function(t){return'.vxe-form--item-title[itemid="'.concat(t.id,'"]')}).join(",")),e=0,_xeUtils.default.arrayEach(i,function(t){t.style.width="",e=Math.max(e,Math.ceil(t.clientWidth+2))}),_xeUtils.default.arrayEach(i,function(t){t.style.width="".concat(e,"px")})),this.$nextTick()},handleGlobalResizeEvent:function(){this.recalculate()},renderVN:function(i){var t=this,e=t.$scopedSlots,r=t.loading,n=t.border,l=t.className,a=t.data,o=t.customLayout,u=t.reactData.formItems,s=t.computeSize,c=t.computeTooltipOpts,e=e.default;return i("form",{ref:"refElem",class:["vxe-form",l?_xeUtils.default.isFunction(l)?l({items:u,data:a,$form:t}):l:"",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(s),s),"is--border",n),"custom--layout",o),"is--loading",r)],on:{submit:t.submitEvent,reset:t.resetEvent}},[i("div",{class:"vxe-form--wrapper vxe-form--item-row"},o?e?e({}):[]:u.map(function(t,e){return i(_formConfigItem.default,{key:e,props:{itemConfig:t}})})),i("div",{class:"vxe-form-slots",ref:"hideItem"},!o&&e?e({}):[]),i(_loading.default,{class:"vxe-form--loading",props:{value:r}}),i(_tooltip.default,Object.assign({ref:"refTooltip"},c))])}},watch:{vertical:function(){this.recalcFlag++},titleWidth:function(){this.recalcFlag++},recalcFlag:function(){var t=this;t.$nextTick().then(function(){t.recalculate()})},"reactData.staticItems":function(){var t=this.reactData;t.formItems=t.staticItems,this.recalcFlag++},items:function(){this.loadItem(this.items||[])},collapseStatus:function(t){this.reactData.collapseAll=!!t},readonly:function(){this.clearValidate()},disabled:function(){this.clearValidate()}},created:function(){this.reactData.collapseAll=!!this.collapseStatus},mounted:function(){var t=this,e=t;e.items&&t.loadItem(e.items),t.$nextTick(function(){e.customLayout&&e.items&&(0,_log.errLog)("vxe.error.errConflicts",["[form] custom-layout","items"])}),_ui.globalEvents.on(t,"resize",t.handleGlobalResizeEvent)},destroyed:function(){var t=this.internalData;_ui.globalEvents.off(this,"resize"),_xeUtils.default.assign(t,createInternalData())},render:function(t){return this.renderVN(t)}});
|
package/lib/form/src/render.js
CHANGED
|
@@ -102,7 +102,7 @@ function getItemClass($xeForm, item, isGroup) {
|
|
|
102
102
|
var isRequired = false;
|
|
103
103
|
var isValid = false;
|
|
104
104
|
if (!readonly && rules) {
|
|
105
|
-
var itemRules = rules[field];
|
|
105
|
+
var itemRules = item.rules ? item.rules : rules[field];
|
|
106
106
|
if (itemRules && itemRules.length) {
|
|
107
107
|
isValid = true;
|
|
108
108
|
isRequired = itemRules.some(function (rule) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.getItemClass=getItemClass,exports.getItemContentClass=getItemContentClass,exports.renderItemContent=renderItemContent,exports.renderItemErrorIcon=renderItemErrorIcon,exports.renderTitle=renderTitle;var _ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_icon=_interopRequireDefault(require("../../icon/src/icon")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}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)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var r;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(r="Object"===(r={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,i=Array(t);r<t;r++)i[r]=e[r];return i}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);r=r.call(e,t||"default");if("object"!=_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}function renderPrefixIcon(e,t){return e("span",{class:"vxe-form--item-title-tip-prefix"},[e(_icon.default,{class:t.icon||(0,_ui.getIcon)().FORM_PREFIX,props:{status:t.iconStatus}})])}function renderSuffixIcon(e,t){return e("span",{class:"vxe-form--item-title-tip-suffix"},[e(_icon.default,{class:t.icon||(0,_ui.getIcon)().FORM_SUFFIX,props:{status:t.iconStatus}})])}function getItemClass(e,t,r){var i=e.reactData,l=e.$xeGrid,o=e.data,n=e.rules,a=e.readonly,s=e.disabled,u=e.span,d=e.titleBackground,c=e.titleBold,f=e.titleColon,m=e.titleAsterisk,p=e.vertical,_=e.padding,i=i.collapseAll,g=t.folding,y=t.field,v=t.itemRender,x=t.showError,b=t.className,I=t.vertical,h=t.padding,C=t.children,S=t.showContent,A=e.computeSize,T=e.computeValidOpts,U=T.showErrorMessage,N=T.showMessage,P=T.showErrorBackground,T=T.showErrorIcon,v=(0,_utils.isEnableConf)(v)?_ui.renderer.get(v.name):null,v=v?v.formItemClassName||v.itemClassName:"",u=t.span||u,_=_xeUtils.default.eqNull(h)?_:h,h=_xeUtils.default.eqNull(I)?p:I,p=_xeUtils.default.eqNull(t.titleBackground)?d:t.titleBackground,I=_xeUtils.default.eqNull(t.titleBold)?c:t.titleBold,d=_xeUtils.default.eqNull(t.titleColon)?f:t.titleColon,c=_xeUtils.default.eqNull(t.titleAsterisk)?m:t.titleAsterisk,f={data:o,disabled:s,readonly:a,field:y,property:y,item:t,$form:e,$grid:l},m=C&&0<C.length,o=!1,s=!1;return!a&&n&&(l=n[y])&&l.length&&(s=!0,o=l.some(function(e){return e.required})),[r||m?"vxe-form--group":"","vxe-form--item",t.id,u?"vxe-form--item-col_".concat(u," is--span"):"","".concat((_xeUtils.default.isBoolean(U)?U:N)?"show":"hide","--err-msg"),b?_xeUtils.default.isFunction(b)?b(f):b:"",v?_xeUtils.default.isFunction(v)?v(f):v:"",(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(C={},"size--".concat(A),A),"is--colon",d),"is--tbg",p),"is--bold",I),"is--padding",_),"is--vertical",h),"is--asterisk",c),"hide--content",!1===S),"is--valid",s),"is--required",o),_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(C,"is--hidden",g&&i),"is--active",(0,_util.isActiveItem)(e,t)),"err--icon",T),"err--bg",P),"is--error",x))]}function getItemContentClass(e,t,r){var i=e.$xeGrid,l=e.data,o=e.readonly,n=e.disabled,a=e.align,s=e.verticalAlign,u=t.field,d=t.itemRender,c=t.contentClassName,f=t.children,f=f&&0<f.length,d=(0,_utils.isEnableConf)(d)?_ui.renderer.get(d.name):null,d=d?d.formItemContentClassName||d.itemContentClassName:"",a=!f&&_xeUtils.default.eqNull(t.align)?a:t.align,s=!f&&_xeUtils.default.eqNull(t.verticalAlign)?s:t.verticalAlign,l={data:l,disabled:n,readonly:o,field:u,property:u,item:t,$form:e,$grid:i};return[r||f?"vxe-form--group-content vxe-form--item-row":"","vxe-form--item-content",a?"align--".concat(a):"",s?"vertical-align--".concat(s):"",d?_xeUtils.default.isFunction(d)?d(l):d:"",c?_xeUtils.default.isFunction(c)?c(l):c:""]}function renderTitle(e,t,r,i){var l=t.$xeGrid,o=t.data,n=t.readonly,a=t.disabled,s=t.titleAlign,u=t.titleWidth,d=t.titleOverflow,c=t.vertical,f=r.slots,m=r.title,p=r.field,_=r.itemRender,g=r.titleOverflow,y=r.vertical,v=r.showTitle,x=r.titleClassName,b=r.titleStyle,I=r.titlePrefix,h=r.titleSuffix,C=r.children,S=r.showContent,A=t.computeTooltipOpts,T=(0,_utils.isEnableConf)(_)?_ui.renderer.get(_.name):null,U=T?T.formItemTitleClassName||T.itemTitleClassName:"",N=T?T.formItemTitleStyle||T.itemTitleStyle:null,c=_xeUtils.default.eqNull(y)?c:y,y=_xeUtils.default.eqNull(r.titleAlign)?s:r.titleAlign,s=c?null:_xeUtils.default.eqNull(r.titleWidth)?u:r.titleWidth,c=_xeUtils.default.eqNull(g)?d:g,u="title"===c,d=!0===c||"tooltip"===c,g=u||d||"ellipsis"===c,P={data:o,disabled:a,readonly:n,field:p,property:p,item:r,$form:t,$grid:l},c=f?f.title:null,o=f?f.prefix:null,a=f?f.suffix||f.extra:null,n=!1!==v&&(m||c),p=C&&0<C.length,l=[],f=(o&&l.push(e("span",{key:"pt",class:"vxe-form--item-title-prefix"},t.callSlot(o,P,e))),I&&l.push(I.content||I.message?e(_tooltip.default,{key:"pm",props:Object.assign(Object.assign(Object.assign({},A),I),{content:(0,_utils.getFuncText)(I.content||I.message)}),scopedSlots:{default:function(){return renderPrefixIcon(e,I)}}}):renderPrefixIcon(e,I)),T?T.renderFormItemTitle||T.renderItemTitle:null),v=(l.push(e("span",{key:"pl",class:"vxe-form--item-title-label"},c?t.callSlot(c,P,e):f?(0,_vn.getSlotVNs)(f.call(t,e,_,P)):(0,_utils.getFuncText)(r.title))),[]),C=(h&&v.push(h.content||h.message?e(_tooltip.default,{key:"sm",props:Object.assign(Object.assign(Object.assign({},A),h),{content:(0,_utils.getFuncText)(h.content||h.message)}),scopedSlots:{default:function(){return renderSuffixIcon(e,h)}}}):renderSuffixIcon(e,h)),a&&v.push(e("span",{key:"st",class:"vxe-form--item-title-suffix"},t.callSlot(a,P,e))),d?{onMouseenter:function(e){t.triggerTitleTipEvent(e,P)},onMouseleave:t.handleTitleTipLeaveEvent}:{}),o=Object.assign({},_xeUtils.default.isFunction(N)?N(P):N,_xeUtils.default.isFunction(b)?b(P):b);return s&&"auto"!==s&&!1!==S&&(o.width=(0,_dom.toCssUnit)(s)),n?e("div",{class:[i||p?"vxe-form--group-title":"","vxe-form--item-title",y?"align--".concat(y):"",g?"is--ellipsis":"",U?_xeUtils.default.isFunction(U)?U(P):U:"",x?_xeUtils.default.isFunction(x)?x(P):x:""],style:o,attrs:{itemid:r.id,title:u?(0,_utils.getFuncText)(m):null},on:C},[e("div",{class:"vxe-form--item-title-content"},l),e("div",{class:"vxe-form--item-title-postfix"},v)]):(0,_ui.renderEmptyElement)(t)}function renderItemErrorIcon(e,t,r){var i=t.computeValidOpts,l=i.showErrorIcon,o=r.errRule,n=r.showIconMsg;return l?e("div",{key:"emi",class:["vxe-form-item--valid-error-icon-wrapper",{"is--show":n,"is--hide":!n}]},[e("span",{class:"vxe-form-item--valid-error-icon-btn",on:{click:function(e){t.handleValidIconEvent(e,{item:r})}}},[e("i",{class:i.errorIcon||(0,_ui.getIcon)().FORM_VALID_ERROR_ICON})]),e("div",{class:"vxe-form-item--valid-error-icon-msg-tip"},o?[e("div",{class:"vxe-form-item--valid-error-icon-msg vxe-form-item--valid-error-icon-theme-".concat(i.theme||"normal")},o.content||o.message)]:[])]):(0,_ui.renderEmptyElement)(t)}function renderItemContent(e,t,r){var i=t.reactData,l=t.$xeGrid,o=t.data,n=t.readonly,a=t.disabled,s=t.internalData.itemFormatCache,i=i.collapseAll,u=r.slots,d=r.field,c=r.itemRender,f=r.collapseNode,m=r.errRule,p=r.formatter,_=u?u.default:null,u=u?u.valid:null,g=t.computeCollapseOpts,y=t.computeValidOpts,v=y.showErrorMessage,x=y.showMessage,b=(0,_utils.isEnableConf)(c)?_ui.renderer.get(c.name):null,I=_xeUtils.default.get(o,d),o={data:o,disabled:a,readonly:n,field:d,property:d,item:r,itemValue:I,$form:t,$grid:l},a=[],n=b?b.renderFormItemContent||b.renderItemContent:null;if(_)a=t.callSlot(_,o,e);else if(n)a=(0,_vn.getSlotVNs)(n.call(t,e,c,o));else if(d){var h,r=I;if(p){if(d){var l=s[d];if(l)if(h=l.formatData){if(h.value===I)return h.label}else h=l.formatData={};else s[d]={field:d}}r=_xeUtils.default.isString(p)?(_=(b=_ui.formats.get(p))?b.formItemFormatMethod:null)?_(o):"":_xeUtils.default.isArray(p)?(c=(n=_ui.formats.get(p[0]))?n.formItemFormatMethod:null)?c.apply(void 0,[o].concat(_toConsumableArray(p.slice(1)))):"":p(o),h&&(h.value=I,h.label=r)}a=[(0,_utils.eqEmptyValue)(r)?"":"".concat(r)]}return f&&a.push(e("div",{class:"vxe-form--item-trigger-node",on:{click:t.toggleCollapseEvent}},[e("span",{class:"vxe-form--item-trigger-text"},i?g.unfoldButtonText||(0,_ui.getI18n)("vxe.form.unfolding"):g.foldButtonText||(0,_ui.getI18n)("vxe.form.folding")),e("i",{class:["vxe-form--item-trigger-icon",i?g.foldIcon||(0,_ui.getIcon)().FORM_FOLDING:g.unfoldIcon||(0,_ui.getIcon)().FORM_UNFOLDING]})])),m&&(_xeUtils.default.isBoolean(v)?v:x)&&(l=Object.assign(Object.assign({},o),{rule:m}),a.push(e("div",{class:"vxe-form-item--valid-error-tip",style:m.maxWidth?{width:(0,_dom.toCssUnit)(m.maxWidth)}:{}},[e("div",{class:"vxe-form-item--valid-error-wrapper vxe-form-item--valid-error-theme-".concat(y.theme||"normal")},[u?t.callSlot(u,l,e):[e("span",{class:"vxe-form--item--valid-error-msg"},m.content||m.message)]])]))),e("div",{key:"ct",class:"vxe-form--item-inner"},a)}
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.getItemClass=getItemClass,exports.getItemContentClass=getItemContentClass,exports.renderItemContent=renderItemContent,exports.renderItemErrorIcon=renderItemErrorIcon,exports.renderTitle=renderTitle;var _ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_icon=_interopRequireDefault(require("../../icon/src/icon")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}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)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var r;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(r="Object"===(r={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,i=Array(t);r<t;r++)i[r]=e[r];return i}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);r=r.call(e,t||"default");if("object"!=_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}function renderPrefixIcon(e,t){return e("span",{class:"vxe-form--item-title-tip-prefix"},[e(_icon.default,{class:t.icon||(0,_ui.getIcon)().FORM_PREFIX,props:{status:t.iconStatus}})])}function renderSuffixIcon(e,t){return e("span",{class:"vxe-form--item-title-tip-suffix"},[e(_icon.default,{class:t.icon||(0,_ui.getIcon)().FORM_SUFFIX,props:{status:t.iconStatus}})])}function getItemClass(e,t,r){var i=e.reactData,l=e.$xeGrid,o=e.data,n=e.rules,a=e.readonly,s=e.disabled,u=e.span,d=e.titleBackground,c=e.titleBold,f=e.titleColon,m=e.titleAsterisk,p=e.vertical,_=e.padding,i=i.collapseAll,g=t.folding,y=t.field,v=t.itemRender,x=t.showError,b=t.className,I=t.vertical,h=t.padding,C=t.children,S=t.showContent,A=e.computeSize,T=e.computeValidOpts,U=T.showErrorMessage,N=T.showMessage,P=T.showErrorBackground,T=T.showErrorIcon,v=(0,_utils.isEnableConf)(v)?_ui.renderer.get(v.name):null,v=v?v.formItemClassName||v.itemClassName:"",u=t.span||u,_=_xeUtils.default.eqNull(h)?_:h,h=_xeUtils.default.eqNull(I)?p:I,p=_xeUtils.default.eqNull(t.titleBackground)?d:t.titleBackground,I=_xeUtils.default.eqNull(t.titleBold)?c:t.titleBold,d=_xeUtils.default.eqNull(t.titleColon)?f:t.titleColon,c=_xeUtils.default.eqNull(t.titleAsterisk)?m:t.titleAsterisk,f={data:o,disabled:s,readonly:a,field:y,property:y,item:t,$form:e,$grid:l},m=C&&0<C.length,o=!1,s=!1;return!a&&n&&(l=t.rules||n[y])&&l.length&&(s=!0,o=l.some(function(e){return e.required})),[r||m?"vxe-form--group":"","vxe-form--item",t.id,u?"vxe-form--item-col_".concat(u," is--span"):"","".concat((_xeUtils.default.isBoolean(U)?U:N)?"show":"hide","--err-msg"),b?_xeUtils.default.isFunction(b)?b(f):b:"",v?_xeUtils.default.isFunction(v)?v(f):v:"",(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(C={},"size--".concat(A),A),"is--colon",d),"is--tbg",p),"is--bold",I),"is--padding",_),"is--vertical",h),"is--asterisk",c),"hide--content",!1===S),"is--valid",s),"is--required",o),_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(C,"is--hidden",g&&i),"is--active",(0,_util.isActiveItem)(e,t)),"err--icon",T),"err--bg",P),"is--error",x))]}function getItemContentClass(e,t,r){var i=e.$xeGrid,l=e.data,o=e.readonly,n=e.disabled,a=e.align,s=e.verticalAlign,u=t.field,d=t.itemRender,c=t.contentClassName,f=t.children,f=f&&0<f.length,d=(0,_utils.isEnableConf)(d)?_ui.renderer.get(d.name):null,d=d?d.formItemContentClassName||d.itemContentClassName:"",a=!f&&_xeUtils.default.eqNull(t.align)?a:t.align,s=!f&&_xeUtils.default.eqNull(t.verticalAlign)?s:t.verticalAlign,l={data:l,disabled:n,readonly:o,field:u,property:u,item:t,$form:e,$grid:i};return[r||f?"vxe-form--group-content vxe-form--item-row":"","vxe-form--item-content",a?"align--".concat(a):"",s?"vertical-align--".concat(s):"",d?_xeUtils.default.isFunction(d)?d(l):d:"",c?_xeUtils.default.isFunction(c)?c(l):c:""]}function renderTitle(e,t,r,i){var l=t.$xeGrid,o=t.data,n=t.readonly,a=t.disabled,s=t.titleAlign,u=t.titleWidth,d=t.titleOverflow,c=t.vertical,f=r.slots,m=r.title,p=r.field,_=r.itemRender,g=r.titleOverflow,y=r.vertical,v=r.showTitle,x=r.titleClassName,b=r.titleStyle,I=r.titlePrefix,h=r.titleSuffix,C=r.children,S=r.showContent,A=t.computeTooltipOpts,T=(0,_utils.isEnableConf)(_)?_ui.renderer.get(_.name):null,U=T?T.formItemTitleClassName||T.itemTitleClassName:"",N=T?T.formItemTitleStyle||T.itemTitleStyle:null,c=_xeUtils.default.eqNull(y)?c:y,y=_xeUtils.default.eqNull(r.titleAlign)?s:r.titleAlign,s=c?null:_xeUtils.default.eqNull(r.titleWidth)?u:r.titleWidth,c=_xeUtils.default.eqNull(g)?d:g,u="title"===c,d=!0===c||"tooltip"===c,g=u||d||"ellipsis"===c,P={data:o,disabled:a,readonly:n,field:p,property:p,item:r,$form:t,$grid:l},c=f?f.title:null,o=f?f.prefix:null,a=f?f.suffix||f.extra:null,n=!1!==v&&(m||c),p=C&&0<C.length,l=[],f=(o&&l.push(e("span",{key:"pt",class:"vxe-form--item-title-prefix"},t.callSlot(o,P,e))),I&&l.push(I.content||I.message?e(_tooltip.default,{key:"pm",props:Object.assign(Object.assign(Object.assign({},A),I),{content:(0,_utils.getFuncText)(I.content||I.message)}),scopedSlots:{default:function(){return renderPrefixIcon(e,I)}}}):renderPrefixIcon(e,I)),T?T.renderFormItemTitle||T.renderItemTitle:null),v=(l.push(e("span",{key:"pl",class:"vxe-form--item-title-label"},c?t.callSlot(c,P,e):f?(0,_vn.getSlotVNs)(f.call(t,e,_,P)):(0,_utils.getFuncText)(r.title))),[]),C=(h&&v.push(h.content||h.message?e(_tooltip.default,{key:"sm",props:Object.assign(Object.assign(Object.assign({},A),h),{content:(0,_utils.getFuncText)(h.content||h.message)}),scopedSlots:{default:function(){return renderSuffixIcon(e,h)}}}):renderSuffixIcon(e,h)),a&&v.push(e("span",{key:"st",class:"vxe-form--item-title-suffix"},t.callSlot(a,P,e))),d?{onMouseenter:function(e){t.triggerTitleTipEvent(e,P)},onMouseleave:t.handleTitleTipLeaveEvent}:{}),o=Object.assign({},_xeUtils.default.isFunction(N)?N(P):N,_xeUtils.default.isFunction(b)?b(P):b);return s&&"auto"!==s&&!1!==S&&(o.width=(0,_dom.toCssUnit)(s)),n?e("div",{class:[i||p?"vxe-form--group-title":"","vxe-form--item-title",y?"align--".concat(y):"",g?"is--ellipsis":"",U?_xeUtils.default.isFunction(U)?U(P):U:"",x?_xeUtils.default.isFunction(x)?x(P):x:""],style:o,attrs:{itemid:r.id,title:u?(0,_utils.getFuncText)(m):null},on:C},[e("div",{class:"vxe-form--item-title-content"},l),e("div",{class:"vxe-form--item-title-postfix"},v)]):(0,_ui.renderEmptyElement)(t)}function renderItemErrorIcon(e,t,r){var i=t.computeValidOpts,l=i.showErrorIcon,o=r.errRule,n=r.showIconMsg;return l?e("div",{key:"emi",class:["vxe-form-item--valid-error-icon-wrapper",{"is--show":n,"is--hide":!n}]},[e("span",{class:"vxe-form-item--valid-error-icon-btn",on:{click:function(e){t.handleValidIconEvent(e,{item:r})}}},[e("i",{class:i.errorIcon||(0,_ui.getIcon)().FORM_VALID_ERROR_ICON})]),e("div",{class:"vxe-form-item--valid-error-icon-msg-tip"},o?[e("div",{class:"vxe-form-item--valid-error-icon-msg vxe-form-item--valid-error-icon-theme-".concat(i.theme||"normal")},o.content||o.message)]:[])]):(0,_ui.renderEmptyElement)(t)}function renderItemContent(e,t,r){var i=t.reactData,l=t.$xeGrid,o=t.data,n=t.readonly,a=t.disabled,s=t.internalData.itemFormatCache,i=i.collapseAll,u=r.slots,d=r.field,c=r.itemRender,f=r.collapseNode,m=r.errRule,p=r.formatter,_=u?u.default:null,u=u?u.valid:null,g=t.computeCollapseOpts,y=t.computeValidOpts,v=y.showErrorMessage,x=y.showMessage,b=(0,_utils.isEnableConf)(c)?_ui.renderer.get(c.name):null,I=_xeUtils.default.get(o,d),o={data:o,disabled:a,readonly:n,field:d,property:d,item:r,itemValue:I,$form:t,$grid:l},a=[],n=b?b.renderFormItemContent||b.renderItemContent:null;if(_)a=t.callSlot(_,o,e);else if(n)a=(0,_vn.getSlotVNs)(n.call(t,e,c,o));else if(d){var h,r=I;if(p){if(d){var l=s[d];if(l)if(h=l.formatData){if(h.value===I)return h.label}else h=l.formatData={};else s[d]={field:d}}r=_xeUtils.default.isString(p)?(_=(b=_ui.formats.get(p))?b.formItemFormatMethod:null)?_(o):"":_xeUtils.default.isArray(p)?(c=(n=_ui.formats.get(p[0]))?n.formItemFormatMethod:null)?c.apply(void 0,[o].concat(_toConsumableArray(p.slice(1)))):"":p(o),h&&(h.value=I,h.label=r)}a=[(0,_utils.eqEmptyValue)(r)?"":"".concat(r)]}return f&&a.push(e("div",{class:"vxe-form--item-trigger-node",on:{click:t.toggleCollapseEvent}},[e("span",{class:"vxe-form--item-trigger-text"},i?g.unfoldButtonText||(0,_ui.getI18n)("vxe.form.unfolding"):g.foldButtonText||(0,_ui.getI18n)("vxe.form.folding")),e("i",{class:["vxe-form--item-trigger-icon",i?g.foldIcon||(0,_ui.getIcon)().FORM_FOLDING:g.unfoldIcon||(0,_ui.getIcon)().FORM_UNFOLDING]})])),m&&(_xeUtils.default.isBoolean(v)?v:x)&&(l=Object.assign(Object.assign({},o),{rule:m}),a.push(e("div",{class:"vxe-form-item--valid-error-tip",style:m.maxWidth?{width:(0,_dom.toCssUnit)(m.maxWidth)}:{}},[e("div",{class:"vxe-form-item--valid-error-wrapper vxe-form-item--valid-error-theme-".concat(y.theme||"normal")},[u?t.callSlot(u,l,e):[e("span",{class:"vxe-form--item--valid-error-msg"},m.content||m.message)]])]))),e("div",{key:"ct",class:"vxe-form--item-inner"},a)}
|
package/lib/index.umd.js
CHANGED
|
@@ -13214,7 +13214,7 @@ function checkDynamic() {
|
|
|
13214
13214
|
}
|
|
13215
13215
|
;// ./packages/ui/src/log.ts
|
|
13216
13216
|
|
|
13217
|
-
var log_version = "ui v".concat("3.14.
|
|
13217
|
+
var log_version = "ui v".concat("3.14.22");
|
|
13218
13218
|
var warnLog = log.create('warn', log_version);
|
|
13219
13219
|
var errLog = log.create('error', log_version);
|
|
13220
13220
|
;// ./packages/ui/index.ts
|
|
@@ -13222,7 +13222,7 @@ var errLog = log.create('error', log_version);
|
|
|
13222
13222
|
|
|
13223
13223
|
|
|
13224
13224
|
|
|
13225
|
-
var ui_version = "3.14.
|
|
13225
|
+
var ui_version = "3.14.22";
|
|
13226
13226
|
VxeUI.uiVersion = ui_version;
|
|
13227
13227
|
VxeUI.dynamicApp = dynamicApp;
|
|
13228
13228
|
function config(options) {
|
|
@@ -36310,7 +36310,7 @@ function getItemClass($xeForm, item, isGroup) {
|
|
|
36310
36310
|
var isRequired = false;
|
|
36311
36311
|
var isValid = false;
|
|
36312
36312
|
if (!readonly && rules) {
|
|
36313
|
-
var itemRules = rules[field];
|
|
36313
|
+
var itemRules = item.rules ? item.rules : rules[field];
|
|
36314
36314
|
if (itemRules && itemRules.length) {
|
|
36315
36315
|
isValid = true;
|
|
36316
36316
|
isRequired = itemRules.some(function (rule) {
|
|
@@ -37978,7 +37978,8 @@ function form_createInternalData() {
|
|
|
37978
37978
|
var errorRules = [];
|
|
37979
37979
|
var syncVailds = [];
|
|
37980
37980
|
if (property && formRules) {
|
|
37981
|
-
var
|
|
37981
|
+
var item = $xeForm.getItemByField(property);
|
|
37982
|
+
var rules = item && item.rules ? item.rules : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(formRules, property);
|
|
37982
37983
|
if (rules) {
|
|
37983
37984
|
var itemValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isUndefined(val) ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(data, property) : val;
|
|
37984
37985
|
rules.forEach(function (rule) {
|
|
@@ -54222,7 +54223,7 @@ var scrollbarOffsetSize = 20;
|
|
|
54222
54223
|
stys.width = toCssUnit(width);
|
|
54223
54224
|
}
|
|
54224
54225
|
if (height) {
|
|
54225
|
-
stys.height = toCssUnit(height);
|
|
54226
|
+
stys.height = height === 'auto' ? '100%' : toCssUnit(height);
|
|
54226
54227
|
}
|
|
54227
54228
|
return stys;
|
|
54228
54229
|
},
|
|
@@ -56888,6 +56889,17 @@ function handleNodeDragSwapEvent($xeTree, evnt, dragNode, prevDragNode, prevDrag
|
|
|
56888
56889
|
clearCrossTreeDragStatus($xeTree);
|
|
56889
56890
|
return Promise.resolve(errRest);
|
|
56890
56891
|
}
|
|
56892
|
+
function handleVisibleOrCheckMode(mode, isExistChild, nLevel) {
|
|
56893
|
+
if (mode) {
|
|
56894
|
+
if (mode === 'first') {
|
|
56895
|
+
return !nLevel;
|
|
56896
|
+
}
|
|
56897
|
+
if (mode === 'last') {
|
|
56898
|
+
return !isExistChild;
|
|
56899
|
+
}
|
|
56900
|
+
}
|
|
56901
|
+
return true;
|
|
56902
|
+
}
|
|
56891
56903
|
function tree_createInternalData() {
|
|
56892
56904
|
return {
|
|
56893
56905
|
// initialized: false,
|
|
@@ -59112,26 +59124,25 @@ function tree_createReactData() {
|
|
|
59112
59124
|
}
|
|
59113
59125
|
return renderEmptyElement($xeTree);
|
|
59114
59126
|
},
|
|
59115
|
-
renderRadio: function renderRadio(h, node, nodeid, isChecked) {
|
|
59127
|
+
renderRadio: function renderRadio(h, node, nodeid, isExistChild, nLevel, isChecked) {
|
|
59116
59128
|
var $xeTree = this;
|
|
59117
59129
|
var props = $xeTree;
|
|
59118
59130
|
var showRadio = props.showRadio;
|
|
59119
59131
|
var radioOpts = $xeTree.computeRadioOpts;
|
|
59120
59132
|
var showIcon = radioOpts.showIcon,
|
|
59133
|
+
checkMode = radioOpts.checkMode,
|
|
59121
59134
|
checkMethod = radioOpts.checkMethod,
|
|
59135
|
+
visibleMode = radioOpts.visibleMode,
|
|
59122
59136
|
visibleMethod = radioOpts.visibleMethod;
|
|
59123
|
-
var isVisible =
|
|
59137
|
+
var isVisible = visibleMethod ? visibleMethod({
|
|
59124
59138
|
$tree: $xeTree,
|
|
59125
59139
|
node: node
|
|
59126
|
-
});
|
|
59127
|
-
var isDisabled = !!checkMethod;
|
|
59140
|
+
}) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
|
|
59128
59141
|
if (showRadio && showIcon && isVisible) {
|
|
59129
|
-
|
|
59130
|
-
|
|
59131
|
-
|
|
59132
|
-
|
|
59133
|
-
});
|
|
59134
|
-
}
|
|
59142
|
+
var isDisabled = checkMethod ? !checkMethod({
|
|
59143
|
+
$tree: $xeTree,
|
|
59144
|
+
node: node
|
|
59145
|
+
}) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
|
|
59135
59146
|
return h('div', {
|
|
59136
59147
|
class: ['vxe-tree--radio-option', {
|
|
59137
59148
|
'is--checked': isChecked,
|
|
@@ -59150,26 +59161,25 @@ function tree_createReactData() {
|
|
|
59150
59161
|
}
|
|
59151
59162
|
return renderEmptyElement($xeTree);
|
|
59152
59163
|
},
|
|
59153
|
-
renderCheckbox: function renderCheckbox(h, node, nodeid, isChecked, isIndeterminate) {
|
|
59164
|
+
renderCheckbox: function renderCheckbox(h, node, nodeid, isExistChild, nLevel, isChecked, isIndeterminate) {
|
|
59154
59165
|
var $xeTree = this;
|
|
59155
59166
|
var props = $xeTree;
|
|
59156
59167
|
var showCheckbox = props.showCheckbox;
|
|
59157
59168
|
var checkboxOpts = $xeTree.computeCheckboxOpts;
|
|
59158
59169
|
var showIcon = checkboxOpts.showIcon,
|
|
59170
|
+
checkMode = checkboxOpts.checkMode,
|
|
59159
59171
|
checkMethod = checkboxOpts.checkMethod,
|
|
59172
|
+
visibleMode = checkboxOpts.visibleMode,
|
|
59160
59173
|
visibleMethod = checkboxOpts.visibleMethod;
|
|
59161
|
-
var isVisible =
|
|
59174
|
+
var isVisible = visibleMethod ? visibleMethod({
|
|
59162
59175
|
$tree: $xeTree,
|
|
59163
59176
|
node: node
|
|
59164
|
-
});
|
|
59165
|
-
var isDisabled = !!checkMethod;
|
|
59177
|
+
}) : handleVisibleOrCheckMode(visibleMode, isExistChild, nLevel);
|
|
59166
59178
|
if (showCheckbox && showIcon && isVisible) {
|
|
59167
|
-
|
|
59168
|
-
|
|
59169
|
-
|
|
59170
|
-
|
|
59171
|
-
});
|
|
59172
|
-
}
|
|
59179
|
+
var isDisabled = checkMethod ? !checkMethod({
|
|
59180
|
+
$tree: $xeTree,
|
|
59181
|
+
node: node
|
|
59182
|
+
}) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
|
|
59173
59183
|
return h('div', {
|
|
59174
59184
|
class: ['vxe-tree--checkbox-option', {
|
|
59175
59185
|
'is--checked': isChecked,
|
|
@@ -59216,12 +59226,12 @@ function tree_createReactData() {
|
|
|
59216
59226
|
var titleField = $xeTree.computeTitleField;
|
|
59217
59227
|
var hasChildField = $xeTree.computeHasChildField;
|
|
59218
59228
|
var childList = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, childrenField);
|
|
59219
|
-
var
|
|
59229
|
+
var isExistChild = childList && childList.length > 0;
|
|
59220
59230
|
var iconSlot = slots.icon;
|
|
59221
59231
|
var titleSlot = slots.title;
|
|
59222
59232
|
var extraSlot = slots.extra;
|
|
59223
59233
|
var isExpand = updateExpandedFlag && treeExpandedMaps[nodeid];
|
|
59224
|
-
var nodeItem = nodeMaps[nodeid];
|
|
59234
|
+
var nodeItem = nodeMaps[nodeid] || {};
|
|
59225
59235
|
var nodeValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(node, titleField);
|
|
59226
59236
|
var nLevel = nodeItem.level;
|
|
59227
59237
|
var isRadioChecked = false;
|
|
@@ -59291,7 +59301,7 @@ function tree_createReactData() {
|
|
|
59291
59301
|
}
|
|
59292
59302
|
})]) : renderEmptyElement($xeTree), h('div', {
|
|
59293
59303
|
class: 'vxe-tree--node-item-switcher'
|
|
59294
|
-
}, showIcon && (lazy ? isLazyLoaded ?
|
|
59304
|
+
}, showIcon && (lazy ? isLazyLoaded ? isExistChild : hasLazyChilds : isExistChild) ? [h('div', {
|
|
59295
59305
|
class: 'vxe-tree--node-item-icon',
|
|
59296
59306
|
on: {
|
|
59297
59307
|
click: function click(evnt) {
|
|
@@ -59300,7 +59310,7 @@ function tree_createReactData() {
|
|
|
59300
59310
|
}
|
|
59301
59311
|
}, iconSlot ? vn_getSlotVNs(iconSlot(nParams)) : [h('i', {
|
|
59302
59312
|
class: isLazyLoading ? iconLoaded || tree_getIcon().TREE_NODE_LOADED : isExpand ? iconOpen || tree_getIcon().TREE_NODE_OPEN : iconClose || tree_getIcon().TREE_NODE_CLOSE
|
|
59303
|
-
})])] : []), $xeTree.renderDragIcon(h, node, nodeid), $xeTree.renderRadio(h, node, nodeid, isRadioChecked), $xeTree.renderCheckbox(h, node, nodeid, isCheckboxChecked, isIndeterminate), h('div', {
|
|
59313
|
+
})])] : []), $xeTree.renderDragIcon(h, node, nodeid), $xeTree.renderRadio(h, node, nodeid, isExistChild, nLevel, isRadioChecked), $xeTree.renderCheckbox(h, node, nodeid, isExistChild, nLevel, isCheckboxChecked, isIndeterminate), h('div', {
|
|
59304
59314
|
class: 'vxe-tree--node-item-inner'
|
|
59305
59315
|
}, [h('div', {
|
|
59306
59316
|
class: 'vxe-tree--node-item-title'
|