planning
All checks were successful
Publish To Prod / deploy_and_publish (push) Successful in 35s

This commit is contained in:
2024-10-14 09:15:30 +02:00
parent bcba00a730
commit 6e64e138e2
21059 changed files with 2317811 additions and 1 deletions

70
node_modules/mdast-util-to-markdown/lib/handle/link.js generated vendored Normal file
View File

@@ -0,0 +1,70 @@
module.exports = link
link.peek = linkPeek
var checkQuote = require('../util/check-quote')
var formatLinkAsAutolink = require('../util/format-link-as-autolink')
var phrasing = require('../util/container-phrasing')
var safe = require('../util/safe')
function link(node, _, context) {
var quote = checkQuote(context)
var suffix = quote === '"' ? 'Quote' : 'Apostrophe'
var exit
var subexit
var value
var stack
if (formatLinkAsAutolink(node, context)) {
// Hide the fact that were in phrasing, because escapes dont work.
stack = context.stack
context.stack = []
exit = context.enter('autolink')
value = '<' + phrasing(node, context, {before: '<', after: '>'}) + '>'
exit()
context.stack = stack
return value
}
exit = context.enter('link')
subexit = context.enter('label')
value = '[' + phrasing(node, context, {before: '[', after: ']'}) + ']('
subexit()
if (
// If theres no url but there is a title…
(!node.url && node.title) ||
// Or if theres markdown whitespace or an eol, enclose.
/[ \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: node.title ? ' ' : ')'
})
}
subexit()
if (node.title) {
subexit = context.enter('title' + suffix)
value +=
' ' +
quote +
safe(context, node.title, {before: quote, after: quote}) +
quote
subexit()
}
value += ')'
exit()
return value
}
function linkPeek(node, _, context) {
return formatLinkAsAutolink(node, context) ? '<' : '['
}