diff --git a/dashboard/src/components/shared/ExtensionCard.vue b/dashboard/src/components/shared/ExtensionCard.vue index c324545785..4fc7b95ff6 100644 --- a/dashboard/src/components/shared/ExtensionCard.vue +++ b/dashboard/src/components/shared/ExtensionCard.vue @@ -126,6 +126,22 @@ const viewChangelog = () => { emit("view-changelog", props.extension); }; +const safeSocialLink = computed(() => { + const socialLink = props.extension?.social_link; + if (typeof socialLink !== "string" || !socialLink.trim().length) { + return ""; + } + + try { + const parsed = new URL(socialLink); + return parsed.protocol === "http:" || parsed.protocol === "https:" + ? parsed.href + : ""; + } catch { + return ""; + } +}); +