stream-markdown-parser 0.0.82 → 0.0.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -413,6 +413,8 @@ interface HtmlToken {
413
413
  }
414
414
  declare function isCustomHtmlComponentTag(tagName: string, customComponents: Record<string, unknown>): boolean;
415
415
  declare function sanitizeHtmlAttrs(attrs: Record<string, string>): Record<string, string>;
416
+ declare function tokenAttrsToRecord(attrs?: Array<[string, string | null]> | null): Record<string, string>;
417
+ declare function sanitizeHtmlTokenAttrs(attrs?: Array<[string, string | null]> | null): [string, string][] | undefined;
416
418
  declare function convertHtmlPropValue(value: string, key: string): any;
417
419
  declare function convertHtmlAttrsToProps(attrs: Record<string, string>): Record<string, any>;
418
420
  declare function tokenizeHtml(html: string): HtmlToken[];
@@ -427,6 +429,7 @@ declare const EXTENDED_STANDARD_HTML_TAG_NAMES: readonly ["address", "audio", "b
427
429
  declare const DANGEROUS_HTML_ATTR_NAMES: readonly ["onclick", "onerror", "onload", "onmouseover", "onmouseout", "onmousedown", "onmouseup", "onkeydown", "onkeyup", "onfocus", "onblur", "onsubmit", "onreset", "onchange", "onselect", "ondblclick", "ontouchstart", "ontouchend", "ontouchmove", "ontouchcancel", "onwheel", "onscroll", "oncopy", "oncut", "onpaste", "oninput", "oninvalid", "onsearch"];
428
430
  declare const URL_HTML_ATTR_NAMES: readonly ["href", "src", "srcset", "xlink:href", "formaction"];
429
431
  declare const BLOCKED_HTML_TAG_NAMES: readonly ["script"];
432
+ declare const NON_STRUCTURING_HTML_TAG_NAMES: readonly ["pre", "script", "style", "textarea", "title"];
430
433
  declare const VOID_HTML_TAGS: Set<string>;
431
434
  declare const STANDARD_BLOCK_HTML_TAGS: Set<string>;
432
435
  declare const STANDARD_HTML_TAGS: Set<string>;
@@ -434,6 +437,7 @@ declare const EXTENDED_STANDARD_HTML_TAGS: Set<string>;
434
437
  declare const DANGEROUS_HTML_ATTRS: Set<string>;
435
438
  declare const URL_HTML_ATTRS: Set<string>;
436
439
  declare const BLOCKED_HTML_TAGS: Set<string>;
440
+ declare const NON_STRUCTURING_HTML_TAGS: Set<string>;
437
441
  declare function stripHtmlControlAndWhitespace(value: string): string;
438
442
  declare function isUnsafeHtmlUrl(value: string): boolean;
439
443
  //#endregion
@@ -467,5 +471,5 @@ interface GetMarkdownOptions extends FactoryOptions {
467
471
  }
468
472
  declare function getMarkdown(msgId?: string, options?: GetMarkdownOptions): MarkdownIt;
469
473
  //#endregion
470
- export { AdmonitionNode, BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponentAttrs, CustomComponentNode, CustomComponents, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, HtmlToken, INLINE_HTML_TAG_NAMES, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, UnknownNode, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, VmrContainerNode, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenizeHtml };
474
+ export { AdmonitionNode, BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponentAttrs, CustomComponentNode, CustomComponents, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, HtmlToken, INLINE_HTML_TAG_NAMES, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, UnknownNode, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, VmrContainerNode, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
471
475
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/factory.ts","../src/types.ts","../src/parser/inline-parsers/index.ts","../src/parser/index.ts","../src/config.ts","../src/customHtmlTags.ts","../src/findMatchingClose.ts","../src/htmlRenderUtils.ts","../src/htmlTags.ts","../src/parser/inline-parsers/fence-parser.ts","../src/plugins/containers.ts","../src/plugins/isMathLike.ts","../src/plugins/math.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/factory.ts","../src/types.ts","../src/parser/inline-parsers/index.ts","../src/parser/index.ts","../src/config.ts","../src/customHtmlTags.ts","../src/findMatchingClose.ts","../src/htmlRenderUtils.ts","../src/htmlTags.ts","../src/parser/inline-parsers/fence-parser.ts","../src/plugins/containers.ts","../src/plugins/isMathLike.ts","../src/plugins/math.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -9573,6 +9573,13 @@ const URL_HTML_ATTR_NAMES = [
9573
9573
  "formaction"
9574
9574
  ];
9575
9575
  const BLOCKED_HTML_TAG_NAMES = ["script"];
9576
+ const NON_STRUCTURING_HTML_TAG_NAMES = [
9577
+ "pre",
9578
+ "script",
9579
+ "style",
9580
+ "textarea",
9581
+ "title"
9582
+ ];
9576
9583
  const VOID_HTML_TAGS = new Set(VOID_HTML_TAG_NAMES);
9577
9584
  const STANDARD_BLOCK_HTML_TAGS = new Set(BLOCK_HTML_TAG_NAMES);
9578
9585
  const STANDARD_HTML_TAGS = new Set([
@@ -9585,6 +9592,7 @@ const EXTENDED_STANDARD_HTML_TAGS = new Set([...STANDARD_HTML_TAGS, ...EXTENDED_
9585
9592
  const DANGEROUS_HTML_ATTRS = new Set(DANGEROUS_HTML_ATTR_NAMES);
9586
9593
  const URL_HTML_ATTRS = new Set(URL_HTML_ATTR_NAMES);
9587
9594
  const BLOCKED_HTML_TAGS = new Set(BLOCKED_HTML_TAG_NAMES);
9595
+ const NON_STRUCTURING_HTML_TAGS = new Set(NON_STRUCTURING_HTML_TAG_NAMES);
9588
9596
  function stripHtmlControlAndWhitespace(value) {
9589
9597
  let out = "";
9590
9598
  for (const ch of value) {
@@ -11679,10 +11687,48 @@ function buildCodeSpanRanges(src) {
11679
11687
  }
11680
11688
  return ranges;
11681
11689
  }
11682
- function findCodeSpanRangeAt(ranges, index) {
11690
+ function findRangeAt(ranges, index) {
11683
11691
  for (const range of ranges) if (index >= range[0] && index < range[1]) return range;
11684
11692
  return null;
11685
11693
  }
11694
+ function buildImageRanges(src) {
11695
+ const ranges = [];
11696
+ let i = 0;
11697
+ while (i < src.length - 1) {
11698
+ if (src[i] === "!" && src[i + 1] === "[") {
11699
+ const start = i;
11700
+ let j = i + 2;
11701
+ while (j < src.length) {
11702
+ if (src[j] === "\\" && j + 1 < src.length) {
11703
+ j += 2;
11704
+ continue;
11705
+ }
11706
+ if (src[j] === "]") break;
11707
+ j++;
11708
+ }
11709
+ if (j < src.length && src[j] === "]" && j + 1 < src.length && src[j + 1] === "(") {
11710
+ let k = j + 2;
11711
+ let depth = 1;
11712
+ while (k < src.length && depth > 0) {
11713
+ if (src[k] === "\\" && k + 1 < src.length) {
11714
+ k += 2;
11715
+ continue;
11716
+ }
11717
+ if (src[k] === "(") depth++;
11718
+ else if (src[k] === ")") depth--;
11719
+ k++;
11720
+ }
11721
+ if (depth === 0) {
11722
+ ranges.push([start, k]);
11723
+ i = k;
11724
+ continue;
11725
+ }
11726
+ }
11727
+ }
11728
+ i++;
11729
+ }
11730
+ return ranges;
11731
+ }
11686
11732
  function isEscapedAt(src, index) {
11687
11733
  let cursor = index - 1;
11688
11734
  let backslashes = 0;
@@ -11748,6 +11794,7 @@ function applyMath(md, mathOpts) {
11748
11794
  for (const [open, close] of delimiters) {
11749
11795
  const src = s.src;
11750
11796
  const codeSpanRanges = buildCodeSpanRanges(src);
11797
+ const imageRanges = buildImageRanges(src);
11751
11798
  let foundAny = false;
11752
11799
  if (open === "$$" && searchPos !== initialPos) searchPos = initialPos;
11753
11800
  let lastIndex = -1;
@@ -11884,11 +11931,16 @@ function applyMath(md, mathOpts) {
11884
11931
  searchPos = index + Math.max(1, open.length);
11885
11932
  continue;
11886
11933
  }
11887
- const codeSpanAtIndex = findCodeSpanRangeAt(codeSpanRanges, index);
11934
+ const codeSpanAtIndex = findRangeAt(codeSpanRanges, index);
11888
11935
  if (codeSpanAtIndex) {
11889
11936
  searchPos = codeSpanAtIndex[1];
11890
11937
  continue;
11891
11938
  }
11939
+ const imageRangeAtIndex = findRangeAt(imageRanges, index);
11940
+ if (imageRangeAtIndex) {
11941
+ searchPos = imageRangeAtIndex[1];
11942
+ continue;
11943
+ }
11892
11944
  if (index === lastIndex && searchPos === lastSearchPos) {
11893
11945
  stallCount++;
11894
11946
  if (stallCount > 2) {
@@ -15198,6 +15250,14 @@ function buildHtmlBlockContent(raw, tag, closed) {
15198
15250
  if (closed) return raw;
15199
15251
  return `${raw.replace(/<[^>]*$/, "")}\n</${tag}>`;
15200
15252
  }
15253
+ function normalizeIndentedSourceForLookup(value) {
15254
+ return value.replace(/\r\n/g, "\n").replace(/(^|\n)[ \t]{1,4}/g, "$1");
15255
+ }
15256
+ function canFindNodeRawAfterSourceIndex(source, startIndex, nodeRaw) {
15257
+ if (!nodeRaw) return false;
15258
+ if (source.indexOf(nodeRaw, startIndex) !== -1) return true;
15259
+ return normalizeIndentedSourceForLookup(source.slice(Math.max(0, startIndex))).includes(normalizeIndentedSourceForLookup(nodeRaw));
15260
+ }
15201
15261
  function extendHtmlBlockCloseToLineEnding(source, startIndex) {
15202
15262
  let end = Math.max(0, startIndex);
15203
15263
  while (end < source.length && (source[end] === " " || source[end] === " ")) end++;
@@ -15235,6 +15295,54 @@ function buildDetailsChildParseOptions(options, final) {
15235
15295
  validateLink: options.validateLink
15236
15296
  };
15237
15297
  }
15298
+ const STRUCTURED_HTML_WRAPPER_BLOCK_TYPES = new Set([
15299
+ "admonition",
15300
+ "blockquote",
15301
+ "code_block",
15302
+ "definition_list",
15303
+ "footnote",
15304
+ "heading",
15305
+ "list",
15306
+ "math_block",
15307
+ "table",
15308
+ "thematic_break"
15309
+ ]);
15310
+ const STRUCTURED_HTML_WRAPPER_MARKER_RE = /(?:^|\n)(?:\s{0,3}(?:#{1,6}\s+\S|[-+*]\s+\S|\d+[.)]\s+\S|>\s*\S|(?:`{3,}|~{3,})|(?:\*{3,}|-{3,}|_{3,})(?:\s|$)|\|.*\|))/m;
15311
+ function hasStructuredHtmlWrapperMarkers(fragment) {
15312
+ return /\n\s*\n/.test(fragment) || STRUCTURED_HTML_WRAPPER_MARKER_RE.test(fragment);
15313
+ }
15314
+ function shouldStructureGenericHtmlBlockChildren(innerRaw, children) {
15315
+ if (!innerRaw.trim() || children.length === 0) return false;
15316
+ if (children.some((child) => STRUCTURED_HTML_WRAPPER_BLOCK_TYPES.has(String(child?.type ?? "").toLowerCase()))) return true;
15317
+ if (children.some((child) => {
15318
+ if (child?.type !== "html_block") return false;
15319
+ return Array.isArray(child?.children) && child.children.length > 0;
15320
+ })) return true;
15321
+ if (!hasStructuredHtmlWrapperMarkers(innerRaw)) return false;
15322
+ if (children.length > 1) return true;
15323
+ const [first] = children;
15324
+ return Boolean(first && first.type === "paragraph");
15325
+ }
15326
+ function structureGenericHtmlBlockChildren(nodes, md, options, final) {
15327
+ return nodes.map((node) => {
15328
+ if (node?.type !== "html_block") return node;
15329
+ const tag = String(node?.tag ?? "").toLowerCase();
15330
+ if (!tag || tag === "details" || NON_STRUCTURING_HTML_TAGS.has(tag) || Array.isArray(node?.children)) return node;
15331
+ const raw = String(node?.raw ?? node?.content ?? "");
15332
+ if (!raw) return node;
15333
+ const openEnd = findTagCloseIndexOutsideQuotes(raw);
15334
+ if (openEnd === -1) return node;
15335
+ const closeStart = findLastClosingTagStart(raw, tag);
15336
+ const innerRaw = closeStart !== -1 && closeStart >= openEnd + 1 ? raw.slice(openEnd + 1, closeStart) : raw.slice(openEnd + 1);
15337
+ if (!innerRaw.trim()) return node;
15338
+ const children = parseDetailsFragmentChildren(innerRaw, md, buildDetailsChildParseOptions(options, final));
15339
+ if (!shouldStructureGenericHtmlBlockChildren(innerRaw, children)) return node;
15340
+ return {
15341
+ ...node,
15342
+ children
15343
+ };
15344
+ });
15345
+ }
15238
15346
  function parseDetailsFragmentChildren(fragment, md, options) {
15239
15347
  if (!fragment.trim()) return [];
15240
15348
  return parseMarkdownToStructure(fragment, md, options);
@@ -15367,9 +15475,13 @@ function mergeSplitTopLevelHtmlBlocks(nodes, final, source) {
15367
15475
  const nextContent = buildHtmlBlockContent(exact.raw, tag, exact.closed);
15368
15476
  const desiredLoading = !final && !exact.closed;
15369
15477
  const needsExpansion = currentContent !== nextContent || currentRaw !== exact.raw || Boolean(node?.loading) !== desiredLoading;
15478
+ const exactOpenEnd = findTagCloseIndexOutsideQuotes(exact.raw);
15479
+ const exactOpenTag = exactOpenEnd === -1 ? "" : exact.raw.slice(0, exactOpenEnd + 1);
15480
+ const exactAttrs = exactOpenTag ? parseTagAttrs(exactOpenTag) : [];
15370
15481
  node.content = nextContent;
15371
15482
  node.raw = exact.raw;
15372
15483
  node.loading = desiredLoading;
15484
+ node.attrs = exactAttrs.length ? exactAttrs : void 0;
15373
15485
  if (!needsExpansion) continue;
15374
15486
  let tailCursor = findApproximateConsumedPrefixEnd(exact.raw, currentRaw);
15375
15487
  if (tailCursor === -1) tailCursor = 0;
@@ -15382,7 +15494,11 @@ function mergeSplitTopLevelHtmlBlocks(nodes, final, source) {
15382
15494
  const nextRaw = getMergeableNodeRaw(merged[j]);
15383
15495
  if (!nextRaw) break;
15384
15496
  const nextPos = exact.raw.indexOf(nextRaw, tailCursor);
15385
- if (nextPos === -1) break;
15497
+ if (nextPos === -1) {
15498
+ if (canFindNodeRawAfterSourceIndex(source, exact.end, nextRaw)) break;
15499
+ merged.splice(j, 1);
15500
+ continue;
15501
+ }
15386
15502
  tailCursor = nextPos + nextRaw.length;
15387
15503
  merged.splice(j, 1);
15388
15504
  }
@@ -16226,6 +16342,7 @@ function parseMarkdownToStructure(markdown, md, options = {}) {
16226
16342
  }
16227
16343
  result = mergeSplitTopLevelHtmlBlocks(result, isFinal, safeMarkdown);
16228
16344
  result = combineStructuredDetailsHtmlBlocks(result, safeMarkdown, md, options, isFinal)[0];
16345
+ result = structureGenericHtmlBlockChildren(result, md, options, isFinal);
16229
16346
  if (isFinal) {
16230
16347
  const seen = /* @__PURE__ */ new WeakSet();
16231
16348
  const finalizeHtmlBlockLoading = (value) => {
@@ -16354,6 +16471,20 @@ function sanitizeHtmlAttrs(attrs) {
16354
16471
  }
16355
16472
  return clean;
16356
16473
  }
16474
+ function tokenAttrsToRecord(attrs) {
16475
+ const record = {};
16476
+ if (!Array.isArray(attrs) || attrs.length === 0) return record;
16477
+ for (const [key, value] of attrs) {
16478
+ if (!key) continue;
16479
+ record[String(key)] = value == null ? "" : String(value);
16480
+ }
16481
+ return record;
16482
+ }
16483
+ function sanitizeHtmlTokenAttrs(attrs) {
16484
+ const sanitized = sanitizeHtmlAttrs(tokenAttrsToRecord(attrs));
16485
+ const pairs = Object.entries(sanitized).map(([key, value]) => [key, value]);
16486
+ return pairs.length > 0 ? pairs : void 0;
16487
+ }
16357
16488
  function convertHtmlPropValue(value, key) {
16358
16489
  const lowerKey = key.toLowerCase();
16359
16490
  if ([
@@ -16627,5 +16758,5 @@ function getMarkdown(msgId = `editor-${Date.now()}`, options = {}) {
16627
16758
  }
16628
16759
 
16629
16760
  //#endregion
16630
- export { BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, INLINE_HTML_TAG_NAMES, KATEX_COMMANDS, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, TEX_BRACE_COMMANDS, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenizeHtml };
16761
+ export { BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, INLINE_HTML_TAG_NAMES, KATEX_COMMANDS, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, TEX_BRACE_COMMANDS, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
16631
16762
  //# sourceMappingURL=index.js.map