completionId: cgen-952a6feea5a94bbda17738c67a6f48c0

cgen-952a6feea5a94bbda17738c67a6f48c0
This commit is contained in:
Builder.io 2025-11-12 02:41:04 +00:00
parent c7b3142e6e
commit 079f0c17ea

View file

@ -54,13 +54,35 @@ export default function AudioServicesForHire() {
try {
setLoading(true);
// Fetch artists who are for_hire
const response = await fetch(`/api/ethos/artists?for_hire=true&limit=20`);
const response = await fetch(`/api/ethos/artists?forHire=true&limit=50`);
if (response.ok) {
const data = await response.json();
setArtists(Array.isArray(data) ? data : []);
const result = await response.json();
const artistsData = result.data || result || [];
// Map the response to expected format
const mappedArtists = artistsData.map((artist: any) => ({
id: artist.user_id,
user_id: artist.user_id,
full_name: artist.user_profiles?.full_name || "Unknown Artist",
avatar_url: artist.user_profiles?.avatar_url,
bio: artist.bio,
skills: artist.skills || [],
verified: artist.verified || false,
rating: 5.0, // Default rating - could be fetched from a ratings table
for_hire: artist.for_hire,
price_list: artist.price_list || {
track_custom: artist.sample_price_track,
sfx_pack: artist.sample_price_sfx,
full_score: artist.sample_price_score,
},
turnaround_days: artist.turnaround_days,
}));
setArtists(mappedArtists);
}
} catch (error) {
console.error("Failed to fetch artists:", error);
setArtists([]);
} finally {
setLoading(false);
}