UNPKG

comic-plus

Version:

<p align="center"> <img width="200px" src="./logo.png"/> </p>

42 lines (41 loc) 1.47 kB
import { defineComponent, inject, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, createBlock, resolveDynamicComponent, createCommentVNode, renderSlot, warn } from "vue"; import { dropdownItemProps } from "./menu-item.props.mjs"; import { DROPDOWN_PROVIDE } from "./type.mjs"; import "../../../utils/config.mjs"; import { isVueComponent } from "../../../utils/typescript.mjs"; import "@vueuse/core"; const _sfc_main = /* @__PURE__ */ defineComponent({ ...{ name: "CuDropdownItem" }, __name: "menu-item", props: dropdownItemProps, setup(__props) { const props = __props; const { choose } = inject(DROPDOWN_PROVIDE); function itemHandleClick() { if (props.disabled) return; if (!props.sign) { warn("The current menu item does not have a sign attribute"); } choose(props.sign); } return (_ctx, _cache) => { return openBlock(), createElementBlock("li", { class: normalizeClass(["cu-dropdown-item", { divider: _ctx.divider, disabled: _ctx.disabled }]), onClick: itemHandleClick }, [ createElementVNode("div", null, [ unref(isVueComponent)(_ctx.icon) ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.icon), { key: 0, class: "prefix-icon" })) : createCommentVNode("", true), renderSlot(_ctx.$slots, "default") ]) ], 2); }; } }); export { _sfc_main as default };