This commit is contained in:
46
node_modules/mdast-util-to-markdown/lib/handle/definition.js
generated
vendored
Normal file
46
node_modules/mdast-util-to-markdown/lib/handle/definition.js
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
module.exports = definition
|
||||
|
||||
var association = require('../util/association')
|
||||
var checkQuote = require('../util/check-quote')
|
||||
var safe = require('../util/safe')
|
||||
|
||||
function definition(node, _, context) {
|
||||
var marker = checkQuote(context)
|
||||
var suffix = marker === '"' ? 'Quote' : 'Apostrophe'
|
||||
var exit = context.enter('definition')
|
||||
var subexit = context.enter('label')
|
||||
var value =
|
||||
'[' + safe(context, association(node), {before: '[', after: ']'}) + ']: '
|
||||
|
||||
subexit()
|
||||
|
||||
if (
|
||||
// If there’s no url, or…
|
||||
!node.url ||
|
||||
// If there’s whitespace, enclosed is prettier.
|
||||
/[ \t\r\n]/.test(node.url)
|
||||
) {
|
||||
subexit = context.enter('destinationLiteral')
|
||||
value += '<' + safe(context, node.url, {before: '<', after: '>'}) + '>'
|
||||
} else {
|
||||
// No whitespace, raw is prettier.
|
||||
subexit = context.enter('destinationRaw')
|
||||
value += safe(context, node.url, {before: ' ', after: ' '})
|
||||
}
|
||||
|
||||
subexit()
|
||||
|
||||
if (node.title) {
|
||||
subexit = context.enter('title' + suffix)
|
||||
value +=
|
||||
' ' +
|
||||
marker +
|
||||
safe(context, node.title, {before: marker, after: marker}) +
|
||||
marker
|
||||
subexit()
|
||||
}
|
||||
|
||||
exit()
|
||||
|
||||
return value
|
||||
}
|
||||
Reference in New Issue
Block a user