DONE: fix error where image not showing on digital card, generate letter not working on prod (#5)
Co-authored-by: ISMAIL MASSERAN <topaz@ISMAILs-Macbook.local> Reviewed-on: #5
This commit was merged in pull request #5.
This commit is contained in:
@@ -14,14 +14,22 @@ export function buildCardDownloadFileName(
|
||||
export function toProxiedStorageUrl(url: string | null | undefined): string | null | undefined {
|
||||
if (!url) return url
|
||||
|
||||
try {
|
||||
const parsed = new URL(url, window.location.origin)
|
||||
if (parsed.pathname.startsWith('/storage/')) {
|
||||
return `${parsed.pathname}${parsed.search}`
|
||||
}
|
||||
} catch {
|
||||
// Keep original URL when parsing fails.
|
||||
}
|
||||
const apiBase = import.meta.env.VITE_API_BASE_URL?.replace(/\/$/, '')
|
||||
|
||||
return url
|
||||
try {
|
||||
const parsed = new URL(url, apiBase || window.location.origin)
|
||||
if (!parsed.pathname.startsWith('/storage/')) {
|
||||
return url
|
||||
}
|
||||
|
||||
// Production serves the SPA from a different host than Laravel storage files.
|
||||
if (apiBase) {
|
||||
return `${apiBase}${parsed.pathname}${parsed.search}`
|
||||
}
|
||||
|
||||
// Dev fallback: Vite proxies /storage to the API.
|
||||
return `${parsed.pathname}${parsed.search}`
|
||||
} catch {
|
||||
return url
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user