UNPKG

nuxt-simple-sitemap

Version:

Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.

30 lines (29 loc) 941 B
import { defineEventHandler } from "h3"; import { childSitemapSources, globalSitemapSources, resolveSitemapSources } from "../../sitemap/urlset/sources.mjs"; import { useSimpleSitemapRuntimeConfig } from "../../utils.mjs"; import { useNitroOrigin } from "#imports"; export default defineEventHandler(async (e) => { const _runtimeConfig = useSimpleSitemapRuntimeConfig(); const { sitemaps: _sitemaps } = _runtimeConfig; const runtimeConfig = { ..._runtimeConfig }; delete runtimeConfig.sitemaps; const globalSources = await globalSitemapSources(); const nitroOrigin = useNitroOrigin(e); const sitemaps = {}; for (const s of Object.keys(_sitemaps)) { sitemaps[s] = { ..._sitemaps[s], sources: await resolveSitemapSources(await childSitemapSources(_sitemaps[s])) }; } return { nitroOrigin, sitemaps, runtimeConfig, globalSources: await resolveSitemapSources(globalSources) }; });