@ai-matrx/rich-content 0.2.3 → 0.2.6

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 (382) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/code-block/CodeBlock.d.ts +44 -0
  3. package/dist/code-block/CodeBlock.js +449 -0
  4. package/dist/code-block/CodeBlockHeader.d.ts +63 -0
  5. package/dist/code-block/CodeBlockHeader.js +472 -0
  6. package/dist/code-block/CodeEditorLoading.d.ts +3 -0
  7. package/dist/code-block/CodeEditorLoading.js +34 -0
  8. package/dist/code-block/LanguageDisplay.d.ts +28 -0
  9. package/dist/code-block/LanguageDisplay.js +279 -0
  10. package/dist/code-block/SmallCodeEditor.d.ts +30 -0
  11. package/dist/code-block/SmallCodeEditor.js +22 -0
  12. package/dist/code-block/StickyButtons.d.ts +35 -0
  13. package/dist/code-block/StickyButtons.js +88 -0
  14. package/dist/code-block/highlight/ShikiCodeView.d.ts +26 -0
  15. package/dist/code-block/highlight/ShikiCodeView.js +134 -0
  16. package/dist/code-block/highlight/shiki-highlighter.d.ts +14 -0
  17. package/dist/code-block/highlight/shiki-highlighter.js +126 -0
  18. package/dist/code-block/highlight/useHighlightedLines.d.ts +18 -0
  19. package/dist/code-block/highlight/useHighlightedLines.js +142 -0
  20. package/dist/code-block/sticky-inset.d.ts +6 -0
  21. package/dist/code-block/sticky-inset.js +10 -0
  22. package/dist/display/block-interaction.d.ts +33 -0
  23. package/dist/display/block-interaction.js +13 -0
  24. package/dist/display/blocks/ChatCollapsibleWrapper.d.ts +13 -0
  25. package/dist/display/blocks/ChatCollapsibleWrapper.js +56 -0
  26. package/dist/display/blocks/buildMediaSource.d.ts +25 -0
  27. package/dist/display/blocks/buildMediaSource.js +43 -0
  28. package/dist/display/blocks/canvas-adaptive.d.ts +118 -0
  29. package/dist/display/blocks/canvas-adaptive.js +127 -0
  30. package/dist/display/blocks/canvas-fit.d.ts +24 -0
  31. package/dist/display/blocks/canvas-fit.js +19 -0
  32. package/dist/display/blocks/chart/ChartBlock.d.ts +8 -0
  33. package/dist/display/blocks/chart/ChartBlock.js +125 -0
  34. package/dist/display/blocks/chart/ChartCanvas.d.ts +18 -0
  35. package/dist/display/blocks/chart/ChartCanvas.js +159 -0
  36. package/dist/display/blocks/chart/TableChart.d.ts +25 -0
  37. package/dist/display/blocks/chart/TableChart.js +97 -0
  38. package/dist/display/blocks/chart/chart-spec.d.ts +39 -0
  39. package/dist/display/blocks/chart/chart-spec.js +128 -0
  40. package/dist/display/blocks/chart/labels.d.ts +20 -0
  41. package/dist/display/blocks/chart/labels.js +7 -0
  42. package/dist/display/blocks/chart/table-chart.d.ts +37 -0
  43. package/dist/display/blocks/chart/table-chart.js +231 -0
  44. package/dist/display/blocks/common/BlockHeaderWrapper.d.ts +56 -0
  45. package/dist/display/blocks/common/BlockHeaderWrapper.js +310 -0
  46. package/dist/display/blocks/common/ContentBlockWrapper.d.ts +40 -0
  47. package/dist/display/blocks/common/ContentBlockWrapper.js +214 -0
  48. package/dist/display/blocks/common/SandboxedHtml.d.ts +27 -0
  49. package/dist/display/blocks/common/SandboxedHtml.js +26 -0
  50. package/dist/display/blocks/csv/CsvBlock.js +5 -1
  51. package/dist/display/blocks/diagram/DiagramLoadingVisualization.d.ts +6 -0
  52. package/dist/display/blocks/diagram/DiagramLoadingVisualization.js +190 -0
  53. package/dist/display/blocks/diagram/InteractiveDiagramBlock.d.ts +51 -0
  54. package/dist/display/blocks/diagram/InteractiveDiagramBlock.js +2415 -0
  55. package/dist/display/blocks/diagram/diagram-printer.d.ts +16 -0
  56. package/dist/display/blocks/diagram/diagram-printer.js +294 -0
  57. package/dist/display/blocks/diagram/diagram-visual-defaults.d.ts +116 -0
  58. package/dist/display/blocks/diagram/diagram-visual-defaults.js +400 -0
  59. package/dist/display/blocks/diagram/layout-utils.d.ts +90 -0
  60. package/dist/display/blocks/diagram/layout-utils.js +347 -0
  61. package/dist/display/blocks/diagram/parseDiagramJSON.d.ts +105 -0
  62. package/dist/display/blocks/diagram/parseDiagramJSON.js +296 -0
  63. package/dist/display/blocks/diagram/presentation-direction.d.ts +29 -0
  64. package/dist/display/blocks/diagram/presentation-direction.js +19 -0
  65. package/dist/display/blocks/diagram/ui-utils.d.ts +1 -0
  66. package/dist/display/blocks/diagram/ui-utils.js +18 -0
  67. package/dist/display/blocks/diff/DiffBlock.d.ts +10 -0
  68. package/dist/display/blocks/diff/DiffBlock.js +119 -0
  69. package/dist/display/blocks/diff/DiffCanvas.d.ts +15 -0
  70. package/dist/display/blocks/diff/DiffCanvas.js +20 -0
  71. package/dist/display/blocks/generic/GenericStructuredBlock.d.ts +24 -0
  72. package/dist/display/blocks/generic/GenericStructuredBlock.js +53 -0
  73. package/dist/display/blocks/generic/StructuredValueTabs.d.ts +21 -0
  74. package/dist/display/blocks/generic/StructuredValueTabs.js +124 -0
  75. package/dist/display/blocks/generic/tile-actions-slot.d.ts +39 -0
  76. package/dist/display/blocks/generic/tile-actions-slot.js +33 -0
  77. package/dist/display/blocks/images/ImageBlock.d.ts +8 -0
  78. package/dist/display/blocks/images/ImageBlock.js +265 -0
  79. package/dist/display/blocks/json/JsonBlock.d.ts +34 -0
  80. package/dist/display/blocks/json/JsonBlock.js +562 -0
  81. package/dist/display/blocks/json/JsonTableView.d.ts +10 -0
  82. package/dist/display/blocks/json/JsonTableView.js +173 -0
  83. package/dist/display/blocks/json/json-compact-stringify.d.ts +25 -0
  84. package/dist/display/blocks/json/json-compact-stringify.js +52 -0
  85. package/dist/display/blocks/json/json-tabular-utils.d.ts +65 -0
  86. package/dist/display/blocks/json/json-tabular-utils.js +121 -0
  87. package/dist/display/blocks/links/LinkComponent.d.ts +6 -0
  88. package/dist/display/blocks/links/LinkComponent.js +373 -0
  89. package/dist/display/blocks/links/LinkComponentWithFetch.d.ts +1 -0
  90. package/dist/display/blocks/links/LinkComponentWithFetch.js +0 -0
  91. package/dist/display/blocks/markdown/MarkdownKindBlock.d.ts +48 -0
  92. package/dist/display/blocks/markdown/MarkdownKindBlock.js +52 -0
  93. package/dist/display/blocks/markdown-preview/MarkdownPreviewBlock.d.ts +17 -0
  94. package/dist/display/blocks/markdown-preview/MarkdownPreviewBlock.js +70 -0
  95. package/dist/display/blocks/mermaid/MermaidBlock.d.ts +19 -0
  96. package/dist/display/blocks/mermaid/MermaidBlock.js +386 -0
  97. package/dist/display/blocks/search-replace/SearchReplaceBlock.d.ts +50 -0
  98. package/dist/display/blocks/search-replace/SearchReplaceBlock.js +71 -0
  99. package/dist/display/blocks/svg/SvgBlock.d.ts +8 -0
  100. package/dist/display/blocks/svg/SvgBlock.js +126 -0
  101. package/dist/display/blocks/table/StreamingTableRenderer.d.ts +53 -0
  102. package/dist/display/blocks/table/StreamingTableRenderer.js +907 -0
  103. package/dist/display/blocks/table/TableRenderPathDiagnostic.d.ts +21 -0
  104. package/dist/display/blocks/table/TableRenderPathDiagnostic.js +79 -0
  105. package/dist/display/blocks/thinking-reasoning/ConsolidatedReasoningVisualization.d.ts +14 -0
  106. package/dist/display/blocks/thinking-reasoning/ConsolidatedReasoningVisualization.js +15 -0
  107. package/dist/display/blocks/thinking-reasoning/ReasoningVisualization.d.ts +13 -0
  108. package/dist/display/blocks/thinking-reasoning/ReasoningVisualization.js +19 -0
  109. package/dist/display/blocks/thinking-reasoning/ThinkingTrace.d.ts +30 -0
  110. package/dist/display/blocks/thinking-reasoning/ThinkingTrace.js +75 -0
  111. package/dist/display/blocks/thinking-reasoning/ThinkingTraceMarkdown.d.ts +13 -0
  112. package/dist/display/blocks/thinking-reasoning/ThinkingTraceMarkdown.js +48 -0
  113. package/dist/display/blocks/thinking-reasoning/ThinkingVisualization.d.ts +12 -0
  114. package/dist/display/blocks/thinking-reasoning/ThinkingVisualization.js +19 -0
  115. package/dist/display/blocks/toml/TomlBlock.d.ts +7 -0
  116. package/dist/display/blocks/toml/TomlBlock.js +167 -0
  117. package/dist/display/blocks/tree/TreeBlock.d.ts +7 -0
  118. package/dist/display/blocks/tree/TreeBlock.js +163 -0
  119. package/dist/display/blocks/xml/XmlBlock.d.ts +23 -0
  120. package/dist/display/blocks/xml/XmlBlock.js +197 -0
  121. package/dist/display/blocks/xml/readXmlTag.d.ts +1 -0
  122. package/dist/display/blocks/xml/readXmlTag.js +1 -0
  123. package/dist/display/blocks/xml/xml-tokenize.d.ts +13 -0
  124. package/dist/display/blocks/xml/xml-tokenize.js +169 -0
  125. package/dist/display/blocks/yaml/YamlBlock.d.ts +7 -0
  126. package/dist/display/blocks/yaml/YamlBlock.js +191 -0
  127. package/dist/display/chat-markdown/BasicMarkdownContent.d.ts +29 -0
  128. package/dist/display/chat-markdown/BasicMarkdownContent.js +122 -0
  129. package/dist/display/chat-markdown/BlockRenderingContext.d.ts +23 -0
  130. package/dist/display/chat-markdown/BlockRenderingContext.js +17 -0
  131. package/dist/display/chat-markdown/ConfigurableMarkdownContent.d.ts +172 -0
  132. package/dist/display/chat-markdown/ConfigurableMarkdownContent.js +649 -0
  133. package/dist/display/chat-markdown/InlineCodeSnippet.d.ts +19 -0
  134. package/dist/display/chat-markdown/InlineCodeSnippet.js +146 -0
  135. package/dist/display/chat-markdown/InlineCodeSnippetKindGate.d.ts +11 -0
  136. package/dist/display/chat-markdown/InlineCodeSnippetKindGate.js +9 -0
  137. package/dist/display/chat-markdown/KindTextGate.d.ts +31 -0
  138. package/dist/display/chat-markdown/KindTextGate.js +60 -0
  139. package/dist/display/chat-markdown/QuestionnaireLoadingVisualization.d.ts +6 -0
  140. package/dist/display/chat-markdown/QuestionnaireLoadingVisualization.js +92 -0
  141. package/dist/display/chat-markdown/block-registry/BlockComponentRegistry.d.ts +72 -0
  142. package/dist/display/chat-markdown/block-registry/BlockComponentRegistry.js +94 -0
  143. package/dist/display/chat-markdown/block-registry/BlockRenderer.d.ts +126 -0
  144. package/dist/display/chat-markdown/block-registry/BlockRenderer.js +473 -0
  145. package/dist/display/chat-markdown/block-registry/block-dispatch.d.ts +410 -0
  146. package/dist/display/chat-markdown/block-registry/block-dispatch.js +495 -0
  147. package/dist/display/chat-markdown/block-registry/json-parse-utils.d.ts +13 -0
  148. package/dist/display/chat-markdown/block-registry/json-parse-utils.js +236 -0
  149. package/dist/display/chat-markdown/constants.d.ts +14 -0
  150. package/dist/display/chat-markdown/constants.js +317 -0
  151. package/dist/display/chat-markdown/diff-blocks/DiffCollapsible.d.ts +31 -0
  152. package/dist/display/chat-markdown/diff-blocks/DiffCollapsible.js +62 -0
  153. package/dist/display/chat-markdown/diff-blocks/DiffLoadingIndicator.d.ts +12 -0
  154. package/dist/display/chat-markdown/diff-blocks/DiffLoadingIndicator.js +18 -0
  155. package/dist/display/chat-markdown/diff-blocks/StreamingDiffBlock.d.ts +22 -0
  156. package/dist/display/chat-markdown/diff-blocks/StreamingDiffBlock.js +130 -0
  157. package/dist/display/chat-markdown/diff-blocks/diff-style-registry.d.ts +21 -0
  158. package/dist/display/chat-markdown/diff-blocks/diff-style-registry.js +91 -0
  159. package/dist/display/chat-markdown/diff-blocks/renderers/SearchReplaceDiffRenderer.d.ts +26 -0
  160. package/dist/display/chat-markdown/diff-blocks/renderers/SearchReplaceDiffRenderer.js +186 -0
  161. package/dist/display/chat-markdown/diff-blocks/types.d.ts +56 -0
  162. package/dist/display/chat-markdown/diff-blocks/types.js +0 -0
  163. package/dist/display/chat-markdown/internal-handlers/BlockFallback.d.ts +20 -0
  164. package/dist/display/chat-markdown/internal-handlers/BlockFallback.js +83 -0
  165. package/dist/display/chat-markdown/internal-handlers/InlineStatusIndicator.d.ts +4 -0
  166. package/dist/display/chat-markdown/internal-handlers/InlineStatusIndicator.js +16 -0
  167. package/dist/display/chat-markdown/internal-handlers/MarkdownErrorBoundary.d.ts +17 -0
  168. package/dist/display/chat-markdown/internal-handlers/MarkdownErrorBoundary.js +40 -0
  169. package/dist/display/chat-markdown/internal-handlers/PlainTextFallback.d.ts +8 -0
  170. package/dist/display/chat-markdown/internal-handlers/PlainTextFallback.js +91 -0
  171. package/dist/display/chat-markdown/internal-handlers/SafeBlockRenderer.d.ts +20 -0
  172. package/dist/display/chat-markdown/internal-handlers/SafeBlockRenderer.js +72 -0
  173. package/dist/display/chat-markdown/kind-source-view.d.ts +14 -0
  174. package/dist/display/chat-markdown/kind-source-view.js +14 -0
  175. package/dist/display/chat-markdown/matrx-variables/MatrxVariableInline.d.ts +28 -0
  176. package/dist/display/chat-markdown/matrx-variables/MatrxVariableInline.js +65 -0
  177. package/dist/display/chat-markdown/progressive-mount.d.ts +18 -0
  178. package/dist/display/chat-markdown/progressive-mount.js +90 -0
  179. package/dist/display/chat-markdown/render-block-to-content-block.d.ts +31 -0
  180. package/dist/display/chat-markdown/render-block-to-content-block.js +32 -0
  181. package/dist/display/chat-markdown/settle-stream-blocks.d.ts +50 -0
  182. package/dist/display/chat-markdown/settle-stream-blocks.js +26 -0
  183. package/dist/display/chat-markdown/stable-blocks.d.ts +15 -0
  184. package/dist/display/chat-markdown/stable-blocks.js +54 -0
  185. package/dist/display/chat-markdown/types.d.ts +11 -0
  186. package/dist/display/chat-markdown/types.js +26 -0
  187. package/dist/display/specimen/SpecimenContext.d.ts +26 -0
  188. package/dist/display/specimen/SpecimenContext.js +64 -0
  189. package/dist/display/tables/MarkdownTable.d.ts +23 -0
  190. package/dist/display/tables/MarkdownTable.js +769 -0
  191. package/dist/display/tables/MarkdownTableScrollArea.d.ts +12 -0
  192. package/dist/display/tables/MarkdownTableScrollArea.js +92 -0
  193. package/dist/display/tables/SendToGoogleSheetButton.d.ts +19 -0
  194. package/dist/display/tables/SendToGoogleSheetButton.js +93 -0
  195. package/dist/display/tables/SendToWorkbookButton.d.ts +24 -0
  196. package/dist/display/tables/SendToWorkbookButton.js +93 -0
  197. package/dist/display/tables/TableSaveToMenu.d.ts +16 -0
  198. package/dist/display/tables/TableSaveToMenu.js +98 -0
  199. package/dist/display/tables/TableWithSeparatedControls.d.ts +22 -0
  200. package/dist/display/tables/TableWithSeparatedControls.js +574 -0
  201. package/dist/display/tables/ViewTableModal.d.ts +14 -0
  202. package/dist/display/tables/ViewTableModal.js +67 -0
  203. package/dist/display/tables/editing/ColumnActionsMenu.d.ts +16 -0
  204. package/dist/display/tables/editing/ColumnActionsMenu.js +80 -0
  205. package/dist/display/tables/editing/RowActionsMenu.d.ts +16 -0
  206. package/dist/display/tables/editing/RowActionsMenu.js +80 -0
  207. package/dist/display/tables/editing/TableEditToolbar.d.ts +15 -0
  208. package/dist/display/tables/editing/TableEditToolbar.js +63 -0
  209. package/dist/display/tables/editing/tableMutations.d.ts +50 -0
  210. package/dist/display/tables/editing/tableMutations.js +148 -0
  211. package/dist/display/tables/editing/useDoubleClickEdit.d.ts +43 -0
  212. package/dist/display/tables/editing/useDoubleClickEdit.js +51 -0
  213. package/dist/display/tables/editing/useTableUndo.d.ts +25 -0
  214. package/dist/display/tables/editing/useTableUndo.js +17 -0
  215. package/dist/display/tables/table-action-row.d.ts +8 -0
  216. package/dist/display/tables/table-action-row.js +31 -0
  217. package/dist/display/tables/table-viewer.d.ts +13 -0
  218. package/dist/display/tables/table-viewer.js +18 -0
  219. package/dist/host/ErrorActions.d.ts +1 -1
  220. package/dist/host/ErrorNotice.d.ts +10 -0
  221. package/dist/host/ErrorNotice.js +19 -0
  222. package/dist/host/app-bindings.d.ts +155 -0
  223. package/dist/host/app-bindings.js +160 -0
  224. package/dist/host/diagnostics.d.ts +2 -2
  225. package/dist/host/diagnostics.js +2 -1
  226. package/dist/host/tables.d.ts +1 -6
  227. package/dist/host/types.d.ts +14 -7
  228. package/dist/levels/RichContent.d.ts +3 -0
  229. package/dist/levels/RichContent.js +102 -0
  230. package/dist/levels/RichContentInline.d.ts +28 -0
  231. package/dist/levels/RichContentInline.js +61 -0
  232. package/dist/levels/RichContentPreview.d.ts +12 -0
  233. package/dist/levels/RichContentPreview.js +39 -0
  234. package/dist/levels/RichContentStandardImpl.d.ts +12 -0
  235. package/dist/levels/RichContentStandardImpl.js +27 -0
  236. package/dist/levels/RichContentStaticProse.d.ts +46 -0
  237. package/dist/levels/RichContentStaticProse.js +100 -0
  238. package/dist/levels/depth.d.ts +18 -0
  239. package/dist/levels/depth.js +32 -0
  240. package/dist/levels/prose/inline-level-elements.d.ts +19 -0
  241. package/dist/levels/prose/inline-level-elements.js +103 -0
  242. package/dist/levels/prose/prose-block-elements.d.ts +25 -0
  243. package/dist/levels/prose/prose-block-elements.js +313 -0
  244. package/dist/levels/prose/prose-inline-elements.d.ts +13 -0
  245. package/dist/levels/prose/prose-inline-elements.js +143 -0
  246. package/dist/levels/prose/prose-prepare.d.ts +50 -0
  247. package/dist/levels/prose/prose-prepare.js +246 -0
  248. package/dist/levels/prose/remote-image-policy.d.ts +34 -0
  249. package/dist/levels/prose/remote-image-policy.js +153 -0
  250. package/dist/levels/prose/variant-root.d.ts +9 -0
  251. package/dist/levels/prose/variant-root.js +34 -0
  252. package/dist/levels/rich-content-types.d.ts +93 -0
  253. package/dist/levels/rich-content-types.js +4 -0
  254. package/dist/levels/server/DelimiterViolationReport.d.ts +7 -0
  255. package/dist/levels/server/DelimiterViolationReport.js +24 -0
  256. package/dist/levels/server/RichContentServer.d.ts +27 -0
  257. package/dist/levels/server/RichContentServer.js +97 -0
  258. package/dist/levels/standard/NestedRichContent.d.ts +7 -0
  259. package/dist/levels/standard/NestedRichContent.js +70 -0
  260. package/dist/levels/standard/StandardBlocks.d.ts +13 -0
  261. package/dist/levels/standard/StandardBlocks.js +239 -0
  262. package/dist/levels/standard/StandardKindRegion.d.ts +14 -0
  263. package/dist/levels/standard/StandardKindRegion.js +69 -0
  264. package/dist/levels/standard/standard-kind-region.d.ts +19 -0
  265. package/dist/levels/standard/standard-kind-region.js +21 -0
  266. package/dist/levels/standard/static-standard.d.ts +23 -0
  267. package/dist/levels/standard/static-standard.js +187 -0
  268. package/dist/levels/standard/stream-holdback.d.ts +2 -0
  269. package/dist/levels/standard/stream-holdback.js +77 -0
  270. package/dist/mermaid/MermaidFullscreen.d.ts +17 -0
  271. package/dist/mermaid/MermaidFullscreen.js +71 -0
  272. package/dist/mermaid/MermaidRenderer.d.ts +20 -0
  273. package/dist/mermaid/MermaidRenderer.js +267 -0
  274. package/dist/mermaid/MermaidView.d.ts +27 -0
  275. package/dist/mermaid/MermaidView.js +68 -0
  276. package/dist/mermaid/MermaidViewport.d.ts +75 -0
  277. package/dist/mermaid/MermaidViewport.js +286 -0
  278. package/dist/mermaid/adapters/er.d.ts +10 -0
  279. package/dist/mermaid/adapters/er.js +205 -0
  280. package/dist/mermaid/adapters/flowchart.d.ts +17 -0
  281. package/dist/mermaid/adapters/flowchart.js +634 -0
  282. package/dist/mermaid/adapters/journey.d.ts +9 -0
  283. package/dist/mermaid/adapters/journey.js +207 -0
  284. package/dist/mermaid/adapters/mindmap.d.ts +12 -0
  285. package/dist/mermaid/adapters/mindmap.js +252 -0
  286. package/dist/mermaid/adapters/pie.d.ts +7 -0
  287. package/dist/mermaid/adapters/pie.js +172 -0
  288. package/dist/mermaid/adapters/quadrant.d.ts +8 -0
  289. package/dist/mermaid/adapters/quadrant.js +231 -0
  290. package/dist/mermaid/adapters/register.d.ts +7 -0
  291. package/dist/mermaid/adapters/register.js +19 -0
  292. package/dist/mermaid/adapters/sequence.d.ts +8 -0
  293. package/dist/mermaid/adapters/sequence.js +251 -0
  294. package/dist/mermaid/adapters/state.d.ts +12 -0
  295. package/dist/mermaid/adapters/state.js +245 -0
  296. package/dist/mermaid/adapters/timeline.d.ts +8 -0
  297. package/dist/mermaid/adapters/timeline.js +245 -0
  298. package/dist/mermaid/catalog.d.ts +33 -0
  299. package/dist/mermaid/catalog.js +202 -0
  300. package/dist/mermaid/diagram-type.d.ts +39 -0
  301. package/dist/mermaid/diagram-type.js +89 -0
  302. package/dist/mermaid/export.d.ts +21 -0
  303. package/dist/mermaid/export.js +112 -0
  304. package/dist/mermaid/extract-fence.d.ts +15 -0
  305. package/dist/mermaid/extract-fence.js +22 -0
  306. package/dist/mermaid/lazy-draw.d.ts +40 -0
  307. package/dist/mermaid/lazy-draw.js +168 -0
  308. package/dist/mermaid/model/adapter.d.ts +28 -0
  309. package/dist/mermaid/model/adapter.js +16 -0
  310. package/dist/mermaid/model/ops.d.ts +282 -0
  311. package/dist/mermaid/model/ops.js +9 -0
  312. package/dist/mermaid/model/round-trip.d.ts +22 -0
  313. package/dist/mermaid/model/round-trip.js +45 -0
  314. package/dist/mermaid/model/types.d.ts +271 -0
  315. package/dist/mermaid/model/types.js +0 -0
  316. package/dist/mermaid/print-render.d.ts +9 -0
  317. package/dist/mermaid/print-render.js +39 -0
  318. package/dist/mermaid/runtime.d.ts +25 -0
  319. package/dist/mermaid/runtime.js +183 -0
  320. package/dist/mermaid/sanitize.d.ts +46 -0
  321. package/dist/mermaid/sanitize.js +234 -0
  322. package/dist/mermaid/types.d.ts +43 -0
  323. package/dist/mermaid/types.js +21 -0
  324. package/dist/mermaid/view/ViewModePane.d.ts +24 -0
  325. package/dist/mermaid/view/ViewModePane.js +9 -0
  326. package/dist/utils/client-lazy.d.ts +1 -1
  327. package/dist/utils/client-lazy.js +4 -1
  328. package/dist/utils/lifted/DiffView.d.ts +10 -0
  329. package/dist/utils/lifted/DiffView.js +26 -0
  330. package/dist/utils/lifted/IconButton.d.ts +24 -0
  331. package/dist/utils/lifted/IconButton.js +43 -0
  332. package/dist/utils/lifted/MatrxMiniLoader.d.ts +1 -0
  333. package/dist/utils/lifted/MatrxMiniLoader.js +8 -0
  334. package/dist/utils/lifted/ShimmerText.d.ts +5 -0
  335. package/dist/utils/lifted/ShimmerText.js +21 -0
  336. package/dist/utils/lifted/SuspenseLoader.d.ts +16 -0
  337. package/dist/utils/lifted/SuspenseLoader.js +42 -0
  338. package/dist/utils/lifted/Tooltip.d.ts +20 -0
  339. package/dist/utils/lifted/Tooltip.js +52 -0
  340. package/dist/utils/lifted/artifactId.d.ts +34 -0
  341. package/dist/utils/lifted/artifactId.js +15 -0
  342. package/dist/utils/lifted/canvasContent.d.ts +63 -0
  343. package/dist/utils/lifted/canvasContent.js +98 -0
  344. package/dist/utils/lifted/captureReactError.d.ts +24 -0
  345. package/dist/utils/lifted/captureReactError.js +28 -0
  346. package/dist/utils/lifted/chunk-load-recovery.d.ts +25 -0
  347. package/dist/utils/lifted/chunk-load-recovery.js +36 -0
  348. package/dist/utils/lifted/code-editor-agent-types.d.ts +6 -0
  349. package/dist/utils/lifted/code-editor-agent-types.js +0 -0
  350. package/dist/utils/lifted/code-editor-agents.d.ts +39 -0
  351. package/dist/utils/lifted/code-editor-agents.js +52 -0
  352. package/dist/utils/lifted/code-language-extension.d.ts +1 -0
  353. package/dist/utils/lifted/code-language-extension.js +60 -0
  354. package/dist/utils/lifted/custom-icons.d.ts +16 -0
  355. package/dist/utils/lifted/custom-icons.js +47 -0
  356. package/dist/utils/lifted/durability.d.ts +16 -0
  357. package/dist/utils/lifted/durability.js +45 -0
  358. package/dist/utils/lifted/errors.d.ts +30 -0
  359. package/dist/utils/lifted/errors.js +29 -0
  360. package/dist/utils/lifted/html-document.d.ts +1 -0
  361. package/dist/utils/lifted/html-document.js +12 -0
  362. package/dist/utils/lifted/languageOptions.d.ts +9 -0
  363. package/dist/utils/lifted/languageOptions.js +52 -0
  364. package/dist/utils/lifted/languages.d.ts +34 -0
  365. package/dist/utils/lifted/languages.js +175 -0
  366. package/dist/utils/lifted/loading-spinner.d.ts +18 -0
  367. package/dist/utils/lifted/loading-spinner.js +200 -0
  368. package/dist/utils/lifted/media-refs.d.ts +13 -0
  369. package/dist/utils/lifted/media-refs.js +27 -0
  370. package/dist/utils/lifted/scroll-root.d.ts +1 -0
  371. package/dist/utils/lifted/scroll-root.js +25 -0
  372. package/dist/utils/lifted/syntax-themes.d.ts +32 -0
  373. package/dist/utils/lifted/syntax-themes.js +100 -0
  374. package/dist/utils/lifted/url-utm.d.ts +24 -0
  375. package/dist/utils/lifted/url-utm.js +66 -0
  376. package/dist/utils/lifted/use-is-mounted.d.ts +24 -0
  377. package/dist/utils/lifted/use-is-mounted.js +21 -0
  378. package/dist/utils/lifted/useToastManager.d.ts +1 -0
  379. package/dist/utils/lifted/useToastManager.js +7 -0
  380. package/dist/utils/report-kind-at-raw-renderer.d.ts +19 -0
  381. package/dist/utils/report-kind-at-raw-renderer.js +32 -0
  382. package/package.json +32 -3
@@ -0,0 +1,100 @@
1
+ import { normalizeLanguage } from "./languages.js";
2
+ const JSON_SYNTAX_COLORS = {
3
+ dark: {
4
+ key: "#7dd3fc",
5
+ string: "#6ee7b7",
6
+ number: "#fbbf24",
7
+ boolean: "#c4b5fd",
8
+ null: "#a1a1aa",
9
+ punctuation: "#a1a1aa"
10
+ },
11
+ light: {
12
+ key: "#0369a1",
13
+ string: "#047857",
14
+ number: "#b45309",
15
+ boolean: "#6d28d9",
16
+ null: "#71717a",
17
+ punctuation: "#4b5563"
18
+ }
19
+ };
20
+ function hexForMonaco(color) {
21
+ return color.replace("#", "").toUpperCase();
22
+ }
23
+ let monacoJsonThemesRegistered = false;
24
+ function registerJsonMonacoThemes(monaco) {
25
+ if (monacoJsonThemesRegistered) return;
26
+ monacoJsonThemesRegistered = true;
27
+ const dark = JSON_SYNTAX_COLORS.dark;
28
+ const light = JSON_SYNTAX_COLORS.light;
29
+ monaco.editor.defineTheme("matrx-json-dark", {
30
+ base: "vs-dark",
31
+ inherit: true,
32
+ rules: [
33
+ { token: "string.key.json", foreground: hexForMonaco(dark.key) },
34
+ { token: "string.value.json", foreground: hexForMonaco(dark.string) },
35
+ { token: "number.json", foreground: hexForMonaco(dark.number) },
36
+ { token: "keyword.json", foreground: hexForMonaco(dark.boolean) },
37
+ {
38
+ token: "delimiter.bracket.json",
39
+ foreground: hexForMonaco(dark.punctuation)
40
+ },
41
+ {
42
+ token: "delimiter.array.json",
43
+ foreground: hexForMonaco(dark.punctuation)
44
+ },
45
+ {
46
+ token: "delimiter.colon.json",
47
+ foreground: hexForMonaco(dark.punctuation)
48
+ },
49
+ {
50
+ token: "delimiter.comma.json",
51
+ foreground: hexForMonaco(dark.punctuation)
52
+ }
53
+ ],
54
+ colors: {}
55
+ });
56
+ monaco.editor.defineTheme("matrx-json-light", {
57
+ base: "vs",
58
+ inherit: true,
59
+ rules: [
60
+ { token: "string.key.json", foreground: hexForMonaco(light.key) },
61
+ { token: "string.value.json", foreground: hexForMonaco(light.string) },
62
+ { token: "number.json", foreground: hexForMonaco(light.number) },
63
+ { token: "keyword.json", foreground: hexForMonaco(light.boolean) },
64
+ {
65
+ token: "delimiter.bracket.json",
66
+ foreground: hexForMonaco(light.punctuation)
67
+ },
68
+ {
69
+ token: "delimiter.array.json",
70
+ foreground: hexForMonaco(light.punctuation)
71
+ },
72
+ {
73
+ token: "delimiter.colon.json",
74
+ foreground: hexForMonaco(light.punctuation)
75
+ },
76
+ {
77
+ token: "delimiter.comma.json",
78
+ foreground: hexForMonaco(light.punctuation)
79
+ }
80
+ ],
81
+ colors: {}
82
+ });
83
+ }
84
+ function isJsonLanguage(language) {
85
+ if (!language) return false;
86
+ const normalized = normalizeLanguage(language).toLowerCase();
87
+ return normalized === "json" || normalized === "jsonc";
88
+ }
89
+ function resolveMonacoEditorTheme(language, mode) {
90
+ if (isJsonLanguage(language)) {
91
+ return mode === "dark" ? "matrx-json-dark" : "matrx-json-light";
92
+ }
93
+ return mode === "dark" ? "vs-dark" : "vs";
94
+ }
95
+ export {
96
+ JSON_SYNTAX_COLORS,
97
+ isJsonLanguage,
98
+ registerJsonMonacoThemes,
99
+ resolveMonacoEditorTheme
100
+ };
@@ -0,0 +1,24 @@
1
+ /**
2
+ * URL UTM Management Utility
3
+ *
4
+ * Ensures all outgoing links have the correct UTM source parameter
5
+ * and removes any existing utm_source to prevent conflicts.
6
+ */
7
+ /**
8
+ * Adds or replaces utm_source parameter in a URL
9
+ * @param url - The URL to modify
10
+ * @param utmSource - The UTM source value (default: 'aimatrx')
11
+ * @returns The modified URL with the correct utm_source parameter
12
+ */
13
+ export declare function addUtmSource(url: string, utmSource?: string): string;
14
+ /**
15
+ * Process multiple URLs in bulk
16
+ * Useful for batch processing
17
+ */
18
+ export declare function addUtmSourceToUrls(urls: string[], utmSource?: string): string[];
19
+ /**
20
+ * The link as its author wrote it: removes the utm_source WE add on render
21
+ * (`addUtmSource`). Copy uses it — a person copying text never receives a
22
+ * tracking parameter they did not write (2026-10-05 live walk).
23
+ */
24
+ export declare function stripOwnUtmSource(url: string, utmSource?: string): string;
@@ -0,0 +1,66 @@
1
+ function addUtmSource(url, utmSource = "aimatrx") {
2
+ if (!url || typeof url !== "string") {
3
+ return url;
4
+ }
5
+ try {
6
+ if (url.startsWith("#") || url.startsWith("/") || url.startsWith("mailto:") || url.startsWith("tel:")) {
7
+ return url;
8
+ }
9
+ const urlObj = new URL(url);
10
+ const params = urlObj.searchParams;
11
+ const paramsToRemove = [];
12
+ params.forEach((value, key) => {
13
+ if (key.toLowerCase() === "utm_source") {
14
+ paramsToRemove.push(key);
15
+ }
16
+ });
17
+ paramsToRemove.forEach((param) => params.delete(param));
18
+ params.set("utm_source", utmSource);
19
+ return urlObj.toString();
20
+ } catch (error) {
21
+ try {
22
+ if (!url.includes("://") && !url.startsWith("www.")) {
23
+ return url;
24
+ }
25
+ let fixedUrl = url;
26
+ if (url.startsWith("www.")) {
27
+ fixedUrl = "https://" + url;
28
+ }
29
+ const urlObj = new URL(fixedUrl);
30
+ const params = urlObj.searchParams;
31
+ const paramsToRemove = [];
32
+ params.forEach((value, key) => {
33
+ if (key.toLowerCase() === "utm_source") {
34
+ paramsToRemove.push(key);
35
+ }
36
+ });
37
+ paramsToRemove.forEach((param) => params.delete(param));
38
+ params.set("utm_source", utmSource);
39
+ return urlObj.toString();
40
+ } catch (innerError) {
41
+ console.warn("[addUtmSource] Failed to parse URL:", url, innerError);
42
+ return url;
43
+ }
44
+ }
45
+ }
46
+ function addUtmSourceToUrls(urls, utmSource = "aimatrx") {
47
+ return urls.map((url) => addUtmSource(url, utmSource));
48
+ }
49
+ function stripOwnUtmSource(url, utmSource = "aimatrx") {
50
+ if (!url || !/[?&]utm_source=/i.test(url)) return url;
51
+ try {
52
+ const u = new URL(url);
53
+ for (const key of [...u.searchParams.keys()]) {
54
+ if (key.toLowerCase() === "utm_source" && u.searchParams.get(key) === utmSource) u.searchParams.delete(key);
55
+ }
56
+ const out = u.toString();
57
+ return !url.endsWith("/") && out.endsWith("/") && u.pathname === "/" && !u.search && !u.hash ? out.slice(0, -1) : out.replace(/\?$/, "");
58
+ } catch {
59
+ return url;
60
+ }
61
+ }
62
+ export {
63
+ addUtmSource,
64
+ addUtmSourceToUrls,
65
+ stripOwnUtmSource
66
+ };
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Hook that returns true after the component has mounted on the client.
3
+ * Useful for avoiding hydration mismatches with dynamically generated IDs.
4
+ *
5
+ * @example
6
+ * const isMounted = useIsMounted()
7
+ * if (!isMounted) return null // or a placeholder
8
+ * return <ComponentWithDynamicIds />
9
+ */
10
+ export declare function useIsMounted(): boolean;
11
+ /**
12
+ * True only while this component's effects are ATTACHED: false on the first
13
+ * render, true after mount, false again while a React `<Activity
14
+ * mode="hidden">` ancestor has detached its effects (a sleeping board tile,
15
+ * a hidden tab), true again when it is shown.
16
+ *
17
+ * Use it to gate a child that owns an imperative instance created in an
18
+ * effect and destroyed in that effect's cleanup, but guarded against being
19
+ * created twice — `@monaco-editor/react`'s `<Editor>` is the case that
20
+ * forced this: on hide its cleanup disposes the editor, on show its state
21
+ * still says "ready", so it never creates another and the pane stays blank.
22
+ * Rendering it only while attached gives it a fresh mount on every show.
23
+ */
24
+ export declare function useEffectsAttached(): boolean;
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { useState, useEffect } from "react";
3
+ function useIsMounted() {
4
+ const [isMounted, setIsMounted] = useState(false);
5
+ useEffect(() => {
6
+ setIsMounted(true);
7
+ }, []);
8
+ return isMounted;
9
+ }
10
+ function useEffectsAttached() {
11
+ const [attached, setAttached] = useState(false);
12
+ useEffect(() => {
13
+ setAttached(true);
14
+ return () => setAttached(false);
15
+ }, []);
16
+ return attached;
17
+ }
18
+ export {
19
+ useEffectsAttached,
20
+ useIsMounted
21
+ };
@@ -0,0 +1 @@
1
+ export declare function useToastManager(): import("../../host/index.js").RichContentToast;
@@ -0,0 +1,7 @@
1
+ import { toast } from "../../host/toast.js";
2
+ function useToastManager() {
3
+ return toast;
4
+ }
5
+ export {
6
+ useToastManager
7
+ };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * THE BOTTOM-LAYER REPORT — a low-level raw renderer (a markdown leaf, the
3
+ * value grid, a JSON viewer, the JSON code card) was handed kind data. It has
4
+ * already rendered the data as its kind; this files the CALLER in the Error
5
+ * Inspector so the screen that skipped the value door is found and fixed
6
+ * (Arman, 2026-09-30: a `__kind` is never drawn as raw JSON). Checklist C4:
7
+ * `features/content-ir/docs/KIND_NEVER_RAW_CHECKLIST.md`.
8
+ *
9
+ * Once per component + slug per session: a render loop must not flood the
10
+ * inspector. The owner stack (development builds) names the caller.
11
+ */
12
+ export declare function reportKindAtRawRenderer(component: string, slug: string | null, ownerStack?: string | null): void;
13
+ /** Test seam: forget what was reported. */
14
+ export declare function resetKindAtRawRendererReports(): void;
15
+ /**
16
+ * Report from a component's render. The owner stack is read during render
17
+ * (the only time React has it) and filed after commit.
18
+ */
19
+ export declare function useReportKindAtRawRenderer(component: string, slug: string | null, active: boolean): void;
@@ -0,0 +1,32 @@
1
+ import { captureOwnerStack, useEffect } from "react";
2
+ import { captureError } from "../host/diagnostics.js";
3
+ const reported = /* @__PURE__ */ new Set();
4
+ function reportKindAtRawRenderer(component, slug, ownerStack) {
5
+ const key = `${component}:${slug ?? ""}`;
6
+ if (reported.has(key)) return;
7
+ reported.add(key);
8
+ captureError({
9
+ source: "content-ir",
10
+ relation: slug ?? void 0,
11
+ message: `${component} was handed kind data${slug ? ` ("${slug}")` : ""} \u2014 rendered it as its kind instead of raw.`,
12
+ hint: "The caller should render this value through AnswerValueView (or text through MarkdownStream). The call site is in the stack.",
13
+ callSite: ownerStack ?? void 0,
14
+ stack: ownerStack ?? void 0,
15
+ recoverable: true
16
+ });
17
+ }
18
+ function resetKindAtRawRendererReports() {
19
+ reported.clear();
20
+ }
21
+ function useReportKindAtRawRenderer(component, slug, active) {
22
+ const ownerStack = active && typeof captureOwnerStack === "function" ? captureOwnerStack() : null;
23
+ useEffect(() => {
24
+ if (!active) return;
25
+ reportKindAtRawRenderer(component, slug, ownerStack);
26
+ }, [component, slug, active]);
27
+ }
28
+ export {
29
+ reportKindAtRawRenderer,
30
+ resetKindAtRawRendererReports,
31
+ useReportKindAtRawRenderer
32
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/rich-content",
3
- "version": "0.2.3",
3
+ "version": "0.2.6",
4
4
  "description": "The AI Matrx formatted-text engine: the one markdown renderer, streaming markdown, the block splitter and renderer, the generic blocks, <RichContent> levels, the rich-document action registry and menus, copy, and the selection toolbar — as portable React.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -39,6 +39,18 @@
39
39
  "types": "./dist/display/*.d.ts",
40
40
  "import": "./dist/display/*.js"
41
41
  },
42
+ "./levels/*": {
43
+ "types": "./dist/levels/*.d.ts",
44
+ "import": "./dist/levels/*.js"
45
+ },
46
+ "./code-block/*": {
47
+ "types": "./dist/code-block/*.d.ts",
48
+ "import": "./dist/code-block/*.js"
49
+ },
50
+ "./mermaid/*": {
51
+ "types": "./dist/mermaid/*.d.ts",
52
+ "import": "./dist/mermaid/*.js"
53
+ },
42
54
  "./kinds/*": {
43
55
  "types": "./dist/kinds/*.d.ts",
44
56
  "import": "./dist/kinds/*.js"
@@ -51,21 +63,32 @@
51
63
  "./package.json": "./package.json"
52
64
  },
53
65
  "dependencies": {
66
+ "@shikijs/stream": "^4.4.3",
67
+ "@shikijs/themes": "^4.4.3",
68
+ "@types/dagre": "^0.7.53",
54
69
  "@types/hast": "^3.0.4",
55
70
  "@types/mdast": "^4.0.4",
56
71
  "@types/unist": "^3.0.3",
72
+ "@xyflow/react": "^12.12.0",
73
+ "dagre": "^0.8.5",
57
74
  "hast-util-from-html": "^2.0.3",
58
75
  "hast-util-from-html-isomorphic": "^2.0.0",
59
76
  "hast-util-sanitize": "^5.0.2",
60
77
  "hast-util-to-string": "^3.0.1",
61
78
  "hast-util-to-text": "^4.0.2",
79
+ "html2canvas": "^1.4.1",
62
80
  "katex": "^0.18.9",
63
81
  "lucide-react": "^1.48.0",
64
82
  "marked": "^18.0.14",
83
+ "mdast-util-from-markdown": "^2.1.0",
84
+ "mdast-util-gfm": "^3.1.0",
65
85
  "mdast-util-math": "^3.0.0",
86
+ "micromark-extension-gfm": "^3.0.0",
66
87
  "micromark-factory-space": "^2.1.0",
67
88
  "micromark-util-character": "^2.1.1",
89
+ "react-icons": "^5.7.0",
68
90
  "react-markdown": "^10.1.0",
91
+ "recharts": "^3.10.1",
69
92
  "rehype-raw": "^7.0.0",
70
93
  "rehype-slug": "^6.0.0",
71
94
  "remark-breaks": "^4.0.0",
@@ -78,19 +101,25 @@
78
101
  "remark-rehype": "^11.1.2",
79
102
  "remend": "1.3.1",
80
103
  "server-only": "^0.0.1",
104
+ "shiki": "^4.4.3",
81
105
  "smol-toml": "^1.9.0",
82
106
  "unified": "^11.0.5",
83
107
  "unist-util-visit": "^5.1.0",
84
108
  "unist-util-visit-parents": "^6.0.2",
85
109
  "yaml": "^2.9.1",
86
110
  "@ai-matrx/agents": "latest",
111
+ "@ai-matrx/canvas": "latest",
87
112
  "@ai-matrx/content-ir": "latest",
88
113
  "@ai-matrx/content-ir-react": "latest",
114
+ "@ai-matrx/data": "latest",
89
115
  "@ai-matrx/design-system": "latest",
90
- "@ai-matrx/kit": "latest",
116
+ "@ai-matrx/diff": "latest",
91
117
  "@ai-matrx/media": "latest",
92
118
  "@ai-matrx/print": "latest",
93
- "@ai-matrx/records": "latest"
119
+ "@ai-matrx/icons": "latest",
120
+ "@ai-matrx/records": "latest",
121
+ "@ai-matrx/tap-target": "latest",
122
+ "@ai-matrx/kit": "latest"
94
123
  },
95
124
  "peerDependencies": {
96
125
  "react": ">=19.0.0",