All files / roosterjs-content-model-markdown/lib/markdownToModel convertMarkdownToContentModel.ts

100% Statements 4/4
66.67% Branches 4/6
100% Functions 1/1
100% Lines 4/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 401x                                                   1x         6x           6x    
import { markdownProcessor } from './processor/markdownProcessor';
import type { MarkdownToModelOptions } from './types/MarkdownToModelOptions';
import type { ContentModelDocument } from 'roosterjs-content-model-types';
 
/**
 * Convert the whole content to ContentModel with the given plain text
 * @param text The markdown text
 * @param splitLinesPattern The pattern to split lines. Default is /\r\n|\r|\\n|\n/
 * @returns The ContentModelDocument
 */
export function convertMarkdownToContentModel(
    text: string,
    splitLinesPattern?: string
): ContentModelDocument;
 
/**
 * Convert the whole content to ContentModel with the given plain text
 * @param text The markdown text
 * @param options The markdown options
 * @returns The ContentModelDocument
 */
export function convertMarkdownToContentModel(
    text: string,
    options?: MarkdownToModelOptions
): ContentModelDocument;
 
export function convertMarkdownToContentModel(
    text: string,
    splitLinesPatternOrOptions?: string | MarkdownToModelOptions
): ContentModelDocument {
    const options: MarkdownToModelOptions =
        (typeof splitLinesPatternOrOptions === 'string'
            ? {
                  splitLinesPattern: splitLinesPatternOrOptions,
              }
            : splitLinesPatternOrOptions) ?? {};
 
    return markdownProcessor(text, options);
}