diff --git a/src/components/embed/embed.tsx b/src/components/embed/embed.tsx
index c455bf5f..c589cf4b 100644
--- a/src/components/embed/embed.tsx
+++ b/src/components/embed/embed.tsx
@@ -7,7 +7,7 @@ interface EmbedProps {
const Embed = ({ url }: EmbedProps) => {
const parsedUrl = new URL(url);
- if (youtubeHosts.has(parsedUrl.host) || parsedUrl.host.startsWith('yt.')) {
+ if (youtubeHosts.has(parsedUrl.host) || (parsedUrl.host.startsWith('yt.') && parsedUrl.searchParams.has('v'))) {
return ;
}
if (xHosts.has(parsedUrl.host)) {
@@ -271,6 +271,8 @@ const canEmbedHosts = new Set([
...spotifyHosts,
]);
-export const canEmbed = (parsedUrl: URL): boolean => canEmbedHosts.has(parsedUrl.host);
+export const canEmbed = (parsedUrl: URL): boolean => {
+ return canEmbedHosts.has(parsedUrl.host) || (parsedUrl.host.startsWith('yt.') && parsedUrl.searchParams.has('v'));
+};
export default Embed;
diff --git a/src/lib/utils/media-utils.ts b/src/lib/utils/media-utils.ts
index 763c5732..137a1513 100644
--- a/src/lib/utils/media-utils.ts
+++ b/src/lib/utils/media-utils.ts
@@ -30,8 +30,6 @@ const getYouTubeVideoId = (url: URL): string | null => {
return url.pathname.slice(1);
} else if (url.searchParams.has('v')) {
return url.searchParams.get('v');
- } else if (url.host.startsWith('yt.')) {
- return url.searchParams.get('v');
}
return null;
};