/** App path prefix for reverse-proxy deploys (e.g. `/ghabilee`). Empty at site root. */
const basePath = (process.env.NEXT_PUBLIC_BASE_PATH ?? '').replace(/\/+$/, '')
/**
* Prefix a root-absolute public asset path with `NEXT_PUBLIC_BASE_PATH`.
* Next.js `` / `next/image` do this automatically; raw `
` and
* string constants do not.
*/
export const withBasePath = (path: string): string => {
if (!path.startsWith('/') || path.startsWith('//')) return path
if (!basePath) return path
if (path === basePath || path.startsWith(`${basePath}/`)) return path
return `${basePath}${path}`
}
export const DEFAULT_EVENT_IMAGE = withBasePath('/images/defaults/event-fallback-portrait.avif')
export const DEFAULT_CATEGORY_IMAGE = withBasePath('/images/defaults/category-fallback.avif')
export const DEFAULT_AVATAR_MALE = withBasePath('/images/placeholders/man-placeholder.webp')
export const DEFAULT_AVATAR_FEMALE = withBasePath('/images/placeholders/woman-placeholder.webp')
export const DEFAULT_AVATAR_OTHER = withBasePath('/images/placeholders/portrait.webp')