diff --git a/package-lock.json b/package-lock.json index 1933fa5b8..489337265 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,6 @@ "hast-util-to-html": "^9.0.3", "hast-util-to-jsx-runtime": "^2.3.2", "hast-util-to-string": "^3.0.1", - "is-absolute-url": "^4.0.1", "js-yaml": "^4.1.0", "lightningcss": "^1.28.1", "mdast-util-find-and-replace": "^3.0.1", @@ -4094,17 +4093,6 @@ "node": ">=12" } }, - "node_modules/is-absolute-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", - "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-alphabetical": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", diff --git a/package.json b/package.json index 11c1c91ea..b0247eb46 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,6 @@ "hast-util-to-html": "^9.0.3", "hast-util-to-jsx-runtime": "^2.3.2", "hast-util-to-string": "^3.0.1", - "is-absolute-url": "^4.0.1", "js-yaml": "^4.1.0", "lightningcss": "^1.28.1", "mdast-util-find-and-replace": "^3.0.1", diff --git a/quartz/plugins/transformers/links.ts b/quartz/plugins/transformers/links.ts index 94ef04031..86a880374 100644 --- a/quartz/plugins/transformers/links.ts +++ b/quartz/plugins/transformers/links.ts @@ -11,7 +11,6 @@ import { } from "../../util/path" import path from "path" import { visit } from "unist-util-visit" -import isAbsoluteUrl from "is-absolute-url" import { ElementContent, Root } from "hast" type Sub = [RegExp, string | ElementContent] @@ -124,7 +123,7 @@ export const CrawlLinks: QuartzTransformerPlugin> = (userOpts) } // don't process external links or intra-document anchors - const isInternal = !(isAbsoluteUrl(dest) || dest.startsWith("#")) + const isInternal = !(URL.canParse(dest) || dest.startsWith("#")) if (isInternal) { dest = node.properties.href = transformLink( file.data.slug!, @@ -170,8 +169,9 @@ export const CrawlLinks: QuartzTransformerPlugin> = (userOpts) node.properties.loading = "lazy" } - if (!isAbsoluteUrl(node.properties.src)) { + if (!URL.canParse(node.properties.src)) { let dest = node.properties.src as RelativeURL + console.log(dest) dest = node.properties.src = transformLink( file.data.slug!, dest,