UNPKG

@aplus-frontend/ui

Version:

2 lines (1 loc) 2.59 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),q=require("@aplus-frontend/antdv"),u=require("lodash-unified");require("../../config-provider/index.js");require("./help-message/index.vue.js");const o=require("./helper.js"),P=require("./style/index.js"),p=require("../../config-provider/hooks/use-global-config.js"),x=require("../../config-provider/hooks/use-namespace.js"),V=require("./help-message/index.vue2.js"),T=t.defineComponent({name:"ApDescriptions",__name:"ap-descriptions",props:{descriptionsProps:{},schemas:{},dataSource:{},style:{type:[Boolean,null,String,Object,Array]},className:{}},setup(c){const n=c,d=p.useGlobalConfig("apDescriptions"),f=p.useGlobalConfig("downloadCenterTriggerConfig"),{b:y,be:b}=x.useNamespace("ap-descriptions"),g=P.default("ap-descriptions"),v=t.useSlots(),S=(e={})=>{let l="";return n.descriptionsProps?.layout==="vertical"&&(l="start"),{justifyContent:l,...e}},s=e=>{const l=u.get(n.dataSource,e.field);if(e.customRender)return e.customRender(n.dataSource);e.valueType==="attachment"&&(e.extraProps=o.mixinsAttachmentExtraProps(e.extraProps,{fromConfig:d.value?.downloadFile,fromGlobal:f.value?.trigger}));const r=e.format?e.format(l,n.dataSource||{}):l;return o.transformValue({value:r,record:n.dataSource},e)},C=e=>e.valueType==="text"&&!!e.extraProps?.ellipsis,m=(e,l)=>{if(e.visible!=null){if(typeof e.visible=="boolean")return e.visible;if(typeof e.visible=="function")return e.visible({record:l||{},schema:e})}return!0},N=(e,l,r)=>e.valueType==="empty"?null:o.isEmptyWithType(u.get(r,e.field),e)?t.createVNode("span",null,[t.createTextVNode("--")]):e.contentSlotName?v?.[e.contentSlotName]?.({index:l,record:r,item:s(e)}):t.createVNode(t.Fragment,null,[e.prefix,s(e),e.suffix]),_=(e=[],l)=>e.filter(r=>m(r,l)).map((r,a)=>({label:r.label&&t.createVNode(V.default,{helpMessage:r.helpMessage,label:r.label},null),span:r.span,style:r.style,contentStyle:r.contentStyle,labelStyle:r.labelStyle,key:r.field?.toString()||"empty"+a,class:C(r)?b("item","ellipsis"):"",children:N(r,a,l)})),i=t.shallowRef([]);return t.watch([()=>n.schemas,()=>n.dataSource],()=>{i.value=_(n.schemas,n.dataSource)},{immediate:!0,deep:!0}),(e,l)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass([e.className,t.unref(y)(),t.unref(g)]),style:t.normalizeStyle(e.style)},[t.createVNode(t.unref(q.Descriptions),t.mergeProps(e.descriptionsProps,{"label-style":S({...e.descriptionsProps?.labelStyle||{}}),items:i.value}),null,16,["label-style","items"])],6))}});exports.default=T;