@nuxtjs/seo 4.0.2 → 5.0.2

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/const.d.mts CHANGED
@@ -1,26 +1 @@
1
- interface NuxtSEOModule {
2
- slug: 'nuxt-seo' | 'site-config' | 'robots' | 'sitemap' | 'og-image' | 'link-checker' | 'seo-utils' | 'schema-org' | 'skew-protection' | 'ai-ready' | 'ai-kit';
3
- label: string;
4
- icon: string;
5
- description: string;
6
- repo: string;
7
- npm: string;
8
- pro?: boolean;
9
- playgrounds?: Record<string, string>;
10
- }
11
- declare const NuxtSEO: NuxtSEOModule;
12
- declare const SiteConfigModule: NuxtSEOModule;
13
- declare const RobotsModule: NuxtSEOModule;
14
- declare const SitemapModule: NuxtSEOModule;
15
- declare const OgImageModule: NuxtSEOModule;
16
- declare const LinkCheckerModule: NuxtSEOModule;
17
- declare const SeoUtilsModule: NuxtSEOModule;
18
- declare const SchemaOrgModule: NuxtSEOModule;
19
- declare const SkewProtectionModule: NuxtSEOModule;
20
- declare const AiReadyModule: NuxtSEOModule;
21
- declare const modules: NuxtSEOModule[];
22
- declare const normalModules: NuxtSEOModule[];
23
- declare const proModules: NuxtSEOModule[];
24
-
25
- export { AiReadyModule, LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules };
26
- export type { NuxtSEOModule };
1
+ export { AiReadyModule, LinkCheckerModule, NuxtSEO, NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules } from 'nuxtseo-shared/const';
package/dist/const.d.ts CHANGED
@@ -1,26 +1 @@
1
- interface NuxtSEOModule {
2
- slug: 'nuxt-seo' | 'site-config' | 'robots' | 'sitemap' | 'og-image' | 'link-checker' | 'seo-utils' | 'schema-org' | 'skew-protection' | 'ai-ready' | 'ai-kit';
3
- label: string;
4
- icon: string;
5
- description: string;
6
- repo: string;
7
- npm: string;
8
- pro?: boolean;
9
- playgrounds?: Record<string, string>;
10
- }
11
- declare const NuxtSEO: NuxtSEOModule;
12
- declare const SiteConfigModule: NuxtSEOModule;
13
- declare const RobotsModule: NuxtSEOModule;
14
- declare const SitemapModule: NuxtSEOModule;
15
- declare const OgImageModule: NuxtSEOModule;
16
- declare const LinkCheckerModule: NuxtSEOModule;
17
- declare const SeoUtilsModule: NuxtSEOModule;
18
- declare const SchemaOrgModule: NuxtSEOModule;
19
- declare const SkewProtectionModule: NuxtSEOModule;
20
- declare const AiReadyModule: NuxtSEOModule;
21
- declare const modules: NuxtSEOModule[];
22
- declare const normalModules: NuxtSEOModule[];
23
- declare const proModules: NuxtSEOModule[];
24
-
25
- export { AiReadyModule, LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules };
26
- export type { NuxtSEOModule };
1
+ export { AiReadyModule, LinkCheckerModule, NuxtSEO, NuxtSEOModule, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules } from 'nuxtseo-shared/const';
package/dist/const.mjs CHANGED
@@ -1,140 +1 @@
1
- const NuxtSEO = {
2
- slug: "nuxt-seo",
3
- label: "Nuxt SEO",
4
- icon: "i-carbon-3rd-party-connected",
5
- description: "The all-in-one module that brings it all together.",
6
- repo: "harlan-zw/nuxt-seo",
7
- npm: "@nuxtjs/seo",
8
- playgrounds: {
9
- basic: "https://stackblitz.com/edit/nuxt-starter-zycxux?file=public%2F_robots.txt",
10
- i18n: "https://stackblitz.com/edit/nuxt-starter-pnej8lvb?file=public%2F_robots.txt"
11
- }
12
- };
13
- const SiteConfigModule = {
14
- slug: "site-config",
15
- label: "Site Config",
16
- icon: "i-carbon-settings-check",
17
- description: "Powerful build and runtime shared site configuration for Nuxt modules.",
18
- repo: "harlan-zw/nuxt-site-config",
19
- npm: "nuxt-site-config",
20
- playgrounds: {
21
- basic: "https://stackblitz.com/edit/nuxt-starter-zycxux?file=public%2F_robots.txt"
22
- }
23
- };
24
- const RobotsModule = {
25
- slug: "robots",
26
- label: "Robots",
27
- icon: "i-carbon-bot",
28
- description: "Tame the robots crawling and indexing your site with ease.",
29
- repo: "nuxt-modules/robots",
30
- npm: "@nuxtjs/robots",
31
- playgrounds: {
32
- basic: "https://stackblitz.com/edit/nuxt-starter-zycxux?file=public%2F_robots.txt",
33
- i18n: "https://stackblitz.com/edit/nuxt-starter-pnej8lvb?file=public%2F_robots.txt"
34
- }
35
- };
36
- const SitemapModule = {
37
- slug: "sitemap",
38
- label: "Sitemap",
39
- icon: "i-carbon-load-balancer-application",
40
- description: "Powerfully flexible XML Sitemaps that integrate seamlessly.",
41
- repo: "nuxt-modules/sitemap",
42
- npm: "@nuxtjs/sitemap",
43
- playgrounds: {
44
- basic: "https://stackblitz.com/edit/nuxt-starter-dyraxc?file=server%2Fapi%2F_sitemap-urls.ts",
45
- i18n: "https://stackblitz.com/edit/nuxt-starter-jwuie4?file=app.vue",
46
- manualChunking: "https://stackblitz.com/edit/nuxt-starter-umyso3?file=nuxt.config.ts",
47
- nuxtContent: "https://stackblitz.com/edit/nuxt-starter-a5qk3s?file=nuxt.config.ts"
48
- }
49
- };
50
- const OgImageModule = {
51
- slug: "og-image",
52
- label: "OG Image",
53
- icon: "i-carbon-image-search",
54
- description: "Generate OG Images with Vue templates in Nuxt.",
55
- repo: "nuxt-modules/og-image",
56
- npm: "nuxt-og-image",
57
- playgrounds: {
58
- basic: "https://stackblitz.com/edit/nuxt-starter-pxs3wk?file=pages/index.vue",
59
- i18n: "https://stackblitz.com/edit/nuxt-starter-uw7pqmxg?file=nuxt.config.ts",
60
- nuxtContent2: "https://stackblitz.com/edit/github-hgunsf?file=package.json",
61
- nuxtContent3: "https://stackblitz.com/edit/github-hgunsf-wd8esdec"
62
- }
63
- };
64
- const LinkCheckerModule = {
65
- slug: "link-checker",
66
- label: "Link Checker",
67
- icon: "i-carbon-cloud-satellite-link",
68
- description: "Find and magically fix links that may be negatively effecting your SEO.",
69
- repo: "harlan-zw/nuxt-link-checker",
70
- npm: "nuxt-link-checker",
71
- playgrounds: {
72
- basic: "https://stackblitz.com/edit/nuxt-starter-r2wzt1?file=nuxt.config.ts"
73
- }
74
- };
75
- const SeoUtilsModule = {
76
- slug: "seo-utils",
77
- label: "SEO Utils",
78
- icon: "i-carbon-tools",
79
- description: "SEO utilities to improve your Nuxt sites discoverability and shareability.",
80
- repo: "harlan-zw/nuxt-seo-utils",
81
- npm: "nuxt-seo-utils",
82
- playgrounds: {
83
- basic: "https://stackblitz.com/edit/nuxt-starter-vbay3q?file=app.vue"
84
- }
85
- };
86
- const SchemaOrgModule = {
87
- slug: "schema-org",
88
- label: "Schema.org",
89
- icon: "i-carbon-chart-relationship",
90
- description: "The quickest and easiest way to build Schema.org graphs.",
91
- repo: "harlan-zw/nuxt-schema-org",
92
- npm: "nuxt-schema-org",
93
- playgrounds: {
94
- basic: "https://stackblitz.com/edit/nuxt-starter-z9np1t?file=app.vue"
95
- }
96
- };
97
- const SkewProtectionModule = {
98
- slug: "skew-protection",
99
- npm: "nuxt-skew-protection",
100
- repo: "nuxt-seo-pro/nuxt-skew-protection",
101
- description: "Solve Nuxt version skews with persistent assets and instant updates.",
102
- label: "Skew Protection",
103
- icon: "i-carbon-version",
104
- pro: true
105
- };
106
- const AiReadyModule = {
107
- slug: "ai-ready",
108
- npm: "nuxt-ai-ready",
109
- repo: "nuxt-seo-pro/nuxt-ai-ready",
110
- description: "Best practice AI & LLM discoverability for Nuxt sites.",
111
- label: "AI Ready",
112
- icon: "i-carbon-ai-label",
113
- pro: true
114
- };
115
- const modules = [
116
- NuxtSEO,
117
- RobotsModule,
118
- SitemapModule,
119
- OgImageModule,
120
- SchemaOrgModule,
121
- LinkCheckerModule,
122
- SeoUtilsModule,
123
- SiteConfigModule,
124
- SkewProtectionModule,
125
- AiReadyModule
126
- ];
127
- const normalModules = [
128
- RobotsModule,
129
- SitemapModule,
130
- OgImageModule,
131
- SchemaOrgModule,
132
- LinkCheckerModule,
133
- SeoUtilsModule
134
- ];
135
- const proModules = [
136
- SkewProtectionModule,
137
- AiReadyModule
138
- ];
139
-
140
- export { AiReadyModule, LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules };
1
+ export { AiReadyModule, LinkCheckerModule, NuxtSEO, OgImageModule, RobotsModule, SchemaOrgModule, SeoUtilsModule, SiteConfigModule, SitemapModule, SkewProtectionModule, modules, normalModules, proModules } from 'nuxtseo-shared/const';
@@ -1,5 +1,9 @@
1
1
  import { Collection } from '@nuxt/content';
2
2
 
3
+ /**
4
+ * @deprecated Use `defineRobotsSchema()`, `defineSitemapSchema()`, `defineOgImageSchema()`, and `defineSchemaOrgSchema()` from each module instead.
5
+ * See https://nuxtseo.com/docs/nuxt-seo/guides/nuxt-content
6
+ */
3
7
  declare function asSeoCollection<T>(collection: Collection<T>): Collection<T>;
4
8
 
5
9
  export { asSeoCollection };
package/dist/content.d.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  import { Collection } from '@nuxt/content';
2
2
 
3
+ /**
4
+ * @deprecated Use `defineRobotsSchema()`, `defineSitemapSchema()`, `defineOgImageSchema()`, and `defineSchemaOrgSchema()` from each module instead.
5
+ * See https://nuxtseo.com/docs/nuxt-seo/guides/nuxt-content
6
+ */
3
7
  declare function asSeoCollection<T>(collection: Collection<T>): Collection<T>;
4
8
 
5
9
  export { asSeoCollection };
package/dist/content.mjs CHANGED
@@ -4,6 +4,7 @@ import { asOgImageCollection } from 'nuxt-og-image/content';
4
4
  import { asSchemaOrgCollection } from 'nuxt-schema-org/content';
5
5
 
6
6
  function asSeoCollection(collection) {
7
+ console.warn("[nuxt-seo] `asSeoCollection()` is deprecated. Import `defineXxxSchema()` from each module and compose them in your collection schema instead. See https://nuxtseo.com/docs/nuxt-seo/guides/nuxt-content");
7
8
  const fns = [asOgImageCollection, asSchemaOrgCollection, asRobotsCollection, asSitemapCollection];
8
9
  return fns.reduce((collection2, fn) => fn(collection2), collection);
9
10
  }
package/dist/module.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "nuxt": ">=3.16.0"
5
5
  },
6
6
  "configKey": "nuxtseo",
7
- "version": "4.0.2",
7
+ "version": "5.0.2",
8
8
  "builder": {
9
9
  "@nuxt/module-builder": "1.0.2",
10
10
  "unbuild": "3.6.1"
package/dist/module.mjs CHANGED
@@ -9,28 +9,28 @@ const module$1 = defineNuxtModule({
9
9
  },
10
10
  moduleDependencies: {
11
11
  "@nuxtjs/robots": {
12
- version: "^5.5"
12
+ version: ">=5.5"
13
13
  },
14
14
  "@nuxtjs/sitemap": {
15
- version: "^7.4"
15
+ version: ">=7.4"
16
16
  },
17
17
  "nuxt-link-checker": {
18
- version: "^4.3"
18
+ version: ">=4.3"
19
19
  },
20
20
  "nuxt-og-image": {
21
21
  version: ">=6.0"
22
22
  },
23
23
  "nuxt-schema-org": {
24
- version: "^5.0"
24
+ version: ">=5.0"
25
25
  },
26
26
  "nuxt-seo-utils": {
27
- version: "^7.0"
27
+ version: ">=7.0"
28
28
  },
29
29
  "nuxt-site-config": {
30
- version: "^3.2"
30
+ version: ">=3.2"
31
31
  },
32
32
  "@nuxtjs/i18n": {
33
- version: "^10.0",
33
+ version: ">=10.0",
34
34
  optional: true
35
35
  }
36
36
  },
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxtjs/seo",
3
3
  "type": "module",
4
- "version": "4.0.2",
4
+ "version": "5.0.2",
5
5
  "description": "Fully equipped Technical SEO for busy Nuxters.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",
@@ -13,7 +13,8 @@
13
13
  "homepage": "https://nuxtseo.com/",
14
14
  "repository": {
15
15
  "type": "git",
16
- "url": "git+https://github.com/harlan-zw/nuxt-seo.git"
16
+ "url": "git+https://github.com/harlan-zw/nuxt-seo.git",
17
+ "directory": "packages/nuxt-seo"
17
18
  },
18
19
  "bugs": {
19
20
  "url": "https://github.com/harlan-zw/nuxt-seo/issues"
@@ -48,46 +49,33 @@
48
49
  },
49
50
  "dependencies": {
50
51
  "@nuxt/kit": "^4.4.2",
51
- "@nuxtjs/robots": "^5.7.1",
52
- "@nuxtjs/sitemap": "^7.6.0",
53
- "nuxt-link-checker": "^4.3.9",
54
- "nuxt-og-image": "^6.0.5",
55
- "nuxt-schema-org": "^5.0.10",
56
- "nuxt-seo-utils": "^7.0.19",
57
- "nuxt-site-config": "^3.2.21"
52
+ "@nuxtjs/robots": "^6.0.6",
53
+ "@nuxtjs/sitemap": "^8.0.6",
54
+ "nuxt-link-checker": "^5.0.5",
55
+ "nuxt-og-image": "^6.2.6",
56
+ "nuxt-schema-org": "^6.0.4",
57
+ "nuxt-seo-utils": "^8.1.2",
58
+ "nuxt-site-config": "^4.0.7",
59
+ "nuxtseo-shared": "5.0.2"
58
60
  },
59
61
  "devDependencies": {
60
- "@antfu/eslint-config": "^7.7.3",
61
62
  "@arethetypeswrong/cli": "^0.18.2",
62
63
  "@nuxt/content": "^3.12.0",
63
64
  "@nuxt/module-builder": "^1.0.2",
64
65
  "@nuxt/schema": "^4.4.2",
65
66
  "@nuxt/test-utils": "^4.0.0",
66
- "@nuxtjs/i18n": "^10.2.3",
67
+ "@nuxtjs/i18n": "^10.2.4",
67
68
  "@resvg/resvg-js": "^2.6.2",
68
69
  "@types/jest-image-snapshot": "^6.4.1",
69
70
  "@vue/test-utils": "^2.4.6",
70
- "bumpp": "^11.0.1",
71
- "eslint": "^10.0.3",
72
- "eslint-plugin-harlanzw": "^0.6.0",
73
71
  "execa": "^9.6.1",
74
- "happy-dom": "^20.8.4",
72
+ "happy-dom": "^20.8.8",
75
73
  "jest-image-snapshot": "^6.5.2",
76
- "lint-staged": "^16.4.0",
77
- "nitropack": "^2.13.1",
74
+ "nitropack": "^2.13.2",
78
75
  "nuxt": "^4.4.2",
79
- "satori": "^0.25.0",
80
- "simple-git-hooks": "^2.13.1",
81
- "typescript": "^5.9.3",
82
- "vitest": "^4.1.0"
83
- },
84
- "simple-git-hooks": {
85
- "pre-commit": "pnpm exec lint-staged"
86
- },
87
- "lint-staged": {
88
- "*.{js,ts,mjs,cjs,vue}": [
89
- "pnpm exec eslint --fix"
90
- ]
76
+ "satori": "^0.26.0",
77
+ "typescript": "^6.0.2",
78
+ "vitest": "^4.1.2"
91
79
  },
92
80
  "publishConfig": {
93
81
  "resolutions": {},
@@ -98,13 +86,10 @@
98
86
  "build": "nuxt-module-build build",
99
87
  "dev": "nuxt dev playground",
100
88
  "dev:prepare": "nuxt-module-build prepare && nuxt prepare playground",
101
- "lint": "eslint .",
102
- "lint:fix": "eslint . --fix",
103
89
  "typecheck": "nuxt typecheck playground",
104
- "prepare:fixtures": "nuxt prepare test/fixtures/basic && nuxt prepare test/fixtures/i18n",
90
+ "prepare:fixtures": "nuxt prepare test/fixtures/basic && nuxt prepare test/fixtures/i18n && nuxt prepare test/fixtures/content",
105
91
  "test": "pnpm prepare:fixtures && vitest",
106
92
  "test:run": "pnpm prepare:fixtures && vitest run",
107
- "test:attw": "attw --pack",
108
- "release": "pnpm build && bumpp --output=CHANGELOG.md"
93
+ "test:attw": "attw --pack"
109
94
  }
110
95
  }
package/README.md DELETED
@@ -1,93 +0,0 @@
1
- <h1>@nuxtjs/seo</h1>
2
-
3
- [![npm version][npm-version-src]][npm-version-href]
4
- [![npm downloads][npm-downloads-src]][npm-downloads-href]
5
- [![License][license-src]][license-href]
6
- [![Nuxt][nuxt-src]][nuxt-href]
7
-
8
- > Fully equipped Technical SEO for busy Nuxters.
9
-
10
- Nuxt SEO combines 6 SEO modules and best practices into one module that requires minimal effort to configure.
11
-
12
- ## Modules
13
-
14
- - 🤖 [@nuxtjs/robots](https://github.com/nuxt-modules/robots) - Manage site crawling
15
- - 📄 [@nuxtjs/sitemap](https://github.com/nuxt-modules/sitemap) - Sitemap.xml Support
16
- - 🔎 [nuxt-schema-org](https://github.com/harlan-zw/nuxt-schema-org) - Generate Schema.org JSON-LD for SEO
17
- - △ [nuxt-seo-utils](https://github.com/harlan-zw/nuxt-seo-utils) - Experimental SEO meta features
18
- - 🖼️ [nuxt-og-image](https://github.com/nuxt-modules/og-image) - Generate dynamic social share images
19
- - ✅ [nuxt-link-checker](https://github.com/harlan-zw/nuxt-link-checker) - Check for broken links
20
-
21
- <p align="center">
22
- <table>
23
- <tbody>
24
- <td align="center">
25
- <sub>Made possible by my <a href="https://github.com/sponsors/harlan-zw">Sponsor Program 💖</a><br> Follow me <a href="https://twitter.com/harlan_zw">@harlan_zw</a> 🐦 • Join <a href="https://discord.gg/275MBUBvgP">Discord</a> for help</sub><br>
26
- </td>
27
- </tbody>
28
- </table>
29
- </p>
30
-
31
- ## Installation
32
-
33
- Install `@nuxtjs/seo` dependency to your project:
34
-
35
- ```sh
36
- npx nuxi@latest module add seo
37
- ```
38
-
39
- > [!TIP]
40
- > Generate an Agent Skill for this package using [skilld](https://github.com/harlan-zw/skilld):
41
- > ```bash
42
- > npx skilld add @nuxtjs/seo
43
- > ```
44
-
45
- Once installed check the [Default Module Features](https://nuxtseo.com/docs/nuxt-seo/guides/using-the-modules) guide
46
- for a quick start.
47
-
48
- ## Nuxt SEO Tools
49
-
50
- - [Meta Tag Checker](https://nuxtseo.com/tools/meta-tag-checker)
51
- - [Schema Validator](https://nuxtseo.com/tools/schema-validator)
52
- - [XML Sitemap Validator](https://nuxtseo.com/tools/xml-sitemap-validator)
53
- - [Robots.txt Validator](https://nuxtseo.com/tools/robots-txt-validator)
54
- - [Robots.txt Generator](https://nuxtseo.com/tools/robots-txt-generator)
55
- - [Social Share Debugger](https://nuxtseo.com/tools/social-share-debugger)
56
- - [HTML to Markdown](https://nuxtseo.com/tools/html-to-markdown)
57
- - [SERP Analyzer](https://nuxtseo.com/tools/serp-analyzer)
58
- - [Keyword Research](https://nuxtseo.com/tools/keyword-research)
59
- - [Domain Rankings](https://nuxtseo.com/tools/domain-rankings)
60
-
61
- ## Documentation
62
-
63
- [📖 Read the full documentation](https://nuxtseo.com/) for more information.
64
-
65
- ## StackBlitz
66
-
67
- For reproductions and demo environments, you can use the [Nuxt SEO Basic Reproduction](https://stackblitz.com/edit/nuxt-starter-gfrej6?file=nuxt.config.ts)
68
- template.
69
-
70
- ## Sponsors
71
-
72
- <p align="center">
73
- <a href="https://raw.githubusercontent.com/harlan-zw/static/main/sponsors.svg">
74
- <img src='https://raw.githubusercontent.com/harlan-zw/static/main/sponsors.svg'/>
75
- </a>
76
- </p>
77
-
78
- ## License
79
-
80
- Licensed under the [MIT license](https://github.com/harlan-zw/nuxt-seo/blob/main/LICENSE.md).
81
-
82
- <!-- Badges -->
83
- [npm-version-src]: https://img.shields.io/npm/v/@nuxtjs/seo/latest.svg?style=flat&colorA=18181B&colorB=28CF8D
84
- [npm-version-href]: https://npmjs.com/package/@nuxtjs/seo
85
-
86
- [npm-downloads-src]: https://img.shields.io/npm/dm/@nuxtjs/seo.svg?style=flat&colorA=18181B&colorB=28CF8D
87
- [npm-downloads-href]: https://npmjs.com/package/@nuxtjs/seo
88
-
89
- [license-src]: https://img.shields.io/github/license/harlan-zw/nuxt-seo.svg?style=flat&colorA=18181B&colorB=28CF8D
90
- [license-href]: https://github.com/harlan-zw/nuxt-seo/blob/main/LICENSE.md
91
-
92
- [nuxt-src]: https://img.shields.io/badge/Nuxt-18181B?logo=nuxt
93
- [nuxt-href]: https://nuxt.com