diff --git a/web/app/routes/_layout/_pages/_protected/links/-link-form.tsx b/web/app/routes/_layout/_pages/_protected/links/-link-form.tsx index 5e54be51..28546103 100644 --- a/web/app/routes/_layout/_pages/_protected/links/-link-form.tsx +++ b/web/app/routes/_layout/_pages/_protected/links/-link-form.tsx @@ -50,14 +50,15 @@ export const getMetadata = createServerFn("GET", async (url: string) => { }) } - const result = urlSchema.safeParse(url) + const result = urlSchema.safeParse(decodeURIComponent(url)) + if (!result.success) { throw new Error( result.error.issues.map((issue) => issue.message).join(", "), ) } - url = ensureUrlProtocol(url) + url = ensureUrlProtocol(decodeURIComponent(url)) try { const response = await fetch(url, {