Files
ui/docs/server/api/component-example.get.ts
2024-09-12 11:10:23 +02:00

20 lines
634 B
TypeScript

import { defineEventHandler, createError, appendHeader } from 'h3'
import { pascalCase } from 'scule'
// @ts-expect-error - no types available
import components from '#component-example/nitro'
export default defineEventHandler((event) => {
appendHeader(event, 'Access-Control-Allow-Origin', '*')
const componentName = (event.context.params?.['component?'] || '').replace(/\.json$/, '')
if (componentName) {
const component = components[pascalCase(componentName)]
if (!component) {
throw createError({
statusMessage: 'Example not found!',
statusCode: 404
})
}
return component
}
})