UNPKG

@artmate/chat

Version:

**开箱即用的AI组件库(基于 Vue3 + ElementPlus)**

2 lines (1 loc) 1.24 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),o=require("element-plus"),u=require("../hooks/useNamespace.js"),d=e.defineComponent({__name:"ActionMenu",props:{item:{}},emits:["click"],setup(l,{emit:i}){const s=l,c=i,r=u.useNamespace("actions");function a(t){if(t.onItemClick){t.onItemClick(t);return}c("click",{key:t.key,keyPath:[s.item.key,t.key],item:t})}return(t,m)=>(e.openBlock(),e.createBlock(e.unref(o.ElDropdown),e.normalizeProps(e.guardReactiveProps(t.$attrs)),{dropdown:e.withCtx(()=>[e.createVNode(e.unref(o.ElDropdownMenu),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.children,n=>(e.openBlock(),e.createBlock(e.unref(o.ElDropdownItem),e.mergeProps({key:n.key,ref_for:!0},n,{onClick:p=>a(n)}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.label),1)]),_:2},1040,["onClick"]))),128))]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(r).b("list-item"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(r).b("list-item-icon"))},[e.renderSlot(t.$slots,"icon",{info:t.item})],2)],2)]),_:3},16))}});exports.default=d;