@dxos/plugin-markdown 0.8.4-main.2e9d522 → 0.8.4-main.3c1ae3b

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 (297) hide show
  1. package/dist/lib/browser/MarkdownCard-THZFDOOV.mjs +13 -0
  2. package/dist/lib/browser/MarkdownCard-THZFDOOV.mjs.map +7 -0
  3. package/dist/lib/browser/MarkdownContainer-VKPSVI5F.mjs +16 -0
  4. package/dist/lib/browser/MarkdownContainer-VKPSVI5F.mjs.map +7 -0
  5. package/dist/lib/browser/{anchor-sort-UKJJ7ZNP.mjs → anchor-sort-3MYLO74J.mjs} +11 -11
  6. package/dist/lib/browser/anchor-sort-3MYLO74J.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-serializer-ICLAF662.mjs → app-graph-serializer-BZJ4TQOE.mjs} +15 -16
  8. package/dist/lib/browser/app-graph-serializer-BZJ4TQOE.mjs.map +7 -0
  9. package/dist/lib/browser/blueprint-definition-R5T6LTPN.mjs +13 -0
  10. package/dist/lib/browser/blueprint-definition-R5T6LTPN.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-56SUMOIZ.mjs +734 -0
  12. package/dist/lib/browser/chunk-56SUMOIZ.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-6OMOMVO7.mjs +107 -0
  14. package/dist/lib/browser/chunk-6OMOMVO7.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-BQTYJOFB.mjs +28 -0
  16. package/dist/lib/browser/chunk-BQTYJOFB.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-CN35HEBX.mjs +79 -0
  18. package/dist/lib/browser/chunk-CN35HEBX.mjs.map +7 -0
  19. package/dist/lib/browser/chunk-IBCHVMZW.mjs +16 -0
  20. package/dist/lib/browser/chunk-IBCHVMZW.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-KCOBZZIL.mjs +111 -0
  22. package/dist/lib/browser/chunk-KCOBZZIL.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-KPH4ZPQN.mjs +99 -0
  24. package/dist/lib/browser/chunk-KPH4ZPQN.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-LHDCHDBW.mjs → chunk-NXT2E2BG.mjs} +12 -7
  26. package/dist/lib/browser/chunk-NXT2E2BG.mjs.map +7 -0
  27. package/dist/lib/browser/chunk-RJPOHSYN.mjs +152 -0
  28. package/dist/lib/browser/chunk-RJPOHSYN.mjs.map +7 -0
  29. package/dist/lib/browser/chunk-U6Y53XZK.mjs +20 -0
  30. package/dist/lib/browser/chunk-U6Y53XZK.mjs.map +7 -0
  31. package/dist/lib/browser/index.mjs +37 -37
  32. package/dist/lib/browser/index.mjs.map +3 -3
  33. package/dist/lib/browser/intent-resolver-55ASQRIW.mjs +62 -0
  34. package/dist/lib/browser/intent-resolver-55ASQRIW.mjs.map +7 -0
  35. package/dist/lib/browser/meta.json +1 -1
  36. package/dist/lib/browser/react-surface-Q3C5H2KT.mjs +215 -0
  37. package/dist/lib/browser/react-surface-Q3C5H2KT.mjs.map +7 -0
  38. package/dist/lib/browser/{settings-KN75ZQY6.mjs → settings-G3ZOXJQY.mjs} +7 -7
  39. package/dist/lib/browser/settings-G3ZOXJQY.mjs.map +7 -0
  40. package/dist/lib/browser/{state-LZWTAS65.mjs → state-BTUKVZHY.mjs} +9 -9
  41. package/dist/lib/browser/state-BTUKVZHY.mjs.map +7 -0
  42. package/dist/lib/browser/toolkit.mjs +13 -0
  43. package/dist/lib/browser/toolkit.mjs.map +7 -0
  44. package/dist/lib/browser/types/index.mjs +6 -14
  45. package/dist/lib/node-esm/MarkdownCard-QHSSZGIY.mjs +14 -0
  46. package/dist/lib/node-esm/MarkdownCard-QHSSZGIY.mjs.map +7 -0
  47. package/dist/lib/node-esm/MarkdownContainer-G3ZQJS7A.mjs +17 -0
  48. package/dist/lib/node-esm/MarkdownContainer-G3ZQJS7A.mjs.map +7 -0
  49. package/dist/lib/node-esm/{anchor-sort-IPIS5D5B.mjs → anchor-sort-W4HCTYUQ.mjs} +11 -11
  50. package/dist/lib/node-esm/anchor-sort-W4HCTYUQ.mjs.map +7 -0
  51. package/dist/lib/node-esm/{app-graph-serializer-FLBXQKKR.mjs → app-graph-serializer-OCTHXWLF.mjs} +15 -16
  52. package/dist/lib/node-esm/app-graph-serializer-OCTHXWLF.mjs.map +7 -0
  53. package/dist/lib/node-esm/blueprint-definition-2JV3WV22.mjs +14 -0
  54. package/dist/lib/node-esm/blueprint-definition-2JV3WV22.mjs.map +7 -0
  55. package/dist/lib/node-esm/chunk-6F6FCTIA.mjs +100 -0
  56. package/dist/lib/node-esm/chunk-6F6FCTIA.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-C5KXP2ZE.mjs +153 -0
  58. package/dist/lib/node-esm/chunk-C5KXP2ZE.mjs.map +7 -0
  59. package/dist/lib/node-esm/chunk-FR6RW6DH.mjs +735 -0
  60. package/dist/lib/node-esm/chunk-FR6RW6DH.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-ACFGXH2K.mjs → chunk-GMMVSXQ6.mjs} +5 -5
  62. package/dist/lib/node-esm/chunk-GMMVSXQ6.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-VIR2ABYE.mjs → chunk-I5JSQBPI.mjs} +12 -7
  64. package/dist/lib/node-esm/chunk-I5JSQBPI.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-KM7KYV6W.mjs +22 -0
  66. package/dist/lib/node-esm/chunk-KM7KYV6W.mjs.map +7 -0
  67. package/dist/lib/node-esm/chunk-KYWXTMKI.mjs +108 -0
  68. package/dist/lib/node-esm/chunk-KYWXTMKI.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-R3SGV4ES.mjs +112 -0
  70. package/dist/lib/node-esm/chunk-R3SGV4ES.mjs.map +7 -0
  71. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs +29 -0
  72. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs.map +7 -0
  73. package/dist/lib/node-esm/chunk-YFRTKXTB.mjs +80 -0
  74. package/dist/lib/node-esm/chunk-YFRTKXTB.mjs.map +7 -0
  75. package/dist/lib/node-esm/index.mjs +37 -37
  76. package/dist/lib/node-esm/index.mjs.map +3 -3
  77. package/dist/lib/node-esm/intent-resolver-DTBVWCNO.mjs +63 -0
  78. package/dist/lib/node-esm/intent-resolver-DTBVWCNO.mjs.map +7 -0
  79. package/dist/lib/node-esm/meta.json +1 -1
  80. package/dist/lib/node-esm/react-surface-QWRT4SD6.mjs +216 -0
  81. package/dist/lib/node-esm/react-surface-QWRT4SD6.mjs.map +7 -0
  82. package/dist/lib/node-esm/{settings-KVP7TVX7.mjs → settings-IBFFCGNL.mjs} +7 -7
  83. package/dist/lib/node-esm/settings-IBFFCGNL.mjs.map +7 -0
  84. package/dist/lib/node-esm/{state-NW3W4JCQ.mjs → state-K6EH7SRZ.mjs} +9 -9
  85. package/dist/lib/node-esm/state-K6EH7SRZ.mjs.map +7 -0
  86. package/dist/lib/node-esm/toolkit.mjs +14 -0
  87. package/dist/lib/node-esm/toolkit.mjs.map +7 -0
  88. package/dist/lib/node-esm/types/index.mjs +6 -14
  89. package/dist/types/src/MarkdownPlugin.d.ts +1 -1
  90. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  91. package/dist/types/src/capabilities/anchor-sort.d.ts +2 -4
  92. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
  93. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  94. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/artifact-definition.d.ts +1 -9
  96. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/blueprint-definition.d.ts +7 -0
  98. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  99. package/dist/types/src/capabilities/capabilities.d.ts +1 -1
  100. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/index.d.ts +10 -12
  102. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  104. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  106. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  107. package/dist/types/src/capabilities/settings.d.ts +1 -1
  108. package/dist/types/src/capabilities/state.d.ts +2 -2
  109. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  110. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +20 -0
  111. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  112. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +9 -0
  113. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  114. package/dist/types/src/components/MarkdownCard/index.d.ts +4 -0
  115. package/dist/types/src/components/MarkdownCard/index.d.ts.map +1 -0
  116. package/dist/types/src/components/MarkdownContainer.d.ts +14 -13
  117. package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
  118. package/dist/types/src/components/MarkdownContainer.stories.d.ts +55 -5
  119. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +1 -1
  120. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +11 -0
  121. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -0
  122. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +42 -23
  123. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  124. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +8 -15
  125. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  126. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +29 -0
  127. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -0
  128. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +12 -0
  129. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -0
  130. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +2 -2
  131. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  132. package/dist/types/src/components/Suggestions.stories.d.ts +3 -4
  133. package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
  134. package/dist/types/src/components/index.d.ts +7 -2
  135. package/dist/types/src/components/index.d.ts.map +1 -1
  136. package/dist/types/src/events.d.ts.map +1 -1
  137. package/dist/types/src/functions/create.d.ts +8 -0
  138. package/dist/types/src/functions/create.d.ts.map +1 -0
  139. package/dist/types/src/functions/create.test.d.ts +2 -0
  140. package/dist/types/src/functions/create.test.d.ts.map +1 -0
  141. package/dist/types/src/functions/index.d.ts +18 -0
  142. package/dist/types/src/functions/index.d.ts.map +1 -0
  143. package/dist/types/src/functions/open.d.ts +7 -0
  144. package/dist/types/src/functions/open.d.ts.map +1 -0
  145. package/dist/types/src/functions/update.d.ts +6 -0
  146. package/dist/types/src/functions/update.d.ts.map +1 -0
  147. package/dist/types/src/functions/update.test.d.ts +2 -0
  148. package/dist/types/src/functions/update.test.d.ts.map +1 -0
  149. package/dist/types/src/hooks/index.d.ts +3 -0
  150. package/dist/types/src/hooks/index.d.ts.map +1 -1
  151. package/dist/types/src/hooks/useEditorMenuOptions.d.ts +9 -0
  152. package/dist/types/src/hooks/useEditorMenuOptions.d.ts.map +1 -0
  153. package/dist/types/src/hooks/useExtensions.d.ts +21 -0
  154. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -0
  155. package/dist/types/src/hooks/useLinkQuery.d.ts +4 -0
  156. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -0
  157. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +1 -1
  158. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
  159. package/dist/types/src/index.d.ts +2 -1
  160. package/dist/types/src/index.d.ts.map +1 -1
  161. package/dist/types/src/meta.d.ts +0 -1
  162. package/dist/types/src/meta.d.ts.map +1 -1
  163. package/dist/types/src/testing.d.ts +6 -0
  164. package/dist/types/src/testing.d.ts.map +1 -0
  165. package/dist/types/src/toolkit.d.ts +3 -0
  166. package/dist/types/src/toolkit.d.ts.map +1 -0
  167. package/dist/types/src/translations.d.ts +7 -2
  168. package/dist/types/src/translations.d.ts.map +1 -1
  169. package/dist/types/src/types/Markdown.d.ts +45 -0
  170. package/dist/types/src/types/Markdown.d.ts.map +1 -0
  171. package/dist/types/src/types/MarkdownAction.d.ts +34 -0
  172. package/dist/types/src/types/MarkdownAction.d.ts.map +1 -0
  173. package/dist/types/src/types/index.d.ts +2 -1
  174. package/dist/types/src/types/index.d.ts.map +1 -1
  175. package/dist/types/src/types/types.d.ts +3 -59
  176. package/dist/types/src/types/types.d.ts.map +1 -1
  177. package/dist/types/src/util.d.ts +17 -5
  178. package/dist/types/src/util.d.ts.map +1 -1
  179. package/dist/types/src/util.test.d.ts +2 -0
  180. package/dist/types/src/util.test.d.ts.map +1 -0
  181. package/dist/types/tsconfig.tsbuildinfo +1 -1
  182. package/package.json +74 -53
  183. package/src/MarkdownPlugin.tsx +91 -100
  184. package/src/capabilities/anchor-sort.ts +8 -7
  185. package/src/capabilities/app-graph-serializer.ts +12 -10
  186. package/src/capabilities/artifact-definition.ts +23 -27
  187. package/src/capabilities/blueprint-definition.ts +43 -0
  188. package/src/capabilities/capabilities.ts +6 -4
  189. package/src/capabilities/index.ts +3 -2
  190. package/src/capabilities/intent-resolver.ts +16 -21
  191. package/src/capabilities/react-surface.tsx +62 -78
  192. package/src/capabilities/settings.ts +3 -3
  193. package/src/capabilities/state.ts +8 -8
  194. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +76 -0
  195. package/src/components/MarkdownCard/MarkdownCard.tsx +96 -0
  196. package/src/components/MarkdownCard/index.ts +9 -0
  197. package/src/components/MarkdownContainer.stories.tsx +81 -48
  198. package/src/components/MarkdownContainer.tsx +98 -244
  199. package/src/components/MarkdownEditor/FileUpload.tsx +63 -0
  200. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +57 -34
  201. package/src/components/MarkdownEditor/MarkdownEditor.tsx +221 -272
  202. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +152 -0
  203. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +63 -0
  204. package/src/components/MarkdownSettings/MarkdownSettings.tsx +81 -78
  205. package/src/components/Suggestions.stories.tsx +62 -57
  206. package/src/components/index.ts +10 -3
  207. package/src/events.ts +2 -2
  208. package/src/functions/create.conversations.json +1 -0
  209. package/src/functions/create.test.ts +124 -0
  210. package/src/functions/create.ts +34 -0
  211. package/src/functions/index.ts +13 -0
  212. package/src/functions/open.ts +33 -0
  213. package/src/functions/update.conversations.json +1 -0
  214. package/src/functions/update.test.ts +147 -0
  215. package/src/functions/update.ts +38 -0
  216. package/src/hooks/index.ts +3 -0
  217. package/src/hooks/useEditorMenuOptions.ts +71 -0
  218. package/src/{extensions.tsx → hooks/useExtensions.tsx} +66 -115
  219. package/src/hooks/useLinkQuery.ts +83 -0
  220. package/src/hooks/useSelectCurrentThread.tsx +17 -7
  221. package/src/index.ts +4 -1
  222. package/src/meta.ts +7 -8
  223. package/src/testing.ts +27 -0
  224. package/src/toolkit.ts +6 -0
  225. package/src/translations.ts +7 -2
  226. package/src/types/Markdown.ts +57 -0
  227. package/src/types/MarkdownAction.ts +29 -0
  228. package/src/types/index.ts +3 -1
  229. package/src/types/types.ts +6 -50
  230. package/src/util.test.ts +44 -0
  231. package/src/util.tsx +97 -10
  232. package/dist/lib/browser/MarkdownContainer-F3WEEIBX.mjs +0 -778
  233. package/dist/lib/browser/MarkdownContainer-F3WEEIBX.mjs.map +0 -7
  234. package/dist/lib/browser/MarkdownPreview-S3C7CGAV.mjs +0 -80
  235. package/dist/lib/browser/MarkdownPreview-S3C7CGAV.mjs.map +0 -7
  236. package/dist/lib/browser/anchor-sort-UKJJ7ZNP.mjs.map +0 -7
  237. package/dist/lib/browser/app-graph-serializer-ICLAF662.mjs.map +0 -7
  238. package/dist/lib/browser/artifact-definition-R2YYWOPN.mjs +0 -145
  239. package/dist/lib/browser/artifact-definition-R2YYWOPN.mjs.map +0 -7
  240. package/dist/lib/browser/chunk-777RIED6.mjs +0 -16
  241. package/dist/lib/browser/chunk-777RIED6.mjs.map +0 -7
  242. package/dist/lib/browser/chunk-EPTSAJZM.mjs +0 -22
  243. package/dist/lib/browser/chunk-EPTSAJZM.mjs.map +0 -7
  244. package/dist/lib/browser/chunk-LFML7LC6.mjs +0 -51
  245. package/dist/lib/browser/chunk-LFML7LC6.mjs.map +0 -7
  246. package/dist/lib/browser/chunk-LHDCHDBW.mjs.map +0 -7
  247. package/dist/lib/browser/chunk-PHTD5DTR.mjs +0 -20
  248. package/dist/lib/browser/chunk-PHTD5DTR.mjs.map +0 -7
  249. package/dist/lib/browser/chunk-UANWRJZU.mjs +0 -79
  250. package/dist/lib/browser/chunk-UANWRJZU.mjs.map +0 -7
  251. package/dist/lib/browser/intent-resolver-3MXYO3MW.mjs +0 -64
  252. package/dist/lib/browser/intent-resolver-3MXYO3MW.mjs.map +0 -7
  253. package/dist/lib/browser/react-surface-C3Z423TV.mjs +0 -206
  254. package/dist/lib/browser/react-surface-C3Z423TV.mjs.map +0 -7
  255. package/dist/lib/browser/settings-KN75ZQY6.mjs.map +0 -7
  256. package/dist/lib/browser/state-LZWTAS65.mjs.map +0 -7
  257. package/dist/lib/node-esm/MarkdownContainer-VOUHL6IU.mjs +0 -779
  258. package/dist/lib/node-esm/MarkdownContainer-VOUHL6IU.mjs.map +0 -7
  259. package/dist/lib/node-esm/MarkdownPreview-77UFEWXT.mjs +0 -81
  260. package/dist/lib/node-esm/MarkdownPreview-77UFEWXT.mjs.map +0 -7
  261. package/dist/lib/node-esm/anchor-sort-IPIS5D5B.mjs.map +0 -7
  262. package/dist/lib/node-esm/app-graph-serializer-FLBXQKKR.mjs.map +0 -7
  263. package/dist/lib/node-esm/artifact-definition-MLTAY4LK.mjs +0 -146
  264. package/dist/lib/node-esm/artifact-definition-MLTAY4LK.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-7X6TPTJK.mjs +0 -22
  266. package/dist/lib/node-esm/chunk-7X6TPTJK.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-ACFGXH2K.mjs.map +0 -7
  268. package/dist/lib/node-esm/chunk-CWTFQSN7.mjs +0 -52
  269. package/dist/lib/node-esm/chunk-CWTFQSN7.mjs.map +0 -7
  270. package/dist/lib/node-esm/chunk-CXG7GMYP.mjs +0 -24
  271. package/dist/lib/node-esm/chunk-CXG7GMYP.mjs.map +0 -7
  272. package/dist/lib/node-esm/chunk-JEEQLO7C.mjs +0 -80
  273. package/dist/lib/node-esm/chunk-JEEQLO7C.mjs.map +0 -7
  274. package/dist/lib/node-esm/chunk-VIR2ABYE.mjs.map +0 -7
  275. package/dist/lib/node-esm/intent-resolver-BZYWV53A.mjs +0 -65
  276. package/dist/lib/node-esm/intent-resolver-BZYWV53A.mjs.map +0 -7
  277. package/dist/lib/node-esm/react-surface-TTTBYNI2.mjs +0 -207
  278. package/dist/lib/node-esm/react-surface-TTTBYNI2.mjs.map +0 -7
  279. package/dist/lib/node-esm/settings-KVP7TVX7.mjs.map +0 -7
  280. package/dist/lib/node-esm/state-NW3W4JCQ.mjs.map +0 -7
  281. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +0 -6
  282. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +0 -1
  283. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +0 -42
  284. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +0 -1
  285. package/dist/types/src/components/MarkdownPreview/index.d.ts +0 -4
  286. package/dist/types/src/components/MarkdownPreview/index.d.ts.map +0 -1
  287. package/dist/types/src/components/Toolbar.stories.d.ts +0 -11
  288. package/dist/types/src/components/Toolbar.stories.d.ts.map +0 -1
  289. package/dist/types/src/extensions.d.ts +0 -24
  290. package/dist/types/src/extensions.d.ts.map +0 -1
  291. package/dist/types/src/types/schema.d.ts +0 -35
  292. package/dist/types/src/types/schema.d.ts.map +0 -1
  293. package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +0 -81
  294. package/src/components/MarkdownPreview/MarkdownPreview.tsx +0 -73
  295. package/src/components/MarkdownPreview/index.ts +0 -9
  296. package/src/components/Toolbar.stories.tsx +0 -113
  297. package/src/types/schema.ts +0 -39
@@ -0,0 +1,80 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ __export,
4
+ meta
5
+ } from "./chunk-SHAMSMKQ.mjs";
6
+
7
+ // src/types/MarkdownAction.ts
8
+ var MarkdownAction_exports = {};
9
+ __export(MarkdownAction_exports, {
10
+ Create: () => Create,
11
+ SetViewMode: () => SetViewMode
12
+ });
13
+ import * as Schema2 from "effect/Schema";
14
+ import { EditorViewMode as EditorViewMode2 } from "@dxos/react-ui-editor/types";
15
+
16
+ // src/types/Markdown.ts
17
+ var Markdown_exports = {};
18
+ __export(Markdown_exports, {
19
+ Document: () => Document,
20
+ Settings: () => Settings,
21
+ make: () => make
22
+ });
23
+ import * as Schema from "effect/Schema";
24
+ import { Obj, Ref, Type } from "@dxos/echo";
25
+ import { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from "@dxos/echo/internal";
26
+ import { EditorInputMode, EditorViewMode } from "@dxos/react-ui-editor/types";
27
+ import { Text } from "@dxos/schema";
28
+ var Document = Schema.Struct({
29
+ name: Schema.optional(Schema.String),
30
+ description: Schema.optional(Schema.String),
31
+ fallbackName: Schema.String.pipe(FormInputAnnotation.set(false), Schema.optional),
32
+ content: Type.Ref(Text.Text).pipe(FormInputAnnotation.set(false))
33
+ }).pipe(Type.Obj({
34
+ typename: "dxos.org/type/Document",
35
+ version: "0.1.0"
36
+ }), LabelAnnotation.set([
37
+ "name",
38
+ "fallbackName"
39
+ ]), DescriptionAnnotation.set("description"));
40
+ var make = ({ content = "", ...props } = {}) => Obj.make(Document, {
41
+ ...props,
42
+ content: Ref.make(Text.make(content))
43
+ });
44
+ var Settings = Schema.mutable(Schema.Struct({
45
+ defaultViewMode: EditorViewMode,
46
+ editorInputMode: Schema.optional(EditorInputMode),
47
+ experimental: Schema.optional(Schema.Boolean),
48
+ debug: Schema.optional(Schema.Boolean),
49
+ toolbar: Schema.optional(Schema.Boolean),
50
+ typewriter: Schema.optional(Schema.String),
51
+ // TODO(burdon): Per document settings.
52
+ numberedHeadings: Schema.optional(Schema.Boolean),
53
+ folding: Schema.optional(Schema.Boolean)
54
+ }));
55
+
56
+ // src/types/MarkdownAction.ts
57
+ var Create = class extends Schema2.TaggedClass()(`${meta.id}/action/create`, {
58
+ input: Schema2.Struct({
59
+ name: Schema2.optional(Schema2.String),
60
+ content: Schema2.optional(Schema2.String)
61
+ }),
62
+ output: Schema2.Struct({
63
+ object: Document
64
+ })
65
+ }) {
66
+ };
67
+ var SetViewMode = class extends Schema2.TaggedClass()(`${meta.id}/action/set-view-mode`, {
68
+ input: Schema2.Struct({
69
+ id: Schema2.String,
70
+ viewMode: EditorViewMode2
71
+ }),
72
+ output: Schema2.Void
73
+ }) {
74
+ };
75
+
76
+ export {
77
+ Markdown_exports,
78
+ MarkdownAction_exports
79
+ };
80
+ //# sourceMappingURL=chunk-YFRTKXTB.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/MarkdownAction.ts", "../../../src/types/Markdown.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { EditorViewMode } from '@dxos/react-ui-editor/types';\n\nimport { meta } from '../meta';\n\nimport { Document } from './Markdown';\n\nexport class Create extends Schema.TaggedClass<Create>()(`${meta.id}/action/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n content: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Document,\n }),\n}) {}\n\nexport class SetViewMode extends Schema.TaggedClass<SetViewMode>()(`${meta.id}/action/set-view-mode`, {\n input: Schema.Struct({\n id: Schema.String,\n viewMode: EditorViewMode,\n }),\n output: Schema.Void,\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { EditorInputMode, EditorViewMode } from '@dxos/react-ui-editor/types';\nimport { Text } from '@dxos/schema';\n\n/**\n * Document Item type.\n */\nexport const Document = Schema.Struct({\n name: Schema.optional(Schema.String),\n description: Schema.optional(Schema.String),\n fallbackName: Schema.String.pipe(FormInputAnnotation.set(false), Schema.optional),\n content: Type.Ref(Text.Text).pipe(FormInputAnnotation.set(false)),\n}).pipe(\n Type.Obj({\n typename: 'dxos.org/type/Document',\n version: '0.1.0',\n }),\n LabelAnnotation.set(['name', 'fallbackName']),\n DescriptionAnnotation.set('description'),\n);\n\nexport type Document = Schema.Schema.Type<typeof Document>;\n\n/**\n * Document factory.\n */\nexport const make = ({\n content = '',\n ...props\n}: Partial<{ name: string; fallbackName: string; content: string }> = {}) =>\n Obj.make(Document, { ...props, content: Ref.make(Text.make(content)) });\n\n/**\n * Plugin settings.\n */\nexport const Settings = Schema.mutable(\n Schema.Struct({\n defaultViewMode: EditorViewMode,\n editorInputMode: Schema.optional(EditorInputMode),\n experimental: Schema.optional(Schema.Boolean),\n debug: Schema.optional(Schema.Boolean),\n toolbar: Schema.optional(Schema.Boolean),\n typewriter: Schema.optional(Schema.String),\n // TODO(burdon): Per document settings.\n numberedHeadings: Schema.optional(Schema.Boolean),\n folding: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport interface Settings extends Schema.Schema.Type<typeof Settings> {}\n"],
5
+ "mappings": ";;;;;;;AAAA;;;;;AAIA,YAAYA,aAAY;AAExB,SAASC,kBAAAA,uBAAsB;;;ACN/B;;;;;;AAIA,YAAYC,YAAY;AAExB,SAASC,KAAKC,KAAKC,YAAY;AAC/B,SAASC,uBAAuBC,qBAAqBC,uBAAuB;AAC5E,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,YAAY;AAKd,IAAMC,WAAkBC,cAAO;EACpCC,MAAaC,gBAAgBC,aAAM;EACnCC,aAAoBF,gBAAgBC,aAAM;EAC1CE,cAAqBF,cAAOG,KAAKC,oBAAoBC,IAAI,KAAA,GAAeN,eAAQ;EAChFO,SAASC,KAAKC,IAAIC,KAAKA,IAAI,EAAEN,KAAKC,oBAAoBC,IAAI,KAAA,CAAA;AAC5D,CAAA,EAAGF,KACDI,KAAKG,IAAI;EACPC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBR,IAAI;EAAC;EAAQ;CAAe,GAC5CS,sBAAsBT,IAAI,aAAA,CAAA;AAQrB,IAAMU,OAAO,CAAC,EACnBT,UAAU,IACV,GAAGU,MAAAA,IACiE,CAAC,MACrEN,IAAIK,KAAKnB,UAAU;EAAE,GAAGoB;EAAOV,SAASE,IAAIO,KAAKN,KAAKM,KAAKT,OAAAA,CAAAA;AAAU,CAAA;AAKhE,IAAMW,WAAkBC,eACtBrB,cAAO;EACZsB,iBAAiBC;EACjBC,iBAAwBtB,gBAASuB,eAAAA;EACjCC,cAAqBxB,gBAAgByB,cAAO;EAC5CC,OAAc1B,gBAAgByB,cAAO;EACrCE,SAAgB3B,gBAAgByB,cAAO;EACvCG,YAAmB5B,gBAAgBC,aAAM;;EAEzC4B,kBAAyB7B,gBAAgByB,cAAO;EAChDK,SAAgB9B,gBAAgByB,cAAO;AACzC,CAAA,CAAA;;;ADzCK,IAAMM,SAAN,cAA4BC,oBAAW,EAAW,GAAGC,KAAKC,EAAE,kBAAkB;EACnFC,OAAcC,eAAO;IACnBC,MAAaC,iBAAgBC,cAAM;IACnCC,SAAgBF,iBAAgBC,cAAM;EACxC,CAAA;EACAE,QAAeL,eAAO;IACpBM,QAAQC;EACV,CAAA;AACF,CAAA,EAAA;AAAI;AAEG,IAAMC,cAAN,cAAiCZ,oBAAW,EAAgB,GAAGC,KAAKC,EAAE,yBAAyB;EACpGC,OAAcC,eAAO;IACnBF,IAAWK;IACXM,UAAUC;EACZ,CAAA;EACAL,QAAeM;AACjB,CAAA,EAAA;AAAI;",
6
+ "names": ["Schema", "EditorViewMode", "Schema", "Obj", "Ref", "Type", "DescriptionAnnotation", "FormInputAnnotation", "LabelAnnotation", "EditorInputMode", "EditorViewMode", "Text", "Document", "Struct", "name", "optional", "String", "description", "fallbackName", "pipe", "FormInputAnnotation", "set", "content", "Type", "Ref", "Text", "Obj", "typename", "version", "LabelAnnotation", "DescriptionAnnotation", "make", "props", "Settings", "mutable", "defaultViewMode", "EditorViewMode", "editorInputMode", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "numberedHeadings", "folding", "Create", "TaggedClass", "meta", "id", "input", "Struct", "name", "optional", "String", "content", "output", "object", "Document", "SetViewMode", "viewMode", "EditorViewMode", "Void"]
7
+ }
@@ -1,52 +1,53 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- translations
4
- } from "./chunk-VIR2ABYE.mjs";
5
2
  import {
6
3
  AnchorSort,
7
4
  AppGraphSerializer,
8
- ArtifactDefinition,
5
+ BlueprintDefinition,
9
6
  IntentResolver,
10
7
  MarkdownSettings,
11
8
  MarkdownState,
12
9
  ReactSurface
13
- } from "./chunk-7X6TPTJK.mjs";
10
+ } from "./chunk-KM7KYV6W.mjs";
11
+ import {
12
+ MARKDOWN_BLUEPRINT_KEY
13
+ } from "./chunk-C5KXP2ZE.mjs";
14
+ import {
15
+ translations
16
+ } from "./chunk-I5JSQBPI.mjs";
14
17
  import {
15
18
  MarkdownCapabilities
16
- } from "./chunk-ACFGXH2K.mjs";
19
+ } from "./chunk-GMMVSXQ6.mjs";
17
20
  import {
18
- getAbstract,
21
+ getContentSnippet,
19
22
  getFallbackName,
23
+ isEditorModel,
20
24
  isMarkdownProperties,
21
25
  serializer,
22
26
  setFallbackName
23
- } from "./chunk-CWTFQSN7.mjs";
27
+ } from "./chunk-6F6FCTIA.mjs";
24
28
  import {
25
- DocumentType,
26
- MarkdownAction
27
- } from "./chunk-JEEQLO7C.mjs";
29
+ MarkdownAction_exports,
30
+ Markdown_exports
31
+ } from "./chunk-YFRTKXTB.mjs";
28
32
  import {
29
- MARKDOWN_PLUGIN,
30
33
  meta
31
- } from "./chunk-CXG7GMYP.mjs";
34
+ } from "./chunk-SHAMSMKQ.mjs";
32
35
 
33
36
  // src/events.ts
34
37
  import { Events } from "@dxos/app-framework";
35
38
  (function(MarkdownEvents2) {
36
- MarkdownEvents2.SetupExtensions = Events.createStateEvent(`${MARKDOWN_PLUGIN}/setup-extensions`);
39
+ MarkdownEvents2.SetupExtensions = Events.createStateEvent(`${meta.id}/event/setup-extensions`);
37
40
  })(MarkdownEvents || (MarkdownEvents = {}));
38
41
  var MarkdownEvents;
39
42
 
40
43
  // src/MarkdownPlugin.tsx
41
- import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events as Events2 } from "@dxos/app-framework";
44
+ import { Capabilities, Events as Events2, contributes, createIntent, defineModule, definePlugin } from "@dxos/app-framework";
42
45
  import { Ref } from "@dxos/echo";
46
+ import { createDocAccessor, getTextInRange } from "@dxos/echo-db";
43
47
  import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
44
- import { SpaceCapabilities } from "@dxos/plugin-space";
45
- import { defineObjectForm } from "@dxos/plugin-space/types";
46
- import { createDocAccessor, getTextInRange } from "@dxos/react-client/echo";
47
48
  import { translations as editorTranslations } from "@dxos/react-ui-editor";
48
- import { DataType } from "@dxos/schema";
49
- var MarkdownPlugin = () => definePlugin(meta, [
49
+ import { Text } from "@dxos/schema";
50
+ var MarkdownPlugin = definePlugin(meta, () => [
50
51
  defineModule({
51
52
  id: `${meta.id}/module/translations`,
52
53
  activatesOn: Events2.SetupTranslations,
@@ -72,10 +73,14 @@ var MarkdownPlugin = () => definePlugin(meta, [
72
73
  id: `${meta.id}/module/metadata`,
73
74
  activatesOn: Events2.SetupMetadata,
74
75
  activate: () => contributes(Capabilities.Metadata, {
75
- id: DocumentType.typename,
76
+ id: Markdown_exports.Document.typename,
76
77
  metadata: {
77
78
  label: (object) => object.name || object.fallbackName,
78
79
  icon: "ph--text-aa--regular",
80
+ iconHue: "indigo",
81
+ blueprints: [
82
+ MARKDOWN_BLUEPRINT_KEY
83
+ ],
79
84
  graphProps: {
80
85
  managesAutofocus: true
81
86
  },
@@ -94,25 +99,18 @@ var MarkdownPlugin = () => definePlugin(meta, [
94
99
  "content"
95
100
  ]), start, end);
96
101
  }
97
- }
102
+ },
103
+ createObjectIntent: () => createIntent(MarkdownAction_exports.Create),
104
+ addToCollectionOnCreate: true
98
105
  }
99
106
  })
100
107
  }),
101
- defineModule({
102
- id: `${meta.id}/module/object-form`,
103
- activatesOn: ClientEvents.SetupSchema,
104
- activate: () => contributes(SpaceCapabilities.ObjectForm, defineObjectForm({
105
- objectSchema: DocumentType,
106
- getIntent: (_, { space }) => createIntent(MarkdownAction.Create, {
107
- spaceId: space.id
108
- })
109
- }))
110
- }),
111
108
  defineModule({
112
109
  id: `${meta.id}/module/schema`,
113
110
  activatesOn: ClientEvents.SetupSchema,
114
111
  activate: () => contributes(ClientCapabilities.Schema, [
115
- DataType.Text
112
+ Markdown_exports.Document,
113
+ Text.Text
116
114
  ])
117
115
  }),
118
116
  defineModule({
@@ -141,18 +139,20 @@ var MarkdownPlugin = () => definePlugin(meta, [
141
139
  activate: AnchorSort
142
140
  }),
143
141
  defineModule({
144
- id: `${meta.id}/module/artifact-definition`,
142
+ id: `${meta.id}/module/blueprint`,
145
143
  activatesOn: Events2.SetupArtifactDefinition,
146
- activate: ArtifactDefinition
144
+ activate: BlueprintDefinition
147
145
  })
148
146
  ]);
149
147
  export {
150
- MARKDOWN_PLUGIN,
148
+ Markdown_exports as Markdown,
149
+ MarkdownAction_exports as MarkdownAction,
151
150
  MarkdownCapabilities,
152
151
  MarkdownEvents,
153
152
  MarkdownPlugin,
154
- getAbstract,
153
+ getContentSnippet,
155
154
  getFallbackName,
155
+ isEditorModel,
156
156
  isMarkdownProperties,
157
157
  meta,
158
158
  serializer,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/events.ts", "../../../src/MarkdownPlugin.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { MARKDOWN_PLUGIN } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${MARKDOWN_PLUGIN}/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { type Obj, Ref } from '@dxos/echo';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { createDocAccessor, getTextInRange } from '@dxos/react-client/echo';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { DataType } from '@dxos/schema';\n\nimport {\n AnchorSort,\n AppGraphSerializer,\n ArtifactDefinition,\n IntentResolver,\n MarkdownState,\n MarkdownSettings,\n ReactSurface,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { DocumentType, MarkdownAction } from './types';\nimport { serializer } from './util';\n\nexport const MarkdownPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...editorTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: MarkdownSettings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: MarkdownState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: DocumentType.typename,\n metadata: {\n label: (object: DocumentType) => object.name || object.fallbackName,\n icon: 'ph--text-aa--regular',\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: DocumentType) => await Ref.Array.loadAll<Obj.Any>([doc.content]),\n serializer,\n // TODO(wittjosiah): Consider how to do generic comments without these.\n comments: 'anchored',\n selectionMode: 'multi-range',\n getAnchorLabel: (doc: DocumentType, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n },\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: DocumentType,\n getIntent: (_, { space }) => createIntent(MarkdownAction.Create, { spaceId: space.id }),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [DataType.Text]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the editor is loaded when surfaces activation is more granular.\n activatesBefore: [MarkdownEvents.SetupExtensions],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/anchor-sort`,\n // TODO(wittjosiah): More relevant event?\n activatesOn: Events.AppGraphReady,\n activate: AnchorSort,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;UAINC,iBAAAA;kBACFC,kBAAkBC,OAAOC,iBAAiB,GAAGC,eAAAA,mBAAkC;AAC9F,GAFiBJ,mBAAAA,iBAAAA,CAAAA,EAAAA;;;;ACJjB,SAASK,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,UAAAA,eAAc;AAC5F,SAAmBC,WAAW;AAC9B,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,yBAAyB;AAClC,SAASC,wBAAwB;AACjC,SAASC,mBAAmBC,sBAAsB;AAClD,SAASC,gBAAgBC,0BAA0B;AACnD,SAASC,gBAAgB;AAiBlB,IAAMC,iBAAiB,MAC5BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOQ;IACpBN,UAAUO;EACZ,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;;;IAIdC,aAAaC,QAAOQ;IACpBN,UAAUQ;EACZ,CAAA;EACAb,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOW;IACpBT,UAAU,MACRC,YAAYC,aAAaQ,UAAU;MACjCd,IAAIe,aAAaC;MACjBC,UAAU;QACRC,OAAO,CAACC,WAAyBA,OAAOC,QAAQD,OAAOE;QACvDC,MAAM;QACNC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QAAsB,MAAMC,IAAIC,MAAMC,QAAiB;UAACH,IAAII;SAAQ;QAC3FC;;QAEAC,UAAU;QACVC,eAAe;QACfC,gBAAgB,CAACR,KAAmBS,WAAAA;AAClC,cAAIT,IAAII,SAAS;AACf,kBAAM,CAACM,OAAOC,GAAAA,IAAOF,OAAOG,MAAM,GAAA;AAClC,mBAAOC,eAAeC,kBAAkBd,IAAII,QAAQW,QAAS;cAAC;aAAU,GAAGL,OAAOC,GAAAA;UACpF;QACF;MACF;IACF,CAAA;EACJ,CAAA;EACAtC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAayC,aAAaC;IAC1BvC,UAAU,MACRC,YACEuC,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAchC;MACdiC,WAAW,CAACC,GAAG,EAAEC,MAAK,MAAOC,aAAaC,eAAeC,QAAQ;QAAEC,SAASJ,MAAMlD;MAAG,CAAA;IACvF,CAAA,CAAA;EAEN,CAAA;EACAD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAayC,aAAaC;IAC1BvC,UAAU,MAAMC,YAAYkD,mBAAmBC,QAAQ;MAACC,SAASC;KAAK;EACxE,CAAA;EACA3D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOyD;;IAEpBC,iBAAiB;MAACC,eAAeC;;IACjC1D,UAAU2D;EACZ,CAAA;EACAhE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAO8D;IACpB5D,UAAU6D;EACZ,CAAA;EACAlE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOgE;IACpB9D,UAAU+D;EACZ,CAAA;EACApE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;IAEdC,aAAaC,QAAOgE;IACpB9D,UAAUgE;EACZ,CAAA;EACArE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOmE;IACpBjE,UAAUkE;EACZ,CAAA;CACD;",
6
- "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "MARKDOWN_PLUGIN", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "Ref", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "defineObjectForm", "createDocAccessor", "getTextInRange", "translations", "editorTranslations", "DataType", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "DocumentType", "typename", "metadata", "label", "object", "name", "fallbackName", "icon", "graphProps", "managesAutofocus", "loadReferences", "doc", "Ref", "Array", "loadAll", "content", "serializer", "comments", "selectionMode", "getAnchorLabel", "anchor", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "space", "createIntent", "MarkdownAction", "Create", "spaceId", "ClientCapabilities", "Schema", "DataType", "Text", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "AnchorSort", "SetupArtifactDefinition", "ArtifactDefinition"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions = Events.createStateEvent(`${meta.id}/event/setup-extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, createIntent, defineModule, definePlugin } from '@dxos/app-framework';\nimport { type Obj, Ref } from '@dxos/echo';\nimport { createDocAccessor, getTextInRange } from '@dxos/echo-db';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { type CreateObjectIntent } from '@dxos/plugin-space/types';\nimport { translations as editorTranslations } from '@dxos/react-ui-editor';\nimport { Text } from '@dxos/schema';\n\nimport {\n AnchorSort,\n AppGraphSerializer,\n BlueprintDefinition,\n IntentResolver,\n MARKDOWN_BLUEPRINT_KEY,\n MarkdownSettings,\n MarkdownState,\n ReactSurface,\n} from './capabilities';\nimport { MarkdownEvents } from './events';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { Markdown, MarkdownAction } from './types';\nimport { serializer } from './util';\n\nexport const MarkdownPlugin = definePlugin(meta, () => [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...editorTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: MarkdownSettings,\n }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: MarkdownState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: Markdown.Document.typename,\n metadata: {\n label: (object: Markdown.Document) => object.name || object.fallbackName,\n icon: 'ph--text-aa--regular',\n iconHue: 'indigo',\n blueprints: [MARKDOWN_BLUEPRINT_KEY],\n graphProps: {\n managesAutofocus: true,\n },\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (doc: Markdown.Document) => await Ref.Array.loadAll<Obj.Any>([doc.content]),\n serializer,\n // TODO(wittjosiah): Consider how to do generic comments without these.\n comments: 'anchored',\n selectionMode: 'multi-range',\n getAnchorLabel: (doc: Markdown.Document, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n },\n createObjectIntent: (() => createIntent(MarkdownAction.Create)) satisfies CreateObjectIntent,\n addToCollectionOnCreate: true,\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [Markdown.Document, Text.Text]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the editor is loaded when surfaces activation is more granular.\n activatesBefore: [MarkdownEvents.SetupExtensions],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/anchor-sort`,\n // TODO(wittjosiah): More relevant event?\n activatesOn: Events.AppGraphReady,\n activate: AnchorSort,\n }),\n defineModule({\n id: `${meta.id}/module/blueprint`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: BlueprintDefinition,\n }),\n]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAASA,cAAc;UAINC,iBAAAA;kBACFC,kBAAkBC,OAAOC,iBAAiB,GAAGC,KAAKC,EAAE,yBAAyB;AAC5F,GAFiBL,mBAAAA,iBAAAA,CAAAA,EAAAA;;;;ACJjB,SAASM,cAAcC,UAAAA,SAAQC,aAAaC,cAAcC,cAAcC,oBAAoB;AAC5F,SAAmBC,WAAW;AAC9B,SAASC,mBAAmBC,sBAAsB;AAClD,SAASC,oBAAoBC,oBAAoB;AAEjD,SAASC,gBAAgBC,0BAA0B;AACnD,SAASC,YAAY;AAkBd,IAAMC,iBAAiBC,aAAaC,MAAM,MAAM;EACrDC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOQ;IACpBN,UAAUO;EACZ,CAAA;EACAZ,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;;;IAIdC,aAAaC,QAAOQ;IACpBN,UAAUQ;EACZ,CAAA;EACAb,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOW;IACpBT,UAAU,MACRC,YAAYC,aAAaQ,UAAU;MACjCd,IAAIe,iBAASC,SAASC;MACtBC,UAAU;QACRC,OAAO,CAACC,WAA8BA,OAAOC,QAAQD,OAAOE;QAC5DC,MAAM;QACNC,SAAS;QACTC,YAAY;UAACC;;QACbC,YAAY;UACVC,kBAAkB;QACpB;;QAEAC,gBAAgB,OAAOC,QAA2B,MAAMC,IAAIC,MAAMC,QAAiB;UAACH,IAAII;SAAQ;QAChGC;;QAEAC,UAAU;QACVC,eAAe;QACfC,gBAAgB,CAACR,KAAwBS,WAAAA;AACvC,cAAIT,IAAII,SAAS;AACf,kBAAM,CAACM,OAAOC,GAAAA,IAAOF,OAAOG,MAAM,GAAA;AAClC,mBAAOC,eAAeC,kBAAkBd,IAAII,QAAQW,QAAS;cAAC;aAAU,GAAGL,OAAOC,GAAAA;UACpF;QACF;QACAK,oBAAqB,MAAMC,aAAaC,uBAAeC,MAAM;QAC7DC,yBAAyB;MAC3B;IACF,CAAA;EACJ,CAAA;EACAnD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAakD,aAAaC;IAC1BhD,UAAU,MAAMC,YAAYgD,mBAAmBC,QAAQ;MAACvC,iBAASC;MAAUuC,KAAKA;KAAK;EACvF,CAAA;EACAxD,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOsD;;IAEpBC,iBAAiB;MAACC,eAAeC;;IACjCvD,UAAUwD;EACZ,CAAA;EACA7D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAO2D;IACpBzD,UAAU0D;EACZ,CAAA;EACA/D,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAO6D;IACpB3D,UAAU4D;EACZ,CAAA;EACAjE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;;IAEdC,aAAaC,QAAO6D;IACpB3D,UAAU6D;EACZ,CAAA;EACAlE,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,QAAOgE;IACpB9D,UAAU+D;EACZ,CAAA;CACD;",
6
+ "names": ["Events", "MarkdownEvents", "SetupExtensions", "Events", "createStateEvent", "meta", "id", "Capabilities", "Events", "contributes", "createIntent", "defineModule", "definePlugin", "Ref", "createDocAccessor", "getTextInRange", "ClientCapabilities", "ClientEvents", "translations", "editorTranslations", "Text", "MarkdownPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "editorTranslations", "SetupSettings", "MarkdownSettings", "MarkdownState", "SetupMetadata", "Metadata", "Markdown", "Document", "typename", "metadata", "label", "object", "name", "fallbackName", "icon", "iconHue", "blueprints", "MARKDOWN_BLUEPRINT_KEY", "graphProps", "managesAutofocus", "loadReferences", "doc", "Ref", "Array", "loadAll", "content", "serializer", "comments", "selectionMode", "getAnchorLabel", "anchor", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "createObjectIntent", "createIntent", "MarkdownAction", "Create", "addToCollectionOnCreate", "ClientEvents", "SetupSchema", "ClientCapabilities", "Schema", "Text", "SetupReactSurface", "activatesBefore", "MarkdownEvents", "SetupExtensions", "ReactSurface", "SetupIntentResolver", "IntentResolver", "AppGraphReady", "AppGraphSerializer", "AnchorSort", "SetupArtifactDefinition", "BlueprintDefinition"]
7
7
  }
@@ -0,0 +1,63 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ MarkdownCapabilities
4
+ } from "./chunk-GMMVSXQ6.mjs";
5
+ import {
6
+ MarkdownAction_exports,
7
+ Markdown_exports
8
+ } from "./chunk-YFRTKXTB.mjs";
9
+ import "./chunk-SHAMSMKQ.mjs";
10
+
11
+ // src/capabilities/intent-resolver.ts
12
+ import { next as A } from "@automerge/automerge";
13
+ import * as Option from "effect/Option";
14
+ import { Capabilities, CollaborationActions, contributes, createResolver } from "@dxos/app-framework";
15
+ import { Obj } from "@dxos/echo";
16
+ import { createDocAccessor, getRangeFromCursor } from "@dxos/echo-db";
17
+ var intent_resolver_default = ((context) => contributes(Capabilities.IntentResolver, [
18
+ createResolver({
19
+ intent: MarkdownAction_exports.Create,
20
+ resolve: ({ name, content }) => {
21
+ return {
22
+ data: {
23
+ object: Markdown_exports.make({
24
+ name,
25
+ content
26
+ })
27
+ }
28
+ };
29
+ }
30
+ }),
31
+ createResolver({
32
+ intent: MarkdownAction_exports.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: (data) => Obj.instanceOf(Markdown_exports.Document, data.subject),
41
+ resolve: async ({ subject, anchor, proposal }) => {
42
+ const text = await subject.content.load();
43
+ const accessor = createDocAccessor(text, [
44
+ "content"
45
+ ]);
46
+ const { start, end } = Option.fromNullable(anchor).pipe(
47
+ Option.flatMap((at) => Option.fromNullable(getRangeFromCursor(accessor, at))),
48
+ // Fallback to the end of the document.
49
+ Option.getOrElse(() => ({
50
+ start: text.content.length - 1,
51
+ end: text.content.length - 1
52
+ }))
53
+ );
54
+ accessor.handle.change((doc) => {
55
+ A.splice(doc, accessor.path.slice(), start, end - start, proposal.text);
56
+ });
57
+ }
58
+ })
59
+ ]));
60
+ export {
61
+ intent_resolver_default as default
62
+ };
63
+ //# sourceMappingURL=intent-resolver-DTBVWCNO.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { next as A } from '@automerge/automerge';\nimport * as Option from 'effect/Option';\nimport type * as Schema from 'effect/Schema';\n\nimport {\n Capabilities,\n CollaborationActions,\n type PluginContext,\n contributes,\n createResolver,\n} from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { createDocAccessor, getRangeFromCursor } from '@dxos/echo-db';\n\nimport { Markdown, MarkdownAction } from '../types';\n\nimport { MarkdownCapabilities } from './capabilities';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: MarkdownAction.Create,\n resolve: ({ name, content }) => {\n return { data: { object: Markdown.make({ name, content }) } };\n },\n }),\n createResolver({\n intent: MarkdownAction.SetViewMode,\n resolve: ({ id, viewMode }) => {\n const { state } = context.getCapability(MarkdownCapabilities.State);\n state.viewMode[id] = viewMode;\n },\n }),\n createResolver({\n intent: CollaborationActions.AcceptProposal,\n filter: (\n data,\n ): data is Omit<Schema.Schema.Type<typeof CollaborationActions.AcceptProposal.fields.input>, 'subject'> & {\n subject: Markdown.Document;\n } => Obj.instanceOf(Markdown.Document, data.subject),\n resolve: async ({ subject, anchor, proposal }) => {\n const text = await subject.content.load();\n const accessor = createDocAccessor(text, ['content']);\n const { start, end } = Option.fromNullable(anchor).pipe(\n Option.flatMap((at) => Option.fromNullable(getRangeFromCursor(accessor, at))),\n // Fallback to the end of the document.\n Option.getOrElse(() => ({ start: text.content.length - 1, end: text.content.length - 1 })),\n );\n accessor.handle.change((doc) => {\n A.splice(doc, accessor.path.slice(), start, end - start, proposal.text);\n });\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;AAIA,SAASA,QAAQC,SAAS;AAC1B,YAAYC,YAAY;AAGxB,SACEC,cACAC,sBAEAC,aACAC,sBACK;AACP,SAASC,WAAW;AACpB,SAASC,mBAAmBC,0BAA0B;AAMtD,IAAA,2BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,uBAAeC;IACvBC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,aAAO;QAAEC,MAAM;UAAEC,QAAQC,iBAASC,KAAK;YAAEL;YAAMC;UAAQ,CAAA;QAAG;MAAE;IAC9D;EACF,CAAA;EACAN,eAAe;IACbC,QAAQC,uBAAeS;IACvBP,SAAS,CAAC,EAAEQ,IAAIC,SAAQ,MAAE;AACxB,YAAM,EAAEC,MAAK,IAAKlB,QAAQmB,cAAcC,qBAAqBC,KAAK;AAClEH,YAAMD,SAASD,EAAAA,IAAMC;IACvB;EACF,CAAA;EACAb,eAAe;IACbC,QAAQiB,qBAAqBC;IAC7BC,QAAQ,CACNb,SAGGc,IAAIC,WAAWb,iBAASc,UAAUhB,KAAKiB,OAAO;IACnDpB,SAAS,OAAO,EAAEoB,SAASC,QAAQC,SAAQ,MAAE;AAC3C,YAAMC,OAAO,MAAMH,QAAQlB,QAAQsB,KAAI;AACvC,YAAMC,WAAWC,kBAAkBH,MAAM;QAAC;OAAU;AACpD,YAAM,EAAEI,OAAOC,IAAG,IAAYC,oBAAaR,MAAAA,EAAQS;QAC1CC,eAAQ,CAACC,OAAcH,oBAAaI,mBAAmBR,UAAUO,EAAAA,CAAAA,CAAAA;;QAEjEE,iBAAU,OAAO;UAAEP,OAAOJ,KAAKrB,QAAQiC,SAAS;UAAGP,KAAKL,KAAKrB,QAAQiC,SAAS;QAAE,EAAA;MAAA;AAEzFV,eAASW,OAAOC,OAAO,CAACC,QAAAA;AACtBC,UAAEC,OAAOF,KAAKb,SAASgB,KAAKC,MAAK,GAAIf,OAAOC,MAAMD,OAAOL,SAASC,IAAI;MACxE,CAAA;IACF;EACF,CAAA;CACD;",
6
+ "names": ["next", "A", "Option", "Capabilities", "CollaborationActions", "contributes", "createResolver", "Obj", "createDocAccessor", "getRangeFromCursor", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "MarkdownAction", "Create", "resolve", "name", "content", "data", "object", "Markdown", "make", "SetViewMode", "id", "viewMode", "state", "getCapability", "MarkdownCapabilities", "State", "CollaborationActions", "AcceptProposal", "filter", "Obj", "instanceOf", "Document", "subject", "anchor", "proposal", "text", "load", "accessor", "createDocAccessor", "start", "end", "fromNullable", "pipe", "flatMap", "at", "getRangeFromCursor", "getOrElse", "length", "handle", "change", "doc", "A", "splice", "path", "slice"]
7
+ }