/** * Asset Path Utilities * * Type-safe helpers for accessing static assets */ /** * Asset categories */ export const AssetPaths = { images: '/assets/images', logos: '/assets/logos', icons: '/assets/icons', } as const; /** * Get full path to an image asset * @param filename - The image filename (e.g., 'hero-banner.jpg') * @returns Full path to the image */ export function getImagePath(filename: string): string { return `${AssetPaths.images}/${filename}`; } /** * Get full path to a logo asset * @param filename - The logo filename (e.g., 'xpeditis-logo.svg') * @returns Full path to the logo */ export function getLogoPath(filename: string): string { return `${AssetPaths.logos}/${filename}`; } /** * Get full path to an icon asset * @param filename - The icon filename (e.g., 'shipping-icon.svg') * @returns Full path to the icon */ export function getIconPath(filename: string): string { return `${AssetPaths.icons}/${filename}`; } /** * Predefined asset paths for common images */ export const Images = { // Add your common images here as they are added to the project // Example: // heroBanner: getImagePath('hero-banner.jpg'), // shippingContainer: getImagePath('shipping-container.png'), } as const; /** * Predefined asset paths for logos */ export const Logos = { // Add your logos here as they are added to the project // Example: // main: getLogoPath('xpeditis-logo.svg'), // dark: getLogoPath('xpeditis-logo-dark.svg'), // light: getLogoPath('xpeditis-logo-light.svg'), // icon: getLogoPath('xpeditis-icon.svg'), } as const; /** * Predefined asset paths for icons */ export const Icons = { // Add your icons here as they are added to the project // Example: // shipping: getIconPath('shipping-icon.svg'), // tracking: getIconPath('tracking-icon.svg'), // booking: getIconPath('booking-icon.svg'), // dashboard: getIconPath('dashboard-icon.svg'), // notification: getIconPath('notification-icon.svg'), } as const;