31 lines
737 B
JavaScript
31 lines
737 B
JavaScript
import EleventyFetch from '@11ty/eleventy-fetch';
|
|
|
|
const { POSTGREST_URL, POSTGREST_API_KEY } = process.env;
|
|
|
|
const fetchTopAlbums = async () => {
|
|
try {
|
|
const data = await EleventyFetch(
|
|
`${POSTGREST_URL}/optimized_albums?select=table&order=total_plays_raw.desc&limit=8`,
|
|
{
|
|
duration: '1d',
|
|
type: 'json',
|
|
fetchOptions: {
|
|
method: 'GET',
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
Authorization: `Bearer ${POSTGREST_API_KEY}`
|
|
}
|
|
}
|
|
}
|
|
);
|
|
|
|
return data;
|
|
} catch (error) {
|
|
console.error('Error fetching top albums:', error);
|
|
return {};
|
|
}
|
|
};
|
|
|
|
export default async function () {
|
|
return await fetchTopAlbums();
|
|
}
|