pruny 1.43.6 → 1.43.7
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/index.js +25 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -15971,6 +15971,29 @@ function matchSegments(refSegments, routeSegments) {
|
|
|
15971
15971
|
}
|
|
15972
15972
|
return ri === refSegments.length && si === routeSegments.length;
|
|
15973
15973
|
}
|
|
15974
|
+
function isGitignoredPublicFile(appDir, linkPath) {
|
|
15975
|
+
const publicRelPath = `public${linkPath}`;
|
|
15976
|
+
const dirsToCheck = [appDir];
|
|
15977
|
+
const parentDir = join7(appDir, "..", "..");
|
|
15978
|
+
if (existsSync7(join7(parentDir, ".gitignore"))) {
|
|
15979
|
+
dirsToCheck.push(parentDir);
|
|
15980
|
+
}
|
|
15981
|
+
for (const dir of dirsToCheck) {
|
|
15982
|
+
const gitignorePath = join7(dir, ".gitignore");
|
|
15983
|
+
if (!existsSync7(gitignorePath))
|
|
15984
|
+
continue;
|
|
15985
|
+
try {
|
|
15986
|
+
const patterns = readFileSync9(gitignorePath, "utf-8").split(`
|
|
15987
|
+
`).map((l) => l.trim()).filter((l) => l && !l.startsWith("#"));
|
|
15988
|
+
for (const pattern of patterns) {
|
|
15989
|
+
if (minimatch(publicRelPath, pattern, { dot: true }) || minimatch(linkPath.slice(1), pattern, { dot: true }) || minimatch(`**/public${linkPath}`, pattern, { dot: true })) {
|
|
15990
|
+
return true;
|
|
15991
|
+
}
|
|
15992
|
+
}
|
|
15993
|
+
} catch {}
|
|
15994
|
+
}
|
|
15995
|
+
return false;
|
|
15996
|
+
}
|
|
15974
15997
|
async function scanBrokenLinks(config) {
|
|
15975
15998
|
const appDir = config.appSpecificScan ? config.appSpecificScan.appDir : config.dir;
|
|
15976
15999
|
const pagePatterns = [
|
|
@@ -16050,6 +16073,8 @@ async function scanBrokenLinks(config) {
|
|
|
16050
16073
|
const publicPath = join7(appDir, "public", cleaned);
|
|
16051
16074
|
if (existsSync7(publicPath))
|
|
16052
16075
|
continue;
|
|
16076
|
+
if (isGitignoredPublicFile(appDir, cleaned))
|
|
16077
|
+
continue;
|
|
16053
16078
|
const ignorePatterns = [
|
|
16054
16079
|
...config.ignore.links || [],
|
|
16055
16080
|
...config.ignore.routes
|