tdesign-vue
Version:
64 lines (60 loc) • 2.49 kB
JavaScript
/**
* tdesign v1.14.1
* (c) 2025 tdesign
* @license MIT
*/
import _defineProperty from '@babel/runtime/helpers/defineProperty';
import { renderContent, renderTNodeJSX } from '../utils/render-tnode.js';
import props from './props.js';
import { getClassPrefixMixins } from '../config-provider/config-receiver.js';
import mixins from '../utils/mixins.js';
import '@babel/runtime/helpers/readOnlyError';
import '@babel/runtime/helpers/typeof';
import 'vue';
import '@vue/composition-api';
import 'lodash-es';
import '../config-provider/context.js';
import '../_common/js/global-config/default-config.js';
import '../_common/js/global-config/locale/zh_CN.js';
import '../_chunks/dep-ba613a02.js';
import '../_chunks/dep-fdb1b253.js';
import 'dayjs';
import '../_common/js/global-config/t.js';
import '@babel/runtime/helpers/slicedToArray';
var classPrefixMixins = getClassPrefixMixins("link");
var _Link = mixins(classPrefixMixins).extend({
name: "TLink",
props: props,
methods: {
handleClick: function handleClick(e) {
var _this$onClick;
if (this.disabled) return;
this.$emit("click", e);
(_this$onClick = this.onClick) === null || _this$onClick === void 0 || _this$onClick.call(this, e);
}
},
render: function render() {
var h = arguments[0];
var linkContent = renderContent(this, "default", "content");
var prefixContent = renderTNodeJSX(this, "prefixIcon");
var suffixContent = renderTNodeJSX(this, "suffixIcon");
var linkClass = [this.componentName, "".concat(this.componentName, "--theme-").concat(this.theme), _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, this.commonSizeClassName[this.size], this.size !== "medium"), this.commonStatusClassName.disabled, this.disabled), "".concat(this.classPrefix, "-is-underline"), this.underline), "".concat(this.componentName, "--hover-").concat(this.hover), !this.disabled)];
return h("a", {
"class": linkClass,
"attrs": {
"href": this.disabled || !this.href ? void 0 : this.href,
"target": this.target,
"download": this.download
},
"on": {
"click": this.handleClick
}
}, [prefixContent && h("span", {
"class": "".concat(this.componentName, "__prefix-icon")
}, [prefixContent]), linkContent, suffixContent && h("span", {
"class": "".concat(this.componentName, "__suffix-icon")
}, [suffixContent])]);
}
});
export { _Link as default };
//# sourceMappingURL=link.js.map