markstream-react 0.0.31 → 0.0.33

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.
Files changed (97) hide show
  1. package/README.md +11 -0
  2. package/dist/Tooltip-CjIRU2iQ.js +209 -0
  3. package/dist/index-BQw8Blc5.js +87 -0
  4. package/dist/index.css +1 -1
  5. package/dist/index.d.ts +65 -622
  6. package/dist/index.js +1 -211
  7. package/dist/index.px.css +1 -1
  8. package/dist/index.tailwind.css +1 -1
  9. package/dist/languageIcon-BiAQ6aSb.js +3 -0
  10. package/dist/markstream-react.css +1 -0
  11. package/dist/next.d.ts +737 -0
  12. package/dist/next.js +2 -0
  13. package/dist/server.d.ts +543 -0
  14. package/dist/server.js +1 -0
  15. package/dist/tailwind.ts +1 -1
  16. package/dist/types/components/AdmonitionNode/AdmonitionNode.d.ts +11 -0
  17. package/dist/types/components/BlockquoteNode/BlockquoteNode.d.ts +7 -0
  18. package/dist/types/components/CheckboxNode/CheckboxNode.d.ts +6 -0
  19. package/dist/types/components/CodeBlockNode/CodeBlockNode.d.ts +13 -0
  20. package/dist/types/components/CodeBlockNode/HtmlPreviewFrame.d.ts +9 -0
  21. package/dist/types/components/CodeBlockNode/PreCodeNode.d.ts +2 -0
  22. package/dist/types/components/CodeBlockNode/monaco.d.ts +1 -0
  23. package/dist/types/components/CodeBlockNode/monacoThemeRegistry.d.ts +7 -0
  24. package/dist/types/components/CodeBlockNode/monacoThemeScheduler.d.ts +4 -0
  25. package/dist/types/components/D2BlockNode/D2BlockNode.d.ts +2 -0
  26. package/dist/types/components/D2BlockNode/d2.d.ts +6 -0
  27. package/dist/types/components/D2BlockNode/index.d.ts +2 -0
  28. package/dist/types/components/DefinitionListNode/DefinitionListNode.d.ts +6 -0
  29. package/dist/types/components/EmojiNode/EmojiNode.d.ts +7 -0
  30. package/dist/types/components/EmphasisNode/EmphasisNode.d.ts +5 -0
  31. package/dist/types/components/FootnoteAnchorNode/FootnoteAnchorNode.d.ts +6 -0
  32. package/dist/types/components/FootnoteNode/FootnoteNode.d.ts +8 -0
  33. package/dist/types/components/FootnoteReferenceNode/FootnoteReferenceNode.d.ts +6 -0
  34. package/dist/types/components/HardBreakNode/HardBreakNode.d.ts +5 -0
  35. package/dist/types/components/HeadingNode/HeadingNode.d.ts +9 -0
  36. package/dist/types/components/HighlightNode/HighlightNode.d.ts +5 -0
  37. package/dist/types/components/HtmlBlockNode/HtmlBlockNode.d.ts +12 -0
  38. package/dist/types/components/HtmlInlineNode/HtmlInlineNode.d.ts +8 -0
  39. package/dist/types/components/ImageNode/ImageNode.d.ts +9 -0
  40. package/dist/types/components/InfographicBlockNode/InfographicBlockNode.d.ts +15 -0
  41. package/dist/types/components/InfographicBlockNode/index.d.ts +2 -0
  42. package/dist/types/components/InfographicBlockNode/infographic.d.ts +1 -0
  43. package/dist/types/components/InlineCodeNode/InlineCodeNode.d.ts +6 -0
  44. package/dist/types/components/InsertNode/InsertNode.d.ts +5 -0
  45. package/dist/types/components/LinkNode/LinkNode.d.ts +21 -0
  46. package/dist/types/components/ListItemNode/ListItemNode.d.ts +12 -0
  47. package/dist/types/components/ListNode/ListNode.d.ts +8 -0
  48. package/dist/types/components/MarkdownCodeBlockNode/MarkdownCodeBlockNode.d.ts +36 -0
  49. package/dist/types/components/Math/MathBlockNode.d.ts +2 -0
  50. package/dist/types/components/Math/MathInlineNode.d.ts +2 -0
  51. package/dist/types/components/Math/katex.d.ts +1 -0
  52. package/dist/types/components/MathBlockNode/MathBlockNode.d.ts +2 -0
  53. package/dist/types/components/MathInlineNode/MathInlineNode.d.ts +2 -0
  54. package/dist/types/components/MermaidBlockNode/MermaidBlockNode.d.ts +15 -0
  55. package/dist/types/components/MermaidBlockNode/index.d.ts +2 -0
  56. package/dist/types/components/MermaidBlockNode/mermaid.d.ts +1 -0
  57. package/dist/types/components/NodeRenderer/FallbackComponent.d.ts +5 -0
  58. package/dist/types/components/NodeRenderer/preloadMonaco.d.ts +1 -0
  59. package/dist/types/components/NodeRenderer.d.ts +4 -0
  60. package/dist/types/components/ParagraphNode/ParagraphNode.d.ts +7 -0
  61. package/dist/types/components/PreCodeNode/PreCodeNode.d.ts +2 -0
  62. package/dist/types/components/ReferenceNode/ReferenceNode.d.ts +15 -0
  63. package/dist/types/components/StrikethroughNode/StrikethroughNode.d.ts +5 -0
  64. package/dist/types/components/StrongNode/StrongNode.d.ts +5 -0
  65. package/dist/types/components/SubscriptNode/SubscriptNode.d.ts +5 -0
  66. package/dist/types/components/SuperscriptNode/SuperscriptNode.d.ts +5 -0
  67. package/dist/types/components/TableNode/TableNode.d.ts +8 -0
  68. package/dist/types/components/TextNode/TextNode.d.ts +7 -0
  69. package/dist/types/components/ThematicBreakNode/ThematicBreakNode.d.ts +2 -0
  70. package/dist/types/components/Tooltip/Tooltip.d.ts +15 -0
  71. package/dist/types/components/VmrContainerNode/VmrContainerNode.d.ts +9 -0
  72. package/dist/types/context/viewportPriority.d.ts +17 -0
  73. package/dist/types/customComponents.d.ts +9 -0
  74. package/dist/types/i18n/useSafeI18n.d.ts +10 -0
  75. package/dist/types/index.d.ts +65 -0
  76. package/dist/types/next.d.ts +297 -0
  77. package/dist/types/renderers/renderChildren.d.ts +7 -0
  78. package/dist/types/renderers/renderNode.d.ts +4 -0
  79. package/dist/types/server-renderer/html.d.ts +2 -0
  80. package/dist/types/server-renderer/index.d.ts +166 -0
  81. package/dist/types/server-renderer/katex.d.ts +1 -0
  82. package/dist/types/server.d.ts +54 -0
  83. package/dist/types/tailwind-entry.d.ts +1 -0
  84. package/dist/types/tooltip/singletonTooltip.d.ts +7 -0
  85. package/dist/types/types/component-props.d.ts +208 -0
  86. package/dist/types/types/node-component.d.ts +12 -0
  87. package/dist/types/types.d.ts +82 -0
  88. package/dist/types/utils/languageIcon.d.ts +8 -0
  89. package/dist/types/utils/languageIconExtended.d.ts +1 -0
  90. package/dist/types/utils/performanceMonitor.d.ts +78 -0
  91. package/dist/types/utils/safeRaf.d.ts +2 -0
  92. package/dist/types/utils/streamingTextState.d.ts +23 -0
  93. package/dist/types/workers/katexRenderer.worker.d.ts +0 -0
  94. package/dist/types/workers/katexWorkerClient.d.ts +31 -0
  95. package/dist/types/workers/mermaidParser.worker.d.ts +1 -0
  96. package/dist/types/workers/mermaidWorkerClient.d.ts +14 -0
  97. package/package.json +11 -3
@@ -0,0 +1,2 @@
1
+ import { D2BlockNodeProps } from '../../types/component-props';
2
+ export declare function D2BlockNode(rawProps: D2BlockNodeProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export type D2Loader = () => Promise<any> | any;
2
+ export declare function setD2Loader(loader: D2Loader | null): void;
3
+ export declare function enableD2(loader?: D2Loader): void;
4
+ export declare function disableD2(): void;
5
+ export declare function isD2Enabled(): boolean;
6
+ export declare function getD2(): Promise<any>;
@@ -0,0 +1,2 @@
1
+ export { D2BlockNode } from './D2BlockNode';
2
+ export { D2BlockNode as default } from './D2BlockNode';
@@ -0,0 +1,6 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function DefinitionListNode(props: NodeComponentProps<{
3
+ type: 'definition_list';
4
+ items?: any[];
5
+ }>): import("react/jsx-runtime").JSX.Element;
6
+ export default DefinitionListNode;
@@ -0,0 +1,7 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function EmojiNode(props: NodeComponentProps<{
3
+ type: 'emoji';
4
+ name: string;
5
+ markup?: string;
6
+ }>): import("react/jsx-runtime").JSX.Element;
7
+ export default EmojiNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function EmphasisNode(props: NodeComponentProps<{
3
+ type: 'emphasis';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default EmphasisNode;
@@ -0,0 +1,6 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function FootnoteAnchorNode(props: NodeComponentProps<{
3
+ type: 'footnote_anchor';
4
+ id: string;
5
+ }>): import("react/jsx-runtime").JSX.Element;
6
+ export default FootnoteAnchorNode;
@@ -0,0 +1,8 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export declare function FootnoteNode(props: NodeComponentProps<{
4
+ type: 'footnote';
5
+ id: string;
6
+ children?: ParsedNode[];
7
+ }>): import("react/jsx-runtime").JSX.Element;
8
+ export default FootnoteNode;
@@ -0,0 +1,6 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function FootnoteReferenceNode(props: NodeComponentProps<{
3
+ type: 'footnote_reference';
4
+ id: string;
5
+ }>): import("react/jsx-runtime").JSX.Element;
6
+ export default FootnoteReferenceNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function HardBreakNode(_props: NodeComponentProps<{
3
+ type: 'hardbreak';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default HardBreakNode;
@@ -0,0 +1,9 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export declare function HeadingNode(props: NodeComponentProps<{
4
+ type: 'heading';
5
+ level?: number;
6
+ children?: ParsedNode[];
7
+ attrs?: Record<string, string | boolean>;
8
+ }>): import("react/jsx-runtime").JSX.Element;
9
+ export default HeadingNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function HighlightNode(props: NodeComponentProps<{
3
+ type: 'highlight';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default HighlightNode;
@@ -0,0 +1,12 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ import { default as React } from 'react';
3
+ export declare function HtmlBlockNode(props: NodeComponentProps<{
4
+ type: 'html_block';
5
+ content: string;
6
+ attrs?: [string, string | null][] | null;
7
+ loading?: boolean;
8
+ }> & {
9
+ customComponents?: Record<string, React.ComponentType<any>>;
10
+ placeholder?: React.ReactNode;
11
+ }): import("react/jsx-runtime").JSX.Element;
12
+ export default HtmlBlockNode;
@@ -0,0 +1,8 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function HtmlInlineNode(props: NodeComponentProps<{
3
+ type: 'html_inline';
4
+ content: string;
5
+ loading?: boolean;
6
+ autoClosed?: boolean;
7
+ }>): import("react/jsx-runtime").JSX.Element;
8
+ export default HtmlInlineNode;
@@ -0,0 +1,9 @@
1
+ import { ImageNodeProps } from '../../types/component-props';
2
+ import { default as React } from 'react';
3
+ export interface ImageNodeReactEvents {
4
+ onLoad?: (src: string) => void;
5
+ onError?: (src: string) => void;
6
+ onClick?: (payload: [event: React.MouseEvent<HTMLImageElement>, src: string]) => void;
7
+ }
8
+ export declare function ImageNode(rawProps: ImageNodeProps & ImageNodeReactEvents): import("react/jsx-runtime").JSX.Element;
9
+ export default ImageNode;
@@ -0,0 +1,15 @@
1
+ import { InfographicBlockNodeProps, MermaidBlockEvent } from '../../types/component-props';
2
+ export interface InfographicBlockNodeReactEvents {
3
+ onCopy?: (code: string) => void;
4
+ onExport?: (event: MermaidBlockEvent<{
5
+ type: 'export';
6
+ }>) => void;
7
+ onOpenModal?: (event: MermaidBlockEvent<{
8
+ type: 'open-modal';
9
+ }>) => void;
10
+ onToggleMode?: (target: 'preview' | 'source', event: MermaidBlockEvent<{
11
+ type: 'toggle-mode';
12
+ target: 'preview' | 'source';
13
+ }>) => void;
14
+ }
15
+ export declare function InfographicBlockNode(rawProps: InfographicBlockNodeProps & InfographicBlockNodeReactEvents): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { InfographicBlockNode } from './InfographicBlockNode';
2
+ export { InfographicBlockNode as default } from './InfographicBlockNode';
@@ -0,0 +1 @@
1
+ export declare function getInfographic(): Promise<any>;
@@ -0,0 +1,6 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function InlineCodeNode(props: NodeComponentProps<{
3
+ type: 'inline_code';
4
+ code: string;
5
+ }>): import("react/jsx-runtime").JSX.Element;
6
+ export default InlineCodeNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function InsertNode(props: NodeComponentProps<{
3
+ type: 'insert';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default InsertNode;
@@ -0,0 +1,21 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export interface LinkNodeStyleProps {
4
+ showTooltip?: boolean;
5
+ color?: string;
6
+ underlineHeight?: number;
7
+ underlineBottom?: number | string;
8
+ animationDuration?: number;
9
+ animationOpacity?: number;
10
+ animationTiming?: string;
11
+ animationIteration?: string | number;
12
+ }
13
+ export declare function LinkNode(props: NodeComponentProps<{
14
+ type: 'link';
15
+ href: string;
16
+ title: string | null;
17
+ text: string;
18
+ children?: ParsedNode[];
19
+ loading?: boolean;
20
+ }> & LinkNodeStyleProps): import("react/jsx-runtime").JSX.Element;
21
+ export default LinkNode;
@@ -0,0 +1,12 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export interface ListItemNodeData {
4
+ type: 'list_item';
5
+ children?: ParsedNode[];
6
+ raw?: string;
7
+ }
8
+ export interface ListItemNodeProps extends NodeComponentProps<ListItemNodeData> {
9
+ value?: number;
10
+ }
11
+ export declare function ListItemNode(props: ListItemNodeProps): import("react/jsx-runtime").JSX.Element;
12
+ export default ListItemNode;
@@ -0,0 +1,8 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function ListNode(props: NodeComponentProps<{
3
+ type: 'list';
4
+ ordered?: boolean;
5
+ start?: number;
6
+ items?: any[];
7
+ }>): import("react/jsx-runtime").JSX.Element;
8
+ export default ListNode;
@@ -0,0 +1,36 @@
1
+ export interface MarkdownCodeBlockNodeProps {
2
+ node: {
3
+ type: 'code_block';
4
+ language: string;
5
+ code: string;
6
+ raw: string;
7
+ diff?: boolean;
8
+ originalCode?: string;
9
+ updatedCode?: string;
10
+ };
11
+ loading?: boolean;
12
+ stream?: boolean;
13
+ darkTheme?: string;
14
+ lightTheme?: string;
15
+ isDark?: boolean;
16
+ isShowPreview?: boolean;
17
+ enableFontSizeControl?: boolean;
18
+ minWidth?: string | number;
19
+ maxWidth?: string | number;
20
+ themes?: string[];
21
+ showHeader?: boolean;
22
+ showCopyButton?: boolean;
23
+ showExpandButton?: boolean;
24
+ showPreviewButton?: boolean;
25
+ showCollapseButton?: boolean;
26
+ showFontSizeButtons?: boolean;
27
+ showTooltips?: boolean;
28
+ onCopy?: (code: string) => void;
29
+ onPreviewCode?: (payload: {
30
+ type: string;
31
+ content: string;
32
+ title: string;
33
+ }) => void;
34
+ }
35
+ export declare function MarkdownCodeBlockNode(rawProps: MarkdownCodeBlockNodeProps): import("react/jsx-runtime").JSX.Element;
36
+ export default MarkdownCodeBlockNode;
@@ -0,0 +1,2 @@
1
+ import { MathBlockNodeProps } from '../../types/component-props';
2
+ export declare function MathBlockNode({ node }: MathBlockNodeProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { MathInlineNodeProps } from '../../types/component-props';
2
+ export declare function MathInlineNode({ node }: MathInlineNodeProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function getKatex(): Promise<any>;
@@ -0,0 +1,2 @@
1
+ export { MathBlockNode } from '../Math/MathBlockNode';
2
+ export { MathBlockNode as default } from '../Math/MathBlockNode';
@@ -0,0 +1,2 @@
1
+ export { MathInlineNode } from '../Math/MathInlineNode';
2
+ export { MathInlineNode as default } from '../Math/MathInlineNode';
@@ -0,0 +1,15 @@
1
+ import { MermaidBlockEvent, MermaidBlockNodeProps } from '../../types/component-props';
2
+ export interface MermaidBlockNodeReactEvents {
3
+ onCopy?: (code: string) => void;
4
+ onExport?: (event: MermaidBlockEvent<{
5
+ type: 'export';
6
+ }>) => void;
7
+ onOpenModal?: (event: MermaidBlockEvent<{
8
+ type: 'open-modal';
9
+ }>) => void;
10
+ onToggleMode?: (target: 'preview' | 'source', event: MermaidBlockEvent<{
11
+ type: 'toggle-mode';
12
+ target: 'preview' | 'source';
13
+ }>) => void;
14
+ }
15
+ export declare function MermaidBlockNode(rawProps: MermaidBlockNodeProps & MermaidBlockNodeReactEvents): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { MermaidBlockNode } from './MermaidBlockNode';
2
+ export { MermaidBlockNode as default } from './MermaidBlockNode';
@@ -0,0 +1 @@
1
+ export declare function getMermaid(initConfig?: Record<string, any>): Promise<any>;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function FallbackComponent(props: NodeComponentProps<{
3
+ type: string;
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default FallbackComponent;
@@ -0,0 +1 @@
1
+ export declare function preload(mod: any): Promise<void>;
@@ -0,0 +1,4 @@
1
+ import { NodeRendererProps } from '../types';
2
+ import { default as React } from 'react';
3
+ export declare const NodeRenderer: React.FC<NodeRendererProps>;
4
+ export default NodeRenderer;
@@ -0,0 +1,7 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export declare function ParagraphNode(props: NodeComponentProps<{
4
+ type: 'paragraph';
5
+ children?: ParsedNode[];
6
+ }>): import("react/jsx-runtime").JSX.Element;
7
+ export default ParagraphNode;
@@ -0,0 +1,2 @@
1
+ export { PreCodeNode } from '../CodeBlockNode/PreCodeNode';
2
+ export { PreCodeNode as default } from '../CodeBlockNode/PreCodeNode';
@@ -0,0 +1,15 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ import { default as React } from 'react';
3
+ export interface ReferenceNodeHandlers {
4
+ onClick?: (event: React.MouseEvent, id: string, messageId?: string, threadId?: string) => void;
5
+ onMouseEnter?: (event: React.MouseEvent, id: string, messageId?: string, threadId?: string) => void;
6
+ onMouseLeave?: (event: React.MouseEvent, id: string, messageId?: string, threadId?: string) => void;
7
+ }
8
+ export declare function ReferenceNode(props: NodeComponentProps<{
9
+ type: 'reference';
10
+ id: string;
11
+ }> & {
12
+ messageId?: string;
13
+ threadId?: string;
14
+ } & ReferenceNodeHandlers): import("react/jsx-runtime").JSX.Element;
15
+ export default ReferenceNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function StrikethroughNode(props: NodeComponentProps<{
3
+ type: 'strikethrough';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default StrikethroughNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function StrongNode(props: NodeComponentProps<{
3
+ type: 'strong';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default StrongNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function SubscriptNode(props: NodeComponentProps<{
3
+ type: 'subscript';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default SubscriptNode;
@@ -0,0 +1,5 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function SuperscriptNode(props: NodeComponentProps<{
3
+ type: 'superscript';
4
+ }>): import("react/jsx-runtime").JSX.Element;
5
+ export default SuperscriptNode;
@@ -0,0 +1,8 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function TableNode(props: NodeComponentProps<{
3
+ type: 'table';
4
+ header?: any;
5
+ rows?: any[];
6
+ loading?: boolean;
7
+ }>): import("react/jsx-runtime").JSX.Element;
8
+ export default TableNode;
@@ -0,0 +1,7 @@
1
+ import { NodeComponentProps } from '../../types/node-component';
2
+ export declare function TextNode(props: NodeComponentProps<{
3
+ type: 'text';
4
+ content: string;
5
+ center?: boolean;
6
+ }>): import("react/jsx-runtime").JSX.Element;
7
+ export default TextNode;
@@ -0,0 +1,2 @@
1
+ export declare function ThematicBreakNode(): import("react/jsx-runtime").JSX.Element;
2
+ export default ThematicBreakNode;
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ export type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right';
3
+ export interface TooltipProps {
4
+ visible: boolean;
5
+ anchorEl: HTMLElement | null;
6
+ content: string;
7
+ placement?: TooltipPlacement;
8
+ offset?: number;
9
+ originX?: number | null;
10
+ originY?: number | null;
11
+ id?: string | null;
12
+ isDark?: boolean | null;
13
+ }
14
+ export declare function Tooltip(props: TooltipProps): React.ReactPortal;
15
+ export default Tooltip;
@@ -0,0 +1,9 @@
1
+ import { ParsedNode } from 'stream-markdown-parser';
2
+ import { NodeComponentProps } from '../../types/node-component';
3
+ export declare function VmrContainerNode(props: NodeComponentProps<{
4
+ type: 'vmr_container';
5
+ name: string;
6
+ attrs?: Record<string, string> | [string, string | null][] | null;
7
+ children?: ParsedNode[];
8
+ }>): import("react/jsx-runtime").JSX.Element;
9
+ export default VmrContainerNode;
@@ -0,0 +1,17 @@
1
+ import { default as React } from 'react';
2
+ export interface VisibilityHandle {
3
+ isVisible: () => boolean;
4
+ whenVisible: Promise<void>;
5
+ destroy: () => void;
6
+ }
7
+ export type RegisterViewportFn = (el: HTMLElement, opts?: {
8
+ rootMargin?: string;
9
+ threshold?: number;
10
+ }) => VisibilityHandle;
11
+ export interface ViewportPriorityProviderProps {
12
+ getRoot: () => HTMLElement | null;
13
+ enabled?: boolean;
14
+ children: React.ReactNode;
15
+ }
16
+ export declare function ViewportPriorityProvider({ getRoot, enabled, children }: ViewportPriorityProviderProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function useViewportPriority(): RegisterViewportFn;
@@ -0,0 +1,9 @@
1
+ import { ComponentType } from 'react';
2
+ export type CustomComponentMap = Record<string, ComponentType<any>>;
3
+ export declare function subscribeCustomComponents(listener: () => void): () => void;
4
+ export declare function getCustomComponentsRevision(): number;
5
+ export declare function setCustomComponents(id: string, mapping: CustomComponentMap): void;
6
+ export declare function setCustomComponents(mapping: CustomComponentMap): void;
7
+ export declare function getCustomNodeComponents(customId?: string): CustomComponentMap;
8
+ export declare function removeCustomComponents(id: string): void;
9
+ export declare function clearGlobalCustomComponents(): void;
@@ -0,0 +1,10 @@
1
+ declare const defaultMap: Record<string, string>;
2
+ /**
3
+ * Replace the entire default translation map.
4
+ * Consumers can call this to provide their own fallback translations (e.g. Chinese).
5
+ */
6
+ export declare function setDefaultI18nMap(map: Record<keyof typeof defaultMap, string>): void;
7
+ export declare function useSafeI18n(): {
8
+ t: (key: string) => string;
9
+ };
10
+ export {};
@@ -0,0 +1,65 @@
1
+ import { CustomComponentMap as MarkstreamCustomComponentMap } from './customComponents';
2
+ import { RenderContext as MarkstreamRenderContext, RenderNodeFn as MarkstreamRenderNodeFn } from './types';
3
+ export { AdmonitionNode } from './components/AdmonitionNode/AdmonitionNode';
4
+ export { BlockquoteNode } from './components/BlockquoteNode/BlockquoteNode';
5
+ export { CheckboxNode } from './components/CheckboxNode/CheckboxNode';
6
+ export { CodeBlockNode } from './components/CodeBlockNode/CodeBlockNode';
7
+ export { CodeBlockNode as ReactCodeBlockNode } from './components/CodeBlockNode/CodeBlockNode';
8
+ export { HtmlPreviewFrame } from './components/CodeBlockNode/HtmlPreviewFrame';
9
+ export type { HtmlPreviewFrameProps } from './components/CodeBlockNode/HtmlPreviewFrame';
10
+ export type { D2Loader } from './components/D2BlockNode/d2';
11
+ export { disableD2, enableD2, isD2Enabled, setD2Loader } from './components/D2BlockNode/d2';
12
+ export { D2BlockNode } from './components/D2BlockNode/D2BlockNode';
13
+ export { DefinitionListNode } from './components/DefinitionListNode/DefinitionListNode';
14
+ export { EmojiNode } from './components/EmojiNode/EmojiNode';
15
+ export { EmphasisNode } from './components/EmphasisNode/EmphasisNode';
16
+ export { FootnoteAnchorNode } from './components/FootnoteAnchorNode/FootnoteAnchorNode';
17
+ export { FootnoteNode } from './components/FootnoteNode/FootnoteNode';
18
+ export { FootnoteReferenceNode } from './components/FootnoteReferenceNode/FootnoteReferenceNode';
19
+ export { HardBreakNode } from './components/HardBreakNode/HardBreakNode';
20
+ export { HeadingNode } from './components/HeadingNode/HeadingNode';
21
+ export { HighlightNode } from './components/HighlightNode/HighlightNode';
22
+ export { HtmlBlockNode } from './components/HtmlBlockNode/HtmlBlockNode';
23
+ export { HtmlInlineNode } from './components/HtmlInlineNode/HtmlInlineNode';
24
+ export { ImageNode } from './components/ImageNode/ImageNode';
25
+ export { InfographicBlockNode } from './components/InfographicBlockNode/InfographicBlockNode';
26
+ export { InlineCodeNode } from './components/InlineCodeNode/InlineCodeNode';
27
+ export { InsertNode } from './components/InsertNode/InsertNode';
28
+ export { LinkNode } from './components/LinkNode/LinkNode';
29
+ export type { LinkNodeStyleProps } from './components/LinkNode/LinkNode';
30
+ export { ListItemNode } from './components/ListItemNode/ListItemNode';
31
+ export type { ListItemNodeProps } from './components/ListItemNode/ListItemNode';
32
+ export { ListNode } from './components/ListNode/ListNode';
33
+ export { MarkdownCodeBlockNode } from './components/MarkdownCodeBlockNode/MarkdownCodeBlockNode';
34
+ export type { MarkdownCodeBlockNodeProps } from './components/MarkdownCodeBlockNode/MarkdownCodeBlockNode';
35
+ export { MathBlockNode } from './components/MathBlockNode/MathBlockNode';
36
+ export { MathInlineNode } from './components/MathInlineNode/MathInlineNode';
37
+ export { MermaidBlockNode } from './components/MermaidBlockNode/MermaidBlockNode';
38
+ export { NodeRenderer } from './components/NodeRenderer';
39
+ export { default } from './components/NodeRenderer';
40
+ export { FallbackComponent } from './components/NodeRenderer/FallbackComponent';
41
+ export { ParagraphNode } from './components/ParagraphNode/ParagraphNode';
42
+ export { PreCodeNode } from './components/PreCodeNode/PreCodeNode';
43
+ export { ReferenceNode } from './components/ReferenceNode/ReferenceNode';
44
+ export { StrikethroughNode } from './components/StrikethroughNode/StrikethroughNode';
45
+ export { StrongNode } from './components/StrongNode/StrongNode';
46
+ export { SubscriptNode } from './components/SubscriptNode/SubscriptNode';
47
+ export { SuperscriptNode } from './components/SuperscriptNode/SuperscriptNode';
48
+ export { TableNode } from './components/TableNode/TableNode';
49
+ export { TextNode } from './components/TextNode/TextNode';
50
+ export { ThematicBreakNode } from './components/ThematicBreakNode/ThematicBreakNode';
51
+ export { Tooltip } from './components/Tooltip/Tooltip';
52
+ export type { TooltipPlacement, TooltipProps } from './components/Tooltip/Tooltip';
53
+ export { VmrContainerNode } from './components/VmrContainerNode/VmrContainerNode';
54
+ export { clearGlobalCustomComponents, getCustomNodeComponents, removeCustomComponents, setCustomComponents, } from './customComponents';
55
+ export * from './i18n/useSafeI18n';
56
+ export * from './renderers/renderNode';
57
+ export type { NodeRendererProps } from './types';
58
+ export type { CodeBlockDiffAppearance, CodeBlockDiffHideUnchangedRegions, CodeBlockDiffHideUnchangedRegionsOptions, CodeBlockDiffHunkActionContext, CodeBlockDiffHunkActionKind, CodeBlockDiffHunkSide, CodeBlockDiffLineStyle, CodeBlockDiffUnchangedRegionStyle, CodeBlockMonacoLanguage, CodeBlockMonacoOptions, CodeBlockMonacoTheme, CodeBlockMonacoThemeObject, CodeBlockNodeProps, D2BlockNodeProps, ImageNodeProps, InfographicBlockNodeProps, LinkNodeProps, MathBlockNodeProps, MathInlineNodeProps, MermaidBlockEvent, MermaidBlockNodeProps, PreCodeNodeProps, } from './types/component-props';
59
+ export type { NodeComponentProps } from './types/node-component';
60
+ export * from './utils/languageIcon';
61
+ export * from './workers/katexWorkerClient';
62
+ export * from './workers/mermaidWorkerClient';
63
+ export type CustomComponentMap = MarkstreamCustomComponentMap;
64
+ export type RenderContext = MarkstreamRenderContext;
65
+ export type RenderNodeFn = MarkstreamRenderNodeFn;