diff options
Diffstat (limited to 'lib/output/modifiers/resolveLinks.js')
-rw-r--r-- | lib/output/modifiers/resolveLinks.js | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/lib/output/modifiers/resolveLinks.js b/lib/output/modifiers/resolveLinks.js deleted file mode 100644 index 9d15e5e..0000000 --- a/lib/output/modifiers/resolveLinks.js +++ /dev/null @@ -1,53 +0,0 @@ -var path = require('path'); -var url = require('url'); - -var LocationUtils = require('../../utils/location'); -var editHTMLElement = require('./editHTMLElement'); - -/** - Resolve all HTML links: - - /test.md in hello -> ../test.html - - @param {String} currentFile - @param {Function(String) -> String} resolveFile - @param {HTMLDom} $ -*/ -function resolveLinks(currentFile, resolveFile, $) { - var currentDirectory = path.dirname(currentFile); - - return editHTMLElement($, 'a', function($a) { - var href = $a.attr('href'); - - // Don't change a tag without href - if (!href) { - return; - } - - if (LocationUtils.isExternal(href)) { - $a.attr('target', '_blank'); - return; - } - - // Split anchor - var parsed = url.parse(href); - href = parsed.pathname || ''; - - if (href) { - // Calcul absolute path for this - href = LocationUtils.toAbsolute(href, currentDirectory, '.'); - - // Resolve file - href = resolveFile(href); - - // Convert back to relative - href = LocationUtils.relative(currentDirectory, href); - } - - // Add back anchor - href = href + (parsed.hash || ''); - - $a.attr('href', href); - }); -} - -module.exports = resolveLinks; |