skip empty elements in MfmService.fromHtml

This commit is contained in:
Hazelnoot 2025-06-13 20:43:46 -04:00
parent 99bf315351
commit a524a9cea8

View file

@ -127,48 +127,60 @@ export class MfmService {
} }
case 'h1': { case 'h1': {
text += '**【'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '**【';
text += '】**\n'; appendChildren(node.childNodes);
text += '】**\n';
}
break; break;
} }
case 'h2': case 'h2':
case 'h3': { case 'h3': {
text += '**'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '**';
text += '**\n'; appendChildren(node.childNodes);
text += '**\n';
}
break; break;
} }
case 'b': case 'b':
case 'strong': { case 'strong': {
text += '**'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '**';
text += '**'; appendChildren(node.childNodes);
text += '**';
}
break; break;
} }
case 'small': { case 'small': {
text += '<small>'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '<small>';
text += '</small>'; appendChildren(node.childNodes);
text += '</small>';
}
break; break;
} }
case 's': case 's':
case 'del': { case 'del': {
text += '~~'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '~~';
text += '~~'; appendChildren(node.childNodes);
text += '~~';
}
break; break;
} }
case 'i': case 'i':
case 'em': { case 'em': {
text += '<i>'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '<i>';
text += '</i>'; appendChildren(node.childNodes);
text += '</i>';
}
break; break;
} }
@ -223,9 +235,11 @@ export class MfmService {
// inline code (<code>) // inline code (<code>)
case 'code': { case 'code': {
text += '`'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '`';
text += '`'; appendChildren(node.childNodes);
text += '`';
}
break; break;
} }
@ -242,8 +256,10 @@ export class MfmService {
case 'h4': case 'h4':
case 'h5': case 'h5':
case 'h6': { case 'h6': {
text += '\n\n'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '\n\n';
appendChildren(node.childNodes);
}
break; break;
} }
@ -255,8 +271,10 @@ export class MfmService {
case 'li': case 'li':
case 'dt': case 'dt':
case 'dd': { case 'dd': {
text += '\n'; if (node.childNodes.length > 0) {
appendChildren(node.childNodes); text += '\n';
appendChildren(node.childNodes);
}
break; break;
} }