@dxos/plugin-thread 0.8.4-main.2e9d522 → 0.8.4-main.3eb6e50203

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 (406) hide show
  1. package/dist/lib/browser/app-graph-builder-XFGLMIGK.mjs +189 -0
  2. package/dist/lib/browser/app-graph-builder-XFGLMIGK.mjs.map +7 -0
  3. package/dist/lib/browser/blueprint-definition-ACPH22F7.mjs +18 -0
  4. package/dist/lib/browser/blueprint-definition-ACPH22F7.mjs.map +7 -0
  5. package/dist/lib/browser/blueprints/index.mjs +8 -0
  6. package/dist/lib/browser/call-manager-GDGIKJKN.mjs +26 -0
  7. package/dist/lib/browser/call-manager-GDGIKJKN.mjs.map +7 -0
  8. package/dist/lib/browser/chunk-2FIHSX35.mjs +293 -0
  9. package/dist/lib/browser/chunk-2FIHSX35.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-4EUEMHNI.mjs +1817 -0
  11. package/dist/lib/browser/chunk-4EUEMHNI.mjs.map +7 -0
  12. package/dist/lib/browser/{chunk-GERVMFQW.mjs → chunk-CP7E2HRE.mjs} +2 -2
  13. package/dist/lib/browser/chunk-CP7E2HRE.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-ZE7KWN36.mjs → chunk-ERK254BS.mjs} +381 -240
  15. package/dist/lib/browser/chunk-ERK254BS.mjs.map +7 -0
  16. package/dist/lib/browser/{chunk-6NSMBO3B.mjs → chunk-ISCHODBV.mjs} +55 -5
  17. package/dist/lib/browser/chunk-ISCHODBV.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  19. package/dist/lib/browser/{chunk-ERWASUQK.mjs → chunk-JBB73URQ.mjs} +85 -50
  20. package/dist/lib/browser/chunk-JBB73URQ.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-RH7XTXSR.mjs +106 -0
  22. package/dist/lib/browser/chunk-RH7XTXSR.mjs.map +7 -0
  23. package/dist/lib/browser/index.mjs +151 -132
  24. package/dist/lib/browser/index.mjs.map +4 -4
  25. package/dist/lib/browser/markdown-YJCSOWXX.mjs +210 -0
  26. package/dist/lib/browser/markdown-YJCSOWXX.mjs.map +7 -0
  27. package/dist/lib/browser/meta.json +1 -1
  28. package/dist/lib/browser/operation-resolver-PROCP5L4.mjs +441 -0
  29. package/dist/lib/browser/operation-resolver-PROCP5L4.mjs.map +7 -0
  30. package/dist/lib/browser/react-root-FHK2SVPU.mjs +25 -0
  31. package/dist/lib/browser/react-root-FHK2SVPU.mjs.map +7 -0
  32. package/dist/lib/browser/react-surface-7MQA6VSH.mjs +111 -0
  33. package/dist/lib/browser/react-surface-7MQA6VSH.mjs.map +7 -0
  34. package/dist/lib/browser/repair-6OZ75AUU.mjs +38 -0
  35. package/dist/lib/browser/repair-6OZ75AUU.mjs.map +7 -0
  36. package/dist/lib/browser/settings-TWKOTGSU.mjs +33 -0
  37. package/dist/lib/browser/settings-TWKOTGSU.mjs.map +7 -0
  38. package/dist/lib/browser/state-SJR2GL5G.mjs +24 -0
  39. package/dist/lib/browser/state-SJR2GL5G.mjs.map +7 -0
  40. package/dist/lib/browser/types/index.mjs +10 -12
  41. package/dist/lib/node-esm/app-graph-builder-IN6VLJBO.mjs +190 -0
  42. package/dist/lib/node-esm/app-graph-builder-IN6VLJBO.mjs.map +7 -0
  43. package/dist/lib/node-esm/blueprint-definition-SXVKFUNV.mjs +19 -0
  44. package/dist/lib/node-esm/blueprint-definition-SXVKFUNV.mjs.map +7 -0
  45. package/dist/lib/node-esm/blueprints/index.mjs +9 -0
  46. package/dist/lib/node-esm/call-manager-36UAAQCJ.mjs +27 -0
  47. package/dist/lib/node-esm/call-manager-36UAAQCJ.mjs.map +7 -0
  48. package/dist/lib/node-esm/{chunk-57XR3LEF.mjs → chunk-ABUFOZVX.mjs} +2 -2
  49. package/dist/lib/node-esm/chunk-ABUFOZVX.mjs.map +7 -0
  50. package/dist/lib/node-esm/{chunk-25ABSYP2.mjs → chunk-G7PZNN3Z.mjs} +85 -50
  51. package/dist/lib/node-esm/chunk-G7PZNN3Z.mjs.map +7 -0
  52. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  53. package/dist/lib/node-esm/chunk-OKVE6CLS.mjs +107 -0
  54. package/dist/lib/node-esm/chunk-OKVE6CLS.mjs.map +7 -0
  55. package/dist/lib/node-esm/{chunk-IHDNQLLR.mjs → chunk-QP3KQOPQ.mjs} +381 -240
  56. package/dist/lib/node-esm/chunk-QP3KQOPQ.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-RBRWHRHE.mjs +1818 -0
  58. package/dist/lib/node-esm/chunk-RBRWHRHE.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-OU5BYIDO.mjs → chunk-VBI32FGI.mjs} +55 -5
  60. package/dist/lib/node-esm/chunk-VBI32FGI.mjs.map +7 -0
  61. package/dist/lib/node-esm/chunk-WMWUXWAS.mjs +294 -0
  62. package/dist/lib/node-esm/chunk-WMWUXWAS.mjs.map +7 -0
  63. package/dist/lib/node-esm/index.mjs +151 -132
  64. package/dist/lib/node-esm/index.mjs.map +4 -4
  65. package/dist/lib/node-esm/markdown-6LRP3PAP.mjs +211 -0
  66. package/dist/lib/node-esm/markdown-6LRP3PAP.mjs.map +7 -0
  67. package/dist/lib/node-esm/meta.json +1 -1
  68. package/dist/lib/node-esm/operation-resolver-LPEPV5BF.mjs +442 -0
  69. package/dist/lib/node-esm/operation-resolver-LPEPV5BF.mjs.map +7 -0
  70. package/dist/lib/node-esm/react-root-P5P4VGQJ.mjs +26 -0
  71. package/dist/lib/node-esm/react-root-P5P4VGQJ.mjs.map +7 -0
  72. package/dist/lib/node-esm/react-surface-M7VI5XG2.mjs +112 -0
  73. package/dist/lib/node-esm/react-surface-M7VI5XG2.mjs.map +7 -0
  74. package/dist/lib/node-esm/repair-6777EPOM.mjs +39 -0
  75. package/dist/lib/node-esm/repair-6777EPOM.mjs.map +7 -0
  76. package/dist/lib/node-esm/settings-5O254B3Z.mjs +34 -0
  77. package/dist/lib/node-esm/settings-5O254B3Z.mjs.map +7 -0
  78. package/dist/lib/node-esm/state-5R3TZJQE.mjs +25 -0
  79. package/dist/lib/node-esm/state-5R3TZJQE.mjs.map +7 -0
  80. package/dist/lib/node-esm/types/index.mjs +10 -12
  81. package/dist/types/src/ThreadPlugin.d.ts +2 -1
  82. package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
  83. package/dist/types/src/blueprints/index.d.ts +2 -0
  84. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  85. package/dist/types/src/blueprints/thread-blueprint.d.ts +21 -0
  86. package/dist/types/src/blueprints/thread-blueprint.d.ts.map +1 -0
  87. package/dist/types/src/calls/call-manager.d.ts +40 -30
  88. package/dist/types/src/calls/call-manager.d.ts.map +1 -1
  89. package/dist/types/src/calls/call-swarm-synchronizer.d.ts +2 -2
  90. package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +1 -1
  91. package/dist/types/src/calls/media-manager.d.ts +2 -2
  92. package/dist/types/src/calls/media-manager.d.ts.map +1 -1
  93. package/dist/types/src/calls/types.d.ts +1 -1
  94. package/dist/types/src/calls/types.d.ts.map +1 -1
  95. package/dist/types/src/calls/util/calls-service.d.ts +5 -3
  96. package/dist/types/src/calls/util/calls-service.d.ts.map +1 -1
  97. package/dist/types/src/calls/util/stub-media-streams.d.ts.map +1 -1
  98. package/dist/types/src/calls/util/task-scheduling.d.ts +2 -2
  99. package/dist/types/src/calls/util/task-scheduling.d.ts.map +1 -1
  100. package/dist/types/src/calls-service.stories.d.ts +10 -9
  101. package/dist/types/src/calls-service.stories.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  103. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  104. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  105. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  106. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +10 -0
  107. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  108. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  109. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  110. package/dist/types/src/capabilities/call-manager/call-manager.d.ts +6 -0
  111. package/dist/types/src/capabilities/call-manager/call-manager.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/call-manager/index.d.ts +3 -0
  113. package/dist/types/src/capabilities/call-manager/index.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/index.d.ts +10 -15
  115. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/markdown/index.d.ts +3 -0
  117. package/dist/types/src/capabilities/markdown/index.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/markdown/markdown.d.ts +5 -0
  119. package/dist/types/src/capabilities/markdown/markdown.d.ts.map +1 -0
  120. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  121. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  123. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  124. package/dist/types/src/capabilities/react-root/index.d.ts +6 -0
  125. package/dist/types/src/capabilities/react-root/index.d.ts.map +1 -0
  126. package/dist/types/src/capabilities/react-root/react-root.d.ts +9 -0
  127. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -0
  128. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  129. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  130. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  131. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  132. package/dist/types/src/capabilities/repair/index.d.ts +3 -0
  133. package/dist/types/src/capabilities/repair/index.d.ts.map +1 -0
  134. package/dist/types/src/capabilities/repair/repair.d.ts +6 -0
  135. package/dist/types/src/capabilities/repair/repair.d.ts.map +1 -0
  136. package/dist/types/src/capabilities/settings/index.d.ts +3 -0
  137. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  138. package/dist/types/src/capabilities/settings/settings.d.ts +6 -0
  139. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  140. package/dist/types/src/capabilities/state/index.d.ts +3 -0
  141. package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
  142. package/dist/types/src/capabilities/state/state.d.ts +7 -0
  143. package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
  144. package/dist/types/src/components/Call/Call.d.ts.map +1 -1
  145. package/dist/types/src/components/Call/Toolbar.d.ts +2 -2
  146. package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
  147. package/dist/types/src/components/CallDebugPanel.d.ts +7 -0
  148. package/dist/types/src/components/CallDebugPanel.d.ts.map +1 -1
  149. package/dist/types/src/components/CallSidebar.d.ts.map +1 -1
  150. package/dist/types/src/components/ChannelContainer.d.ts +5 -6
  151. package/dist/types/src/components/ChannelContainer.d.ts.map +1 -1
  152. package/dist/types/src/components/ChannelContainer.stories.d.ts +159 -5
  153. package/dist/types/src/components/ChannelContainer.stories.d.ts.map +1 -1
  154. package/dist/types/src/components/Chat.stories.d.ts +162 -5
  155. package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
  156. package/dist/types/src/components/ChatContainer.d.ts +7 -6
  157. package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
  158. package/dist/types/src/components/Comments.stories.d.ts +160 -4
  159. package/dist/types/src/components/Comments.stories.d.ts.map +1 -1
  160. package/dist/types/src/components/CommentsContainer.d.ts +2 -2
  161. package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
  162. package/dist/types/src/components/CommentsThreadContainer.d.ts +9 -9
  163. package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -1
  164. package/dist/types/src/components/Lobby/Lobby.d.ts.map +1 -1
  165. package/dist/types/src/components/Media/VideoObject.d.ts +3 -3
  166. package/dist/types/src/components/Media/VideoObject.d.ts.map +1 -1
  167. package/dist/types/src/components/Media/VideoObject.stories.d.ts +18 -4
  168. package/dist/types/src/components/Media/VideoObject.stories.d.ts.map +1 -1
  169. package/dist/types/src/components/MessageContainer.d.ts +7 -3
  170. package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
  171. package/dist/types/src/components/Participant/Participant.d.ts.map +1 -1
  172. package/dist/types/src/components/Participant/ParticipantGrid.d.ts.map +1 -1
  173. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts +159 -3
  174. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +1 -1
  175. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +161 -4
  176. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +1 -1
  177. package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.d.ts.map +1 -1
  178. package/dist/types/src/components/ThreadCompanion.d.ts +5 -0
  179. package/dist/types/src/components/ThreadCompanion.d.ts.map +1 -0
  180. package/dist/types/src/components/ThreadSettings.d.ts +4 -2
  181. package/dist/types/src/components/ThreadSettings.d.ts.map +1 -1
  182. package/dist/types/src/components/command-extension.d.ts.map +1 -1
  183. package/dist/types/src/components/index.d.ts +3 -3
  184. package/dist/types/src/components/index.d.ts.map +1 -1
  185. package/dist/types/src/components/testing.d.ts +3 -2
  186. package/dist/types/src/components/testing.d.ts.map +1 -1
  187. package/dist/types/src/extensions/threads.d.ts +8 -3
  188. package/dist/types/src/extensions/threads.d.ts.map +1 -1
  189. package/dist/types/src/functions/create-proposals.d.ts +13 -0
  190. package/dist/types/src/functions/create-proposals.d.ts.map +1 -0
  191. package/dist/types/src/functions/index.d.ts +2 -0
  192. package/dist/types/src/functions/index.d.ts.map +1 -0
  193. package/dist/types/src/hooks/analytics.d.ts +2 -3
  194. package/dist/types/src/hooks/analytics.d.ts.map +1 -1
  195. package/dist/types/src/hooks/index.d.ts +2 -1
  196. package/dist/types/src/hooks/index.d.ts.map +1 -1
  197. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts +2 -0
  198. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts.map +1 -0
  199. package/dist/types/src/hooks/useVideoStreamTrack.d.ts +1 -1
  200. package/dist/types/src/hooks/useVideoStreamTrack.d.ts.map +1 -1
  201. package/dist/types/src/index.d.ts +1 -1
  202. package/dist/types/src/index.d.ts.map +1 -1
  203. package/dist/types/src/meta.d.ts +3 -4
  204. package/dist/types/src/meta.d.ts.map +1 -1
  205. package/dist/types/src/testing/stories.d.ts +2 -1
  206. package/dist/types/src/testing/stories.d.ts.map +1 -1
  207. package/dist/types/src/translations.d.ts +79 -7
  208. package/dist/types/src/translations.d.ts.map +1 -1
  209. package/dist/types/src/types/Channel.d.ts +695 -0
  210. package/dist/types/src/types/Channel.d.ts.map +1 -0
  211. package/dist/types/src/types/capabilities.d.ts +23 -0
  212. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  213. package/dist/types/src/types/index.d.ts +2 -1
  214. package/dist/types/src/types/index.d.ts.map +1 -1
  215. package/dist/types/src/types/types.d.ts +3223 -365
  216. package/dist/types/src/types/types.d.ts.map +1 -1
  217. package/dist/types/tsconfig.tsbuildinfo +1 -1
  218. package/package.json +93 -66
  219. package/src/ThreadPlugin.tsx +108 -129
  220. package/src/blueprints/index.ts +5 -0
  221. package/src/blueprints/thread-blueprint.ts +32 -0
  222. package/src/calls/call-manager.ts +78 -54
  223. package/src/calls/call-swarm-synchronizer.ts +3 -3
  224. package/src/calls/media-manager.ts +67 -38
  225. package/src/calls/types.ts +8 -4
  226. package/src/calls/util/calls-service.ts +66 -15
  227. package/src/calls/util/stub-media-streams.ts +64 -7
  228. package/src/calls/util/task-scheduling.ts +4 -4
  229. package/src/calls-service.stories.tsx +78 -65
  230. package/src/capabilities/app-graph-builder/app-graph-builder.ts +202 -0
  231. package/src/capabilities/app-graph-builder/index.ts +7 -0
  232. package/src/capabilities/blueprint-definition/blueprint-definition.ts +24 -0
  233. package/src/capabilities/blueprint-definition/index.ts +7 -0
  234. package/src/capabilities/call-manager/call-manager.ts +26 -0
  235. package/src/capabilities/call-manager/index.ts +7 -0
  236. package/src/capabilities/index.ts +10 -12
  237. package/src/capabilities/markdown/index.ts +7 -0
  238. package/src/capabilities/markdown/markdown.ts +83 -0
  239. package/src/capabilities/operation-resolver/index.ts +7 -0
  240. package/src/capabilities/operation-resolver/operation-resolver.ts +400 -0
  241. package/src/capabilities/react-root/index.ts +7 -0
  242. package/src/capabilities/react-root/react-root.tsx +20 -0
  243. package/src/capabilities/react-surface/index.ts +7 -0
  244. package/src/capabilities/react-surface/react-surface.tsx +98 -0
  245. package/src/capabilities/repair/index.ts +7 -0
  246. package/src/capabilities/repair/repair.ts +51 -0
  247. package/src/capabilities/settings/index.ts +7 -0
  248. package/src/capabilities/settings/settings.ts +34 -0
  249. package/src/capabilities/state/index.ts +7 -0
  250. package/src/capabilities/state/state.ts +22 -0
  251. package/src/components/Call/Call.tsx +11 -6
  252. package/src/components/Call/Toolbar.tsx +39 -30
  253. package/src/components/CallDebugPanel.tsx +112 -55
  254. package/src/components/CallSidebar.tsx +6 -3
  255. package/src/components/ChannelContainer.stories.tsx +21 -19
  256. package/src/components/ChannelContainer.tsx +43 -35
  257. package/src/components/Chat.stories.tsx +37 -39
  258. package/src/components/ChatContainer.tsx +52 -41
  259. package/src/components/Comments.stories.tsx +53 -52
  260. package/src/components/CommentsContainer.tsx +7 -8
  261. package/src/components/CommentsThreadContainer.tsx +47 -41
  262. package/src/components/Lobby/Lobby.tsx +10 -8
  263. package/src/components/Media/AudioStream.tsx +2 -2
  264. package/src/components/Media/VideoObject.stories.tsx +36 -28
  265. package/src/components/Media/VideoObject.tsx +2 -2
  266. package/src/components/MessageContainer.tsx +98 -33
  267. package/src/components/Participant/Participant.tsx +34 -15
  268. package/src/components/Participant/ParticipantGrid.tsx +2 -1
  269. package/src/components/ResponsiveGrid/ResponsiveContainer.stories.tsx +8 -8
  270. package/src/components/ResponsiveGrid/ResponsiveContainer.tsx +3 -3
  271. package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +45 -43
  272. package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +7 -7
  273. package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +8 -5
  274. package/src/components/ThreadCompanion.tsx +194 -0
  275. package/src/components/ThreadSettings.tsx +11 -6
  276. package/src/components/command-extension.ts +7 -4
  277. package/src/components/index.ts +4 -7
  278. package/src/components/testing.ts +26 -6
  279. package/src/extensions/threads.ts +88 -44
  280. package/src/functions/create-proposals.ts +57 -0
  281. package/src/functions/index.ts +5 -0
  282. package/src/hooks/analytics.ts +21 -21
  283. package/src/hooks/index.ts +3 -1
  284. package/src/hooks/useBlackCanvasStreamTrack.tsx +27 -0
  285. package/src/hooks/useDebugMode.ts +1 -1
  286. package/src/hooks/useVideoStreamTrack.tsx +6 -3
  287. package/src/index.ts +1 -1
  288. package/src/meta.ts +11 -7
  289. package/src/testing/stories.ts +18 -16
  290. package/src/translations.ts +9 -4
  291. package/src/types/Channel.ts +30 -0
  292. package/src/types/capabilities.ts +34 -0
  293. package/src/types/index.ts +2 -1
  294. package/src/types/types.ts +170 -82
  295. package/src/typings/peermetrics-webrtc-stats.d.ts +17 -1
  296. package/src/typings.d.ts +8 -0
  297. package/src/util.ts +1 -1
  298. package/dist/lib/browser/ChannelContainer-IY2UIRLF.mjs +0 -16
  299. package/dist/lib/browser/ChatContainer-AIGIWAUG.mjs +0 -15
  300. package/dist/lib/browser/app-graph-builder-N7BE5TYW.mjs +0 -171
  301. package/dist/lib/browser/app-graph-builder-N7BE5TYW.mjs.map +0 -7
  302. package/dist/lib/browser/call-manager-NIPDYUVD.mjs +0 -24
  303. package/dist/lib/browser/call-manager-NIPDYUVD.mjs.map +0 -7
  304. package/dist/lib/browser/chunk-4OYAYON2.mjs +0 -21
  305. package/dist/lib/browser/chunk-4OYAYON2.mjs.map +0 -7
  306. package/dist/lib/browser/chunk-6NSMBO3B.mjs.map +0 -7
  307. package/dist/lib/browser/chunk-ERWASUQK.mjs.map +0 -7
  308. package/dist/lib/browser/chunk-EV4JWI7L.mjs +0 -17
  309. package/dist/lib/browser/chunk-EV4JWI7L.mjs.map +0 -7
  310. package/dist/lib/browser/chunk-GCLD5ESP.mjs +0 -137
  311. package/dist/lib/browser/chunk-GCLD5ESP.mjs.map +0 -7
  312. package/dist/lib/browser/chunk-GERVMFQW.mjs.map +0 -7
  313. package/dist/lib/browser/chunk-KWPRNHTK.mjs +0 -984
  314. package/dist/lib/browser/chunk-KWPRNHTK.mjs.map +0 -7
  315. package/dist/lib/browser/chunk-LGSDKXPF.mjs +0 -18
  316. package/dist/lib/browser/chunk-LGSDKXPF.mjs.map +0 -7
  317. package/dist/lib/browser/chunk-VUWC4IJM.mjs +0 -479
  318. package/dist/lib/browser/chunk-VUWC4IJM.mjs.map +0 -7
  319. package/dist/lib/browser/chunk-XLPJXUKO.mjs +0 -367
  320. package/dist/lib/browser/chunk-XLPJXUKO.mjs.map +0 -7
  321. package/dist/lib/browser/chunk-ZE7KWN36.mjs.map +0 -7
  322. package/dist/lib/browser/intent-resolver-JFGLZ6VI.mjs +0 -369
  323. package/dist/lib/browser/intent-resolver-JFGLZ6VI.mjs.map +0 -7
  324. package/dist/lib/browser/markdown-GEXBVJYN.mjs +0 -169
  325. package/dist/lib/browser/markdown-GEXBVJYN.mjs.map +0 -7
  326. package/dist/lib/browser/react-root-X4UIVGTX.mjs +0 -28
  327. package/dist/lib/browser/react-root-X4UIVGTX.mjs.map +0 -7
  328. package/dist/lib/browser/react-surface-YCYEFBPM.mjs +0 -109
  329. package/dist/lib/browser/react-surface-YCYEFBPM.mjs.map +0 -7
  330. package/dist/lib/browser/settings-E32MTL7A.mjs +0 -22
  331. package/dist/lib/browser/settings-E32MTL7A.mjs.map +0 -7
  332. package/dist/lib/browser/state-H6CYONWE.mjs +0 -34
  333. package/dist/lib/browser/state-H6CYONWE.mjs.map +0 -7
  334. package/dist/lib/node-esm/ChannelContainer-DET6T5N2.mjs +0 -17
  335. package/dist/lib/node-esm/ChatContainer-IQUWU426.mjs +0 -16
  336. package/dist/lib/node-esm/app-graph-builder-VCW76Z6V.mjs +0 -172
  337. package/dist/lib/node-esm/app-graph-builder-VCW76Z6V.mjs.map +0 -7
  338. package/dist/lib/node-esm/call-manager-D6O5ZJJ4.mjs +0 -25
  339. package/dist/lib/node-esm/call-manager-D6O5ZJJ4.mjs.map +0 -7
  340. package/dist/lib/node-esm/chunk-25ABSYP2.mjs.map +0 -7
  341. package/dist/lib/node-esm/chunk-2MFNK53T.mjs +0 -480
  342. package/dist/lib/node-esm/chunk-2MFNK53T.mjs.map +0 -7
  343. package/dist/lib/node-esm/chunk-57XR3LEF.mjs.map +0 -7
  344. package/dist/lib/node-esm/chunk-75RJ5DJI.mjs +0 -19
  345. package/dist/lib/node-esm/chunk-75RJ5DJI.mjs.map +0 -7
  346. package/dist/lib/node-esm/chunk-C3XFMUAY.mjs +0 -985
  347. package/dist/lib/node-esm/chunk-C3XFMUAY.mjs.map +0 -7
  348. package/dist/lib/node-esm/chunk-GRLRWTRU.mjs +0 -19
  349. package/dist/lib/node-esm/chunk-GRLRWTRU.mjs.map +0 -7
  350. package/dist/lib/node-esm/chunk-GW37AAM4.mjs +0 -23
  351. package/dist/lib/node-esm/chunk-GW37AAM4.mjs.map +0 -7
  352. package/dist/lib/node-esm/chunk-IHDNQLLR.mjs.map +0 -7
  353. package/dist/lib/node-esm/chunk-J4NSON5Q.mjs +0 -368
  354. package/dist/lib/node-esm/chunk-J4NSON5Q.mjs.map +0 -7
  355. package/dist/lib/node-esm/chunk-OU5BYIDO.mjs.map +0 -7
  356. package/dist/lib/node-esm/chunk-TDFHTCZZ.mjs +0 -138
  357. package/dist/lib/node-esm/chunk-TDFHTCZZ.mjs.map +0 -7
  358. package/dist/lib/node-esm/intent-resolver-OXGNQ44Y.mjs +0 -370
  359. package/dist/lib/node-esm/intent-resolver-OXGNQ44Y.mjs.map +0 -7
  360. package/dist/lib/node-esm/markdown-LIJZDK2J.mjs +0 -170
  361. package/dist/lib/node-esm/markdown-LIJZDK2J.mjs.map +0 -7
  362. package/dist/lib/node-esm/react-root-M7J6PZVW.mjs +0 -29
  363. package/dist/lib/node-esm/react-root-M7J6PZVW.mjs.map +0 -7
  364. package/dist/lib/node-esm/react-surface-IRSEKM42.mjs +0 -110
  365. package/dist/lib/node-esm/react-surface-IRSEKM42.mjs.map +0 -7
  366. package/dist/lib/node-esm/settings-SJ24YG7M.mjs +0 -23
  367. package/dist/lib/node-esm/settings-SJ24YG7M.mjs.map +0 -7
  368. package/dist/lib/node-esm/state-D7WNDT3N.mjs +0 -35
  369. package/dist/lib/node-esm/state-D7WNDT3N.mjs.map +0 -7
  370. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  371. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  372. package/dist/types/src/capabilities/call-manager.d.ts +0 -5
  373. package/dist/types/src/capabilities/call-manager.d.ts.map +0 -1
  374. package/dist/types/src/capabilities/capabilities.d.ts +0 -27
  375. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  376. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  377. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  378. package/dist/types/src/capabilities/markdown.d.ts +0 -4
  379. package/dist/types/src/capabilities/markdown.d.ts.map +0 -1
  380. package/dist/types/src/capabilities/react-root.d.ts +0 -7
  381. package/dist/types/src/capabilities/react-root.d.ts.map +0 -1
  382. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  383. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  384. package/dist/types/src/capabilities/settings.d.ts +0 -4
  385. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  386. package/dist/types/src/capabilities/state.d.ts +0 -7
  387. package/dist/types/src/capabilities/state.d.ts.map +0 -1
  388. package/dist/types/src/components/ThreadComplementary.d.ts +0 -5
  389. package/dist/types/src/components/ThreadComplementary.d.ts.map +0 -1
  390. package/dist/types/src/types/schema.d.ts +0 -162
  391. package/dist/types/src/types/schema.d.ts.map +0 -1
  392. package/src/capabilities/app-graph-builder.ts +0 -180
  393. package/src/capabilities/call-manager.ts +0 -19
  394. package/src/capabilities/capabilities.ts +0 -33
  395. package/src/capabilities/intent-resolver.ts +0 -314
  396. package/src/capabilities/markdown.ts +0 -68
  397. package/src/capabilities/react-root.tsx +0 -17
  398. package/src/capabilities/react-surface.tsx +0 -88
  399. package/src/capabilities/settings.ts +0 -19
  400. package/src/capabilities/state.ts +0 -25
  401. package/src/components/ThreadComplementary.tsx +0 -151
  402. package/src/types/schema.ts +0 -33
  403. /package/dist/lib/browser/{ChannelContainer-IY2UIRLF.mjs.map → blueprints/index.mjs.map} +0 -0
  404. /package/dist/lib/browser/{ChatContainer-AIGIWAUG.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  405. /package/dist/lib/node-esm/{ChannelContainer-DET6T5N2.mjs.map → blueprints/index.mjs.map} +0 -0
  406. /package/dist/lib/node-esm/{ChatContainer-IQUWU426.mjs.map → chunk-HSLMI22Q.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,28 +1,43 @@
1
1
  {
2
2
  "name": "@dxos/plugin-thread",
3
- "version": "0.8.4-main.2e9d522",
3
+ "version": "0.8.4-main.3eb6e50203",
4
4
  "description": "DXOS Threads Surface plugin",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/dxos/dxos"
10
+ },
7
11
  "license": "MIT",
8
12
  "author": "DXOS.org",
9
13
  "sideEffects": true,
10
14
  "type": "module",
11
15
  "exports": {
12
16
  ".": {
13
- "types": "./dist/types/src/index.d.ts",
14
17
  "browser": "./dist/lib/browser/index.mjs",
15
- "node": "./dist/lib/node-esm/index.mjs"
18
+ "node": "./dist/lib/node-esm/index.mjs",
19
+ "source": "./src/index.ts",
20
+ "types": "./dist/types/src/index.d.ts"
21
+ },
22
+ "./blueprints": {
23
+ "browser": "./dist/lib/browser/blueprints/index.mjs",
24
+ "node": "./dist/lib/node-esm/blueprints/index.mjs",
25
+ "source": "./src/blueprints/index.ts",
26
+ "types": "./dist/types/src/blueprints/index.d.ts"
16
27
  },
17
28
  "./types": {
18
- "types": "./dist/types/src/types/index.d.ts",
19
29
  "browser": "./dist/lib/browser/types/index.mjs",
20
- "node": "./dist/lib/node-esm/types/index.mjs"
30
+ "node": "./dist/lib/node-esm/types/index.mjs",
31
+ "source": "./src/types/index.ts",
32
+ "types": "./dist/types/src/types/index.d.ts"
21
33
  }
22
34
  },
23
35
  "types": "dist/types/src/index.d.ts",
24
36
  "typesVersions": {
25
37
  "*": {
38
+ "blueprints": [
39
+ "dist/types/src/blueprints/index.d.ts"
40
+ ],
26
41
  "types": [
27
42
  "dist/types/src/types/index.d.ts"
28
43
  ]
@@ -33,77 +48,89 @@
33
48
  "src"
34
49
  ],
35
50
  "dependencies": {
36
- "@codemirror/language": "^6.10.3",
37
- "@codemirror/state": "^6.4.1",
38
- "@codemirror/view": "^6.34.1",
51
+ "@codemirror/language": "^6.11.3",
52
+ "@codemirror/state": "^6.5.2",
53
+ "@codemirror/view": "^6.38.4",
54
+ "@effect-atom/atom": "^0.5.1",
55
+ "@effect-atom/atom-react": "^0.5.0",
56
+ "@effect/ai": "0.33.2",
57
+ "@effect/experimental": "0.58.0",
39
58
  "@peermetrics/webrtc-stats": "5.7.1",
40
- "@preact-signals/safe-react": "^0.9.0",
41
- "@preact/signals-core": "^1.9.0",
42
59
  "date-fns": "^3.3.1",
43
60
  "extendable-media-recorder": "^9.2.19",
44
61
  "extendable-media-recorder-wav-encoder": "^7.0.123",
45
62
  "md5-hex": "5.0.0",
46
- "react-resize-detector": "^12.0.2",
63
+ "react-resize-detector": "^11.0.1",
47
64
  "wavefile": "^11.0.0",
48
- "@dxos/app-framework": "0.8.4-main.2e9d522",
49
- "@dxos/async": "0.8.4-main.2e9d522",
50
- "@dxos/context": "0.8.4-main.2e9d522",
51
- "@dxos/codec-protobuf": "0.8.4-main.2e9d522",
52
- "@dxos/debug": "0.8.4-main.2e9d522",
53
- "@dxos/devtools": "0.8.4-main.2e9d522",
54
- "@dxos/echo": "0.8.4-main.2e9d522",
55
- "@dxos/display-name": "0.8.4-main.2e9d522",
56
- "@dxos/echo-schema": "0.8.4-main.2e9d522",
57
- "@dxos/invariant": "0.8.4-main.2e9d522",
58
- "@dxos/keys": "0.8.4-main.2e9d522",
59
- "@dxos/live-object": "0.8.4-main.2e9d522",
60
- "@dxos/local-storage": "0.8.4-main.2e9d522",
61
- "@dxos/log": "0.8.4-main.2e9d522",
62
- "@dxos/plugin-attention": "0.8.4-main.2e9d522",
63
- "@dxos/plugin-client": "0.8.4-main.2e9d522",
64
- "@dxos/plugin-deck": "0.8.4-main.2e9d522",
65
- "@dxos/plugin-graph": "0.8.4-main.2e9d522",
66
- "@dxos/plugin-markdown": "0.8.4-main.2e9d522",
67
- "@dxos/plugin-observability": "0.8.4-main.2e9d522",
68
- "@dxos/protocols": "0.8.4-main.2e9d522",
69
- "@dxos/plugin-space": "0.8.4-main.2e9d522",
70
- "@dxos/react-client": "0.8.4-main.2e9d522",
71
- "@dxos/react-ui-attention": "0.8.4-main.2e9d522",
72
- "@dxos/react-ui-dnd": "0.8.4-main.2e9d522",
73
- "@dxos/react-ui-editor": "0.8.4-main.2e9d522",
74
- "@dxos/react-ui-form": "0.8.4-main.2e9d522",
75
- "@dxos/react-ui-menu": "0.8.4-main.2e9d522",
76
- "@dxos/react-ui-sfx": "0.8.4-main.2e9d522",
77
- "@dxos/react-ui-stack": "0.8.4-main.2e9d522",
78
- "@dxos/react-ui-tabs": "0.8.4-main.2e9d522",
79
- "@dxos/react-ui-syntax-highlighter": "0.8.4-main.2e9d522",
80
- "@dxos/react-ui-thread": "0.8.4-main.2e9d522",
81
- "@dxos/schema": "0.8.4-main.2e9d522",
82
- "@dxos/util": "0.8.4-main.2e9d522"
65
+ "@dxos/app-framework": "0.8.4-main.3eb6e50203",
66
+ "@dxos/async": "0.8.4-main.3eb6e50203",
67
+ "@dxos/app-toolkit": "0.8.4-main.3eb6e50203",
68
+ "@dxos/assistant": "0.8.4-main.3eb6e50203",
69
+ "@dxos/codec-protobuf": "0.8.4-main.3eb6e50203",
70
+ "@dxos/context": "0.8.4-main.3eb6e50203",
71
+ "@dxos/debug": "0.8.4-main.3eb6e50203",
72
+ "@dxos/blueprints": "0.8.4-main.3eb6e50203",
73
+ "@dxos/devtools": "0.8.4-main.3eb6e50203",
74
+ "@dxos/display-name": "0.8.4-main.3eb6e50203",
75
+ "@dxos/echo": "0.8.4-main.3eb6e50203",
76
+ "@dxos/echo-db": "0.8.4-main.3eb6e50203",
77
+ "@dxos/echo-react": "0.8.4-main.3eb6e50203",
78
+ "@dxos/functions": "0.8.4-main.3eb6e50203",
79
+ "@dxos/invariant": "0.8.4-main.3eb6e50203",
80
+ "@dxos/effect": "0.8.4-main.3eb6e50203",
81
+ "@dxos/keys": "0.8.4-main.3eb6e50203",
82
+ "@dxos/plugin-client": "0.8.4-main.3eb6e50203",
83
+ "@dxos/log": "0.8.4-main.3eb6e50203",
84
+ "@dxos/plugin-graph": "0.8.4-main.3eb6e50203",
85
+ "@dxos/plugin-attention": "0.8.4-main.3eb6e50203",
86
+ "@dxos/plugin-deck": "0.8.4-main.3eb6e50203",
87
+ "@dxos/plugin-observability": "0.8.4-main.3eb6e50203",
88
+ "@dxos/plugin-markdown": "0.8.4-main.3eb6e50203",
89
+ "@dxos/plugin-settings": "0.8.4-main.3eb6e50203",
90
+ "@dxos/protocols": "0.8.4-main.3eb6e50203",
91
+ "@dxos/react-client": "0.8.4-main.3eb6e50203",
92
+ "@dxos/plugin-space": "0.8.4-main.3eb6e50203",
93
+ "@dxos/react-ui-attention": "0.8.4-main.3eb6e50203",
94
+ "@dxos/operation": "0.8.4-main.3eb6e50203",
95
+ "@dxos/react-ui-dnd": "0.8.4-main.3eb6e50203",
96
+ "@dxos/react-ui-editor": "0.8.4-main.3eb6e50203",
97
+ "@dxos/react-ui-menu": "0.8.4-main.3eb6e50203",
98
+ "@dxos/react-ui-form": "0.8.4-main.3eb6e50203",
99
+ "@dxos/react-ui-mosaic": "0.8.4-main.3eb6e50203",
100
+ "@dxos/react-ui-sfx": "0.8.4-main.3eb6e50203",
101
+ "@dxos/react-ui-stack": "0.8.4-main.3eb6e50203",
102
+ "@dxos/react-ui-syntax-highlighter": "0.8.4-main.3eb6e50203",
103
+ "@dxos/react-ui-thread": "0.8.4-main.3eb6e50203",
104
+ "@dxos/react-ui-tabs": "0.8.4-main.3eb6e50203",
105
+ "@dxos/schema": "0.8.4-main.3eb6e50203",
106
+ "@dxos/types": "0.8.4-main.3eb6e50203",
107
+ "@dxos/util": "0.8.4-main.3eb6e50203",
108
+ "@dxos/ui-editor": "0.8.4-main.3eb6e50203"
83
109
  },
84
110
  "devDependencies": {
85
- "@effect-rx/rx-react": "0.38.0",
86
- "@effect/platform": "0.89.0",
87
- "@types/react": "~18.2.0",
88
- "@types/react-dom": "~18.2.0",
89
- "effect": "3.17.0",
90
- "react": "~18.2.0",
91
- "react-dom": "~18.2.0",
92
- "vite": "5.4.7",
93
- "@dxos/plugin-theme": "0.8.4-main.2e9d522",
94
- "@dxos/random": "0.8.4-main.2e9d522",
95
- "@dxos/react-ui": "0.8.4-main.2e9d522",
96
- "@dxos/storybook-utils": "0.8.4-main.2e9d522",
97
- "@dxos/react-ui-theme": "0.8.4-main.2e9d522"
111
+ "@effect-atom/atom-react": "^0.5.0",
112
+ "@effect/platform": "0.94.4",
113
+ "@types/react": "~19.2.7",
114
+ "@types/react-dom": "~19.2.3",
115
+ "effect": "3.19.16",
116
+ "react": "~19.2.3",
117
+ "react-dom": "~19.2.3",
118
+ "vite": "7.1.9",
119
+ "@dxos/plugin-theme": "0.8.4-main.3eb6e50203",
120
+ "@dxos/random": "0.8.4-main.3eb6e50203",
121
+ "@dxos/plugin-testing": "0.8.4-main.3eb6e50203",
122
+ "@dxos/react-ui": "0.8.4-main.3eb6e50203",
123
+ "@dxos/ui-theme": "0.8.4-main.3eb6e50203",
124
+ "@dxos/storybook-utils": "0.8.4-main.3eb6e50203"
98
125
  },
99
126
  "peerDependencies": {
100
- "@effect-rx/rx-react": "^0.34.1",
101
- "@effect/platform": "^0.80.12",
102
- "effect": "^3.13.3",
103
- "react": "~18.2.0",
104
- "react-dom": "~18.2.0",
105
- "@dxos/react-ui": "0.8.4-main.2e9d522",
106
- "@dxos/react-ui-theme": "0.8.4-main.2e9d522"
127
+ "@effect-atom/atom-react": "^0.5.0",
128
+ "@effect/platform": "0.94.4",
129
+ "effect": "3.19.16",
130
+ "react": "~19.2.3",
131
+ "react-dom": "~19.2.3",
132
+ "@dxos/react-ui": "0.8.4-main.3eb6e50203",
133
+ "@dxos/ui-theme": "0.8.4-main.3eb6e50203"
107
134
  },
108
135
  "publishConfig": {
109
136
  "access": "public"
@@ -2,154 +2,133 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';
6
- import { Ref } from '@dxos/echo';
5
+ import * as Effect from 'effect/Effect';
6
+
7
+ import { Capability, Plugin } from '@dxos/app-framework';
8
+ import { AppActivationEvents, AppPlugin } from '@dxos/app-toolkit';
9
+ import { Ref, Type } from '@dxos/echo';
10
+ import { Operation } from '@dxos/operation';
7
11
  import { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';
8
12
  import { MarkdownEvents } from '@dxos/plugin-markdown';
9
13
  import { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';
10
- import { defineObjectForm } from '@dxos/plugin-space/types';
14
+ import { type CreateObject } from '@dxos/plugin-space/types';
11
15
  import { translations as threadTranslations } from '@dxos/react-ui-thread';
12
- import { AnchoredTo, DataType } from '@dxos/schema';
16
+ import { AnchoredTo, Message, Thread } from '@dxos/types';
13
17
 
14
18
  import {
15
19
  AppGraphBuilder,
20
+ BlueprintDefinition,
16
21
  CallManager,
17
- IntentResolver,
18
22
  Markdown,
23
+ OperationResolver,
19
24
  ReactRoot,
20
25
  ReactSurface,
26
+ Repair,
21
27
  ThreadState,
22
28
  } from './capabilities';
23
- import { meta, THREAD_ITEM } from './meta';
29
+ import { THREAD_ITEM, meta } from './meta';
24
30
  import { translations } from './translations';
25
- import { ChannelType, ThreadAction, ThreadType } from './types';
31
+ import { Channel, ThreadOperation } from './types';
26
32
 
27
33
  // TODO(Zan): Every instance of `cursor` should be replaced with `anchor`.
28
34
  // NOTE(burdon): Review/discuss CursorConverter semantics.
29
35
 
30
36
  // TODO(wittjosiah): Rename to ChatPlugin.
31
37
  // TODO(wittjosiah): Enabling comments should likely be factored out of this plugin but depend on it's capabilities.
32
- export const ThreadPlugin = () =>
33
- definePlugin(meta, [
34
- defineModule({
35
- id: `${meta.id}/module/call-manager`,
36
- activatesOn: ClientEvents.ClientReady,
37
- activate: CallManager,
38
- }),
39
- // TODO(wittjosiah): Currently not used but leaving because there will likely be settings for threads again.
40
- // defineModule({
41
- // id: `${meta.id}/module/settings`,
42
- // activatesOn: Events.SetupSettings,
43
- // activate: ThreadSettings,
44
- // }),
45
- defineModule({
46
- id: `${meta.id}/module/state`,
47
- // TODO(wittjosiah): Does not integrate with settings store.
48
- // Should this be a different event?
49
- // Should settings store be renamed to be more generic?
50
- activatesOn: Events.SetupSettings,
51
- activate: ThreadState,
52
- }),
53
- defineModule({
54
- id: `${meta.id}/module/translations`,
55
- activatesOn: Events.SetupTranslations,
56
- activate: () => contributes(Capabilities.Translations, [...translations, ...threadTranslations]),
57
- }),
58
- defineModule({
59
- id: `${meta.id}/module/metadata`,
60
- activatesOn: Events.SetupMetadata,
61
- activate: () => [
62
- contributes(Capabilities.Metadata, {
63
- id: ChannelType.typename,
64
- metadata: {
65
- icon: 'ph--hash--regular',
66
- },
67
- }),
68
- contributes(Capabilities.Metadata, {
69
- id: ThreadType.typename,
70
- metadata: {
71
- // TODO(wittjosiah): Move out of metadata.
72
- loadReferences: async (thread: ThreadType) => await Ref.Array.loadAll(thread.messages ?? []),
73
- },
74
- }),
75
- contributes(Capabilities.Metadata, {
76
- id: DataType.Message.typename,
77
- metadata: {
78
- // TODO(wittjosiah): Move out of metadata.
79
- loadReferences: (message: DataType.Message) => [], // loadObjectReferences(message, (message) => [...message.parts, message.context]),
38
+ export const ThreadPlugin = Plugin.define(meta).pipe(
39
+ AppPlugin.addAppGraphModule({ activate: AppGraphBuilder }),
40
+ AppPlugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),
41
+ AppPlugin.addMetadataModule({
42
+ metadata: [
43
+ {
44
+ id: Type.getTypename(Channel.Channel),
45
+ metadata: {
46
+ icon: 'ph--hash--regular',
47
+ iconHue: 'rose',
48
+ createObject: ((props) => Effect.sync(() => Channel.make(props))) satisfies CreateObject,
49
+ },
50
+ },
51
+ {
52
+ id: Type.getTypename(Thread.Thread),
53
+ metadata: {
54
+ // TODO(wittjosiah): Move out of metadata.
55
+ loadReferences: async (thread: Thread.Thread) => await Ref.Array.loadAll(thread.messages ?? []),
56
+ },
57
+ },
58
+ {
59
+ id: Message.Message.typename,
60
+ metadata: {
61
+ // TODO(wittjosiah): Move out of metadata.
62
+ loadReferences: () => [], // loadObjectReferences(message, (message) => [...message.parts, message.context]),
63
+ },
64
+ },
65
+ {
66
+ id: THREAD_ITEM,
67
+ metadata: {
68
+ parse: (item: Thread.Thread, type: string) => {
69
+ switch (type) {
70
+ case 'node':
71
+ return { id: item.id, label: item.name, data: item };
72
+ case 'object':
73
+ return item;
74
+ case 'view-object':
75
+ return { id: `${item.id}-view`, object: item };
76
+ }
80
77
  },
81
- }),
82
- contributes(Capabilities.Metadata, {
83
- id: THREAD_ITEM,
84
- metadata: {
85
- parse: (item: ThreadType, type: string) => {
86
- switch (type) {
87
- case 'node':
88
- return { id: item.id, label: item.name, data: item };
89
- case 'object':
90
- return item;
91
- case 'view-object':
92
- return { id: `${item.id}-view`, object: item };
93
- }
94
- },
95
- },
96
- }),
97
- ],
98
- }),
99
- defineModule({
100
- id: `${meta.id}/module/object-form`,
101
- activatesOn: ClientEvents.SetupSchema,
102
- activate: () =>
103
- contributes(
104
- SpaceCapabilities.ObjectForm,
105
- defineObjectForm({
106
- objectSchema: ChannelType,
107
- getIntent: (_, options) => createIntent(ThreadAction.CreateChannel, { spaceId: options.space.id }),
108
- }),
109
- ),
110
- }),
111
- defineModule({
112
- id: `${meta.id}/module/schema`,
113
- activatesOn: ClientEvents.SetupSchema,
114
- activate: () =>
115
- contributes(ClientCapabilities.Schema, [AnchoredTo, ThreadType, DataType.Message, DataType.MessageV1]),
116
- }),
117
- defineModule({
118
- id: `${meta.id}/module/migration`,
119
- activatesOn: ClientEvents.SetupMigration,
120
- activate: () => contributes(ClientCapabilities.Migration, [DataType.MessageV1ToV2]),
121
- }),
122
- defineModule({
123
- id: `${meta.id}/module/on-space-created`,
124
- activatesOn: SpaceEvents.SpaceCreated,
125
- activate: () =>
126
- contributes(SpaceCapabilities.OnSpaceCreated, ({ space, rootCollection }) =>
127
- createIntent(ThreadAction.OnSpaceCreated, { space, rootCollection }),
78
+ },
79
+ },
80
+ ],
81
+ }),
82
+ AppPlugin.addOperationResolverModule({ activate: OperationResolver }),
83
+ AppPlugin.addReactRootModule({ activate: ReactRoot }),
84
+ AppPlugin.addSchemaModule({
85
+ schema: [AnchoredTo.AnchoredTo, Channel.Channel, Message.Message, Message.MessageV1, Thread.Thread],
86
+ }),
87
+ AppPlugin.addSurfaceModule({ activate: ReactSurface }),
88
+ AppPlugin.addTranslationsModule({ translations: [...translations, ...threadTranslations] }),
89
+ Plugin.addModule({
90
+ id: 'call-manager',
91
+ activatesOn: ClientEvents.ClientReady,
92
+ activate: CallManager,
93
+ }),
94
+ // TODO(wittjosiah): Currently not used but leaving because there will likely be settings for threads again.
95
+ // Plugin.addModule({
96
+ // id: 'settings',
97
+ // activatesOn: Events.SetupSettings,
98
+ // activate: ThreadSettings,
99
+ // }),
100
+ Plugin.addModule({
101
+ id: 'state',
102
+ // TODO(wittjosiah): Does not integrate with settings store.
103
+ // Should this be a different event?
104
+ // Should settings store be renamed to be more generic?
105
+ activatesOn: AppActivationEvents.SetupSettings,
106
+ activate: ThreadState,
107
+ }),
108
+ Plugin.addModule({
109
+ id: 'migration',
110
+ activatesOn: ClientEvents.SetupMigration,
111
+ activate: () => Effect.succeed(Capability.contributes(ClientCapabilities.Migration, [Message.MessageV1ToV2])),
112
+ }),
113
+ Plugin.addModule({
114
+ id: 'on-space-created',
115
+ activatesOn: SpaceEvents.SpaceCreated,
116
+ activate: () =>
117
+ Effect.succeed(
118
+ Capability.contributes(SpaceCapabilities.OnCreateSpace, (params) =>
119
+ Operation.invoke(ThreadOperation.OnCreateSpace, params),
128
120
  ),
129
- }),
130
- defineModule({
131
- id: `${meta.id}/module/markdown`,
132
- activatesOn: MarkdownEvents.SetupExtensions,
133
- activate: Markdown,
134
- }),
135
- defineModule({
136
- id: `${meta.id}/module/react-root`,
137
- activatesOn: Events.Startup,
138
- activate: ReactRoot,
139
- }),
140
- defineModule({
141
- id: `${meta.id}/module/react-surface`,
142
- activatesOn: Events.SetupReactSurface,
143
- activate: ReactSurface,
144
- }),
145
- defineModule({
146
- id: `${meta.id}/module/intent-resolver`,
147
- activatesOn: Events.SetupIntentResolver,
148
- activate: IntentResolver,
149
- }),
150
- defineModule({
151
- id: `${meta.id}/module/app-graph-builder`,
152
- activatesOn: Events.SetupAppGraph,
153
- activate: AppGraphBuilder,
154
- }),
155
- ]);
121
+ ),
122
+ }),
123
+ Plugin.addModule({
124
+ id: 'repair',
125
+ activatesOn: ClientEvents.SpacesReady,
126
+ activate: Repair,
127
+ }),
128
+ Plugin.addModule({
129
+ id: 'markdown',
130
+ activatesOn: MarkdownEvents.SetupExtensions,
131
+ activate: Markdown,
132
+ }),
133
+ Plugin.make,
134
+ );
@@ -0,0 +1,5 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export * as ThreadBlueprint from './thread-blueprint';
@@ -0,0 +1,32 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { Blueprint, Template } from '@dxos/blueprints';
6
+ import { type FunctionDefinition } from '@dxos/functions';
7
+ import { trim } from '@dxos/util';
8
+
9
+ import { createProposals } from '../functions';
10
+
11
+ export const functions: FunctionDefinition[] = [createProposals];
12
+
13
+ export const Key = 'dxos.org/blueprint/thread';
14
+
15
+ export const make = () =>
16
+ Blueprint.make({
17
+ key: Key,
18
+ name: 'Thread',
19
+ tools: Blueprint.toolDefinitions({ functions }),
20
+ instructions: Template.make({
21
+ // TODO(wittjosiah): Move example to function input schema annotation.
22
+ source: trim`
23
+ You can update markdown documents via proposals.
24
+ For each diff, respond with the smallest possible matching span.
25
+ For example:
26
+ - "There is a tyop in this sentence."
27
+ + "There is a typo in this sentence."
28
+ - "This id goof."
29
+ + "This is good."
30
+ `,
31
+ }),
32
+ });