in apps/community-website/amplify/backend/function/resourcesManager/src/SectionManager.js [24:83]
listSectionsAndMedias: async () => {
const sectionsData = await executeQuery('ListSections')
if (
!sectionsData ||
!sectionsData.data ||
!sectionsData.data.listSections ||
!sectionsData.data.listSections.items
) {
return {
statusCode: 500,
body: 'Failed to list sections',
}
}
const mediasSectionsData = await executeQuery('ListMediasSections')
if (
!mediasSectionsData ||
!mediasSectionsData.data ||
!mediasSectionsData.data.listMediasSections ||
!mediasSectionsData.data.listMediasSections.items
) {
return {
statusCode: 500,
body: 'Failed to list mediasSections',
}
}
const mediasData = await executeQuery('ListMedias')
if (
!mediasData ||
!mediasData.data ||
!mediasData.data.listMedias ||
!mediasData.data.listMedias.items
) {
return {
statusCode: 500,
body: 'Failed to list medias',
}
}
const list = sectionsData.data.listSections.items.map((section) => {
const mediasSections =
mediasSectionsData.data.listMediasSections.items.filter(
(mediasSection) => mediasSection.sectionID === section.id
)
const medias = mediasSections.map((mediasSection) =>
mediasData.data.listMedias.items.find(
(media) => media.id === mediasSection.mediaID
)
)
return {
...section,
medias,
}
})
return {
statusCode: 200,
body: list,
}
},