Package Exports
- markdown-it-external-links
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (markdown-it-external-links) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
markdown-it-external-links 
Plugin for markdown-it that adds CSS classes to links that fall outside of the specified internal domain(s).
Example input:
- [Internal Link A](/)
- [Internal Link B](//example.org)
- [Internal Link C](http://example.org)
- [Internal Link D](other-page.html)
- [Internal Link E](.././other-page.html)
- [External Link A](//example.com)
- [External Link B](http://example.com)
Output (without internal link class - default):
<ul>
<li><a href="/">Internal Link A</a></li>
<li><a href="//example.org">Internal Link B</a></li>
<li><a href="http://example.org">Internal Link C</a></li>
<li><a href="other-page.html">Internal Link D</a></li>
<li><a href=".././other-page.html">Internal Link E</a></li>
<li><a href="//example.com" class="external-link">External Link A</a></li>
<li><a href="http://example.com" class="external-link">External Link B</a></li>
</ul>
Output (with internal link class):
<ul>
<li><a href="/" class="internal-link">Internal Link A</a></li>
<li><a href="//example.org" class="internal-link">Internal Link B</a></li>
<li><a href="http://example.org" class="internal-link">Internal Link C</a></li>
<li><a href="other-page.html" class="internal-link">Internal Link D</a></li>
<li><a href=".././other-page.html" class="internal-link">Internal Link E</a></li>
<li><a href="//example.com" class="external-link">External Link A</a></li>
<li><a href="http://example.com" class="external-link">External Link B</a></li>
</ul>
Install
$ npm install --save markdown-it-external-links
Usage
var md = require('markdown-it')();
var externalLinks = require('markdown-it-external-links');
md.use(externalLinks, {
externalClassName: "custom-external-link",
internalClassName: "custom-internal-link",
internalDomains: [ "example.org" ]
});
var input = '[Some External Link](http://example.com)';
var output = md.render(input);
console.log(output);
Options
externalClassName
:string
|null
- External class to use for external links. Specify a value ofnull
to disable output. Default Value:"external-link"
internalClassName
:string
|null
- Internal class to use for external links. Specify a value ofnull
to disable output. Default Value:null
internalDomains
:string[]
- An array of domains that are considered internal. Default Value:[]
Example Value:[ "example.org" ]
externalTarget
:string
- Target attribute for external links. Default Value:_self
internalTarget
:string
- Target attribute for internal links. Default Value:_self
Contribution Agreement
This project is licensed under the MIT license (see LICENSE). To be in the best position to enforce these licenses the copyright status of this project needs to be as simple as possible. To achieve this the following terms and conditions must be met:
All contributed content (including but not limited to source code, text, image, videos, bug reports, suggestions, ideas, etc.) must be the contributors own work.
The contributor disclaims all copyright and accepts that their contributed content will be released to the public domain.
The act of submitting a contribution indicates that the contributor agrees with this agreement. This includes (but is not limited to) pull requests, issues, tickets, e-mails, newsgroups, blogs, forums, etc.