tass-ui
Version:
A high quality UI Toolkit built on Vue.js3+.
41 lines (40 loc) • 1.26 kB
JavaScript
;
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
const vue = require("vue");
require("../../../theme-chalk/src/dropdown.scss.js");
const event = require("./event.js");
const _hoisted_1 = {
key: 0,
class: "tas-dropdown-menu"
};
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
__name: "dropdownMenu",
setup(__props) {
let state = vue.reactive({
showMenu: false
});
vue.onMounted(() => {
event.default.on("updateShowMenu", (isOption) => {
if (typeof isOption === "boolean") {
state.showMenu = isOption;
}
});
event.default.on("mouseleave", (isOption) => {
if (typeof isOption === "boolean") {
state.showMenu = false;
}
});
});
return (_ctx, _cache) => {
return vue.openBlock(), vue.createBlock(vue.Transition, { name: "tas-dropdown-transition" }, {
default: vue.withCtx(() => [
vue.unref(state).showMenu ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_1, [
vue.renderSlot(_ctx.$slots, "default")
])) : vue.createCommentVNode("", true)
]),
_: 3
});
};
}
});
exports.default = _sfc_main;