nuxt-link-checker 4.3.1 → 4.3.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.
Files changed (31) hide show
  1. package/dist/client/200.html +1 -16
  2. package/dist/client/404.html +1 -16
  3. package/dist/client/_nuxt/{3w_68AFy.js → C0TmlKXo.js} +1 -1
  4. package/dist/client/_nuxt/DwBeYsww.js +1 -0
  5. package/dist/client/_nuxt/KzQJPfR6.js +1 -0
  6. package/dist/client/_nuxt/builds/latest.json +1 -1
  7. package/dist/client/_nuxt/builds/meta/39b7bce5-7190-467c-b61e-c416161e0cdc.json +1 -0
  8. package/dist/client/_nuxt/entry.8dt3UohH.css +1 -0
  9. package/dist/client/_nuxt/error-404.B_XScZJK.css +1 -0
  10. package/dist/client/_nuxt/error-500.Dydzk0Zl.css +1 -0
  11. package/dist/client/_nuxt/n57rOy2v.js +1 -0
  12. package/dist/client/_nuxt/zuc5zdCx.js +181 -0
  13. package/dist/client/index.html +1 -16
  14. package/dist/module.json +4 -5
  15. package/dist/module.mjs +15 -3
  16. package/dist/runtime/app/plugins/view/Main.d.vue.ts +9 -0
  17. package/dist/runtime/app/plugins/view/Squiggle.d.vue.ts +7 -0
  18. package/dist/runtime/server/providers/content-v3.js +1 -1
  19. package/dist/runtime/server/routes/__link-checker__/links.d.ts +1 -1
  20. package/dist/runtime/server/routes/__link-checker__/links.js +2 -1
  21. package/dist/runtime/shared/crawl.d.ts +1 -1
  22. package/dist/runtime/shared/inspections/missing-hash.js +3 -1
  23. package/package.json +29 -30
  24. package/dist/client/_nuxt/DhVqxY3H.js +0 -1
  25. package/dist/client/_nuxt/Dt-P3YVb.js +0 -181
  26. package/dist/client/_nuxt/Qizr_0i3.js +0 -1
  27. package/dist/client/_nuxt/builds/meta/f6a7da00-2cca-4db0-b8d5-690f99691ca5.json +0 -1
  28. package/dist/client/_nuxt/entry.ycyXFUel.css +0 -1
  29. package/dist/client/_nuxt/error-404.uLshya7R.css +0 -1
  30. package/dist/client/_nuxt/error-500.Dm5awy8c.css +0 -1
  31. package/dist/client/_nuxt/wWkaIY0j.js +0 -1
@@ -1,16 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8">
2
- <meta name="viewport" content="width=device-width, initial-scale=1">
3
- <link rel="stylesheet" href="/__nuxt-link-checker/_nuxt/entry.ycyXFUel.css" crossorigin>
4
- <link rel="modulepreload" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/Dt-P3YVb.js">
5
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/CVO1_9PV.js">
6
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/D0r3Knsf.js">
7
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/3w_68AFy.js">
8
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/BMMyXqK5.js">
9
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/Cp-IABpG.js">
10
- <link rel="prefetch" as="style" crossorigin href="/__nuxt-link-checker/_nuxt/error-404.uLshya7R.css">
11
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/wWkaIY0j.js">
12
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/Qizr_0i3.js">
13
- <link rel="prefetch" as="style" crossorigin href="/__nuxt-link-checker/_nuxt/error-500.Dm5awy8c.css">
14
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/DhVqxY3H.js">
15
- <script type="module" src="/__nuxt-link-checker/_nuxt/Dt-P3YVb.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1749960176060,false]</script>
16
- <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-link-checker",buildId:"f6a7da00-2cca-4db0-b8d5-690f99691ca5",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-link-checker/_nuxt/zuc5zdCx.js"}}</script><link rel="stylesheet" href="/__nuxt-link-checker/_nuxt/entry.8dt3UohH.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/zuc5zdCx.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/CVO1_9PV.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/D0r3Knsf.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/C0TmlKXo.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/BMMyXqK5.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/Cp-IABpG.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-link-checker/_nuxt/error-404.B_XScZJK.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/KzQJPfR6.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/n57rOy2v.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-link-checker/_nuxt/error-500.Dydzk0Zl.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-link-checker/_nuxt/DwBeYsww.js"><script type="module" src="/__nuxt-link-checker/_nuxt/zuc5zdCx.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1758085162630,false]</script><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-link-checker",buildId:"39b7bce5-7190-467c-b61e-c416161e0cdc",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
package/dist/module.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "nuxt-link-checker",
3
3
  "compatibility": {
4
- "nuxt": ">=3.9.0",
5
- "bridge": false
4
+ "nuxt": ">=3.9.0"
6
5
  },
7
6
  "configKey": "linkChecker",
8
- "version": "4.3.0",
7
+ "version": "4.3.2",
9
8
  "builder": {
10
- "@nuxt/module-builder": "1.0.1",
11
- "unbuild": "3.5.0"
9
+ "@nuxt/module-builder": "1.0.2",
10
+ "unbuild": "3.6.1"
12
11
  }
13
12
  }
package/dist/module.mjs CHANGED
@@ -1881,15 +1881,27 @@ const module = defineNuxtModule({
1881
1881
  meta: {
1882
1882
  name: "nuxt-link-checker",
1883
1883
  compatibility: {
1884
- nuxt: ">=3.9.0",
1885
- bridge: false
1884
+ nuxt: ">=3.9.0"
1886
1885
  },
1887
1886
  configKey: "linkChecker"
1888
1887
  },
1888
+ moduleDependencies: {
1889
+ "nuxt-site-config": {
1890
+ version: ">=3"
1891
+ },
1892
+ "@nuxt/content": {
1893
+ version: ">=2",
1894
+ optional: true
1895
+ },
1896
+ "@nuxtjs/sitemap": {
1897
+ version: ">=7",
1898
+ optional: true
1899
+ }
1900
+ },
1889
1901
  defaults(nuxt) {
1890
1902
  return {
1891
1903
  strictNuxtContentPaths: false,
1892
- fetchRemoteUrls: nuxt.options._build && provider !== "stackblitz",
1904
+ fetchRemoteUrls: !nuxt.options._prepare && !nuxt.options.dev && provider !== "stackblitz",
1893
1905
  runOnBuild: true,
1894
1906
  debug: false,
1895
1907
  showLiveInspections: false,
@@ -0,0 +1,9 @@
1
+ import type { Ref } from 'vue';
2
+ import type { NuxtLinkCheckerClient } from '../../../types.js';
3
+ type __VLS_Props = {
4
+ client: NuxtLinkCheckerClient;
5
+ highlightedLink: Ref<string | null>;
6
+ inspections: NuxtLinkCheckerClient['inspectionEls'];
7
+ };
8
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ export default _default;
@@ -0,0 +1,7 @@
1
+ type __VLS_Props = {
2
+ el: Element;
3
+ color: string;
4
+ highlighted: boolean;
5
+ };
6
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ export default _default;
@@ -1,5 +1,5 @@
1
1
  import manifest from "#content/manifest";
2
- import { queryCollection } from "@nuxt/content/nitro";
2
+ import { queryCollection } from "@nuxt/content/server";
3
3
  export default async (e) => {
4
4
  const collections = [];
5
5
  for (const collection in manifest) {
@@ -1,2 +1,2 @@
1
- declare const _default: any;
1
+ declare const _default: import("h3").EventHandler<Omit<import("h3").EventHandlerRequest, "body">, Promise<any[]>>;
2
2
  export default _default;
@@ -1,6 +1,7 @@
1
- import { defineCachedEventHandler, useRuntimeConfig } from "#imports";
1
+ import { useRuntimeConfig } from "#imports";
2
2
  import contentLinkProvider from "#link-checker/content-provider";
3
3
  import pagePaths from "#nuxt-link-checker-sitemap/pages.mjs";
4
+ import { defineCachedEventHandler } from "nitropack/runtime";
4
5
  export default defineCachedEventHandler(async (e) => {
5
6
  const runtimeConfig = useRuntimeConfig().public["nuxt-link-checker"] || {};
6
7
  const linkDb = [
@@ -9,7 +9,7 @@ export declare function getLinkResponse({ link, timeout, fetchRemoteUrls, baseUR
9
9
  timeout?: number;
10
10
  fetchRemoteUrls?: boolean;
11
11
  isInStorage: () => boolean;
12
- }): Promise<LinkResponse | null>;
12
+ }): Promise<LinkResponse | null | undefined>;
13
13
  export declare function setLinkResponse(link: string, response: Promise<{
14
14
  status: number;
15
15
  statusText: string;
@@ -6,9 +6,11 @@ export default function RuleMissingHash() {
6
6
  id: "missing-hash",
7
7
  test({ link, report, ids, fromPath }) {
8
8
  const [path, hash] = link.split("#");
9
+ if (!path)
10
+ return;
9
11
  if (!link.includes("#") || link.endsWith("#top") || fixSlashes(false, path) !== fromPath)
10
12
  return;
11
- if (ids.includes(hash))
13
+ if (!hash || ids.includes(hash))
12
14
  return;
13
15
  const fuse = new Fuse(ids, {
14
16
  threshold: 0.6
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-link-checker",
3
3
  "type": "module",
4
- "version": "4.3.1",
4
+ "version": "4.3.2",
5
5
  "description": "Find and magically fix links that may be negatively effecting your Nuxt sites SEO.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",
@@ -42,57 +42,56 @@
42
42
  "dist"
43
43
  ],
44
44
  "dependencies": {
45
- "@nuxt/devtools-kit": "^2.5.0",
46
- "@nuxt/kit": "^3.17.5",
47
- "@vueuse/core": "^13.3.0",
45
+ "@nuxt/devtools-kit": "^2.6.3",
46
+ "@nuxt/kit": "^4.1.2",
47
+ "@vueuse/core": "^13.9.0",
48
48
  "consola": "^3.4.2",
49
49
  "diff": "^8.0.2",
50
50
  "fuse.js": "^7.1.0",
51
- "magic-string": "^0.30.17",
52
- "nuxt-site-config": "^3.2.0",
51
+ "magic-string": "^0.30.19",
52
+ "nuxt-site-config": "^3.2.5",
53
53
  "ofetch": "^1.4.1",
54
54
  "pathe": "^2.0.3",
55
- "pkg-types": "^2.1.0",
55
+ "pkg-types": "^2.3.0",
56
56
  "radix3": "^1.1.2",
57
- "sirv": "^3.0.1",
57
+ "sirv": "^3.0.2",
58
58
  "std-env": "^3.9.0",
59
59
  "ufo": "^1.6.1",
60
60
  "ultrahtml": "^1.6.0",
61
- "unstorage": "^1.16.0"
61
+ "unstorage": "^1.17.1"
62
62
  },
63
63
  "devDependencies": {
64
- "@antfu/eslint-config": "^4.14.1",
65
- "@nuxt/content": "^3.6.0",
66
- "@nuxt/devtools": "^2.5.0",
67
- "@nuxt/module-builder": "^1.0.1",
68
- "@nuxt/test-utils": "^3.19.1",
64
+ "@antfu/eslint-config": "^5.3.0",
65
+ "@nuxt/content": "^3.7.1",
66
+ "@nuxt/devtools": "^2.6.3",
67
+ "@nuxt/module-builder": "^1.0.2",
68
+ "@nuxt/test-utils": "^3.19.2",
69
69
  "@nuxtjs/eslint-config-typescript": "^12.1.0",
70
- "@nuxtjs/sitemap": "^7.4.0",
71
- "@types/diff": "^8.0.0",
72
- "better-sqlite3": "^11.10.0",
73
- "bumpp": "^10.1.1",
74
- "eslint": "^9.29.0",
70
+ "@nuxtjs/sitemap": "^7.4.7",
71
+ "better-sqlite3": "^12.2.0",
72
+ "bumpp": "^10.2.3",
73
+ "eslint": "^9.35.0",
75
74
  "execa": "^9.6.0",
76
- "nuxt": "^3.17.5",
77
- "typescript": "5.8.3",
78
- "vitest": "^3.2.3",
79
- "vue-tsc": "^2.2.10"
75
+ "nuxt": "^4.1.2",
76
+ "typescript": "5.9.2",
77
+ "vitest": "^3.2.4",
78
+ "vue-tsc": "^3.0.7"
80
79
  },
81
80
  "resolutions": {
82
81
  "nuxt-link-checker": "workspace:*"
83
82
  },
84
83
  "scripts": {
85
84
  "build": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxt-module-build build && npm run client:build",
86
- "client:build": "nuxi generate client",
87
- "client:dev": "nuxi dev client --port 3030",
85
+ "client:build": "nuxt generate client",
86
+ "client:dev": "nuxt dev client --port 3030",
88
87
  "dev": "npm run play:dev",
89
- "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare client && nuxi prepare playground",
90
- "play:dev": "nuxi dev playground",
91
- "play:prod": "npm run build && nuxi dev playground",
92
- "release": "pnpm build && bumpp && pnpm -r publish",
88
+ "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxt prepare client && nuxt prepare playground",
89
+ "play:dev": "nuxt dev playground",
90
+ "play:prod": "npm run build && nuxt dev playground",
91
+ "release": "pnpm build && bumpp -x \"npx changelogen --output=CHANGELOG.md\"",
93
92
  "lint": "eslint . --fix",
94
93
  "test": "vitest run",
95
- "test:types": "npx nuxi typecheck",
94
+ "typecheck": "nuxt typecheck",
96
95
  "test:watch": "vitest watch"
97
96
  }
98
97
  }
@@ -1 +0,0 @@
1
- import{_ as s,c as a,o as i,a as e,t as o}from"./Dt-P3YVb.js";import{u}from"./Qizr_0i3.js";const l={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},c={class:"max-w-520px text-center"},d=["textContent"],p=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const r=t;return u({title:`${r.statusCode} - ${r.statusMessage} | ${r.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver((e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)})).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(g,n)=>(i(),a("div",l,[n[0]||(n[0]=e("div",{class:"-bottom-1/2 fixed h-1/2 left-0 right-0 spotlight"},null,-1)),e("div",c,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:o(t.statusCode)},null,8,d),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:o(t.description)},null,8,p)])]))}},h=s(f,[["__scopeId","data-v-9d6f5eb3"]]);export{h as default};