nuxt-seo-utils 8.6.0 → 8.6.1

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.
Files changed (29) hide show
  1. package/dist/cli.mjs +1 -1
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +2 -0
  4. package/dist/runtime/app/composables/schemaOrg.d.ts +2 -0
  5. package/dist/runtime/app/composables/schemaOrg.js +2 -0
  6. package/dist/runtime/app/composables/useBreadcrumbItems.js +3 -2
  7. package/dist/runtime/app/composables/useFallbackTitle.js +0 -8
  8. package/dist/runtime/app/logic/applyDefaults.js +1 -2
  9. package/dist/runtime/app/plugins/0.routeRules.d.ts +1 -1
  10. package/dist/runtime/app/plugins/0.routeRules.js +1 -1
  11. package/dist/runtime/app/plugins/1.absoluteImageUrls.server.d.ts +1 -1
  12. package/dist/runtime/app/plugins/1.absoluteImageUrls.server.js +1 -2
  13. package/dist/runtime/app/plugins/colorModeIcons.d.ts +1 -1
  14. package/dist/runtime/app/plugins/colorModeIcons.js +1 -1
  15. package/dist/runtime/app/plugins/defaults.d.ts +1 -1
  16. package/dist/runtime/app/plugins/defaultsWaitI18n.d.ts +1 -1
  17. package/dist/runtime/app/plugins/derivedTags.d.ts +1 -1
  18. package/dist/runtime/app/plugins/derivedTags.js +1 -2
  19. package/dist/runtime/app/plugins/inferSeoMetaPlugin.d.ts +1 -1
  20. package/dist/runtime/app/plugins/inferSeoMetaPlugin.js +1 -2
  21. package/dist/runtime/app/plugins/minifyScripts.server.d.ts +1 -1
  22. package/dist/runtime/app/plugins/minifyScripts.server.js +1 -2
  23. package/dist/runtime/app/plugins/siteConfig.d.ts +1 -1
  24. package/dist/runtime/app/plugins/siteConfig.js +1 -2
  25. package/dist/runtime/app/plugins/titles.d.ts +1 -1
  26. package/dist/runtime/app/plugins/titles.js +1 -2
  27. package/dist/runtime/app/plugins/titlesWaitI18n.d.ts +1 -1
  28. package/dist/runtime/app/plugins/titlesWaitI18n.js +1 -2
  29. package/package.json +1 -1
package/dist/cli.mjs CHANGED
@@ -9,7 +9,7 @@ import { p as pngToIco } from './shared/nuxt-seo-utils.NAV2YNQn.mjs';
9
9
  import 'node:buffer';
10
10
 
11
11
  const name = "nuxt-seo-utils";
12
- const version = "8.6.0";
12
+ const version = "8.6.1";
13
13
  const description = "SEO utilities to improve your Nuxt sites discoverability and shareability";
14
14
 
15
15
  const ICON_SIZES = [
package/dist/module.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "compatibility": {
5
5
  "nuxt": ">=3.16.0"
6
6
  },
7
- "version": "8.6.0",
7
+ "version": "8.6.1",
8
8
  "builder": {
9
9
  "@nuxt/module-builder": "1.0.3",
10
10
  "unbuild": "3.6.1"
package/dist/module.mjs CHANGED
@@ -1101,6 +1101,8 @@ const module$1 = defineNuxtModule({
1101
1101
  });
1102
1102
  }
1103
1103
  nuxt.options.alias["#seo-utils"] = runtimeDir;
1104
+ const hasSchemaOrg = hasNuxtModule("nuxt-schema-org") && nuxt.options.schemaOrg?.enable !== false;
1105
+ nuxt.options.alias["#seo-utils-schema"] = hasSchemaOrg ? resolve(runtimeDir, "./app/composables/schemaOrg") : resolve(runtimeDir, "./app/composables/polyfills");
1104
1106
  nuxt.options.runtimeConfig.public["nuxt-seo-utils-version"] = nuxt.options.runtimeConfig.public["nuxt-seo-utils-version"] || version || "";
1105
1107
  nuxt.options.runtimeConfig.public["seo-utils"] = defu(nuxt.options.runtimeConfig.public["seo-utils"] || {}, {
1106
1108
  canonicalQueryWhitelist: config.canonicalQueryWhitelist ?? [
@@ -0,0 +1,2 @@
1
+ export { useSchemaOrg } from '#schema-org/app/composables/useSchemaOrg';
2
+ export { defineBreadcrumb } from '@unhead/schema-org/vue';
@@ -0,0 +1,2 @@
1
+ export { useSchemaOrg } from "#schema-org/app/composables/useSchemaOrg";
2
+ export { defineBreadcrumb } from "@unhead/schema-org/vue";
@@ -14,11 +14,12 @@ import {
14
14
  toValue,
15
15
  watch
16
16
  } from "vue";
17
- import { defineBreadcrumb, useI18n, useSchemaOrg } from "#imports";
17
+ import { defineBreadcrumb, useSchemaOrg } from "#seo-utils-schema";
18
18
  import { useSiteConfig } from "#site-config/app/composables/useSiteConfig";
19
19
  import { createSitePathResolver } from "#site-config/app/composables/utils";
20
20
  import { pathBreadcrumbSegments, resolveBreadcrumbRoot } from "../../shared/breadcrumbs.js";
21
21
  import { normaliseCanonicalUrl } from "../../shared/canonicalUrl.js";
22
+ import { useI18n as useI18nPolyfill } from "./polyfills.js";
22
23
  function withoutQuery(path) {
23
24
  return path.split("?")[0] || "";
24
25
  }
@@ -78,7 +79,7 @@ export function useBreadcrumbItems(_options = {}) {
78
79
  }
79
80
  const route = useRoute();
80
81
  const router = useRouter();
81
- const i18n = useI18n();
82
+ const i18n = nuxtApp.$i18n || useI18nPolyfill();
82
83
  const siteResolver = createSitePathResolver({
83
84
  canonical: true,
84
85
  absolute: true
@@ -2,7 +2,6 @@ import { useError, useNuxtApp, useRoute } from "nuxt/app";
2
2
  import { titleCase } from "scule";
3
3
  import { withoutTrailingSlash } from "ufo";
4
4
  import { computed } from "vue";
5
- import { useI18n } from "#imports";
6
5
  export function useFallbackTitle() {
7
6
  const route = useRoute();
8
7
  const err = useError();
@@ -11,13 +10,6 @@ export function useFallbackTitle() {
11
10
  i18n = useNuxtApp().$i18n;
12
11
  } catch {
13
12
  }
14
- if (!i18n) {
15
- try {
16
- i18n = useI18n();
17
- } catch {
18
- console.warn("[nuxt-seo-utils] useFallbackTitle: could not resolve the i18n instance. Titles will not be resolved from i18n messages.");
19
- }
20
- }
21
13
  return computed(() => {
22
14
  if (err.value?.statusCode && [404, 500].includes(err.value.statusCode)) {
23
15
  return `${err.value.statusCode} - ${err.value.message}`;
@@ -1,6 +1,5 @@
1
- import { injectHead, useHead, useSeoMeta } from "@unhead/vue";
2
1
  import { TemplateParamsPlugin } from "@unhead/vue/plugins";
3
- import { useError, useRoute, useRuntimeConfig } from "nuxt/app";
2
+ import { injectHead, useError, useHead, useRoute, useRuntimeConfig, useSeoMeta } from "nuxt/app";
4
3
  import { computed, toValue } from "vue";
5
4
  import { useSiteConfig } from "#site-config/app/composables/useSiteConfig";
6
5
  import { createSitePathResolver } from "#site-config/app/composables/utils";
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,4 +1,4 @@
1
- import { defineNuxtPlugin, useHead, useRequestEvent, useSeoMeta, useState } from "#imports";
1
+ import { defineNuxtPlugin, useHead, useRequestEvent, useSeoMeta, useState } from "nuxt/app";
2
2
  function parseRouteRuleState(context) {
3
3
  const rules = context._nitro?.routeRules;
4
4
  return {
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { injectHead } from "@unhead/vue";
2
- import { defineNuxtPlugin } from "nuxt/app";
1
+ import { defineNuxtPlugin, injectHead } from "nuxt/app";
3
2
  import { unref } from "vue";
4
3
  import { createSitePathResolver } from "#site-config/app/composables/utils";
5
4
  export default defineNuxtPlugin({
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,4 +1,4 @@
1
- import { defineNuxtPlugin, useHead, useNuxtApp, useRuntimeConfig } from "#imports";
1
+ import { defineNuxtPlugin, useHead, useNuxtApp, useRuntimeConfig } from "nuxt/app";
2
2
  import { selectColorModeIconLinks } from "../logic/colorModeIcons.js";
3
3
  export default defineNuxtPlugin({
4
4
  name: "nuxt-seo-utils:color-mode-icons",
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { injectHead } from "@unhead/vue";
2
- import { defineNuxtPlugin } from "nuxt/app";
1
+ import { defineNuxtPlugin, injectHead } from "nuxt/app";
3
2
  import { ogImageEntryIds, syncDerivedTags } from "../logic/syncDerivedTags.js";
4
3
  export default defineNuxtPlugin({
5
4
  name: "nuxt-seo:derived-tags",
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,6 +1,5 @@
1
- import { injectHead } from "@unhead/vue";
2
1
  import { InferSeoMetaPlugin, TemplateParamsPlugin } from "@unhead/vue/plugins";
3
- import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
2
+ import { defineNuxtPlugin, injectHead, useRuntimeConfig } from "nuxt/app";
4
3
  const disabledTwitterCard = "x-nuxt-seo-utils-disabled-twitter-card";
5
4
  export default defineNuxtPlugin(() => {
6
5
  const head = injectHead();
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { injectHead } from "@unhead/vue";
2
- import { defineNuxtPlugin } from "nuxt/app";
1
+ import { defineNuxtPlugin, injectHead } from "nuxt/app";
3
2
  import { JSON_TYPES, minifyCSS, minifyJS, minifyJSON, SKIP_JS_TYPES } from "../../shared/minify.js";
4
3
  export default defineNuxtPlugin({
5
4
  enforce: "post",
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { injectHead } from "@unhead/vue";
2
- import { defineNuxtPlugin, useRuntimeConfig } from "nuxt/app";
1
+ import { defineNuxtPlugin, injectHead, useRuntimeConfig } from "nuxt/app";
3
2
  import { useSiteConfig } from "#site-config/app/composables/useSiteConfig";
4
3
  export default defineNuxtPlugin(() => {
5
4
  const head = injectHead();
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { useHead } from "@unhead/vue";
2
- import { defineNuxtPlugin } from "nuxt/app";
1
+ import { defineNuxtPlugin, useHead } from "nuxt/app";
3
2
  import { useFallbackTitle } from "../composables/useFallbackTitle.js";
4
3
  export default defineNuxtPlugin({
5
4
  name: "nuxt-seo:fallback-titles",
@@ -1,2 +1,2 @@
1
- declare const _default: import("#app").Plugin<Record<string, unknown>> & import("#app").ObjectPlugin<Record<string, unknown>>;
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
2
  export default _default;
@@ -1,5 +1,4 @@
1
- import { useHead } from "@unhead/vue";
2
- import { defineNuxtPlugin } from "nuxt/app";
1
+ import { defineNuxtPlugin, useHead } from "nuxt/app";
3
2
  import { useFallbackTitle } from "../composables/useFallbackTitle.js";
4
3
  export default defineNuxtPlugin({
5
4
  name: "nuxt-seo:fallback-titles",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-seo-utils",
3
3
  "type": "module",
4
- "version": "8.6.0",
4
+ "version": "8.6.1",
5
5
  "description": "SEO utilities to improve your Nuxt sites discoverability and shareability",
6
6
  "license": "MIT",
7
7
  "funding": "https://github.com/sponsors/harlan-zw",