UNPKG

nuxt-component-meta

Version:

[![npm version][npm-version-src]][npm-version-href] [![npm downloads][npm-downloads-src]][npm-downloads-href]

22 lines (21 loc) 719 B
import { defineEventHandler, createError, appendHeader } from "h3"; import { pascalCase } from "scule"; import components from "#nuxt-component-meta/nitro"; export default defineEventHandler((event) => { appendHeader(event, "Access-Control-Allow-Origin", "*"); const componentName = (event.context.params?.["component?"] || "").replace(/\.json$/, ""); if (componentName) { const meta = components[pascalCase(componentName)]; if (!meta) { throw createError({ statusMessage: "Components not found!", statusCode: 404, data: { description: "Please make sure you are looking for correct component" } }); } return meta; } return components; });