@stream-mdx/react 0.1.0 → 0.2.0

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 (47) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +4 -0
  3. package/dist/components/index.cjs +497 -163
  4. package/dist/components/index.d.cts +1 -1
  5. package/dist/components/index.d.ts +1 -1
  6. package/dist/components/index.mjs +496 -163
  7. package/dist/{index-Bt1opGCs.d.cts → index-D0akq48G.d.cts} +24 -2
  8. package/dist/{index-Bt1opGCs.d.ts → index-D0akq48G.d.ts} +24 -2
  9. package/dist/index.cjs +3797 -2048
  10. package/dist/index.d.cts +43 -5
  11. package/dist/index.d.ts +43 -5
  12. package/dist/index.mjs +3741 -1990
  13. package/dist/mdx-client.cjs +60 -18
  14. package/dist/mdx-client.d.cts +11 -0
  15. package/dist/mdx-client.d.ts +11 -0
  16. package/dist/mdx-client.mjs +60 -18
  17. package/dist/mdx-coordinator.cjs +60 -18
  18. package/dist/mdx-coordinator.mjs +60 -18
  19. package/dist/renderer/node-views.cjs +481 -130
  20. package/dist/renderer/node-views.d.cts +1 -1
  21. package/dist/renderer/node-views.d.ts +1 -1
  22. package/dist/renderer/node-views.mjs +424 -65
  23. package/dist/renderer/patch-commit-scheduler.cjs +68 -7
  24. package/dist/renderer/patch-commit-scheduler.d.cts +6 -5
  25. package/dist/renderer/patch-commit-scheduler.d.ts +6 -5
  26. package/dist/renderer/patch-commit-scheduler.mjs +68 -7
  27. package/dist/renderer/store.cjs +481 -56
  28. package/dist/renderer/store.d.cts +2 -1
  29. package/dist/renderer/store.d.ts +2 -1
  30. package/dist/renderer/store.mjs +479 -47
  31. package/dist/renderer/virtualized-code.cjs +8 -2
  32. package/dist/renderer/virtualized-code.d.cts +4 -0
  33. package/dist/renderer/virtualized-code.d.ts +4 -0
  34. package/dist/renderer/virtualized-code.mjs +8 -2
  35. package/dist/renderer.cjs +3188 -2172
  36. package/dist/renderer.d.cts +4 -2
  37. package/dist/renderer.d.ts +4 -2
  38. package/dist/renderer.mjs +3009 -1985
  39. package/dist/streaming-markdown-Ch6PwjAa.d.cts +154 -0
  40. package/dist/streaming-markdown-tca-Mf8D.d.ts +154 -0
  41. package/dist/streaming-markdown.cjs +3929 -2202
  42. package/dist/streaming-markdown.d.cts +6 -95
  43. package/dist/streaming-markdown.d.ts +6 -95
  44. package/dist/streaming-markdown.mjs +3943 -2208
  45. package/dist/utils/inline-html.d.cts +1 -1
  46. package/dist/utils/inline-html.d.ts +1 -1
  47. package/package.json +3 -3
@@ -1,95 +1,6 @@
1
- import React from 'react';
2
- import { PatchMetrics, FormatAnticipationConfig, Block } from '@stream-mdx/core';
3
- import { AdaptiveBudgetState, PatchFlushResult } from './renderer/patch-commit-scheduler.cjs';
4
- import { RendererStore } from './renderer/store.cjs';
5
- import { B as BlockComponents, T as TableElements, H as HtmlElements, I as InlineComponents } from './index-Bt1opGCs.cjs';
6
-
7
- interface StreamingSchedulerOptions {
8
- frameBudgetMs?: number;
9
- flushTimeoutMs?: number;
10
- maxBatchesPerFlush?: number;
11
- maxLowPriorityBatchesPerFlush?: number;
12
- lowPriorityFrameBudgetMs?: number;
13
- urgentQueueThreshold?: number;
14
- batch?: "rAF" | "microtask" | "timeout";
15
- historyLimit?: number;
16
- }
17
- interface StreamingFeatureFlags {
18
- footnotes?: boolean;
19
- html?: boolean;
20
- mdx?: boolean;
21
- tables?: boolean;
22
- callouts?: boolean;
23
- math?: boolean;
24
- formatAnticipation?: FormatAnticipationConfig;
25
- liveCodeHighlighting?: boolean;
26
- }
27
- /**
28
- * Metrics emitted after each flush (high-priority + low-priority batches).
29
- */
30
- interface RendererMetrics {
31
- tx?: number | null;
32
- receivedAt: number;
33
- committedAt: number;
34
- durationMs: number;
35
- patchToDomMs: number;
36
- totalPatches: number;
37
- appliedPatches: number;
38
- queueDepthBefore: number;
39
- remainingQueueSize: number;
40
- batchCount: number;
41
- queueDelay: {
42
- avg: number;
43
- max: number;
44
- p95: number;
45
- };
46
- priorities: Array<"high" | "low">;
47
- workerMetrics?: PatchMetrics;
48
- adaptiveBudget?: AdaptiveBudgetState;
49
- flush: PatchFlushResult;
50
- }
51
- interface RendererStateSnapshot {
52
- blocks: ReadonlyArray<Block>;
53
- queueDepth: number;
54
- pendingBatches: number;
55
- isPaused: boolean;
56
- workerReady: boolean;
57
- rendererVersion: number;
58
- store: RendererStore;
59
- lastMetrics: RendererMetrics | null;
60
- }
61
- interface StreamingMarkdownHandle {
62
- pause(): void;
63
- resume(): void;
64
- restart(): void;
65
- finalize(): void;
66
- append(text: string): void;
67
- setCredits(value: number): void;
68
- flushPending(): PatchFlushResult | null;
69
- waitForIdle(): Promise<void>;
70
- onFlush(listener: (result: PatchFlushResult) => void): () => void;
71
- getState(): RendererStateSnapshot;
72
- getPatchHistory(limit?: number): ReadonlyArray<RendererMetrics>;
73
- }
74
- interface StreamingMarkdownProps {
75
- text?: string;
76
- stream?: AsyncIterable<string>;
77
- worker?: Worker | URL | (() => Worker) | string;
78
- managedWorker?: boolean;
79
- prewarmLangs?: string[];
80
- features?: StreamingFeatureFlags;
81
- components?: Partial<BlockComponents>;
82
- tableElements?: Partial<TableElements>;
83
- htmlElements?: Partial<HtmlElements>;
84
- mdxComponents?: Record<string, React.ComponentType<unknown>>;
85
- inlineComponents?: Partial<InlineComponents>;
86
- scheduling?: StreamingSchedulerOptions;
87
- mdxCompileMode?: "server" | "worker";
88
- onMetrics?: (metrics: RendererMetrics) => void;
89
- onError?: (error: Error) => void;
90
- className?: string;
91
- style?: React.CSSProperties;
92
- }
93
- declare const StreamingMarkdown: React.ForwardRefExoticComponent<StreamingMarkdownProps & React.RefAttributes<StreamingMarkdownHandle>>;
94
-
95
- export { type RendererMetrics, type RendererStateSnapshot, type StreamingFeatureFlags, StreamingMarkdown, type StreamingMarkdownHandle, type StreamingMarkdownProps, type StreamingSchedulerOptions };
1
+ import 'react';
2
+ import '@stream-mdx/core';
3
+ import './index-D0akq48G.cjs';
4
+ export { L as LinkSafetyCheck, f as LinkSafetyConfig, R as RendererMetrics, c as RendererStateSnapshot, e as StreamingCaret, b as StreamingFeatureFlags, h as StreamingMarkdown, d as StreamingMarkdownHandle, g as StreamingMarkdownProps, S as StreamingSchedulerOptions } from './streaming-markdown-Ch6PwjAa.cjs';
5
+ import './renderer/patch-commit-scheduler.cjs';
6
+ import './renderer/store.cjs';
@@ -1,95 +1,6 @@
1
- import React from 'react';
2
- import { PatchMetrics, FormatAnticipationConfig, Block } from '@stream-mdx/core';
3
- import { AdaptiveBudgetState, PatchFlushResult } from './renderer/patch-commit-scheduler.js';
4
- import { RendererStore } from './renderer/store.js';
5
- import { B as BlockComponents, T as TableElements, H as HtmlElements, I as InlineComponents } from './index-Bt1opGCs.js';
6
-
7
- interface StreamingSchedulerOptions {
8
- frameBudgetMs?: number;
9
- flushTimeoutMs?: number;
10
- maxBatchesPerFlush?: number;
11
- maxLowPriorityBatchesPerFlush?: number;
12
- lowPriorityFrameBudgetMs?: number;
13
- urgentQueueThreshold?: number;
14
- batch?: "rAF" | "microtask" | "timeout";
15
- historyLimit?: number;
16
- }
17
- interface StreamingFeatureFlags {
18
- footnotes?: boolean;
19
- html?: boolean;
20
- mdx?: boolean;
21
- tables?: boolean;
22
- callouts?: boolean;
23
- math?: boolean;
24
- formatAnticipation?: FormatAnticipationConfig;
25
- liveCodeHighlighting?: boolean;
26
- }
27
- /**
28
- * Metrics emitted after each flush (high-priority + low-priority batches).
29
- */
30
- interface RendererMetrics {
31
- tx?: number | null;
32
- receivedAt: number;
33
- committedAt: number;
34
- durationMs: number;
35
- patchToDomMs: number;
36
- totalPatches: number;
37
- appliedPatches: number;
38
- queueDepthBefore: number;
39
- remainingQueueSize: number;
40
- batchCount: number;
41
- queueDelay: {
42
- avg: number;
43
- max: number;
44
- p95: number;
45
- };
46
- priorities: Array<"high" | "low">;
47
- workerMetrics?: PatchMetrics;
48
- adaptiveBudget?: AdaptiveBudgetState;
49
- flush: PatchFlushResult;
50
- }
51
- interface RendererStateSnapshot {
52
- blocks: ReadonlyArray<Block>;
53
- queueDepth: number;
54
- pendingBatches: number;
55
- isPaused: boolean;
56
- workerReady: boolean;
57
- rendererVersion: number;
58
- store: RendererStore;
59
- lastMetrics: RendererMetrics | null;
60
- }
61
- interface StreamingMarkdownHandle {
62
- pause(): void;
63
- resume(): void;
64
- restart(): void;
65
- finalize(): void;
66
- append(text: string): void;
67
- setCredits(value: number): void;
68
- flushPending(): PatchFlushResult | null;
69
- waitForIdle(): Promise<void>;
70
- onFlush(listener: (result: PatchFlushResult) => void): () => void;
71
- getState(): RendererStateSnapshot;
72
- getPatchHistory(limit?: number): ReadonlyArray<RendererMetrics>;
73
- }
74
- interface StreamingMarkdownProps {
75
- text?: string;
76
- stream?: AsyncIterable<string>;
77
- worker?: Worker | URL | (() => Worker) | string;
78
- managedWorker?: boolean;
79
- prewarmLangs?: string[];
80
- features?: StreamingFeatureFlags;
81
- components?: Partial<BlockComponents>;
82
- tableElements?: Partial<TableElements>;
83
- htmlElements?: Partial<HtmlElements>;
84
- mdxComponents?: Record<string, React.ComponentType<unknown>>;
85
- inlineComponents?: Partial<InlineComponents>;
86
- scheduling?: StreamingSchedulerOptions;
87
- mdxCompileMode?: "server" | "worker";
88
- onMetrics?: (metrics: RendererMetrics) => void;
89
- onError?: (error: Error) => void;
90
- className?: string;
91
- style?: React.CSSProperties;
92
- }
93
- declare const StreamingMarkdown: React.ForwardRefExoticComponent<StreamingMarkdownProps & React.RefAttributes<StreamingMarkdownHandle>>;
94
-
95
- export { type RendererMetrics, type RendererStateSnapshot, type StreamingFeatureFlags, StreamingMarkdown, type StreamingMarkdownHandle, type StreamingMarkdownProps, type StreamingSchedulerOptions };
1
+ import 'react';
2
+ import '@stream-mdx/core';
3
+ import './index-D0akq48G.js';
4
+ export { L as LinkSafetyCheck, f as LinkSafetyConfig, R as RendererMetrics, c as RendererStateSnapshot, e as StreamingCaret, b as StreamingFeatureFlags, h as StreamingMarkdown, d as StreamingMarkdownHandle, g as StreamingMarkdownProps, S as StreamingSchedulerOptions } from './streaming-markdown-tca-Mf8D.js';
5
+ import './renderer/patch-commit-scheduler.js';
6
+ import './renderer/store.js';