38 lines
1,005 B
Text
38 lines
1,005 B
Text
|
---
|
||
|
import Layout from '../layouts/Layout.astro'
|
||
|
import QuestListing from '../components/questListing.astro'
|
||
|
import DatabaseSection from '../layouts/databaseSection.astro'
|
||
|
import { findSlug } from '../utils/slugTools'
|
||
|
import type { filedata } from '../types/ta'
|
||
|
|
||
|
const description =
|
||
|
'My own small blog. Topics include FGO, TA, Programming, web technologies and more!'
|
||
|
|
||
|
const questInfo = []
|
||
|
const fulldata = import.meta.glob<{ default: filedata }>(`../content/data/*.json`)
|
||
|
|
||
|
for (const [key, value] of Object.entries(fulldata)) {
|
||
|
const url = `${Astro.url}/${findSlug(key)}`
|
||
|
questInfo.push({
|
||
|
...(await value())['default'].info,
|
||
|
url: url,
|
||
|
})
|
||
|
}
|
||
|
|
||
|
questInfo.sort(
|
||
|
(a, b) => Date.parse(b.questReleaseDate) - Date.parse(a.questReleaseDate)
|
||
|
)
|
||
|
---
|
||
|
|
||
|
<Layout
|
||
|
title="TA Database"
|
||
|
currentpage="database"
|
||
|
descriptionOverride={description}
|
||
|
>
|
||
|
<DatabaseSection title="FGO NA TA Database">
|
||
|
{questInfo.map((quest) => <QuestListing {...quest} />)}
|
||
|
</DatabaseSection>
|
||
|
</Layout>
|
||
|
|
||
|
<style></style>
|