This commit is contained in:
Ra
2025-08-20 06:54:19 -07:00
parent 10a1855691
commit 875280cdac
7 changed files with 2291 additions and 486 deletions

View File

@@ -1,52 +0,0 @@
// URL utilities for consistent URL management across the application
// Get site URL from environment variable or default
export const getSiteUrl = (): string => {
// For client-side (Vite)
if (typeof window !== 'undefined') {
return import.meta.env.VITE_SITE_URL || window.location.origin;
}
// For server-side (Node.js)
return process.env.SITE_URL || 'http://localhost:5173';
};
// Get API URL from environment variable or default
export const getApiUrl = (): string => {
// For client-side (Vite)
if (typeof window !== 'undefined') {
return import.meta.env.VITE_API_URL || 'http://localhost:5050';
}
// For server-side (Node.js)
return process.env.API_URL || 'http://localhost:5050';
};
// Build full API endpoint URL
export const buildApiUrl = (endpoint: string): string => {
const baseUrl = getApiUrl();
const cleanEndpoint = endpoint.startsWith('/') ? endpoint : `/${endpoint}`;
return `${baseUrl}${cleanEndpoint}`;
};
// Build full site URL
export const buildSiteUrl = (path: string): string => {
const baseUrl = getSiteUrl();
const cleanPath = path.startsWith('/') ? path : `/${path}`;
return `${baseUrl}${cleanPath}`;
};
// For hash-based routing (React Router with HashRouter)
export const buildHashUrl = (path: string): string => {
const baseUrl = getSiteUrl();
const cleanPath = path.startsWith('/') ? path : `/${path}`;
return `${baseUrl}/#${cleanPath}`;
};
export default {
getSiteUrl,
getApiUrl,
buildApiUrl,
buildSiteUrl,
buildHashUrl
};