pub async fn fetch_game_media(
app: &AppHandle,
playlite_game_id: &str,
game_name: &str,
) -> Result<GameMedia, String>Expand description
Busca a mídia (screenshots, trailers, embeds YouTube) de um jogo via GameBrain.
Fluxo:
playlite_game_id (UUID)
→ resolve gamebrain_id (mesmo caminho de fetch_similar_games)
→ cache sqlite gamebrain_media:{gamebrain_id}? → GameMedia
→ se não: GET /v1/games/{gamebrain_id}
→ extrai apenas campos de mídia
→ classifica vídeos em trailers vs youtube_embeds
→ salva no cacheCache: TTL configurado em cache.rs pela chave gamebrain_media:.
Adicionar ao get_ttl_for_cache_type e cleanup_expired_cache em cache.rs
(ver comentário no final deste arquivo).
Parâmetros:
playlite_game_id: UUID interno do Playlitegame_name: nome do jogo, usado como fallback para resolver o gamebrain_id via /suggestions se não estiver em cache