mirror of
https://github.com/theoludwig/markdownlint-rule-relative-links.git
synced 2026-02-10 23:09:47 +01:00
fix: ignore external https image links
This commit is contained in:
17
src/index.js
17
src/index.js
@@ -70,11 +70,24 @@ const relativeLinksRule = {
|
||||
url = new URL(hrefSrc, pathToFileURL(params.name))
|
||||
}
|
||||
|
||||
if (url.protocol !== "file:" && type !== "image") {
|
||||
const detail = `"${hrefSrc}"`
|
||||
|
||||
if (
|
||||
type === "image" &&
|
||||
url.protocol !== "file:" &&
|
||||
url.protocol !== "http:" &&
|
||||
url.protocol !== "https:"
|
||||
) {
|
||||
onError({
|
||||
lineNumber,
|
||||
detail: `${detail} should be an image`,
|
||||
})
|
||||
continue
|
||||
}
|
||||
|
||||
const detail = `"${hrefSrc}"`
|
||||
if (url.protocol !== "file:") {
|
||||
continue
|
||||
}
|
||||
|
||||
if (!fs.existsSync(url)) {
|
||||
onError({
|
||||
|
||||
3
test/fixtures/valid/ignore-external-image.md
vendored
Normal file
3
test/fixtures/valid/ignore-external-image.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
# Valid
|
||||
|
||||

|
||||
@@ -152,7 +152,7 @@ test("ensure the rule validates correctly", async (t) => {
|
||||
fixturePath: "test/fixtures/invalid/invalid-image.md",
|
||||
errors: [
|
||||
'"../not-an-image.txt" should be an image',
|
||||
'"mailto:not-an-image@pictures.com" should exist in the file system',
|
||||
'"mailto:not-an-image@pictures.com" should be an image',
|
||||
],
|
||||
},
|
||||
]
|
||||
@@ -239,6 +239,10 @@ test("ensure the rule validates correctly", async (t) => {
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "should ignore external image links",
|
||||
fixturePath: "test/fixtures/valid/ignore-external-image.md",
|
||||
},
|
||||
]
|
||||
|
||||
for (const { name, fixturePath, config = defaultConfig } of testCases) {
|
||||
|
||||
Reference in New Issue
Block a user