| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createElementVNode, renderSlot, createBlock, withModifiers, withCtx, createVNode, createCommentVNode, Transition } from 'vue';
- import { ElIcon } from '../../icon/index.mjs';
- import { Close } from '@element-plus/icons-vue';
- import { tagProps, tagEmits } from './tag.mjs';
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
- import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
- const __default__ = defineComponent({
- name: "ElTag"
- });
- const _sfc_main = /* @__PURE__ */ defineComponent({
- ...__default__,
- props: tagProps,
- emits: tagEmits,
- setup(__props, { emit }) {
- const props = __props;
- const tagSize = useFormSize();
- const ns = useNamespace("tag");
- const containerKls = computed(() => {
- const { type, hit, effect, closable, round } = props;
- return [
- ns.b(),
- ns.is("closable", closable),
- ns.m(type || "primary"),
- ns.m(tagSize.value),
- ns.m(effect),
- ns.is("hit", hit),
- ns.is("round", round)
- ];
- });
- const handleClose = (event) => {
- emit("close", event);
- };
- const handleClick = (event) => {
- emit("click", event);
- };
- const handleVNodeMounted = (vnode) => {
- var _a, _b, _c;
- if ((_c = (_b = (_a = vnode == null ? void 0 : vnode.component) == null ? void 0 : _a.subTree) == null ? void 0 : _b.component) == null ? void 0 : _c.bum) {
- vnode.component.subTree.component.bum = null;
- }
- };
- return (_ctx, _cache) => {
- return _ctx.disableTransitions ? (openBlock(), createElementBlock("span", {
- key: 0,
- class: normalizeClass(unref(containerKls)),
- style: normalizeStyle({ backgroundColor: _ctx.color }),
- onClick: handleClick
- }, [
- createElementVNode("span", {
- class: normalizeClass(unref(ns).e("content"))
- }, [
- renderSlot(_ctx.$slots, "default")
- ], 2),
- _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
- key: 0,
- class: normalizeClass(unref(ns).e("close")),
- onClick: withModifiers(handleClose, ["stop"])
- }, {
- default: withCtx(() => [
- createVNode(unref(Close))
- ]),
- _: 1
- }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
- ], 6)) : (openBlock(), createBlock(Transition, {
- key: 1,
- name: `${unref(ns).namespace.value}-zoom-in-center`,
- appear: "",
- onVnodeMounted: handleVNodeMounted
- }, {
- default: withCtx(() => [
- createElementVNode("span", {
- class: normalizeClass(unref(containerKls)),
- style: normalizeStyle({ backgroundColor: _ctx.color }),
- onClick: handleClick
- }, [
- createElementVNode("span", {
- class: normalizeClass(unref(ns).e("content"))
- }, [
- renderSlot(_ctx.$slots, "default")
- ], 2),
- _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
- key: 0,
- class: normalizeClass(unref(ns).e("close")),
- onClick: withModifiers(handleClose, ["stop"])
- }, {
- default: withCtx(() => [
- createVNode(unref(Close))
- ]),
- _: 1
- }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
- ], 6)
- ]),
- _: 3
- }, 8, ["name"]));
- };
- }
- });
- var Tag = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "tag.vue"]]);
- export { Tag as default };
- //# sourceMappingURL=tag2.mjs.map
|