ts-markdown
Version:
An extensible TypeScript markdown generator that takes JSON and creates a markdown document.
81 lines (80 loc) • 3.34 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRenderers = void 0;
const blockquote_1 = require("./renderers/blockquote");
const bold_1 = require("./renderers/bold");
const code_1 = require("./renderers/code");
const codeblock_1 = require("./renderers/codeblock");
const dl_1 = require("./renderers/dl");
const emoji_1 = require("./renderers/emoji");
const footnote_1 = require("./renderers/footnote");
const frontmatter_1 = require("./renderers/frontmatter");
const h1_1 = require("./renderers/h1");
const h2_1 = require("./renderers/h2");
const h3_1 = require("./renderers/h3");
const h4_1 = require("./renderers/h4");
const h5_1 = require("./renderers/h5");
const h6_1 = require("./renderers/h6");
const highlight_1 = require("./renderers/highlight");
const hr_1 = require("./renderers/hr");
const img_1 = require("./renderers/img");
const italic_1 = require("./renderers/italic");
const link_1 = require("./renderers/link");
const ol_1 = require("./renderers/ol");
const p_1 = require("./renderers/p");
const primitives_1 = require("./renderers/primitives");
const strikethrough_1 = require("./renderers/strikethrough");
const sub_1 = require("./renderers/sub");
const sup_1 = require("./renderers/sup");
const table_1 = require("./renderers/table");
const tasks_1 = require("./renderers/tasks");
const text_1 = require("./renderers/text");
const ul_1 = require("./renderers/ul");
/**
* Provides default, custom, and overridden renderers for markdown rendering.
* This is often invoked when the caller wishes to provide custom renderers when rendering a markdown document.
*
* @param customRenderers Any renderers which should be used in addition to or in place of existing default renderers.
* @returns An object map of renderers where the key is the identifying property of the particular markdown entry type.
*/
function getRenderers(customRenderers = {}) {
return {
string: primitives_1.stringRenderer,
null: primitives_1.nullRenderer,
undefined: primitives_1.undefinedRenderer,
boolean: primitives_1.booleanRenderer,
number: primitives_1.numberRenderer,
bigint: primitives_1.bigintRenderer,
date: primitives_1.dateRenderer,
h1: h1_1.h1Renderer,
h2: h2_1.h2Renderer,
h3: h3_1.h3Renderer,
h4: h4_1.h4Renderer,
h5: h5_1.h5Renderer,
h6: h6_1.h6Renderer,
blockquote: blockquote_1.blockquoteRenderer,
bold: bold_1.boldRenderer,
code: code_1.codeRenderer,
codeblock: codeblock_1.codeblockRenderer,
dl: dl_1.dlRenderer,
emoji: emoji_1.emojiRenderer,
footnote: footnote_1.footnoteRenderer,
highlight: highlight_1.highlightRenderer,
hr: hr_1.hrRenderer,
img: img_1.imgRenderer,
italic: italic_1.italicRenderer,
link: link_1.linkRenderer,
ol: ol_1.olRenderer,
p: p_1.pRenderer,
strikethrough: strikethrough_1.strikethroughRenderer,
sub: sub_1.subRenderer,
sup: sup_1.supRenderer,
table: table_1.tableRenderer,
tasks: tasks_1.tasksRenderer,
text: text_1.textRenderer,
ul: ul_1.ulRenderer,
frontmatter: frontmatter_1.frontmatterRenderer,
...customRenderers,
};
}
exports.getRenderers = getRenderers;