23 lines
558 B
TypeScript
23 lines
558 B
TypeScript
import { readFileSync } from 'node:fs'
|
|
|
|
const dataFile = './server/data/talks.json'
|
|
|
|
function cleanData(data) {
|
|
return data.map(item => {
|
|
const cleaned = { ...item }
|
|
if (cleaned._id?.$oid) {
|
|
cleaned.id = cleaned._id.$oid
|
|
delete cleaned._id
|
|
}
|
|
if (cleaned.date?.$date?.$numberLong) {
|
|
cleaned.date = new Date(parseInt(cleaned.date.$date.$numberLong)).toISOString()
|
|
}
|
|
return cleaned
|
|
})
|
|
}
|
|
|
|
export default defineEventHandler(() => {
|
|
const raw = readFileSync(dataFile, 'utf-8')
|
|
return cleanData(JSON.parse(raw))
|
|
})
|