MediaLinks.js 3.32 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
import Vue from "vue";
import Baidu from "@theme/icons/media/Baidu.vue";
import Bitbucket from "@theme/icons/media/Bitbucket.vue";
import Dingding from "@theme/icons/media/Dingding.vue";
import Discord from "@theme/icons/media/Discord.vue";
import Dribbble from "@theme/icons/media/Dribbble.vue";
import Email from "@theme/icons/media/Email.vue";
import Evernote from "@theme/icons/media/Evernote.vue";
import Facebook from "@theme/icons/media/Facebook.vue";
import Flipboard from "@theme/icons/media/Flipboard.vue";
import Gitee from "@theme/icons/media/Gitee.vue";
import Github from "@theme/icons/media/Github.vue";
import Gitlab from "@theme/icons/media/Gitlab.vue";
import Gmail from "@theme/icons/media/Gmail.vue";
import Instagram from "@theme/icons/media/Instagram.vue";
import Lines from "@theme/icons/media/Lines.vue";
import Linkedin from "@theme/icons/media/Linkedin.vue";
import Pinterest from "@theme/icons/media/Pinterest.vue";
import Pocket from "@theme/icons/media/Pocket.vue";
import QQ from "@theme/icons/media/QQ.vue";
import Qzone from "@theme/icons/media/Qzone.vue";
import Reddit from "@theme/icons/media/Reddit.vue";
import Rss from "@theme/icons/media/Rss.vue";
import Steam from "@theme/icons/media/Steam.vue";
import Twitter from "@theme/icons/media/Twitter.vue";
import Wechat from "@theme/icons/media/Wechat.vue";
import Weibo from "@theme/icons/media/Weibo.vue";
import Whatsapp from "@theme/icons/media/Whatsapp.vue";
import Youtube from "@theme/icons/media/Youtube.vue";
import Zhihu from "@theme/icons/media/Zhihu.vue";
const medias = [
    "Baidu",
    "Bitbucket",
    "Dingding",
    "Discord",
    "Dribbble",
    "Email",
    "Evernote",
    "Facebook",
    "Flipboard",
    "Gitee",
    "Github",
    "Gitlab",
    "Gmail",
    "Instagram",
    "Lines",
    "Linkedin",
    "Pinterest",
    "Pocket",
    "QQ",
    "Qzone",
    "Reddit",
    "Rss",
    "Steam",
    "Twitter",
    "Wechat",
    "Weibo",
    "Whatsapp",
    "Youtube",
    "Zhihu",
];
export default Vue.extend({
    name: "MediaLinks",
    components: {
        Baidu,
        Bitbucket,
        Dingding,
        Discord,
        Dribbble,
        Email,
        Evernote,
        Facebook,
        Flipboard,
        Gitee,
        Github,
        Gitlab,
        Gmail,
        Instagram,
        Lines,
        Linkedin,
        Pinterest,
        Pocket,
        QQ,
        Qzone,
        Reddit,
        Rss,
        Steam,
        Twitter,
        Wechat,
        Weibo,
        Whatsapp,
        Youtube,
        Zhihu,
    },
    computed: {
        mediaLink() {
            const { medialink } = this.$frontmatter;
            return medialink === false
                ? false
                : typeof medialink === "object"
                    ? medialink
                    : this.$themeConfig.blog
                        ? this.$themeConfig.blog.links || false
                        : false;
        },
        links() {
            if (this.mediaLink) {
                const links = [];
                for (const media in this.mediaLink)
                    if (medias.includes(media))
                        links.push({
                            icon: media,
                            url: this.mediaLink[media],
                        });
                return links;
            }
            return [];
        },
    },
});
//# sourceMappingURL=MediaLinks.js.map