@dxos/plugin-markdown 0.8.4-main.9735255 → 0.8.4-main.abd8ff62ef

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 (379) hide show
  1. package/dist/lib/browser/blueprints/index.mjs +46 -4
  2. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  3. package/dist/lib/browser/chunk-DNSKDWUL.mjs +156 -0
  4. package/dist/lib/browser/chunk-DNSKDWUL.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-SW6IK2GJ.mjs +124 -0
  6. package/dist/lib/browser/chunk-SW6IK2GJ.mjs.map +7 -0
  7. package/dist/lib/browser/create-SRADQOTE.mjs +29 -0
  8. package/dist/lib/browser/create-SRADQOTE.mjs.map +7 -0
  9. package/dist/lib/browser/create-markdown-A2ERCEOZ.mjs +21 -0
  10. package/dist/lib/browser/create-markdown-A2ERCEOZ.mjs.map +7 -0
  11. package/dist/lib/browser/index.mjs +109 -126
  12. package/dist/lib/browser/index.mjs.map +4 -4
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/open-ANTKMST5.mjs +20 -0
  15. package/dist/lib/browser/open-ANTKMST5.mjs.map +7 -0
  16. package/dist/lib/browser/operations/index.mjs +13 -0
  17. package/dist/lib/browser/operations/index.mjs.map +7 -0
  18. package/dist/lib/browser/scroll-to-anchor-4RJ6MQ7I.mjs +48 -0
  19. package/dist/lib/browser/scroll-to-anchor-4RJ6MQ7I.mjs.map +7 -0
  20. package/dist/lib/browser/set-view-mode-2S7KKY7C.mjs +25 -0
  21. package/dist/lib/browser/set-view-mode-2S7KKY7C.mjs.map +7 -0
  22. package/dist/lib/browser/types/index.mjs +5 -7
  23. package/dist/lib/browser/update-markdown-CPM5KOQW.mjs +44 -0
  24. package/dist/lib/browser/update-markdown-CPM5KOQW.mjs.map +7 -0
  25. package/dist/lib/node-esm/blueprints/index.mjs +46 -4
  26. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  27. package/dist/lib/node-esm/chunk-MWYFGI2J.mjs +157 -0
  28. package/dist/lib/node-esm/chunk-MWYFGI2J.mjs.map +7 -0
  29. package/dist/lib/node-esm/chunk-ZE6QJ4S5.mjs +125 -0
  30. package/dist/lib/node-esm/chunk-ZE6QJ4S5.mjs.map +7 -0
  31. package/dist/lib/node-esm/create-6JGQPPQ6.mjs +30 -0
  32. package/dist/lib/node-esm/create-6JGQPPQ6.mjs.map +7 -0
  33. package/dist/lib/node-esm/create-markdown-KXSM2I2M.mjs +22 -0
  34. package/dist/lib/node-esm/create-markdown-KXSM2I2M.mjs.map +7 -0
  35. package/dist/lib/node-esm/index.mjs +109 -126
  36. package/dist/lib/node-esm/index.mjs.map +4 -4
  37. package/dist/lib/node-esm/meta.json +1 -1
  38. package/dist/lib/node-esm/open-GB6HNBHS.mjs +21 -0
  39. package/dist/lib/node-esm/open-GB6HNBHS.mjs.map +7 -0
  40. package/dist/lib/node-esm/operations/index.mjs +14 -0
  41. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  42. package/dist/lib/node-esm/scroll-to-anchor-UABP74RR.mjs +49 -0
  43. package/dist/lib/node-esm/scroll-to-anchor-UABP74RR.mjs.map +7 -0
  44. package/dist/lib/node-esm/set-view-mode-JEDC5ZL7.mjs +26 -0
  45. package/dist/lib/node-esm/set-view-mode-JEDC5ZL7.mjs.map +7 -0
  46. package/dist/lib/node-esm/types/index.mjs +5 -7
  47. package/dist/lib/node-esm/update-markdown-AXLYHK6S.mjs +45 -0
  48. package/dist/lib/node-esm/update-markdown-AXLYHK6S.mjs.map +7 -0
  49. package/dist/types/src/MarkdownPlugin.d.ts +1 -0
  50. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  51. package/dist/types/src/{cli/plugin.d.ts → MarkdownPlugin.node.d.ts} +2 -1
  52. package/dist/types/src/MarkdownPlugin.node.d.ts.map +1 -0
  53. package/dist/types/src/MarkdownPlugin.test.d.ts +2 -0
  54. package/dist/types/src/MarkdownPlugin.test.d.ts.map +1 -0
  55. package/dist/types/src/blueprints/index.d.ts +1 -1
  56. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  57. package/dist/types/src/blueprints/markdown-blueprint.d.ts +3 -20
  58. package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -1
  59. package/dist/types/src/capabilities/anchor-sort.d.ts +6 -0
  60. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -0
  61. package/dist/types/src/capabilities/app-graph-serializer.d.ts +5 -0
  62. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
  63. package/dist/types/src/capabilities/artifact-definition.d.ts +5 -0
  64. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  65. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  66. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  67. package/dist/types/src/capabilities/index.d.ts +9 -7
  68. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  69. package/dist/types/src/capabilities/node.d.ts +4 -0
  70. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  71. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  72. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  73. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  74. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  75. package/dist/types/src/capabilities/settings.d.ts +6 -0
  76. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  77. package/dist/types/src/capabilities/state.d.ts +6 -0
  78. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  79. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +2 -2
  80. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -1
  81. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +33 -22
  82. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  83. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +3 -3
  84. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  85. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +6 -3
  86. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
  87. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +7 -6
  88. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -1
  89. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +4 -6
  90. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  91. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts +94 -0
  92. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts.map +1 -0
  93. package/dist/types/src/components/MarkdownSettings/index.d.ts +1 -1
  94. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +1 -1
  95. package/dist/types/src/components/index.d.ts +3 -8
  96. package/dist/types/src/components/index.d.ts.map +1 -1
  97. package/dist/types/src/{components → containers}/MarkdownCard/MarkdownCard.d.ts +1 -1
  98. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  99. package/dist/types/src/{components → containers}/MarkdownCard/MarkdownCard.stories.d.ts +1 -1
  100. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  101. package/dist/types/src/containers/MarkdownCard/MarkdownEditableCard.d.ts +15 -0
  102. package/dist/types/src/containers/MarkdownCard/MarkdownEditableCard.d.ts.map +1 -0
  103. package/dist/types/src/containers/MarkdownCard/index.d.ts +3 -0
  104. package/dist/types/src/containers/MarkdownCard/index.d.ts.map +1 -0
  105. package/dist/types/src/containers/MarkdownCard/snippet.d.ts +17 -0
  106. package/dist/types/src/containers/MarkdownCard/snippet.d.ts.map +1 -0
  107. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts +36 -0
  108. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts.map +1 -0
  109. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts +97 -0
  110. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts.map +1 -0
  111. package/dist/types/src/containers/MarkdownContainer/index.d.ts +3 -0
  112. package/dist/types/src/containers/MarkdownContainer/index.d.ts.map +1 -0
  113. package/dist/types/src/containers/index.d.ts +6 -0
  114. package/dist/types/src/containers/index.d.ts.map +1 -0
  115. package/dist/types/src/hooks/index.d.ts +0 -1
  116. package/dist/types/src/hooks/index.d.ts.map +1 -1
  117. package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -1
  118. package/dist/types/src/hooks/useExtensions.d.ts +10 -6
  119. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -1
  120. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -1
  121. package/dist/types/src/index.d.ts +2 -1
  122. package/dist/types/src/index.d.ts.map +1 -1
  123. package/dist/types/src/operations/create-markdown.d.ts +5 -0
  124. package/dist/types/src/operations/create-markdown.d.ts.map +1 -0
  125. package/dist/types/src/operations/create.d.ts +5 -0
  126. package/dist/types/src/operations/create.d.ts.map +1 -0
  127. package/dist/types/src/operations/create.test.d.ts.map +1 -0
  128. package/dist/types/src/operations/definitions.d.ts +64 -0
  129. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  130. package/dist/types/src/operations/index.d.ts +4 -0
  131. package/dist/types/src/operations/index.d.ts.map +1 -0
  132. package/dist/types/src/operations/open.d.ts +5 -0
  133. package/dist/types/src/operations/open.d.ts.map +1 -0
  134. package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
  135. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
  136. package/dist/types/src/operations/set-view-mode.d.ts +5 -0
  137. package/dist/types/src/operations/set-view-mode.d.ts.map +1 -0
  138. package/dist/types/src/operations/update-markdown.d.ts +5 -0
  139. package/dist/types/src/operations/update-markdown.d.ts.map +1 -0
  140. package/dist/types/src/operations/update.test.d.ts.map +1 -0
  141. package/dist/types/src/testing.d.ts.map +1 -1
  142. package/dist/types/src/translations.d.ts +74 -37
  143. package/dist/types/src/translations.d.ts.map +1 -1
  144. package/dist/types/src/types/Markdown.d.ts +15 -16
  145. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  146. package/dist/types/src/types/Settings.d.ts +17 -0
  147. package/dist/types/src/types/Settings.d.ts.map +1 -0
  148. package/dist/types/src/types/capabilities.d.ts +15 -3
  149. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  150. package/dist/types/src/types/events.d.ts.map +1 -1
  151. package/dist/types/src/types/index.d.ts +2 -3
  152. package/dist/types/src/types/index.d.ts.map +1 -1
  153. package/dist/types/src/types/types.d.ts +1 -0
  154. package/dist/types/src/types/types.d.ts.map +1 -1
  155. package/dist/types/src/util.d.ts +2 -2
  156. package/dist/types/src/util.d.ts.map +1 -1
  157. package/dist/types/tsconfig.tsbuildinfo +1 -1
  158. package/package.json +94 -75
  159. package/src/MarkdownPlugin.node.ts +41 -0
  160. package/src/MarkdownPlugin.test.ts +26 -0
  161. package/src/MarkdownPlugin.tsx +52 -45
  162. package/src/blueprints/index.ts +1 -1
  163. package/src/blueprints/markdown-blueprint.ts +14 -9
  164. package/src/capabilities/{anchor-sort/anchor-sort.ts → anchor-sort.ts} +4 -3
  165. package/src/capabilities/{app-graph-serializer/app-graph-serializer.ts → app-graph-serializer.ts} +14 -9
  166. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +6 -6
  167. package/src/capabilities/blueprint-definition.ts +19 -0
  168. package/src/capabilities/index.ts +14 -7
  169. package/src/capabilities/node.ts +11 -0
  170. package/src/capabilities/operation-handler.ts +16 -0
  171. package/src/capabilities/react-surface.tsx +127 -0
  172. package/src/capabilities/{settings/settings.ts → settings.ts} +5 -4
  173. package/src/capabilities/state.ts +47 -0
  174. package/src/components/MarkdownEditor/FileUpload.tsx +2 -2
  175. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +39 -34
  176. package/src/components/MarkdownEditor/MarkdownEditor.tsx +139 -102
  177. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +26 -18
  178. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +37 -56
  179. package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +40 -0
  180. package/src/components/MarkdownSettings/MarkdownSettings.tsx +22 -109
  181. package/src/components/MarkdownSettings/index.ts +1 -1
  182. package/src/components/index.ts +4 -12
  183. package/src/{components → containers}/MarkdownCard/MarkdownCard.stories.tsx +22 -12
  184. package/src/containers/MarkdownCard/MarkdownCard.tsx +68 -0
  185. package/src/containers/MarkdownCard/MarkdownEditableCard.tsx +42 -0
  186. package/src/containers/MarkdownCard/index.ts +6 -0
  187. package/src/containers/MarkdownCard/snippet.ts +54 -0
  188. package/src/{components → containers/MarkdownContainer}/MarkdownContainer.stories.tsx +36 -24
  189. package/src/containers/MarkdownContainer/MarkdownContainer.tsx +146 -0
  190. package/src/containers/MarkdownContainer/index.ts +6 -0
  191. package/src/containers/index.ts +13 -0
  192. package/src/hooks/index.ts +0 -1
  193. package/src/hooks/useEditorMenuOptions.ts +3 -3
  194. package/src/hooks/useExtensions.tsx +86 -98
  195. package/src/hooks/useLinkQuery.ts +31 -6
  196. package/src/index.ts +5 -1
  197. package/src/meta.ts +1 -1
  198. package/src/operations/create-markdown.ts +20 -0
  199. package/src/operations/create.conversations.json +1 -0
  200. package/src/operations/create.test.ts +97 -0
  201. package/src/operations/create.ts +27 -0
  202. package/src/operations/definitions.ts +120 -0
  203. package/src/operations/index.ts +16 -0
  204. package/src/operations/open.ts +25 -0
  205. package/src/operations/scroll-to-anchor.ts +39 -0
  206. package/src/operations/set-view-mode.ts +24 -0
  207. package/src/operations/update-markdown.ts +51 -0
  208. package/src/operations/update.conversations.json +1 -0
  209. package/src/operations/update.test.ts +214 -0
  210. package/src/testing.ts +2 -2
  211. package/src/translations.ts +26 -36
  212. package/src/types/Markdown.ts +18 -25
  213. package/src/types/Settings.ts +65 -0
  214. package/src/types/capabilities.ts +19 -6
  215. package/src/types/events.ts +5 -4
  216. package/src/types/index.ts +3 -4
  217. package/src/types/types.ts +4 -1
  218. package/src/util.tsx +5 -5
  219. package/dist/lib/browser/MarkdownCard-WHK3ORP7.mjs +0 -12
  220. package/dist/lib/browser/MarkdownCard-WHK3ORP7.mjs.map +0 -7
  221. package/dist/lib/browser/MarkdownContainer-V7EAADMF.mjs +0 -12
  222. package/dist/lib/browser/MarkdownContainer-V7EAADMF.mjs.map +0 -7
  223. package/dist/lib/browser/anchor-sort-WQ3TL7ZI.mjs +0 -32
  224. package/dist/lib/browser/anchor-sort-WQ3TL7ZI.mjs.map +0 -7
  225. package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs +0 -58
  226. package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs.map +0 -7
  227. package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs +0 -19
  228. package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs.map +0 -7
  229. package/dist/lib/browser/chunk-BX73DASG.mjs +0 -702
  230. package/dist/lib/browser/chunk-BX73DASG.mjs.map +0 -7
  231. package/dist/lib/browser/chunk-CUGDX7KA.mjs +0 -8
  232. package/dist/lib/browser/chunk-CUGDX7KA.mjs.map +0 -7
  233. package/dist/lib/browser/chunk-FWQQW6KU.mjs +0 -144
  234. package/dist/lib/browser/chunk-FWQQW6KU.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-JOXYQLKH.mjs +0 -55
  236. package/dist/lib/browser/chunk-JOXYQLKH.mjs.map +0 -7
  237. package/dist/lib/browser/chunk-KDKXFKDN.mjs +0 -104
  238. package/dist/lib/browser/chunk-KDKXFKDN.mjs.map +0 -7
  239. package/dist/lib/browser/chunk-LMO5UVKL.mjs +0 -167
  240. package/dist/lib/browser/chunk-LMO5UVKL.mjs.map +0 -7
  241. package/dist/lib/browser/chunk-S45ULIOG.mjs +0 -101
  242. package/dist/lib/browser/chunk-S45ULIOG.mjs.map +0 -7
  243. package/dist/lib/browser/chunk-WIPSLZ6L.mjs +0 -60
  244. package/dist/lib/browser/chunk-WIPSLZ6L.mjs.map +0 -7
  245. package/dist/lib/browser/cli/index.mjs +0 -32
  246. package/dist/lib/browser/cli/index.mjs.map +0 -7
  247. package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs +0 -53
  248. package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs.map +0 -7
  249. package/dist/lib/browser/react-surface-SRPLD3ED.mjs +0 -213
  250. package/dist/lib/browser/react-surface-SRPLD3ED.mjs.map +0 -7
  251. package/dist/lib/browser/settings-JY5JE7MI.mjs +0 -35
  252. package/dist/lib/browser/settings-JY5JE7MI.mjs.map +0 -7
  253. package/dist/lib/browser/state-QE7VSJWJ.mjs +0 -29
  254. package/dist/lib/browser/state-QE7VSJWJ.mjs.map +0 -7
  255. package/dist/lib/node-esm/MarkdownCard-WJPLQTFS.mjs +0 -13
  256. package/dist/lib/node-esm/MarkdownCard-WJPLQTFS.mjs.map +0 -7
  257. package/dist/lib/node-esm/MarkdownContainer-LUSMORP2.mjs +0 -13
  258. package/dist/lib/node-esm/MarkdownContainer-LUSMORP2.mjs.map +0 -7
  259. package/dist/lib/node-esm/anchor-sort-G7D5TAI6.mjs +0 -33
  260. package/dist/lib/node-esm/anchor-sort-G7D5TAI6.mjs.map +0 -7
  261. package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs +0 -59
  262. package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs.map +0 -7
  263. package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs +0 -20
  264. package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-3JYPCC7M.mjs +0 -105
  266. package/dist/lib/node-esm/chunk-3JYPCC7M.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-44VJC3QF.mjs +0 -56
  268. package/dist/lib/node-esm/chunk-44VJC3QF.mjs.map +0 -7
  269. package/dist/lib/node-esm/chunk-D4BCFPKK.mjs +0 -703
  270. package/dist/lib/node-esm/chunk-D4BCFPKK.mjs.map +0 -7
  271. package/dist/lib/node-esm/chunk-EYAFC4N7.mjs +0 -145
  272. package/dist/lib/node-esm/chunk-EYAFC4N7.mjs.map +0 -7
  273. package/dist/lib/node-esm/chunk-PRV35A7Z.mjs +0 -168
  274. package/dist/lib/node-esm/chunk-PRV35A7Z.mjs.map +0 -7
  275. package/dist/lib/node-esm/chunk-RQP7G7XW.mjs +0 -61
  276. package/dist/lib/node-esm/chunk-RQP7G7XW.mjs.map +0 -7
  277. package/dist/lib/node-esm/chunk-SDTYEGGL.mjs +0 -102
  278. package/dist/lib/node-esm/chunk-SDTYEGGL.mjs.map +0 -7
  279. package/dist/lib/node-esm/chunk-W3IIKDV5.mjs +0 -10
  280. package/dist/lib/node-esm/chunk-W3IIKDV5.mjs.map +0 -7
  281. package/dist/lib/node-esm/cli/index.mjs +0 -33
  282. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  283. package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs +0 -54
  284. package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs.map +0 -7
  285. package/dist/lib/node-esm/react-surface-RONSOJIQ.mjs +0 -214
  286. package/dist/lib/node-esm/react-surface-RONSOJIQ.mjs.map +0 -7
  287. package/dist/lib/node-esm/settings-4UGMPIRY.mjs +0 -36
  288. package/dist/lib/node-esm/settings-4UGMPIRY.mjs.map +0 -7
  289. package/dist/lib/node-esm/state-LXE5XIN4.mjs +0 -30
  290. package/dist/lib/node-esm/state-LXE5XIN4.mjs.map +0 -7
  291. package/dist/types/src/blueprints/functions/create.d.ts +0 -8
  292. package/dist/types/src/blueprints/functions/create.d.ts.map +0 -1
  293. package/dist/types/src/blueprints/functions/create.test.d.ts.map +0 -1
  294. package/dist/types/src/blueprints/functions/index.d.ts +0 -4
  295. package/dist/types/src/blueprints/functions/index.d.ts.map +0 -1
  296. package/dist/types/src/blueprints/functions/open.d.ts +0 -7
  297. package/dist/types/src/blueprints/functions/open.d.ts.map +0 -1
  298. package/dist/types/src/blueprints/functions/update.d.ts +0 -6
  299. package/dist/types/src/blueprints/functions/update.d.ts.map +0 -1
  300. package/dist/types/src/blueprints/functions/update.test.d.ts.map +0 -1
  301. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +0 -5
  302. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +0 -1
  303. package/dist/types/src/capabilities/anchor-sort/index.d.ts +0 -3
  304. package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +0 -1
  305. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +0 -5
  306. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +0 -1
  307. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +0 -3
  308. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +0 -1
  309. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +0 -5
  310. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  311. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  312. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  313. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -10
  314. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  315. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  316. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  317. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  318. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  319. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  320. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  321. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  322. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  323. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  324. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  325. package/dist/types/src/capabilities/settings/index.d.ts +0 -3
  326. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  327. package/dist/types/src/capabilities/settings/settings.d.ts +0 -6
  328. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  329. package/dist/types/src/capabilities/state/index.d.ts +0 -3
  330. package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
  331. package/dist/types/src/capabilities/state/state.d.ts +0 -5
  332. package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
  333. package/dist/types/src/cli/index.d.ts +0 -2
  334. package/dist/types/src/cli/index.d.ts.map +0 -1
  335. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  336. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +0 -1
  337. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +0 -1
  338. package/dist/types/src/components/MarkdownCard/index.d.ts +0 -4
  339. package/dist/types/src/components/MarkdownCard/index.d.ts.map +0 -1
  340. package/dist/types/src/components/MarkdownContainer.d.ts +0 -28
  341. package/dist/types/src/components/MarkdownContainer.d.ts.map +0 -1
  342. package/dist/types/src/components/MarkdownContainer.stories.d.ts +0 -59
  343. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +0 -1
  344. package/dist/types/src/components/Suggestions.stories.d.ts +0 -11
  345. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  346. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +0 -6
  347. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +0 -1
  348. package/dist/types/src/types/MarkdownAction.d.ts +0 -66
  349. package/dist/types/src/types/MarkdownAction.d.ts.map +0 -1
  350. package/src/blueprints/functions/create.conversations.json +0 -1
  351. package/src/blueprints/functions/create.test.ts +0 -125
  352. package/src/blueprints/functions/create.ts +0 -34
  353. package/src/blueprints/functions/index.ts +0 -7
  354. package/src/blueprints/functions/open.ts +0 -33
  355. package/src/blueprints/functions/update.conversations.json +0 -1
  356. package/src/blueprints/functions/update.test.ts +0 -149
  357. package/src/blueprints/functions/update.ts +0 -38
  358. package/src/capabilities/anchor-sort/index.ts +0 -7
  359. package/src/capabilities/app-graph-serializer/index.ts +0 -7
  360. package/src/capabilities/artifact-definition/index.ts +0 -7
  361. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -25
  362. package/src/capabilities/blueprint-definition/index.ts +0 -7
  363. package/src/capabilities/operation-resolver/index.ts +0 -7
  364. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -45
  365. package/src/capabilities/react-surface/index.ts +0 -7
  366. package/src/capabilities/react-surface/react-surface.tsx +0 -100
  367. package/src/capabilities/settings/index.ts +0 -7
  368. package/src/capabilities/state/index.ts +0 -7
  369. package/src/capabilities/state/state.ts +0 -31
  370. package/src/cli/index.ts +0 -5
  371. package/src/cli/plugin.ts +0 -29
  372. package/src/components/MarkdownCard/MarkdownCard.tsx +0 -64
  373. package/src/components/MarkdownCard/index.ts +0 -9
  374. package/src/components/MarkdownContainer.tsx +0 -111
  375. package/src/components/Suggestions.stories.tsx +0 -215
  376. package/src/hooks/useSelectCurrentThread.tsx +0 -61
  377. package/src/types/MarkdownAction.ts +0 -59
  378. /package/dist/types/src/{blueprints/functions → operations}/create.test.d.ts +0 -0
  379. /package/dist/types/src/{blueprints/functions → operations}/update.test.d.ts +0 -0
@@ -1,149 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { describe, expect, it } from '@effect/vitest';
6
- import * as Effect from 'effect/Effect';
7
- import * as Layer from 'effect/Layer';
8
-
9
- import { AiService, ConsolePrinter } from '@dxos/ai';
10
- import { MemoizedAiService, TestAiService } from '@dxos/ai/testing';
11
- import {
12
- AiConversation,
13
- type ContextBinding,
14
- GenerationObserver,
15
- makeToolExecutionServiceFromFunctions,
16
- makeToolResolverFromFunctions,
17
- } from '@dxos/assistant';
18
- import { Blueprint } from '@dxos/blueprints';
19
- import { SpaceProperties } from '@dxos/client-protocol';
20
- import { Obj, Query, Ref } from '@dxos/echo';
21
- import { Database } from '@dxos/echo';
22
- import { acquireReleaseResource } from '@dxos/effect';
23
- import { TestHelpers } from '@dxos/effect/testing';
24
- import { CredentialsService, FunctionInvocationService, QueueService, TracingService } from '@dxos/functions';
25
- import { FunctionInvocationServiceLayerTest, TestDatabaseLayer } from '@dxos/functions-runtime/testing';
26
- import { invariant } from '@dxos/invariant';
27
- import { ObjectId } from '@dxos/keys';
28
- import { Markdown } from '@dxos/plugin-markdown/types';
29
- import { Collection } from '@dxos/schema';
30
- import { HasSubject, type Message } from '@dxos/types';
31
-
32
- import { WithProperties, testToolkit } from '../../testing';
33
- import * as MarkdownBlueprint from '../markdown-blueprint';
34
-
35
- import update from './update';
36
-
37
- ObjectId.dangerouslyDisableRandomness();
38
-
39
- const TestLayer = Layer.mergeAll(
40
- AiService.model('@anthropic/claude-opus-4-0'),
41
- makeToolResolverFromFunctions(MarkdownBlueprint.functions, testToolkit),
42
- makeToolExecutionServiceFromFunctions(testToolkit, testToolkit.toLayer({}) as any),
43
- ).pipe(
44
- Layer.provideMerge(
45
- FunctionInvocationServiceLayerTest({
46
- functions: MarkdownBlueprint.functions,
47
- }),
48
- ),
49
- Layer.provideMerge(
50
- Layer.mergeAll(
51
- TestAiService(),
52
- TestDatabaseLayer({
53
- spaceKey: 'fixed',
54
- indexing: { vector: true },
55
- types: [SpaceProperties, Collection.Collection, Blueprint.Blueprint, Markdown.Document, HasSubject.HasSubject],
56
- }),
57
- CredentialsService.configuredLayer([]),
58
- TracingService.layerNoop,
59
- ),
60
- ),
61
- );
62
-
63
- describe('update', () => {
64
- it.effect(
65
- 'call a function to update a markdown document',
66
- Effect.fnUntraced(
67
- function* (_) {
68
- const doc = Markdown.make({
69
- name: 'BlueYard',
70
- content: 'Founders and portfolio of BlueYard.',
71
- });
72
- yield* Database.Service.add(doc);
73
-
74
- yield* FunctionInvocationService.invokeFunction(update, {
75
- id: doc.id,
76
- diffs: ['- Founders', '+ # Founders'],
77
- });
78
-
79
- const updatedDoc = yield* Database.Service.resolve(Obj.getDXN(doc), Markdown.Document);
80
- expect(updatedDoc.name).toBe(doc.name);
81
- const text = yield* Database.Service.load(updatedDoc.content);
82
- expect(text.content).toBe('# Founders and portfolio of BlueYard.');
83
- },
84
- WithProperties,
85
- Effect.provide(TestLayer),
86
- TestHelpers.provideTestContext,
87
- ),
88
- );
89
-
90
- it.scoped(
91
- 'create and update a markdown document',
92
- Effect.fnUntraced(
93
- function* (_) {
94
- const queue = yield* QueueService.createQueue<Message.Message | ContextBinding>();
95
- const conversation = yield* acquireReleaseResource(() => new AiConversation({ queue }));
96
-
97
- yield* Database.Service.flush({ indexes: true });
98
- const markdownBlueprint = yield* Database.Service.add(Obj.clone(MarkdownBlueprint.make()));
99
- yield* Effect.promise(() =>
100
- conversation.context.bind({
101
- blueprints: [Ref.make(markdownBlueprint)],
102
- }),
103
- );
104
-
105
- const observer = GenerationObserver.fromPrinter(new ConsolePrinter());
106
-
107
- yield* conversation.createRequest({
108
- observer,
109
- prompt: `Create a document with a cookie recipe.`,
110
- });
111
- {
112
- const docs = yield* Database.Service.runQuery(Query.type(Markdown.Document));
113
- if (docs.length !== 1) {
114
- throw new Error(`Expected 1 document; got ${docs.length}: ${docs.map((_) => _.name)}`);
115
- }
116
-
117
- const doc = docs[0];
118
- invariant(Obj.instanceOf(Markdown.Document, doc));
119
- console.log({
120
- name: doc.name,
121
- content: yield* Database.Service.load(doc.content).pipe(Effect.map((_) => _.content)),
122
- });
123
- }
124
-
125
- yield* conversation.createRequest({
126
- observer,
127
- prompt: 'Add a section with a holiday-themed variation.',
128
- });
129
- {
130
- const docs = yield* Database.Service.runQuery(Query.type(Markdown.Document));
131
- if (docs.length !== 1) {
132
- throw new Error(`Expected 1 document; got ${docs.length}: ${docs.map((_) => _.name)}`);
133
- }
134
-
135
- const doc = docs[0];
136
- invariant(Obj.instanceOf(Markdown.Document, doc));
137
- console.log({
138
- name: doc.name,
139
- content: yield* Database.Service.load(doc.content).pipe(Effect.map((_) => _.content)),
140
- });
141
- }
142
- },
143
- WithProperties,
144
- Effect.provide(TestLayer),
145
- TestHelpers.provideTestContext,
146
- ),
147
- MemoizedAiService.isGenerationEnabled() ? 240_000 : 30_000,
148
- );
149
- });
@@ -1,38 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
- import * as Schema from 'effect/Schema';
7
-
8
- import { ArtifactId, applyDiffs } from '@dxos/assistant';
9
- import { Database } from '@dxos/echo';
10
- import { createDocAccessor } from '@dxos/echo-db';
11
- import { defineFunction } from '@dxos/functions';
12
- import { trim } from '@dxos/util';
13
-
14
- import { Markdown } from '../../types';
15
-
16
- // TODO(wittjosiah): Reconcile with ThreadAction.AddProposal.
17
- export default defineFunction({
18
- key: 'dxos.org/function/markdown/update',
19
- name: 'Update',
20
- description: trim`
21
- Applies a set of diffs to the markdown document.
22
- `,
23
- inputSchema: Schema.Struct({
24
- id: ArtifactId.annotations({
25
- description: 'The ID of the markdown document.',
26
- }),
27
- diffs: Schema.Array(Schema.String).annotations({
28
- description: 'The diffs to apply to the document.',
29
- }),
30
- }),
31
- outputSchema: Schema.Void,
32
- handler: Effect.fn(function* ({ data: { id, diffs } }) {
33
- const object = yield* Database.Service.resolve(ArtifactId.toDXN(id), Markdown.Document);
34
- const content = yield* Effect.promise(() => object.content.load());
35
- const accessor = createDocAccessor(content, ['content']);
36
- applyDiffs(accessor, diffs);
37
- }),
38
- });
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const AnchorSort = Capability.lazy('AnchorSort', () => import('./anchor-sort'));
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const AppGraphSerializer = Capability.lazy('AppGraphSerializer', () => import('./app-graph-serializer'));
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const ArtifactDefinition = Capability.lazy('ArtifactDefinition', () => import('./artifact-definition'));
@@ -1,25 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
-
7
- import { Capability, Common } from '@dxos/app-framework';
8
-
9
- import { MarkdownBlueprint } from '../../blueprints';
10
-
11
- export const functions = MarkdownBlueprint.functions;
12
-
13
- export type BlueprintCapabilities = [
14
- Capability.Capability<typeof Common.Capability.Functions>,
15
- Capability.Capability<typeof Common.Capability.BlueprintDefinition>,
16
- ];
17
-
18
- const blueprintDefinition = Capability.makeModule<[], BlueprintCapabilities>(() =>
19
- Effect.succeed([
20
- Capability.contributes(Common.Capability.Functions, functions),
21
- Capability.contributes(Common.Capability.BlueprintDefinition, MarkdownBlueprint.make()),
22
- ]),
23
- );
24
-
25
- export default blueprintDefinition;
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const BlueprintDefinition = Capability.lazy('BlueprintDefinition', () => import('./blueprint-definition'));
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const OperationResolver = Capability.lazy('OperationResolver', () => import('./operation-resolver'));
@@ -1,45 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
-
7
- import { Capability, Common } from '@dxos/app-framework';
8
- import { Obj, Ref, Type } from '@dxos/echo';
9
- import { OperationResolver } from '@dxos/operation';
10
- import { Collection } from '@dxos/schema';
11
-
12
- import { Markdown, MarkdownCapabilities, MarkdownOperation } from '../../types';
13
-
14
- export default Capability.makeModule(
15
- Effect.fnUntraced(function* () {
16
- return Capability.contributes(Common.Capability.OperationResolver, [
17
- OperationResolver.make({
18
- operation: MarkdownOperation.OnCreateSpace,
19
- handler: Effect.fnUntraced(function* ({ rootCollection }) {
20
- const collection = Collection.makeManaged({ key: Type.getTypename(Markdown.Document) });
21
- Obj.change(rootCollection, (c) => {
22
- c.objects.push(Ref.make(collection));
23
- });
24
- }),
25
- }),
26
- OperationResolver.make({
27
- operation: MarkdownOperation.Create,
28
- handler: ({ name, content }) =>
29
- Effect.succeed({
30
- object: Markdown.make({ name, content }),
31
- }),
32
- }),
33
- // TODO(wittjosiah): This appears to be unused.
34
- OperationResolver.make({
35
- operation: MarkdownOperation.SetViewMode,
36
- handler: Effect.fnUntraced(function* ({ id, viewMode }) {
37
- yield* Common.Capability.updateAtomValue(MarkdownCapabilities.State, (current) => ({
38
- ...current,
39
- viewMode: { ...current.viewMode, [id]: viewMode },
40
- }));
41
- }),
42
- }),
43
- ]);
44
- }),
45
- );
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));
@@ -1,100 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
- import React, { forwardRef, useCallback, useMemo } from 'react';
7
-
8
- import { Capability, Common } from '@dxos/app-framework';
9
- import {
10
- type SurfaceComponentProps,
11
- useAtomCapability,
12
- useAtomCapabilityState,
13
- useCapability,
14
- useSettingsState,
15
- } from '@dxos/app-framework/react';
16
- import { Obj } from '@dxos/echo';
17
- import { AttentionCapabilities } from '@dxos/plugin-attention';
18
- import { Text } from '@dxos/schema';
19
- import { type EditorViewMode } from '@dxos/ui-editor';
20
-
21
- import { MarkdownCard, MarkdownContainer, type MarkdownContainerProps, MarkdownSettings } from '../../components';
22
- import { meta } from '../../meta';
23
- import { Markdown, MarkdownCapabilities } from '../../types';
24
-
25
- export default Capability.makeModule(() =>
26
- Effect.succeed(
27
- Capability.contributes(Common.Capability.ReactSurface, [
28
- Common.createSurface({
29
- id: `${meta.id}/surface/document`,
30
- role: ['article', 'section', 'tabpanel'],
31
- filter: (data): data is { subject: Markdown.Document; variant: undefined } =>
32
- Obj.instanceOf(Markdown.Document, data.subject) && !data.variant,
33
- component: ({ data, role, ref }) => {
34
- return <Container id={Obj.getDXN(data.subject).toString()} subject={data.subject} role={role} ref={ref} />;
35
- },
36
- }),
37
- Common.createSurface({
38
- id: `${meta.id}/surface/text`,
39
- role: ['article', 'section', 'tabpanel'],
40
- filter: (data): data is { id: string; subject: Text.Text } =>
41
- typeof data.id === 'string' && Obj.instanceOf(Text.Text, data.subject),
42
- component: ({ data, role }) => {
43
- return <Container id={data.id} subject={data.subject} role={role} />;
44
- },
45
- }),
46
- Common.createSurface({
47
- id: `${meta.id}/surface/plugin-settings`,
48
- role: 'article',
49
- filter: (data): data is { subject: Common.Capability.Settings } =>
50
- Common.Capability.isSettings(data.subject) && data.subject.prefix === meta.id,
51
- component: ({ data: { subject } }) => {
52
- const { settings, updateSettings } = useSettingsState<Markdown.Settings>(subject.atom);
53
- return <MarkdownSettings settings={settings} onSettingsChange={updateSettings} />;
54
- },
55
- }),
56
- Common.createSurface({
57
- id: `${meta.id}/surface/preview`,
58
- role: 'card--content',
59
- filter: (data): data is { subject: Markdown.Document | Text.Text } =>
60
- Obj.instanceOf(Markdown.Document, data.subject) || Obj.instanceOf(Text.Text, data.subject),
61
- component: ({ data }) => <MarkdownCard {...data} />,
62
- }),
63
- ]),
64
- ),
65
- );
66
-
67
- /**
68
- * Common wrapper.
69
- */
70
- const Container = forwardRef<HTMLDivElement, SurfaceComponentProps<Markdown.Document | Text.Text, { id: string }>>(
71
- ({ id, subject, role }, forwardedRef) => {
72
- const selectionManager = useCapability(AttentionCapabilities.Selection);
73
- const settings = useAtomCapability(MarkdownCapabilities.Settings);
74
- const [state, setState] = useAtomCapabilityState(MarkdownCapabilities.State);
75
- const editorState = useCapability(MarkdownCapabilities.EditorState);
76
- const extensions = useCapability(MarkdownCapabilities.Extensions);
77
- const extensionProviders = useMemo(() => extensions.flat(), [extensions]);
78
-
79
- const viewMode: EditorViewMode = (id && state.viewMode[id]) || settings?.defaultViewMode || 'source';
80
- const handleViewModeChange = useCallback<NonNullable<MarkdownContainerProps['onViewModeChange']>>(
81
- (mode) => setState((current) => ({ ...current, viewMode: { ...current.viewMode, [id]: mode } })),
82
- [id, setState],
83
- );
84
-
85
- return (
86
- <MarkdownContainer
87
- role={role}
88
- subject={subject}
89
- id={id}
90
- settings={settings}
91
- selectionManager={selectionManager}
92
- extensionProviders={extensionProviders}
93
- editorStateStore={editorState}
94
- viewMode={viewMode}
95
- onViewModeChange={handleViewModeChange}
96
- ref={forwardedRef}
97
- />
98
- );
99
- },
100
- );
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const MarkdownSettings = Capability.lazy('MarkdownSettings', () => import('./settings'));
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const MarkdownState = Capability.lazy('MarkdownState', () => import('./state'));
@@ -1,31 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
-
7
- import { Capability } from '@dxos/app-framework';
8
- import { createKvsStore } from '@dxos/effect';
9
- import { createEditorStateStore } from '@dxos/ui-editor';
10
-
11
- import { meta } from '../../meta';
12
- import { MarkdownCapabilities, MarkdownStateSchema } from '../../types';
13
-
14
- export default Capability.makeModule(
15
- Effect.fnUntraced(function* () {
16
- // Persisted state using KVS store.
17
- const stateAtom = createKvsStore({
18
- key: `${meta.id}/state`,
19
- schema: MarkdownStateSchema,
20
- defaultValue: () => ({ viewMode: {} }),
21
- });
22
-
23
- // TODO(wittjosiah): Fold into state.
24
- const editorState = createEditorStateStore(`${meta.id}/editor`);
25
-
26
- return [
27
- Capability.contributes(MarkdownCapabilities.State, stateAtom),
28
- Capability.contributes(MarkdownCapabilities.EditorState, editorState),
29
- ];
30
- }),
31
- );
package/src/cli/index.ts DELETED
@@ -1,5 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- export * from './plugin';
package/src/cli/plugin.ts DELETED
@@ -1,29 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
-
7
- import { Common, Plugin } from '@dxos/app-framework';
8
- import { type CreateObject } from '@dxos/plugin-space/types';
9
- import { Text } from '@dxos/schema';
10
-
11
- // NOTE: Must not import from index to avoid pulling in react dependencies.
12
- import { OperationResolver } from '../capabilities/operation-resolver';
13
- import { meta } from '../meta';
14
- import { Markdown } from '../types';
15
-
16
- export const MarkdownPlugin = Plugin.define(meta).pipe(
17
- Common.Plugin.addSchemaModule({ schema: [Markdown.Document, Text.Text] }),
18
- Common.Plugin.addMetadataModule({
19
- metadata: {
20
- id: Markdown.Document.typename,
21
- metadata: {
22
- createObject: ((props) => Effect.sync(() => Markdown.make(props))) satisfies CreateObject,
23
- addToCollectionOnCreate: true,
24
- },
25
- },
26
- }),
27
- Common.Plugin.addOperationResolverModule({ activate: OperationResolver }),
28
- Plugin.make,
29
- );
@@ -1,64 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React, { useMemo } from 'react';
6
-
7
- import { Obj } from '@dxos/echo';
8
- import { useTranslation } from '@dxos/react-ui';
9
- import { Card } from '@dxos/react-ui-mosaic';
10
- import { Text } from '@dxos/schema';
11
-
12
- import { meta } from '../../meta';
13
- import { Markdown } from '../../types';
14
- import { getContentSnippet, getFallbackName } from '../../util';
15
- import { MarkdownEditor } from '../MarkdownEditor';
16
-
17
- export type MarkdownCardProps = { subject: Markdown.Document | Text.Text };
18
-
19
- export const MarkdownCard = ({ subject }: MarkdownCardProps) => {
20
- const { t } = useTranslation(meta.id);
21
- const snippet = useMemo(() => getSnippet(subject), [subject]);
22
- const info = getInfo(subject);
23
-
24
- return (
25
- <Card.Content>
26
- {snippet && (
27
- <Card.Row className='max-h-[300px] overflow-hidden'>
28
- <MarkdownEditor.Root id={subject.id} viewMode='readonly'>
29
- <MarkdownEditor.Content initialValue={snippet} slots={{}} classNames='!bg-transparent' />
30
- </MarkdownEditor.Root>
31
- </Card.Row>
32
- )}
33
- <Card.Row>
34
- <Card.Text classNames='text-xs text-description'>
35
- {info.words} {t('words label', { count: info.words })}
36
- </Card.Text>
37
- </Card.Row>
38
- </Card.Content>
39
- );
40
- };
41
-
42
- const getInfo = (subject: Markdown.Document | Text.Text) => {
43
- const text = (Obj.instanceOf(Markdown.Document, subject) ? subject.content?.target?.content : subject.content) ?? '';
44
- return { words: text.split(' ').length };
45
- };
46
-
47
- // TODO(burdon): Factor out.
48
- const getTitle = (subject: Markdown.Document | Text.Text, fallback: string) => {
49
- if (Obj.instanceOf(Markdown.Document, subject)) {
50
- const title = Obj.getLabel(subject);
51
- return title ?? getFallbackName(subject.content?.target?.content ?? fallback);
52
- } else if (Obj.instanceOf(Text.Text, subject)) {
53
- return getFallbackName(subject.content);
54
- }
55
- };
56
-
57
- // TODO(burdon): Factor out.
58
- const getSnippet = (subject: Markdown.Document | Text.Text, fallback?: string) => {
59
- if (Obj.instanceOf(Markdown.Document, subject)) {
60
- return Obj.getDescription(subject) || getContentSnippet(subject.content?.target?.content ?? fallback);
61
- } else if (Obj.instanceOf(Text.Text, subject)) {
62
- return getContentSnippet(subject.content ?? fallback);
63
- }
64
- };
@@ -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;