--- import FoldersSection from "./_components/FoldersSection.astro"; import { fetchOr404 } from "src/utils/responses"; import ErrorMessage from "components/ErrorMessage.astro"; import { getI18n } from "src/i18n/i18n"; import CollectiblePreview from "components/Previews/CollectiblePreview.astro"; import PagePreview from "components/Previews/PagePreview.astro"; import { formatRichTextToString } from "src/utils/format"; import ImagePreview from "components/Previews/ImagePreview.astro"; import AudioPreview from "components/Previews/AudioPreview.astro"; import VideoPreview from "components/Previews/VideoPreview.astro"; import AppLayout from "components/AppLayout/AppLayout.astro"; import AppLayoutTitle from "components/AppLayout/components/AppLayoutTitle.astro"; import { payload } from "src/services"; import RichText from "components/RichText/RichText.astro"; import FilePreview from "components/Previews/FilePreview.astro"; import { Collections } from "src/shared/payload/constants"; const slug = Astro.params.slug!; const response = await fetchOr404(() => payload.getFolder(slug)); if (response instanceof Response) { return response; } Astro.locals.sdkCalls.add(response.endpointCalled); const { files, parentPages, sections, translations } = response.data; const { getLocalizedMatch } = await getI18n(Astro.locals.currentLocale); const { language, title, description } = getLocalizedMatch(translations); --- {/* ------------------------------------------- HTML ------------------------------------------- */} {description && }
{ sections.type === "single" && sections.subfolders.length > 0 ? ( ) : ( sections.type === "multiple" && sections.sections.length > 0 && (
{sections.sections.map(({ subfolders, translations }) => { const { language, name } = getLocalizedMatch(translations); return ; })}
) ) }
{ files.map(({ relationTo, value }) => { switch (relationTo) { case Collections.Collectibles: return ; case Collections.Pages: return ; case Collections.Images: return ; case Collections.Audios: return ; case Collections.Videos: return ; case Collections.Files: return ; default: return ; } }) }
{/* ------------------------------------------- CSS -------------------------------------------- */}