import { isLocalApp } from "$lib/Utility/appOrigin"; export const cdn = (urlString: string | undefined) => !urlString || !["http", "https"].some((protocol) => urlString.startsWith(protocol)) || isLocalApp() || [ "api.telegram.org", "telegra.ph", "t.me", "discord.com", "cdn.discordapp.com", "media.discordapp.net", "images-ext-1.discordapp.net", "images-ext-2.discordapp.net", "media.trace.moe", "files.catbox.moe", ].includes(new URL(urlString).hostname) ? urlString : `https://cdn.due.moe?url=${encodeURIComponent(urlString)}`; export const thumbnail = (url: string | undefined) => { const width = 144; const height = 200; if (url && url.includes("catbox.moe") && !url.includes("gif")) return url.replace("catbox.moe/", "catbox.moe/thumbs/t_"); if (url && url.includes("imgur") && !url.includes("gif")) return ( !url.includes("i.imgur.com") ? url.replace("imgur.com", "i.imgur.com") : url ).replace( /(\.\w+)$/, `_d.webp?maxwidth=${width}&shape=thumb&fidelity=high`, ); if (url && url.includes("discordapp")) { const match = url.match(/attachments\/(\d+)\/(\d+)\/(.+)/); if (match) { const [, server, id, file] = match; return `https://media.discordapp.net/attachments/${server}/${id}/${file}?width=${width}&height=${height}`; } } return url; };