import { useNuxt } from '@nuxt/kit'; import { fixSlashes, resolveSitePath } from 'site-config-stack/urls'; import { env } from 'std-env'; import { u as useSiteConfig, c as useNitroOrigin } from './shared/nuxt-site-config-kit.41c495f1.mjs'; import 'pkg-types'; import 'site-config-stack'; import 'ufo'; function withSiteTrailingSlash(path) { const siteConfig = useSiteConfig(); return fixSlashes(siteConfig.trailingSlash, path); } function createSitePathResolver(options = {}, nuxt = useNuxt()) { const siteConfig = useSiteConfig(); const nitroOrigin = useNitroOrigin(); const canUseSiteUrl = (options.canonical !== false || env.prerender) && siteConfig.url; const nuxtBase = nuxt.options.app.baseURL || "/"; return (path) => { return resolveSitePath(path, { ...options, siteUrl: canUseSiteUrl ? siteConfig.url : nitroOrigin, trailingSlash: siteConfig.trailingSlash, base: nuxtBase }); }; } function withSiteUrl(path, options = {}) { const siteConfig = useSiteConfig(); if (!siteConfig.url && options.throwErrorOnMissingSiteUrl) throw new Error("Missing url in site config. Please add `{ site: { url: } }` to nuxt.config.ts."); const nuxt = useNuxt(); const base = nuxt.options.app.baseURL || nuxt.options.nitro.baseURL || "/"; return resolveSitePath(path, { absolute: true, siteUrl: siteConfig.url || "", trailingSlash: siteConfig.trailingSlash, base, withBase: options.withBase }); } export { createSitePathResolver, withSiteTrailingSlash, withSiteUrl };