@dxos/plugin-markdown 0.8.4-main.fd6878d → 0.8.4-staging.60fe92afc8

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 (402) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/EditableMarkdownCard-AW7MD35U.mjs +34 -0
  4. package/dist/lib/neutral/EditableMarkdownCard-AW7MD35U.mjs.map +7 -0
  5. package/dist/lib/neutral/MarkdownArticle-LWT5RFFJ.mjs +126 -0
  6. package/dist/lib/neutral/MarkdownArticle-LWT5RFFJ.mjs.map +7 -0
  7. package/dist/lib/neutral/MarkdownCard-TBLIRDBO.mjs +108 -0
  8. package/dist/lib/neutral/MarkdownCard-TBLIRDBO.mjs.map +7 -0
  9. package/dist/lib/neutral/MarkdownPlugin.mjs +62 -0
  10. package/dist/lib/neutral/MarkdownPlugin.mjs.map +7 -0
  11. package/dist/lib/neutral/MarkdownPlugin.node.mjs +25 -0
  12. package/dist/lib/neutral/MarkdownPlugin.node.mjs.map +7 -0
  13. package/dist/lib/neutral/MarkdownPlugin.workerd.mjs +23 -0
  14. package/dist/lib/neutral/MarkdownPlugin.workerd.mjs.map +7 -0
  15. package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs +32 -0
  16. package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs.map +7 -0
  17. package/dist/lib/neutral/anchor-sort-UXN4RHFX.mjs +32 -0
  18. package/dist/lib/neutral/anchor-sort-UXN4RHFX.mjs.map +7 -0
  19. package/dist/lib/neutral/app-graph-builder-BWBA23FF.mjs +67 -0
  20. package/dist/lib/neutral/app-graph-builder-BWBA23FF.mjs.map +7 -0
  21. package/dist/lib/neutral/app-graph-serializer-EN5E3BMG.mjs +56 -0
  22. package/dist/lib/neutral/app-graph-serializer-EN5E3BMG.mjs.map +7 -0
  23. package/dist/lib/neutral/blueprint-definition-DSPXK77L.mjs +15 -0
  24. package/dist/lib/neutral/blueprint-definition-DSPXK77L.mjs.map +7 -0
  25. package/dist/lib/neutral/blueprints/index.mjs +8 -0
  26. package/dist/lib/neutral/capabilities/index.mjs +29 -0
  27. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  28. package/dist/lib/neutral/capabilities/node.mjs +11 -0
  29. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  30. package/dist/lib/neutral/chunk-36QFEVOZ.mjs +30 -0
  31. package/dist/lib/neutral/chunk-36QFEVOZ.mjs.map +7 -0
  32. package/dist/lib/neutral/chunk-67DKWOKF.mjs +10 -0
  33. package/dist/lib/neutral/chunk-67DKWOKF.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-CIJD7P6X.mjs +8 -0
  35. package/dist/lib/neutral/chunk-CIJD7P6X.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  37. package/dist/lib/neutral/chunk-KDN4GKG2.mjs +98 -0
  38. package/dist/lib/neutral/chunk-KDN4GKG2.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-LXNSKCPD.mjs +44 -0
  40. package/dist/lib/neutral/chunk-LXNSKCPD.mjs.map +7 -0
  41. package/dist/lib/neutral/chunk-Y2LQRUU7.mjs +285 -0
  42. package/dist/lib/neutral/chunk-Y2LQRUU7.mjs.map +7 -0
  43. package/dist/lib/neutral/comment-config-EGY7RPPW.mjs +32 -0
  44. package/dist/lib/neutral/comment-config-EGY7RPPW.mjs.map +7 -0
  45. package/dist/lib/neutral/components/index.mjs +378 -0
  46. package/dist/lib/neutral/components/index.mjs.map +7 -0
  47. package/dist/lib/neutral/containers/index.mjs +13 -0
  48. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  49. package/dist/lib/neutral/create-JK35XC4R.mjs +29 -0
  50. package/dist/lib/neutral/create-JK35XC4R.mjs.map +7 -0
  51. package/dist/lib/neutral/create-markdown-7MLE625M.mjs +20 -0
  52. package/dist/lib/neutral/create-markdown-7MLE625M.mjs.map +7 -0
  53. package/dist/lib/neutral/create-object-MU2LGXG6.mjs +31 -0
  54. package/dist/lib/neutral/create-object-MU2LGXG6.mjs.map +7 -0
  55. package/dist/lib/neutral/hooks/index.mjs +317 -0
  56. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  57. package/dist/lib/neutral/index.mjs +48 -0
  58. package/dist/lib/neutral/index.mjs.map +7 -0
  59. package/dist/lib/neutral/meta.json +1 -0
  60. package/dist/lib/neutral/meta.mjs +8 -0
  61. package/dist/lib/neutral/meta.mjs.map +7 -0
  62. package/dist/lib/neutral/navigation-resolver-3KBOMN4U.mjs +14 -0
  63. package/dist/lib/neutral/navigation-resolver-3KBOMN4U.mjs.map +7 -0
  64. package/dist/lib/neutral/open-5YC77C4O.mjs +20 -0
  65. package/dist/lib/neutral/open-5YC77C4O.mjs.map +7 -0
  66. package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs +13 -0
  67. package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs.map +7 -0
  68. package/dist/lib/neutral/operations/index.mjs +8 -0
  69. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  70. package/dist/lib/neutral/plugin.mjs +16 -0
  71. package/dist/lib/neutral/plugin.mjs.map +7 -0
  72. package/dist/lib/neutral/react-surface-XYZJBKHZ.mjs +119 -0
  73. package/dist/lib/neutral/react-surface-XYZJBKHZ.mjs.map +7 -0
  74. package/dist/lib/neutral/scroll-to-anchor-GAFB7W55.mjs +38 -0
  75. package/dist/lib/neutral/scroll-to-anchor-GAFB7W55.mjs.map +7 -0
  76. package/dist/lib/neutral/set-view-mode-N7UHYMPG.mjs +24 -0
  77. package/dist/lib/neutral/set-view-mode-N7UHYMPG.mjs.map +7 -0
  78. package/dist/lib/neutral/settings-TDGDLCUR.mjs +34 -0
  79. package/dist/lib/neutral/settings-TDGDLCUR.mjs.map +7 -0
  80. package/dist/lib/neutral/state-5COCF5PN.mjs +44 -0
  81. package/dist/lib/neutral/state-5COCF5PN.mjs.map +7 -0
  82. package/dist/lib/neutral/testing.mjs +30 -0
  83. package/dist/lib/neutral/testing.mjs.map +7 -0
  84. package/dist/lib/neutral/translations.mjs +44 -0
  85. package/dist/lib/neutral/translations.mjs.map +7 -0
  86. package/dist/lib/neutral/types/index.mjs +16 -0
  87. package/dist/lib/neutral/types/index.mjs.map +7 -0
  88. package/dist/lib/neutral/update-markdown-NNINDDV5.mjs +44 -0
  89. package/dist/lib/neutral/update-markdown-NNINDDV5.mjs.map +7 -0
  90. package/dist/types/src/MarkdownPlugin.d.ts +3 -1
  91. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  92. package/dist/types/src/MarkdownPlugin.node.d.ts +4 -0
  93. package/dist/types/src/MarkdownPlugin.node.d.ts.map +1 -0
  94. package/dist/types/src/MarkdownPlugin.test.d.ts +2 -0
  95. package/dist/types/src/MarkdownPlugin.test.d.ts.map +1 -0
  96. package/dist/types/src/MarkdownPlugin.workerd.d.ts +4 -0
  97. package/dist/types/src/MarkdownPlugin.workerd.d.ts.map +1 -0
  98. package/dist/types/src/blueprints/index.d.ts +2 -0
  99. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  100. package/dist/types/src/blueprints/markdown-blueprint.d.ts +4 -0
  101. package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -0
  102. package/dist/types/src/capabilities/anchor-sort.d.ts +4 -4
  103. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
  105. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  106. package/dist/types/src/capabilities/app-graph-serializer.d.ts +3 -2
  107. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  109. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  110. package/dist/types/src/capabilities/comment-config.d.ts +6 -0
  111. package/dist/types/src/capabilities/comment-config.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  113. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/index.d.ts +19 -15
  115. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/navigation-resolver.d.ts +6 -0
  117. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/node.d.ts +10 -0
  119. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  120. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  121. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  123. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  124. package/dist/types/src/capabilities/settings.d.ts +4 -2
  125. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  126. package/dist/types/src/capabilities/state.d.ts +4 -9
  127. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  128. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +11 -0
  129. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -0
  130. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +52 -21
  131. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  132. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +8 -15
  133. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  134. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +33 -0
  135. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -0
  136. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +13 -0
  137. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -0
  138. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +4 -4
  139. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  140. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts +94 -0
  141. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts.map +1 -0
  142. package/dist/types/src/components/MarkdownSettings/index.d.ts +1 -1
  143. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +1 -1
  144. package/dist/types/src/components/index.d.ts +3 -3
  145. package/dist/types/src/components/index.d.ts.map +1 -1
  146. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts +15 -0
  147. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts.map +1 -0
  148. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.stories.d.ts +9 -0
  149. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.stories.d.ts.map +1 -0
  150. package/dist/types/src/containers/EditableMarkdownCard/index.d.ts +3 -0
  151. package/dist/types/src/containers/EditableMarkdownCard/index.d.ts.map +1 -0
  152. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.d.ts +40 -0
  153. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.d.ts.map +1 -0
  154. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts +97 -0
  155. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts.map +1 -0
  156. package/dist/types/src/containers/MarkdownArticle/index.d.ts +3 -0
  157. package/dist/types/src/containers/MarkdownArticle/index.d.ts.map +1 -0
  158. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts +8 -0
  159. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  160. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts +9 -0
  161. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  162. package/dist/types/src/containers/MarkdownCard/index.d.ts +2 -0
  163. package/dist/types/src/containers/MarkdownCard/index.d.ts.map +1 -0
  164. package/dist/types/src/containers/MarkdownCard/snippet.d.ts +17 -0
  165. package/dist/types/src/containers/MarkdownCard/snippet.d.ts.map +1 -0
  166. package/dist/types/src/containers/index.d.ts +6 -0
  167. package/dist/types/src/containers/index.d.ts.map +1 -0
  168. package/dist/types/src/hooks/index.d.ts +3 -1
  169. package/dist/types/src/hooks/index.d.ts.map +1 -1
  170. package/dist/types/src/hooks/useEditorMenuOptions.d.ts +9 -0
  171. package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -0
  172. package/dist/types/src/hooks/useExtensions.d.ts +25 -0
  173. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -0
  174. package/dist/types/src/hooks/useLinkQuery.d.ts +4 -0
  175. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -0
  176. package/dist/types/src/index.d.ts +3 -3
  177. package/dist/types/src/index.d.ts.map +1 -1
  178. package/dist/types/src/meta.d.ts +2 -3
  179. package/dist/types/src/meta.d.ts.map +1 -1
  180. package/dist/types/src/operations/create-markdown.d.ts +5 -0
  181. package/dist/types/src/operations/create-markdown.d.ts.map +1 -0
  182. package/dist/types/src/operations/create.d.ts +5 -0
  183. package/dist/types/src/operations/create.d.ts.map +1 -0
  184. package/dist/types/src/operations/create.test.d.ts +2 -0
  185. package/dist/types/src/operations/create.test.d.ts.map +1 -0
  186. package/dist/types/src/operations/index.d.ts +3 -0
  187. package/dist/types/src/operations/index.d.ts.map +1 -0
  188. package/dist/types/src/operations/open.d.ts +5 -0
  189. package/dist/types/src/operations/open.d.ts.map +1 -0
  190. package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
  191. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
  192. package/dist/types/src/operations/set-view-mode.d.ts +5 -0
  193. package/dist/types/src/operations/set-view-mode.d.ts.map +1 -0
  194. package/dist/types/src/operations/update-markdown.d.ts +5 -0
  195. package/dist/types/src/operations/update-markdown.d.ts.map +1 -0
  196. package/dist/types/src/operations/update.test.d.ts +2 -0
  197. package/dist/types/src/operations/update.test.d.ts.map +1 -0
  198. package/dist/types/src/paths.d.ts +3 -0
  199. package/dist/types/src/paths.d.ts.map +1 -0
  200. package/dist/types/src/plugin.d.ts +4 -0
  201. package/dist/types/src/plugin.d.ts.map +1 -0
  202. package/dist/types/src/testing.d.ts +7 -0
  203. package/dist/types/src/testing.d.ts.map +1 -0
  204. package/dist/types/src/translations.d.ts +74 -32
  205. package/dist/types/src/translations.d.ts.map +1 -1
  206. package/dist/types/src/types/Markdown.d.ts +36 -33
  207. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  208. package/dist/types/src/types/MarkdownCapabilities.d.ts +32 -0
  209. package/dist/types/src/types/MarkdownCapabilities.d.ts.map +1 -0
  210. package/dist/types/src/types/MarkdownEvents.d.ts +3 -0
  211. package/dist/types/src/types/MarkdownEvents.d.ts.map +1 -0
  212. package/dist/types/src/types/MarkdownOperation.d.ts +64 -0
  213. package/dist/types/src/types/MarkdownOperation.d.ts.map +1 -0
  214. package/dist/types/src/types/Settings.d.ts +30 -0
  215. package/dist/types/src/types/Settings.d.ts.map +1 -0
  216. package/dist/types/src/types/index.d.ts +5 -2
  217. package/dist/types/src/types/index.d.ts.map +1 -1
  218. package/dist/types/src/types/types.d.ts +3 -2
  219. package/dist/types/src/types/types.d.ts.map +1 -1
  220. package/dist/types/src/util.d.ts +8 -5
  221. package/dist/types/src/util.d.ts.map +1 -1
  222. package/dist/types/src/util.test.d.ts +2 -0
  223. package/dist/types/src/util.test.d.ts.map +1 -0
  224. package/dist/types/tsconfig.tsbuildinfo +1 -1
  225. package/package.json +154 -68
  226. package/src/MarkdownPlugin.node.ts +20 -0
  227. package/src/MarkdownPlugin.test.ts +26 -0
  228. package/src/MarkdownPlugin.tsx +52 -103
  229. package/src/MarkdownPlugin.workerd.ts +19 -0
  230. package/src/blueprints/index.ts +5 -0
  231. package/src/blueprints/markdown-blueprint.ts +43 -0
  232. package/src/capabilities/anchor-sort.ts +29 -22
  233. package/src/capabilities/app-graph-builder.ts +63 -0
  234. package/src/capabilities/app-graph-serializer.ts +53 -43
  235. package/src/capabilities/blueprint-definition.ts +19 -0
  236. package/src/capabilities/comment-config.ts +36 -0
  237. package/src/capabilities/create-object.ts +33 -0
  238. package/src/capabilities/index.ts +27 -9
  239. package/src/capabilities/navigation-resolver.ts +19 -0
  240. package/src/capabilities/node.ts +13 -0
  241. package/src/capabilities/operation-handler.ts +16 -0
  242. package/src/capabilities/react-surface.tsx +116 -103
  243. package/src/capabilities/settings.ts +30 -18
  244. package/src/capabilities/state.ts +41 -25
  245. package/src/components/MarkdownEditor/FileUpload.tsx +68 -0
  246. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +64 -38
  247. package/src/components/MarkdownEditor/MarkdownEditor.tsx +251 -256
  248. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +171 -0
  249. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +50 -0
  250. package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +40 -0
  251. package/src/components/MarkdownSettings/MarkdownSettings.tsx +22 -92
  252. package/src/components/MarkdownSettings/index.ts +1 -1
  253. package/src/components/index.ts +4 -5
  254. package/src/containers/EditableMarkdownCard/EditableMarkdownCard.stories.tsx +86 -0
  255. package/src/containers/EditableMarkdownCard/EditableMarkdownCard.tsx +44 -0
  256. package/src/containers/EditableMarkdownCard/index.ts +6 -0
  257. package/src/containers/MarkdownArticle/MarkdownArticle.stories.tsx +141 -0
  258. package/src/containers/MarkdownArticle/MarkdownArticle.tsx +146 -0
  259. package/src/containers/MarkdownArticle/index.ts +6 -0
  260. package/src/containers/MarkdownCard/MarkdownCard.stories.tsx +68 -0
  261. package/src/containers/MarkdownCard/MarkdownCard.tsx +76 -0
  262. package/src/containers/MarkdownCard/index.ts +5 -0
  263. package/src/containers/MarkdownCard/snippet.ts +54 -0
  264. package/src/containers/index.ts +11 -0
  265. package/src/hooks/index.ts +3 -1
  266. package/src/hooks/useEditorMenuOptions.ts +68 -0
  267. package/src/hooks/useExtensions.tsx +268 -0
  268. package/src/hooks/useLinkQuery.ts +94 -0
  269. package/src/index.ts +3 -5
  270. package/src/meta.ts +18 -11
  271. package/src/operations/create-markdown.ts +19 -0
  272. package/src/operations/create.conversations.json +1 -0
  273. package/src/operations/create.test.ts +96 -0
  274. package/src/operations/create.ts +40 -0
  275. package/src/operations/index.ts +14 -0
  276. package/src/operations/open.ts +25 -0
  277. package/src/operations/scroll-to-anchor.ts +41 -0
  278. package/src/operations/set-view-mode.ts +23 -0
  279. package/src/operations/update-markdown.ts +51 -0
  280. package/src/operations/update.conversations.json +1 -0
  281. package/src/operations/update.test.ts +213 -0
  282. package/src/paths.ts +11 -0
  283. package/src/plugin.ts +11 -0
  284. package/src/testing.ts +40 -0
  285. package/src/translations.ts +28 -32
  286. package/src/types/Markdown.ts +28 -34
  287. package/src/types/MarkdownCapabilities.ts +51 -0
  288. package/src/types/MarkdownEvents.ts +14 -0
  289. package/src/types/MarkdownOperation.ts +133 -0
  290. package/src/types/Settings.ts +85 -0
  291. package/src/types/index.ts +6 -2
  292. package/src/types/types.ts +8 -3
  293. package/src/util.test.ts +44 -0
  294. package/src/util.tsx +84 -9
  295. package/dist/lib/browser/MarkdownCard-IMCR4A4V.mjs +0 -80
  296. package/dist/lib/browser/MarkdownCard-IMCR4A4V.mjs.map +0 -7
  297. package/dist/lib/browser/MarkdownContainer-VGJPHMVG.mjs +0 -780
  298. package/dist/lib/browser/MarkdownContainer-VGJPHMVG.mjs.map +0 -7
  299. package/dist/lib/browser/anchor-sort-AJKRIWFD.mjs +0 -32
  300. package/dist/lib/browser/anchor-sort-AJKRIWFD.mjs.map +0 -7
  301. package/dist/lib/browser/app-graph-serializer-OIS3MZX2.mjs +0 -52
  302. package/dist/lib/browser/app-graph-serializer-OIS3MZX2.mjs.map +0 -7
  303. package/dist/lib/browser/chunk-IKPZHFTW.mjs +0 -30
  304. package/dist/lib/browser/chunk-IKPZHFTW.mjs.map +0 -7
  305. package/dist/lib/browser/chunk-JHH7VL52.mjs +0 -18
  306. package/dist/lib/browser/chunk-JHH7VL52.mjs.map +0 -7
  307. package/dist/lib/browser/chunk-JMBQG2ZC.mjs +0 -50
  308. package/dist/lib/browser/chunk-JMBQG2ZC.mjs.map +0 -7
  309. package/dist/lib/browser/chunk-JTIGSUMB.mjs +0 -80
  310. package/dist/lib/browser/chunk-JTIGSUMB.mjs.map +0 -7
  311. package/dist/lib/browser/chunk-LMJPXTPL.mjs +0 -16
  312. package/dist/lib/browser/chunk-LMJPXTPL.mjs.map +0 -7
  313. package/dist/lib/browser/chunk-MVL4K3OD.mjs +0 -52
  314. package/dist/lib/browser/chunk-MVL4K3OD.mjs.map +0 -7
  315. package/dist/lib/browser/index.mjs +0 -158
  316. package/dist/lib/browser/index.mjs.map +0 -7
  317. package/dist/lib/browser/intent-resolver-BLLHRSTQ.mjs +0 -60
  318. package/dist/lib/browser/intent-resolver-BLLHRSTQ.mjs.map +0 -7
  319. package/dist/lib/browser/meta.json +0 -1
  320. package/dist/lib/browser/react-surface-NL3BZR6H.mjs +0 -208
  321. package/dist/lib/browser/react-surface-NL3BZR6H.mjs.map +0 -7
  322. package/dist/lib/browser/settings-Z7ZV7SLC.mjs +0 -28
  323. package/dist/lib/browser/settings-Z7ZV7SLC.mjs.map +0 -7
  324. package/dist/lib/browser/state-ORTZIEJU.mjs +0 -37
  325. package/dist/lib/browser/state-ORTZIEJU.mjs.map +0 -7
  326. package/dist/lib/browser/types/index.mjs +0 -10
  327. package/dist/lib/node-esm/MarkdownCard-JV2YDV3M.mjs +0 -81
  328. package/dist/lib/node-esm/MarkdownCard-JV2YDV3M.mjs.map +0 -7
  329. package/dist/lib/node-esm/MarkdownContainer-BJRNCXJZ.mjs +0 -781
  330. package/dist/lib/node-esm/MarkdownContainer-BJRNCXJZ.mjs.map +0 -7
  331. package/dist/lib/node-esm/anchor-sort-N7WEA5E3.mjs +0 -33
  332. package/dist/lib/node-esm/anchor-sort-N7WEA5E3.mjs.map +0 -7
  333. package/dist/lib/node-esm/app-graph-serializer-Q3B44VFB.mjs +0 -53
  334. package/dist/lib/node-esm/app-graph-serializer-Q3B44VFB.mjs.map +0 -7
  335. package/dist/lib/node-esm/chunk-AYWAYBAY.mjs +0 -17
  336. package/dist/lib/node-esm/chunk-AYWAYBAY.mjs.map +0 -7
  337. package/dist/lib/node-esm/chunk-H4I2FGDZ.mjs +0 -31
  338. package/dist/lib/node-esm/chunk-H4I2FGDZ.mjs.map +0 -7
  339. package/dist/lib/node-esm/chunk-H6TITL7A.mjs +0 -20
  340. package/dist/lib/node-esm/chunk-H6TITL7A.mjs.map +0 -7
  341. package/dist/lib/node-esm/chunk-JDMMLOB6.mjs +0 -51
  342. package/dist/lib/node-esm/chunk-JDMMLOB6.mjs.map +0 -7
  343. package/dist/lib/node-esm/chunk-KIRZFVX5.mjs +0 -81
  344. package/dist/lib/node-esm/chunk-KIRZFVX5.mjs.map +0 -7
  345. package/dist/lib/node-esm/chunk-Z4XQ6C3D.mjs +0 -53
  346. package/dist/lib/node-esm/chunk-Z4XQ6C3D.mjs.map +0 -7
  347. package/dist/lib/node-esm/index.mjs +0 -159
  348. package/dist/lib/node-esm/index.mjs.map +0 -7
  349. package/dist/lib/node-esm/intent-resolver-NHPUPSWK.mjs +0 -61
  350. package/dist/lib/node-esm/intent-resolver-NHPUPSWK.mjs.map +0 -7
  351. package/dist/lib/node-esm/meta.json +0 -1
  352. package/dist/lib/node-esm/react-surface-XJ6ODCBE.mjs +0 -209
  353. package/dist/lib/node-esm/react-surface-XJ6ODCBE.mjs.map +0 -7
  354. package/dist/lib/node-esm/settings-UCXEWBCT.mjs +0 -29
  355. package/dist/lib/node-esm/settings-UCXEWBCT.mjs.map +0 -7
  356. package/dist/lib/node-esm/state-47WSZG54.mjs +0 -38
  357. package/dist/lib/node-esm/state-47WSZG54.mjs.map +0 -7
  358. package/dist/lib/node-esm/types/index.mjs +0 -11
  359. package/dist/types/src/capabilities/artifact-definition.d.ts +0 -11
  360. package/dist/types/src/capabilities/artifact-definition.d.ts.map +0 -1
  361. package/dist/types/src/capabilities/capabilities.d.ts +0 -12
  362. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  363. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  364. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  365. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +0 -7
  366. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +0 -1
  367. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +0 -42
  368. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +0 -1
  369. package/dist/types/src/components/MarkdownCard/index.d.ts +0 -4
  370. package/dist/types/src/components/MarkdownCard/index.d.ts.map +0 -1
  371. package/dist/types/src/components/MarkdownContainer.d.ts +0 -18
  372. package/dist/types/src/components/MarkdownContainer.d.ts.map +0 -1
  373. package/dist/types/src/components/MarkdownContainer.stories.d.ts +0 -9
  374. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +0 -1
  375. package/dist/types/src/components/Suggestions.stories.d.ts +0 -12
  376. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  377. package/dist/types/src/components/Toolbar.stories.d.ts +0 -11
  378. package/dist/types/src/components/Toolbar.stories.d.ts.map +0 -1
  379. package/dist/types/src/events.d.ts +0 -4
  380. package/dist/types/src/events.d.ts.map +0 -1
  381. package/dist/types/src/extensions.d.ts +0 -24
  382. package/dist/types/src/extensions.d.ts.map +0 -1
  383. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +0 -6
  384. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +0 -1
  385. package/dist/types/src/types/MarkdownAction.d.ts +0 -42
  386. package/dist/types/src/types/MarkdownAction.d.ts.map +0 -1
  387. package/src/capabilities/artifact-definition.ts +0 -119
  388. package/src/capabilities/capabilities.ts +0 -21
  389. package/src/capabilities/intent-resolver.ts +0 -58
  390. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +0 -79
  391. package/src/components/MarkdownCard/MarkdownCard.tsx +0 -75
  392. package/src/components/MarkdownCard/index.ts +0 -9
  393. package/src/components/MarkdownContainer.stories.tsx +0 -100
  394. package/src/components/MarkdownContainer.tsx +0 -255
  395. package/src/components/Suggestions.stories.tsx +0 -221
  396. package/src/components/Toolbar.stories.tsx +0 -112
  397. package/src/events.ts +0 -11
  398. package/src/extensions.tsx +0 -328
  399. package/src/hooks/useSelectCurrentThread.tsx +0 -56
  400. package/src/types/MarkdownAction.ts +0 -31
  401. /package/dist/lib/{browser/types → neutral/blueprints}/index.mjs.map +0 -0
  402. /package/dist/lib/{node-esm/types/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
@@ -0,0 +1,85 @@
1
+ //
2
+ // Copyright 2024 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import * as Schema from 'effect/Schema';
8
+
9
+ import { EditorInputMode, EditorViewMode } from '@dxos/ui-editor/types';
10
+
11
+ /**
12
+ * Determines how new comment threads on markdown documents are wired up to
13
+ * the comment-thread AI agent (plugin-thread). The agent's identity (name,
14
+ * DID) is resolved at runtime via the AgentIdentity capability — this
15
+ * setting only controls whether and when the agent fires.
16
+ *
17
+ * - `off`: comments are plain user-only threads (no agent).
18
+ * - `auto`: every user message in a thread triggers an agent response.
19
+ * - `mention`: agent only responds when the message contains `@{agentName}`.
20
+ */
21
+ export const CommentAgentMode = Schema.Union(Schema.Literal('off'), Schema.Literal('auto'), Schema.Literal('mention'));
22
+ export type CommentAgentMode = Schema.Schema.Type<typeof CommentAgentMode>;
23
+
24
+ /**
25
+ * Plugin settings.
26
+ */
27
+ export const Settings = Schema.mutable(
28
+ Schema.Struct({
29
+ defaultViewMode: EditorViewMode.annotations({
30
+ title: 'Default view mode',
31
+ description: 'Set whether documents open in editing or read-only mode.',
32
+ }),
33
+ commentAgentMode: Schema.optional(
34
+ CommentAgentMode.annotations({
35
+ title: 'Comment agent mode',
36
+ description:
37
+ "How new comment threads on markdown documents are processed: 'off' (no AI), 'auto' (AI responds to every user message), or 'mention' (AI responds only on @mention).",
38
+ }),
39
+ ),
40
+ editorInputMode: Schema.optional(
41
+ EditorInputMode.annotations({
42
+ title: 'Editor input mode',
43
+ description: 'Choose keyboard bindings for the editor.',
44
+ }),
45
+ ),
46
+ toolbar: Schema.optional(
47
+ Schema.Boolean.annotations({
48
+ title: 'Show toolbar',
49
+ description: 'Display a formatting toolbar above the editor.',
50
+ }),
51
+ ),
52
+ numberedHeadings: Schema.optional(
53
+ Schema.Boolean.annotations({
54
+ title: 'Numbered headings',
55
+ description: 'Automatically number heading levels in the document.',
56
+ }),
57
+ ),
58
+ folding: Schema.optional(
59
+ Schema.Boolean.annotations({
60
+ title: 'Folding',
61
+ description: 'Allow collapsing and expanding sections by heading.',
62
+ }),
63
+ ),
64
+ experimental: Schema.optional(
65
+ Schema.Boolean.annotations({
66
+ title: 'Enable experimental features',
67
+ description: 'Turn on features that are still in development.',
68
+ }),
69
+ ),
70
+ debug: Schema.optional(
71
+ Schema.Boolean.annotations({
72
+ title: 'Enable debugging features',
73
+ description: 'Show developer tools and diagnostics for the editor.',
74
+ }),
75
+ ),
76
+ snippets: Schema.optional(
77
+ Schema.String.annotations({
78
+ title: 'Snippets',
79
+ description: 'Input snippets to replay for testing purposes.',
80
+ }),
81
+ ),
82
+ }),
83
+ );
84
+
85
+ export interface Settings extends Schema.Schema.Type<typeof Settings> {}
@@ -2,6 +2,10 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- export * as MarkdownAction from './MarkdownAction';
6
- export * as Markdown from './Markdown';
7
5
  export * from './types';
6
+
7
+ export * as Markdown from './Markdown';
8
+ export * as MarkdownCapabilities from './MarkdownCapabilities';
9
+ export * as MarkdownEvents from './MarkdownEvents';
10
+ export * as MarkdownOperation from './MarkdownOperation';
11
+ export * as Settings from './Settings';
@@ -2,15 +2,20 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { type Extension } from '@dxos/react-ui-editor';
6
- import { type EditorViewMode } from '@dxos/react-ui-editor/types';
5
+ import { type Extension } from '@codemirror/state';
6
+
7
+ import { type EditorViewMode } from '@dxos/ui-editor/types';
7
8
 
8
9
  import { type Document } from './Markdown';
9
10
 
10
11
  // TODO(burdon): Remove these from ./types since not part of plugin-markdown API?
12
+ // TODO(wittjosiah): MarkdownExtensionProvider is a part of the MarkdownCapabilities api which should be in ./types.
11
13
 
12
14
  // TODO(burdon): Async?
13
- export type MarkdownExtensionProvider = (props: { document?: Document }) => Extension | undefined;
15
+ export type MarkdownExtensionProvider = (props: {
16
+ document?: Document;
17
+ viewMode?: EditorViewMode;
18
+ }) => Extension | undefined;
14
19
 
15
20
  export type MarkdownPluginState = {
16
21
  // Codemirror extensions provided by other plugins.
@@ -0,0 +1,44 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { describe, expect, it } from 'vitest';
6
+
7
+ import { trim } from '@dxos/util';
8
+
9
+ import { getFallbackName } from './util';
10
+
11
+ describe('markdown utils', () => {
12
+ it('getFallbackName', () => {
13
+ const tests = [
14
+ {
15
+ content: '',
16
+ expected: '',
17
+ },
18
+ {
19
+ content: trim`
20
+ ![img](https://dxos.network/dxos-logotype-blue.png)
21
+
22
+ # Welcome to Composer by DXOS
23
+
24
+ ## What is Composer?
25
+ `,
26
+ expected: 'Welcome to Composer by DXOS',
27
+ },
28
+ {
29
+ content: trim`
30
+ ![img](https://dxos.network/dxos-logotype-blue.png)
31
+
32
+ ---
33
+
34
+ This document is about the decetralized platform DXOS.
35
+ `,
36
+ expected: 'This document is about the…',
37
+ },
38
+ ];
39
+
40
+ tests.forEach(({ content, expected }) => {
41
+ expect(getFallbackName(content)).toBe(expected);
42
+ });
43
+ });
44
+ });
package/src/util.tsx CHANGED
@@ -4,9 +4,9 @@
4
4
 
5
5
  import { debounce } from '@dxos/async';
6
6
  import { Obj } from '@dxos/echo';
7
- import { type TypedObjectSerializer } from '@dxos/plugin-space/types';
7
+ import { type TypedObjectSerializer } from '@dxos/plugin-space';
8
8
 
9
- import { Markdown } from './types';
9
+ import { Markdown } from '#types';
10
10
 
11
11
  /**
12
12
  * Checks if an object conforms to the interface needed to render an editor.
@@ -32,18 +32,93 @@ export const isMarkdownProperties = (data: unknown): data is MarkdownProperties
32
32
 
33
33
  const nonTitleChars = /[^\w ]/g;
34
34
 
35
- export const getFallbackName = (content: string) => {
36
- return content.substring(0, 31).split('\n')[0].replaceAll(nonTitleChars, '').trim();
35
+ // Lines matching these patterns are skipped.
36
+ const skipPatterns = [
37
+ /^!\[/, // Image.
38
+ /^---\s*$/, // Horizontal rule.
39
+ /^```/, // Code block fence.
40
+ /^\s*$/, // Empty or whitespace-only.
41
+ ];
42
+
43
+ // Patterns to extract title text (first capture group is used).
44
+ const titlePatterns = [
45
+ /^#{1,6}\s+(.+)/, // Heading.
46
+ ];
47
+
48
+ /**
49
+ * Extracts a fallback name by scanning lines for the first heading or text fragment.
50
+ */
51
+ export const getFallbackName = (content = ''): string => {
52
+ const len = content.length;
53
+
54
+ let i = 0;
55
+ while (i < len) {
56
+ // Find end of line.
57
+ let lineEnd = i;
58
+ while (lineEnd < len && content[lineEnd] !== '\n') {
59
+ lineEnd++;
60
+ }
61
+
62
+ const line = content.slice(i, lineEnd).trim();
63
+ i = lineEnd + 1;
64
+
65
+ // Skip lines matching skip patterns.
66
+ if (skipPatterns.some((pattern) => pattern.test(line))) {
67
+ continue;
68
+ }
69
+
70
+ // Check for title patterns.
71
+ for (const pattern of titlePatterns) {
72
+ const match = pattern.exec(line);
73
+ if (match) {
74
+ const text = match[1].replaceAll(nonTitleChars, '').trim();
75
+ if (text.length > 0) {
76
+ return text;
77
+ }
78
+ }
79
+ }
80
+
81
+ // Use line as plain text fallback.
82
+ const maxLen = 32;
83
+ const text = line.replaceAll(nonTitleChars, '').trim();
84
+ if (text.length > 0) {
85
+ if (text.length > maxLen) {
86
+ const words = text.split(/\s+/);
87
+ let result = '';
88
+ for (const word of words) {
89
+ const next = result.length === 0 ? word : result + ' ' + word;
90
+ if (next.length > maxLen) {
91
+ break;
92
+ }
93
+ result = next;
94
+ }
95
+
96
+ return result + '…';
97
+ }
98
+
99
+ return text;
100
+ }
101
+ }
102
+
103
+ return '';
37
104
  };
38
105
 
39
- export const getAbstract = (content: string) => {
40
- return content.substring(0, 128).split('\n')[0].replaceAll(nonTitleChars, '').trim();
106
+ // TODO(burdon): Option to strip Markdown.
107
+ export const getContentSnippet = (content = '', maxLines = 3) => {
108
+ const abstract = content
109
+ .split('\n')
110
+ .filter((line) => !line.startsWith('!'))
111
+ .filter((line) => line.trim() !== '');
112
+
113
+ return abstract.slice(0, maxLines).join('\n') ?? '';
41
114
  };
42
115
 
43
- export const setFallbackName = debounce((doc: Markdown.Document, content: string) => {
116
+ export const setFallbackName = debounce((doc: Markdown.Document, content = '') => {
44
117
  const name = getFallbackName(content);
45
118
  if (doc.fallbackName !== name) {
46
- doc.fallbackName = name;
119
+ Obj.update(doc, (doc) => {
120
+ doc.fallbackName = name;
121
+ });
47
122
  }
48
123
  }, 200);
49
124
 
@@ -55,6 +130,6 @@ export const serializer: TypedObjectSerializer<Markdown.Document> = {
55
130
 
56
131
  deserialize: async ({ content: serialized }) => {
57
132
  const { name, fallbackName, content } = JSON.parse(serialized);
58
- return Markdown.makeDocument({ name, fallbackName, content });
133
+ return Markdown.make({ name, fallbackName, content });
59
134
  },
60
135
  };
@@ -1,80 +0,0 @@
1
- import {
2
- getAbstract,
3
- getFallbackName
4
- } from "./chunk-JMBQG2ZC.mjs";
5
- import {
6
- Markdown_exports
7
- } from "./chunk-JTIGSUMB.mjs";
8
- import {
9
- meta
10
- } from "./chunk-IKPZHFTW.mjs";
11
-
12
- // src/components/MarkdownCard/MarkdownCard.tsx
13
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
14
- import { pipe } from "effect";
15
- import React, { useCallback } from "react";
16
- import { LayoutAction, chain, createIntent, useIntentDispatcher } from "@dxos/app-framework";
17
- import { Obj } from "@dxos/echo";
18
- import { fullyQualifiedId } from "@dxos/react-client/echo";
19
- import { Button, Icon, useTranslation } from "@dxos/react-ui";
20
- import { Card } from "@dxos/react-ui-stack";
21
- import { DataType } from "@dxos/schema";
22
- var getTitle = (subject, fallback) => {
23
- if (Obj.instanceOf(Markdown_exports.Document, subject)) {
24
- return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);
25
- } else if (Obj.instanceOf(DataType.Text, subject)) {
26
- return getFallbackName(subject.content);
27
- }
28
- };
29
- var getSnippet = (subject, fallback) => {
30
- if (Obj.instanceOf(Markdown_exports.Document, subject)) {
31
- return getAbstract(subject.content?.target?.content ?? fallback);
32
- } else if (Obj.instanceOf(DataType.Text, subject)) {
33
- return getAbstract(subject.content);
34
- }
35
- };
36
- var MarkdownCard = ({ subject, role }) => {
37
- var _effect = _useSignals();
38
- try {
39
- const { dispatchPromise: dispatch } = useIntentDispatcher();
40
- const { t } = useTranslation(meta.id);
41
- const snippet = getSnippet(subject, t("fallback abstract"));
42
- const handleNavigate = useCallback(() => dispatch(pipe(createIntent(LayoutAction.UpdatePopover, {
43
- part: "popover",
44
- subject: null,
45
- options: {
46
- state: false,
47
- anchorId: ""
48
- }
49
- }), chain(LayoutAction.Open, {
50
- part: "main",
51
- subject: [
52
- fullyQualifiedId(subject)
53
- ]
54
- }))), [
55
- dispatch,
56
- subject
57
- ]);
58
- return /* @__PURE__ */ React.createElement(Card.SurfaceRoot, {
59
- role
60
- }, /* @__PURE__ */ React.createElement(Card.Heading, null, getTitle(subject, t("fallback title"))), snippet && /* @__PURE__ */ React.createElement(Card.Text, {
61
- classNames: "line-clamp-3 break-words col-span-2"
62
- }, snippet), role === "card--popover" && /* @__PURE__ */ React.createElement(Card.Chrome, null, /* @__PURE__ */ React.createElement(Button, {
63
- onClick: handleNavigate
64
- }, /* @__PURE__ */ React.createElement("span", {
65
- className: "grow"
66
- }, t("navigate to document label")), /* @__PURE__ */ React.createElement(Icon, {
67
- icon: "ph--arrow-right--regular"
68
- }))));
69
- } finally {
70
- _effect.f();
71
- }
72
- };
73
-
74
- // src/components/MarkdownCard/index.ts
75
- var MarkdownCard_default = MarkdownCard;
76
- export {
77
- MarkdownCard,
78
- MarkdownCard_default as default
79
- };
80
- //# sourceMappingURL=MarkdownCard-IMCR4A4V.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/MarkdownCard/MarkdownCard.tsx", "../../../src/components/MarkdownCard/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { LayoutAction, chain, createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { type PreviewProps } from '@dxos/plugin-preview';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { Button, Icon, useTranslation } from '@dxos/react-ui';\nimport { Card } from '@dxos/react-ui-stack';\nimport { DataType } from '@dxos/schema';\n\nimport { meta } from '../../meta';\nimport { Markdown } from '../../types';\nimport { getAbstract, getFallbackName } from '../../util';\n\n// TODO(burdon): Factor out.\nconst getTitle = (subject: Markdown.Document | DataType.Text, fallback: string) => {\n if (Obj.instanceOf(Markdown.Document, subject)) {\n return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);\n } else if (Obj.instanceOf(DataType.Text, subject)) {\n return getFallbackName(subject.content);\n }\n};\n\n// TODO(burdon): Factor out.\nconst getSnippet = (subject: Markdown.Document | DataType.Text, fallback: string) => {\n if (Obj.instanceOf(Markdown.Document, subject)) {\n return getAbstract(subject.content?.target?.content ?? fallback);\n } else if (Obj.instanceOf(DataType.Text, subject)) {\n return getAbstract(subject.content);\n }\n};\n\nexport type MarkdownCardProps = PreviewProps<Markdown.Document | DataType.Text>;\n\nexport const MarkdownCard = ({ subject, role }: MarkdownCardProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const { t } = useTranslation(meta.id);\n const snippet = getSnippet(subject, t('fallback abstract'));\n\n // TODO(wittjosiah): Factor out so this component isn't dependent on the app framework.\n const handleNavigate = useCallback(\n () =>\n dispatch(\n pipe(\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: null,\n options: { state: false, anchorId: '' },\n }),\n chain(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(subject)] }),\n ),\n ),\n [dispatch, subject],\n );\n\n return (\n <Card.SurfaceRoot role={role}>\n <Card.Heading>{getTitle(subject, t('fallback title'))}</Card.Heading>\n {snippet && <Card.Text classNames='line-clamp-3 break-words col-span-2'>{snippet}</Card.Text>}\n {role === 'card--popover' && (\n <Card.Chrome>\n <Button onClick={handleNavigate}>\n <span className='grow'>{t('navigate to document label')}</span>\n <Icon icon='ph--arrow-right--regular' />\n </Button>\n </Card.Chrome>\n )}\n </Card.SurfaceRoot>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { MarkdownCard } from './MarkdownCard';\n\nexport * from './MarkdownCard';\n\nexport default MarkdownCard;\n"],
5
- "mappings": ";;;;;;;;;;;;;AAIA,SAASA,YAAY;AACrB,OAAOC,SAASC,mBAAmB;AAEnC,SAASC,cAAcC,OAAOC,cAAcC,2BAA2B;AACvE,SAASC,WAAW;AAEpB,SAASC,wBAAwB;AACjC,SAASC,QAAQC,MAAMC,sBAAsB;AAC7C,SAASC,YAAY;AACrB,SAASC,gBAAgB;AAOzB,IAAMC,WAAW,CAACC,SAA4CC,aAAAA;AAC5D,MAAIC,IAAIC,WAAWC,iBAASC,UAAUL,OAAAA,GAAU;AAC9C,WAAOA,QAAQM,QAAQN,QAAQO,gBAAgBC,gBAAgBR,QAAQS,SAASC,QAAQD,WAAWR,QAAAA;EACrG,WAAWC,IAAIC,WAAWQ,SAASC,MAAMZ,OAAAA,GAAU;AACjD,WAAOQ,gBAAgBR,QAAQS,OAAO;EACxC;AACF;AAGA,IAAMI,aAAa,CAACb,SAA4CC,aAAAA;AAC9D,MAAIC,IAAIC,WAAWC,iBAASC,UAAUL,OAAAA,GAAU;AAC9C,WAAOc,YAAYd,QAAQS,SAASC,QAAQD,WAAWR,QAAAA;EACzD,WAAWC,IAAIC,WAAWQ,SAASC,MAAMZ,OAAAA,GAAU;AACjD,WAAOc,YAAYd,QAAQS,OAAO;EACpC;AACF;AAIO,IAAMM,eAAe,CAAC,EAAEf,SAASgB,KAAI,MAAqB;;;AAC/D,UAAM,EAAEC,iBAAiBC,SAAQ,IAAKC,oBAAAA;AACtC,UAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AACpC,UAAMC,UAAUX,WAAWb,SAASoB,EAAE,mBAAA,CAAA;AAGtC,UAAMK,iBAAiBC,YACrB,MACER,SACES,KACEC,aAAaC,aAAaC,eAAe;MACvCC,MAAM;MACN/B,SAAS;MACTgC,SAAS;QAAEC,OAAO;QAAOC,UAAU;MAAG;IACxC,CAAA,GACAC,MAAMN,aAAaO,MAAM;MAAEL,MAAM;MAAQ/B,SAAS;QAACqC,iBAAiBrC,OAAAA;;IAAU,CAAA,CAAA,CAAA,GAGpF;MAACkB;MAAUlB;KAAQ;AAGrB,WACE,sBAAA,cAACsC,KAAKC,aAAW;MAACvB;OAChB,sBAAA,cAACsB,KAAKE,SAAO,MAAEzC,SAASC,SAASoB,EAAE,gBAAA,CAAA,CAAA,GAClCI,WAAW,sBAAA,cAACc,KAAK1B,MAAI;MAAC6B,YAAW;OAAuCjB,OAAAA,GACxER,SAAS,mBACR,sBAAA,cAACsB,KAAKI,QAAM,MACV,sBAAA,cAACC,QAAAA;MAAOC,SAASnB;OACf,sBAAA,cAACoB,QAAAA;MAAKC,WAAU;OAAQ1B,EAAE,4BAAA,CAAA,GAC1B,sBAAA,cAAC2B,MAAAA;MAAKC,MAAK;;;;;AAMvB;;;AClEA,IAAA,uBAAeC;",
6
- "names": ["pipe", "React", "useCallback", "LayoutAction", "chain", "createIntent", "useIntentDispatcher", "Obj", "fullyQualifiedId", "Button", "Icon", "useTranslation", "Card", "DataType", "getTitle", "subject", "fallback", "Obj", "instanceOf", "Markdown", "Document", "name", "fallbackName", "getFallbackName", "content", "target", "DataType", "Text", "getSnippet", "getAbstract", "MarkdownCard", "role", "dispatchPromise", "dispatch", "useIntentDispatcher", "t", "useTranslation", "meta", "id", "snippet", "handleNavigate", "useCallback", "pipe", "createIntent", "LayoutAction", "UpdatePopover", "part", "options", "state", "anchorId", "chain", "Open", "fullyQualifiedId", "Card", "SurfaceRoot", "Heading", "classNames", "Chrome", "Button", "onClick", "span", "className", "Icon", "icon", "MarkdownCard"]
7
- }