@dxos/plugin-markdown 0.8.4-main.937b3ca → 0.8.4-main.9be5663bfe

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 (367) hide show
  1. package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs +121 -0
  2. package/dist/lib/browser/MarkdownSettings-YZFNSJJY.mjs.map +7 -0
  3. package/dist/lib/browser/blueprints/index.mjs +47 -4
  4. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  5. package/dist/lib/browser/chunk-46WIDM4R.mjs +98 -0
  6. package/dist/lib/browser/chunk-46WIDM4R.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  8. package/dist/lib/browser/chunk-XKUKZNUS.mjs +158 -0
  9. package/dist/lib/browser/chunk-XKUKZNUS.mjs.map +7 -0
  10. package/dist/lib/browser/cli/index.mjs +26 -19
  11. package/dist/lib/browser/cli/index.mjs.map +3 -3
  12. package/dist/lib/browser/create-HSXPXCC5.mjs +30 -0
  13. package/dist/lib/browser/create-HSXPXCC5.mjs.map +7 -0
  14. package/dist/lib/browser/create-markdown-WB7DH3UF.mjs +22 -0
  15. package/dist/lib/browser/create-markdown-WB7DH3UF.mjs.map +7 -0
  16. package/dist/lib/browser/index.mjs +606 -85
  17. package/dist/lib/browser/index.mjs.map +4 -4
  18. package/dist/lib/browser/meta.json +1 -1
  19. package/dist/lib/browser/open-N6PAX6DY.mjs +21 -0
  20. package/dist/lib/browser/open-N6PAX6DY.mjs.map +7 -0
  21. package/dist/lib/browser/operations/index.mjs +14 -0
  22. package/dist/lib/browser/operations/index.mjs.map +7 -0
  23. package/dist/lib/browser/scroll-to-anchor-5M4F24AB.mjs +49 -0
  24. package/dist/lib/browser/scroll-to-anchor-5M4F24AB.mjs.map +7 -0
  25. package/dist/lib/browser/set-view-mode-NBNF2I5W.mjs +26 -0
  26. package/dist/lib/browser/set-view-mode-NBNF2I5W.mjs.map +7 -0
  27. package/dist/lib/browser/types/index.mjs +6 -7
  28. package/dist/lib/browser/update-5QIRVGTL.mjs +45 -0
  29. package/dist/lib/browser/update-5QIRVGTL.mjs.map +7 -0
  30. package/dist/lib/node-esm/MarkdownSettings-X6SDS35F.mjs +122 -0
  31. package/dist/lib/node-esm/MarkdownSettings-X6SDS35F.mjs.map +7 -0
  32. package/dist/lib/node-esm/blueprints/index.mjs +47 -4
  33. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  34. package/dist/lib/node-esm/chunk-4MSJO6IJ.mjs +99 -0
  35. package/dist/lib/node-esm/chunk-4MSJO6IJ.mjs.map +7 -0
  36. package/dist/lib/node-esm/chunk-E4BQCEXF.mjs +159 -0
  37. package/dist/lib/node-esm/chunk-E4BQCEXF.mjs.map +7 -0
  38. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  39. package/dist/lib/node-esm/cli/index.mjs +26 -19
  40. package/dist/lib/node-esm/cli/index.mjs.map +3 -3
  41. package/dist/lib/node-esm/create-6Z2KYISY.mjs +31 -0
  42. package/dist/lib/node-esm/create-6Z2KYISY.mjs.map +7 -0
  43. package/dist/lib/node-esm/create-markdown-JWQZICKY.mjs +23 -0
  44. package/dist/lib/node-esm/create-markdown-JWQZICKY.mjs.map +7 -0
  45. package/dist/lib/node-esm/index.mjs +606 -85
  46. package/dist/lib/node-esm/index.mjs.map +4 -4
  47. package/dist/lib/node-esm/meta.json +1 -1
  48. package/dist/lib/node-esm/open-DSNFRSNZ.mjs +22 -0
  49. package/dist/lib/node-esm/open-DSNFRSNZ.mjs.map +7 -0
  50. package/dist/lib/node-esm/operations/index.mjs +15 -0
  51. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  52. package/dist/lib/node-esm/scroll-to-anchor-D6SHGU2R.mjs +50 -0
  53. package/dist/lib/node-esm/scroll-to-anchor-D6SHGU2R.mjs.map +7 -0
  54. package/dist/lib/node-esm/set-view-mode-REYB4L7J.mjs +27 -0
  55. package/dist/lib/node-esm/set-view-mode-REYB4L7J.mjs.map +7 -0
  56. package/dist/lib/node-esm/types/index.mjs +6 -7
  57. package/dist/lib/node-esm/update-YMQAIKOF.mjs +46 -0
  58. package/dist/lib/node-esm/update-YMQAIKOF.mjs.map +7 -0
  59. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  60. package/dist/types/src/blueprints/index.d.ts +1 -1
  61. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  62. package/dist/types/src/blueprints/markdown-blueprint.d.ts +3 -20
  63. package/dist/types/src/blueprints/markdown-blueprint.d.ts.map +1 -1
  64. package/dist/types/src/capabilities/anchor-sort.d.ts +6 -0
  65. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -0
  66. package/dist/types/src/capabilities/app-graph-serializer.d.ts +5 -0
  67. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
  68. package/dist/types/src/capabilities/artifact-definition.d.ts +5 -0
  69. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  70. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  71. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  72. package/dist/types/src/capabilities/index.d.ts +27 -7
  73. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/node.d.ts +4 -0
  75. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  76. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  77. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  78. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  79. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  80. package/dist/types/src/capabilities/settings.d.ts +24 -0
  81. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  82. package/dist/types/src/capabilities/state.d.ts +6 -0
  83. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  84. package/dist/types/src/cli/plugin.d.ts.map +1 -1
  85. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +2 -2
  86. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -1
  87. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +25 -22
  88. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  89. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +3 -3
  90. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  91. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +4 -2
  92. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -1
  93. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +7 -6
  94. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -1
  95. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +4 -6
  96. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  97. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts +138 -0
  98. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.stories.d.ts.map +1 -0
  99. package/dist/types/src/components/MarkdownSettings/index.d.ts +1 -1
  100. package/dist/types/src/components/MarkdownSettings/index.d.ts.map +1 -1
  101. package/dist/types/src/components/index.d.ts +3 -8
  102. package/dist/types/src/components/index.d.ts.map +1 -1
  103. package/dist/types/src/{components → containers}/MarkdownCard/MarkdownCard.d.ts +1 -1
  104. package/dist/types/src/containers/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  105. package/dist/types/src/containers/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  106. package/dist/types/src/containers/MarkdownCard/index.d.ts +2 -0
  107. package/dist/types/src/containers/MarkdownCard/index.d.ts.map +1 -0
  108. package/dist/types/src/containers/MarkdownCard/snippet.d.ts +15 -0
  109. package/dist/types/src/containers/MarkdownCard/snippet.d.ts.map +1 -0
  110. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts +36 -0
  111. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.d.ts.map +1 -0
  112. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts +99 -0
  113. package/dist/types/src/containers/MarkdownContainer/MarkdownContainer.stories.d.ts.map +1 -0
  114. package/dist/types/src/containers/MarkdownContainer/index.d.ts +3 -0
  115. package/dist/types/src/containers/MarkdownContainer/index.d.ts.map +1 -0
  116. package/dist/types/src/containers/index.d.ts +5 -0
  117. package/dist/types/src/containers/index.d.ts.map +1 -0
  118. package/dist/types/src/hooks/index.d.ts +0 -1
  119. package/dist/types/src/hooks/index.d.ts.map +1 -1
  120. package/dist/types/src/hooks/useExtensions.d.ts +7 -5
  121. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -1
  122. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -1
  123. package/dist/types/src/index.d.ts +2 -0
  124. package/dist/types/src/index.d.ts.map +1 -1
  125. package/dist/types/src/operations/create-markdown.d.ts +5 -0
  126. package/dist/types/src/operations/create-markdown.d.ts.map +1 -0
  127. package/dist/types/src/operations/create.d.ts +5 -0
  128. package/dist/types/src/operations/create.d.ts.map +1 -0
  129. package/dist/types/src/operations/create.test.d.ts.map +1 -0
  130. package/dist/types/src/operations/definitions.d.ts +64 -0
  131. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  132. package/dist/types/src/operations/index.d.ts +4 -0
  133. package/dist/types/src/operations/index.d.ts.map +1 -0
  134. package/dist/types/src/operations/open.d.ts +5 -0
  135. package/dist/types/src/operations/open.d.ts.map +1 -0
  136. package/dist/types/src/operations/scroll-to-anchor.d.ts +5 -0
  137. package/dist/types/src/operations/scroll-to-anchor.d.ts.map +1 -0
  138. package/dist/types/src/operations/set-view-mode.d.ts +5 -0
  139. package/dist/types/src/operations/set-view-mode.d.ts.map +1 -0
  140. package/dist/types/src/operations/update.d.ts +5 -0
  141. package/dist/types/src/operations/update.d.ts.map +1 -0
  142. package/dist/types/src/operations/update.test.d.ts.map +1 -0
  143. package/dist/types/src/translations.d.ts +75 -35
  144. package/dist/types/src/translations.d.ts.map +1 -1
  145. package/dist/types/src/types/Markdown.d.ts +15 -16
  146. package/dist/types/src/types/Markdown.d.ts.map +1 -1
  147. package/dist/types/src/types/Settings.d.ts +16 -0
  148. package/dist/types/src/types/Settings.d.ts.map +1 -0
  149. package/dist/types/src/types/capabilities.d.ts +31 -2
  150. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  151. package/dist/types/src/types/events.d.ts.map +1 -1
  152. package/dist/types/src/types/index.d.ts +2 -3
  153. package/dist/types/src/types/index.d.ts.map +1 -1
  154. package/dist/types/src/util.d.ts +2 -2
  155. package/dist/types/src/util.d.ts.map +1 -1
  156. package/dist/types/tsconfig.tsbuildinfo +1 -1
  157. package/package.json +92 -60
  158. package/src/MarkdownPlugin.tsx +47 -42
  159. package/src/blueprints/index.ts +1 -1
  160. package/src/blueprints/markdown-blueprint.ts +14 -8
  161. package/src/capabilities/{anchor-sort/anchor-sort.ts → anchor-sort.ts} +4 -3
  162. package/src/capabilities/{app-graph-serializer/app-graph-serializer.ts → app-graph-serializer.ts} +15 -9
  163. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +5 -5
  164. package/src/capabilities/blueprint-definition.ts +17 -0
  165. package/src/capabilities/index.ts +13 -7
  166. package/src/capabilities/node.ts +11 -0
  167. package/src/capabilities/operation-handler.ts +16 -0
  168. package/src/capabilities/react-surface.tsx +120 -0
  169. package/src/capabilities/{settings/settings.ts → settings.ts} +5 -4
  170. package/src/capabilities/state.ts +47 -0
  171. package/src/cli/plugin.ts +20 -10
  172. package/src/components/MarkdownEditor/FileUpload.tsx +2 -2
  173. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +38 -34
  174. package/src/components/MarkdownEditor/MarkdownEditor.tsx +139 -102
  175. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +25 -17
  176. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +46 -54
  177. package/src/components/MarkdownSettings/MarkdownSettings.stories.tsx +39 -0
  178. package/src/components/MarkdownSettings/MarkdownSettings.tsx +114 -98
  179. package/src/components/MarkdownSettings/index.ts +1 -1
  180. package/src/components/index.ts +4 -12
  181. package/src/{components → containers}/MarkdownCard/MarkdownCard.stories.tsx +21 -12
  182. package/src/containers/MarkdownCard/MarkdownCard.tsx +62 -0
  183. package/src/containers/MarkdownCard/index.ts +5 -0
  184. package/src/containers/MarkdownCard/snippet.ts +78 -0
  185. package/src/{components → containers/MarkdownContainer}/MarkdownContainer.stories.tsx +34 -23
  186. package/src/containers/MarkdownContainer/MarkdownContainer.tsx +145 -0
  187. package/src/containers/MarkdownContainer/index.ts +6 -0
  188. package/src/containers/index.ts +10 -0
  189. package/src/hooks/index.ts +0 -1
  190. package/src/hooks/useEditorMenuOptions.ts +3 -3
  191. package/src/hooks/useExtensions.tsx +81 -92
  192. package/src/hooks/useLinkQuery.ts +31 -6
  193. package/src/index.ts +3 -0
  194. package/src/meta.ts +1 -1
  195. package/src/operations/create-markdown.ts +20 -0
  196. package/src/operations/create.conversations.json +1 -0
  197. package/src/operations/create.test.ts +98 -0
  198. package/src/operations/create.ts +27 -0
  199. package/src/operations/definitions.ts +120 -0
  200. package/src/operations/index.ts +16 -0
  201. package/src/operations/open.ts +25 -0
  202. package/src/operations/scroll-to-anchor.ts +39 -0
  203. package/src/operations/set-view-mode.ts +24 -0
  204. package/src/operations/update.conversations.json +1 -0
  205. package/src/operations/update.test.ts +215 -0
  206. package/src/operations/update.ts +51 -0
  207. package/src/testing.ts +2 -2
  208. package/src/translations.ts +49 -35
  209. package/src/types/Markdown.ts +18 -25
  210. package/src/types/Settings.ts +28 -0
  211. package/src/types/capabilities.ts +17 -5
  212. package/src/types/events.ts +5 -4
  213. package/src/types/index.ts +3 -4
  214. package/src/util.tsx +5 -5
  215. package/dist/lib/browser/MarkdownCard-HFNNE4B4.mjs +0 -12
  216. package/dist/lib/browser/MarkdownContainer-V7EAADMF.mjs +0 -12
  217. package/dist/lib/browser/anchor-sort-WQ3TL7ZI.mjs +0 -32
  218. package/dist/lib/browser/anchor-sort-WQ3TL7ZI.mjs.map +0 -7
  219. package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs +0 -58
  220. package/dist/lib/browser/app-graph-serializer-ULZUJKOD.mjs.map +0 -7
  221. package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs +0 -19
  222. package/dist/lib/browser/blueprint-definition-TLV4PNZW.mjs.map +0 -7
  223. package/dist/lib/browser/chunk-BX73DASG.mjs +0 -702
  224. package/dist/lib/browser/chunk-BX73DASG.mjs.map +0 -7
  225. package/dist/lib/browser/chunk-CUGDX7KA.mjs +0 -8
  226. package/dist/lib/browser/chunk-CUGDX7KA.mjs.map +0 -7
  227. package/dist/lib/browser/chunk-FWQQW6KU.mjs +0 -144
  228. package/dist/lib/browser/chunk-FWQQW6KU.mjs.map +0 -7
  229. package/dist/lib/browser/chunk-JOXYQLKH.mjs +0 -55
  230. package/dist/lib/browser/chunk-JOXYQLKH.mjs.map +0 -7
  231. package/dist/lib/browser/chunk-KDKXFKDN.mjs +0 -104
  232. package/dist/lib/browser/chunk-KDKXFKDN.mjs.map +0 -7
  233. package/dist/lib/browser/chunk-LMO5UVKL.mjs +0 -167
  234. package/dist/lib/browser/chunk-LMO5UVKL.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-S45ULIOG.mjs +0 -101
  236. package/dist/lib/browser/chunk-S45ULIOG.mjs.map +0 -7
  237. package/dist/lib/browser/chunk-VQ3WOAB6.mjs +0 -60
  238. package/dist/lib/browser/chunk-VQ3WOAB6.mjs.map +0 -7
  239. package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs +0 -53
  240. package/dist/lib/browser/operation-resolver-EGCWOQKJ.mjs.map +0 -7
  241. package/dist/lib/browser/react-surface-64FZ7T7F.mjs +0 -213
  242. package/dist/lib/browser/react-surface-64FZ7T7F.mjs.map +0 -7
  243. package/dist/lib/browser/settings-JY5JE7MI.mjs +0 -35
  244. package/dist/lib/browser/settings-JY5JE7MI.mjs.map +0 -7
  245. package/dist/lib/browser/state-QE7VSJWJ.mjs +0 -29
  246. package/dist/lib/browser/state-QE7VSJWJ.mjs.map +0 -7
  247. package/dist/lib/node-esm/MarkdownCard-GMNXUWWR.mjs +0 -13
  248. package/dist/lib/node-esm/MarkdownCard-GMNXUWWR.mjs.map +0 -7
  249. package/dist/lib/node-esm/MarkdownContainer-LUSMORP2.mjs +0 -13
  250. package/dist/lib/node-esm/MarkdownContainer-LUSMORP2.mjs.map +0 -7
  251. package/dist/lib/node-esm/anchor-sort-G7D5TAI6.mjs +0 -33
  252. package/dist/lib/node-esm/anchor-sort-G7D5TAI6.mjs.map +0 -7
  253. package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs +0 -59
  254. package/dist/lib/node-esm/app-graph-serializer-W5YMQP7P.mjs.map +0 -7
  255. package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs +0 -20
  256. package/dist/lib/node-esm/blueprint-definition-HYFA7BKQ.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-3JYPCC7M.mjs +0 -105
  258. package/dist/lib/node-esm/chunk-3JYPCC7M.mjs.map +0 -7
  259. package/dist/lib/node-esm/chunk-44VJC3QF.mjs +0 -56
  260. package/dist/lib/node-esm/chunk-44VJC3QF.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-D4BCFPKK.mjs +0 -703
  262. package/dist/lib/node-esm/chunk-D4BCFPKK.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-EYAFC4N7.mjs +0 -145
  264. package/dist/lib/node-esm/chunk-EYAFC4N7.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-KXEQCFMB.mjs +0 -61
  266. package/dist/lib/node-esm/chunk-KXEQCFMB.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-PRV35A7Z.mjs +0 -168
  268. package/dist/lib/node-esm/chunk-PRV35A7Z.mjs.map +0 -7
  269. package/dist/lib/node-esm/chunk-SDTYEGGL.mjs +0 -102
  270. package/dist/lib/node-esm/chunk-SDTYEGGL.mjs.map +0 -7
  271. package/dist/lib/node-esm/chunk-W3IIKDV5.mjs +0 -10
  272. package/dist/lib/node-esm/chunk-W3IIKDV5.mjs.map +0 -7
  273. package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs +0 -54
  274. package/dist/lib/node-esm/operation-resolver-2HIS2AQZ.mjs.map +0 -7
  275. package/dist/lib/node-esm/react-surface-PKEVHTJK.mjs +0 -214
  276. package/dist/lib/node-esm/react-surface-PKEVHTJK.mjs.map +0 -7
  277. package/dist/lib/node-esm/settings-4UGMPIRY.mjs +0 -36
  278. package/dist/lib/node-esm/settings-4UGMPIRY.mjs.map +0 -7
  279. package/dist/lib/node-esm/state-LXE5XIN4.mjs +0 -30
  280. package/dist/lib/node-esm/state-LXE5XIN4.mjs.map +0 -7
  281. package/dist/types/src/blueprints/functions/create.d.ts +0 -8
  282. package/dist/types/src/blueprints/functions/create.d.ts.map +0 -1
  283. package/dist/types/src/blueprints/functions/create.test.d.ts.map +0 -1
  284. package/dist/types/src/blueprints/functions/index.d.ts +0 -4
  285. package/dist/types/src/blueprints/functions/index.d.ts.map +0 -1
  286. package/dist/types/src/blueprints/functions/open.d.ts +0 -7
  287. package/dist/types/src/blueprints/functions/open.d.ts.map +0 -1
  288. package/dist/types/src/blueprints/functions/update.d.ts +0 -6
  289. package/dist/types/src/blueprints/functions/update.d.ts.map +0 -1
  290. package/dist/types/src/blueprints/functions/update.test.d.ts.map +0 -1
  291. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts +0 -5
  292. package/dist/types/src/capabilities/anchor-sort/anchor-sort.d.ts.map +0 -1
  293. package/dist/types/src/capabilities/anchor-sort/index.d.ts +0 -3
  294. package/dist/types/src/capabilities/anchor-sort/index.d.ts.map +0 -1
  295. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +0 -5
  296. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +0 -1
  297. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +0 -3
  298. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +0 -1
  299. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +0 -5
  300. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  301. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  302. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  303. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -10
  304. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  305. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  306. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  307. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  308. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  309. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  310. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  311. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  312. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  313. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  314. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  315. package/dist/types/src/capabilities/settings/index.d.ts +0 -3
  316. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  317. package/dist/types/src/capabilities/settings/settings.d.ts +0 -6
  318. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  319. package/dist/types/src/capabilities/state/index.d.ts +0 -3
  320. package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
  321. package/dist/types/src/capabilities/state/state.d.ts +0 -5
  322. package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
  323. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +0 -1
  324. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +0 -1
  325. package/dist/types/src/components/MarkdownCard/index.d.ts +0 -4
  326. package/dist/types/src/components/MarkdownCard/index.d.ts.map +0 -1
  327. package/dist/types/src/components/MarkdownContainer.d.ts +0 -28
  328. package/dist/types/src/components/MarkdownContainer.d.ts.map +0 -1
  329. package/dist/types/src/components/MarkdownContainer.stories.d.ts +0 -59
  330. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +0 -1
  331. package/dist/types/src/components/Suggestions.stories.d.ts +0 -11
  332. package/dist/types/src/components/Suggestions.stories.d.ts.map +0 -1
  333. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +0 -6
  334. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +0 -1
  335. package/dist/types/src/types/MarkdownAction.d.ts +0 -66
  336. package/dist/types/src/types/MarkdownAction.d.ts.map +0 -1
  337. package/src/blueprints/functions/create.conversations.json +0 -1
  338. package/src/blueprints/functions/create.test.ts +0 -125
  339. package/src/blueprints/functions/create.ts +0 -34
  340. package/src/blueprints/functions/index.ts +0 -7
  341. package/src/blueprints/functions/open.ts +0 -33
  342. package/src/blueprints/functions/update.conversations.json +0 -1
  343. package/src/blueprints/functions/update.test.ts +0 -149
  344. package/src/blueprints/functions/update.ts +0 -38
  345. package/src/capabilities/anchor-sort/index.ts +0 -7
  346. package/src/capabilities/app-graph-serializer/index.ts +0 -7
  347. package/src/capabilities/artifact-definition/index.ts +0 -7
  348. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -25
  349. package/src/capabilities/blueprint-definition/index.ts +0 -7
  350. package/src/capabilities/operation-resolver/index.ts +0 -7
  351. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -45
  352. package/src/capabilities/react-surface/index.ts +0 -7
  353. package/src/capabilities/react-surface/react-surface.tsx +0 -100
  354. package/src/capabilities/settings/index.ts +0 -7
  355. package/src/capabilities/state/index.ts +0 -7
  356. package/src/capabilities/state/state.ts +0 -31
  357. package/src/components/MarkdownCard/MarkdownCard.tsx +0 -62
  358. package/src/components/MarkdownCard/index.ts +0 -9
  359. package/src/components/MarkdownContainer.tsx +0 -111
  360. package/src/components/Suggestions.stories.tsx +0 -215
  361. package/src/hooks/useSelectCurrentThread.tsx +0 -61
  362. package/src/types/MarkdownAction.ts +0 -59
  363. /package/dist/lib/browser/{MarkdownCard-HFNNE4B4.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  364. /package/dist/lib/{browser/MarkdownContainer-V7EAADMF.mjs.map → node-esm/chunk-HSLMI22Q.mjs.map} +0 -0
  365. /package/dist/types/src/{components → containers}/MarkdownCard/MarkdownCard.stories.d.ts +0 -0
  366. /package/dist/types/src/{blueprints/functions → operations}/create.test.d.ts +0 -0
  367. /package/dist/types/src/{blueprints/functions → operations}/update.test.d.ts +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/scroll-to-anchor.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { EditorView } from '@codemirror/view';\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/operation';\nimport { Cursor, setSelection } from '@dxos/ui-editor';\n\nimport { MarkdownCapabilities } from '../types';\nimport { ScrollToAnchor } from './definitions';\n\nconst handler: Operation.WithHandler<typeof ScrollToAnchor> = ScrollToAnchor.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ subject, cursor }) {\n const editorViews = yield* Capability.get(MarkdownCapabilities.EditorViews);\n const entry = editorViews.get(subject);\n if (!entry) {\n return;\n }\n const range = Cursor.getRangeFromCursor(entry.view.state, cursor);\n if (range) {\n const selection = entry.view.state.selection.main.from !== range.from ? { anchor: range.from } : undefined;\n const effects: any[] = [EditorView.scrollIntoView(range.from, { y: 'start', yMargin: 96 })];\n if (selection) {\n effects.push(setSelection.of({ current: entry.documentId }));\n }\n entry.view.dispatch({\n effects,\n selection: selection ? { anchor: range.from } : undefined,\n });\n }\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;;;AAIA,SAASA,kBAAkB;AAC3B,YAAYC,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,QAAQC,oBAAoB;AAKrC,IAAMC,UAAwDC,eAAeC,KAC3EC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,SAASC,OAAM,GAAE;AAC9C,QAAMC,cAAc,OAAOC,WAAWC,IAAIC,qBAAqBC,WAAW;AAC1E,QAAMC,QAAQL,YAAYE,IAAIJ,OAAAA;AAC9B,MAAI,CAACO,OAAO;AACV;EACF;AACA,QAAMC,QAAQC,OAAOC,mBAAmBH,MAAMI,KAAKC,OAAOX,MAAAA;AAC1D,MAAIO,OAAO;AACT,UAAMK,YAAYN,MAAMI,KAAKC,MAAMC,UAAUC,KAAKC,SAASP,MAAMO,OAAO;MAAEC,QAAQR,MAAMO;IAAK,IAAIE;AACjG,UAAMC,UAAiB;MAACC,WAAWC,eAAeZ,MAAMO,MAAM;QAAEM,GAAG;QAASC,SAAS;MAAG,CAAA;;AACxF,QAAIT,WAAW;AACbK,cAAQK,KAAKC,aAAaC,GAAG;QAAEC,SAASnB,MAAMoB;MAAW,CAAA,CAAA;IAC3D;AACApB,UAAMI,KAAKiB,SAAS;MAClBV;MACAL,WAAWA,YAAY;QAAEG,QAAQR,MAAMO;MAAK,IAAIE;IAClD,CAAA;EACF;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,2BAAevB;",
6
+ "names": ["EditorView", "Effect", "Capability", "Operation", "Cursor", "setSelection", "handler", "ScrollToAnchor", "pipe", "Operation", "withHandler", "fnUntraced", "subject", "cursor", "editorViews", "Capability", "get", "MarkdownCapabilities", "EditorViews", "entry", "range", "Cursor", "getRangeFromCursor", "view", "state", "selection", "main", "from", "anchor", "undefined", "effects", "EditorView", "scrollIntoView", "y", "yMargin", "push", "setSelection", "of", "current", "documentId", "dispatch"]
7
+ }
@@ -0,0 +1,26 @@
1
+ import {
2
+ SetViewMode
3
+ } from "./chunk-XKUKZNUS.mjs";
4
+ import {
5
+ MarkdownCapabilities
6
+ } from "./chunk-46WIDM4R.mjs";
7
+ import "./chunk-J5LGTIGS.mjs";
8
+
9
+ // src/operations/set-view-mode.ts
10
+ import * as Effect from "effect/Effect";
11
+ import { Capabilities } from "@dxos/app-framework";
12
+ import { Operation } from "@dxos/operation";
13
+ var handler = SetViewMode.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ id, viewMode }) {
14
+ yield* Capabilities.updateAtomValue(MarkdownCapabilities.State, (current) => ({
15
+ ...current,
16
+ viewMode: {
17
+ ...current.viewMode,
18
+ [id]: viewMode
19
+ }
20
+ }));
21
+ })));
22
+ var set_view_mode_default = handler;
23
+ export {
24
+ set_view_mode_default as default
25
+ };
26
+ //# sourceMappingURL=set-view-mode-NBNF2I5W.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/set-view-mode.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities } from '@dxos/app-framework';\nimport { Operation } from '@dxos/operation';\n\nimport { MarkdownCapabilities } from '../types';\nimport { SetViewMode } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SetViewMode> = SetViewMode.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ id, viewMode }) {\n yield* Capabilities.updateAtomValue(MarkdownCapabilities.State, (current) => ({\n ...current,\n viewMode: { ...current.viewMode, [id]: viewMode },\n }));\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,oBAAoB;AAC7B,SAASC,iBAAiB;AAK1B,IAAMC,UAAqDC,YAAYC,KACrEC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,IAAIC,SAAQ,GAAE;AAC3C,SAAOC,aAAaC,gBAAgBC,qBAAqBC,OAAO,CAACC,aAAa;IAC5E,GAAGA;IACHL,UAAU;MAAE,GAAGK,QAAQL;MAAU,CAACD,EAAAA,GAAKC;IAAS;EAClD,EAAA;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,wBAAeP;",
6
+ "names": ["Effect", "Capabilities", "Operation", "handler", "SetViewMode", "pipe", "Operation", "withHandler", "fnUntraced", "id", "viewMode", "Capabilities", "updateAtomValue", "MarkdownCapabilities", "State", "current"]
7
+ }
@@ -1,17 +1,16 @@
1
1
  import {
2
- MarkdownAction_exports,
3
2
  MarkdownCapabilities,
4
3
  MarkdownEvents,
5
- MarkdownOperation,
6
4
  MarkdownStateSchema,
7
- Markdown_exports
8
- } from "../chunk-LMO5UVKL.mjs";
5
+ Markdown_exports,
6
+ Settings_exports
7
+ } from "../chunk-46WIDM4R.mjs";
8
+ import "../chunk-J5LGTIGS.mjs";
9
9
  export {
10
10
  Markdown_exports as Markdown,
11
- MarkdownAction_exports as MarkdownAction,
12
11
  MarkdownCapabilities,
13
12
  MarkdownEvents,
14
- MarkdownOperation,
15
- MarkdownStateSchema
13
+ MarkdownStateSchema,
14
+ Settings_exports as Settings
16
15
  };
17
16
  //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,45 @@
1
+ import {
2
+ Update
3
+ } from "./chunk-XKUKZNUS.mjs";
4
+ import "./chunk-46WIDM4R.mjs";
5
+ import "./chunk-J5LGTIGS.mjs";
6
+
7
+ // src/operations/update.ts
8
+ import { next as A } from "@automerge/automerge";
9
+ import * as Effect from "effect/Effect";
10
+ import { Database } from "@dxos/echo";
11
+ import { DocAccessor, createDocAccessor } from "@dxos/echo-db";
12
+ import { Operation } from "@dxos/operation";
13
+ var handler = Update.pipe(Operation.withHandler(Effect.fn(function* ({ doc, edits }) {
14
+ const content = yield* doc.pipe(Database.load, Effect.map((_) => _.content), Effect.flatMap(Database.load));
15
+ const accessor = createDocAccessor(content, [
16
+ "content"
17
+ ]);
18
+ for (const edit of edits) {
19
+ accessor.handle.change((doc2) => {
20
+ const text = DocAccessor.getValue(accessor);
21
+ if (edit.replaceAll) {
22
+ let idx = text.indexOf(edit.oldString);
23
+ while (idx !== -1) {
24
+ A.splice(doc2, accessor.path, idx, edit.oldString.length, edit.newString);
25
+ const updated = DocAccessor.getValue(accessor);
26
+ idx = updated.indexOf(edit.oldString, idx + edit.newString.length);
27
+ }
28
+ } else {
29
+ const idx = text.indexOf(edit.oldString);
30
+ if (idx === -1) {
31
+ throw new Error(`Edit not found: ${JSON.stringify(edit.oldString)}`);
32
+ }
33
+ A.splice(doc2, accessor.path, idx, edit.oldString.length, edit.newString);
34
+ }
35
+ });
36
+ }
37
+ return {
38
+ newContent: DocAccessor.getValue(accessor)
39
+ };
40
+ })));
41
+ var update_default = handler;
42
+ export {
43
+ update_default as default
44
+ };
45
+ //# sourceMappingURL=update-5QIRVGTL.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/update.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { next as A, type Doc } from '@automerge/automerge';\nimport * as Effect from 'effect/Effect';\n\nimport { Database } from '@dxos/echo';\nimport { DocAccessor, createDocAccessor } from '@dxos/echo-db';\nimport { Operation } from '@dxos/operation';\n\nimport { Update } from './definitions';\n\nconst handler: Operation.WithHandler<typeof Update> = Update.pipe(\n Operation.withHandler(\n Effect.fn(function* ({ doc, edits }) {\n const content = yield* doc.pipe(\n Database.load,\n Effect.map((_) => _.content),\n Effect.flatMap(Database.load),\n );\n const accessor = createDocAccessor(content, ['content']);\n\n for (const edit of edits) {\n accessor.handle.change((doc: Doc<typeof content>) => {\n const text = DocAccessor.getValue<string>(accessor);\n if (edit.replaceAll) {\n let idx = text.indexOf(edit.oldString);\n while (idx !== -1) {\n A.splice(doc, accessor.path as A.Prop[], idx, edit.oldString.length, edit.newString);\n const updated = DocAccessor.getValue<string>(accessor);\n idx = updated.indexOf(edit.oldString, idx + edit.newString.length);\n }\n } else {\n const idx = text.indexOf(edit.oldString);\n if (idx === -1) {\n throw new Error(`Edit not found: ${JSON.stringify(edit.oldString)}`);\n }\n A.splice(doc, accessor.path as A.Prop[], idx, edit.oldString.length, edit.newString);\n }\n });\n }\n\n return {\n newContent: DocAccessor.getValue<string>(accessor),\n };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;AAIA,SAASA,QAAQC,SAAmB;AACpC,YAAYC,YAAY;AAExB,SAASC,gBAAgB;AACzB,SAASC,aAAaC,yBAAyB;AAC/C,SAASC,iBAAiB;AAI1B,IAAMC,UAAgDC,OAAOC,KAC3DC,UAAUC,YACDC,UAAG,WAAW,EAAEC,KAAKC,MAAK,GAAE;AACjC,QAAMC,UAAU,OAAOF,IAAIJ,KACzBO,SAASC,MACFC,WAAI,CAACC,MAAMA,EAAEJ,OAAO,GACpBK,eAAQJ,SAASC,IAAI,CAAA;AAE9B,QAAMI,WAAWC,kBAAkBP,SAAS;IAAC;GAAU;AAEvD,aAAWQ,QAAQT,OAAO;AACxBO,aAASG,OAAOC,OAAO,CAACZ,SAAAA;AACtB,YAAMa,OAAOC,YAAYC,SAAiBP,QAAAA;AAC1C,UAAIE,KAAKM,YAAY;AACnB,YAAIC,MAAMJ,KAAKK,QAAQR,KAAKS,SAAS;AACrC,eAAOF,QAAQ,IAAI;AACjBG,YAAEC,OAAOrB,MAAKQ,SAASc,MAAkBL,KAAKP,KAAKS,UAAUI,QAAQb,KAAKc,SAAS;AACnF,gBAAMC,UAAUX,YAAYC,SAAiBP,QAAAA;AAC7CS,gBAAMQ,QAAQP,QAAQR,KAAKS,WAAWF,MAAMP,KAAKc,UAAUD,MAAM;QACnE;MACF,OAAO;AACL,cAAMN,MAAMJ,KAAKK,QAAQR,KAAKS,SAAS;AACvC,YAAIF,QAAQ,IAAI;AACd,gBAAM,IAAIS,MAAM,mBAAmBC,KAAKC,UAAUlB,KAAKS,SAAS,CAAA,EAAG;QACrE;AACAC,UAAEC,OAAOrB,MAAKQ,SAASc,MAAkBL,KAAKP,KAAKS,UAAUI,QAAQb,KAAKc,SAAS;MACrF;IACF,CAAA;EACF;AAEA,SAAO;IACLK,YAAYf,YAAYC,SAAiBP,QAAAA;EAC3C;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,iBAAed;",
6
+ "names": ["next", "A", "Effect", "Database", "DocAccessor", "createDocAccessor", "Operation", "handler", "Update", "pipe", "Operation", "withHandler", "fn", "doc", "edits", "content", "Database", "load", "map", "_", "flatMap", "accessor", "createDocAccessor", "edit", "handle", "change", "text", "DocAccessor", "getValue", "replaceAll", "idx", "indexOf", "oldString", "A", "splice", "path", "length", "newString", "updated", "Error", "JSON", "stringify", "newContent"]
7
+ }
@@ -0,0 +1,122 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import "./chunk-HSLMI22Q.mjs";
3
+
4
+ // src/components/MarkdownSettings/MarkdownSettings.tsx
5
+ import React from "react";
6
+ import { Input, Select, useTranslation } from "@dxos/react-ui";
7
+ import { Settings as SettingsForm } from "@dxos/react-ui-form";
8
+ import { EditorInputModes, EditorViewModes } from "@dxos/ui-editor";
9
+ import { meta } from "#meta";
10
+ var MarkdownSettings = ({ settings, onSettingsChange }) => {
11
+ const { t } = useTranslation(meta.id);
12
+ return /* @__PURE__ */ React.createElement(SettingsForm.Viewport, null, /* @__PURE__ */ React.createElement(SettingsForm.Section, {
13
+ title: t("settings.title", {
14
+ ns: meta.id
15
+ })
16
+ }, /* @__PURE__ */ React.createElement(SettingsForm.Item, {
17
+ title: t("default-view-mode.label"),
18
+ description: t("default-view-mode.description")
19
+ }, /* @__PURE__ */ React.createElement(Select.Root, {
20
+ disabled: !onSettingsChange,
21
+ value: settings.defaultViewMode,
22
+ onValueChange: (value) => {
23
+ onSettingsChange?.((s) => ({
24
+ ...s,
25
+ defaultViewMode: value
26
+ }));
27
+ }
28
+ }, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
29
+ disabled: !onSettingsChange
30
+ }), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, EditorViewModes.map((mode) => /* @__PURE__ */ React.createElement(Select.Option, {
31
+ key: mode,
32
+ value: mode
33
+ }, t(`view-mode.${mode}.label`, {
34
+ ns: "@dxos/react-ui-editor"
35
+ })))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
36
+ title: t("editor-input-mode.label"),
37
+ description: t("editor-input-mode.description")
38
+ }, /* @__PURE__ */ React.createElement(Select.Root, {
39
+ disabled: !onSettingsChange,
40
+ value: settings.editorInputMode ?? "default",
41
+ onValueChange: (value) => {
42
+ onSettingsChange?.((s) => ({
43
+ ...s,
44
+ editorInputMode: value
45
+ }));
46
+ }
47
+ }, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
48
+ disabled: !onSettingsChange,
49
+ placeholder: t("select-editor-input-mode.placeholder")
50
+ }), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, EditorInputModes.map((mode) => /* @__PURE__ */ React.createElement(Select.Option, {
51
+ key: mode,
52
+ value: mode
53
+ }, t(`settings.editor-input-mode.${mode}.label`)))), /* @__PURE__ */ React.createElement(Select.Arrow, null))))), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
54
+ title: t("settings.toolbar.label"),
55
+ description: t("settings.toolbar.description")
56
+ }, /* @__PURE__ */ React.createElement(Input.Switch, {
57
+ disabled: !onSettingsChange,
58
+ checked: settings.toolbar,
59
+ onCheckedChange: (checked) => onSettingsChange?.((s) => ({
60
+ ...s,
61
+ toolbar: !!checked
62
+ }))
63
+ })), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
64
+ title: t("settings.numbered-headings.label"),
65
+ description: t("settings.numbered-headings.description")
66
+ }, /* @__PURE__ */ React.createElement(Input.Switch, {
67
+ disabled: !onSettingsChange,
68
+ checked: settings.numberedHeadings,
69
+ onCheckedChange: (checked) => onSettingsChange?.((s) => ({
70
+ ...s,
71
+ numberedHeadings: !!checked
72
+ }))
73
+ })), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
74
+ title: t("settings.folding.label"),
75
+ description: t("settings.folding.description")
76
+ }, /* @__PURE__ */ React.createElement(Input.Switch, {
77
+ disabled: !onSettingsChange,
78
+ checked: settings.folding,
79
+ onCheckedChange: (checked) => onSettingsChange?.((s) => ({
80
+ ...s,
81
+ folding: !!checked
82
+ }))
83
+ })), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
84
+ title: t("settings.experimental.label"),
85
+ description: t("settings.experimental.description")
86
+ }, /* @__PURE__ */ React.createElement(Input.Switch, {
87
+ disabled: !onSettingsChange,
88
+ checked: settings.experimental,
89
+ onCheckedChange: (checked) => onSettingsChange?.((s) => ({
90
+ ...s,
91
+ experimental: !!checked
92
+ }))
93
+ })), /* @__PURE__ */ React.createElement(SettingsForm.Item, {
94
+ title: t("settings.debug.label"),
95
+ description: t("settings.debug.description")
96
+ }, /* @__PURE__ */ React.createElement(Input.Switch, {
97
+ disabled: !onSettingsChange,
98
+ checked: settings.debug,
99
+ onCheckedChange: (checked) => onSettingsChange?.((s) => ({
100
+ ...s,
101
+ debug: !!checked
102
+ }))
103
+ })), settings.debug && /* @__PURE__ */ React.createElement(SettingsForm.Item, {
104
+ title: t("settings.debug-typewriter.label", {
105
+ ns: meta.id
106
+ }),
107
+ description: t("settings.debug-typewriter.description")
108
+ }, /* @__PURE__ */ React.createElement(Input.TextArea, {
109
+ disabled: !onSettingsChange,
110
+ rows: 5,
111
+ value: settings.typewriter,
112
+ onChange: ({ target: { value } }) => onSettingsChange?.((s) => ({
113
+ ...s,
114
+ typewriter: value
115
+ })),
116
+ placeholder: t("settings.debug-typewriter.placeholder")
117
+ }))));
118
+ };
119
+ export {
120
+ MarkdownSettings as default
121
+ };
122
+ //# sourceMappingURL=MarkdownSettings-X6SDS35F.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/MarkdownSettings/MarkdownSettings.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { Input, Select, useTranslation } from '@dxos/react-ui';\nimport { Settings as SettingsForm } from '@dxos/react-ui-form';\nimport { type EditorInputMode, EditorInputModes, type EditorViewMode, EditorViewModes } from '@dxos/ui-editor';\n\nimport { meta } from '#meta';\nimport { type Markdown } from '#types';\n\nexport type MarkdownSettingsProps = AppSurface.SettingsArticleProps<Markdown.Settings>;\n\nexport const MarkdownSettings = ({ settings, onSettingsChange }: MarkdownSettingsProps) => {\n const { t } = useTranslation(meta.id);\n\n // TODO(wittjosiah): Add skill test confirmation for entering vim mode.\n return (\n <SettingsForm.Viewport>\n <SettingsForm.Section title={t('settings.title', { ns: meta.id })}>\n <SettingsForm.Item title={t('default-view-mode.label')} description={t('default-view-mode.description')}>\n <Select.Root\n disabled={!onSettingsChange}\n value={settings.defaultViewMode}\n onValueChange={(value) => {\n onSettingsChange?.((s) => ({ ...s, defaultViewMode: value as EditorViewMode }));\n }}\n >\n <Select.TriggerButton disabled={!onSettingsChange} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorViewModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`view-mode.${mode}.label`, { ns: '@dxos/react-ui-editor' })}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('editor-input-mode.label')} description={t('editor-input-mode.description')}>\n <Select.Root\n disabled={!onSettingsChange}\n value={settings.editorInputMode ?? 'default'}\n onValueChange={(value) => {\n onSettingsChange?.((s) => ({ ...s, editorInputMode: value as EditorInputMode }));\n }}\n >\n <Select.TriggerButton\n disabled={!onSettingsChange}\n placeholder={t('select-editor-input-mode.placeholder')}\n />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {EditorInputModes.map((mode) => (\n <Select.Option key={mode} value={mode}>\n {t(`settings.editor-input-mode.${mode}.label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n <Select.Arrow />\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.toolbar.label')} description={t('settings.toolbar.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.toolbar}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, toolbar: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item\n title={t('settings.numbered-headings.label')}\n description={t('settings.numbered-headings.description')}\n >\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.numberedHeadings}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, numberedHeadings: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.folding.label')} description={t('settings.folding.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.folding}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, folding: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item\n title={t('settings.experimental.label')}\n description={t('settings.experimental.description')}\n >\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.experimental}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, experimental: !!checked }))}\n />\n </SettingsForm.Item>\n\n <SettingsForm.Item title={t('settings.debug.label')} description={t('settings.debug.description')}>\n <Input.Switch\n disabled={!onSettingsChange}\n checked={settings.debug}\n onCheckedChange={(checked) => onSettingsChange?.((s) => ({ ...s, debug: !!checked }))}\n />\n </SettingsForm.Item>\n\n {settings.debug && (\n <SettingsForm.Item\n title={t('settings.debug-typewriter.label', { ns: meta.id })}\n description={t('settings.debug-typewriter.description')}\n >\n <Input.TextArea\n disabled={!onSettingsChange}\n rows={5}\n value={settings.typewriter}\n onChange={({ target: { value } }) => onSettingsChange?.((s) => ({ ...s, typewriter: value }))}\n placeholder={t('settings.debug-typewriter.placeholder')}\n />\n </SettingsForm.Item>\n )}\n </SettingsForm.Section>\n </SettingsForm.Viewport>\n );\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "Input", "Select", "useTranslation", "Settings", "SettingsForm", "EditorInputModes", "EditorViewModes", "meta", "MarkdownSettings", "settings", "onSettingsChange", "t", "useTranslation", "meta", "id", "SettingsForm", "Viewport", "Section", "title", "ns", "Item", "description", "Select", "Root", "disabled", "value", "defaultViewMode", "onValueChange", "s", "TriggerButton", "Portal", "Content", "EditorViewModes", "map", "mode", "Option", "key", "Arrow", "editorInputMode", "placeholder", "EditorInputModes", "Input", "Switch", "checked", "toolbar", "onCheckedChange", "numberedHeadings", "folding", "experimental", "debug", "TextArea", "rows", "typewriter", "onChange", "target"]
7
+ }
@@ -1,9 +1,52 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- markdown_blueprint_exports
4
- } from "../chunk-EYAFC4N7.mjs";
5
- import "../chunk-PRV35A7Z.mjs";
3
+ Create,
4
+ Open,
5
+ Update
6
+ } from "../chunk-E4BQCEXF.mjs";
7
+ import "../chunk-4MSJO6IJ.mjs";
8
+ import "../chunk-HSLMI22Q.mjs";
9
+
10
+ // src/blueprints/markdown-blueprint.ts
11
+ import { Blueprint, Template } from "@dxos/blueprints";
12
+ import { trim } from "@dxos/util";
13
+ var BLUEPRINT_KEY = "org.dxos.blueprint.markdown";
14
+ var make = () => Blueprint.make({
15
+ key: BLUEPRINT_KEY,
16
+ name: "Markdown",
17
+ description: "Work with markdown documents. Preferred over raw database operations.",
18
+ tools: Blueprint.toolDefinitions({
19
+ operations: [
20
+ Create,
21
+ Open,
22
+ Update
23
+ ]
24
+ }),
25
+ instructions: Template.make({
26
+ // TODO(wittjosiah): Move example to function input schema annotation.
27
+ source: trim`
28
+ {{! Markdown }}
29
+
30
+ You can create, read and update markdown documents.
31
+ When asked to edit or update documents return updates as a set of compact diff string pairs.
32
+ For each diff, respond with the smallest possible matching span.
33
+
34
+ Example:
35
+ ${"```"}diff
36
+ - "There is a tyop in this sentence."
37
+ + "There is a typo in this sentence."
38
+ - "This id good."
39
+ + "This sentence is really good."
40
+ ${"```"}
41
+ `
42
+ })
43
+ });
44
+ var blueprint = {
45
+ key: BLUEPRINT_KEY,
46
+ make
47
+ };
48
+ var markdown_blueprint_default = blueprint;
6
49
  export {
7
- markdown_blueprint_exports as MarkdownBlueprint
50
+ markdown_blueprint_default as MarkdownBlueprint
8
51
  };
9
52
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
3
+ "sources": ["../../../../src/blueprints/markdown-blueprint.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type AppCapabilities } from '@dxos/app-toolkit';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { trim } from '@dxos/util';\n\nimport { Create, Open, Update } from '../operations/definitions';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.markdown';\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Markdown',\n description: 'Work with markdown documents. Preferred over raw database operations.',\n tools: Blueprint.toolDefinitions({ operations: [Create, Open, Update] }),\n instructions: Template.make({\n // TODO(wittjosiah): Move example to function input schema annotation.\n source: trim`\n {{! Markdown }}\n\n You can create, read and update markdown documents.\n When asked to edit or update documents return updates as a set of compact diff string pairs.\n For each diff, respond with the smallest possible matching span.\n\n Example:\n ${'```'}diff\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id good.\"\n + \"This sentence is really good.\"\n ${'```'}\n `,\n }),\n });\n\nconst blueprint: AppCapabilities.BlueprintDefinition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";;;;;;;;;;AAKA,SAASA,WAAWC,gBAAgB;AACpC,SAASC,YAAY;AAIrB,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXC,UAAUD,KAAK;EACbE,KAAKH;EACLI,MAAM;EACNC,aAAa;EACbC,OAAOJ,UAAUK,gBAAgB;IAAEC,YAAY;MAACC;MAAQC;MAAMC;;EAAQ,CAAA;EACtEC,cAAcC,SAASZ,KAAK;;IAE1Ba,QAAQC;;;;;;;;UAQJ,KAAA;;;;;UAKA,KAAA;;EAEN,CAAA;AACF,CAAA;AAEF,IAAMC,YAAiD;EACrDb,KAAKH;EACLC;AACF;AAEA,IAAA,6BAAee;",
6
+ "names": ["Blueprint", "Template", "trim", "BLUEPRINT_KEY", "make", "Blueprint", "key", "name", "description", "tools", "toolDefinitions", "operations", "Create", "Open", "Update", "instructions", "Template", "source", "trim", "blueprint"]
7
7
  }
@@ -0,0 +1,99 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ __export
4
+ } from "./chunk-HSLMI22Q.mjs";
5
+
6
+ // src/types/capabilities.ts
7
+ import * as Schema from "effect/Schema";
8
+ import { Capability } from "@dxos/app-framework";
9
+ import { meta } from "#meta";
10
+ var MarkdownStateSchema = Schema.mutable(Schema.Struct({
11
+ viewMode: Schema.Record({
12
+ key: Schema.String,
13
+ value: Schema.String
14
+ })
15
+ }));
16
+ (function(MarkdownCapabilities2) {
17
+ MarkdownCapabilities2.Settings = Capability.make(`${meta.id}.capability.settings`);
18
+ MarkdownCapabilities2.State = Capability.make(`${meta.id}.capability.state`);
19
+ MarkdownCapabilities2.EditorState = Capability.make(`${meta.id}.capability.editor-state`);
20
+ MarkdownCapabilities2.EditorViews = Capability.make(`${meta.id}.capability.editor-views`);
21
+ MarkdownCapabilities2.Extensions = Capability.make(`${meta.id}.capability.extensions`);
22
+ })(MarkdownCapabilities || (MarkdownCapabilities = {}));
23
+ var MarkdownCapabilities;
24
+
25
+ // src/types/events.ts
26
+ import { AppActivationEvents } from "@dxos/app-toolkit";
27
+ import { meta as meta2 } from "#meta";
28
+ (function(MarkdownEvents2) {
29
+ MarkdownEvents2.SetupExtensions = AppActivationEvents.createStateEvent(`${meta2.id}.event.setup-extensions`);
30
+ })(MarkdownEvents || (MarkdownEvents = {}));
31
+ var MarkdownEvents;
32
+
33
+ // src/types/Markdown.ts
34
+ var Markdown_exports = {};
35
+ __export(Markdown_exports, {
36
+ Document: () => Document,
37
+ Settings: () => Settings2,
38
+ make: () => make
39
+ });
40
+ import * as Schema3 from "effect/Schema";
41
+ import { Annotation, Obj, Ref, Type } from "@dxos/echo";
42
+ import { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from "@dxos/echo/internal";
43
+ import { Text } from "@dxos/schema";
44
+
45
+ // src/types/Settings.ts
46
+ var Settings_exports = {};
47
+ __export(Settings_exports, {
48
+ Settings: () => Settings
49
+ });
50
+ import * as Schema2 from "effect/Schema";
51
+ import { EditorInputMode, EditorViewMode } from "@dxos/ui-editor/types";
52
+ var Settings = Schema2.mutable(Schema2.Struct({
53
+ defaultViewMode: EditorViewMode,
54
+ editorInputMode: Schema2.optional(EditorInputMode),
55
+ experimental: Schema2.optional(Schema2.Boolean),
56
+ debug: Schema2.optional(Schema2.Boolean),
57
+ toolbar: Schema2.optional(Schema2.Boolean),
58
+ typewriter: Schema2.optional(Schema2.String),
59
+ // TODO(burdon): Per document settings.
60
+ numberedHeadings: Schema2.optional(Schema2.Boolean),
61
+ folding: Schema2.optional(Schema2.Boolean)
62
+ }));
63
+
64
+ // src/types/Markdown.ts
65
+ var Settings2 = Settings;
66
+ var Document = Schema3.Struct({
67
+ name: Schema3.optional(Schema3.String),
68
+ description: Schema3.optional(Schema3.String),
69
+ fallbackName: Schema3.String.pipe(FormInputAnnotation.set(false), Schema3.optional),
70
+ content: Ref.Ref(Text.Text).pipe(FormInputAnnotation.set(false))
71
+ }).pipe(Type.object({
72
+ typename: "org.dxos.type.document",
73
+ version: "0.1.0"
74
+ }), LabelAnnotation.set([
75
+ "name",
76
+ "fallbackName"
77
+ ]), DescriptionAnnotation.set("description"), Annotation.IconAnnotation.set({
78
+ icon: "ph--text-aa--regular",
79
+ hue: "indigo"
80
+ }));
81
+ var make = ({ content = "", ...props } = {}) => {
82
+ const doc = Obj.make(Document, {
83
+ ...props,
84
+ content: Ref.make(Text.make({
85
+ content
86
+ }))
87
+ });
88
+ Obj.setParent(doc.content.target, doc);
89
+ return doc;
90
+ };
91
+
92
+ export {
93
+ MarkdownStateSchema,
94
+ MarkdownCapabilities,
95
+ MarkdownEvents,
96
+ Settings_exports,
97
+ Markdown_exports
98
+ };
99
+ //# sourceMappingURL=chunk-4MSJO6IJ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/capabilities.ts", "../../../src/types/events.ts", "../../../src/types/Markdown.ts", "../../../src/types/Settings.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type EditorView } from '@codemirror/view';\nimport { type Atom } from '@effect-atom/atom-react';\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { type EditorStateStore, type EditorViewMode } from '@dxos/ui-editor';\n\nimport { meta } from '#meta';\n\nimport type * as Markdown from './Markdown';\nimport { type MarkdownExtensionProvider } from './types';\n\n/** Schema for persisted markdown state. */\nexport const MarkdownStateSchema = Schema.mutable(\n Schema.Struct({\n viewMode: Schema.Record({ key: Schema.String, value: Schema.String }),\n }),\n);\n\nexport type MarkdownState = {\n viewMode: Record<string, EditorViewMode>;\n};\n\nexport type EditorViewEntry = { view: EditorView; documentId: string };\n\nexport type EditorViewRegistry = {\n register: (attendableId: string, view: EditorView, documentId: string) => void;\n unregister: (attendableId: string) => void;\n get: (attendableId: string) => EditorViewEntry | undefined;\n};\n\nexport namespace MarkdownCapabilities {\n export const Settings = Capability.make<Atom.Writable<Markdown.Settings>>(`${meta.id}.capability.settings`);\n\n /** Persisted state atom for view mode per document. */\n export const State = Capability.make<Atom.Writable<MarkdownState>>(`${meta.id}.capability.state`);\n\n /** Editor state store for cursor positions, scroll state, etc. */\n export const EditorState = Capability.make<EditorStateStore>(`${meta.id}.capability.editor-state`);\n\n /** Registry of active EditorView instances keyed by attendable ID. */\n export const EditorViews = Capability.make<EditorViewRegistry>(`${meta.id}.capability.editor-views`);\n\n // TODO(burdon): Move to ./types (external API)?\n export const Extensions = Capability.make<MarkdownExtensionProvider[]>(`${meta.id}.capability.extensions`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type ActivationEvent } from '@dxos/app-framework';\nimport { AppActivationEvents } from '@dxos/app-toolkit';\n\nimport { meta } from '#meta';\n\nexport namespace MarkdownEvents {\n export const SetupExtensions: ActivationEvent.ActivationEvent = AppActivationEvents.createStateEvent(\n `${meta.id}.event.setup-extensions`,\n );\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Annotation, Obj, Ref, Type } from '@dxos/echo';\nimport { DescriptionAnnotation, FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { Text } from '@dxos/schema';\n\n// Re-export Settings as merged const/type (not as namespace).\nimport * as SettingsModule from './Settings';\nexport const Settings = SettingsModule.Settings;\nexport type Settings = SettingsModule.Settings;\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: Ref.Ref(Text.Text).pipe(FormInputAnnotation.set(false)),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.document',\n version: '0.1.0',\n }),\n LabelAnnotation.set(['name', 'fallbackName']),\n DescriptionAnnotation.set('description'),\n Annotation.IconAnnotation.set({\n icon: 'ph--text-aa--regular',\n hue: 'indigo',\n }),\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 const doc = Obj.make(Document, { ...props, content: Ref.make(Text.make({ content })) });\n // TODO(dmaretskyi): We need a better way to set parents when creating hierarchies.\n Obj.setParent(doc.content.target!, doc);\n return doc;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// @import-as-namespace\n\nimport * as Schema from 'effect/Schema';\n\nimport { EditorInputMode, EditorViewMode } from '@dxos/ui-editor/types';\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 type Settings = Schema.Schema.Type<typeof Settings>;\n"],
5
+ "mappings": ";;;;;;AAMA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAG3B,SAASC,YAAY;AAMd,IAAMC,sBAA6BC,eACjCC,cAAO;EACZC,UAAiBC,cAAO;IAAEC,KAAYC;IAAQC,OAAcD;EAAO,CAAA;AACrE,CAAA,CAAA;UAeeE,uBAAAA;wBACFC,WAAWC,WAAWC,KAAuC,GAAGC,KAAKC,EAAE,sBAAsB;wBAG7FC,QAAQJ,WAAWC,KAAmC,GAAGC,KAAKC,EAAE,mBAAmB;wBAGnFE,cAAcL,WAAWC,KAAuB,GAAGC,KAAKC,EAAE,0BAA0B;wBAGpFG,cAAcN,WAAWC,KAAyB,GAAGC,KAAKC,EAAE,0BAA0B;wBAGtFI,aAAaP,WAAWC,KAAkC,GAAGC,KAAKC,EAAE,wBAAwB;AAC3G,GAdiBL,yBAAAA,uBAAAA,CAAAA,EAAAA;;;;AC9BjB,SAASU,2BAA2B;AAEpC,SAASC,QAAAA,aAAY;UAEJC,iBAAAA;kBACFC,kBAAmDC,oBAAoBC,iBAClF,GAAGC,MAAKC,EAAE,yBAAyB;AAEvC,GAJiBL,mBAAAA,iBAAAA,CAAAA,EAAAA;;;;ACTjB;;;kBAAAM;EAAA;;AAIA,YAAYC,aAAY;AAExB,SAASC,YAAYC,KAAKC,KAAKC,YAAY;AAC3C,SAASC,uBAAuBC,qBAAqBC,uBAAuB;AAC5E,SAASC,YAAY;;;ACRrB;;;;AAMA,YAAYC,aAAY;AAExB,SAASC,iBAAiBC,sBAAsB;AAKzC,IAAMC,WAAkBC,gBACtBC,eAAO;EACZC,iBAAiBC;EACjBC,iBAAwBC,iBAASC,eAAAA;EACjCC,cAAqBF,iBAAgBG,eAAO;EAC5CC,OAAcJ,iBAAgBG,eAAO;EACrCE,SAAgBL,iBAAgBG,eAAO;EACvCG,YAAmBN,iBAAgBO,cAAM;;EAEzCC,kBAAyBR,iBAAgBG,eAAO;EAChDM,SAAgBT,iBAAgBG,eAAO;AACzC,CAAA,CAAA;;;ADZK,IAAMO,YAA0BA;AAMhC,IAAMC,WAAkBC,eAAO;EACpCC,MAAaC,iBAAgBC,cAAM;EACnCC,aAAoBF,iBAAgBC,cAAM;EAC1CE,cAAqBF,eAAOG,KAAKC,oBAAoBC,IAAI,KAAA,GAAeN,gBAAQ;EAChFO,SAASC,IAAIA,IAAIC,KAAKA,IAAI,EAAEL,KAAKC,oBAAoBC,IAAI,KAAA,CAAA;AAC3D,CAAA,EAAGF,KACDM,KAAKC,OAAO;EACVC,UAAU;EACVC,SAAS;AACX,CAAA,GACAC,gBAAgBR,IAAI;EAAC;EAAQ;CAAe,GAC5CS,sBAAsBT,IAAI,aAAA,GAC1BU,WAAWC,eAAeX,IAAI;EAC5BY,MAAM;EACNC,KAAK;AACP,CAAA,CAAA;AAQK,IAAMC,OAAO,CAAC,EACnBb,UAAU,IACV,GAAGc,MAAAA,IACiE,CAAC,MAAC;AACtE,QAAMC,MAAMC,IAAIH,KAAKvB,UAAU;IAAE,GAAGwB;IAAOd,SAASC,IAAIY,KAAKX,KAAKW,KAAK;MAAEb;IAAQ,CAAA,CAAA;EAAI,CAAA;AAErFgB,MAAIC,UAAUF,IAAIf,QAAQkB,QAASH,GAAAA;AACnC,SAAOA;AACT;",
6
+ "names": ["Schema", "Capability", "meta", "MarkdownStateSchema", "mutable", "Struct", "viewMode", "Record", "key", "String", "value", "MarkdownCapabilities", "Settings", "Capability", "make", "meta", "id", "State", "EditorState", "EditorViews", "Extensions", "AppActivationEvents", "meta", "MarkdownEvents", "SetupExtensions", "AppActivationEvents", "createStateEvent", "meta", "id", "Settings", "Schema", "Annotation", "Obj", "Ref", "Type", "DescriptionAnnotation", "FormInputAnnotation", "LabelAnnotation", "Text", "Schema", "EditorInputMode", "EditorViewMode", "Settings", "mutable", "Struct", "defaultViewMode", "EditorViewMode", "editorInputMode", "optional", "EditorInputMode", "experimental", "Boolean", "debug", "toolbar", "typewriter", "String", "numberedHeadings", "folding", "Settings", "Document", "Struct", "name", "optional", "String", "description", "fallbackName", "pipe", "FormInputAnnotation", "set", "content", "Ref", "Text", "Type", "object", "typename", "version", "LabelAnnotation", "DescriptionAnnotation", "Annotation", "IconAnnotation", "icon", "hue", "make", "props", "doc", "Obj", "setParent", "target"]
7
+ }
@@ -0,0 +1,159 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ Markdown_exports
4
+ } from "./chunk-4MSJO6IJ.mjs";
5
+ import {
6
+ __export
7
+ } from "./chunk-HSLMI22Q.mjs";
8
+
9
+ // src/operations/definitions.ts
10
+ var definitions_exports = {};
11
+ __export(definitions_exports, {
12
+ Create: () => Create,
13
+ CreateMarkdown: () => CreateMarkdown,
14
+ Open: () => Open,
15
+ ScrollToAnchor: () => ScrollToAnchor,
16
+ SetViewMode: () => SetViewMode,
17
+ Update: () => Update
18
+ });
19
+ import * as Schema from "effect/Schema";
20
+ import { Capability } from "@dxos/app-framework";
21
+ import { Database, Ref } from "@dxos/echo";
22
+ import { Operation } from "@dxos/operation";
23
+ import { EditorViewMode } from "@dxos/ui-editor/types";
24
+ import { trim } from "@dxos/util";
25
+ import { meta } from "#meta";
26
+ var MARKDOWN_OPERATION = `${meta.id}.operation`;
27
+ var Edit = Schema.Struct({
28
+ oldString: Schema.String.annotations({
29
+ description: "The text to find in the document."
30
+ }),
31
+ newString: Schema.String.annotations({
32
+ description: "The text to replace it with."
33
+ }),
34
+ replaceAll: Schema.optional(Schema.Boolean).annotations({
35
+ description: "If true, replaces all occurrences. Defaults to false (first occurrence only)."
36
+ })
37
+ });
38
+ var Create = Operation.make({
39
+ meta: {
40
+ key: "org.dxos.function.markdown.create",
41
+ name: "Create",
42
+ description: "Creates a new markdown document and adds it to the space."
43
+ },
44
+ input: Schema.Struct({
45
+ name: Schema.String,
46
+ content: Schema.String
47
+ }),
48
+ output: Schema.Struct({
49
+ id: Schema.String.annotations({
50
+ description: "The DXN of the created document."
51
+ })
52
+ }),
53
+ services: [
54
+ Database.Service
55
+ ]
56
+ });
57
+ var CreateMarkdown = Operation.make({
58
+ meta: {
59
+ key: `${MARKDOWN_OPERATION}.create`,
60
+ name: "Create Markdown Document"
61
+ },
62
+ services: [
63
+ Capability.Service
64
+ ],
65
+ input: Schema.Struct({
66
+ name: Schema.optional(Schema.String),
67
+ content: Schema.optional(Schema.String)
68
+ }),
69
+ output: Schema.Struct({
70
+ object: Markdown_exports.Document
71
+ })
72
+ });
73
+ var Open = Operation.make({
74
+ meta: {
75
+ key: "org.dxos.function.markdown.open",
76
+ name: "Open",
77
+ description: "Opens and reads the contents of a new markdown document."
78
+ },
79
+ input: Schema.Struct({
80
+ doc: Ref.Ref(Markdown_exports.Document).annotations({
81
+ description: "The ID of the markdown document."
82
+ })
83
+ }),
84
+ output: Schema.Struct({
85
+ content: Schema.String
86
+ }),
87
+ services: [
88
+ Database.Service
89
+ ]
90
+ });
91
+ var ScrollToAnchor = Operation.make({
92
+ meta: {
93
+ key: `${MARKDOWN_OPERATION}.scroll-to-anchor`,
94
+ name: "Scroll To Anchor"
95
+ },
96
+ services: [
97
+ Capability.Service
98
+ ],
99
+ input: Schema.Struct({
100
+ subject: Schema.String.annotations({
101
+ description: "Attendable ID of the markdown editor."
102
+ }),
103
+ cursor: Schema.String.annotations({
104
+ description: "Cursor position to scroll to."
105
+ }),
106
+ ref: Schema.optional(Schema.String.annotations({
107
+ description: "Reference ID (e.g. thread ID)."
108
+ }))
109
+ }),
110
+ output: Schema.Void
111
+ });
112
+ var SetViewMode = Operation.make({
113
+ meta: {
114
+ key: `${MARKDOWN_OPERATION}.set-view-mode`,
115
+ name: "Set View Mode"
116
+ },
117
+ services: [
118
+ Capability.Service
119
+ ],
120
+ input: Schema.Struct({
121
+ id: Schema.String,
122
+ viewMode: EditorViewMode
123
+ }),
124
+ output: Schema.Void
125
+ });
126
+ var Update = Operation.make({
127
+ meta: {
128
+ key: "org.dxos.function.markdown.update",
129
+ name: "Update",
130
+ description: trim`
131
+ Applies a set of edits to the markdown document.
132
+ `
133
+ },
134
+ input: Schema.Struct({
135
+ doc: Ref.Ref(Markdown_exports.Document).annotations({
136
+ description: "The ID of the markdown document."
137
+ }),
138
+ edits: Schema.Array(Edit).annotations({
139
+ description: "The edits to apply to the document. Each edit finds oldString and replaces it with newString."
140
+ })
141
+ }),
142
+ output: Schema.Struct({
143
+ newContent: Schema.String
144
+ }),
145
+ services: [
146
+ Database.Service
147
+ ]
148
+ });
149
+
150
+ export {
151
+ Create,
152
+ CreateMarkdown,
153
+ Open,
154
+ ScrollToAnchor,
155
+ SetViewMode,
156
+ Update,
157
+ definitions_exports
158
+ };
159
+ //# sourceMappingURL=chunk-E4BQCEXF.mjs.map