UNPKG

@aplus-frontend/ui

Version:

2 lines (1 loc) 2.81 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),l=require("@aplus-frontend/antdv"),g=require("@aplus-frontend/icon"),c=require("lodash-unified");require("../../config-provider/index.js");require("../item/index.vue.js");require("../item-modal/index.vue2.js");require("../item-popconfirm/index.vue2.js");const k=require("../style/dropdown-item.js"),v=require("../../config-provider/hooks/use-namespace.js"),i=require("../item/index.vue2.js"),B=require("../item-modal/index.vue.js"),y=require("../item-popconfirm/index.vue.js"),C=e.defineComponent({name:"ApActionItemDropDown",__name:"index",props:{trigger:{default:()=>["hover"]},placement:{default:"bottomLeft"},actions:{default:()=>[]},showIcon:{type:Boolean,default:!0},text:{},color:{default:"primary"},disabled:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},onClick:{},loading:{type:Boolean,default:!1},icon:{},iconFirst:{type:Boolean},tooltip:{}},setup(p){const a=p,n=e.ref(!1),{e:u,b:d}=v.useNamespace("action-item-dropdown"),s=k.default("action-item-dropdown"),f=(t,o)=>{(o.source==="trigger"||t)&&(n.value=t)},m=e.computed(()=>a.actions.filter(t=>t.visible||c.isUndefined(t.visible)).map(t=>({...t,onClick:o=>{t.onClick?.(o),!t.onAction&&(n.value=!1)},onAction:t.onAction?async o=>{try{await t.onAction?.(o)}finally{n.value=!1}}:void 0})));return(t,o)=>(e.openBlock(),e.createBlock(e.unref(l.Dropdown),{open:n.value,trigger:t.trigger,placement:t.placement,class:e.normalizeClass(e.unref(s)),onOpenChange:f},{overlay:e.withCtx(()=>[e.createVNode(e.unref(l.Menu),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,_)=>(e.openBlock(),e.createBlock(e.unref(l.MenuItem),{key:_,class:e.normalizeClass([e.unref(s),e.unref(u)("item")])},{default:e.withCtx(()=>[r.modalProps?(e.openBlock(),e.createBlock(B.default,e.mergeProps({key:0,ref_for:!0},r),null,16)):r.popconfirmProps?(e.openBlock(),e.createBlock(y.default,e.mergeProps({key:1,ref_for:!0},r),null,16)):(e.openBlock(),e.createBlock(i.default,e.mergeProps({key:2,ref_for:!0},r),null,16))]),_:2},1032,["class"]))),128))]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass(e.unref(d)())},[e.createVNode(i.default,e.normalizeProps(e.guardReactiveProps(e.unref(c.omit)(a,["actions","trigger","placement","text"]))),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",{},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(()=>t.text)))]),e.createElementVNode("span",{class:e.normalizeClass(e.unref(u)("icon"))},[t.showIcon?(e.openBlock(),e.createBlock(e.unref(g.IconApAdLineDown),{key:0})):e.createCommentVNode("",!0)],2)]),_:3},16)],2)]),_:3},8,["open","trigger","placement","class"]))}});exports.default=C;