UNPKG

@awesome-fe/translate

Version:
96 lines 6.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TinyHtmlConverter = void 0; const tiny_fallback_renderer_1 = require("./tiny-fallback-renderer"); const tiny_document_renderer_1 = require("./tiny-document-renderer"); const tiny_section_renderer_1 = require("./tiny-section-renderer"); const tiny_paragraph_renderer_1 = require("./tiny-paragraph-renderer"); const tiny_outline_renderer_1 = require("./tiny-outline-renderer"); const tiny_admonition_renderer_1 = require("./tiny-admonition-renderer"); const tiny_audio_renderer_1 = require("./tiny-audio-renderer"); const tiny_colist_renderer_1 = require("./tiny-colist-renderer"); const tiny_dlist_renderer_1 = require("./tiny-dlist-renderer"); const tiny_example_renderer_1 = require("./tiny-example-renderer"); const tiny_floating_title_renderer_1 = require("./tiny-floating-title-renderer"); const tiny_image_renderer_1 = require("./tiny-image-renderer"); const tiny_listing_renderer_1 = require("./tiny-listing-renderer"); const tiny_literal_renderer_1 = require("./tiny-literal-renderer"); const tiny_stem_renderer_1 = require("./tiny-stem-renderer"); const tiny_olist_renderer_1 = require("./tiny-olist-renderer"); const tiny_open_renderer_1 = require("./tiny-open-renderer"); const tiny_page_break_renderer_1 = require("./tiny-page-break-renderer"); const tiny_preamble_renderer_1 = require("./tiny-preamble-renderer"); const tiny_quote_renderer_1 = require("./tiny-quote-renderer"); const tiny_thematic_break_renderer_1 = require("./tiny-thematic-break-renderer"); const tiny_sidebar_renderer_1 = require("./tiny-sidebar-renderer"); const tiny_table_renderer_1 = require("./tiny-table-renderer"); const tiny_toc_renderer_1 = require("./tiny-toc-renderer"); const tiny_ulist_renderer_1 = require("./tiny-ulist-renderer"); const tiny_verse_renderer_1 = require("./tiny-verse-renderer"); const tiny_video_renderer_1 = require("./tiny-video-renderer"); const tiny_inline_anchor_renderer_1 = require("./tiny-inline-anchor-renderer"); const tiny_inline_break_renderer_1 = require("./tiny-inline-break-renderer"); const tiny_inline_button_renderer_1 = require("./tiny-inline-button-renderer"); const tiny_inline_callout_renderer_1 = require("./tiny-inline-callout-renderer"); const tiny_inline_footnote_renderer_1 = require("./tiny-inline-footnote-renderer"); const tiny_inline_image_renderer_1 = require("./tiny-inline-image-renderer"); const tiny_inline_indexterm_renderer_1 = require("./tiny-inline-indexterm-renderer"); const tiny_inline_kbd_renderer_1 = require("./tiny-inline-kbd-renderer"); const tiny_inline_menu_renderer_1 = require("./tiny-inline-menu-renderer"); const tiny_inline_quoted_renderer_1 = require("./tiny-inline-quoted-renderer"); const tiny_list_item_renderer_1 = require("./tiny-list-item-renderer"); /** * 一个精简的 HTML 转换器,为的是生成便于翻译和转回 adoc 的 HTML 格式,这个格式尽可能和 markdown 生成的 HTML 相似,以便作为中间码与 markdown 互转。 * * 公共属性:adoc-node=node.getNodeName() */ class TinyHtmlConverter { renderers = { 'document': new tiny_document_renderer_1.TinyDocumentRenderer(), 'embedded': new tiny_document_renderer_1.TinyDocumentRenderer(), 'outline': new tiny_outline_renderer_1.TinyOutlineRenderer(), 'section': new tiny_section_renderer_1.TinySectionRenderer(), 'admonition': new tiny_admonition_renderer_1.TinyAdmonitionRenderer(), 'audio': new tiny_audio_renderer_1.TinyAudioRenderer(), 'colist': new tiny_colist_renderer_1.TinyColistRenderer(), 'dlist': new tiny_dlist_renderer_1.TinyDlistRenderer(), 'example': new tiny_example_renderer_1.TinyExampleRenderer(), 'floating_title': new tiny_floating_title_renderer_1.TinyFloatingTitleRenderer(), 'image': new tiny_image_renderer_1.TinyImageRenderer(), 'listing': new tiny_listing_renderer_1.TinyListingRenderer(), 'list_item': new tiny_list_item_renderer_1.TinyListItemRenderer(), 'literal': new tiny_literal_renderer_1.TinyLiteralRenderer(), 'stem': new tiny_stem_renderer_1.TinyStemRenderer(), 'olist': new tiny_olist_renderer_1.TinyOlistRenderer(), 'open': new tiny_open_renderer_1.TinyOpenRenderer(), 'page_break': new tiny_page_break_renderer_1.TinyPageBreakRenderer(), 'paragraph': new tiny_paragraph_renderer_1.TinyParagraphRenderer(), 'preamble': new tiny_preamble_renderer_1.TinyPreambleRenderer(), 'quote': new tiny_quote_renderer_1.TinyQuoteRenderer(), 'thematic_break': new tiny_thematic_break_renderer_1.TinyThematicBreakRenderer(), 'sidebar': new tiny_sidebar_renderer_1.TinySidebarRenderer(), 'table': new tiny_table_renderer_1.TinyTableRenderer(), 'toc': new tiny_toc_renderer_1.TinyTocRenderer(), 'ulist': new tiny_ulist_renderer_1.TinyUlistRenderer(), 'verse': new tiny_verse_renderer_1.TinyVerseRenderer(), 'video': new tiny_video_renderer_1.TinyVideoRenderer(), 'inline_anchor': new tiny_inline_anchor_renderer_1.TinyInlineAnchorRenderer(), 'inline_break': new tiny_inline_break_renderer_1.TinyInlineBreakRenderer(), 'inline_button': new tiny_inline_button_renderer_1.TinyInlineButtonRenderer(), 'inline_callout': new tiny_inline_callout_renderer_1.TinyInlineCalloutRenderer(), 'inline_footnote': new tiny_inline_footnote_renderer_1.TinyInlineFootnoteRenderer(), 'inline_image': new tiny_inline_image_renderer_1.TinyInlineImageRenderer(), 'inline_indexterm': new tiny_inline_indexterm_renderer_1.TinyInlineIndextermRenderer(), 'inline_kbd': new tiny_inline_kbd_renderer_1.TinyInlineKbdRenderer(), 'inline_menu': new tiny_inline_menu_renderer_1.TinyInlineMenuRenderer(), 'inline_quoted': new tiny_inline_quoted_renderer_1.TinyInlineQuotedRenderer(), }; fallbackRenderer = new tiny_fallback_renderer_1.TinyFallbackRenderer(); convert(node, transform) { const nodeName = transform ?? node.getNodeName(); const renderer = this.renderers[nodeName] ?? this.fallbackRenderer; return renderer.render(node).replace(/>\n+</g, '><'); } } exports.TinyHtmlConverter = TinyHtmlConverter; //# sourceMappingURL=tiny-html-converter.js.map