vuux
Version:
Vue3 Nuxt3 Nuxt4 组件库
52 lines (51 loc) • 1.7 kB
JavaScript
import { defineComponent as B, createElementBlock as u, openBlock as s, unref as e, normalizeClass as d, createElementVNode as c, createBlock as p, createCommentVNode as i, createVNode as I, toDisplayString as M, Transition as N, withCtx as S, renderSlot as w } from "vue";
import { useContextItem as E } from "./hook/useContextItem.mjs";
import { Icon as f } from "@vuux/icons";
const V = { class: "item-name" }, h = /* @__PURE__ */ B({
name: "ContextItem",
__name: "item",
props: {
icon: {},
title: {},
disabled: { type: Boolean }
},
setup(k) {
const n = k, { isHover: C, hasSubmenu: l, isShadow: v, classNames: x, handleClick: a, onMouseEnter: r, onMouseLeave: m } = E(n);
return (y, t) => (s(), u("div", {
class: d(["context-item", e(x)]),
onMouseenter: t[0] || (t[0] = //@ts-ignore
(...o) => e(r) && e(r)(...o)),
onMouseleave: t[1] || (t[1] = //@ts-ignore
(...o) => e(m) && e(m)(...o)),
onClick: t[2] || (t[2] = //@ts-ignore
(...o) => e(a) && e(a)(...o))
}, [
c("div", V, [
n.icon ? (s(), p(e(f), {
key: 0,
name: n.icon,
class: "item-icon"
}, null, 8, ["name"])) : i("", !0),
c("span", null, M(n.title), 1)
]),
e(l) ? (s(), p(e(f), {
key: 0,
name: "Icon6657361"
})) : i("", !0),
I(N, { name: "slide-up" }, {
default: S(() => [
e(l) && e(C) ? (s(), u("div", {
key: 0,
class: d(["item-slot", { "is-shadow": e(v) }])
}, [
w(y.$slots, "default")
], 2)) : i("", !0)
]),
_: 3
})
], 34));
}
});
export {
h as default
};