tdesign-mobile-vue
Version:
tdesign-mobile-vue
128 lines (124 loc) • 4.3 kB
JavaScript
/**
* tdesign v1.8.3
* (c) 2025 TDesign Group
* @license MIT
*/
import { defineComponent, createVNode, Fragment, createTextVNode } from 'vue';
import { Image } from '../image/index.mjs';
import FooterProps from './props.mjs';
import config from '../config.mjs';
import { usePrefixClass } from '../hooks/useClass.mjs';
import '../image/image.mjs';
import '../_chunks/dep-1c25ba43.mjs';
import '../_chunks/dep-e4a72ad9.mjs';
import '../_chunks/dep-d139aa8e.mjs';
import '../_chunks/dep-00e3917b.mjs';
import '@vueuse/core';
import 'tdesign-icons-vue-next';
import '../loading/index.mjs';
import '../loading/loading.mjs';
import '../loading/icon/gradient.mjs';
import '../_common/js/loading/circle-adapter.mjs';
import '../_common/js/utils/setStyle.mjs';
import '../_common/js/utils/helper.mjs';
import '../_chunks/dep-58437abb.mjs';
import '../_chunks/dep-496cd097.mjs';
import 'lodash-es';
import '../loading/icon/spinner.mjs';
import '../loading/props.mjs';
import '../hooks/tnode.mjs';
import '../hooks/render-tnode.mjs';
import '../shared/dom.mjs';
import '../shared/index.mjs';
import '../shared/functions.mjs';
import '../shared/util.mjs';
import '../shared/component.mjs';
import '../shared/constants.mjs';
import '../shared/render.mjs';
import '../shared/render-tnode.mjs';
import '../shared/useToggle/index.mjs';
import '../shared/useCountDown/index.mjs';
import '../_chunks/dep-ef105161.mjs';
import '../_chunks/dep-d41205ed.mjs';
import '../shared/useCountDown/utils.mjs';
import '../shared/useChildSlots/index.mjs';
import '../shared/useTouch/index.mjs';
import '../shared/useScrollParent/index.mjs';
import '../shared/useExpose/index.mjs';
import '../shared/useTest/index.mjs';
import '../shared/useClickAway/index.mjs';
import '../shared/useGesture/index.mjs';
import '@use-gesture/vanilla';
import '../shared/hover.mjs';
import './style/css.mjs';
import '../loading/type.mjs';
import '../loading/plugin.mjs';
import '../config-provider/useConfig.mjs';
import '../config-provider/context.mjs';
import '../_common/js/global-config/mobile/default-config.mjs';
import '../_common/js/global-config/mobile/locale/zh_CN.mjs';
import '../_chunks/dep-3bde6b35.mjs';
import '../_chunks/dep-eea1f1ad.mjs';
import '../_chunks/dep-b3bd9676.mjs';
import '../config-provider/type.mjs';
import '../image/props.mjs';
import '../image/type.mjs';
var prefix = config.prefix;
var _Footer = defineComponent({
name: "".concat(prefix, "-footer"),
props: FooterProps,
setup: function setup(props) {
var footerClass = usePrefixClass("footer");
var footerLinkClass = usePrefixClass("footer__link");
var renderLogo = function renderLogo() {
var logo = props.logo;
if (!logo) {
return;
}
return createVNode("a", {
"class": "".concat(footerClass.value, "__logo"),
"href": logo.url,
"target": logo.target
}, [logo.icon && createVNode(Image, {
"class": "".concat(footerClass.value, "__icon"),
"src": logo.icon
}, null), logo.title && createVNode("span", {
"class": "".concat(footerClass.value, "__title")
}, [logo.title])]);
};
var renderText = function renderText() {
if (props.logo) {
return;
}
return createVNode("div", {
"class": "".concat(footerClass.value, "__text")
}, [props.text]);
};
var renderLink = function renderLink() {
var links = props.links,
logo = props.logo;
var linksLength = links.length - 1;
if (logo || linksLength < 0) {
return;
}
return createVNode("div", {
"class": "".concat(footerLinkClass.value, "-list")
}, [links.map(function (link, index) {
return createVNode(Fragment, null, [createVNode("a", {
"href": link.url,
"target": link.target,
"class": "".concat(footerLinkClass.value, "-item")
}, [link.name]), linksLength !== index && createVNode("div", {
"class": "".concat(footerLinkClass.value, "-line")
}, [createTextVNode("|")])]);
})]);
};
return function () {
return createVNode("div", {
"class": footerClass.value
}, [renderLogo(), renderLink(), renderText()]);
};
}
});
export { _Footer as default };
//# sourceMappingURL=footer.mjs.map