stream-markdown-parser 0.0.39 → 0.0.41
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 +34 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +239 -63
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,11 @@ interface FactoryOptions extends Record<string, unknown> {
|
|
|
9
9
|
commands?: string[];
|
|
10
10
|
escapeExclamation?: boolean;
|
|
11
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* Custom HTML-like tag names that should participate in streaming mid-state
|
|
14
|
+
* suppression and be emitted as custom nodes (e.g. ['thinking']).
|
|
15
|
+
*/
|
|
16
|
+
customHtmlTags?: readonly string[];
|
|
12
17
|
}
|
|
13
18
|
//#endregion
|
|
14
19
|
//#region src/types.d.ts
|
|
@@ -79,6 +84,25 @@ interface HtmlInlineNode extends BaseNode {
|
|
|
79
84
|
*/
|
|
80
85
|
autoClosed?: boolean;
|
|
81
86
|
}
|
|
87
|
+
type CustomComponentAttrs = [string, string][] | Record<string, string | boolean> | Array<{
|
|
88
|
+
name: string;
|
|
89
|
+
value: string | boolean;
|
|
90
|
+
}> | null;
|
|
91
|
+
/**
|
|
92
|
+
* A generic node shape for custom HTML-like components.
|
|
93
|
+
* When a tag name is included in `customHtmlTags`, the parser emits a node
|
|
94
|
+
* whose `type` equals that tag name and carries the raw HTML `content`
|
|
95
|
+
* plus any extracted `attrs` from user transforms.
|
|
96
|
+
*/
|
|
97
|
+
interface CustomComponentNode extends BaseNode {
|
|
98
|
+
/** The custom tag name (same as `tag`) */
|
|
99
|
+
type: string;
|
|
100
|
+
tag: string;
|
|
101
|
+
content: string;
|
|
102
|
+
attrs?: CustomComponentAttrs;
|
|
103
|
+
children?: ParsedNode[];
|
|
104
|
+
autoClosed?: boolean;
|
|
105
|
+
}
|
|
82
106
|
interface InlineCodeNode extends BaseNode {
|
|
83
107
|
type: 'inline_code';
|
|
84
108
|
code: string;
|
|
@@ -238,7 +262,7 @@ type MarkdownToken = (Token & {
|
|
|
238
262
|
loading?: boolean;
|
|
239
263
|
raw?: string;
|
|
240
264
|
}) | MarkdownTokenLite;
|
|
241
|
-
type ParsedNode = TextNode | HeadingNode | ParagraphNode | ListNode | ListItemNode | CodeBlockNode | InlineCodeNode | LinkNode | ImageNode | ThematicBreakNode | BlockquoteNode | TableNode | TableRowNode | TableCellNode | StrongNode | EmphasisNode | StrikethroughNode | HighlightNode | InsertNode | SubscriptNode | SuperscriptNode | CheckboxNode | CheckboxInputNode | EmojiNode | DefinitionListNode | DefinitionItemNode | FootnoteNode | FootnoteReferenceNode | AdmonitionNode | HardBreakNode | MathInlineNode | MathBlockNode | ReferenceNode | HtmlBlockNode | HtmlInlineNode | Record<string, unknown>;
|
|
265
|
+
type ParsedNode = TextNode | HeadingNode | ParagraphNode | ListNode | ListItemNode | CodeBlockNode | InlineCodeNode | LinkNode | ImageNode | ThematicBreakNode | BlockquoteNode | TableNode | TableRowNode | TableCellNode | StrongNode | EmphasisNode | StrikethroughNode | HighlightNode | InsertNode | SubscriptNode | SuperscriptNode | CheckboxNode | CheckboxInputNode | EmojiNode | DefinitionListNode | DefinitionItemNode | FootnoteNode | FootnoteReferenceNode | AdmonitionNode | HardBreakNode | MathInlineNode | MathBlockNode | ReferenceNode | HtmlBlockNode | HtmlInlineNode | CustomComponentNode | Record<string, unknown>;
|
|
242
266
|
interface CustomComponents {
|
|
243
267
|
text: unknown;
|
|
244
268
|
paragraph: unknown;
|
|
@@ -277,6 +301,13 @@ interface ParseOptions {
|
|
|
277
301
|
preTransformTokens?: TransformTokensHook;
|
|
278
302
|
postTransformTokens?: TransformTokensHook;
|
|
279
303
|
requireClosingStrong?: boolean;
|
|
304
|
+
/**
|
|
305
|
+
* Custom HTML-like tag names that should be emitted as custom nodes
|
|
306
|
+
* instead of `html_inline` when encountered (e.g. ['thinking']).
|
|
307
|
+
* Used by inline parsing; pair with `getMarkdown({ customHtmlTags })`
|
|
308
|
+
* to enable mid-state suppression for the same tags during streaming.
|
|
309
|
+
*/
|
|
310
|
+
customHtmlTags?: string[];
|
|
280
311
|
debug?: boolean;
|
|
281
312
|
}
|
|
282
313
|
type PostTransformNodesHook = (nodes: ParsedNode[]) => ParsedNode[];
|
|
@@ -284,6 +315,7 @@ type PostTransformNodesHook = (nodes: ParsedNode[]) => ParsedNode[];
|
|
|
284
315
|
//#region src/parser/inline-parsers/index.d.ts
|
|
285
316
|
declare function parseInlineTokens(tokens: MarkdownToken[], raw?: string, pPreToken?: MarkdownToken, options?: {
|
|
286
317
|
requireClosingStrong?: boolean;
|
|
318
|
+
customHtmlTags?: readonly string[];
|
|
287
319
|
}): ParsedNode[];
|
|
288
320
|
//#endregion
|
|
289
321
|
//#region src/parser/index.d.ts
|
|
@@ -353,5 +385,5 @@ interface GetMarkdownOptions extends FactoryOptions {
|
|
|
353
385
|
}
|
|
354
386
|
declare function getMarkdown(msgId?: string, options?: GetMarkdownOptions): MarkdownIt;
|
|
355
387
|
//#endregion
|
|
356
|
-
export { AdmonitionNode, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponents, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, applyContainers, applyMath, clearRegisteredMarkdownPlugins, findMatchingClose, getMarkdown, isMathLike, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, setDefaultMathOptions };
|
|
388
|
+
export { AdmonitionNode, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponentAttrs, CustomComponentNode, CustomComponents, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, applyContainers, applyMath, clearRegisteredMarkdownPlugins, findMatchingClose, getMarkdown, isMathLike, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, setDefaultMathOptions };
|
|
357
389
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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/findMatchingClose.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":";;;UAYiB,cAAA,SAAuB;sBAClB;;EADL,gBAAA,CAAe,EAAA,OAAA;;;;ECVf,CAAA;
|
|
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/findMatchingClose.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":";;;UAYiB,cAAA,SAAuB;sBAClB;;EADL,gBAAA,CAAe,EAAA,OAAA;;;;ECVf,CAAA;EAQA;AAMjB;AAOA;AAMA;EAMiB,cAAS,CAAA,EAAA,SAKjB,MAAA,EAAA;AAGT;;;UAzCiB,QAAA;;EDUA,GAAA,EAAA,MAAA;;;;ACVjB;AAQiB,UAAA,QAAA,SAAiB,QAAQ,CAAA;EAMzB,IAAA,EAAA,MAAA;EAOA,OAAA,EAAA,MAAA;EAMA,MAAA,CAAA,EAAA,OAAW;AAM5B;AAQiB,UA3BA,WAAA,SAAoB,QA2BC,CAAA;EAKrB,IAAA,EAAA,SAAA;EAiBA,KAAA,EAAA,MAAA;EAOA,IAAA,EAAA,MAAA;EAYL,QAAA,EAhEA,UAgEA,EAAA;AAYZ;AAKU,UA9EO,aAAA,SAAsB,QA8E7B,CAAA;EACG,IAAA,EAAA,WAAA;EANgC,QAAA,EAvEjC,UAuEiC,EAAA;EAAQ,aAAA,CAAA,EAAA,OAAA;AAUrD;AAKiB,UAlFA,UAAA,SAAmB,QAkFF,CAAA;EAQjB,IAAA,EAAA,QAAU;EAOV,QAAA,EA/FL,UA+FuB,EAAA;EAIlB,OAAA,CAAA,EAAA,MAAA;AASjB;AASiB,UAjHA,QAAA,SAAiB,QAmHtB,CAAA;EAGK,IAAA,EAAA,MAAU;EAEjB,OAAA,EAAA,OAAA;EACF,KAAA,CAAA,EAAA,MAAA;EAH2B,KAAA,EAjH1B,YAiH0B,EAAA;;AAMlB,UApHA,YAAA,SAAqB,QAoHA,CAAA;EAKrB,IAAA,EAAA,WAAc;EAOd,QAAA,EA9HL,UA8HK,EAAmB;AAKpC;AAEQ,UAlIS,aAAA,SAAsB,QAkI/B,CAAA;EACM,IAAA,EAAA,YAAA;EAH8B,QAAA,EAAA,MAAA;EAAQ,IAAA,EAAA,MAAA;EAMnC,SAAA,CAAA,EAAA,MAAa;EAMb,OAAA,CAAA,EAAA,MAAA;EAKA,OAAA,CAAA,EAAA,OAAA;EAKA,IAAA,CAAA,EAAA,OAAA;EAOA,YAAA,CAAW,EAAA,MAAA;EAKX,WAAA,CAAA,EAAA,MAAa;EAKb,GAAA,EAAA,MAAA;AAKjB;AAKiB,UAhKA,aAAA,SAAsB,QAgKH,CAAA;EAKnB,IAAA,EAAA,YAAc;EAKd,KAAA,CAAA,EAAA,CAAA,MAAA,EAAA,MAAgB,CAAA,EAAA,GAAA,IAErB;EAGK,GAAA,EAAA,MAAA;EAKA,OAAA,EAAA,MAAA;AAKjB;AAMiB,UAxLA,cAAA,SAAuB,QAwLO,CAAA;EAI9B,IAAA,EAAA,aAAe;EAKf,GAAA,CAAA,EAAA,MAAA;EAKA,OAAA,EAAA,MAAA;EAMA,QAAA,EAxML,UAwMsB,EAAA;EAkBtB;AAEZ;;;EAGM,UAAA,CAAA,EAAA,OAAA;;AAEA,KAzNM,oBAAA,GAyNN,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,GAvNA,MAuNA,CAAA,MAAA,EAAA,MAAA,GAAA,OAAA,CAAA,GAtNA,KAsNA,CAAA;EACA,IAAA,EAAA,MAAA;EACA,KAAA,EAAA,MAAA,GAAA,OAAA;CACA,CAAA,GAAA,IAAA;;;;;;;AAOA,UAvNW,mBAAA,SAA4B,QAuNvC,CAAA;EACA;EACA,IAAA,EAAA,MAAA;EACA,GAAA,EAAA,MAAA;EACA,OAAA,EAAA,MAAA;EACA,KAAA,CAAA,EAvNI,oBAuNJ;EACA,QAAA,CAAA,EAvNO,UAuNP,EAAA;EACA,UAAA,CAAA,EAAA,OAAA;;AAEA,UAtNW,cAAA,SAAuB,QAsNlC,CAAA;EACA,IAAA,EAAA,aAAA;EACA,IAAA,EAAA,MAAA;;AAEA,UArNW,QAAA,SAAiB,QAqN5B,CAAA;EACA,IAAA,EAAA,MAAA;EACA,IAAA,EAAA,MAAA;EACA,KAAA,EAAA,MAAA,GAAA,IAAA;EACA,IAAA,EAAA,MAAA;EACA,QAAA,EArNM,UAqNN,EAAA;;AAEA,UApNW,SAAA,SAAkB,QAoN7B,CAAA;EACA,IAAA,EAAA,OAAA;EACA,GAAA,EAAA,MAAA;EAAM,GAAA,EAAA,MAAA;EACK,KAAA,EAAA,MAAA,GAAA,IAAgB;AAmCjC;AAEiB,UArPA,iBAAA,SAA0B,QAsPpB,CACC;EAcZ,IAAA,EAAA,gBAAA;;UAjQK,gBAAA;;ICzFD,IAAA,EAAA,YAAiB;IACvB,QAAA,EAAA,MAAA;IAEI,IAAA,EAAA,MAAA;IAEX,OAAA,CAAA,EAAA,OAAA;EAAU,CAAA;;KD6FD,cAAA;;EEjII,KAAA,CAAA,EAAA,SAAA;CAEV,GAAA;EACK,OAAA,CAAA,EAAA,SAAA;EACR,KAAA,EFoIQ,QEpIR,EAAA;CAAU;AA0DG,UF4EC,cAAA,SAAuB,QE5EX,CAAA;EAAS,IAAA,EAAA,YAAA;EAA2B,QAAA,EF8ErD,UE9EqD,EAAA;;AAAyB,UFiFzE,SAAA,SAAkB,QEjFuD,CAAA;;UFmFhF;QACF;AGnJR;AAqBgB,UHiIC,YAAA,SAAqB,QGjIM,CAAA;;SHmInC;;AIjKO,UJoKC,aAAA,SAAsB,QIpKN,CAAA;;;YJuKrB;EKnII,KAAA,CAAA,EAAA,MAAA,GAAA,OAAe,GAAA,QAAQ;;ULuItB,kBAAA,SAA2B;;EMxK5B,KAAA,EN0KP,kBM1KsB,EAAA;;UN6Kd,kBAAA,SAA2B;;EOhL/B,IAAA,EPkLL,UOlLK,EAAA;EAoBA,UAAA,EP+JC,UO/JD,EAAA;AA6Bb;UPqIiB,YAAA,SAAqB;;;EQrKzB,QAAA,ERwKD,UQ5GX,EAAA;AAgGD;AA2EgB,UR5DC,qBAAA,SAA8B,QQ4DiB,CAAA;;;;ACnOhD,UT4KC,kBAAA,SAA2B,QS5KN,CAAA;EAItB,IAAA,EAAA,iBAAA;EAwBC,EAAA,EAAA,MAAA;;AAEI,UTmJJ,cAAA,SAAuB,QSnJnB,CAAA;EAAX,IAAA,EAAA,YAAA;EAK2B,IAAA,EAAA,MAAA;EAPO,KAAA,EAAA,MAAA;EAAc,QAAA,ETyJ9C,USzJ8C,EAAA;AAU1D;UTkJiB,UAAA,SAAmB;;YAExB;;UAGK,YAAA,SAAqB;;YAE1B;;UAGK,iBAAA,SAA0B;;YAE/B;;UAGK,aAAA,SAAsB;;YAE3B;;UAGK,UAAA,SAAmB;;YAExB;;UAGK,aAAA,SAAsB;;YAE3B;;UAGK,eAAA,SAAwB;;YAE7B;;UAGK,YAAA,SAAqB;;;;UAKrB,iBAAA,SAA0B;;;;UAK1B,SAAA,SAAkB;;;;;UAMlB,aAAA,SAAsB;;;UAItB,cAAA,SAAuB;;;;UAKvB,aAAA,SAAsB;;;;UAKtB,aAAA,SAAsB;;;;UAMtB,iBAAA;;;;;;;;;;;;;aAaJ;;;;KAKD,aAAA,IAAiB;;;KAA+C;KAEhE,UAAA,GACN,WACA,cACA,gBACA,WACA,eACA,gBACA,iBACA,WACA,YACA,oBACA,iBACA,YACA,eACA,gBACA,aACA,eACA,oBACA,gBACA,aACA,gBACA,kBACA,eACA,oBACA,YACA,qBACA,qBACA,eACA,wBACA,iBACA,gBACA,iBACA,gBACA,gBACA,gBACA,iBACA,sBACA;UACW,gBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmCL,mBAAA,YAA+B,oBAAoB;UAE9C,YAAA;uBACM;wBACC;;;;;;;;;;;KAcZ,sBAAA,WAAiC,iBAAiB;;;iBC1V9C,iBAAA,SACN,2CAEI;EFhCG,oBAAe,CAAA,EAAA,OACV;;IEiCnB;;;AFlCc,iBGFD,wBAAA,CHE8B,QAAA,EAAA,MAAA,EAAA,EAAA,EGAxC,YHAwC,EAAA,OAAA,CAAA,EGCnC,YHDmC,CAAA,EGE3C,UHF2C,EAAA;iBG4D9B,aAAA,SAAsB,2BAA2B,eAAe;;;;;;AH5DhF;;;;ACVA;AAQA;AAMiB,UGPA,WAAA,CHWL;EAGK;EAMA,QAAA,CAAA,EAAA,SAAW,MAEhB,EAAA;EAIK;EAQA,iBAAa,CAAA,EAAA,OAElB;EAGK;AAiBjB;AAOA;AAYA;AAYA;;;;;AAUA;AAKA;EAQiB,gBAAU,CAAA,EAAA,OAAQ;AAOnC;AAIiB,iBGpGD,qBAAA,CHoGiB,IAAA,EGpGW,WHoGX,GAAA,SAAA,CAAA,EAAA,IAAA;;;iBIlIjB,iBAAA;;;iBCoCA,eAAA,QAAuB,gBAAgB;;;iBCjCvC,eAAA,KAAoB;;;cCHvB;cAoBA;iBA6BG,UAAA;;;cChCH;iBA4JG,6BAAA,mBAAgD;iBA2EhD,SAAA,KAAc,yBAAuB;;;AT5OpC,iBUSD,sBAAA,CVTwB,MAAM,EAAA,OAAA,CAAA,EAAA,IAAA;iBUa9B,8BAAA,CAAA;ATwCC,UShBA,kBAAA,SAA2B,cTgBG,CAAA;EAO9B,MAAA,CAAA,EStBN,KTsBM,CAAA,OAAe,CAAA;EAYpB,KAAA,CAAA,ESjCF,KTiCE,CAAA,CAAA,EAAA,ESjCS,UTiCW,EAAA,GAAA,IAE1B,CAAA;EAUW;;;;EAAoC,IAAA,CAAA,EAAA,CAAA,CAAA,GAAA,EAAA,MAAA,EAAA,GAAA,MAAA,CAAA,GSxChB,MTwCgB,CAAA,MAAA,EAAA,MAAA,CAAA;AAUrD;AAKiB,iBSpDD,WAAA,CTyDJ,KAL8B,CAAR,EAAA,MAAQ,EAAA,OAAA,CAAA,ESpDmC,kBToDnC,CAAA,ESpD0D,UToD1D"}
|