ant-design-x-vue-next
Version:
Ant Design X for Vue — community continuation aligned with @ant-design/x
2 lines (1 loc) • 3.85 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),o=require("../chunks/module-chunk.js"),b=require("ant-design-vue"),w=require("../_util/pick-attrs.js"),O=require("../_util/hooks/use-x-component-config.js");require("../x-provider/index.js");require("../transition-collapse/index.js");const B=require("./CarouselCard.js"),W=require("./style/index.js"),j=require("../x-provider/hooks/use-x-provider-context.js"),I=require("../transition-collapse/TransitionCollapse.js"),K=t.defineComponent({name:"AXSources",__name:"Sources",props:{prefixCls:null,rootClassName:null,className:null,class:null,style:null,classNames:{default:()=>({})},styles:{default:()=>({})},inline:{type:Boolean,default:!1},items:null,title:null,expandIconPosition:{default:"start"},onClick:{type:Function},popoverOverlayWidth:{default:300},activeKey:null,expanded:{type:Boolean,default:void 0},onExpand:{type:Function},defaultExpanded:{type:Boolean,default:!0}},emits:["expand","click"],setup(x,{expose:C,emit:_}){const e=x,c=t.useSlots(),p=_,v=t.ref(null),k=t.computed(()=>{const s=w.default(e,{attr:!0,aria:!0,data:!0}),{title:a,...u}=s;return u}),{getPrefixCls:V,direction:h}=j.default(),l=t.computed(()=>V("sources",e.prefixCls)),r=O.default("sources"),[$,f,y]=W.default(l),i=t.ref(e.expanded??e.defaultExpanded??!0);t.watch(()=>e.expanded,s=>{s!==void 0&&(i.value=s)});const d=t.computed(()=>e.expanded!==void 0?!!e.expanded:!!i.value),g=s=>{var a;e.expanded===void 0&&(i.value=s),(a=e.onExpand)==null||a.call(e,s),p("expand",s)},q=(s,a)=>a?a():typeof s=="function"?s():s,m=t.computed(()=>q(e.title,c.title)),N=s=>{var a;(a=e.onClick)==null||a.call(e,s),p("click",s)},P=t.computed(()=>o.classnames(l.value,r.value.className,e.className,e.class,e.rootClassName,e.classNames.root,f.value,y,{[`${l.value}-inline`]:e.inline,[`${l.value}-rtl`]:h.value==="rtl"})),E=t.computed(()=>typeof e.popoverOverlayWidth=="number"?`${e.popoverOverlayWidth}px`:e.popoverOverlayWidth);return C({nativeElement:v}),()=>{var a,u;const s=e.items?t.createVNode("ul",{class:`${l.value}-list`},[e.items.map((n,S)=>t.createVNode("li",{key:n.key??S,class:`${l.value}-list-item`,onClick:()=>N(n)},[t.createVNode("a",{class:`${l.value}-link`,href:n.url,target:"_blank",rel:"noopener noreferrer"},[n.icon&&t.createVNode("span",{class:`${l.value}-link-icon`},[n.icon]),t.createVNode("span",{class:`${l.value}-link-title`},[n.title])])]))]):(a=c.default)==null?void 0:a.call(c);return $(t.createVNode("div",t.mergeProps(k.value,{ref:v,class:P.value,style:{...typeof r.value.style=="object"?r.value.style:{},...typeof((u=r.value.styles)==null?void 0:u.root)=="object"?r.value.styles.root:{},...typeof e.style=="object"?e.style:{},...e.styles.root}}),[e.inline?t.createVNode(b.Popover,{placement:"top",overlayStyle:{width:E.value}},{default:()=>[t.createVNode("div",{class:o.classnames(l.value,`${l.value}-title-wrapper`,e.classNames.title),style:e.styles.title},[t.createVNode("span",{class:`${l.value}-title`},[m.value])])],content:()=>t.createVNode(B.default,{className:o.classnames(l.value,f.value,y,e.classNames.content),style:e.styles.content,activeKey:e.activeKey,prefixCls:l.value,items:e.items,onClick:N},null)}):t.createVNode(t.Fragment,null,[t.createVNode("div",{class:o.classnames(`${l.value}-title-wrapper`,`${l.value}-icon-position-${e.expandIconPosition}`,e.classNames.title),style:e.styles.title,onClick:()=>g(!d.value)},[t.createVNode(o.RightOutlined,{class:`${l.value}-title-down-icon`,rotate:d.value?90:0},null),t.createVNode("span",{class:`${l.value}-title`},[m.value])]),t.createVNode(I.default,{prefixCls:l.value},{default:()=>[d.value?t.createVNode("div",{key:"sources-content",class:o.classnames(`${l.value}-content`,e.classNames.content),style:e.styles.content},[s]):null]})])]))}}});exports.default=K;