Join our webinar on Wednesday, June 26, at 1pm EDTHow Chia Mitigates Risk in the Crypto Industry.Register
Socket
Socket
Sign inDemoInstall

remark-lint-are-links-valid-alive

Package Overview
Dependencies
95
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.0.0 to 0.1.0

yarn.lock

93

index.js

@@ -1,1 +0,92 @@

"use strict";
'use strict';
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
var brokenLinkChecker = _interopDefault(require('broken-link-checker'));
// Basic logics for all packages.
var url = require('url');
var rule = require('unified-lint-rule');
var visit = require('unist-util-visit');
var defaults = require('object.defaults');
var findLinks = function findLinks(ast) {
var links = [];
visit(ast, 'link', function (node) {
var link = url.parse(node.url);
if (link.host !== null) {
// links without `host` are just `#hashes`
links.push({ node: node, link: link });
}
});
return links;
};
var getSettings = function getSettings(options) {
var defaultSettings = {
// These settings allow duplicate links validation:
allowDuplicates: false,
whiteListDomains: []
};
var settings = options || {};
defaults(settings, defaultSettings);
return settings;
};
var createRule = function createRule(name, callback) {
return rule('remark-lint:are-links-valid:' + name, callback);
};
var index = {
findLinks: findLinks,
getSettings: getSettings,
createRule: createRule
};
var index$1 = Object.freeze({
default: index
});
var main = ( index$1 && index ) || index$1;
function handleLinkDuplicateError(file, link, reason) {
var message = 'Link ' + link.link.href + ' is not responding: ' + reason;
var node = link.node;
file.info(message, node);
}
function areLinksAlive(ast, file, options, done) {
var links = main.findLinks(ast);
var settings = main.getSettings(options);
var urlChecker = new brokenLinkChecker.UrlChecker(options, {
link: function link(result, data) {
if (result.broken) {
handleLinkDuplicateError(file, data, result.brokenReason);
}
},
end: function end() {
return done();
}
});
if (links.length > 0) {
links.map(function (link) {
urlChecker.enqueue(link.link.href, null, link);
});
} else {
// There are no links to handle:
done();
}
}
var src = main.createRule('alive', areLinksAlive);
module.exports = src;

11

package.json
{
"name": "remark-lint-are-links-valid-alive",
"version": "0.0.0",
"description": "Checks if links are unique",
"version": "0.1.0",
"description": "Checks if links are still alive",
"main": "index.js",
"scripts": {
"build": "../../node_modules/.bin/babel src.js -o index.js"
"build": "../../node_modules/.bin/rollup -c ../../rollup.config.js -i src.js -o index.js"
},

@@ -25,3 +25,6 @@ "repository": {

},
"homepage": "https://github.com/wemake-services/remark-lint-are-links-valid#readme"
"homepage": "https://github.com/wemake-services/remark-lint-are-links-valid#readme",
"dependencies": {
"broken-link-checker": "^0.7.6"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc