@nuxtjs/seo 2.0.2 → 2.1.0

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/content.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './dist/content'
package/dist/const.cjs ADDED
@@ -0,0 +1,95 @@
1
+ 'use strict';
2
+
3
+ const NuxtSEO = {
4
+ slug: "nuxt-seo",
5
+ label: "Nuxt SEO",
6
+ icon: "i-carbon-3rd-party-connected",
7
+ description: "The all-in-one module that brings it all together.",
8
+ repo: "harlan-zw/nuxt-seo",
9
+ npm: "@nuxtjs/seo"
10
+ };
11
+ const SiteConfigModule = {
12
+ slug: "site-config",
13
+ label: "Site Config",
14
+ icon: "i-carbon-settings-check",
15
+ description: "Powerful build and runtime shared site configuration for Nuxt modules.",
16
+ repo: "harlan-zw/nuxt-site-config",
17
+ npm: "nuxt-site-config"
18
+ };
19
+ const RobotsModule = {
20
+ slug: "robots",
21
+ label: "Robots",
22
+ icon: "i-carbon-bot",
23
+ description: "Tame the robots crawling and indexing your site with ease.",
24
+ repo: "nuxt-modules/robots",
25
+ npm: "@nuxtjs/robots"
26
+ };
27
+ const SitemapModule = {
28
+ slug: "sitemap",
29
+ label: "Sitemap",
30
+ icon: "i-carbon-load-balancer-application",
31
+ description: "Powerfully flexible XML Sitemaps that integrate seamlessly.",
32
+ repo: "nuxt-modules/sitemap",
33
+ npm: "@nuxtjs/sitemap"
34
+ };
35
+ const OgImageModule = {
36
+ slug: "og-image",
37
+ label: "OG Image",
38
+ icon: "i-carbon-image-search",
39
+ description: "Generate OG Images with Vue templates in Nuxt.",
40
+ repo: "nuxt-modules/og-image",
41
+ npm: "nuxt-og-image"
42
+ };
43
+ const LinkCheckerModule = {
44
+ slug: "link-checker",
45
+ label: "Link Checker",
46
+ icon: "i-carbon-cloud-satellite-link",
47
+ description: "Find and magically fix links that may be negatively effecting your SEO.",
48
+ repo: "harlan-zw/nuxt-link-checker",
49
+ npm: "nuxt-link-checker"
50
+ };
51
+ const SeoUtilsModule = {
52
+ slug: "seo-utils",
53
+ label: "SEO Utils",
54
+ icon: "i-carbon-tools",
55
+ description: "SEO utilities to improve your Nuxt sites discoverability and shareability.",
56
+ repo: "harlan-zw/nuxt-seo-utils",
57
+ npm: "nuxt-seo-utils"
58
+ };
59
+ const SchemaOrgModule = {
60
+ slug: "schema-org",
61
+ label: "Schema.org",
62
+ icon: "i-carbon-chart-relationship",
63
+ description: "The quickest and easiest way to build Schema.org graphs.",
64
+ repo: "harlan-zw/nuxt-schema-org",
65
+ npm: "nuxt-schema-org"
66
+ };
67
+ const modules = [
68
+ NuxtSEO,
69
+ RobotsModule,
70
+ SitemapModule,
71
+ OgImageModule,
72
+ SchemaOrgModule,
73
+ LinkCheckerModule,
74
+ SeoUtilsModule,
75
+ SiteConfigModule
76
+ ];
77
+ const explicitModules = [
78
+ RobotsModule,
79
+ SitemapModule,
80
+ OgImageModule,
81
+ SchemaOrgModule,
82
+ LinkCheckerModule,
83
+ SeoUtilsModule
84
+ ];
85
+
86
+ exports.LinkCheckerModule = LinkCheckerModule;
87
+ exports.NuxtSEO = NuxtSEO;
88
+ exports.OgImageModule = OgImageModule;
89
+ exports.RobotsModule = RobotsModule;
90
+ exports.SchemaOrgModule = SchemaOrgModule;
91
+ exports.SeoUtilsModule = SeoUtilsModule;
92
+ exports.SiteConfigModule = SiteConfigModule;
93
+ exports.SitemapModule = SitemapModule;
94
+ exports.explicitModules = explicitModules;
95
+ exports.modules = modules;
@@ -0,0 +1,20 @@
1
+ interface NuxtSEOModule {
2
+ slug: 'nuxt-seo' | 'site-config' | 'robots' | 'sitemap' | 'og-image' | 'link-checker' | 'seo-utils' | 'schema-org';
3
+ label: string;
4
+ icon: string;
5
+ description: string;
6
+ repo: string;
7
+ npm: string;
8
+ }
9
+ declare const NuxtSEO: NuxtSEOModule;
10
+ declare const SiteConfigModule: NuxtSEOModule;
11
+ declare const RobotsModule: NuxtSEOModule;
12
+ declare const SitemapModule: NuxtSEOModule;
13
+ declare const OgImageModule: NuxtSEOModule;
14
+ declare const LinkCheckerModule: NuxtSEOModule;
15
+ declare const SeoUtilsModule: NuxtSEOModule;
16
+ declare const SchemaOrgModule: NuxtSEOModule;
17
+ declare const modules: NuxtSEOModule[];
18
+ declare const explicitModules: NuxtSEOModule[];
19
+
20
+ export { LinkCheckerModule, NuxtSEO, type NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, explicitModules, modules };
package/dist/const.d.mts CHANGED
@@ -15,5 +15,6 @@ declare const LinkCheckerModule: NuxtSEOModule;
15
15
  declare const SeoUtilsModule: NuxtSEOModule;
16
16
  declare const SchemaOrgModule: NuxtSEOModule;
17
17
  declare const modules: NuxtSEOModule[];
18
+ declare const explicitModules: NuxtSEOModule[];
18
19
 
19
- export { LinkCheckerModule, NuxtSEO, type NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, modules };
20
+ export { LinkCheckerModule, NuxtSEO, type NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, explicitModules, modules };
package/dist/const.d.ts CHANGED
@@ -15,5 +15,6 @@ declare const LinkCheckerModule: NuxtSEOModule;
15
15
  declare const SeoUtilsModule: NuxtSEOModule;
16
16
  declare const SchemaOrgModule: NuxtSEOModule;
17
17
  declare const modules: NuxtSEOModule[];
18
+ declare const explicitModules: NuxtSEOModule[];
18
19
 
19
- export { LinkCheckerModule, NuxtSEO, type NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, modules };
20
+ export { LinkCheckerModule, NuxtSEO, type NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, explicitModules, modules };
package/dist/const.mjs CHANGED
@@ -72,5 +72,13 @@ const modules = [
72
72
  SeoUtilsModule,
73
73
  SiteConfigModule
74
74
  ];
75
+ const explicitModules = [
76
+ RobotsModule,
77
+ SitemapModule,
78
+ OgImageModule,
79
+ SchemaOrgModule,
80
+ LinkCheckerModule,
81
+ SeoUtilsModule
82
+ ];
75
83
 
76
- export { LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, modules };
84
+ export { LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, explicitModules, modules };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ const content$2 = require('@nuxtjs/robots/content');
4
+ const content$3 = require('@nuxtjs/sitemap/content');
5
+ const content = require('nuxt-og-image/content');
6
+ const content$1 = require('nuxt-schema-org/content');
7
+
8
+ function asSeoCollection(collection) {
9
+ const fns = [content.asOgImageCollection, content$1.asSchemaOrgCollection, content$2.asRobotsCollection, content$3.asSitemapCollection];
10
+ return fns.reduce((collection2, fn) => fn(collection2), collection);
11
+ }
12
+
13
+ exports.asSeoCollection = asSeoCollection;
@@ -0,0 +1,6 @@
1
+ import { Collection } from '@nuxt/content';
2
+ import { ZodRawShape } from 'zod';
3
+
4
+ declare function asSeoCollection<T extends ZodRawShape>(collection: Collection<T>): Collection<T>;
5
+
6
+ export { asSeoCollection };
@@ -0,0 +1,6 @@
1
+ import { Collection } from '@nuxt/content';
2
+ import { ZodRawShape } from 'zod';
3
+
4
+ declare function asSeoCollection<T extends ZodRawShape>(collection: Collection<T>): Collection<T>;
5
+
6
+ export { asSeoCollection };
@@ -0,0 +1,6 @@
1
+ import { Collection } from '@nuxt/content';
2
+ import { ZodRawShape } from 'zod';
3
+
4
+ declare function asSeoCollection<T extends ZodRawShape>(collection: Collection<T>): Collection<T>;
5
+
6
+ export { asSeoCollection };
@@ -0,0 +1,11 @@
1
+ import { asRobotsCollection } from '@nuxtjs/robots/content';
2
+ import { asSitemapCollection } from '@nuxtjs/sitemap/content';
3
+ import { asOgImageCollection } from 'nuxt-og-image/content';
4
+ import { asSchemaOrgCollection } from 'nuxt-schema-org/content';
5
+
6
+ function asSeoCollection(collection) {
7
+ const fns = [asOgImageCollection, asSchemaOrgCollection, asRobotsCollection, asSitemapCollection];
8
+ return fns.reduce((collection2, fn) => fn(collection2), collection);
9
+ }
10
+
11
+ export { asSeoCollection };
package/dist/module.cjs CHANGED
@@ -1,5 +1,29 @@
1
- module.exports = function(...args) {
2
- return import('./module.mjs').then(m => m.default.call(this, ...args))
3
- }
4
- const _meta = module.exports.meta = require('./module.json')
5
- module.exports.getMeta = () => Promise.resolve(_meta)
1
+ 'use strict';
2
+
3
+ const kit = require('@nuxt/kit');
4
+ const _const = require('./const.cjs');
5
+
6
+ const module$1 = kit.defineNuxtModule({
7
+ meta: {
8
+ name: "nuxtseo",
9
+ compatibility: {
10
+ nuxt: ">=3.7.0",
11
+ bridge: false
12
+ }
13
+ },
14
+ defaults: {
15
+ enabled: true
16
+ },
17
+ async setup(config, nuxt) {
18
+ if (!config.enabled) {
19
+ return;
20
+ }
21
+ for (const module of _const.modules) {
22
+ if (module.npm !== "@nuxtjs/seo") {
23
+ await kit.installModule(await kit.resolvePath(module.npm), {}, nuxt);
24
+ }
25
+ }
26
+ }
27
+ });
28
+
29
+ module.exports = module$1;
@@ -0,0 +1,11 @@
1
+ import * as _nuxt_schema from '@nuxt/schema';
2
+
3
+ interface ModuleOptions {
4
+ /**
5
+ * Whether the module should be loaded.
6
+ */
7
+ enabled: boolean;
8
+ }
9
+ declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;
10
+
11
+ export { type ModuleOptions, _default as default };
package/dist/module.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "bridge": false
6
6
  },
7
7
  "configKey": "nuxtseo",
8
- "version": "2.0.1",
8
+ "version": "2.0.3",
9
9
  "builder": {
10
10
  "@nuxt/module-builder": "0.8.4",
11
11
  "unbuild": "2.0.0"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxtjs/seo",
3
3
  "type": "module",
4
- "version": "2.0.2",
4
+ "version": "2.1.0",
5
5
  "description": "The all-in-one SEO layer for Nuxt 3.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",
@@ -27,54 +27,61 @@
27
27
  "./const": {
28
28
  "types": "./dist/const.d.ts",
29
29
  "import": "./dist/const.mjs"
30
+ },
31
+ "./content": {
32
+ "types": "./dist/content.d.ts",
33
+ "import": "./dist/content.mjs"
30
34
  }
31
35
  },
32
36
  "main": "./dist/module.cjs",
33
37
  "types": "./dist/types.d.ts",
38
+ "typesVersions": {
39
+ "*": {
40
+ "content": [
41
+ "dist/content"
42
+ ]
43
+ }
44
+ },
34
45
  "files": [
35
46
  "const.d.ts",
47
+ "content.d.ts",
36
48
  "dist"
37
49
  ],
38
50
  "dependencies": {
39
- "@nuxt/kit": "3.14.1592",
40
- "@nuxtjs/robots": "^5.0.0",
41
- "@nuxtjs/sitemap": "^7.0.0",
42
- "nuxt-link-checker": "^4.0.0",
43
- "nuxt-og-image": "^4.0.0",
44
- "nuxt-schema-org": "^4.0.0",
45
- "nuxt-seo-utils": "^6.0.0",
46
- "nuxt-site-config": "^3.0.4"
51
+ "@nuxt/kit": "^3.15.2",
52
+ "@nuxtjs/robots": "^5.2.2",
53
+ "@nuxtjs/sitemap": "^7.2.2",
54
+ "nuxt-link-checker": "^4.1.0",
55
+ "nuxt-og-image": "^4.1.1",
56
+ "nuxt-schema-org": "^4.1.1",
57
+ "nuxt-seo-utils": "^6.0.8",
58
+ "nuxt-site-config": "^3.0.6"
47
59
  },
48
60
  "devDependencies": {
49
- "@antfu/eslint-config": "^3.9.2",
61
+ "@antfu/eslint-config": "^3.14.0",
50
62
  "@nuxt/module-builder": "^0.8.4",
51
- "@nuxt/schema": "3.14.1592",
52
- "@nuxt/test-utils": "^3.14.3",
53
- "@nuxtjs/i18n": "^9.1.0",
63
+ "@nuxt/schema": "3.15.2",
64
+ "@nuxt/test-utils": "^3.15.4",
65
+ "@nuxtjs/i18n": "^9.1.1",
54
66
  "@vue/test-utils": "^2.4.6",
55
- "bumpp": "^9.7.1",
56
- "eslint": "^9.15.0",
57
- "execa": "^9.5.1",
58
- "happy-dom": "^15.11.6",
59
- "nitropack": "^2.10.2",
60
- "nuxt": "3.14.1592",
67
+ "bumpp": "^9.10.1",
68
+ "eslint": "^9.18.0",
69
+ "execa": "^9.5.2",
70
+ "happy-dom": "^16.6.0",
71
+ "nitropack": "^2.10.4",
72
+ "nuxt": "3.15.2",
61
73
  "typescript": "5.6.3",
62
- "vitest": "^2.1.5"
63
- },
64
- "build": {
65
- "externals": [
66
- "ofetch",
67
- "consola/utils"
68
- ]
74
+ "vitest": "^3.0.2"
69
75
  },
70
76
  "resolutions": {
71
- "@nuxt/kit": "3.14.1592",
72
- "nuxt": "3.14.1592",
73
- "ofetch": "1.4.1",
74
- "tailwindcss": "4.0.0-alpha.24",
75
- "vue": "3.5.12",
76
- "vue-router": "4.4.5",
77
- "typescript": "5.6.3"
77
+ "typescript": "5.6.3",
78
+ "@tailwindcss/postcss": "4.0.0-beta.9",
79
+ "@tailwindcss/vite": "4.0.0-beta.9",
80
+ "tailwindcss": "4.0.0-beta.9",
81
+ "@nuxt/ui": "3.0.0-alpha.11",
82
+ "@nuxt/ui-pro": "3.0.0-alpha.11",
83
+ "tailwind-variants": "0.3.0",
84
+ "node-fetch-native": "1.6.6"
78
85
  },
79
86
  "publishConfig": {
80
87
  "resolutions": {},
@@ -85,7 +92,7 @@
85
92
  "build": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxt-module-build build",
86
93
  "dev": "nuxi dev playground",
87
94
  "dev:docs": "nuxi dev docs",
88
- "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
95
+ "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare",
89
96
  "lint": "eslint . --fix",
90
97
  "release": "pnpm build && bumpp && pnpm -r publish --access public",
91
98
  "test": " pnpm dev:prepare && nuxi prepare test/fixtures/basic && nuxi prepare test/fixtures/i18n && vitest",