@dxos/plugin-markdown 0.8.4-main.ae835ea → 0.8.4-main.bc2380dfbc

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 (408) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/EditableMarkdownCard-LXBXN3OW.mjs +32 -0
  4. package/dist/lib/neutral/EditableMarkdownCard-LXBXN3OW.mjs.map +7 -0
  5. package/dist/lib/neutral/MarkdownArticle-Z4QRU3WD.mjs +126 -0
  6. package/dist/lib/neutral/MarkdownArticle-Z4QRU3WD.mjs.map +7 -0
  7. package/dist/lib/neutral/MarkdownCard-INMBLUL4.mjs +102 -0
  8. package/dist/lib/neutral/MarkdownCard-INMBLUL4.mjs.map +7 -0
  9. package/dist/lib/neutral/MarkdownPlugin.mjs +10 -0
  10. package/dist/lib/neutral/MarkdownPlugin.node.mjs +25 -0
  11. package/dist/lib/neutral/MarkdownPlugin.node.mjs.map +7 -0
  12. package/dist/lib/neutral/MarkdownPlugin.workerd.mjs +23 -0
  13. package/dist/lib/neutral/MarkdownPlugin.workerd.mjs.map +7 -0
  14. package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs +32 -0
  15. package/dist/lib/neutral/MarkdownSettings-YCTZJL5V.mjs.map +7 -0
  16. package/dist/lib/neutral/anchor-sort-L4VCKDO6.mjs +32 -0
  17. package/dist/lib/neutral/anchor-sort-L4VCKDO6.mjs.map +7 -0
  18. package/dist/lib/neutral/app-graph-serializer-YI72EEVM.mjs +55 -0
  19. package/dist/lib/neutral/app-graph-serializer-YI72EEVM.mjs.map +7 -0
  20. package/dist/lib/neutral/blueprint-definition-33OK2KUL.mjs +15 -0
  21. package/dist/lib/neutral/blueprint-definition-33OK2KUL.mjs.map +7 -0
  22. package/dist/lib/neutral/blueprints/index.mjs +8 -0
  23. package/dist/lib/neutral/capabilities/index.mjs +25 -0
  24. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  25. package/dist/lib/neutral/capabilities/node.mjs +11 -0
  26. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-5JWFZVBC.mjs +8 -0
  28. package/dist/lib/neutral/chunk-5JWFZVBC.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  30. package/dist/lib/neutral/chunk-KDN4GKG2.mjs +98 -0
  31. package/dist/lib/neutral/chunk-KDN4GKG2.mjs.map +7 -0
  32. package/dist/lib/neutral/chunk-LXNSKCPD.mjs +44 -0
  33. package/dist/lib/neutral/chunk-LXNSKCPD.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-LYUELXJH.mjs +57 -0
  35. package/dist/lib/neutral/chunk-LYUELXJH.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-SOLAMEK3.mjs +276 -0
  37. package/dist/lib/neutral/chunk-SOLAMEK3.mjs.map +7 -0
  38. package/dist/lib/{browser/chunk-BQTYJOFB.mjs → neutral/chunk-YC2OAUM7.mjs} +3 -9
  39. package/dist/lib/neutral/chunk-YC2OAUM7.mjs.map +7 -0
  40. package/dist/lib/neutral/comment-config-7VTHRUIZ.mjs +30 -0
  41. package/dist/lib/neutral/comment-config-7VTHRUIZ.mjs.map +7 -0
  42. package/dist/lib/neutral/components/index.mjs +370 -0
  43. package/dist/lib/neutral/components/index.mjs.map +7 -0
  44. package/dist/lib/neutral/containers/index.mjs +13 -0
  45. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  46. package/dist/lib/neutral/create-3PGJ2NEK.mjs +28 -0
  47. package/dist/lib/neutral/create-3PGJ2NEK.mjs.map +7 -0
  48. package/dist/lib/neutral/create-markdown-5LS46GMH.mjs +20 -0
  49. package/dist/lib/neutral/create-markdown-5LS46GMH.mjs.map +7 -0
  50. package/dist/lib/neutral/create-object-ZA6VXLJJ.mjs +27 -0
  51. package/dist/lib/neutral/create-object-ZA6VXLJJ.mjs.map +7 -0
  52. package/dist/lib/neutral/hooks/index.mjs +321 -0
  53. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  54. package/dist/lib/neutral/index.mjs +42 -0
  55. package/dist/lib/neutral/meta.json +1 -0
  56. package/dist/lib/neutral/meta.mjs +8 -0
  57. package/dist/lib/neutral/open-WCYGBLAG.mjs +20 -0
  58. package/dist/lib/neutral/open-WCYGBLAG.mjs.map +7 -0
  59. package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs +13 -0
  60. package/dist/lib/neutral/operation-handler-2ARMPBGZ.mjs.map +7 -0
  61. package/dist/lib/neutral/operations/index.mjs +8 -0
  62. package/dist/lib/neutral/plugin.mjs +16 -0
  63. package/dist/lib/neutral/plugin.mjs.map +7 -0
  64. package/dist/lib/neutral/react-surface-SCIL76V5.mjs +119 -0
  65. package/dist/lib/neutral/react-surface-SCIL76V5.mjs.map +7 -0
  66. package/dist/lib/neutral/scroll-to-anchor-6FIOKVKT.mjs +47 -0
  67. package/dist/lib/neutral/scroll-to-anchor-6FIOKVKT.mjs.map +7 -0
  68. package/dist/lib/neutral/set-view-mode-37RSPFEN.mjs +24 -0
  69. package/dist/lib/neutral/set-view-mode-37RSPFEN.mjs.map +7 -0
  70. package/dist/lib/neutral/settings-TDGDLCUR.mjs +34 -0
  71. package/dist/lib/neutral/settings-TDGDLCUR.mjs.map +7 -0
  72. package/dist/lib/neutral/state-5COCF5PN.mjs +44 -0
  73. package/dist/lib/neutral/state-5COCF5PN.mjs.map +7 -0
  74. package/dist/lib/neutral/testing.mjs +22 -0
  75. package/dist/lib/neutral/testing.mjs.map +7 -0
  76. package/dist/lib/neutral/translations.mjs +43 -0
  77. package/dist/lib/neutral/translations.mjs.map +7 -0
  78. package/dist/lib/neutral/types/index.mjs +16 -0
  79. package/dist/lib/neutral/update-markdown-5EDRD3SH.mjs +44 -0
  80. package/dist/lib/neutral/update-markdown-5EDRD3SH.mjs.map +7 -0
  81. package/dist/types/src/MarkdownPlugin.d.ts +3 -1
  82. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  83. package/dist/types/src/MarkdownPlugin.node.d.ts +4 -0
  84. package/dist/types/src/MarkdownPlugin.node.d.ts.map +1 -0
  85. package/dist/types/src/MarkdownPlugin.test.d.ts +2 -0
  86. package/dist/types/src/MarkdownPlugin.test.d.ts.map +1 -0
  87. package/dist/types/src/MarkdownPlugin.workerd.d.ts +4 -0
  88. package/dist/types/src/MarkdownPlugin.workerd.d.ts.map +1 -0
  89. package/dist/types/src/blueprints/index.d.ts +2 -0
  90. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  91. package/dist/types/src/blueprints/markdown-blueprint.d.ts +4 -0
  92. package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/anchor-sort.d.ts +4 -4
  94. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/app-graph-serializer.d.ts +3 -2
  96. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/artifact-definition.d.ts +3 -1
  98. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -4
  100. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/comment-config.d.ts +12 -0
  102. package/dist/types/src/capabilities/comment-config.d.ts.map +1 -0
  103. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  104. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  105. package/dist/types/src/capabilities/index.d.ts +22 -18
  106. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  107. package/dist/types/src/capabilities/node.d.ts +10 -0
  108. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  109. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  110. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  111. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  112. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/settings.d.ts +4 -2
  114. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  115. package/dist/types/src/capabilities/state.d.ts +4 -9
  116. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  117. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +1 -1
  118. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -1
  119. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +34 -22
  120. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  121. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +3 -3
  122. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  123. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +21 -14
  124. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
  125. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +6 -5
  126. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -1
  127. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +4 -4
  128. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  129. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts +94 -0
  130. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts.map +1 -0
  131. package/dist/types/src/components/MarkdownSettings/index.d.ts +1 -1
  132. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +1 -1
  133. package/dist/types/src/components/index.d.ts +3 -5
  134. package/dist/types/src/components/index.d.ts.map +1 -1
  135. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts +15 -0
  136. package/dist/types/src/containers/EditableMarkdownCard/EditableMarkdownCard.d.ts.map +1 -0
  137. package/dist/types/src/containers/EditableMarkdownCard/index.d.ts +3 -0
  138. package/dist/types/src/containers/EditableMarkdownCard/index.d.ts.map +1 -0
  139. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.d.ts +36 -0
  140. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.d.ts.map +1 -0
  141. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts +97 -0
  142. package/dist/types/src/containers/MarkdownArticle/MarkdownArticle.stories.d.ts.map +1 -0
  143. package/dist/types/src/containers/MarkdownArticle/index.d.ts +3 -0
  144. package/dist/types/src/containers/MarkdownArticle/index.d.ts.map +1 -0
  145. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts +8 -0
  146. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  147. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts +9 -0
  148. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  149. package/dist/types/src/containers/MarkdownCard/index.d.ts +2 -0
  150. package/dist/types/src/containers/MarkdownCard/index.d.ts.map +1 -0
  151. package/dist/types/src/containers/MarkdownCard/snippet.d.ts +17 -0
  152. package/dist/types/src/containers/MarkdownCard/snippet.d.ts.map +1 -0
  153. package/dist/types/src/containers/index.d.ts +6 -0
  154. package/dist/types/src/containers/index.d.ts.map +1 -0
  155. package/dist/types/src/hooks/index.d.ts +1 -2
  156. package/dist/types/src/hooks/index.d.ts.map +1 -1
  157. package/dist/types/src/hooks/useEditorMenuOptions.d.ts +9 -0
  158. package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -0
  159. package/dist/types/src/hooks/useExtensions.d.ts +12 -8
  160. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -1
  161. package/dist/types/src/hooks/useLinkQuery.d.ts +3 -3
  162. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -1
  163. package/dist/types/src/index.d.ts +2 -3
  164. package/dist/types/src/index.d.ts.map +1 -1
  165. package/dist/types/src/meta.d.ts +2 -2
  166. package/dist/types/src/meta.d.ts.map +1 -1
  167. package/dist/types/src/operations/create-markdown.d.ts +5 -0
  168. package/dist/types/src/operations/create-markdown.d.ts.map +1 -0
  169. package/dist/types/src/operations/create.d.ts +5 -0
  170. package/dist/types/src/operations/create.d.ts.map +1 -0
  171. package/dist/types/src/operations/create.test.d.ts +2 -0
  172. package/dist/types/src/operations/create.test.d.ts.map +1 -0
  173. package/dist/types/src/operations/index.d.ts +3 -0
  174. package/dist/types/src/operations/index.d.ts.map +1 -0
  175. package/dist/types/src/operations/open.d.ts +5 -0
  176. package/dist/types/src/operations/open.d.ts.map +1 -0
  177. package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
  178. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
  179. package/dist/types/src/operations/set-view-mode.d.ts +5 -0
  180. package/dist/types/src/operations/set-view-mode.d.ts.map +1 -0
  181. package/dist/types/src/operations/update-markdown.d.ts +5 -0
  182. package/dist/types/src/operations/update-markdown.d.ts.map +1 -0
  183. package/dist/types/src/operations/update.test.d.ts +2 -0
  184. package/dist/types/src/operations/update.test.d.ts.map +1 -0
  185. package/dist/types/src/plugin.d.ts +4 -0
  186. package/dist/types/src/plugin.d.ts.map +1 -0
  187. package/dist/types/src/testing.d.ts +7 -0
  188. package/dist/types/src/testing.d.ts.map +1 -0
  189. package/dist/types/src/translations.d.ts +74 -36
  190. package/dist/types/src/translations.d.ts.map +1 -1
  191. package/dist/types/src/types/Markdown.d.ts +31 -31
  192. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  193. package/dist/types/src/types/MarkdownCapabilities.d.ts +32 -0
  194. package/dist/types/src/types/MarkdownCapabilities.d.ts.map +1 -0
  195. package/dist/types/src/types/MarkdownEvents.d.ts +3 -0
  196. package/dist/types/src/types/MarkdownEvents.d.ts.map +1 -0
  197. package/dist/types/src/types/MarkdownOperation.d.ts +64 -0
  198. package/dist/types/src/types/MarkdownOperation.d.ts.map +1 -0
  199. package/dist/types/src/types/Settings.d.ts +17 -0
  200. package/dist/types/src/types/Settings.d.ts.map +1 -0
  201. package/dist/types/src/types/index.d.ts +5 -2
  202. package/dist/types/src/types/index.d.ts.map +1 -1
  203. package/dist/types/src/types/types.d.ts +3 -2
  204. package/dist/types/src/types/types.d.ts.map +1 -1
  205. package/dist/types/src/util.d.ts +8 -5
  206. package/dist/types/src/util.d.ts.map +1 -1
  207. package/dist/types/src/util.test.d.ts +2 -0
  208. package/dist/types/src/util.test.d.ts.map +1 -0
  209. package/dist/types/tsconfig.tsbuildinfo +1 -1
  210. package/package.json +152 -75
  211. package/src/MarkdownPlugin.node.ts +20 -0
  212. package/src/MarkdownPlugin.test.ts +26 -0
  213. package/src/MarkdownPlugin.tsx +34 -104
  214. package/src/MarkdownPlugin.workerd.ts +19 -0
  215. package/src/blueprints/index.ts +5 -0
  216. package/src/blueprints/markdown-blueprint.ts +43 -0
  217. package/src/capabilities/anchor-sort.ts +29 -22
  218. package/src/capabilities/app-graph-serializer.ts +52 -43
  219. package/src/capabilities/artifact-definition.ts +83 -86
  220. package/src/capabilities/blueprint-definition.ts +11 -31
  221. package/src/capabilities/comment-config.ts +32 -0
  222. package/src/capabilities/create-object.ts +30 -0
  223. package/src/capabilities/index.ts +15 -12
  224. package/src/capabilities/node.ts +13 -0
  225. package/src/capabilities/operation-handler.ts +16 -0
  226. package/src/capabilities/react-surface.tsx +102 -68
  227. package/src/capabilities/settings.ts +30 -18
  228. package/src/capabilities/state.ts +41 -25
  229. package/src/components/MarkdownEditor/FileUpload.tsx +2 -2
  230. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +49 -46
  231. package/src/components/MarkdownEditor/MarkdownEditor.tsx +150 -107
  232. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +72 -37
  233. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +37 -53
  234. package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +40 -0
  235. package/src/components/MarkdownSettings/MarkdownSettings.tsx +23 -96
  236. package/src/components/MarkdownSettings/index.ts +1 -1
  237. package/src/components/index.ts +4 -7
  238. package/src/containers/EditableMarkdownCard/EditableMarkdownCard.tsx +42 -0
  239. package/src/containers/EditableMarkdownCard/index.ts +6 -0
  240. package/src/containers/MarkdownArticle/MarkdownArticle.stories.tsx +135 -0
  241. package/src/containers/MarkdownArticle/MarkdownArticle.tsx +146 -0
  242. package/src/containers/MarkdownArticle/index.ts +6 -0
  243. package/src/containers/MarkdownCard/MarkdownCard.stories.tsx +68 -0
  244. package/src/containers/MarkdownCard/MarkdownCard.tsx +67 -0
  245. package/src/containers/MarkdownCard/index.ts +5 -0
  246. package/src/containers/MarkdownCard/snippet.ts +54 -0
  247. package/src/containers/index.ts +11 -0
  248. package/src/hooks/index.ts +1 -2
  249. package/src/hooks/{usePopoverMenuOptions.ts → useEditorMenuOptions.ts} +20 -23
  250. package/src/hooks/useExtensions.tsx +106 -114
  251. package/src/hooks/useLinkQuery.ts +50 -41
  252. package/src/index.ts +2 -5
  253. package/src/meta.ts +7 -4
  254. package/src/operations/create-markdown.ts +19 -0
  255. package/src/operations/create.conversations.json +1 -0
  256. package/src/operations/create.test.ts +96 -0
  257. package/src/operations/create.ts +26 -0
  258. package/src/operations/index.ts +14 -0
  259. package/src/operations/open.ts +25 -0
  260. package/src/operations/scroll-to-anchor.ts +38 -0
  261. package/src/operations/set-view-mode.ts +23 -0
  262. package/src/operations/update-markdown.ts +51 -0
  263. package/src/operations/update.conversations.json +1 -0
  264. package/src/operations/update.test.ts +213 -0
  265. package/src/plugin.ts +11 -0
  266. package/src/testing.ts +29 -0
  267. package/src/translations.ts +26 -35
  268. package/src/types/Markdown.ts +28 -31
  269. package/src/types/MarkdownCapabilities.ts +51 -0
  270. package/src/types/MarkdownEvents.ts +14 -0
  271. package/src/types/MarkdownOperation.ts +122 -0
  272. package/src/types/Settings.ts +65 -0
  273. package/src/types/index.ts +6 -2
  274. package/src/types/types.ts +7 -3
  275. package/src/util.test.ts +44 -0
  276. package/src/util.tsx +81 -13
  277. package/dist/lib/browser/MarkdownCard-SLM6QZYC.mjs +0 -12
  278. package/dist/lib/browser/MarkdownContainer-UZFQC6XY.mjs +0 -15
  279. package/dist/lib/browser/anchor-sort-4XPPLMZS.mjs +0 -32
  280. package/dist/lib/browser/anchor-sort-4XPPLMZS.mjs.map +0 -7
  281. package/dist/lib/browser/app-graph-serializer-QQFV4K6P.mjs +0 -51
  282. package/dist/lib/browser/app-graph-serializer-QQFV4K6P.mjs.map +0 -7
  283. package/dist/lib/browser/blueprint-definition-BC5R3T72.mjs +0 -11
  284. package/dist/lib/browser/chunk-2LLVTQCK.mjs +0 -51
  285. package/dist/lib/browser/chunk-2LLVTQCK.mjs.map +0 -7
  286. package/dist/lib/browser/chunk-3VILQLA4.mjs +0 -95
  287. package/dist/lib/browser/chunk-3VILQLA4.mjs.map +0 -7
  288. package/dist/lib/browser/chunk-5AYTOIUF.mjs +0 -822
  289. package/dist/lib/browser/chunk-5AYTOIUF.mjs.map +0 -7
  290. package/dist/lib/browser/chunk-A3CQYGCN.mjs +0 -56
  291. package/dist/lib/browser/chunk-A3CQYGCN.mjs.map +0 -7
  292. package/dist/lib/browser/chunk-BQTYJOFB.mjs.map +0 -7
  293. package/dist/lib/browser/chunk-GLEYXJX3.mjs +0 -22
  294. package/dist/lib/browser/chunk-GLEYXJX3.mjs.map +0 -7
  295. package/dist/lib/browser/chunk-IBCHVMZW.mjs +0 -16
  296. package/dist/lib/browser/chunk-IBCHVMZW.mjs.map +0 -7
  297. package/dist/lib/browser/chunk-JAETS5LE.mjs +0 -106
  298. package/dist/lib/browser/chunk-JAETS5LE.mjs.map +0 -7
  299. package/dist/lib/browser/chunk-UKTCPHLI.mjs +0 -79
  300. package/dist/lib/browser/chunk-UKTCPHLI.mjs.map +0 -7
  301. package/dist/lib/browser/index.mjs +0 -174
  302. package/dist/lib/browser/index.mjs.map +0 -7
  303. package/dist/lib/browser/intent-resolver-VQGMBNXZ.mjs +0 -62
  304. package/dist/lib/browser/intent-resolver-VQGMBNXZ.mjs.map +0 -7
  305. package/dist/lib/browser/meta.json +0 -1
  306. package/dist/lib/browser/react-surface-WOMJOPJE.mjs +0 -217
  307. package/dist/lib/browser/react-surface-WOMJOPJE.mjs.map +0 -7
  308. package/dist/lib/browser/settings-LBXJHVBU.mjs +0 -28
  309. package/dist/lib/browser/settings-LBXJHVBU.mjs.map +0 -7
  310. package/dist/lib/browser/state-BTUKVZHY.mjs +0 -37
  311. package/dist/lib/browser/state-BTUKVZHY.mjs.map +0 -7
  312. package/dist/lib/browser/toolkit-YPIVDB4A.mjs +0 -66
  313. package/dist/lib/browser/toolkit-YPIVDB4A.mjs.map +0 -7
  314. package/dist/lib/browser/types/index.mjs +0 -10
  315. package/dist/lib/node-esm/MarkdownCard-MCWEFW4F.mjs +0 -13
  316. package/dist/lib/node-esm/MarkdownContainer-KAQOK7K5.mjs +0 -16
  317. package/dist/lib/node-esm/anchor-sort-4SXYVYXT.mjs +0 -33
  318. package/dist/lib/node-esm/anchor-sort-4SXYVYXT.mjs.map +0 -7
  319. package/dist/lib/node-esm/app-graph-serializer-KBVRLQN2.mjs +0 -52
  320. package/dist/lib/node-esm/app-graph-serializer-KBVRLQN2.mjs.map +0 -7
  321. package/dist/lib/node-esm/blueprint-definition-FPNOTEYC.mjs +0 -12
  322. package/dist/lib/node-esm/blueprint-definition-FPNOTEYC.mjs.map +0 -7
  323. package/dist/lib/node-esm/chunk-2Q4WCKWT.mjs +0 -823
  324. package/dist/lib/node-esm/chunk-2Q4WCKWT.mjs.map +0 -7
  325. package/dist/lib/node-esm/chunk-DOB2MJAX.mjs +0 -107
  326. package/dist/lib/node-esm/chunk-DOB2MJAX.mjs.map +0 -7
  327. package/dist/lib/node-esm/chunk-GGKPPGWA.mjs +0 -24
  328. package/dist/lib/node-esm/chunk-GGKPPGWA.mjs.map +0 -7
  329. package/dist/lib/node-esm/chunk-GMMVSXQ6.mjs +0 -17
  330. package/dist/lib/node-esm/chunk-GMMVSXQ6.mjs.map +0 -7
  331. package/dist/lib/node-esm/chunk-JELROKGD.mjs +0 -80
  332. package/dist/lib/node-esm/chunk-JELROKGD.mjs.map +0 -7
  333. package/dist/lib/node-esm/chunk-QH4MC5BE.mjs +0 -52
  334. package/dist/lib/node-esm/chunk-QH4MC5BE.mjs.map +0 -7
  335. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs +0 -29
  336. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs.map +0 -7
  337. package/dist/lib/node-esm/chunk-SJ2QRGPM.mjs +0 -57
  338. package/dist/lib/node-esm/chunk-SJ2QRGPM.mjs.map +0 -7
  339. package/dist/lib/node-esm/chunk-YYSASY7X.mjs +0 -96
  340. package/dist/lib/node-esm/chunk-YYSASY7X.mjs.map +0 -7
  341. package/dist/lib/node-esm/index.mjs +0 -175
  342. package/dist/lib/node-esm/index.mjs.map +0 -7
  343. package/dist/lib/node-esm/intent-resolver-Q4XVI5EX.mjs +0 -63
  344. package/dist/lib/node-esm/intent-resolver-Q4XVI5EX.mjs.map +0 -7
  345. package/dist/lib/node-esm/meta.json +0 -1
  346. package/dist/lib/node-esm/react-surface-FAMZTAXK.mjs +0 -218
  347. package/dist/lib/node-esm/react-surface-FAMZTAXK.mjs.map +0 -7
  348. package/dist/lib/node-esm/settings-2YRA67H6.mjs +0 -29
  349. package/dist/lib/node-esm/settings-2YRA67H6.mjs.map +0 -7
  350. package/dist/lib/node-esm/state-K6EH7SRZ.mjs +0 -38
  351. package/dist/lib/node-esm/state-K6EH7SRZ.mjs.map +0 -7
  352. package/dist/lib/node-esm/toolkit-36BFLIR3.mjs +0 -67
  353. package/dist/lib/node-esm/toolkit-36BFLIR3.mjs.map +0 -7
  354. package/dist/lib/node-esm/types/index.mjs +0 -11
  355. package/dist/types/src/capabilities/capabilities.d.ts +0 -12
  356. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  357. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  358. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  359. package/dist/types/src/capabilities/toolkit.d.ts +0 -20
  360. package/dist/types/src/capabilities/toolkit.d.ts.map +0 -1
  361. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +0 -7
  362. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +0 -1
  363. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +0 -9
  364. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +0 -1
  365. package/dist/types/src/components/MarkdownCard/index.d.ts +0 -4
  366. package/dist/types/src/components/MarkdownCard/index.d.ts.map +0 -1
  367. package/dist/types/src/components/MarkdownContainer.d.ts +0 -14
  368. package/dist/types/src/components/MarkdownContainer.d.ts.map +0 -1
  369. package/dist/types/src/components/MarkdownContainer.stories.d.ts +0 -58
  370. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +0 -1
  371. package/dist/types/src/components/Suggestions.stories.d.ts +0 -11
  372. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  373. package/dist/types/src/events.d.ts +0 -4
  374. package/dist/types/src/events.d.ts.map +0 -1
  375. package/dist/types/src/functions/diff.d.ts +0 -6
  376. package/dist/types/src/functions/diff.d.ts.map +0 -1
  377. package/dist/types/src/functions/index.d.ts +0 -3
  378. package/dist/types/src/functions/index.d.ts.map +0 -1
  379. package/dist/types/src/functions/open.d.ts +0 -7
  380. package/dist/types/src/functions/open.d.ts.map +0 -1
  381. package/dist/types/src/hooks/usePopoverMenuOptions.d.ts +0 -9
  382. package/dist/types/src/hooks/usePopoverMenuOptions.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 -34
  386. package/dist/types/src/types/MarkdownAction.d.ts.map +0 -1
  387. package/src/capabilities/capabilities.ts +0 -22
  388. package/src/capabilities/intent-resolver.ts +0 -58
  389. package/src/capabilities/toolkit.ts +0 -53
  390. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +0 -76
  391. package/src/components/MarkdownCard/MarkdownCard.tsx +0 -85
  392. package/src/components/MarkdownCard/index.ts +0 -9
  393. package/src/components/MarkdownContainer.stories.tsx +0 -137
  394. package/src/components/MarkdownContainer.tsx +0 -121
  395. package/src/components/Suggestions.stories.tsx +0 -219
  396. package/src/events.ts +0 -11
  397. package/src/functions/diff.ts +0 -37
  398. package/src/functions/index.ts +0 -6
  399. package/src/functions/open.ts +0 -32
  400. package/src/hooks/useSelectCurrentThread.tsx +0 -56
  401. package/src/types/MarkdownAction.ts +0 -29
  402. /package/dist/lib/{browser/MarkdownCard-SLM6QZYC.mjs.map → neutral/MarkdownPlugin.mjs.map} +0 -0
  403. /package/dist/lib/{browser/types → neutral/blueprints}/index.mjs.map +0 -0
  404. /package/dist/lib/{browser/MarkdownContainer-UZFQC6XY.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  405. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  406. /package/dist/lib/{browser/blueprint-definition-BC5R3T72.mjs.map → neutral/meta.mjs.map} +0 -0
  407. /package/dist/lib/{node-esm/MarkdownCard-MCWEFW4F.mjs.map → neutral/operations/index.mjs.map} +0 -0
  408. /package/dist/lib/{node-esm/MarkdownContainer-KAQOK7K5.mjs.map → neutral/types/index.mjs.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"Suggestions.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Suggestions.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAKlD,OAAO,KAAgD,MAAM,OAAO,CAAC;AAyGrE,QAAA,MAAM,YAAY,GAAI,oBAAoB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,6BAoC3E,CAAC;AAEF,QAAA,MAAM,SAAS,EAAE,IAAI,CAAC,OAAO,YAAY,CAiCxC,CAAC;AAEF,eAAe,SAAS,CAAC;AAEzB,KAAK,KAAK,GAAG,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;AAEvC,eAAO,MAAM,OAAO,EAAE,KAcrB,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare namespace MarkdownEvents {
2
- const SetupExtensions: import("@dxos/app-framework").ActivationEvent;
3
- }
4
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"AAQA,yBAAiB,cAAc,CAAC;IACvB,MAAM,eAAe,+CAA+D,CAAC;CAC7F"}
@@ -1,6 +0,0 @@
1
- declare const _default: import("@dxos/functions").FunctionDefinition<{
2
- readonly id: string;
3
- readonly diffs: readonly string[];
4
- }, void>;
5
- export default _default;
6
- //# sourceMappingURL=diff.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../src/functions/diff.ts"],"names":[],"mappings":";;;;AAeA,wBAqBG"}
@@ -1,3 +0,0 @@
1
- export { default as diff } from './diff';
2
- export { default as open } from './open';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/functions/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC"}
@@ -1,7 +0,0 @@
1
- declare const _default: import("@dxos/functions").FunctionDefinition<{
2
- readonly id: string;
3
- }, {
4
- readonly content: string;
5
- }>;
6
- export default _default;
7
- //# sourceMappingURL=open.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../../src/functions/open.ts"],"names":[],"mappings":";;;;;AAYA,wBAmBG"}
@@ -1,9 +0,0 @@
1
- import { type EditorView } from '@codemirror/view';
2
- import { type PopoverMenuGroup, type UsePopoverMenuProps } from '@dxos/react-ui-editor';
3
- export type UsePopoverMenuOptionsProps = {
4
- editorView?: EditorView;
5
- slashCommandGroups?: PopoverMenuGroup[];
6
- onLinkQuery?: (query?: string) => Promise<PopoverMenuGroup[]>;
7
- };
8
- export declare const usePopoverMenuOptions: ({ editorView, slashCommandGroups, onLinkQuery, }: UsePopoverMenuOptionsProps) => UsePopoverMenuProps;
9
- //# sourceMappingURL=usePopoverMenuOptions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePopoverMenuOptions.d.ts","sourceRoot":"","sources":["../../../../src/hooks/usePopoverMenuOptions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EAIzB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACxC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CAC/D,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,kDAInC,0BAA0B,KAAG,mBA0C/B,CAAC"}
@@ -1,6 +0,0 @@
1
- import { EditorView } from '@codemirror/view';
2
- /**
3
- * Handle scrolling and selection of the current thread in a markdown editor.
4
- */
5
- export declare const useSelectCurrentThread: (editorView: EditorView | null, documentId: string) => void;
6
- //# sourceMappingURL=useSelectCurrentThread.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSelectCurrentThread.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useSelectCurrentThread.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAU9C;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,YAAY,UAAU,GAAG,IAAI,EAAE,YAAY,MAAM,SAsCvF,CAAC"}
@@ -1,34 +0,0 @@
1
- import * as Schema from 'effect/Schema';
2
- declare const Create_base: Schema.TaggedClass<Create, `${string}/action/create`, {
3
- readonly _tag: Schema.tag<`${string}/action/create`>;
4
- } & {
5
- input: Schema.Struct<{
6
- name: Schema.optional<typeof Schema.String>;
7
- content: Schema.optional<typeof Schema.String>;
8
- }>;
9
- output: Schema.Struct<{
10
- object: import("@dxos/echo/Type").obj<Schema.Struct<{
11
- name: Schema.optional<typeof Schema.String>;
12
- description: Schema.optional<typeof Schema.String>;
13
- fallbackName: Schema.optional<typeof Schema.String>;
14
- content: import("@dxos/echo/Type").ref<import("@dxos/echo/Type").obj<Schema.Struct<{
15
- content: typeof Schema.String;
16
- }>>>;
17
- }>>;
18
- }>;
19
- }>;
20
- export declare class Create extends Create_base {
21
- }
22
- declare const SetViewMode_base: Schema.TaggedClass<SetViewMode, `${string}/action/set-view-mode`, {
23
- readonly _tag: Schema.tag<`${string}/action/set-view-mode`>;
24
- } & {
25
- input: Schema.Struct<{
26
- id: typeof Schema.String;
27
- viewMode: Schema.Schema<"source" | "preview" | "readonly", "source" | "preview" | "readonly", never>;
28
- }>;
29
- output: typeof Schema.Void;
30
- }>;
31
- export declare class SetViewMode extends SetViewMode_base {
32
- }
33
- export {};
34
- //# sourceMappingURL=MarkdownAction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MarkdownAction.d.ts","sourceRoot":"","sources":["../../../../src/types/MarkdownAction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;;;;;;;;;;;;;;;;;;;AAQxC,qBAAa,MAAO,SAAQ,WAQ1B;CAAG;;;;;;;;;;AAEL,qBAAa,WAAY,SAAQ,gBAM/B;CAAG"}
@@ -1,22 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { defineCapability } from '@dxos/app-framework';
6
- import { type EditorStateStore, type EditorViewMode } from '@dxos/react-ui-editor';
7
-
8
- import { meta } from '../meta';
9
- import { type MarkdownExtensionProvider, type MarkdownPluginState } from '../types';
10
-
11
- export namespace MarkdownCapabilities {
12
- export const State = defineCapability<{
13
- state: MarkdownPluginState;
14
- editorState: EditorStateStore;
15
- getViewMode: (id: string) => EditorViewMode;
16
- // TODO(burdon): Event object.
17
- setViewMode: (id: string, viewMode: EditorViewMode) => void;
18
- }>(`${meta.id}/capability/state`);
19
-
20
- // TODO(burdon): Move to ./types (external API)?
21
- export const Extensions = defineCapability<MarkdownExtensionProvider[]>(`${meta.id}/capability/extensions`);
22
- }
@@ -1,58 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { next as A } from '@automerge/automerge';
6
- import * as Option from 'effect/Option';
7
- import type * as Schema from 'effect/Schema';
8
-
9
- import {
10
- Capabilities,
11
- CollaborationActions,
12
- type PluginContext,
13
- contributes,
14
- createResolver,
15
- } from '@dxos/app-framework';
16
- import { Obj } from '@dxos/echo';
17
- import { createDocAccessor, getRangeFromCursor } from '@dxos/react-client/echo';
18
-
19
- import { Markdown, MarkdownAction } from '../types';
20
-
21
- import { MarkdownCapabilities } from './capabilities';
22
-
23
- export default (context: PluginContext) =>
24
- contributes(Capabilities.IntentResolver, [
25
- createResolver({
26
- intent: MarkdownAction.Create,
27
- resolve: ({ name, content }) => {
28
- return { data: { object: Markdown.makeDocument({ name, content }) } };
29
- },
30
- }),
31
- createResolver({
32
- intent: MarkdownAction.SetViewMode,
33
- resolve: ({ id, viewMode }) => {
34
- const { state } = context.getCapability(MarkdownCapabilities.State);
35
- state.viewMode[id] = viewMode;
36
- },
37
- }),
38
- createResolver({
39
- intent: CollaborationActions.AcceptProposal,
40
- filter: (
41
- data,
42
- ): data is Omit<Schema.Schema.Type<typeof CollaborationActions.AcceptProposal.fields.input>, 'subject'> & {
43
- subject: Markdown.Document;
44
- } => Obj.instanceOf(Markdown.Document, data.subject),
45
- resolve: async ({ subject, anchor, proposal }) => {
46
- const text = await subject.content.load();
47
- const accessor = createDocAccessor(text, ['content']);
48
- const { start, end } = Option.fromNullable(anchor).pipe(
49
- Option.flatMap((at) => Option.fromNullable(getRangeFromCursor(accessor, at))),
50
- // Fallback to the end of the document.
51
- Option.getOrElse(() => ({ start: text.content.length - 1, end: text.content.length - 1 })),
52
- );
53
- accessor.handle.change((doc) => {
54
- A.splice(doc, accessor.path.slice(), start, end - start, proposal.text);
55
- });
56
- },
57
- }),
58
- ]);
@@ -1,53 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Tool from '@effect/ai/Tool';
6
- import * as Toolkit from '@effect/ai/Toolkit';
7
- import * as Effect from 'effect/Effect';
8
- import * as Schema from 'effect/Schema';
9
-
10
- import { Capabilities, type Capability, type PluginContext, contributes, createIntent } from '@dxos/app-framework';
11
- import { invariant } from '@dxos/invariant';
12
- import { getActiveSpace } from '@dxos/plugin-space';
13
- import { SpaceAction } from '@dxos/plugin-space/types';
14
-
15
- import { MarkdownAction } from '../types';
16
-
17
- // TODO(burdon): Reconcile with functions (currently reuses plugin framework intents).
18
- const Toolkit$ = Toolkit.make(
19
- Tool.make('create-document', {
20
- description: 'Creates a new markdown document.',
21
- parameters: {
22
- name: Schema.optional(Schema.String),
23
- content: Schema.optional(Schema.String),
24
- },
25
- // TODO(wittjosiah): Return document.
26
- success: Schema.Any,
27
- failure: Schema.Never,
28
- }),
29
- );
30
-
31
- export namespace MarkdownToolkit {
32
- export const Toolkit = Toolkit$;
33
-
34
- export const createLayer = (context: PluginContext) =>
35
- Toolkit$.toLayer({
36
- 'create-document': ({ name, content }) => {
37
- const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
38
- const space = getActiveSpace(context);
39
- invariant(space, 'No active space');
40
-
41
- return Effect.gen(function* () {
42
- const { object } = yield* dispatch(createIntent(MarkdownAction.Create, { name, content }));
43
- yield* dispatch(createIntent(SpaceAction.AddObject, { object, target: space }));
44
- return { id: object.id };
45
- }).pipe(Effect.orDie);
46
- },
47
- });
48
- }
49
-
50
- export default (context: PluginContext): Capability<any>[] => [
51
- contributes(Capabilities.Toolkit, MarkdownToolkit.Toolkit),
52
- contributes(Capabilities.ToolkitHandler, MarkdownToolkit.createLayer(context)),
53
- ];
@@ -1,76 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { type Meta, type StoryObj } from '@storybook/react-vite';
6
- import React from 'react';
7
-
8
- import { IntentPlugin } from '@dxos/app-framework';
9
- import { withPluginManager } from '@dxos/app-framework/testing';
10
- import { Markdown } from '@dxos/plugin-markdown/types';
11
- import { faker } from '@dxos/random';
12
- import { withTheme } from '@dxos/react-ui/testing';
13
- import { CardContainer } from '@dxos/react-ui-stack/testing';
14
-
15
- import { translations } from '../../translations';
16
-
17
- import { MarkdownCard } from './MarkdownCard';
18
-
19
- faker.seed(1234);
20
-
21
- const meta: Meta<typeof MarkdownCard> = {
22
- title: 'plugins/plugin-markdown/Card',
23
- component: MarkdownCard,
24
- render: ({ role, subject, ...args }) => {
25
- return (
26
- <CardContainer icon='ph--text-aa--regular' role={role}>
27
- <MarkdownCard role={role} subject={subject} {...args} />
28
- </CardContainer>
29
- );
30
- },
31
- decorators: [
32
- withTheme,
33
- withPluginManager({
34
- plugins: [IntentPlugin()],
35
- }),
36
- ],
37
- parameters: {
38
- layout: 'centered',
39
- translations,
40
- },
41
- tags: ['cards'],
42
- };
43
-
44
- export default meta;
45
-
46
- type Story = StoryObj<typeof meta>;
47
-
48
- export const Popover: Story = {
49
- args: {
50
- role: 'card--popover',
51
- subject: Markdown.makeDocument({
52
- name: faker.lorem.words(3),
53
- content: faker.lorem.paragraphs(3),
54
- }),
55
- },
56
- };
57
-
58
- export const Intrinsic: Story = {
59
- args: {
60
- role: 'card--intrinsic',
61
- subject: Markdown.makeDocument({
62
- name: faker.lorem.words(3),
63
- content: faker.lorem.paragraphs(3),
64
- }),
65
- },
66
- };
67
-
68
- export const Extrinsic: Story = {
69
- args: {
70
- role: 'card--extrinsic',
71
- subject: Markdown.makeDocument({
72
- name: faker.lorem.words(3),
73
- content: faker.lorem.paragraphs(3),
74
- }),
75
- },
76
- };
@@ -1,85 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Function from 'effect/Function';
6
- import React, { useCallback } from 'react';
7
-
8
- import { LayoutAction, chain, createIntent, useIntentDispatcher } from '@dxos/app-framework';
9
- import { Obj } from '@dxos/echo';
10
- import { type PreviewProps } from '@dxos/plugin-preview';
11
- import { fullyQualifiedId } from '@dxos/react-client/echo';
12
- import { IconButton, useTranslation } from '@dxos/react-ui';
13
- import { Card } from '@dxos/react-ui-stack';
14
- import { DataType } from '@dxos/schema';
15
-
16
- import { meta } from '../../meta';
17
- import { Markdown } from '../../types';
18
- import { getContentSnippet, getFallbackName } from '../../util';
19
-
20
- export type MarkdownCardProps = PreviewProps<Markdown.Document | DataType.Text>;
21
-
22
- export const MarkdownCard = ({ subject, role }: MarkdownCardProps) => {
23
- const { dispatchPromise: dispatch } = useIntentDispatcher();
24
- const { t } = useTranslation(meta.id);
25
- const snippet = getSnippet(subject, t('fallback abstract'));
26
- const info = getInfo(subject);
27
-
28
- // TODO(wittjosiah): Factor out so this component isn't dependent on the app framework.
29
- const handleNavigate = useCallback(
30
- () =>
31
- dispatch(
32
- Function.pipe(
33
- createIntent(LayoutAction.UpdatePopover, {
34
- part: 'popover',
35
- subject: null,
36
- options: { state: false, anchorId: '' },
37
- }),
38
- chain(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(subject)] }),
39
- ),
40
- ),
41
- [dispatch, subject],
42
- );
43
-
44
- return (
45
- <Card.SurfaceRoot role={role}>
46
- <Card.Heading classNames='flex items-center'>
47
- {getTitle(subject, t('fallback title'))}
48
- <span className='grow' />
49
- <IconButton
50
- iconOnly
51
- icon='ph--arrow-right--regular'
52
- label={t('navigate to document label')}
53
- onClick={handleNavigate}
54
- />
55
- </Card.Heading>
56
- {snippet && <Card.Text classNames='line-clamp-3 text-sm text-description'>{snippet}</Card.Text>}
57
- <Card.Text classNames='text-xs text-description'>
58
- {info.words} {t('words label', { count: info.words })}
59
- </Card.Text>
60
- </Card.SurfaceRoot>
61
- );
62
- };
63
-
64
- const getInfo = (subject: Markdown.Document | DataType.Text) => {
65
- const text = (Obj.instanceOf(Markdown.Document, subject) ? subject.content?.target?.content : subject.content) ?? '';
66
- return { words: text.split(' ').length };
67
- };
68
-
69
- // TODO(burdon): Factor out.
70
- const getTitle = (subject: Markdown.Document | DataType.Text, fallback: string) => {
71
- if (Obj.instanceOf(Markdown.Document, subject)) {
72
- return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);
73
- } else if (Obj.instanceOf(DataType.Text, subject)) {
74
- return getFallbackName(subject.content);
75
- }
76
- };
77
-
78
- // TODO(burdon): Factor out.
79
- const getSnippet = (subject: Markdown.Document | DataType.Text, fallback: string) => {
80
- if (Obj.instanceOf(Markdown.Document, subject)) {
81
- return Obj.getDescription(subject) || getContentSnippet(subject.content?.target?.content ?? fallback);
82
- } else if (Obj.instanceOf(DataType.Text, subject)) {
83
- return getContentSnippet(subject.content ?? fallback);
84
- }
85
- };
@@ -1,9 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { MarkdownCard } from './MarkdownCard';
6
-
7
- export * from './MarkdownCard';
8
-
9
- export default MarkdownCard;
@@ -1,137 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { type Meta, type StoryObj } from '@storybook/react-vite';
6
- import React, { useMemo } from 'react';
7
-
8
- import {
9
- type Capabilities,
10
- IntentPlugin,
11
- LayoutAction,
12
- SettingsPlugin,
13
- Surface,
14
- createIntent,
15
- useIntentDispatcher,
16
- } from '@dxos/app-framework';
17
- import { withPluginManager } from '@dxos/app-framework/testing';
18
- import { Obj, Query } from '@dxos/echo';
19
- import { AttentionPlugin } from '@dxos/plugin-attention';
20
- import { ClientPlugin } from '@dxos/plugin-client';
21
- import { GraphPlugin } from '@dxos/plugin-graph';
22
- import { PreviewPlugin } from '@dxos/plugin-preview';
23
- import { SpacePlugin } from '@dxos/plugin-space';
24
- import { StorybookLayoutPlugin } from '@dxos/plugin-storybook-layout';
25
- import { ThemePlugin } from '@dxos/plugin-theme';
26
- import { faker } from '@dxos/random';
27
- import { fullyQualifiedId, useQuery, useSpace } from '@dxos/react-client/echo';
28
- import { useAsyncEffect } from '@dxos/react-ui';
29
- import { withLayout, withTheme } from '@dxos/react-ui/testing';
30
- import { useAttentionAttributes } from '@dxos/react-ui-attention';
31
- import { defaultTx } from '@dxos/react-ui-theme';
32
- import { DataType } from '@dxos/schema';
33
- import { type ValueGenerator, createObjectFactory } from '@dxos/schema/testing';
34
-
35
- import { MarkdownPlugin } from '../MarkdownPlugin';
36
- import { translations } from '../translations';
37
- import { Markdown } from '../types';
38
-
39
- faker.seed(1);
40
-
41
- const generator: ValueGenerator = faker as any;
42
-
43
- const DefaultStory = () => {
44
- const { dispatchPromise: dispatch } = useIntentDispatcher();
45
- const space = useSpace();
46
- const [doc] = useQuery(space, Query.type(Markdown.Document));
47
- const data = useMemo(() => ({ subject: doc }), [doc]);
48
- const id = doc && fullyQualifiedId(doc);
49
- const attentionAttrs = useAttentionAttributes(id);
50
-
51
- useAsyncEffect(async () => {
52
- if (space) {
53
- await dispatch(createIntent(LayoutAction.SwitchWorkspace, { part: 'workspace', subject: space.id }));
54
- }
55
- }, [space, dispatch]);
56
-
57
- return (
58
- <div className='contents' {...attentionAttrs}>
59
- <Surface role='article' data={data} limit={1} />
60
- </div>
61
- );
62
- };
63
-
64
- const meta = {
65
- title: 'plugins/plugin-markdown/MarkdownContainer',
66
- render: DefaultStory,
67
- decorators: [
68
- withTheme,
69
- withLayout({ container: 'column' }),
70
- withPluginManager<{ title?: string; content?: string }>((context) => ({
71
- plugins: [
72
- ClientPlugin({
73
- types: [Markdown.Document, DataType.Text, DataType.Person, DataType.Organization],
74
- onClientInitialized: async ({ client }) => {
75
- await client.halo.createIdentity();
76
- await client.spaces.waitUntilReady();
77
- await client.spaces.default.waitUntilReady();
78
-
79
- const space = client.spaces.default;
80
- const createObjects = createObjectFactory(space.db, generator);
81
- await createObjects([{ type: DataType.Organization, count: 10 }]);
82
-
83
- const queue = space.queues.create();
84
- const kai = Obj.make(DataType.Person, { fullName: 'Kai' });
85
- const dxos = Obj.make(DataType.Organization, { name: 'DXOS' });
86
- await queue.append([kai, dxos]);
87
-
88
- space.db.add(
89
- Markdown.makeDocument({
90
- name: context.args.title ?? 'Testing',
91
- content: [
92
- `# ${context.args.title ?? 'Testing'}`,
93
- context.args.content ?? '',
94
- // TODO(burdon): Popovers not currently working.
95
- '## Here are some objects',
96
- `![Alice](${Obj.getDXN(kai)})`,
97
- `![DXOS](${Obj.getDXN(dxos)})`,
98
- '',
99
- 'END',
100
- '',
101
- ].join('\n\n'),
102
- }),
103
- );
104
-
105
- await space.db.flush({ indexes: true });
106
- },
107
- }),
108
- SpacePlugin({}),
109
- GraphPlugin(),
110
- IntentPlugin(),
111
- SettingsPlugin(),
112
- // UI
113
- ThemePlugin({ tx: defaultTx }),
114
- AttentionPlugin(),
115
- MarkdownPlugin(),
116
- PreviewPlugin(),
117
- StorybookLayoutPlugin({}),
118
- ],
119
- })),
120
- ],
121
- parameters: {
122
- layout: 'fullscreen',
123
- controls: { disable: true },
124
- translations,
125
- },
126
- } satisfies Meta<typeof Capabilities>;
127
-
128
- export default meta;
129
-
130
- type Story = StoryObj<typeof meta>;
131
-
132
- export const Default: Story = {
133
- args: {
134
- title: 'Testing',
135
- content: ['This is a line with **some** formatting.'].join('\n\n'),
136
- },
137
- };