birdpaper-ui
Version:
一个通用的 vue3 UI组件库。A common vue3 UI component library.
50 lines (49 loc) • 2.28 kB
JavaScript
import _sfc_main from "./tooltip.vue2.js";
import { resolveDirective, openBlock, createElementBlock, Fragment, createBlock, Teleport, createVNode, Transition, withCtx, withDirectives, normalizeClass, createElementVNode, createTextVNode, toDisplayString, createCommentVNode, renderSlot, vShow } from "vue";
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.js";
const _hoisted_1 = /* @__PURE__ */ createElementVNode("div", { class: "triangle" }, null, -1);
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
const _directive_clickOutside = resolveDirective("clickOutside");
return openBlock(), createElementBlock(Fragment, null, [
_ctx.show ? (openBlock(), createBlock(Teleport, {
key: 0,
to: "body"
}, [
createVNode(Transition, { name: "tooltip-fade" }, {
default: withCtx(() => [
withDirectives((openBlock(), createElementBlock("div", {
ref: "containerRef",
class: normalizeClass(`${_ctx.name}-container`)
}, [
createElementVNode("div", {
class: normalizeClass(`${_ctx.name}-content`)
}, [
!_ctx.slots.content ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
createTextVNode(toDisplayString(_ctx.content), 1)
], 64)) : createCommentVNode("", true),
renderSlot(_ctx.$slots, "content")
], 2),
_hoisted_1
], 2)), [
[vShow, _ctx.visible],
[_directive_clickOutside, _ctx.trigger === "click" && _ctx.closeTool]
])
]),
_: 3
})
])) : createCommentVNode("", true),
createElementVNode("div", {
ref: "slotRef",
class: normalizeClass(`${_ctx.name}-inner`),
onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args)),
onMouseenter: _cache[1] || (_cache[1] = (...args) => _ctx.mouseenter && _ctx.mouseenter(...args)),
onMouseleave: _cache[2] || (_cache[2] = (...args) => _ctx.mouseleave && _ctx.mouseleave(...args))
}, [
renderSlot(_ctx.$slots, "default")
], 34)
], 64);
}
const tooltip = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
export {
tooltip as default
};