@dxos/plugin-thread 0.8.4-main.72ec0f3 → 0.8.4-main.937b3ca

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 (353) hide show
  1. package/dist/lib/browser/app-graph-builder-SPAZN5XL.mjs +188 -0
  2. package/dist/lib/browser/app-graph-builder-SPAZN5XL.mjs.map +7 -0
  3. package/dist/lib/browser/blueprint-definition-UQ63QKQG.mjs +17 -0
  4. package/dist/lib/browser/blueprint-definition-UQ63QKQG.mjs.map +7 -0
  5. package/dist/lib/browser/blueprints/index.mjs +8 -0
  6. package/dist/lib/browser/call-manager-YBRTG6T3.mjs +26 -0
  7. package/dist/lib/browser/call-manager-YBRTG6T3.mjs.map +7 -0
  8. package/dist/lib/browser/{chunk-KOBXMDCI.mjs → chunk-DLO2G3DM.mjs} +14 -12
  9. package/dist/lib/browser/chunk-DLO2G3DM.mjs.map +7 -0
  10. package/dist/lib/browser/{chunk-ZCW3NSDZ.mjs → chunk-ERK254BS.mjs} +68 -51
  11. package/dist/lib/browser/chunk-ERK254BS.mjs.map +7 -0
  12. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  13. package/dist/lib/browser/chunk-TAWDJPMD.mjs +293 -0
  14. package/dist/lib/browser/chunk-TAWDJPMD.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-VZICDGBW.mjs +1813 -0
  16. package/dist/lib/browser/chunk-VZICDGBW.mjs.map +7 -0
  17. package/dist/lib/browser/{blueprint-definition-6BKYTMJS.mjs → chunk-ZFLSTQSE.mjs} +40 -38
  18. package/dist/lib/browser/chunk-ZFLSTQSE.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +113 -105
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/markdown-TSXOA3GV.mjs +210 -0
  22. package/dist/lib/browser/markdown-TSXOA3GV.mjs.map +7 -0
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/operation-resolver-MDMEBYH2.mjs +441 -0
  25. package/dist/lib/browser/operation-resolver-MDMEBYH2.mjs.map +7 -0
  26. package/dist/lib/browser/react-root-Q7U5D3DA.mjs +25 -0
  27. package/dist/lib/browser/react-root-Q7U5D3DA.mjs.map +7 -0
  28. package/dist/lib/browser/{react-surface-BCD5ODQ6.mjs → react-surface-WDZQSDWH.mjs} +35 -35
  29. package/dist/lib/browser/react-surface-WDZQSDWH.mjs.map +7 -0
  30. package/dist/lib/browser/repair-TDKAFAGH.mjs +38 -0
  31. package/dist/lib/browser/repair-TDKAFAGH.mjs.map +7 -0
  32. package/dist/lib/browser/settings-OOKKVXV7.mjs +32 -0
  33. package/dist/lib/browser/settings-OOKKVXV7.mjs.map +7 -0
  34. package/dist/lib/browser/state-3LKZHDRI.mjs +24 -0
  35. package/dist/lib/browser/state-3LKZHDRI.mjs.map +7 -0
  36. package/dist/lib/browser/types/index.mjs +7 -7
  37. package/dist/lib/node-esm/app-graph-builder-3LJAPDUW.mjs +189 -0
  38. package/dist/lib/node-esm/app-graph-builder-3LJAPDUW.mjs.map +7 -0
  39. package/dist/lib/node-esm/blueprint-definition-MZZXXL37.mjs +18 -0
  40. package/dist/lib/node-esm/blueprint-definition-MZZXXL37.mjs.map +7 -0
  41. package/dist/lib/node-esm/blueprints/index.mjs +9 -0
  42. package/dist/lib/node-esm/call-manager-MMCTNFOH.mjs +27 -0
  43. package/dist/lib/node-esm/call-manager-MMCTNFOH.mjs.map +7 -0
  44. package/dist/lib/node-esm/chunk-3RD3IVVD.mjs +1814 -0
  45. package/dist/lib/node-esm/chunk-3RD3IVVD.mjs.map +7 -0
  46. package/dist/lib/node-esm/{blueprint-definition-6LEAWSC7.mjs → chunk-AQHPP6ZX.mjs} +40 -38
  47. package/dist/lib/node-esm/chunk-AQHPP6ZX.mjs.map +7 -0
  48. package/dist/lib/node-esm/chunk-ARTUUKTM.mjs +294 -0
  49. package/dist/lib/node-esm/chunk-ARTUUKTM.mjs.map +7 -0
  50. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  51. package/dist/lib/node-esm/{chunk-PZH2EDU5.mjs → chunk-KRBZBJRI.mjs} +14 -12
  52. package/dist/lib/node-esm/chunk-KRBZBJRI.mjs.map +7 -0
  53. package/dist/lib/node-esm/{chunk-7KZWZS2U.mjs → chunk-QP3KQOPQ.mjs} +68 -51
  54. package/dist/lib/node-esm/chunk-QP3KQOPQ.mjs.map +7 -0
  55. package/dist/lib/node-esm/index.mjs +113 -105
  56. package/dist/lib/node-esm/index.mjs.map +4 -4
  57. package/dist/lib/node-esm/markdown-N2UJ3D6L.mjs +211 -0
  58. package/dist/lib/node-esm/markdown-N2UJ3D6L.mjs.map +7 -0
  59. package/dist/lib/node-esm/meta.json +1 -1
  60. package/dist/lib/node-esm/operation-resolver-7PHDJZA2.mjs +442 -0
  61. package/dist/lib/node-esm/operation-resolver-7PHDJZA2.mjs.map +7 -0
  62. package/dist/lib/node-esm/react-root-SZIGQRDZ.mjs +26 -0
  63. package/dist/lib/node-esm/react-root-SZIGQRDZ.mjs.map +7 -0
  64. package/dist/lib/node-esm/{react-surface-WZH7OAO3.mjs → react-surface-24PNWUDX.mjs} +35 -35
  65. package/dist/lib/node-esm/react-surface-24PNWUDX.mjs.map +7 -0
  66. package/dist/lib/node-esm/repair-LHLLGXKF.mjs +39 -0
  67. package/dist/lib/node-esm/repair-LHLLGXKF.mjs.map +7 -0
  68. package/dist/lib/node-esm/settings-LXZQXSPL.mjs +33 -0
  69. package/dist/lib/node-esm/settings-LXZQXSPL.mjs.map +7 -0
  70. package/dist/lib/node-esm/state-YYAK5ENM.mjs +25 -0
  71. package/dist/lib/node-esm/state-YYAK5ENM.mjs.map +7 -0
  72. package/dist/lib/node-esm/types/index.mjs +7 -7
  73. package/dist/types/src/ThreadPlugin.d.ts +2 -1
  74. package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
  75. package/dist/types/src/blueprints/index.d.ts +2 -0
  76. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  77. package/dist/types/src/blueprints/thread-blueprint.d.ts +21 -0
  78. package/dist/types/src/blueprints/thread-blueprint.d.ts.map +1 -0
  79. package/dist/types/src/calls/call-manager.d.ts +40 -30
  80. package/dist/types/src/calls/call-manager.d.ts.map +1 -1
  81. package/dist/types/src/calls/call-swarm-synchronizer.d.ts +2 -2
  82. package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +1 -1
  83. package/dist/types/src/calls/media-manager.d.ts +1 -1
  84. package/dist/types/src/calls/media-manager.d.ts.map +1 -1
  85. package/dist/types/src/calls/util/calls-service.d.ts +1 -1
  86. package/dist/types/src/calls/util/calls-service.d.ts.map +1 -1
  87. package/dist/types/src/calls/util/task-scheduling.d.ts +2 -2
  88. package/dist/types/src/calls/util/task-scheduling.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  90. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  92. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +9 -0
  94. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -0
  95. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +3 -0
  96. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/call-manager/call-manager.d.ts +6 -0
  98. package/dist/types/src/capabilities/call-manager/call-manager.d.ts.map +1 -0
  99. package/dist/types/src/capabilities/call-manager/index.d.ts +3 -0
  100. package/dist/types/src/capabilities/call-manager/index.d.ts.map +1 -0
  101. package/dist/types/src/capabilities/index.d.ts +10 -16
  102. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/markdown/index.d.ts +3 -0
  104. package/dist/types/src/capabilities/markdown/index.d.ts.map +1 -0
  105. package/dist/types/src/capabilities/markdown/markdown.d.ts +5 -0
  106. package/dist/types/src/capabilities/markdown/markdown.d.ts.map +1 -0
  107. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  108. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  109. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  110. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  111. package/dist/types/src/capabilities/react-root/index.d.ts +6 -0
  112. package/dist/types/src/capabilities/react-root/index.d.ts.map +1 -0
  113. package/dist/types/src/capabilities/react-root/react-root.d.ts +9 -0
  114. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -0
  115. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  116. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  117. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  118. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  119. package/dist/types/src/capabilities/repair/index.d.ts +3 -0
  120. package/dist/types/src/capabilities/repair/index.d.ts.map +1 -0
  121. package/dist/types/src/capabilities/repair/repair.d.ts +6 -0
  122. package/dist/types/src/capabilities/repair/repair.d.ts.map +1 -0
  123. package/dist/types/src/capabilities/settings/index.d.ts +3 -0
  124. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  125. package/dist/types/src/capabilities/settings/settings.d.ts +5 -0
  126. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  127. package/dist/types/src/capabilities/state/index.d.ts +3 -0
  128. package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
  129. package/dist/types/src/capabilities/state/state.d.ts +7 -0
  130. package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
  131. package/dist/types/src/components/Call/Call.d.ts.map +1 -1
  132. package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
  133. package/dist/types/src/components/CallSidebar.d.ts.map +1 -1
  134. package/dist/types/src/components/ChannelContainer.d.ts +4 -5
  135. package/dist/types/src/components/ChannelContainer.d.ts.map +1 -1
  136. package/dist/types/src/components/ChannelContainer.stories.d.ts +5 -1
  137. package/dist/types/src/components/ChannelContainer.stories.d.ts.map +1 -1
  138. package/dist/types/src/components/Chat.stories.d.ts +4 -0
  139. package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
  140. package/dist/types/src/components/ChatContainer.d.ts +2 -2
  141. package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
  142. package/dist/types/src/components/Comments.stories.d.ts +4 -0
  143. package/dist/types/src/components/Comments.stories.d.ts.map +1 -1
  144. package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
  145. package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -1
  146. package/dist/types/src/components/Lobby/Lobby.d.ts.map +1 -1
  147. package/dist/types/src/components/Media/VideoObject.d.ts +1 -1
  148. package/dist/types/src/components/Media/VideoObject.stories.d.ts +1 -1
  149. package/dist/types/src/components/MessageContainer.d.ts +3 -2
  150. package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
  151. package/dist/types/src/components/Participant/Participant.d.ts.map +1 -1
  152. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts +4 -0
  153. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +1 -1
  154. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +4 -0
  155. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +1 -1
  156. package/dist/types/src/components/ThreadCompanion.d.ts.map +1 -1
  157. package/dist/types/src/components/ThreadSettings.d.ts +4 -2
  158. package/dist/types/src/components/ThreadSettings.d.ts.map +1 -1
  159. package/dist/types/src/components/index.d.ts +2 -2
  160. package/dist/types/src/components/index.d.ts.map +1 -1
  161. package/dist/types/src/components/testing.d.ts +1 -1
  162. package/dist/types/src/components/testing.d.ts.map +1 -1
  163. package/dist/types/src/extensions/threads.d.ts +7 -2
  164. package/dist/types/src/extensions/threads.d.ts.map +1 -1
  165. package/dist/types/src/functions/create-proposals.d.ts.map +1 -1
  166. package/dist/types/src/hooks/analytics.d.ts +1 -2
  167. package/dist/types/src/hooks/analytics.d.ts.map +1 -1
  168. package/dist/types/src/index.d.ts +1 -1
  169. package/dist/types/src/index.d.ts.map +1 -1
  170. package/dist/types/src/meta.d.ts +2 -2
  171. package/dist/types/src/meta.d.ts.map +1 -1
  172. package/dist/types/src/testing/stories.d.ts +2 -1
  173. package/dist/types/src/testing/stories.d.ts.map +1 -1
  174. package/dist/types/src/translations.d.ts +4 -0
  175. package/dist/types/src/translations.d.ts.map +1 -1
  176. package/dist/types/src/types/Channel.d.ts +691 -12
  177. package/dist/types/src/types/Channel.d.ts.map +1 -1
  178. package/dist/types/src/types/capabilities.d.ts +23 -0
  179. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  180. package/dist/types/src/types/index.d.ts +1 -1
  181. package/dist/types/src/types/index.d.ts.map +1 -1
  182. package/dist/types/src/types/types.d.ts +3213 -354
  183. package/dist/types/src/types/types.d.ts.map +1 -1
  184. package/dist/types/tsconfig.tsbuildinfo +1 -1
  185. package/package.json +86 -69
  186. package/src/ThreadPlugin.tsx +54 -90
  187. package/src/blueprints/index.ts +5 -0
  188. package/src/blueprints/thread-blueprint.ts +32 -0
  189. package/src/calls/call-manager.ts +76 -52
  190. package/src/calls/call-swarm-synchronizer.ts +2 -2
  191. package/src/calls/media-manager.ts +1 -1
  192. package/src/calls/util/calls-service.ts +1 -1
  193. package/src/calls/util/task-scheduling.ts +4 -4
  194. package/src/capabilities/app-graph-builder/app-graph-builder.ts +201 -0
  195. package/src/capabilities/app-graph-builder/index.ts +7 -0
  196. package/src/capabilities/blueprint-definition/blueprint-definition.ts +23 -0
  197. package/src/capabilities/blueprint-definition/index.ts +7 -0
  198. package/src/capabilities/call-manager/call-manager.ts +26 -0
  199. package/src/capabilities/call-manager/index.ts +7 -0
  200. package/src/capabilities/index.ts +10 -13
  201. package/src/capabilities/markdown/index.ts +7 -0
  202. package/src/capabilities/markdown/markdown.ts +83 -0
  203. package/src/capabilities/operation-resolver/index.ts +7 -0
  204. package/src/capabilities/operation-resolver/operation-resolver.ts +400 -0
  205. package/src/capabilities/react-root/index.ts +7 -0
  206. package/src/capabilities/react-root/react-root.tsx +20 -0
  207. package/src/capabilities/react-surface/index.ts +7 -0
  208. package/src/capabilities/react-surface/react-surface.tsx +97 -0
  209. package/src/capabilities/repair/index.ts +7 -0
  210. package/src/capabilities/repair/repair.ts +51 -0
  211. package/src/capabilities/settings/index.ts +7 -0
  212. package/src/capabilities/settings/settings.ts +33 -0
  213. package/src/capabilities/state/index.ts +7 -0
  214. package/src/capabilities/state/state.ts +22 -0
  215. package/src/components/Call/Call.tsx +7 -3
  216. package/src/components/Call/Toolbar.tsx +28 -20
  217. package/src/components/CallSidebar.tsx +4 -2
  218. package/src/components/ChannelContainer.stories.tsx +12 -10
  219. package/src/components/ChannelContainer.tsx +18 -16
  220. package/src/components/Chat.stories.tsx +8 -8
  221. package/src/components/ChatContainer.tsx +8 -9
  222. package/src/components/Comments.stories.tsx +22 -20
  223. package/src/components/CommentsContainer.tsx +1 -2
  224. package/src/components/CommentsThreadContainer.tsx +10 -11
  225. package/src/components/Lobby/Lobby.tsx +8 -6
  226. package/src/components/Media/AudioStream.tsx +2 -2
  227. package/src/components/Media/VideoObject.tsx +1 -1
  228. package/src/components/MessageContainer.tsx +54 -23
  229. package/src/components/Participant/Participant.tsx +31 -18
  230. package/src/components/ResponsiveGrid/ResponsiveContainer.tsx +1 -1
  231. package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +1 -1
  232. package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +1 -1
  233. package/src/components/ThreadCompanion.tsx +70 -65
  234. package/src/components/ThreadSettings.tsx +6 -1
  235. package/src/components/command-extension.ts +2 -2
  236. package/src/components/index.ts +2 -5
  237. package/src/components/testing.ts +1 -3
  238. package/src/extensions/threads.ts +78 -43
  239. package/src/functions/create-proposals.ts +6 -7
  240. package/src/hooks/analytics.ts +23 -20
  241. package/src/index.ts +1 -1
  242. package/src/meta.ts +2 -2
  243. package/src/testing/stories.ts +15 -11
  244. package/src/translations.ts +2 -0
  245. package/src/types/Channel.ts +13 -10
  246. package/src/types/capabilities.ts +34 -0
  247. package/src/types/index.ts +1 -1
  248. package/src/types/types.ts +161 -74
  249. package/dist/lib/browser/ChannelContainer-MX5ABVGC.mjs +0 -16
  250. package/dist/lib/browser/ChatContainer-7F5Y6GXJ.mjs +0 -15
  251. package/dist/lib/browser/app-graph-builder-HNYLII5E.mjs +0 -170
  252. package/dist/lib/browser/app-graph-builder-HNYLII5E.mjs.map +0 -7
  253. package/dist/lib/browser/blueprint-definition-6BKYTMJS.mjs.map +0 -7
  254. package/dist/lib/browser/call-manager-MAXQLMMS.mjs +0 -24
  255. package/dist/lib/browser/call-manager-MAXQLMMS.mjs.map +0 -7
  256. package/dist/lib/browser/chunk-BBTXGRIR.mjs +0 -18
  257. package/dist/lib/browser/chunk-BBTXGRIR.mjs.map +0 -7
  258. package/dist/lib/browser/chunk-BQWQFTWT.mjs +0 -612
  259. package/dist/lib/browser/chunk-BQWQFTWT.mjs.map +0 -7
  260. package/dist/lib/browser/chunk-FR6MEAZI.mjs +0 -377
  261. package/dist/lib/browser/chunk-FR6MEAZI.mjs.map +0 -7
  262. package/dist/lib/browser/chunk-INQVAYPN.mjs +0 -989
  263. package/dist/lib/browser/chunk-INQVAYPN.mjs.map +0 -7
  264. package/dist/lib/browser/chunk-K2DUJRFJ.mjs +0 -27
  265. package/dist/lib/browser/chunk-K2DUJRFJ.mjs.map +0 -7
  266. package/dist/lib/browser/chunk-KOBXMDCI.mjs.map +0 -7
  267. package/dist/lib/browser/chunk-NMJEVD36.mjs +0 -168
  268. package/dist/lib/browser/chunk-NMJEVD36.mjs.map +0 -7
  269. package/dist/lib/browser/chunk-OOUDK7Q7.mjs +0 -23
  270. package/dist/lib/browser/chunk-OOUDK7Q7.mjs.map +0 -7
  271. package/dist/lib/browser/chunk-ZCW3NSDZ.mjs.map +0 -7
  272. package/dist/lib/browser/intent-resolver-BOUT4WGY.mjs +0 -361
  273. package/dist/lib/browser/intent-resolver-BOUT4WGY.mjs.map +0 -7
  274. package/dist/lib/browser/markdown-74EUSQGV.mjs +0 -171
  275. package/dist/lib/browser/markdown-74EUSQGV.mjs.map +0 -7
  276. package/dist/lib/browser/react-root-BVG7B2LW.mjs +0 -28
  277. package/dist/lib/browser/react-root-BVG7B2LW.mjs.map +0 -7
  278. package/dist/lib/browser/react-surface-BCD5ODQ6.mjs.map +0 -7
  279. package/dist/lib/browser/settings-LGQUZITB.mjs +0 -22
  280. package/dist/lib/browser/settings-LGQUZITB.mjs.map +0 -7
  281. package/dist/lib/browser/state-36REWXO5.mjs +0 -34
  282. package/dist/lib/browser/state-36REWXO5.mjs.map +0 -7
  283. package/dist/lib/node-esm/ChannelContainer-2JJJ3IDK.mjs +0 -17
  284. package/dist/lib/node-esm/ChatContainer-C526R4DI.mjs +0 -16
  285. package/dist/lib/node-esm/app-graph-builder-SOCKP4ST.mjs +0 -171
  286. package/dist/lib/node-esm/app-graph-builder-SOCKP4ST.mjs.map +0 -7
  287. package/dist/lib/node-esm/blueprint-definition-6LEAWSC7.mjs.map +0 -7
  288. package/dist/lib/node-esm/call-manager-LC4OS2KD.mjs +0 -25
  289. package/dist/lib/node-esm/call-manager-LC4OS2KD.mjs.map +0 -7
  290. package/dist/lib/node-esm/chunk-5DLH4MWN.mjs +0 -25
  291. package/dist/lib/node-esm/chunk-5DLH4MWN.mjs.map +0 -7
  292. package/dist/lib/node-esm/chunk-7KZWZS2U.mjs.map +0 -7
  293. package/dist/lib/node-esm/chunk-JF7THR7F.mjs +0 -990
  294. package/dist/lib/node-esm/chunk-JF7THR7F.mjs.map +0 -7
  295. package/dist/lib/node-esm/chunk-JJW6YMLC.mjs +0 -613
  296. package/dist/lib/node-esm/chunk-JJW6YMLC.mjs.map +0 -7
  297. package/dist/lib/node-esm/chunk-PZH2EDU5.mjs.map +0 -7
  298. package/dist/lib/node-esm/chunk-TJKM5JZT.mjs +0 -169
  299. package/dist/lib/node-esm/chunk-TJKM5JZT.mjs.map +0 -7
  300. package/dist/lib/node-esm/chunk-TWKGDFCS.mjs +0 -378
  301. package/dist/lib/node-esm/chunk-TWKGDFCS.mjs.map +0 -7
  302. package/dist/lib/node-esm/chunk-XI45H4IV.mjs +0 -28
  303. package/dist/lib/node-esm/chunk-XI45H4IV.mjs.map +0 -7
  304. package/dist/lib/node-esm/chunk-ZQAGII7M.mjs +0 -19
  305. package/dist/lib/node-esm/chunk-ZQAGII7M.mjs.map +0 -7
  306. package/dist/lib/node-esm/intent-resolver-45PLIFCJ.mjs +0 -362
  307. package/dist/lib/node-esm/intent-resolver-45PLIFCJ.mjs.map +0 -7
  308. package/dist/lib/node-esm/markdown-566XXB55.mjs +0 -172
  309. package/dist/lib/node-esm/markdown-566XXB55.mjs.map +0 -7
  310. package/dist/lib/node-esm/react-root-DCY6DKLC.mjs +0 -29
  311. package/dist/lib/node-esm/react-root-DCY6DKLC.mjs.map +0 -7
  312. package/dist/lib/node-esm/react-surface-WZH7OAO3.mjs.map +0 -7
  313. package/dist/lib/node-esm/settings-WKLJSP6R.mjs +0 -23
  314. package/dist/lib/node-esm/settings-WKLJSP6R.mjs.map +0 -7
  315. package/dist/lib/node-esm/state-X3W67GTL.mjs +0 -35
  316. package/dist/lib/node-esm/state-X3W67GTL.mjs.map +0 -7
  317. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  318. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  319. package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -5
  320. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
  321. package/dist/types/src/capabilities/call-manager.d.ts +0 -5
  322. package/dist/types/src/capabilities/call-manager.d.ts.map +0 -1
  323. package/dist/types/src/capabilities/capabilities.d.ts +0 -27
  324. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  325. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  326. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  327. package/dist/types/src/capabilities/markdown.d.ts +0 -4
  328. package/dist/types/src/capabilities/markdown.d.ts.map +0 -1
  329. package/dist/types/src/capabilities/react-root.d.ts +0 -7
  330. package/dist/types/src/capabilities/react-root.d.ts.map +0 -1
  331. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  332. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  333. package/dist/types/src/capabilities/settings.d.ts +0 -4
  334. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  335. package/dist/types/src/capabilities/state.d.ts +0 -7
  336. package/dist/types/src/capabilities/state.d.ts.map +0 -1
  337. package/dist/types/src/types/Thread.d.ts +0 -167
  338. package/dist/types/src/types/Thread.d.ts.map +0 -1
  339. package/src/capabilities/app-graph-builder.ts +0 -194
  340. package/src/capabilities/blueprint-definition.ts +0 -38
  341. package/src/capabilities/call-manager.ts +0 -20
  342. package/src/capabilities/capabilities.ts +0 -33
  343. package/src/capabilities/intent-resolver.ts +0 -311
  344. package/src/capabilities/markdown.ts +0 -71
  345. package/src/capabilities/react-root.tsx +0 -17
  346. package/src/capabilities/react-surface.tsx +0 -90
  347. package/src/capabilities/settings.ts +0 -19
  348. package/src/capabilities/state.ts +0 -26
  349. package/src/types/Thread.ts +0 -26
  350. /package/dist/lib/browser/{ChannelContainer-MX5ABVGC.mjs.map → blueprints/index.mjs.map} +0 -0
  351. /package/dist/lib/browser/{ChatContainer-7F5Y6GXJ.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  352. /package/dist/lib/node-esm/{ChannelContainer-2JJJ3IDK.mjs.map → blueprints/index.mjs.map} +0 -0
  353. /package/dist/lib/node-esm/{ChatContainer-C526R4DI.mjs.map → chunk-HSLMI22Q.mjs.map} +0 -0
@@ -4,38 +4,55 @@
4
4
 
5
5
  import * as Schema from 'effect/Schema';
6
6
 
7
- import { Type } from '@dxos/echo';
8
- import { EchoObjectSchema, SpaceSchema } from '@dxos/react-client/echo';
7
+ import { Capability } from '@dxos/app-framework';
8
+ import { Key, Type } from '@dxos/echo';
9
+ import { Operation } from '@dxos/operation';
10
+ import { SpaceSchema } from '@dxos/react-client/echo';
9
11
  import { Collection } from '@dxos/schema';
10
- import { Actor, AnchoredTo, Message } from '@dxos/types';
12
+ import { Actor, AnchoredTo, Message, Thread } from '@dxos/types';
11
13
 
12
14
  import { meta } from '../meta';
13
15
 
14
16
  import * as Channel from './Channel';
15
- import * as Thread from './Thread';
16
17
 
17
- export namespace ThreadAction {
18
- export class onCreateSpace extends Schema.TaggedClass<onCreateSpace>()(`${meta.id}/action/on-space-created`, {
19
- input: Schema.Struct({
20
- space: SpaceSchema,
21
- rootCollection: Collection.Collection,
22
- }),
23
- output: Schema.Void,
24
- }) {}
18
+ const THREAD_OPERATION = `${meta.id}/operation`;
19
+
20
+ /**
21
+ * Operations for the Thread plugin.
22
+ * Note: Complex ECHO types are typed as Schema.Any to avoid serialization issues.
23
+ */
24
+ export namespace ThreadOperation {
25
+ export const OnCreateSpace = Operation.make({
26
+ meta: { key: `${THREAD_OPERATION}/on-create-space`, name: 'On Create Space' },
27
+ services: [Capability.Service],
28
+ schema: {
29
+ input: Schema.Struct({
30
+ space: SpaceSchema,
31
+ rootCollection: Collection.Collection,
32
+ isDefault: Schema.Boolean.pipe(Schema.optional),
33
+ }),
34
+ output: Schema.Void,
35
+ },
36
+ });
25
37
 
26
- export class CreateChannel extends Schema.TaggedClass<CreateChannel>()(`${meta.id}/action/create-channel`, {
27
- input: Schema.Struct({
28
- spaceId: Type.SpaceId,
29
- name: Schema.optional(Schema.String),
30
- }),
31
- output: Schema.Struct({
32
- object: Channel.Channel,
33
- }),
34
- }) {}
38
+ export const CreateChannel = Operation.make({
39
+ meta: { key: `${THREAD_OPERATION}/create-channel`, name: 'Create Channel' },
40
+ services: [Capability.Service],
41
+ schema: {
42
+ input: Schema.Struct({
43
+ spaceId: Key.SpaceId,
44
+ name: Schema.optional(Schema.String),
45
+ }),
46
+ output: Schema.Struct({
47
+ object: Channel.Channel,
48
+ }),
49
+ },
50
+ });
35
51
 
36
- export class CreateChannelThread extends Schema.TaggedClass<CreateChannelThread>()(
37
- `${meta.id}/action/create-channel-thread`,
38
- {
52
+ export const CreateChannelThread = Operation.make({
53
+ meta: { key: `${THREAD_OPERATION}/create-channel-thread`, name: 'Create Channel Thread' },
54
+ services: [Capability.Service],
55
+ schema: {
39
56
  input: Schema.Struct({
40
57
  channel: Channel.Channel,
41
58
  }),
@@ -43,60 +60,129 @@ export namespace ThreadAction {
43
60
  object: Thread.Thread,
44
61
  }),
45
62
  },
46
- ) {}
63
+ });
47
64
 
48
- export class Create extends Schema.TaggedClass<Create>()(`${meta.id}/action/create`, {
49
- input: Schema.Struct({
50
- name: Schema.optional(Schema.String),
51
- anchor: Schema.optional(Schema.String),
52
- subject: EchoObjectSchema,
53
- }),
54
- output: Schema.Void,
55
- }) {}
56
-
57
- export class Delete extends Schema.TaggedClass<Delete>()(`${meta.id}/action/delete`, {
58
- input: Schema.Struct({
59
- anchor: AnchoredTo.AnchoredTo,
60
- subject: EchoObjectSchema,
61
- thread: Schema.optional(Thread.Thread),
62
- }),
63
- output: Schema.Void,
64
- }) {}
65
+ export const Create = Operation.make({
66
+ meta: { key: `${THREAD_OPERATION}/create`, name: 'Create Thread' },
67
+ services: [Capability.Service],
68
+ schema: {
69
+ input: Schema.Struct({
70
+ name: Schema.optional(Schema.String),
71
+ anchor: Schema.optional(Schema.String),
72
+ subject: Type.Obj,
73
+ }),
74
+ output: Schema.Void,
75
+ },
76
+ });
65
77
 
66
- export class Select extends Schema.TaggedClass<Select>()(`${meta.id}/action/select`, {
67
- input: Schema.Struct({
68
- current: Schema.String,
69
- }),
70
- output: Schema.Void,
71
- }) {}
78
+ export const DeleteOutput = Schema.Struct({
79
+ thread: Thread.Thread.annotations({ description: 'The deleted thread.' }),
80
+ anchor: AnchoredTo.AnchoredTo.annotations({ description: 'The deleted anchor.' }),
81
+ }).pipe(Schema.partial);
72
82
 
73
- export class ToggleResolved extends Schema.TaggedClass<ToggleResolved>()(`${meta.id}/action/toggle-resolved`, {
74
- input: Schema.Struct({
75
- thread: Thread.Thread,
76
- }),
77
- output: Schema.Void,
78
- }) {}
79
-
80
- export class AddMessage extends Schema.TaggedClass<AddMessage>()(`${meta.id}/action/add-message`, {
81
- input: Schema.Struct({
82
- subject: EchoObjectSchema,
83
- anchor: AnchoredTo.AnchoredTo,
84
- sender: Actor.Actor,
85
- text: Schema.String,
86
- }),
87
- output: Schema.Void,
88
- }) {}
89
-
90
- export class DeleteMessage extends Schema.TaggedClass<DeleteMessage>()(`${meta.id}/action/delete-message`, {
91
- input: Schema.Struct({
92
- anchor: AnchoredTo.AnchoredTo,
93
- subject: EchoObjectSchema,
94
- messageId: Schema.String,
95
- message: Schema.optional(Message.Message),
96
- messageIndex: Schema.optional(Schema.Number),
83
+ export type DeleteOutput = Schema.Schema.Type<typeof DeleteOutput>;
84
+
85
+ export const Delete = Operation.make({
86
+ meta: { key: `${THREAD_OPERATION}/delete`, name: 'Delete Thread' },
87
+ services: [Capability.Service],
88
+ schema: {
89
+ input: Schema.Struct({
90
+ anchor: AnchoredTo.AnchoredTo,
91
+ subject: Type.Obj,
92
+ thread: Schema.optional(Thread.Thread),
93
+ }),
94
+ output: DeleteOutput,
95
+ },
96
+ });
97
+
98
+ export const Select = Operation.make({
99
+ meta: { key: `${THREAD_OPERATION}/select`, name: 'Select Thread' },
100
+ services: [Capability.Service],
101
+ schema: {
102
+ input: Schema.Struct({
103
+ current: Schema.String,
104
+ }),
105
+ output: Schema.Void,
106
+ },
107
+ });
108
+
109
+ export const ToggleResolved = Operation.make({
110
+ meta: { key: `${THREAD_OPERATION}/toggle-resolved`, name: 'Toggle Resolved' },
111
+ services: [Capability.Service],
112
+ schema: {
113
+ input: Schema.Struct({
114
+ thread: Thread.Thread,
115
+ }),
116
+ output: Schema.Void,
117
+ },
118
+ });
119
+
120
+ export const AddMessage = Operation.make({
121
+ meta: { key: `${THREAD_OPERATION}/add-message`, name: 'Add Message' },
122
+ services: [Capability.Service],
123
+ schema: {
124
+ input: Schema.Struct({
125
+ subject: Type.Obj,
126
+ anchor: AnchoredTo.AnchoredTo,
127
+ sender: Actor.Actor,
128
+ text: Schema.String,
129
+ }),
130
+ output: Schema.Void,
131
+ },
132
+ });
133
+
134
+ export const DeleteMessageOutput = Schema.partial(
135
+ Schema.Struct({
136
+ message: Message.Message.annotations({ description: 'The deleted message.' }),
137
+ messageIndex: Schema.Number.annotations({ description: 'The index the message was at.' }),
97
138
  }),
98
- output: Schema.Void,
99
- }) {}
139
+ );
140
+
141
+ export type DeleteMessageOutput = Schema.Schema.Type<typeof DeleteMessageOutput>;
142
+
143
+ export const DeleteMessage = Operation.make({
144
+ meta: { key: `${THREAD_OPERATION}/delete-message`, name: 'Delete Message' },
145
+ services: [Capability.Service],
146
+ schema: {
147
+ input: Schema.Struct({
148
+ anchor: AnchoredTo.AnchoredTo,
149
+ subject: Type.Obj,
150
+ messageId: Schema.String,
151
+ }),
152
+ output: DeleteMessageOutput,
153
+ },
154
+ });
155
+
156
+ /**
157
+ * Restore a deleted thread (inverse of Delete).
158
+ */
159
+ export const Restore = Operation.make({
160
+ meta: { key: `${THREAD_OPERATION}/restore`, name: 'Restore Thread' },
161
+ services: [Capability.Service],
162
+ schema: {
163
+ input: Schema.Struct({
164
+ thread: Thread.Thread.annotations({ description: 'The thread to restore.' }),
165
+ anchor: AnchoredTo.AnchoredTo.annotations({ description: 'The anchor relation to restore.' }),
166
+ }),
167
+ output: Schema.Void,
168
+ },
169
+ });
170
+
171
+ /**
172
+ * Restore a deleted message (inverse of DeleteMessage).
173
+ */
174
+ export const RestoreMessage = Operation.make({
175
+ meta: { key: `${THREAD_OPERATION}/restore-message`, name: 'Restore Message' },
176
+ services: [Capability.Service],
177
+ schema: {
178
+ input: Schema.Struct({
179
+ anchor: AnchoredTo.AnchoredTo.annotations({ description: 'The anchor of the thread.' }),
180
+ message: Message.Message.annotations({ description: 'The message to restore.' }),
181
+ messageIndex: Schema.Number.annotations({ description: 'The index to restore the message at.' }),
182
+ }),
183
+ output: Schema.Void,
184
+ },
185
+ });
100
186
  }
101
187
 
102
188
  export const ThreadSettingsSchema = Schema.mutable(Schema.Struct({}));
@@ -114,6 +200,7 @@ export type ThreadState = {
114
200
  /** Object toolbar state. */
115
201
  toolbar: Record<string, boolean>;
116
202
  /** In-memory draft threads. */
203
+ // TODO(burdon): Drafts are getting lost.
117
204
  drafts: Record<string, AnchoredTo.AnchoredTo[]>;
118
205
  current?: string | undefined;
119
206
  };
@@ -1,16 +0,0 @@
1
- import {
2
- ChannelContainer,
3
- ChannelContainer_default
4
- } from "./chunk-INQVAYPN.mjs";
5
- import "./chunk-OOUDK7Q7.mjs";
6
- import "./chunk-BBTXGRIR.mjs";
7
- import "./chunk-FR6MEAZI.mjs";
8
- import "./chunk-KOBXMDCI.mjs";
9
- import "./chunk-CP7E2HRE.mjs";
10
- import "./chunk-ISCHODBV.mjs";
11
- import "./chunk-K2DUJRFJ.mjs";
12
- export {
13
- ChannelContainer,
14
- ChannelContainer_default as default
15
- };
16
- //# sourceMappingURL=ChannelContainer-MX5ABVGC.mjs.map
@@ -1,15 +0,0 @@
1
- import {
2
- ChatContainer,
3
- ChatContainer_default,
4
- ChatHeading
5
- } from "./chunk-FR6MEAZI.mjs";
6
- import "./chunk-KOBXMDCI.mjs";
7
- import "./chunk-CP7E2HRE.mjs";
8
- import "./chunk-ISCHODBV.mjs";
9
- import "./chunk-K2DUJRFJ.mjs";
10
- export {
11
- ChatContainer,
12
- ChatHeading,
13
- ChatContainer_default as default
14
- };
15
- //# sourceMappingURL=ChatContainer-7F5Y6GXJ.mjs.map
@@ -1,170 +0,0 @@
1
- import {
2
- Channel_exports,
3
- ThreadAction
4
- } from "./chunk-NMJEVD36.mjs";
5
- import {
6
- ThreadCapabilities
7
- } from "./chunk-BBTXGRIR.mjs";
8
- import {
9
- getAnchor
10
- } from "./chunk-CP7E2HRE.mjs";
11
- import {
12
- meta
13
- } from "./chunk-K2DUJRFJ.mjs";
14
-
15
- // src/capabilities/app-graph-builder.ts
16
- import { Atom } from "@effect-atom/atom-react";
17
- import * as Function from "effect/Function";
18
- import * as Option from "effect/Option";
19
- import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
20
- import { Obj } from "@dxos/echo";
21
- import { AttentionCapabilities } from "@dxos/plugin-attention";
22
- import { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
23
- import { ROOT_ID, atomFromSignal, createExtension } from "@dxos/plugin-graph";
24
- var app_graph_builder_default = ((context) => {
25
- const resolve = (typename) => context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
26
- return contributes(Capabilities.AppGraphBuilder, [
27
- createExtension({
28
- id: `${meta.id}/active-call`,
29
- connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map((node2) => {
30
- const [call] = get(context.capabilities(ThreadCapabilities.CallManager));
31
- return get(atomFromSignal(() => call?.joined ? [
32
- {
33
- id: `${node2.id}${ATTENDABLE_PATH_SEPARATOR}active-call`,
34
- type: DECK_COMPANION_TYPE,
35
- data: null,
36
- properties: {
37
- label: [
38
- "call panel label",
39
- {
40
- ns: meta.id
41
- }
42
- ],
43
- icon: "ph--video-conference--regular",
44
- position: "hoist",
45
- disposition: "hidden"
46
- }
47
- }
48
- ] : []));
49
- }), Option.getOrElse(() => [])))
50
- }),
51
- // TODO(wittjosiah): The channel shouldn't become the companion during a call.
52
- // Alternative: the call/meeting/thread should be a child node of the channel and that should be opened.
53
- createExtension({
54
- id: `${meta.id}/channel-chat-companion`,
55
- connector: (node) => {
56
- return Atom.make((get) => {
57
- return Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(Channel_exports.Channel, node2.data) ? Option.some(node2.data) : Option.none()), Option.map((channel) => {
58
- const callManager = context.getCapability(ThreadCapabilities.CallManager);
59
- const joined = get(atomFromSignal(() => callManager.joined && callManager.roomId === Obj.getDXN(channel).toString()));
60
- if (!joined) {
61
- return [];
62
- }
63
- return [
64
- {
65
- id: `${Obj.getDXN(channel).toString()}${ATTENDABLE_PATH_SEPARATOR}chat`,
66
- type: PLANK_COMPANION_TYPE,
67
- data: "chat",
68
- properties: {
69
- label: [
70
- "channel companion label",
71
- {
72
- ns: meta.id
73
- }
74
- ],
75
- icon: "ph--hash--regular",
76
- position: "hoist",
77
- disposition: "hidden"
78
- }
79
- }
80
- ];
81
- }), Option.getOrElse(() => []));
82
- });
83
- }
84
- }),
85
- createExtension({
86
- id: `${meta.id}/comments-companion`,
87
- connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
88
- if (!Obj.isObject(node2.data) || Obj.instanceOf(Channel_exports.Channel, node2.data)) {
89
- return Option.none();
90
- }
91
- const metadata = resolve(Obj.getTypename(node2.data));
92
- return typeof metadata.comments === "string" ? Option.some(node2) : Option.none();
93
- }), Option.map((node2) => [
94
- {
95
- id: [
96
- node2.id,
97
- "comments"
98
- ].join(ATTENDABLE_PATH_SEPARATOR),
99
- type: PLANK_COMPANION_TYPE,
100
- data: "comments",
101
- properties: {
102
- label: [
103
- "comments label",
104
- {
105
- ns: meta.id
106
- }
107
- ],
108
- icon: "ph--chat-text--regular",
109
- disposition: "hidden",
110
- position: "hoist"
111
- }
112
- }
113
- ]), Option.getOrElse(() => [])))
114
- }),
115
- createExtension({
116
- id: `${meta.id}/comment-toolbar`,
117
- actions: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
118
- if (!Obj.isObject(node2.data) || Obj.instanceOf(Channel_exports.Channel, node2.data)) {
119
- return Option.none();
120
- }
121
- const metadata = resolve(Obj.getTypename(node2.data));
122
- return typeof metadata.comments === "string" ? Option.some(node2.data) : Option.none();
123
- }), Option.map((object) => {
124
- const selectionManager = context.getCapability(AttentionCapabilities.Selection);
125
- const toolbar = get(context.capabilities(ThreadCapabilities.State))[0]?.state.toolbar ?? {};
126
- const disabled = get(atomFromSignal(() => {
127
- const metadata = resolve(Obj.getTypename(object));
128
- const selection = selectionManager.getSelection(Obj.getDXN(object).toString(), metadata.selectionMode);
129
- const anchor = getAnchor(selection);
130
- const invalidSelection = !anchor;
131
- const overlappingComment = toolbar[Obj.getDXN(object).toString()];
132
- return metadata.comments === "anchored" && invalidSelection || overlappingComment;
133
- }));
134
- return [
135
- {
136
- id: `${Obj.getDXN(object).toString()}/comment`,
137
- data: () => {
138
- const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);
139
- const metadata = resolve(Obj.getTypename(object));
140
- const selection = selectionManager.getSelection(Obj.getDXN(object).toString());
141
- const anchor = metadata.comments === "anchored" ? getAnchor(selection) : Date.now().toString();
142
- const name = metadata.getAnchorLabel?.(object, anchor);
143
- void dispatch(createIntent(ThreadAction.Create, {
144
- anchor,
145
- name,
146
- subject: object
147
- }));
148
- },
149
- properties: {
150
- label: [
151
- "add comment label",
152
- {
153
- ns: meta.id
154
- }
155
- ],
156
- icon: "ph--chat-text--regular",
157
- disposition: "toolbar",
158
- disabled,
159
- testId: "thread.comment.add"
160
- }
161
- }
162
- ];
163
- }), Option.getOrElse(() => [])))
164
- })
165
- ]);
166
- });
167
- export {
168
- app_graph_builder_default as default
169
- };
170
- //# sourceMappingURL=app-graph-builder-HNYLII5E.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom } from '@effect-atom/atom-react';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, type PluginContext, contributes, createIntent } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { ROOT_ID, atomFromSignal, createExtension } from '@dxos/plugin-graph';\n\nimport { meta } from '../meta';\nimport { Channel, ThreadAction } from '../types';\nimport { getAnchor } from '../util';\n\nimport { ThreadCapabilities } from './capabilities';\n\n// TODO(wittjosiah): Highlight active calls in L1.\n// Track active meetings by subscribing to meetings query and polling the swarms of recent meetings in the space.\nexport default (context: PluginContext) => {\n const resolve = (typename: string) =>\n context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n return contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/active-call`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map((node) => {\n const [call] = get(context.capabilities(ThreadCapabilities.CallManager));\n return get(\n atomFromSignal(() =>\n call?.joined\n ? [\n {\n id: `${node.id}${ATTENDABLE_PATH_SEPARATOR}active-call`,\n type: DECK_COMPANION_TYPE,\n data: null,\n properties: {\n label: ['call panel label', { ns: meta.id }],\n icon: 'ph--video-conference--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ]\n : [],\n ),\n );\n }),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n // TODO(wittjosiah): The channel shouldn't become the companion during a call.\n // Alternative: the call/meeting/thread should be a child node of the channel and that should be opened.\n createExtension({\n id: `${meta.id}/channel-chat-companion`,\n connector: (node) => {\n return Atom.make((get) => {\n return Function.pipe(\n get(node),\n Option.flatMap((node) =>\n Obj.instanceOf(Channel.Channel, node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((channel) => {\n const callManager = context.getCapability(ThreadCapabilities.CallManager);\n const joined = get(\n atomFromSignal(() => callManager.joined && callManager.roomId === Obj.getDXN(channel).toString()),\n );\n if (!joined) {\n return [];\n }\n\n return [\n {\n id: `${Obj.getDXN(channel).toString()}${ATTENDABLE_PATH_SEPARATOR}chat`,\n type: PLANK_COMPANION_TYPE,\n data: 'chat',\n properties: {\n label: ['channel companion label', { ns: meta.id }],\n icon: 'ph--hash--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ];\n }),\n Option.getOrElse(() => []),\n );\n });\n },\n }),\n createExtension({\n id: `${meta.id}/comments-companion`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(Channel.Channel, node.data)) {\n return Option.none();\n }\n const metadata = resolve(Obj.getTypename(node.data)!);\n return typeof metadata.comments === 'string' ? Option.some(node) : Option.none();\n }),\n Option.map((node) => [\n {\n id: [node.id, 'comments'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'comments',\n properties: {\n label: ['comments label', { ns: meta.id }],\n icon: 'ph--chat-text--regular',\n disposition: 'hidden',\n position: 'hoist',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/comment-toolbar`,\n actions: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(Channel.Channel, node.data)) {\n return Option.none();\n }\n const metadata = resolve(Obj.getTypename(node.data)!);\n return typeof metadata.comments === 'string' ? Option.some(node.data) : Option.none();\n }),\n Option.map((object) => {\n const selectionManager = context.getCapability(AttentionCapabilities.Selection);\n const toolbar = get(context.capabilities(ThreadCapabilities.State))[0]?.state.toolbar ?? {};\n const disabled = get(\n atomFromSignal(() => {\n const metadata = resolve(Obj.getTypename(object)!);\n const selection = selectionManager.getSelection(\n Obj.getDXN(object).toString(),\n metadata.selectionMode,\n );\n const anchor = getAnchor(selection);\n const invalidSelection = !anchor;\n const overlappingComment = toolbar[Obj.getDXN(object).toString()];\n return (metadata.comments === 'anchored' && invalidSelection) || overlappingComment;\n }),\n );\n\n return [\n {\n id: `${Obj.getDXN(object).toString()}/comment`,\n data: () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const metadata = resolve(Obj.getTypename(object)!);\n const selection = selectionManager.getSelection(Obj.getDXN(object).toString());\n // TODO(wittjosiah): Use presence of selection to determine if the comment should be anchored.\n // Requires all components which support selection (e.g. table/kanban) to support anchored comments.\n const anchor = metadata.comments === 'anchored' ? getAnchor(selection) : Date.now().toString();\n const name = metadata.getAnchorLabel?.(object, anchor);\n void dispatch(\n createIntent(ThreadAction.Create, {\n anchor,\n name,\n subject: object,\n }),\n );\n },\n properties: {\n label: ['add comment label', { ns: meta.id }],\n icon: 'ph--chat-text--regular',\n disposition: 'toolbar',\n disabled,\n testId: 'thread.comment.add',\n },\n },\n ];\n }),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;AAIA,SAASA,YAAY;AACrB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,cAAkCC,aAAaC,oBAAoB;AAC5E,SAASC,WAAW;AACpB,SAASC,6BAA6B;AACtC,SAASC,2BAA2BC,qBAAqBC,4BAA4B;AACrF,SAASC,SAASC,gBAAgBC,uBAAuB;AAUzD,IAAA,6BAAe,CAACC,YAAAA;AACd,QAAMC,UAAU,CAACC,aACfF,QAAQG,gBAAgBC,aAAaC,QAAQ,EAAEC,KAAK,CAAC,EAAEC,GAAE,MAAOA,OAAOL,QAAAA,GAAWM,YAAY,CAAC;AAEjG,SAAOC,YAAYL,aAAaM,iBAAiB;IAC/CC,gBAAgB;MACdJ,IAAI,GAAGK,KAAKL,EAAE;MACdM,WAAW,CAACC,SACVC,KAAKC,KAAK,CAACC,QACAC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUA,MAAKP,OAAOa,UAAiBC,YAAKP,KAAAA,IAAeQ,YAAI,CAAA,GACxEC,WAAI,CAACT,UAAAA;AACV,cAAM,CAACU,IAAAA,IAAQP,IAAIjB,QAAQyB,aAAaC,mBAAmBC,WAAW,CAAA;AACtE,eAAOV,IACLW,eAAe,MACbJ,MAAMK,SACF;UACE;YACEtB,IAAI,GAAGO,MAAKP,EAAE,GAAGuB,yBAAAA;YACjBC,MAAMC;YACNC,MAAM;YACNC,YAAY;cACVC,OAAO;gBAAC;gBAAoB;kBAAEC,IAAIxB,KAAKL;gBAAG;;cAC1C8B,MAAM;cACNC,UAAU;cACVC,aAAa;YACf;UACF;YAEF,CAAA,CAAE,CAAA;MAGZ,CAAA,GACOC,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;IAGjC,CAAA;;;IAGA7B,gBAAgB;MACdJ,IAAI,GAAGK,KAAKL,EAAE;MACdM,WAAW,CAACC,SAAAA;AACV,eAAOC,KAAKC,KAAK,CAACC,QAAAA;AAChB,iBAAgBC,cACdD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UACd2B,IAAIC,WAAWC,gBAAQA,SAAS7B,MAAKmB,IAAI,IAAWZ,YAAKP,MAAKmB,IAAI,IAAWX,YAAI,CAAA,GAE5EC,WAAI,CAACqB,YAAAA;AACV,kBAAMC,cAAc7C,QAAQ8C,cAAcpB,mBAAmBC,WAAW;AACxE,kBAAME,SAASZ,IACbW,eAAe,MAAMiB,YAAYhB,UAAUgB,YAAYE,WAAWN,IAAIO,OAAOJ,OAAAA,EAASK,SAAQ,CAAA,CAAA;AAEhG,gBAAI,CAACpB,QAAQ;AACX,qBAAO,CAAA;YACT;AAEA,mBAAO;cACL;gBACEtB,IAAI,GAAGkC,IAAIO,OAAOJ,OAAAA,EAASK,SAAQ,CAAA,GAAKnB,yBAAAA;gBACxCC,MAAMmB;gBACNjB,MAAM;gBACNC,YAAY;kBACVC,OAAO;oBAAC;oBAA2B;sBAAEC,IAAIxB,KAAKL;oBAAG;;kBACjD8B,MAAM;kBACNC,UAAU;kBACVC,aAAa;gBACf;cACF;;UAEJ,CAAA,GACOC,iBAAU,MAAM,CAAA,CAAE,CAAA;QAE7B,CAAA;MACF;IACF,CAAA;IACA7B,gBAAgB;MACdJ,IAAI,GAAGK,KAAKL,EAAE;MACdM,WAAW,CAACC,SACVC,KAAKC,KAAK,CAACC,QACAC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAAA;AACd,YAAI,CAAC2B,IAAIU,SAASrC,MAAKmB,IAAI,KAAKQ,IAAIC,WAAWC,gBAAQA,SAAS7B,MAAKmB,IAAI,GAAG;AAC1E,iBAAcX,YAAI;QACpB;AACA,cAAMd,WAAWP,QAAQwC,IAAIW,YAAYtC,MAAKmB,IAAI,CAAA;AAClD,eAAO,OAAOzB,SAAS6C,aAAa,WAAkBhC,YAAKP,KAAAA,IAAeQ,YAAI;MAChF,CAAA,GACOC,WAAI,CAACT,UAAS;QACnB;UACEP,IAAI;YAACO,MAAKP;YAAI;YAAY+C,KAAKxB,yBAAAA;UAC/BC,MAAMmB;UACNjB,MAAM;UACNC,YAAY;YACVC,OAAO;cAAC;cAAkB;gBAAEC,IAAIxB,KAAKL;cAAG;;YACxC8B,MAAM;YACNE,aAAa;YACbD,UAAU;UACZ;QACF;OACD,GACME,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;IAGjC,CAAA;IACA7B,gBAAgB;MACdJ,IAAI,GAAGK,KAAKL,EAAE;MACdgD,SAAS,CAACzC,SACRC,KAAKC,KAAK,CAACC,QACAC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAAA;AACd,YAAI,CAAC2B,IAAIU,SAASrC,MAAKmB,IAAI,KAAKQ,IAAIC,WAAWC,gBAAQA,SAAS7B,MAAKmB,IAAI,GAAG;AAC1E,iBAAcX,YAAI;QACpB;AACA,cAAMd,WAAWP,QAAQwC,IAAIW,YAAYtC,MAAKmB,IAAI,CAAA;AAClD,eAAO,OAAOzB,SAAS6C,aAAa,WAAkBhC,YAAKP,MAAKmB,IAAI,IAAWX,YAAI;MACrF,CAAA,GACOC,WAAI,CAACiC,WAAAA;AACV,cAAMC,mBAAmBzD,QAAQ8C,cAAcY,sBAAsBC,SAAS;AAC9E,cAAMC,UAAU3C,IAAIjB,QAAQyB,aAAaC,mBAAmBmC,KAAK,CAAA,EAAG,CAAA,GAAIC,MAAMF,WAAW,CAAC;AAC1F,cAAMG,WAAW9C,IACfW,eAAe,MAAA;AACb,gBAAMpB,WAAWP,QAAQwC,IAAIW,YAAYI,MAAAA,CAAAA;AACzC,gBAAMQ,YAAYP,iBAAiBQ,aACjCxB,IAAIO,OAAOQ,MAAAA,EAAQP,SAAQ,GAC3BzC,SAAS0D,aAAa;AAExB,gBAAMC,SAASC,UAAUJ,SAAAA;AACzB,gBAAMK,mBAAmB,CAACF;AAC1B,gBAAMG,qBAAqBV,QAAQnB,IAAIO,OAAOQ,MAAAA,EAAQP,SAAQ,CAAA;AAC9D,iBAAQzC,SAAS6C,aAAa,cAAcgB,oBAAqBC;QACnE,CAAA,CAAA;AAGF,eAAO;UACL;YACE/D,IAAI,GAAGkC,IAAIO,OAAOQ,MAAAA,EAAQP,SAAQ,CAAA;YAClChB,MAAM,MAAA;AACJ,oBAAM,EAAEsC,iBAAiBC,SAAQ,IAAKxE,QAAQ8C,cAAc1C,aAAaqE,gBAAgB;AACzF,oBAAMjE,WAAWP,QAAQwC,IAAIW,YAAYI,MAAAA,CAAAA;AACzC,oBAAMQ,YAAYP,iBAAiBQ,aAAaxB,IAAIO,OAAOQ,MAAAA,EAAQP,SAAQ,CAAA;AAG3E,oBAAMkB,SAAS3D,SAAS6C,aAAa,aAAae,UAAUJ,SAAAA,IAAaU,KAAKC,IAAG,EAAG1B,SAAQ;AAC5F,oBAAM2B,OAAOpE,SAASqE,iBAAiBrB,QAAQW,MAAAA;AAC/C,mBAAKK,SACHM,aAAaC,aAAaC,QAAQ;gBAChCb;gBACAS;gBACAK,SAASzB;cACX,CAAA,CAAA;YAEJ;YACAtB,YAAY;cACVC,OAAO;gBAAC;gBAAqB;kBAAEC,IAAIxB,KAAKL;gBAAG;;cAC3C8B,MAAM;cACNE,aAAa;cACbwB;cACAmB,QAAQ;YACV;UACF;;MAEJ,CAAA,GACO1C,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;IAGjC,CAAA;GACD;AACH;",
6
- "names": ["Atom", "Function", "Option", "Capabilities", "contributes", "createIntent", "Obj", "AttentionCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DECK_COMPANION_TYPE", "PLANK_COMPANION_TYPE", "ROOT_ID", "atomFromSignal", "createExtension", "context", "resolve", "typename", "getCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "contributes", "AppGraphBuilder", "createExtension", "meta", "connector", "node", "Atom", "make", "get", "pipe", "flatMap", "ROOT_ID", "some", "none", "map", "call", "capabilities", "ThreadCapabilities", "CallManager", "atomFromSignal", "joined", "ATTENDABLE_PATH_SEPARATOR", "type", "DECK_COMPANION_TYPE", "data", "properties", "label", "ns", "icon", "position", "disposition", "getOrElse", "Obj", "instanceOf", "Channel", "channel", "callManager", "getCapability", "roomId", "getDXN", "toString", "PLANK_COMPANION_TYPE", "isObject", "getTypename", "comments", "join", "actions", "object", "selectionManager", "AttentionCapabilities", "Selection", "toolbar", "State", "state", "disabled", "selection", "getSelection", "selectionMode", "anchor", "getAnchor", "invalidSelection", "overlappingComment", "dispatchPromise", "dispatch", "IntentDispatcher", "Date", "now", "name", "getAnchorLabel", "createIntent", "ThreadAction", "Create", "subject", "testId"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/blueprint-definition.ts", "../../../src/functions/create-proposals.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type Capability, contributes } from '@dxos/app-framework';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nimport { createProposals } from '../functions';\n\nconst functions: FunctionDefinition[] = [createProposals];\n\nexport const ASSISTANT_BLUEPRINT_KEY = 'dxos.org/blueprint/thread';\n\nexport default (): Capability<any>[] => [\n contributes(Capabilities.Functions, functions),\n contributes(\n Capabilities.BlueprintDefinition,\n Blueprint.make({\n key: ASSISTANT_BLUEPRINT_KEY,\n name: 'Thread',\n tools: Blueprint.toolDefinitions({ functions }),\n instructions: Template.make({\n // TODO(wittjosiah): Move example to function input schema annotation.\n source: trim`\n You can update markdown documents via proposals.\n For each diff, respond with the smallest possible matching span.\n For example:\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id goof.\"\n + \"This is good.\"\n `,\n }),\n }),\n ),\n];\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Array from 'effect/Array';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Schema from 'effect/Schema';\n\nimport { ArtifactId, computeDiffsWithCursors } from '@dxos/assistant';\nimport { Obj, Ref, Relation } from '@dxos/echo';\nimport { createDocAccessor } from '@dxos/echo-db';\nimport { DatabaseService, defineFunction } from '@dxos/functions';\nimport { DXN } from '@dxos/keys';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { AnchoredTo, Message } from '@dxos/types';\n\nimport { Thread } from '../types';\n\nexport default defineFunction({\n key: 'dxos.org/function/thread/create-proposals',\n name: 'Create Proposals',\n description: 'Proposes a set of changes to a document.',\n inputSchema: Schema.Struct({\n id: ArtifactId,\n diffs: Schema.Array(Schema.String).annotations({\n description: 'The diffs to propose for the document.',\n }),\n }),\n outputSchema: Schema.Void,\n handler: Effect.fn(function* ({ data: { id, diffs: _diffs } }) {\n const object = yield* DatabaseService.resolve(DXN.parse(id), Markdown.Document);\n const content = yield* Effect.promise(() => object.content.load());\n const accessor = createDocAccessor(content, ['content']);\n\n yield* Function.pipe(\n computeDiffsWithCursors(accessor, _diffs),\n Array.map(\n Effect.fnUntraced(function* ({ cursor, text }) {\n const proposal = Obj.make(Message.Message, {\n created: new Date().toISOString(),\n sender: { role: 'assistant' },\n blocks: [{ _tag: 'proposal', text }],\n });\n const thread = Thread.make({ name: 'Proposal', messages: [Ref.make(proposal)], status: 'active' });\n const relation = Relation.make(AnchoredTo.AnchoredTo, {\n [Relation.Source]: thread,\n [Relation.Target]: object,\n anchor: cursor,\n });\n yield* DatabaseService.add(thread);\n yield* DatabaseService.add(relation);\n }),\n ),\n Effect.allWith({ concurrency: 'unbounded' }),\n );\n }),\n});\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,cAA+BC,mBAAmB;AAC3D,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,YAAY;;;ACHrB,YAAYC,WAAW;AACvB,YAAYC,YAAY;AACxB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,YAAYC,+BAA+B;AACpD,SAASC,KAAKC,KAAKC,gBAAgB;AACnC,SAASC,yBAAyB;AAClC,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,WAAW;AACpB,SAASC,gBAAgB;AACzB,SAASC,YAAYC,eAAe;AAIpC,IAAA,2BAAeC,eAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAa;EACbC,aAAoBC,cAAO;IACzBC,IAAIC;IACJC,OAAcC,aAAaC,aAAM,EAAEC,YAAY;MAC7CR,aAAa;IACf,CAAA;EACF,CAAA;EACAS,cAAqBC;EACrBC,SAAgBC,UAAG,WAAW,EAAEC,MAAM,EAAEV,IAAIE,OAAOS,OAAM,EAAE,GAAE;AAC3D,UAAMC,SAAS,OAAOC,gBAAgBC,QAAQC,IAAIC,MAAMhB,EAAAA,GAAKiB,SAASC,QAAQ;AAC9E,UAAMC,UAAU,OAAcC,eAAQ,MAAMR,OAAOO,QAAQE,KAAI,CAAA;AAC/D,UAAMC,WAAWC,kBAAkBJ,SAAS;MAAC;KAAU;AAEvD,WAAgBK,cACdC,wBAAwBH,UAAUX,MAAAA,GAC5Be,UACGC,kBAAW,WAAW,EAAEC,QAAQC,KAAI,GAAE;AAC3C,YAAMC,WAAWC,IAAIC,KAAKC,QAAQA,SAAS;QACzCC,UAAS,oBAAIC,KAAAA,GAAOC,YAAW;QAC/BC,QAAQ;UAAEC,MAAM;QAAY;QAC5BC,QAAQ;UAAC;YAAEC,MAAM;YAAYX;UAAK;;MACpC,CAAA;AACA,YAAMY,SAASC,eAAOV,KAAK;QAAEpC,MAAM;QAAY+C,UAAU;UAACC,IAAIZ,KAAKF,QAAAA;;QAAYe,QAAQ;MAAS,CAAA;AAChG,YAAMC,WAAWC,SAASf,KAAKgB,WAAWA,YAAY;QACpD,CAACD,SAASE,MAAM,GAAGR;QACnB,CAACM,SAASG,MAAM,GAAGtC;QACnBuC,QAAQvB;MACV,CAAA;AACA,aAAOf,gBAAgBuC,IAAIX,MAAAA;AAC3B,aAAO5B,gBAAgBuC,IAAIN,QAAAA;IAC7B,CAAA,CAAA,GAEKO,eAAQ;MAAEC,aAAa;IAAY,CAAA,CAAA;EAE9C,CAAA;AACF,CAAA;;;AD9CA,IAAMC,YAAkC;EAACC;;AAElC,IAAMC,0BAA0B;AAEvC,IAAA,gCAAe,MAAyB;EACtCC,YAAYC,aAAaC,WAAWL,SAAAA;EACpCG,YACEC,aAAaE,qBACbC,UAAUC,KAAK;IACbC,KAAKP;IACLQ,MAAM;IACNC,OAAOJ,UAAUK,gBAAgB;MAAEZ;IAAU,CAAA;IAC7Ca,cAAcC,SAASN,KAAK;;MAE1BO,QAAQC;;;;;;;;;IASV,CAAA;EACF,CAAA,CAAA;;",
6
- "names": ["Capabilities", "contributes", "Blueprint", "Template", "trim", "Array", "Effect", "Function", "Schema", "ArtifactId", "computeDiffsWithCursors", "Obj", "Ref", "Relation", "createDocAccessor", "DatabaseService", "defineFunction", "DXN", "Markdown", "AnchoredTo", "Message", "defineFunction", "key", "name", "description", "inputSchema", "Struct", "id", "ArtifactId", "diffs", "Array", "String", "annotations", "outputSchema", "Void", "handler", "fn", "data", "_diffs", "object", "DatabaseService", "resolve", "DXN", "parse", "Markdown", "Document", "content", "promise", "load", "accessor", "createDocAccessor", "pipe", "computeDiffsWithCursors", "map", "fnUntraced", "cursor", "text", "proposal", "Obj", "make", "Message", "created", "Date", "toISOString", "sender", "role", "blocks", "_tag", "thread", "Thread", "messages", "Ref", "status", "relation", "Relation", "AnchoredTo", "Source", "Target", "anchor", "add", "allWith", "concurrency", "functions", "createProposals", "ASSISTANT_BLUEPRINT_KEY", "contributes", "Capabilities", "Functions", "BlueprintDefinition", "Blueprint", "make", "key", "name", "tools", "toolDefinitions", "instructions", "Template", "source", "trim"]
7
- }
@@ -1,24 +0,0 @@
1
- import {
2
- CallManager
3
- } from "./chunk-ZCW3NSDZ.mjs";
4
- import {
5
- ThreadCapabilities
6
- } from "./chunk-BBTXGRIR.mjs";
7
- import "./chunk-ISCHODBV.mjs";
8
- import "./chunk-K2DUJRFJ.mjs";
9
-
10
- // src/capabilities/call-manager.ts
11
- import { contributes } from "@dxos/app-framework";
12
- import { ClientCapabilities } from "@dxos/plugin-client";
13
- var call_manager_default = (async (context) => {
14
- const client = context.getCapability(ClientCapabilities.Client);
15
- const callManager = new CallManager(client);
16
- await callManager.open();
17
- return contributes(ThreadCapabilities.CallManager, callManager, () => {
18
- void callManager.close();
19
- });
20
- });
21
- export {
22
- call_manager_default as default
23
- };
24
- //# sourceMappingURL=call-manager-MAXQLMMS.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/call-manager.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type PluginContext, contributes } from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { CallManager } from '../calls';\n\nimport { ThreadCapabilities } from './capabilities';\n\nexport default async (context: PluginContext) => {\n const client = context.getCapability(ClientCapabilities.Client);\n const callManager = new CallManager(client);\n await callManager.open();\n\n return contributes(ThreadCapabilities.CallManager, callManager, () => {\n void callManager.close();\n });\n};\n"],
5
- "mappings": ";;;;;;;;;;AAIA,SAA6BA,mBAAmB;AAChD,SAASC,0BAA0B;AAMnC,IAAA,wBAAe,OAAOC,YAAAA;AACpB,QAAMC,SAASD,QAAQE,cAAcC,mBAAmBC,MAAM;AAC9D,QAAMC,cAAc,IAAIC,YAAYL,MAAAA;AACpC,QAAMI,YAAYE,KAAI;AAEtB,SAAOC,YAAYC,mBAAmBH,aAAaD,aAAa,MAAA;AAC9D,SAAKA,YAAYK,MAAK;EACxB,CAAA;AACF;",
6
- "names": ["contributes", "ClientCapabilities", "context", "client", "getCapability", "ClientCapabilities", "Client", "callManager", "CallManager", "open", "contributes", "ThreadCapabilities", "close"]
7
- }
@@ -1,18 +0,0 @@
1
- import {
2
- meta
3
- } from "./chunk-K2DUJRFJ.mjs";
4
-
5
- // src/capabilities/capabilities.ts
6
- import { defineCapability } from "@dxos/app-framework";
7
- (function(ThreadCapabilities2) {
8
- ThreadCapabilities2.CallManager = defineCapability(`${meta.id}/capability/call-manager`);
9
- ThreadCapabilities2.CallExtension = defineCapability(`${meta.id}/capability/call-extension`);
10
- ThreadCapabilities2.State = defineCapability(`${meta.id}/capability/state`);
11
- ThreadCapabilities2.MutableState = defineCapability(`${meta.id}/capability/state`);
12
- })(ThreadCapabilities || (ThreadCapabilities = {}));
13
- var ThreadCapabilities;
14
-
15
- export {
16
- ThreadCapabilities
17
- };
18
- //# sourceMappingURL=chunk-BBTXGRIR.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/capabilities.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineCapability } from '@dxos/app-framework';\nimport { type DeepReadonly } from '@dxos/util';\n\nimport { type CallManager, type CallState, type MediaState } from '../calls';\nimport { meta } from '../meta';\nimport { type Channel, type ThreadState, type ViewState } from '../types';\n\nexport namespace ThreadCapabilities {\n export const CallManager = defineCapability<CallManager>(`${meta.id}/capability/call-manager`);\n\n // TODO(burdon): Better way to define specific extensions for meeting companions.\n // TODO(burdon): This brings in deps from ../calls; how should we manage/minimize explicit type exposure to other plugins?\n // TODO(wittjosiah): These callbacks could be intents once we support broadcast.\n export type CallProperties = {\n onJoin: (state: { channel?: Channel.Channel; roomId?: string }) => Promise<void>;\n onLeave: (roomId?: string) => Promise<void>;\n onCallStateUpdated: (callState: CallState) => Promise<void>;\n onMediaStateUpdated: ([mediaState, isSpeaking]: [MediaState, boolean]) => Promise<void>;\n };\n export const CallExtension = defineCapability<CallProperties>(`${meta.id}/capability/call-extension`);\n\n type GetViewState = (subjectId: string) => ViewState;\n export const State = defineCapability<{ state: DeepReadonly<ThreadState>; getViewState: GetViewState }>(\n `${meta.id}/capability/state`,\n );\n export const MutableState = defineCapability<{ state: ThreadState; getViewState: GetViewState }>(\n `${meta.id}/capability/state`,\n );\n}\n"],
5
- "mappings": ";;;;;AAIA,SAASA,wBAAwB;UAOhBC,qBAAAA;sBACFC,cAAcC,iBAA8B,GAAGC,KAAKC,EAAE,0BAA0B;sBAWhFC,gBAAgBH,iBAAiC,GAAGC,KAAKC,EAAE,4BAA4B;sBAGvFE,QAAQJ,iBACnB,GAAGC,KAAKC,EAAE,mBAAmB;sBAElBG,eAAeL,iBAC1B,GAAGC,KAAKC,EAAE,mBAAmB;AAEjC,GArBiBJ,uBAAAA,qBAAAA,CAAAA,EAAAA;;",
6
- "names": ["defineCapability", "ThreadCapabilities", "CallManager", "defineCapability", "meta", "id", "CallExtension", "State", "MutableState"]
7
- }