Files
konstitisyon.nu/app/page.js
T

52 lines
1.2 KiB
JavaScript
Raw Normal View History

2024-05-17 08:29:06 +04:00
import {createDirectus, rest, readItems} from '@directus/sdk'
2024-05-17 09:00:25 +04:00
import Container from '@mui/material/Container'
import Typography from '@mui/material/Typography'
2024-05-17 08:29:06 +04:00
import {formatKonstitisyon} from '../lib/format.js'
2024-05-17 09:00:25 +04:00
const apiUrl = process.env.DIRECTUS_API_URL
const appTitle = process.env.APP_TITLE
2024-05-17 08:29:06 +04:00
2024-05-17 09:00:25 +04:00
async function getData() {
2024-05-17 08:29:06 +04:00
if (!apiUrl) {
throw new Error('DIRECTUS_API_URL is required')
}
const client = createDirectus(apiUrl).with(rest())
try {
const titres = await client.request(
readItems('titres', {
sort: 'numero'
})
)
const articles = await client.request(
readItems('articles', {
sort: 'numero'
})
)
if (titres.length === 0 || articles.length === 0) {
throw new Error('No data')
}
const konstitisyon = formatKonstitisyon(titres, articles)
return konstitisyon
} catch {
throw new Error('Failed to fetch data')
}
}
export default async function Page() {
const data = await getData()
console.log('data', data)
2024-05-16 19:38:20 +04:00
2024-05-17 09:00:25 +04:00
return (
<Container maxWidth='sm'>
<Typography component='h1' textAlign='center' variant='h3'>{appTitle.toUpperCase()}</Typography>
</Container>
)
2024-05-16 02:17:33 +04:00
}