@dxos/plugin-markdown 0.8.4-main.2e9d522 → 0.8.4-main.548089c

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 (288) hide show
  1. package/dist/lib/browser/MarkdownCard-L3BS2SED.mjs +12 -0
  2. package/dist/lib/browser/MarkdownCard-L3BS2SED.mjs.map +7 -0
  3. package/dist/lib/browser/MarkdownContainer-KF3YL6CI.mjs +15 -0
  4. package/dist/lib/browser/MarkdownContainer-KF3YL6CI.mjs.map +7 -0
  5. package/dist/lib/browser/{anchor-sort-UKJJ7ZNP.mjs → anchor-sort-3HGPGCOO.mjs} +7 -8
  6. package/dist/lib/browser/anchor-sort-3HGPGCOO.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-serializer-ICLAF662.mjs → app-graph-serializer-POZN234F.mjs} +15 -16
  8. package/dist/lib/browser/app-graph-serializer-POZN234F.mjs.map +7 -0
  9. package/dist/lib/browser/blueprint-definition-GIPKFDY5.mjs +13 -0
  10. package/dist/lib/browser/blueprint-definition-GIPKFDY5.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-LHDCHDBW.mjs → chunk-22XSSNBS.mjs} +10 -6
  12. package/dist/lib/browser/chunk-22XSSNBS.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-2YCH7AOL.mjs +827 -0
  14. package/dist/lib/browser/chunk-2YCH7AOL.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-BU7S64EA.mjs +95 -0
  18. package/dist/lib/browser/chunk-BU7S64EA.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-LFML7LC6.mjs → chunk-GH6GQSBL.mjs} +14 -14
  20. package/dist/lib/browser/chunk-GH6GQSBL.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-IBCHVMZW.mjs +16 -0
  22. package/dist/lib/browser/chunk-IBCHVMZW.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-IGS3RCFE.mjs +20 -0
  24. package/dist/lib/browser/chunk-IGS3RCFE.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-QYSEJ5GP.mjs +79 -0
  26. package/dist/lib/browser/chunk-QYSEJ5GP.mjs.map +7 -0
  27. package/dist/lib/browser/chunk-Y53FQREH.mjs +150 -0
  28. package/dist/lib/browser/chunk-Y53FQREH.mjs.map +7 -0
  29. package/dist/lib/browser/index.mjs +41 -27
  30. package/dist/lib/browser/index.mjs.map +3 -3
  31. package/dist/lib/browser/intent-resolver-Z5L7TXUK.mjs +62 -0
  32. package/dist/lib/browser/intent-resolver-Z5L7TXUK.mjs.map +7 -0
  33. package/dist/lib/browser/meta.json +1 -1
  34. package/dist/lib/browser/react-surface-45NYBFCG.mjs +217 -0
  35. package/dist/lib/browser/react-surface-45NYBFCG.mjs.map +7 -0
  36. package/dist/lib/browser/{settings-KN75ZQY6.mjs → settings-TZUDB5EW.mjs} +7 -7
  37. package/dist/lib/browser/settings-TZUDB5EW.mjs.map +7 -0
  38. package/dist/lib/browser/{state-LZWTAS65.mjs → state-BTUKVZHY.mjs} +9 -9
  39. package/dist/lib/browser/state-BTUKVZHY.mjs.map +7 -0
  40. package/dist/lib/browser/toolkit.mjs +13 -0
  41. package/dist/lib/browser/toolkit.mjs.map +7 -0
  42. package/dist/lib/browser/types/index.mjs +6 -14
  43. package/dist/lib/node-esm/MarkdownCard-UUQLN6XK.mjs +13 -0
  44. package/dist/lib/node-esm/MarkdownCard-UUQLN6XK.mjs.map +7 -0
  45. package/dist/lib/node-esm/MarkdownContainer-PQBLVUW4.mjs +16 -0
  46. package/dist/lib/node-esm/MarkdownContainer-PQBLVUW4.mjs.map +7 -0
  47. package/dist/lib/node-esm/{anchor-sort-IPIS5D5B.mjs → anchor-sort-PCDXEBJ2.mjs} +7 -8
  48. package/dist/lib/node-esm/anchor-sort-PCDXEBJ2.mjs.map +7 -0
  49. package/dist/lib/node-esm/{app-graph-serializer-FLBXQKKR.mjs → app-graph-serializer-NF65JYAS.mjs} +15 -16
  50. package/dist/lib/node-esm/app-graph-serializer-NF65JYAS.mjs.map +7 -0
  51. package/dist/lib/node-esm/blueprint-definition-ENKJZYQS.mjs +14 -0
  52. package/dist/lib/node-esm/blueprint-definition-ENKJZYQS.mjs.map +7 -0
  53. package/dist/lib/node-esm/chunk-2PYNDVNK.mjs +828 -0
  54. package/dist/lib/node-esm/chunk-2PYNDVNK.mjs.map +7 -0
  55. package/dist/lib/node-esm/chunk-6XVGFGRW.mjs +96 -0
  56. package/dist/lib/node-esm/chunk-6XVGFGRW.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-VIR2ABYE.mjs → chunk-AMHACOXW.mjs} +10 -6
  58. package/dist/lib/node-esm/chunk-AMHACOXW.mjs.map +7 -0
  59. package/dist/lib/node-esm/chunk-ENYE7TQ5.mjs +22 -0
  60. package/dist/lib/node-esm/chunk-ENYE7TQ5.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-HAIEWPU7.mjs +151 -0
  64. package/dist/lib/node-esm/chunk-HAIEWPU7.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-NGYJNQ6A.mjs +80 -0
  66. package/dist/lib/node-esm/chunk-NGYJNQ6A.mjs.map +7 -0
  67. package/dist/lib/node-esm/{chunk-CWTFQSN7.mjs → chunk-PLZ7EVCT.mjs} +14 -14
  68. package/dist/lib/node-esm/chunk-PLZ7EVCT.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs +29 -0
  70. package/dist/lib/node-esm/chunk-SHAMSMKQ.mjs.map +7 -0
  71. package/dist/lib/node-esm/index.mjs +41 -27
  72. package/dist/lib/node-esm/index.mjs.map +3 -3
  73. package/dist/lib/node-esm/intent-resolver-6B3PFQ5F.mjs +63 -0
  74. package/dist/lib/node-esm/intent-resolver-6B3PFQ5F.mjs.map +7 -0
  75. package/dist/lib/node-esm/meta.json +1 -1
  76. package/dist/lib/node-esm/react-surface-CPMCARNW.mjs +218 -0
  77. package/dist/lib/node-esm/react-surface-CPMCARNW.mjs.map +7 -0
  78. package/dist/lib/node-esm/{settings-KVP7TVX7.mjs → settings-CJ3T5EX4.mjs} +7 -7
  79. package/dist/lib/node-esm/settings-CJ3T5EX4.mjs.map +7 -0
  80. package/dist/lib/node-esm/{state-NW3W4JCQ.mjs → state-K6EH7SRZ.mjs} +9 -9
  81. package/dist/lib/node-esm/state-K6EH7SRZ.mjs.map +7 -0
  82. package/dist/lib/node-esm/toolkit.mjs +14 -0
  83. package/dist/lib/node-esm/toolkit.mjs.map +7 -0
  84. package/dist/lib/node-esm/types/index.mjs +6 -14
  85. package/dist/types/src/MarkdownPlugin.d.ts +1 -1
  86. package/dist/types/src/MarkdownPlugin.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/anchor-sort.d.ts +2 -4
  88. package/dist/types/src/capabilities/anchor-sort.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  90. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  91. package/dist/types/src/capabilities/artifact-definition.d.ts +1 -9
  92. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -1
  93. package/dist/types/src/capabilities/blueprint-definition.d.ts +7 -0
  94. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  95. package/dist/types/src/capabilities/capabilities.d.ts +1 -1
  96. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/index.d.ts +10 -12
  98. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  100. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  102. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/settings.d.ts +1 -1
  104. package/dist/types/src/capabilities/state.d.ts +2 -2
  105. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  106. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts +7 -0
  107. package/dist/types/src/components/MarkdownCard/MarkdownCard.d.ts.map +1 -0
  108. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts +9 -0
  109. package/dist/types/src/components/MarkdownCard/MarkdownCard.stories.d.ts.map +1 -0
  110. package/dist/types/src/components/MarkdownCard/index.d.ts +4 -0
  111. package/dist/types/src/components/MarkdownCard/index.d.ts.map +1 -0
  112. package/dist/types/src/components/MarkdownContainer.d.ts +9 -13
  113. package/dist/types/src/components/MarkdownContainer.d.ts.map +1 -1
  114. package/dist/types/src/components/MarkdownContainer.stories.d.ts +54 -5
  115. package/dist/types/src/components/MarkdownContainer.stories.d.ts.map +1 -1
  116. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts +11 -0
  117. package/dist/types/src/components/MarkdownEditor/FileUpload.d.ts.map +1 -0
  118. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts +42 -23
  119. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  120. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts +8 -15
  121. package/dist/types/src/components/MarkdownEditor/MarkdownEditor.stories.d.ts.map +1 -1
  122. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts +26 -0
  123. package/dist/types/src/components/MarkdownEditor/MarkdownEditorContent.d.ts.map +1 -0
  124. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts +12 -0
  125. package/dist/types/src/components/MarkdownEditor/MarkdownEditorToolbar.d.ts.map +1 -0
  126. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts +2 -2
  127. package/dist/types/src/components/MarkdownSettings/MarkdownSettings.d.ts.map +1 -1
  128. package/dist/types/src/components/Suggestions.stories.d.ts +3 -4
  129. package/dist/types/src/components/Suggestions.stories.d.ts.map +1 -1
  130. package/dist/types/src/components/index.d.ts +4 -2
  131. package/dist/types/src/components/index.d.ts.map +1 -1
  132. package/dist/types/src/events.d.ts.map +1 -1
  133. package/dist/types/src/functions/create.d.ts +8 -0
  134. package/dist/types/src/functions/create.d.ts.map +1 -0
  135. package/dist/types/src/functions/create.test.d.ts +2 -0
  136. package/dist/types/src/functions/create.test.d.ts.map +1 -0
  137. package/dist/types/src/functions/index.d.ts +18 -0
  138. package/dist/types/src/functions/index.d.ts.map +1 -0
  139. package/dist/types/src/functions/open.d.ts +7 -0
  140. package/dist/types/src/functions/open.d.ts.map +1 -0
  141. package/dist/types/src/functions/update.d.ts +6 -0
  142. package/dist/types/src/functions/update.d.ts.map +1 -0
  143. package/dist/types/src/functions/update.test.d.ts +2 -0
  144. package/dist/types/src/functions/update.test.d.ts.map +1 -0
  145. package/dist/types/src/hooks/index.d.ts +3 -0
  146. package/dist/types/src/hooks/index.d.ts.map +1 -1
  147. package/dist/types/src/hooks/useExtensions.d.ts +21 -0
  148. package/dist/types/src/hooks/useExtensions.d.ts.map +1 -0
  149. package/dist/types/src/hooks/useLinkQuery.d.ts +4 -0
  150. package/dist/types/src/hooks/useLinkQuery.d.ts.map +1 -0
  151. package/dist/types/src/hooks/usePopoverMenuOptions.d.ts +9 -0
  152. package/dist/types/src/hooks/usePopoverMenuOptions.d.ts.map +1 -0
  153. package/dist/types/src/hooks/useSelectCurrentThread.d.ts +1 -1
  154. package/dist/types/src/hooks/useSelectCurrentThread.d.ts.map +1 -1
  155. package/dist/types/src/index.d.ts +2 -1
  156. package/dist/types/src/index.d.ts.map +1 -1
  157. package/dist/types/src/meta.d.ts +0 -1
  158. package/dist/types/src/meta.d.ts.map +1 -1
  159. package/dist/types/src/testing.d.ts +6 -0
  160. package/dist/types/src/testing.d.ts.map +1 -0
  161. package/dist/types/src/toolkit.d.ts +3 -0
  162. package/dist/types/src/toolkit.d.ts.map +1 -0
  163. package/dist/types/src/translations.d.ts +6 -2
  164. package/dist/types/src/translations.d.ts.map +1 -1
  165. package/dist/types/src/types/Markdown.d.ts +45 -0
  166. package/dist/types/src/types/Markdown.d.ts.map +1 -0
  167. package/dist/types/src/types/MarkdownAction.d.ts +34 -0
  168. package/dist/types/src/types/MarkdownAction.d.ts.map +1 -0
  169. package/dist/types/src/types/index.d.ts +2 -1
  170. package/dist/types/src/types/index.d.ts.map +1 -1
  171. package/dist/types/src/types/types.d.ts +3 -59
  172. package/dist/types/src/types/types.d.ts.map +1 -1
  173. package/dist/types/src/util.d.ts +14 -5
  174. package/dist/types/src/util.d.ts.map +1 -1
  175. package/dist/types/tsconfig.tsbuildinfo +1 -1
  176. package/package.json +74 -53
  177. package/src/MarkdownPlugin.tsx +103 -96
  178. package/src/capabilities/anchor-sort.ts +5 -5
  179. package/src/capabilities/app-graph-serializer.ts +12 -10
  180. package/src/capabilities/artifact-definition.ts +22 -26
  181. package/src/capabilities/blueprint-definition.ts +43 -0
  182. package/src/capabilities/capabilities.ts +6 -4
  183. package/src/capabilities/index.ts +3 -2
  184. package/src/capabilities/intent-resolver.ts +16 -21
  185. package/src/capabilities/react-surface.tsx +56 -76
  186. package/src/capabilities/settings.ts +3 -3
  187. package/src/capabilities/state.ts +8 -8
  188. package/src/components/MarkdownCard/MarkdownCard.stories.tsx +76 -0
  189. package/src/components/MarkdownCard/MarkdownCard.tsx +88 -0
  190. package/src/components/MarkdownCard/index.ts +9 -0
  191. package/src/components/MarkdownContainer.stories.tsx +81 -48
  192. package/src/components/MarkdownContainer.tsx +81 -222
  193. package/src/components/MarkdownEditor/FileUpload.tsx +63 -0
  194. package/src/components/MarkdownEditor/MarkdownEditor.stories.tsx +58 -34
  195. package/src/components/MarkdownEditor/MarkdownEditor.tsx +220 -271
  196. package/src/components/MarkdownEditor/MarkdownEditorContent.tsx +134 -0
  197. package/src/components/MarkdownEditor/MarkdownEditorToolbar.tsx +63 -0
  198. package/src/components/MarkdownSettings/MarkdownSettings.tsx +81 -78
  199. package/src/components/Suggestions.stories.tsx +61 -57
  200. package/src/components/index.ts +3 -1
  201. package/src/events.ts +2 -2
  202. package/src/functions/create.conversations.json +1 -0
  203. package/src/functions/create.test.ts +128 -0
  204. package/src/functions/create.ts +34 -0
  205. package/src/functions/index.ts +13 -0
  206. package/src/functions/open.ts +32 -0
  207. package/src/functions/update.conversations.json +1 -0
  208. package/src/functions/update.test.ts +151 -0
  209. package/src/functions/update.ts +37 -0
  210. package/src/hooks/index.ts +3 -0
  211. package/src/{extensions.tsx → hooks/useExtensions.tsx} +65 -114
  212. package/src/hooks/useLinkQuery.ts +83 -0
  213. package/src/hooks/usePopoverMenuOptions.ts +71 -0
  214. package/src/hooks/useSelectCurrentThread.tsx +17 -7
  215. package/src/index.ts +4 -1
  216. package/src/meta.ts +7 -8
  217. package/src/testing.ts +27 -0
  218. package/src/toolkit.ts +6 -0
  219. package/src/translations.ts +6 -2
  220. package/src/types/Markdown.ts +58 -0
  221. package/src/types/MarkdownAction.ts +29 -0
  222. package/src/types/index.ts +3 -1
  223. package/src/types/types.ts +6 -50
  224. package/src/util.tsx +28 -9
  225. package/dist/lib/browser/MarkdownContainer-F3WEEIBX.mjs +0 -778
  226. package/dist/lib/browser/MarkdownContainer-F3WEEIBX.mjs.map +0 -7
  227. package/dist/lib/browser/MarkdownPreview-S3C7CGAV.mjs +0 -80
  228. package/dist/lib/browser/MarkdownPreview-S3C7CGAV.mjs.map +0 -7
  229. package/dist/lib/browser/anchor-sort-UKJJ7ZNP.mjs.map +0 -7
  230. package/dist/lib/browser/app-graph-serializer-ICLAF662.mjs.map +0 -7
  231. package/dist/lib/browser/artifact-definition-R2YYWOPN.mjs +0 -145
  232. package/dist/lib/browser/artifact-definition-R2YYWOPN.mjs.map +0 -7
  233. package/dist/lib/browser/chunk-777RIED6.mjs +0 -16
  234. package/dist/lib/browser/chunk-777RIED6.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-EPTSAJZM.mjs +0 -22
  236. package/dist/lib/browser/chunk-EPTSAJZM.mjs.map +0 -7
  237. package/dist/lib/browser/chunk-LFML7LC6.mjs.map +0 -7
  238. package/dist/lib/browser/chunk-LHDCHDBW.mjs.map +0 -7
  239. package/dist/lib/browser/chunk-PHTD5DTR.mjs +0 -20
  240. package/dist/lib/browser/chunk-PHTD5DTR.mjs.map +0 -7
  241. package/dist/lib/browser/chunk-UANWRJZU.mjs +0 -79
  242. package/dist/lib/browser/chunk-UANWRJZU.mjs.map +0 -7
  243. package/dist/lib/browser/intent-resolver-3MXYO3MW.mjs +0 -64
  244. package/dist/lib/browser/intent-resolver-3MXYO3MW.mjs.map +0 -7
  245. package/dist/lib/browser/react-surface-C3Z423TV.mjs +0 -206
  246. package/dist/lib/browser/react-surface-C3Z423TV.mjs.map +0 -7
  247. package/dist/lib/browser/settings-KN75ZQY6.mjs.map +0 -7
  248. package/dist/lib/browser/state-LZWTAS65.mjs.map +0 -7
  249. package/dist/lib/node-esm/MarkdownContainer-VOUHL6IU.mjs +0 -779
  250. package/dist/lib/node-esm/MarkdownContainer-VOUHL6IU.mjs.map +0 -7
  251. package/dist/lib/node-esm/MarkdownPreview-77UFEWXT.mjs +0 -81
  252. package/dist/lib/node-esm/MarkdownPreview-77UFEWXT.mjs.map +0 -7
  253. package/dist/lib/node-esm/anchor-sort-IPIS5D5B.mjs.map +0 -7
  254. package/dist/lib/node-esm/app-graph-serializer-FLBXQKKR.mjs.map +0 -7
  255. package/dist/lib/node-esm/artifact-definition-MLTAY4LK.mjs +0 -146
  256. package/dist/lib/node-esm/artifact-definition-MLTAY4LK.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-7X6TPTJK.mjs +0 -22
  258. package/dist/lib/node-esm/chunk-7X6TPTJK.mjs.map +0 -7
  259. package/dist/lib/node-esm/chunk-ACFGXH2K.mjs.map +0 -7
  260. package/dist/lib/node-esm/chunk-CWTFQSN7.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-CXG7GMYP.mjs +0 -24
  262. package/dist/lib/node-esm/chunk-CXG7GMYP.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-JEEQLO7C.mjs +0 -80
  264. package/dist/lib/node-esm/chunk-JEEQLO7C.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-VIR2ABYE.mjs.map +0 -7
  266. package/dist/lib/node-esm/intent-resolver-BZYWV53A.mjs +0 -65
  267. package/dist/lib/node-esm/intent-resolver-BZYWV53A.mjs.map +0 -7
  268. package/dist/lib/node-esm/react-surface-TTTBYNI2.mjs +0 -207
  269. package/dist/lib/node-esm/react-surface-TTTBYNI2.mjs.map +0 -7
  270. package/dist/lib/node-esm/settings-KVP7TVX7.mjs.map +0 -7
  271. package/dist/lib/node-esm/state-NW3W4JCQ.mjs.map +0 -7
  272. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts +0 -6
  273. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.d.ts.map +0 -1
  274. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts +0 -42
  275. package/dist/types/src/components/MarkdownPreview/MarkdownPreview.stories.d.ts.map +0 -1
  276. package/dist/types/src/components/MarkdownPreview/index.d.ts +0 -4
  277. package/dist/types/src/components/MarkdownPreview/index.d.ts.map +0 -1
  278. package/dist/types/src/components/Toolbar.stories.d.ts +0 -11
  279. package/dist/types/src/components/Toolbar.stories.d.ts.map +0 -1
  280. package/dist/types/src/extensions.d.ts +0 -24
  281. package/dist/types/src/extensions.d.ts.map +0 -1
  282. package/dist/types/src/types/schema.d.ts +0 -35
  283. package/dist/types/src/types/schema.d.ts.map +0 -1
  284. package/src/components/MarkdownPreview/MarkdownPreview.stories.tsx +0 -81
  285. package/src/components/MarkdownPreview/MarkdownPreview.tsx +0 -73
  286. package/src/components/MarkdownPreview/index.ts +0 -9
  287. package/src/components/Toolbar.stories.tsx +0 -113
  288. package/src/types/schema.ts +0 -39
@@ -1,73 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { pipe } from 'effect';
6
- import React, { useCallback } from 'react';
7
-
8
- import { chain, createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';
9
- import { Obj } from '@dxos/echo';
10
- import { type PreviewProps } from '@dxos/plugin-preview';
11
- import { fullyQualifiedId } from '@dxos/react-client/echo';
12
- import { Button, Icon, useTranslation } from '@dxos/react-ui';
13
- import { Card } from '@dxos/react-ui-stack';
14
- import { DataType } from '@dxos/schema';
15
-
16
- import { MARKDOWN_PLUGIN } from '../../meta';
17
- import { DocumentType } from '../../types';
18
- import { getAbstract, getFallbackName } from '../../util';
19
-
20
- // TODO(burdon): Factor out.
21
- const getTitle = (subject: DocumentType | DataType.Text, fallback: string) => {
22
- if (Obj.instanceOf(DocumentType, subject)) {
23
- return subject.name ?? subject.fallbackName ?? getFallbackName(subject.content?.target?.content ?? fallback);
24
- } else if (Obj.instanceOf(DataType.Text, subject)) {
25
- return getFallbackName(subject.content);
26
- }
27
- };
28
-
29
- // TODO(burdon): Factor out.
30
- const getSnippet = (subject: DocumentType | DataType.Text, fallback: string) => {
31
- if (Obj.instanceOf(DocumentType, subject)) {
32
- return getAbstract(subject.content?.target?.content ?? fallback);
33
- } else if (Obj.instanceOf(DataType.Text, subject)) {
34
- return getAbstract(subject.content);
35
- }
36
- };
37
-
38
- export const MarkdownPreview = ({ subject, role }: PreviewProps<DocumentType | DataType.Text>) => {
39
- const { dispatchPromise: dispatch } = useIntentDispatcher();
40
- const { t } = useTranslation(MARKDOWN_PLUGIN);
41
- const snippet = getSnippet(subject, t('fallback abstract'));
42
-
43
- // TODO(wittjosiah): Factor out so this component isn't dependent on the app framework.
44
- const handleNavigate = useCallback(
45
- () =>
46
- dispatch(
47
- pipe(
48
- createIntent(LayoutAction.UpdatePopover, {
49
- part: 'popover',
50
- subject: null,
51
- options: { state: false, anchorId: '' },
52
- }),
53
- chain(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(subject)] }),
54
- ),
55
- ),
56
- [dispatch, subject],
57
- );
58
-
59
- return (
60
- <Card.SurfaceRoot role={role}>
61
- <Card.Heading>{getTitle(subject, t('fallback title'))}</Card.Heading>
62
- {snippet && <Card.Text classNames='line-clamp-3 break-words col-span-2'>{snippet}</Card.Text>}
63
- {role === 'card--popover' && (
64
- <Card.Chrome>
65
- <Button onClick={handleNavigate}>
66
- <span className='grow'>{t('navigate to document label')}</span>
67
- <Icon icon='ph--arrow-right--regular' />
68
- </Button>
69
- </Card.Chrome>
70
- )}
71
- </Card.SurfaceRoot>
72
- );
73
- };
@@ -1,9 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { MarkdownPreview } from './MarkdownPreview';
6
-
7
- export * from './MarkdownPreview';
8
-
9
- export default MarkdownPreview;
@@ -1,113 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import '@dxos-theme';
6
-
7
- import { type Meta } from '@storybook/react-vite';
8
- import React, { type FC, useCallback, useState } from 'react';
9
-
10
- import { Obj } from '@dxos/echo';
11
- import { invariant } from '@dxos/invariant';
12
- import { PublicKey } from '@dxos/keys';
13
- import { faker } from '@dxos/random';
14
- import { createDocAccessor } from '@dxos/react-client/echo';
15
- import { useThemeContext } from '@dxos/react-ui';
16
- import {
17
- EditorToolbar,
18
- type Comment,
19
- comments,
20
- createBasicExtensions,
21
- createDataExtensions,
22
- createMarkdownExtensions,
23
- createThemeExtensions,
24
- decorateMarkdown,
25
- editorSlots,
26
- formattingKeymap,
27
- translations,
28
- useComments,
29
- useFormattingState,
30
- useTextEditor,
31
- useEditorToolbarState,
32
- type EditorViewMode,
33
- } from '@dxos/react-ui-editor';
34
- import { DataType } from '@dxos/schema';
35
- import { withLayout, withTheme } from '@dxos/storybook-utils';
36
-
37
- faker.seed(101);
38
-
39
- const DefaultStory: FC<{ content?: string }> = ({ content = '' }) => {
40
- const { themeMode } = useThemeContext();
41
- const [text] = useState(Obj.make(DataType.Text, { content }));
42
- const toolbarState = useEditorToolbarState({ viewMode: 'preview' });
43
- const formattingObserver = useFormattingState(toolbarState);
44
- const { parentRef, view } = useTextEditor(() => {
45
- return {
46
- id: text.id,
47
- initialValue: text.content,
48
- extensions: [
49
- formattingObserver,
50
- createBasicExtensions({ readOnly: toolbarState.viewMode === 'readonly' }),
51
- createMarkdownExtensions({ themeMode }),
52
- createThemeExtensions({ themeMode, syntaxHighlighting: true, slots: editorSlots }),
53
- createDataExtensions({ id: text.id, text: createDocAccessor(text, ['content']) }),
54
- comments({
55
- onCreate: ({ cursor }) => {
56
- const id = PublicKey.random().toHex();
57
- setComments((comments) => [...comments, { id, cursor }]);
58
- return id;
59
- },
60
- }),
61
- formattingKeymap(),
62
- ...(toolbarState.viewMode !== 'source' ? [decorateMarkdown()] : []),
63
- ],
64
- };
65
- }, [text, formattingObserver, toolbarState.viewMode, themeMode]);
66
-
67
- const handleViewModeChange = (viewMode: EditorViewMode) => {
68
- toolbarState.viewMode = viewMode;
69
- };
70
-
71
- const getView = useCallback(() => {
72
- invariant(view);
73
- return view;
74
- }, [view]);
75
-
76
- const [_comments, setComments] = useState<Comment[]>([]);
77
- useComments(view, text.id, _comments);
78
-
79
- return (
80
- <div role='none' className='flex flex-col'>
81
- <EditorToolbar state={toolbarState ?? {}} getView={getView} viewMode={handleViewModeChange} />
82
- <div className='flex grow overflow-hidden' ref={parentRef} />
83
- </div>
84
- );
85
- };
86
-
87
- const content = [
88
- '# Demo',
89
- '',
90
- 'The editor supports **Markdown** styles.',
91
- '',
92
- faker.lorem.paragraph({ min: 5, max: 8 }),
93
- '',
94
- '',
95
- ].join('\n');
96
-
97
- const meta: Meta<typeof EditorToolbar> = {
98
- title: 'plugins/plugin-markdown/Toolbar',
99
- component: EditorToolbar,
100
- render: DefaultStory as any,
101
- decorators: [withTheme, withLayout({ fullscreen: true })],
102
- parameters: {
103
- translations,
104
- },
105
- };
106
-
107
- export default meta;
108
-
109
- export const Default = {
110
- args: {
111
- content,
112
- },
113
- };
@@ -1,39 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import { Schema } from 'effect';
6
-
7
- import { Obj, Ref, Type } from '@dxos/echo';
8
- import { LabelAnnotation } from '@dxos/echo-schema';
9
- import { DataType } from '@dxos/schema';
10
-
11
- export const DocumentSchema = Schema.Struct({
12
- name: Schema.optional(Schema.String),
13
- fallbackName: Schema.optional(Schema.String),
14
- content: Type.Ref(DataType.Text),
15
- }).pipe(LabelAnnotation.set(['name', 'fallbackName']));
16
-
17
- export const DocumentType = DocumentSchema.pipe(
18
- Type.Obj({
19
- typename: 'dxos.org/type/Document',
20
- version: '0.1.0',
21
- }),
22
- );
23
- export type DocumentType = Schema.Schema.Type<typeof DocumentType>;
24
-
25
- // TODO(burdon): Replace when defaults are supported.
26
- export const createDocument = ({ name, content }: { name: string; content: string }) =>
27
- Obj.make(DocumentType, { name, content: Ref.make(Obj.make(DataType.Text, { content })) });
28
-
29
- /**
30
- * Checks if an object conforms to the interface needed to render an editor.
31
- */
32
- // TODO(burdon): Normalize types (from FilesPlugin).
33
- export const isEditorModel = (data: any): data is { id: string; text: string } =>
34
- data &&
35
- typeof data === 'object' &&
36
- 'id' in data &&
37
- typeof data.id === 'string' &&
38
- 'text' in data &&
39
- typeof data.text === 'string';