UNPKG

vxe-pc-ui

Version:
1 lines 8.54 kB
Object.defineProperty(exports,"__esModule",{value:!0}),exports.getItemClass=getItemClass,exports.getItemContentClass=getItemContentClass,exports.renderItemContent=renderItemContent,exports.renderItemErrorIcon=renderItemErrorIcon,exports.renderTitle=renderTitle;var _vue=require("vue"),_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 renderPrefixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-tip-prefix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_PREFIX,status:e.iconStatus})])}function renderSuffixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-tip-suffix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_SUFFIX,status:e.iconStatus})])}function getItemClass(e,t,l){var i=e.props,r=e.reactData,s=e.xeGrid,{computeSize:n,computeValidOpts:o}=e.getComputeMaps(),{data:i,rules:a,readonly:u,disabled:d,span:m,titleBackground:c,titleBold:f,titleColon:v,titleAsterisk:_,vertical:p,padding:g}=i,r=r.collapseAll,{folding:x,field:h,itemRender:I,showError:C,className:b,vertical:U,padding:y,children:q,showContent:N}=t,n=n.value,{showErrorMessage:o,showMessage:F,showErrorBackground:O,showErrorIcon:E}=o.value,I=(0,_utils.isEnableConf)(I)?_ui.renderer.get(I.name):null,I=I?I.formItemClassName||I.itemClassName:"",m=t.span||m,g=_xeUtils.default.eqNull(y)?g:y,y=_xeUtils.default.eqNull(U)?p:U,p=_xeUtils.default.eqNull(t.titleBackground)?c:t.titleBackground,U=_xeUtils.default.eqNull(t.titleBold)?f:t.titleBold,c=_xeUtils.default.eqNull(t.titleColon)?v:t.titleColon,f=_xeUtils.default.eqNull(t.titleAsterisk)?_:t.titleAsterisk,v={data:i,disabled:d,readonly:u,field:h,property:h,item:t,$form:e,$grid:s},_=q&&0<q.length;let w=!1,T=!1;!u&&a&&(i=a[h])&&i.length&&(T=!0,w=i.some(e=>e.required));d=_xeUtils.default.isBoolean(o)?o:F;return[l||_?"vxe-form--group":"","vxe-form--item",t.id,m?`vxe-form--item-col_${m} is--span`:"",`${d?"show":"hide"}--err-msg`,b?_xeUtils.default.isFunction(b)?b(v):b:"",I?_xeUtils.default.isFunction(I)?I(v):I:"",{["size--"+n]:n,"is--colon":c,"is--tbg":p,"is--bold":U,"is--padding":g,"is--vertical":y,"is--asterisk":f,"hide--content":!1===N,"is--valid":T,"is--required":w,"is--hidden":x&&r,"is--active":(0,_util.isActiveItem)(e,t),"err--icon":E,"err--bg":O,"is--error":C}]}function getItemContentClass(e,t,l){var i=e.props,r=e.xeGrid,{data:i,readonly:s,disabled:n,align:o,verticalAlign:a}=i,{field:u,itemRender:d,contentClassName:m,children:c}=t,c=c&&0<c.length,d=(0,_utils.isEnableConf)(d)?_ui.renderer.get(d.name):null,d=d?d.formItemContentClassName||d.itemContentClassName:"",o=!c&&_xeUtils.default.eqNull(t.align)?o:t.align,a=!c&&_xeUtils.default.eqNull(t.verticalAlign)?a:t.verticalAlign,i={data:i,disabled:n,readonly:s,field:u,property:u,item:t,$form:e,$grid:r};return[l||c?"vxe-form--group-content vxe-form--item-row":"","vxe-form--item-content",o?"align--"+o:"",a?"vertical-align--"+a:"",d?_xeUtils.default.isFunction(d)?d(i):d:"",m?_xeUtils.default.isFunction(m)?m(i):m:""]}function renderTitle(t,e,l){var i=t.props,r=t.xeGrid,{data:i,readonly:s,disabled:n,titleAlign:o,titleWidth:a,titleOverflow:u,vertical:d}=i;let{slots:m,title:c,field:f,itemRender:v,titleOverflow:_,vertical:p,showTitle:g,titleClassName:x,titleStyle:h,titlePrefix:I,titleSuffix:C,children:b,showContent:U}=e;var y=t.getComputeMaps().computeTooltipOpts,y=y.value,q=(0,_utils.isEnableConf)(v)?_ui.renderer.get(v.name):null,N=q?q.formItemTitleClassName||q.itemTitleClassName:"",F=q?q.formItemTitleStyle||q.itemTitleStyle:null,d=_xeUtils.default.eqNull(p)?d:p,o=_xeUtils.default.eqNull(e.titleAlign)?o:e.titleAlign,d=d?null:_xeUtils.default.eqNull(e.titleWidth)?a:e.titleWidth,a=_xeUtils.default.eqNull(_)?u:_,u="title"===a,O=!0===a||"tooltip"===a,a=u||O||"ellipsis"===a;let E={data:i,disabled:n,readonly:s,field:f,property:f,item:e,$form:t,$grid:r};var i=m?m.title:null,n=m?m.prefix:null,s=m?m.suffix||m.extra:null,r=!1!==g&&(c||i),w=b&&0<b.length,T=[],n=(n&&T.push((0,_vue.h)("span",{key:"pt",class:"vxe-form--item-title-prefix"},t.callSlot(n,E))),I&&T.push(I.content||I.message?(0,_vue.h)(_tooltip.default,Object.assign(Object.assign(Object.assign({key:"pm"},y),I),{content:(0,_utils.getFuncText)(I.content||I.message)}),{default:()=>renderPrefixIcon(I)}):renderPrefixIcon(I)),q?q.renderFormItemTitle||q.renderItemTitle:null),q=(T.push((0,_vue.h)("span",{key:"pl",class:"vxe-form--item-title-label"},i?t.callSlot(i,E):n?(0,_vn.getSlotVNs)(n(v,E)):(0,_utils.getFuncText)(e.title))),[]),i=(C&&q.push(C.content||C.message?(0,_vue.h)(_tooltip.default,Object.assign(Object.assign(Object.assign({key:"sm"},y),C),{content:(0,_utils.getFuncText)(C.content||C.message)}),{default:()=>renderSuffixIcon(C)}):renderSuffixIcon(C)),s&&q.push((0,_vue.h)("span",{key:"st",class:"vxe-form--item-title-suffix"},t.callSlot(s,E))),O?{onMouseenter(e){t.triggerTitleTipEvent(e,E)},onMouseleave:t.handleTitleTipLeaveEvent}:{}),n=Object.assign({},_xeUtils.default.isFunction(F)?F(E):F,_xeUtils.default.isFunction(h)?h(E):h);return d&&"auto"!==d&&!1!==U&&(n.width=(0,_dom.toCssUnit)(d)),r?(0,_vue.h)("div",Object.assign({class:[l||w?"vxe-form--group-title":"","vxe-form--item-title",o?"align--"+o:"",a?"is--ellipsis":"",N?_xeUtils.default.isFunction(N)?N(E):N:"",x?_xeUtils.default.isFunction(x)?x(E):x:""],style:n,itemid:e.id,title:u?(0,_utils.getFuncText)(c):null},i),[(0,_vue.h)("div",{class:"vxe-form--item-title-content"},T),(0,_vue.h)("div",{class:"vxe-form--item-title-postfix"},q)]):(0,_ui.renderEmptyElement)(t)}function renderItemErrorIcon(t,l){var e=t.getComputeMaps().computeValidOpts,e=e.value,{showErrorIcon:i,errorIcon:r}=e,{errRule:s,showIconMsg:n}=l;return i?(0,_vue.h)("div",{key:"emi",class:["vxe-form-item--valid-error-icon-wrapper",{"is--show":n,"is--hide":!n}]},[(0,_vue.h)("span",{class:"vxe-form-item--valid-error-icon-btn",onClick(e){t.handleValidIconEvent(e,{item:l})}},[(0,_vue.h)("i",{class:r||(0,_ui.getIcon)().FORM_VALID_ERROR_ICON})]),(0,_vue.h)("div",{class:"vxe-form-item--valid-error-icon-msg-tip"},s?[(0,_vue.h)("div",{class:"vxe-form-item--valid-error-icon-msg vxe-form-item--valid-error-icon-theme-"+(e.theme||"normal")},s.content||s.message)]:[])]):(0,_ui.renderEmptyElement)(t)}function renderItemContent(e,l){var i=e.props,t=e.reactData,r=e.internalData,s=e.xeGrid,{computeCollapseOpts:n,computeValidOpts:o}=e.getComputeMaps(),r=r.itemFormatCache,{data:i,readonly:a,disabled:u}=i,t=t.collapseAll,{slots:d,field:m,itemRender:c,collapseNode:f,errRule:v,formatter:_}=l,p=d?d.default:null,d=d?d.valid:null,n=n.value,o=o.value,{showErrorMessage:g,showMessage:x}=o,h=(0,_utils.isEnableConf)(c)?_ui.renderer.get(c.name):null,I=_xeUtils.default.get(i,m),i={data:i,disabled:u,readonly:a,field:m,property:m,item:l,itemValue:I,$form:e,$grid:s};let C=[];var u=h?h.renderFormItemContent||h.renderItemContent:null;if(p)C=e.callSlot(p,i);else if(u)C=(0,_vn.getSlotVNs)(u(c,i));else if(m){let t=I;if(_){let e;if(m){a=r[m];if(a)if(e=a.formatData){if(e.value===I)return e.label}else e=a.formatData={};else r[m]={field:m}}t=_xeUtils.default.isString(_)?(s=(l=_ui.formats.get(_))?l.formItemFormatMethod:null)?s(i):"":_xeUtils.default.isArray(_)?(p=(h=_ui.formats.get(_[0]))?h.formItemFormatMethod:null)?p(i,..._.slice(1)):"":_(i),e&&(e.value=I,e.label=t)}C=[(0,_utils.eqEmptyValue)(t)?"":""+t]}return f&&C.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:e.toggleCollapseEvent},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},t?n.unfoldButtonText||(0,_ui.getI18n)("vxe.form.unfolding"):n.foldButtonText||(0,_ui.getI18n)("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",t?n.foldIcon||(0,_ui.getIcon)().FORM_FOLDING:n.unfoldIcon||(0,_ui.getIcon)().FORM_UNFOLDING]})])),v&&(_xeUtils.default.isBoolean(g)?g:x)&&(u=Object.assign(Object.assign({},i),{rule:v}),C.push((0,_vue.h)("div",{class:"vxe-form-item--valid-error-tip",style:v.maxWidth?{width:(0,_dom.toCssUnit)(v.maxWidth)}:null},[(0,_vue.h)("div",{class:"vxe-form-item--valid-error-wrapper vxe-form-item--valid-error-theme-"+(o.theme||"normal")},[d?e.callSlot(d,u):[(0,_vue.h)("span",{class:"vxe-form--item--valid-error-msg"},v.content||v.message)]])]))),(0,_vue.h)("div",{key:"ct",class:"vxe-form--item-inner"},C)}