@awesome-fe/translate
Version:
Translation utils
27 lines • 984 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MarkdownTranslator = void 0;
const abstract_translator_1 = require("./abstract-translator");
const markdown_1 = require("../dom/unified/markdown");
class MarkdownTranslator extends abstract_translator_1.AbstractTranslator {
parse(text) {
return markdown_1.markdown.parse(text);
}
serialize(doc) {
return prettify(markdown_1.markdown.stringify(doc));
}
translateDoc(doc) {
markdown_1.markdown.visit(doc, undefined, async (original, translation) => {
return await this.translateSentence(original, translation, 'markdown');
});
return doc;
}
}
exports.MarkdownTranslator = MarkdownTranslator;
function prettify(md) {
return md
.replace(/([\w`])(\p{Script=Han})/gu, '$1 $2')
.replace(/(\p{Script=Han})([\w`])/gu, '$1 $2')
.replace(/\n\n+/g, '\n\n');
}
//# sourceMappingURL=markdown-translator.js.map