/// API constants class ApiConstants { ApiConstants._(); // Base URLs // Note: Using HTTPS for production. For local development, override with: // flutter run --dart-define=API_BASE_URL=http://localhost:8000/api/v1 static const String baseUrl = String.fromEnvironment( 'API_BASE_URL', defaultValue: 'https://api.audiOhm.com/api/v1', // Production HTTPS URL ); static const String wsUrl = String.fromEnvironment( 'WS_BASE_URL', defaultValue: 'wss://api.audiOhm.com', // Production WSS URL ); // Timeout durations static const int connectionTimeoutMs = 30000; // 30 seconds static const int receiveTimeoutMs = 30000; static const int sendTimeoutMs = 30000; // API Endpoints static const String auth = '/auth'; static const String music = '/music'; static const String playlists = '/playlists'; static const String library = '/library'; static const String search = '/search'; // Auth endpoints static const String login = '/auth/login'; static const String register = '/auth/register'; static const String refresh = '/auth/refresh'; static const String logout = '/auth/logout'; static const String me = '/auth/me'; // Music endpoints static const String tracks = '/music/tracks'; static const String artists = '/music/artists'; static const String albums = '/music/albums'; static const String searchMusic = '/music/search'; static const String stream = '/stream'; static const String recommendations = '/music/tracks'; static const String trending = '/music/trending'; // Playlist endpoints static const String userPlaylists = '/playlists'; static const String playlistTracks = '/tracks'; static const String reorder = '/tracks/reorder'; }