nuxt-site-config-kit 3.1.6 → 3.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,152 +1,21 @@
1
1
  'use strict';
2
2
 
3
- const kit = require('@nuxt/kit');
4
- const pkgTypes = require('pkg-types');
5
- const siteConfigStack = require('site-config-stack');
6
- const urls = require('site-config-stack/urls');
7
- const stdEnv = require('std-env');
8
- const ufo = require('ufo');
3
+ const urls = require('./shared/nuxt-site-config-kit.B3BiEa0J.cjs');
4
+ require('@nuxt/kit');
5
+ require('site-config-stack/urls');
6
+ require('std-env');
7
+ require('pkg-types');
8
+ require('site-config-stack');
9
+ require('ufo');
9
10
 
10
- async function initSiteConfig(nuxt = kit.tryUseNuxt()) {
11
- if (!nuxt)
12
- return;
13
- let siteConfig = nuxt._siteConfig;
14
- if (siteConfig)
15
- return siteConfig;
16
- siteConfig = siteConfigStack.createSiteConfigStack();
17
- const rootDir = nuxt?.options.rootDir || process.cwd?.() || false;
18
- siteConfig.push({
19
- _context: "system",
20
- _priority: -15,
21
- name: rootDir ? rootDir.split("/").pop() : void 0,
22
- env: process.env.NODE_ENV
23
- });
24
- if (rootDir) {
25
- const pkgJson = await pkgTypes.readPackageJSON(rootDir);
26
- if (pkgJson) {
27
- siteConfig.push({
28
- _context: "package.json",
29
- _priority: -10,
30
- name: pkgJson.name,
31
- description: pkgJson.description
32
- });
33
- }
34
- }
35
- siteConfig.push({
36
- _context: "vendorEnv",
37
- _priority: -5,
38
- url: [
39
- // vercel
40
- process.env.VERCEL_URL,
41
- process.env.NUXT_ENV_VERCEL_URL,
42
- // netlify
43
- process.env.URL,
44
- // cloudflare pages
45
- process.env.CF_PAGES_URL
46
- ].find((k) => Boolean(k)),
47
- name: [
48
- // vercel
49
- process.env.NUXT_ENV_VERCEL_GIT_REPO_SLUG,
50
- // netlify
51
- process.env.SITE_NAME
52
- ].find((k) => Boolean(k))
53
- });
54
- const runtimeConfig = nuxt.options.runtimeConfig;
55
- const runtimeConfigEnvKeys = [
56
- ...Object.entries(runtimeConfig.site || {}).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v]),
57
- ...Object.entries([...Object.entries(runtimeConfig), ...Object.entries(runtimeConfig.public)]).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v])
58
- ];
59
- siteConfig.push({
60
- _priority: -2,
61
- _context: "legacyRuntimeConfig",
62
- ...Object.fromEntries(runtimeConfigEnvKeys)
63
- });
64
- siteConfig.push({
65
- _context: "buildEnv",
66
- _priority: -1,
67
- ...siteConfigStack.envSiteConfig(process.env)
68
- });
69
- nuxt._siteConfig = siteConfig;
70
- return siteConfig;
71
- }
72
- async function installNuxtSiteConfig(nuxt = kit.tryUseNuxt()) {
73
- await kit.installModule(await kit.resolvePath("nuxt-site-config"));
74
- await initSiteConfig(nuxt);
75
- }
76
- function getSiteConfigStack(nuxt = kit.tryUseNuxt()) {
77
- if (!nuxt)
78
- throw new Error("Nuxt context is missing.");
79
- if (!nuxt._siteConfig)
80
- throw new Error("Site config is not initialized. Make sure you are running your module after nuxt-site-config.");
81
- return nuxt._siteConfig;
82
- }
83
- function updateSiteConfig(input, nuxt = kit.tryUseNuxt()) {
84
- const container = getSiteConfigStack(nuxt);
85
- return container.push(input);
86
- }
87
- function useSiteConfig(nuxt = kit.tryUseNuxt()) {
88
- const container = getSiteConfigStack(nuxt);
89
- return container.get();
90
- }
91
11
 
92
- function useNitroOrigin() {
93
- const cert = stdEnv.env.NITRO_SSL_CERT;
94
- const key = stdEnv.env.NITRO_SSL_KEY;
95
- let host = stdEnv.env.NITRO_HOST || stdEnv.env.HOST || false;
96
- let port = stdEnv.env.NITRO_PORT || stdEnv.env.PORT || (stdEnv.isDevelopment ? 3e3 : false);
97
- let protocol = cert && key || !stdEnv.isDevelopment ? "https" : "http";
98
- if ((stdEnv.isDevelopment || stdEnv.env.prerender) && stdEnv.env.NUXT_VITE_NODE_OPTIONS) {
99
- const origin = JSON.parse(stdEnv.env.NUXT_VITE_NODE_OPTIONS).baseURL.replace("/__nuxt_vite_node__", "");
100
- host = ufo.withoutProtocol(origin);
101
- protocol = origin.includes("https") ? "https" : "http";
102
- }
103
- if (typeof host === "string" && host.includes(":")) {
104
- port = host.split(":").pop();
105
- host = host.split(":")[0];
106
- }
107
- port = port ? `:${port}` : "";
108
- return `${protocol}://${host}${port}/`;
109
- }
110
12
 
111
- function withSiteTrailingSlash(path) {
112
- const siteConfig = useSiteConfig();
113
- return urls.fixSlashes(siteConfig.trailingSlash, path);
114
- }
115
- function createSitePathResolver(options = {}, nuxt = kit.useNuxt()) {
116
- const siteConfig = useSiteConfig();
117
- const nitroOrigin = useNitroOrigin();
118
- const canUseSiteUrl = (options.canonical !== false || stdEnv.env.prerender) && siteConfig.url;
119
- const nuxtBase = nuxt.options.app.baseURL || "/";
120
- return (path) => {
121
- return urls.resolveSitePath(path, {
122
- ...options,
123
- siteUrl: canUseSiteUrl ? siteConfig.url : nitroOrigin,
124
- trailingSlash: siteConfig.trailingSlash,
125
- base: nuxtBase
126
- });
127
- };
128
- }
129
- function withSiteUrl(path, options = {}) {
130
- const siteConfig = useSiteConfig();
131
- if (!siteConfig.url && options.throwErrorOnMissingSiteUrl)
132
- throw new Error("Missing url in site config. Please add `{ site: { url: <url> } }` to nuxt.config.ts.");
133
- const nuxt = kit.useNuxt();
134
- const base = nuxt.options.app.baseURL || nuxt.options.nitro.baseURL || "/";
135
- return urls.resolveSitePath(path, {
136
- absolute: true,
137
- siteUrl: siteConfig.url || "",
138
- trailingSlash: siteConfig.trailingSlash,
139
- base,
140
- withBase: options.withBase
141
- });
142
- }
143
-
144
- exports.createSitePathResolver = createSitePathResolver;
145
- exports.getSiteConfigStack = getSiteConfigStack;
146
- exports.initSiteConfig = initSiteConfig;
147
- exports.installNuxtSiteConfig = installNuxtSiteConfig;
148
- exports.updateSiteConfig = updateSiteConfig;
149
- exports.useNitroOrigin = useNitroOrigin;
150
- exports.useSiteConfig = useSiteConfig;
151
- exports.withSiteTrailingSlash = withSiteTrailingSlash;
152
- exports.withSiteUrl = withSiteUrl;
13
+ exports.createSitePathResolver = urls.createSitePathResolver;
14
+ exports.getSiteConfigStack = urls.getSiteConfigStack;
15
+ exports.initSiteConfig = urls.initSiteConfig;
16
+ exports.installNuxtSiteConfig = urls.installNuxtSiteConfig;
17
+ exports.updateSiteConfig = urls.updateSiteConfig;
18
+ exports.useNitroOrigin = urls.useNitroOrigin;
19
+ exports.useSiteConfig = urls.useSiteConfig;
20
+ exports.withSiteTrailingSlash = urls.withSiteTrailingSlash;
21
+ exports.withSiteUrl = urls.withSiteUrl;
package/dist/index.mjs CHANGED
@@ -1,142 +1,7 @@
1
- import { tryUseNuxt, installModule, resolvePath, useNuxt } from '@nuxt/kit';
2
- import { readPackageJSON } from 'pkg-types';
3
- import { createSiteConfigStack, envSiteConfig } from 'site-config-stack';
4
- import { fixSlashes, resolveSitePath } from 'site-config-stack/urls';
5
- import { env, isDevelopment } from 'std-env';
6
- import { withoutProtocol } from 'ufo';
7
-
8
- async function initSiteConfig(nuxt = tryUseNuxt()) {
9
- if (!nuxt)
10
- return;
11
- let siteConfig = nuxt._siteConfig;
12
- if (siteConfig)
13
- return siteConfig;
14
- siteConfig = createSiteConfigStack();
15
- const rootDir = nuxt?.options.rootDir || process.cwd?.() || false;
16
- siteConfig.push({
17
- _context: "system",
18
- _priority: -15,
19
- name: rootDir ? rootDir.split("/").pop() : void 0,
20
- env: process.env.NODE_ENV
21
- });
22
- if (rootDir) {
23
- const pkgJson = await readPackageJSON(rootDir);
24
- if (pkgJson) {
25
- siteConfig.push({
26
- _context: "package.json",
27
- _priority: -10,
28
- name: pkgJson.name,
29
- description: pkgJson.description
30
- });
31
- }
32
- }
33
- siteConfig.push({
34
- _context: "vendorEnv",
35
- _priority: -5,
36
- url: [
37
- // vercel
38
- process.env.VERCEL_URL,
39
- process.env.NUXT_ENV_VERCEL_URL,
40
- // netlify
41
- process.env.URL,
42
- // cloudflare pages
43
- process.env.CF_PAGES_URL
44
- ].find((k) => Boolean(k)),
45
- name: [
46
- // vercel
47
- process.env.NUXT_ENV_VERCEL_GIT_REPO_SLUG,
48
- // netlify
49
- process.env.SITE_NAME
50
- ].find((k) => Boolean(k))
51
- });
52
- const runtimeConfig = nuxt.options.runtimeConfig;
53
- const runtimeConfigEnvKeys = [
54
- ...Object.entries(runtimeConfig.site || {}).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v]),
55
- ...Object.entries([...Object.entries(runtimeConfig), ...Object.entries(runtimeConfig.public)]).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v])
56
- ];
57
- siteConfig.push({
58
- _priority: -2,
59
- _context: "legacyRuntimeConfig",
60
- ...Object.fromEntries(runtimeConfigEnvKeys)
61
- });
62
- siteConfig.push({
63
- _context: "buildEnv",
64
- _priority: -1,
65
- ...envSiteConfig(process.env)
66
- });
67
- nuxt._siteConfig = siteConfig;
68
- return siteConfig;
69
- }
70
- async function installNuxtSiteConfig(nuxt = tryUseNuxt()) {
71
- await installModule(await resolvePath("nuxt-site-config"));
72
- await initSiteConfig(nuxt);
73
- }
74
- function getSiteConfigStack(nuxt = tryUseNuxt()) {
75
- if (!nuxt)
76
- throw new Error("Nuxt context is missing.");
77
- if (!nuxt._siteConfig)
78
- throw new Error("Site config is not initialized. Make sure you are running your module after nuxt-site-config.");
79
- return nuxt._siteConfig;
80
- }
81
- function updateSiteConfig(input, nuxt = tryUseNuxt()) {
82
- const container = getSiteConfigStack(nuxt);
83
- return container.push(input);
84
- }
85
- function useSiteConfig(nuxt = tryUseNuxt()) {
86
- const container = getSiteConfigStack(nuxt);
87
- return container.get();
88
- }
89
-
90
- function useNitroOrigin() {
91
- const cert = env.NITRO_SSL_CERT;
92
- const key = env.NITRO_SSL_KEY;
93
- let host = env.NITRO_HOST || env.HOST || false;
94
- let port = env.NITRO_PORT || env.PORT || (isDevelopment ? 3e3 : false);
95
- let protocol = cert && key || !isDevelopment ? "https" : "http";
96
- if ((isDevelopment || env.prerender) && env.NUXT_VITE_NODE_OPTIONS) {
97
- const origin = JSON.parse(env.NUXT_VITE_NODE_OPTIONS).baseURL.replace("/__nuxt_vite_node__", "");
98
- host = withoutProtocol(origin);
99
- protocol = origin.includes("https") ? "https" : "http";
100
- }
101
- if (typeof host === "string" && host.includes(":")) {
102
- port = host.split(":").pop();
103
- host = host.split(":")[0];
104
- }
105
- port = port ? `:${port}` : "";
106
- return `${protocol}://${host}${port}/`;
107
- }
108
-
109
- function withSiteTrailingSlash(path) {
110
- const siteConfig = useSiteConfig();
111
- return fixSlashes(siteConfig.trailingSlash, path);
112
- }
113
- function createSitePathResolver(options = {}, nuxt = useNuxt()) {
114
- const siteConfig = useSiteConfig();
115
- const nitroOrigin = useNitroOrigin();
116
- const canUseSiteUrl = (options.canonical !== false || env.prerender) && siteConfig.url;
117
- const nuxtBase = nuxt.options.app.baseURL || "/";
118
- return (path) => {
119
- return resolveSitePath(path, {
120
- ...options,
121
- siteUrl: canUseSiteUrl ? siteConfig.url : nitroOrigin,
122
- trailingSlash: siteConfig.trailingSlash,
123
- base: nuxtBase
124
- });
125
- };
126
- }
127
- function withSiteUrl(path, options = {}) {
128
- const siteConfig = useSiteConfig();
129
- if (!siteConfig.url && options.throwErrorOnMissingSiteUrl)
130
- throw new Error("Missing url in site config. Please add `{ site: { url: <url> } }` to nuxt.config.ts.");
131
- const nuxt = useNuxt();
132
- const base = nuxt.options.app.baseURL || nuxt.options.nitro.baseURL || "/";
133
- return resolveSitePath(path, {
134
- absolute: true,
135
- siteUrl: siteConfig.url || "",
136
- trailingSlash: siteConfig.trailingSlash,
137
- base,
138
- withBase: options.withBase
139
- });
140
- }
141
-
142
- export { createSitePathResolver, getSiteConfigStack, initSiteConfig, installNuxtSiteConfig, updateSiteConfig, useNitroOrigin, useSiteConfig, withSiteTrailingSlash, withSiteUrl };
1
+ export { c as createSitePathResolver, g as getSiteConfigStack, i as initSiteConfig, a as installNuxtSiteConfig, u as updateSiteConfig, e as useNitroOrigin, b as useSiteConfig, w as withSiteTrailingSlash, d as withSiteUrl } from './shared/nuxt-site-config-kit.B91Njd6f.mjs';
2
+ import '@nuxt/kit';
3
+ import 'site-config-stack/urls';
4
+ import 'std-env';
5
+ import 'pkg-types';
6
+ import 'site-config-stack';
7
+ import 'ufo';
@@ -0,0 +1,152 @@
1
+ 'use strict';
2
+
3
+ const kit = require('@nuxt/kit');
4
+ const urls = require('site-config-stack/urls');
5
+ const stdEnv = require('std-env');
6
+ const pkgTypes = require('pkg-types');
7
+ const siteConfigStack = require('site-config-stack');
8
+ const ufo = require('ufo');
9
+
10
+ async function initSiteConfig(nuxt = kit.tryUseNuxt()) {
11
+ if (!nuxt)
12
+ return;
13
+ let siteConfig = nuxt._siteConfig;
14
+ if (siteConfig)
15
+ return siteConfig;
16
+ siteConfig = siteConfigStack.createSiteConfigStack();
17
+ const rootDir = nuxt?.options.rootDir || process.cwd?.() || false;
18
+ siteConfig.push({
19
+ _context: "system",
20
+ _priority: -15,
21
+ name: rootDir ? rootDir.split("/").pop() : void 0,
22
+ env: process.env.NODE_ENV
23
+ });
24
+ if (rootDir) {
25
+ const pkgJson = await pkgTypes.readPackageJSON(rootDir);
26
+ if (pkgJson) {
27
+ siteConfig.push({
28
+ _context: "package.json",
29
+ _priority: -10,
30
+ name: pkgJson.name,
31
+ description: pkgJson.description
32
+ });
33
+ }
34
+ }
35
+ siteConfig.push({
36
+ _context: "vendorEnv",
37
+ _priority: -5,
38
+ url: [
39
+ // vercel
40
+ process.env.VERCEL_URL,
41
+ process.env.NUXT_ENV_VERCEL_URL,
42
+ // netlify
43
+ process.env.URL,
44
+ // cloudflare pages
45
+ process.env.CF_PAGES_URL
46
+ ].find((k) => Boolean(k)),
47
+ name: [
48
+ // vercel
49
+ process.env.NUXT_ENV_VERCEL_GIT_REPO_SLUG,
50
+ // netlify
51
+ process.env.SITE_NAME
52
+ ].find((k) => Boolean(k))
53
+ });
54
+ const runtimeConfig = nuxt.options.runtimeConfig;
55
+ const runtimeConfigEnvKeys = [
56
+ ...Object.entries(runtimeConfig.site || {}).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v]),
57
+ ...Object.entries([...Object.entries(runtimeConfig), ...Object.entries(runtimeConfig.public)]).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v])
58
+ ];
59
+ siteConfig.push({
60
+ _priority: -2,
61
+ _context: "legacyRuntimeConfig",
62
+ ...Object.fromEntries(runtimeConfigEnvKeys)
63
+ });
64
+ siteConfig.push({
65
+ _context: "buildEnv",
66
+ _priority: -1,
67
+ ...siteConfigStack.envSiteConfig(process.env)
68
+ });
69
+ nuxt._siteConfig = siteConfig;
70
+ return siteConfig;
71
+ }
72
+ async function installNuxtSiteConfig(nuxt = kit.tryUseNuxt()) {
73
+ await kit.installModule(await kit.resolvePath("nuxt-site-config"));
74
+ await initSiteConfig(nuxt);
75
+ }
76
+ function getSiteConfigStack(nuxt = kit.tryUseNuxt()) {
77
+ if (!nuxt)
78
+ throw new Error("Nuxt context is missing.");
79
+ if (!nuxt._siteConfig)
80
+ throw new Error("Site config is not initialized. Make sure you are running your module after nuxt-site-config.");
81
+ return nuxt._siteConfig;
82
+ }
83
+ function updateSiteConfig(input, nuxt = kit.tryUseNuxt()) {
84
+ const container = getSiteConfigStack(nuxt);
85
+ return container.push(input);
86
+ }
87
+ function useSiteConfig(nuxt = kit.tryUseNuxt()) {
88
+ const container = getSiteConfigStack(nuxt);
89
+ return container.get();
90
+ }
91
+
92
+ function useNitroOrigin() {
93
+ const cert = stdEnv.env.NITRO_SSL_CERT;
94
+ const key = stdEnv.env.NITRO_SSL_KEY;
95
+ let host = stdEnv.env.NITRO_HOST || stdEnv.env.HOST || false;
96
+ let port = stdEnv.env.NITRO_PORT || stdEnv.env.PORT || (stdEnv.isDevelopment ? 3e3 : false);
97
+ let protocol = cert && key || !stdEnv.isDevelopment ? "https" : "http";
98
+ if ((stdEnv.isDevelopment || stdEnv.env.prerender) && stdEnv.env.NUXT_VITE_NODE_OPTIONS) {
99
+ const origin = JSON.parse(stdEnv.env.NUXT_VITE_NODE_OPTIONS).baseURL.replace("/__nuxt_vite_node__", "");
100
+ host = ufo.withoutProtocol(origin);
101
+ protocol = origin.includes("https") ? "https" : "http";
102
+ }
103
+ if (typeof host === "string" && host.includes(":")) {
104
+ port = host.split(":").pop();
105
+ host = host.split(":")[0];
106
+ }
107
+ port = port ? `:${port}` : "";
108
+ return `${protocol}://${host}${port}/`;
109
+ }
110
+
111
+ function withSiteTrailingSlash(path) {
112
+ const siteConfig = useSiteConfig();
113
+ return urls.fixSlashes(siteConfig.trailingSlash, path);
114
+ }
115
+ function createSitePathResolver(options = {}, nuxt = kit.useNuxt()) {
116
+ const siteConfig = useSiteConfig();
117
+ const nitroOrigin = useNitroOrigin();
118
+ const canUseSiteUrl = (options.canonical !== false || stdEnv.env.prerender) && siteConfig.url;
119
+ const nuxtBase = nuxt.options.app.baseURL || "/";
120
+ return (path) => {
121
+ return urls.resolveSitePath(path, {
122
+ ...options,
123
+ siteUrl: canUseSiteUrl ? siteConfig.url : nitroOrigin,
124
+ trailingSlash: siteConfig.trailingSlash,
125
+ base: nuxtBase
126
+ });
127
+ };
128
+ }
129
+ function withSiteUrl(path, options = {}) {
130
+ const siteConfig = useSiteConfig();
131
+ if (!siteConfig.url && options.throwErrorOnMissingSiteUrl)
132
+ throw new Error("Missing url in site config. Please add `{ site: { url: <url> } }` to nuxt.config.ts.");
133
+ const nuxt = kit.useNuxt();
134
+ const base = nuxt.options.app.baseURL || nuxt.options.nitro.baseURL || "/";
135
+ return urls.resolveSitePath(path, {
136
+ absolute: true,
137
+ siteUrl: siteConfig.url || "",
138
+ trailingSlash: siteConfig.trailingSlash,
139
+ base,
140
+ withBase: options.withBase
141
+ });
142
+ }
143
+
144
+ exports.createSitePathResolver = createSitePathResolver;
145
+ exports.getSiteConfigStack = getSiteConfigStack;
146
+ exports.initSiteConfig = initSiteConfig;
147
+ exports.installNuxtSiteConfig = installNuxtSiteConfig;
148
+ exports.updateSiteConfig = updateSiteConfig;
149
+ exports.useNitroOrigin = useNitroOrigin;
150
+ exports.useSiteConfig = useSiteConfig;
151
+ exports.withSiteTrailingSlash = withSiteTrailingSlash;
152
+ exports.withSiteUrl = withSiteUrl;
@@ -0,0 +1,142 @@
1
+ import { tryUseNuxt, installModule, resolvePath, useNuxt } from '@nuxt/kit';
2
+ import { fixSlashes, resolveSitePath } from 'site-config-stack/urls';
3
+ import { env, isDevelopment } from 'std-env';
4
+ import { readPackageJSON } from 'pkg-types';
5
+ import { createSiteConfigStack, envSiteConfig } from 'site-config-stack';
6
+ import { withoutProtocol } from 'ufo';
7
+
8
+ async function initSiteConfig(nuxt = tryUseNuxt()) {
9
+ if (!nuxt)
10
+ return;
11
+ let siteConfig = nuxt._siteConfig;
12
+ if (siteConfig)
13
+ return siteConfig;
14
+ siteConfig = createSiteConfigStack();
15
+ const rootDir = nuxt?.options.rootDir || process.cwd?.() || false;
16
+ siteConfig.push({
17
+ _context: "system",
18
+ _priority: -15,
19
+ name: rootDir ? rootDir.split("/").pop() : void 0,
20
+ env: process.env.NODE_ENV
21
+ });
22
+ if (rootDir) {
23
+ const pkgJson = await readPackageJSON(rootDir);
24
+ if (pkgJson) {
25
+ siteConfig.push({
26
+ _context: "package.json",
27
+ _priority: -10,
28
+ name: pkgJson.name,
29
+ description: pkgJson.description
30
+ });
31
+ }
32
+ }
33
+ siteConfig.push({
34
+ _context: "vendorEnv",
35
+ _priority: -5,
36
+ url: [
37
+ // vercel
38
+ process.env.VERCEL_URL,
39
+ process.env.NUXT_ENV_VERCEL_URL,
40
+ // netlify
41
+ process.env.URL,
42
+ // cloudflare pages
43
+ process.env.CF_PAGES_URL
44
+ ].find((k) => Boolean(k)),
45
+ name: [
46
+ // vercel
47
+ process.env.NUXT_ENV_VERCEL_GIT_REPO_SLUG,
48
+ // netlify
49
+ process.env.SITE_NAME
50
+ ].find((k) => Boolean(k))
51
+ });
52
+ const runtimeConfig = nuxt.options.runtimeConfig;
53
+ const runtimeConfigEnvKeys = [
54
+ ...Object.entries(runtimeConfig.site || {}).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v]),
55
+ ...Object.entries([...Object.entries(runtimeConfig), ...Object.entries(runtimeConfig.public)]).filter(([k]) => k.startsWith("site")).map(([k, v]) => [k.replace(/^site/, ""), v])
56
+ ];
57
+ siteConfig.push({
58
+ _priority: -2,
59
+ _context: "legacyRuntimeConfig",
60
+ ...Object.fromEntries(runtimeConfigEnvKeys)
61
+ });
62
+ siteConfig.push({
63
+ _context: "buildEnv",
64
+ _priority: -1,
65
+ ...envSiteConfig(process.env)
66
+ });
67
+ nuxt._siteConfig = siteConfig;
68
+ return siteConfig;
69
+ }
70
+ async function installNuxtSiteConfig(nuxt = tryUseNuxt()) {
71
+ await installModule(await resolvePath("nuxt-site-config"));
72
+ await initSiteConfig(nuxt);
73
+ }
74
+ function getSiteConfigStack(nuxt = tryUseNuxt()) {
75
+ if (!nuxt)
76
+ throw new Error("Nuxt context is missing.");
77
+ if (!nuxt._siteConfig)
78
+ throw new Error("Site config is not initialized. Make sure you are running your module after nuxt-site-config.");
79
+ return nuxt._siteConfig;
80
+ }
81
+ function updateSiteConfig(input, nuxt = tryUseNuxt()) {
82
+ const container = getSiteConfigStack(nuxt);
83
+ return container.push(input);
84
+ }
85
+ function useSiteConfig(nuxt = tryUseNuxt()) {
86
+ const container = getSiteConfigStack(nuxt);
87
+ return container.get();
88
+ }
89
+
90
+ function useNitroOrigin() {
91
+ const cert = env.NITRO_SSL_CERT;
92
+ const key = env.NITRO_SSL_KEY;
93
+ let host = env.NITRO_HOST || env.HOST || false;
94
+ let port = env.NITRO_PORT || env.PORT || (isDevelopment ? 3e3 : false);
95
+ let protocol = cert && key || !isDevelopment ? "https" : "http";
96
+ if ((isDevelopment || env.prerender) && env.NUXT_VITE_NODE_OPTIONS) {
97
+ const origin = JSON.parse(env.NUXT_VITE_NODE_OPTIONS).baseURL.replace("/__nuxt_vite_node__", "");
98
+ host = withoutProtocol(origin);
99
+ protocol = origin.includes("https") ? "https" : "http";
100
+ }
101
+ if (typeof host === "string" && host.includes(":")) {
102
+ port = host.split(":").pop();
103
+ host = host.split(":")[0];
104
+ }
105
+ port = port ? `:${port}` : "";
106
+ return `${protocol}://${host}${port}/`;
107
+ }
108
+
109
+ function withSiteTrailingSlash(path) {
110
+ const siteConfig = useSiteConfig();
111
+ return fixSlashes(siteConfig.trailingSlash, path);
112
+ }
113
+ function createSitePathResolver(options = {}, nuxt = useNuxt()) {
114
+ const siteConfig = useSiteConfig();
115
+ const nitroOrigin = useNitroOrigin();
116
+ const canUseSiteUrl = (options.canonical !== false || env.prerender) && siteConfig.url;
117
+ const nuxtBase = nuxt.options.app.baseURL || "/";
118
+ return (path) => {
119
+ return resolveSitePath(path, {
120
+ ...options,
121
+ siteUrl: canUseSiteUrl ? siteConfig.url : nitroOrigin,
122
+ trailingSlash: siteConfig.trailingSlash,
123
+ base: nuxtBase
124
+ });
125
+ };
126
+ }
127
+ function withSiteUrl(path, options = {}) {
128
+ const siteConfig = useSiteConfig();
129
+ if (!siteConfig.url && options.throwErrorOnMissingSiteUrl)
130
+ throw new Error("Missing url in site config. Please add `{ site: { url: <url> } }` to nuxt.config.ts.");
131
+ const nuxt = useNuxt();
132
+ const base = nuxt.options.app.baseURL || nuxt.options.nitro.baseURL || "/";
133
+ return resolveSitePath(path, {
134
+ absolute: true,
135
+ siteUrl: siteConfig.url || "",
136
+ trailingSlash: siteConfig.trailingSlash,
137
+ base,
138
+ withBase: options.withBase
139
+ });
140
+ }
141
+
142
+ export { installNuxtSiteConfig as a, useSiteConfig as b, createSitePathResolver as c, withSiteUrl as d, useNitroOrigin as e, getSiteConfigStack as g, initSiteConfig as i, updateSiteConfig as u, withSiteTrailingSlash as w };
package/dist/urls.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
  require('@nuxt/kit');
4
4
  require('site-config-stack/urls');
5
5
  require('std-env');
6
- const urls = require('./index.cjs');
6
+ const urls = require('./shared/nuxt-site-config-kit.B3BiEa0J.cjs');
7
7
  require('pkg-types');
8
8
  require('site-config-stack');
9
9
  require('ufo');
package/dist/urls.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import '@nuxt/kit';
2
2
  import 'site-config-stack/urls';
3
3
  import 'std-env';
4
- export { createSitePathResolver, withSiteTrailingSlash, withSiteUrl } from './index.mjs';
4
+ export { c as createSitePathResolver, w as withSiteTrailingSlash, d as withSiteUrl } from './shared/nuxt-site-config-kit.B91Njd6f.mjs';
5
5
  import 'pkg-types';
6
6
  import 'site-config-stack';
7
7
  import 'ufo';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-site-config-kit",
3
3
  "type": "module",
4
- "version": "3.1.6",
4
+ "version": "3.1.8",
5
5
  "description": "Shared site configuration build-time utilities for Nuxt 3 modules.",
6
6
  "license": "MIT",
7
7
  "funding": "https://github.com/sponsors/harlan-zw",
@@ -37,14 +37,14 @@
37
37
  "urls.d.ts"
38
38
  ],
39
39
  "dependencies": {
40
- "@nuxt/kit": "^3.16.0",
40
+ "@nuxt/kit": "^3.16.2",
41
41
  "pkg-types": "^2.1.0",
42
- "std-env": "^3.8.1",
42
+ "std-env": "^3.9.0",
43
43
  "ufo": "^1.5.4",
44
- "site-config-stack": "3.1.6"
44
+ "site-config-stack": "3.1.8"
45
45
  },
46
46
  "devDependencies": {
47
- "@nuxt/schema": "^3.16.0"
47
+ "@nuxt/schema": "^3.16.2"
48
48
  },
49
49
  "scripts": {
50
50
  "lint": "eslint . --fix",