UNPKG

tprompter

Version:
67 lines (66 loc) 2.8 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; import { Service } from 'typedi'; import { parse } from 'parse5'; // @ts-expect-error import { indentify } from 'cli-html/lib/utils.js'; // @ts-expect-error import { getGlobalConfig } from 'cli-html/lib/utils/get-clobal-config.js'; // @ts-expect-error import { renderTag } from 'cli-html/lib/utils/render-tag.js'; import markdownit from 'markdown-it'; // @ts-expect-error import markdownItAbbr from 'markdown-it-abbr'; import markdownItContainer from 'markdown-it-container'; // @ts-expect-error import markdownItDeflist from 'markdown-it-deflist'; import markdownItFootnote from 'markdown-it-footnote'; // @ts-expect-error import markdownItIns from 'markdown-it-ins'; // @ts-expect-error import markdownItMark from 'markdown-it-mark'; // @ts-expect-error import markdownItSub from 'markdown-it-sub'; // @ts-expect-error import markdownItSup from 'markdown-it-sup'; // @ts-expect-error import markdownItTaskList from 'markdown-it-task-lists'; let MarkdownToTerminal = class MarkdownToTerminal { constructor() { this.md = markdownit({ html: true, linkify: true, langPrefix: 'language-', }) .use(markdownItAbbr) .use(markdownItContainer) .use(markdownItDeflist) .use(markdownItFootnote) .use(markdownItIns) .use(markdownItMark) .use(markdownItSub) .use(markdownItSup) .use(markdownItTaskList); } convert(md, options) { const rawHTML = this.md.render(md); const document = parse(rawHTML); const globalConfig = getGlobalConfig(document, {}); if (!(options === null || options === void 0 ? void 0 : options.codeNumbers)) { globalConfig.theme.codeNumbers = () => ''; } return `\n${indentify(' ', false)((renderTag(document, globalConfig) || { value: '' }).value)}\n\n`; } }; MarkdownToTerminal = __decorate([ Service(), __metadata("design:paramtypes", []) ], MarkdownToTerminal); export { MarkdownToTerminal };