element-plus
Version:
A Component Library for Vue 3
1 lines • 1.76 kB
Source Map (JSON)
{"version":3,"file":"link2.mjs","sources":["../../../../../../packages/components/link/src/link.vue"],"sourcesContent":["<template>\n <a\n :class=\"[\n ns.b(),\n type ? ns.m(type) : '',\n ns.is('disabled', disabled),\n ns.is('underline', underline && !disabled),\n ]\"\n :href=\"disabled || !href ? undefined : href\"\n @click=\"handleClick\"\n >\n <el-icon v-if=\"icon\"><component :is=\"icon\" /></el-icon>\n <span v-if=\"$slots.default\" :class=\"ns.m('inner')\">\n <slot></slot>\n </span>\n\n <slot v-if=\"$slots.icon\" name=\"icon\"></slot>\n </a>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { linkProps, linkEmits } from './link'\n\nexport default defineComponent({\n name: 'ElLink',\n\n components: { ElIcon },\n\n props: linkProps,\n emits: linkEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('link')\n\n function handleClick(event: MouseEvent) {\n if (!props.disabled) emit('click', event)\n }\n\n return {\n ns,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_normalizeClass","_createCommentVNode"],"mappings":";;;;;;;AAyBA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,EAAE;AAAA,EAEd,OAAO;AAAA,EACP,OAAO;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,KAAK,aAAa;AAExB,yBAAqB,OAAmB;AACtC,UAAI,CAAC,MAAM;AAAU,aAAK,SAAS;AAAA;AAGrC,WAAO;AAAA,MACL;AAAA,MACA;AAAA;AAAA;AAAA;;;;SAxCIA;AAAA,WAAUC,eAAI;AAAA,MAAU;AAAA,MAA8B,YAAK,eAAa;AAAA,MAAiB,QAAG,GAAE,iBAAc;AAAA;;IAOjH,WAAK,uCAAE;AAAA;KAEO;AAAA,0CAA8B;AAAA,uBAAxB;AAAA;;;UACTC,mBAAc;AAAA;MAAG,KAAK;AAAA;OAChC;AAAA;aAGUA,mBAAW;AAAA,SAAvB;;;;;;;"}