@dxos/plugin-thread 0.8.4-main.c1de068 → 0.8.4-main.c4373fc

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 (284) hide show
  1. package/dist/lib/browser/ChannelContainer-BGDGZHV4.mjs +16 -0
  2. package/dist/lib/browser/ChatContainer-75KJZ4XR.mjs +15 -0
  3. package/dist/lib/browser/{app-graph-builder-N7BE5TYW.mjs → app-graph-builder-ODKIAXR7.mjs} +19 -19
  4. package/dist/lib/browser/app-graph-builder-ODKIAXR7.mjs.map +7 -0
  5. package/dist/lib/browser/{call-manager-NIPDYUVD.mjs → call-manager-BCKLI4QD.mjs} +7 -7
  6. package/dist/lib/browser/call-manager-BCKLI4QD.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-2MUYQOQE.mjs +23 -0
  8. package/dist/lib/browser/{chunk-4OYAYON2.mjs.map → chunk-2MUYQOQE.mjs.map} +3 -3
  9. package/dist/lib/browser/chunk-B7YQ7QR2.mjs +376 -0
  10. package/dist/lib/browser/chunk-B7YQ7QR2.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-KWPRNHTK.mjs → chunk-CMCVHULC.mjs} +235 -233
  12. package/dist/lib/browser/chunk-CMCVHULC.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-GERVMFQW.mjs → chunk-CP7E2HRE.mjs} +2 -2
  14. package/dist/lib/browser/chunk-CP7E2HRE.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-ERWASUQK.mjs → chunk-HDEQRBOC.mjs} +38 -6
  16. package/dist/lib/{node-esm/chunk-25ABSYP2.mjs.map → browser/chunk-HDEQRBOC.mjs.map} +4 -4
  17. package/dist/lib/browser/chunk-L326LSNS.mjs +18 -0
  18. package/dist/lib/browser/chunk-L326LSNS.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-EV4JWI7L.mjs → chunk-T4KJ5JR4.mjs} +5 -7
  20. package/dist/lib/browser/chunk-T4KJ5JR4.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-VJMKS4CZ.mjs +619 -0
  22. package/dist/lib/browser/chunk-VJMKS4CZ.mjs.map +7 -0
  23. package/dist/lib/browser/{chunk-GCLD5ESP.mjs → chunk-VTYX3SIM.mjs} +26 -16
  24. package/dist/lib/browser/chunk-VTYX3SIM.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-6NSMBO3B.mjs → chunk-XYUJXHYV.mjs} +55 -5
  26. package/dist/lib/browser/chunk-XYUJXHYV.mjs.map +7 -0
  27. package/dist/lib/browser/{chunk-ZE7KWN36.mjs → chunk-ZCEU5K23.mjs} +461 -240
  28. package/dist/lib/browser/chunk-ZCEU5K23.mjs.map +7 -0
  29. package/dist/lib/browser/index.mjs +23 -14
  30. package/dist/lib/browser/index.mjs.map +3 -3
  31. package/dist/lib/browser/{intent-resolver-JFGLZ6VI.mjs → intent-resolver-VOQD3TQ2.mjs} +75 -17
  32. package/dist/lib/browser/intent-resolver-VOQD3TQ2.mjs.map +7 -0
  33. package/dist/lib/browser/{markdown-GEXBVJYN.mjs → markdown-R6MGRIA6.mjs} +7 -7
  34. package/dist/lib/browser/markdown-R6MGRIA6.mjs.map +7 -0
  35. package/dist/lib/browser/meta.json +1 -1
  36. package/dist/lib/browser/react-root-UMSBTN6H.mjs +28 -0
  37. package/dist/lib/browser/react-root-UMSBTN6H.mjs.map +7 -0
  38. package/dist/lib/browser/{react-surface-YCYEFBPM.mjs → react-surface-SXMQEWKE.mjs} +22 -22
  39. package/dist/lib/browser/react-surface-SXMQEWKE.mjs.map +7 -0
  40. package/dist/lib/browser/{settings-E32MTL7A.mjs → settings-TCNF54PN.mjs} +5 -5
  41. package/dist/lib/browser/{settings-E32MTL7A.mjs.map → settings-TCNF54PN.mjs.map} +1 -1
  42. package/dist/lib/browser/{state-H6CYONWE.mjs → state-ZQ4IPOJT.mjs} +5 -5
  43. package/dist/lib/browser/state-ZQ4IPOJT.mjs.map +7 -0
  44. package/dist/lib/browser/toolkit-JF4B4QIO.mjs +84 -0
  45. package/dist/lib/browser/toolkit-JF4B4QIO.mjs.map +7 -0
  46. package/dist/lib/browser/types/index.mjs +2 -2
  47. package/dist/lib/node-esm/ChannelContainer-OXC6BTU7.mjs +17 -0
  48. package/dist/lib/node-esm/{ChatContainer-IQUWU426.mjs → ChatContainer-SH6LTFQL.mjs} +6 -6
  49. package/dist/lib/node-esm/{app-graph-builder-VCW76Z6V.mjs → app-graph-builder-DMPT3MY6.mjs} +19 -19
  50. package/dist/lib/node-esm/app-graph-builder-DMPT3MY6.mjs.map +7 -0
  51. package/dist/lib/node-esm/{call-manager-D6O5ZJJ4.mjs → call-manager-Q7RY2YP4.mjs} +7 -7
  52. package/dist/lib/node-esm/call-manager-Q7RY2YP4.mjs.map +7 -0
  53. package/dist/lib/node-esm/{chunk-C3XFMUAY.mjs → chunk-2KZ4ODHU.mjs} +235 -233
  54. package/dist/lib/node-esm/chunk-2KZ4ODHU.mjs.map +7 -0
  55. package/dist/lib/node-esm/{chunk-25ABSYP2.mjs → chunk-2MMJF7DW.mjs} +38 -6
  56. package/dist/lib/node-esm/chunk-2MMJF7DW.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-OU5BYIDO.mjs → chunk-2V3WSLUZ.mjs} +55 -5
  58. package/dist/lib/node-esm/chunk-2V3WSLUZ.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-57XR3LEF.mjs → chunk-ABUFOZVX.mjs} +2 -2
  60. package/dist/lib/node-esm/chunk-ABUFOZVX.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-TDFHTCZZ.mjs → chunk-BAMZXJS4.mjs} +26 -16
  62. package/dist/lib/node-esm/chunk-BAMZXJS4.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-BTGKI5IK.mjs +377 -0
  64. package/dist/lib/node-esm/chunk-BTGKI5IK.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-GZ4WL2IS.mjs +25 -0
  66. package/dist/lib/node-esm/{chunk-GW37AAM4.mjs.map → chunk-GZ4WL2IS.mjs.map} +3 -3
  67. package/dist/lib/node-esm/chunk-LCHTNRK7.mjs +19 -0
  68. package/dist/lib/node-esm/chunk-LCHTNRK7.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-NHSIAEDW.mjs +620 -0
  70. package/dist/lib/node-esm/chunk-NHSIAEDW.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-GRLRWTRU.mjs → chunk-OBVAURUU.mjs} +5 -7
  72. package/dist/lib/node-esm/chunk-OBVAURUU.mjs.map +7 -0
  73. package/dist/lib/node-esm/{chunk-IHDNQLLR.mjs → chunk-TIPIOH2J.mjs} +461 -240
  74. package/dist/lib/node-esm/chunk-TIPIOH2J.mjs.map +7 -0
  75. package/dist/lib/node-esm/index.mjs +23 -14
  76. package/dist/lib/node-esm/index.mjs.map +3 -3
  77. package/dist/lib/node-esm/{intent-resolver-OXGNQ44Y.mjs → intent-resolver-AKVH66PH.mjs} +75 -17
  78. package/dist/lib/node-esm/intent-resolver-AKVH66PH.mjs.map +7 -0
  79. package/dist/lib/node-esm/{markdown-LIJZDK2J.mjs → markdown-MYGTDXT6.mjs} +7 -7
  80. package/dist/lib/node-esm/markdown-MYGTDXT6.mjs.map +7 -0
  81. package/dist/lib/node-esm/meta.json +1 -1
  82. package/dist/lib/node-esm/react-root-W6AVTL5M.mjs +29 -0
  83. package/dist/lib/node-esm/react-root-W6AVTL5M.mjs.map +7 -0
  84. package/dist/lib/node-esm/{react-surface-IRSEKM42.mjs → react-surface-NLSZJGMO.mjs} +22 -22
  85. package/dist/lib/node-esm/react-surface-NLSZJGMO.mjs.map +7 -0
  86. package/dist/lib/node-esm/{settings-SJ24YG7M.mjs → settings-ZQHGVFBY.mjs} +5 -5
  87. package/dist/lib/node-esm/{settings-SJ24YG7M.mjs.map → settings-ZQHGVFBY.mjs.map} +1 -1
  88. package/dist/lib/node-esm/{state-D7WNDT3N.mjs → state-FSLLJ5TZ.mjs} +5 -5
  89. package/dist/lib/node-esm/state-FSLLJ5TZ.mjs.map +7 -0
  90. package/dist/lib/node-esm/toolkit-DHPKJITO.mjs +85 -0
  91. package/dist/lib/node-esm/toolkit-DHPKJITO.mjs.map +7 -0
  92. package/dist/lib/node-esm/types/index.mjs +2 -2
  93. package/dist/types/src/ThreadPlugin.d.ts +1 -1
  94. package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
  95. package/dist/types/src/calls/call-manager.d.ts.map +1 -1
  96. package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +1 -1
  97. package/dist/types/src/calls/media-manager.d.ts +1 -1
  98. package/dist/types/src/calls/media-manager.d.ts.map +1 -1
  99. package/dist/types/src/calls/types.d.ts +1 -1
  100. package/dist/types/src/calls/types.d.ts.map +1 -1
  101. package/dist/types/src/calls/util/calls-service.d.ts +4 -2
  102. package/dist/types/src/calls/util/calls-service.d.ts.map +1 -1
  103. package/dist/types/src/calls/util/stub-media-streams.d.ts.map +1 -1
  104. package/dist/types/src/calls-service.stories.d.ts +10 -9
  105. package/dist/types/src/calls-service.stories.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  107. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/call-manager.d.ts +1 -1
  109. package/dist/types/src/capabilities/call-manager.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/capabilities.d.ts +2 -2
  111. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/index.d.ts +11 -10
  113. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  115. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/markdown.d.ts +1 -1
  117. package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
  118. package/dist/types/src/capabilities/react-root.d.ts +2 -2
  119. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  120. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  121. package/dist/types/src/capabilities/settings.d.ts +1 -1
  122. package/dist/types/src/capabilities/state.d.ts +2 -2
  123. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  124. package/dist/types/src/capabilities/toolkit.d.ts +6 -0
  125. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -0
  126. package/dist/types/src/components/Call/Call.d.ts.map +1 -1
  127. package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
  128. package/dist/types/src/components/CallDebugPanel.d.ts +7 -0
  129. package/dist/types/src/components/CallDebugPanel.d.ts.map +1 -1
  130. package/dist/types/src/components/CallSidebar.d.ts.map +1 -1
  131. package/dist/types/src/components/ChannelContainer.d.ts.map +1 -1
  132. package/dist/types/src/components/ChannelContainer.stories.d.ts +89 -5
  133. package/dist/types/src/components/ChannelContainer.stories.d.ts.map +1 -1
  134. package/dist/types/src/components/Chat.stories.d.ts +91 -5
  135. package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
  136. package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
  137. package/dist/types/src/components/Comments.stories.d.ts +160 -4
  138. package/dist/types/src/components/Comments.stories.d.ts.map +1 -1
  139. package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
  140. package/dist/types/src/components/CommentsThreadContainer.d.ts +2 -2
  141. package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -1
  142. package/dist/types/src/components/Lobby/Lobby.d.ts.map +1 -1
  143. package/dist/types/src/components/Media/VideoObject.d.ts +2 -2
  144. package/dist/types/src/components/Media/VideoObject.d.ts.map +1 -1
  145. package/dist/types/src/components/Media/VideoObject.stories.d.ts +18 -4
  146. package/dist/types/src/components/Media/VideoObject.stories.d.ts.map +1 -1
  147. package/dist/types/src/components/MessageContainer.d.ts +4 -1
  148. package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
  149. package/dist/types/src/components/Participant/Participant.d.ts.map +1 -1
  150. package/dist/types/src/components/Participant/ParticipantGrid.d.ts.map +1 -1
  151. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts +155 -3
  152. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +1 -1
  153. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +157 -4
  154. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +1 -1
  155. package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.d.ts.map +1 -1
  156. package/dist/types/src/components/ThreadComplementary.d.ts.map +1 -1
  157. package/dist/types/src/components/ThreadSettings.d.ts +1 -1
  158. package/dist/types/src/components/ThreadSettings.d.ts.map +1 -1
  159. package/dist/types/src/components/command-extension.d.ts.map +1 -1
  160. package/dist/types/src/components/testing.d.ts +1 -0
  161. package/dist/types/src/components/testing.d.ts.map +1 -1
  162. package/dist/types/src/extensions/threads.d.ts +2 -2
  163. package/dist/types/src/extensions/threads.d.ts.map +1 -1
  164. package/dist/types/src/hooks/index.d.ts +1 -0
  165. package/dist/types/src/hooks/index.d.ts.map +1 -1
  166. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts +2 -0
  167. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts.map +1 -0
  168. package/dist/types/src/hooks/useVideoStreamTrack.d.ts +1 -1
  169. package/dist/types/src/hooks/useVideoStreamTrack.d.ts.map +1 -1
  170. package/dist/types/src/meta.d.ts +1 -2
  171. package/dist/types/src/meta.d.ts.map +1 -1
  172. package/dist/types/src/translations.d.ts +3 -1
  173. package/dist/types/src/translations.d.ts.map +1 -1
  174. package/dist/types/src/types/schema.d.ts +126 -109
  175. package/dist/types/src/types/schema.d.ts.map +1 -1
  176. package/dist/types/src/types/types.d.ts +259 -172
  177. package/dist/types/src/types/types.d.ts.map +1 -1
  178. package/dist/types/tsconfig.tsbuildinfo +1 -1
  179. package/package.json +62 -58
  180. package/src/ThreadPlugin.tsx +130 -124
  181. package/src/calls/call-manager.ts +2 -2
  182. package/src/calls/call-swarm-synchronizer.ts +1 -1
  183. package/src/calls/media-manager.ts +60 -34
  184. package/src/calls/types.ts +8 -4
  185. package/src/calls/util/calls-service.ts +65 -14
  186. package/src/calls/util/stub-media-streams.ts +62 -5
  187. package/src/calls-service.stories.tsx +78 -65
  188. package/src/capabilities/app-graph-builder.ts +18 -14
  189. package/src/capabilities/call-manager.ts +3 -2
  190. package/src/capabilities/capabilities.ts +7 -7
  191. package/src/capabilities/index.ts +1 -0
  192. package/src/capabilities/intent-resolver.ts +43 -9
  193. package/src/capabilities/markdown.ts +4 -3
  194. package/src/capabilities/react-root.tsx +2 -2
  195. package/src/capabilities/react-surface.tsx +14 -13
  196. package/src/capabilities/state.ts +2 -1
  197. package/src/capabilities/toolkit.ts +82 -0
  198. package/src/components/Call/Call.tsx +3 -2
  199. package/src/components/Call/Toolbar.tsx +5 -5
  200. package/src/components/CallDebugPanel.tsx +108 -49
  201. package/src/components/CallSidebar.tsx +2 -1
  202. package/src/components/ChannelContainer.stories.tsx +11 -10
  203. package/src/components/ChannelContainer.tsx +8 -7
  204. package/src/components/Chat.stories.tsx +34 -31
  205. package/src/components/ChatContainer.tsx +8 -4
  206. package/src/components/Comments.stories.tsx +39 -38
  207. package/src/components/CommentsContainer.tsx +2 -1
  208. package/src/components/CommentsThreadContainer.tsx +9 -7
  209. package/src/components/Lobby/Lobby.tsx +1 -1
  210. package/src/components/Media/VideoObject.stories.tsx +36 -28
  211. package/src/components/MessageContainer.tsx +43 -9
  212. package/src/components/Participant/Participant.tsx +13 -7
  213. package/src/components/Participant/ParticipantGrid.tsx +2 -1
  214. package/src/components/ResponsiveGrid/ResponsiveContainer.stories.tsx +8 -8
  215. package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +44 -42
  216. package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +1 -1
  217. package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +2 -2
  218. package/src/components/ThreadComplementary.tsx +37 -7
  219. package/src/components/ThreadSettings.tsx +6 -7
  220. package/src/components/command-extension.ts +5 -2
  221. package/src/components/testing.ts +22 -0
  222. package/src/extensions/threads.ts +6 -6
  223. package/src/hooks/index.ts +1 -0
  224. package/src/hooks/useBlackCanvasStreamTrack.tsx +27 -0
  225. package/src/hooks/useDebugMode.ts +1 -1
  226. package/src/hooks/useVideoStreamTrack.tsx +6 -3
  227. package/src/meta.ts +3 -4
  228. package/src/testing/stories.ts +3 -3
  229. package/src/translations.ts +3 -1
  230. package/src/types/schema.ts +1 -1
  231. package/src/types/types.ts +22 -13
  232. package/src/typings/peermetrics-webrtc-stats.d.ts +17 -1
  233. package/src/typings.d.ts +8 -0
  234. package/src/util.ts +1 -1
  235. package/dist/lib/browser/ChannelContainer-IY2UIRLF.mjs +0 -16
  236. package/dist/lib/browser/ChatContainer-AIGIWAUG.mjs +0 -15
  237. package/dist/lib/browser/app-graph-builder-N7BE5TYW.mjs.map +0 -7
  238. package/dist/lib/browser/call-manager-NIPDYUVD.mjs.map +0 -7
  239. package/dist/lib/browser/chunk-4OYAYON2.mjs +0 -21
  240. package/dist/lib/browser/chunk-6NSMBO3B.mjs.map +0 -7
  241. package/dist/lib/browser/chunk-ERWASUQK.mjs.map +0 -7
  242. package/dist/lib/browser/chunk-EV4JWI7L.mjs.map +0 -7
  243. package/dist/lib/browser/chunk-GCLD5ESP.mjs.map +0 -7
  244. package/dist/lib/browser/chunk-GERVMFQW.mjs.map +0 -7
  245. package/dist/lib/browser/chunk-KWPRNHTK.mjs.map +0 -7
  246. package/dist/lib/browser/chunk-LGSDKXPF.mjs +0 -18
  247. package/dist/lib/browser/chunk-LGSDKXPF.mjs.map +0 -7
  248. package/dist/lib/browser/chunk-VUWC4IJM.mjs +0 -479
  249. package/dist/lib/browser/chunk-VUWC4IJM.mjs.map +0 -7
  250. package/dist/lib/browser/chunk-XLPJXUKO.mjs +0 -367
  251. package/dist/lib/browser/chunk-XLPJXUKO.mjs.map +0 -7
  252. package/dist/lib/browser/chunk-ZE7KWN36.mjs.map +0 -7
  253. package/dist/lib/browser/intent-resolver-JFGLZ6VI.mjs.map +0 -7
  254. package/dist/lib/browser/markdown-GEXBVJYN.mjs.map +0 -7
  255. package/dist/lib/browser/react-root-X4UIVGTX.mjs +0 -28
  256. package/dist/lib/browser/react-root-X4UIVGTX.mjs.map +0 -7
  257. package/dist/lib/browser/react-surface-YCYEFBPM.mjs.map +0 -7
  258. package/dist/lib/browser/state-H6CYONWE.mjs.map +0 -7
  259. package/dist/lib/node-esm/ChannelContainer-DET6T5N2.mjs +0 -17
  260. package/dist/lib/node-esm/app-graph-builder-VCW76Z6V.mjs.map +0 -7
  261. package/dist/lib/node-esm/call-manager-D6O5ZJJ4.mjs.map +0 -7
  262. package/dist/lib/node-esm/chunk-2MFNK53T.mjs +0 -480
  263. package/dist/lib/node-esm/chunk-2MFNK53T.mjs.map +0 -7
  264. package/dist/lib/node-esm/chunk-57XR3LEF.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-75RJ5DJI.mjs +0 -19
  266. package/dist/lib/node-esm/chunk-75RJ5DJI.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-C3XFMUAY.mjs.map +0 -7
  268. package/dist/lib/node-esm/chunk-GRLRWTRU.mjs.map +0 -7
  269. package/dist/lib/node-esm/chunk-GW37AAM4.mjs +0 -23
  270. package/dist/lib/node-esm/chunk-IHDNQLLR.mjs.map +0 -7
  271. package/dist/lib/node-esm/chunk-J4NSON5Q.mjs +0 -368
  272. package/dist/lib/node-esm/chunk-J4NSON5Q.mjs.map +0 -7
  273. package/dist/lib/node-esm/chunk-OU5BYIDO.mjs.map +0 -7
  274. package/dist/lib/node-esm/chunk-TDFHTCZZ.mjs.map +0 -7
  275. package/dist/lib/node-esm/intent-resolver-OXGNQ44Y.mjs.map +0 -7
  276. package/dist/lib/node-esm/markdown-LIJZDK2J.mjs.map +0 -7
  277. package/dist/lib/node-esm/react-root-M7J6PZVW.mjs +0 -29
  278. package/dist/lib/node-esm/react-root-M7J6PZVW.mjs.map +0 -7
  279. package/dist/lib/node-esm/react-surface-IRSEKM42.mjs.map +0 -7
  280. package/dist/lib/node-esm/state-D7WNDT3N.mjs.map +0 -7
  281. /package/dist/lib/browser/{ChannelContainer-IY2UIRLF.mjs.map → ChannelContainer-BGDGZHV4.mjs.map} +0 -0
  282. /package/dist/lib/browser/{ChatContainer-AIGIWAUG.mjs.map → ChatContainer-75KJZ4XR.mjs.map} +0 -0
  283. /package/dist/lib/node-esm/{ChannelContainer-DET6T5N2.mjs.map → ChannelContainer-OXC6BTU7.mjs.map} +0 -0
  284. /package/dist/lib/node-esm/{ChatContainer-IQUWU426.mjs.map → ChatContainer-SH6LTFQL.mjs.map} +0 -0
@@ -3,16 +3,16 @@ import {
3
3
  ChannelType,
4
4
  ThreadAction,
5
5
  ThreadType
6
- } from "./chunk-TDFHTCZZ.mjs";
6
+ } from "./chunk-BAMZXJS4.mjs";
7
7
  import {
8
8
  ThreadCapabilities
9
- } from "./chunk-75RJ5DJI.mjs";
9
+ } from "./chunk-LCHTNRK7.mjs";
10
10
  import {
11
- THREAD_PLUGIN
12
- } from "./chunk-GRLRWTRU.mjs";
11
+ meta
12
+ } from "./chunk-OBVAURUU.mjs";
13
13
 
14
14
  // src/capabilities/intent-resolver.ts
15
- import { Effect } from "effect";
15
+ import * as Effect from "effect/Effect";
16
16
  import { Capabilities, contributes, createIntent, createResolver } from "@dxos/app-framework";
17
17
  import { sleep } from "@dxos/async";
18
18
  import { Obj, Relation, Type } from "@dxos/echo";
@@ -20,12 +20,12 @@ import { invariant } from "@dxos/invariant";
20
20
  import { ATTENDABLE_PATH_SEPARATOR, DeckAction } from "@dxos/plugin-deck/types";
21
21
  import { ObservabilityAction } from "@dxos/plugin-observability/types";
22
22
  import { CollectionAction, SpaceAction } from "@dxos/plugin-space/types";
23
- import { fullyQualifiedId, getSpace, Ref } from "@dxos/react-client/echo";
23
+ import { Ref, fullyQualifiedId, getSpace } from "@dxos/react-client/echo";
24
24
  import { AnchoredTo, DataType } from "@dxos/schema";
25
25
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts";
26
- var intent_resolver_default = (context) => contributes(Capabilities.IntentResolver, [
26
+ var intent_resolver_default = ((context) => contributes(Capabilities.IntentResolver, [
27
27
  createResolver({
28
- intent: ThreadAction.OnSpaceCreated,
28
+ intent: ThreadAction.onCreateSpace,
29
29
  resolve: ({ space, rootCollection }) => Effect.gen(function* () {
30
30
  const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);
31
31
  const { object: collection } = yield* dispatch(createIntent(CollectionAction.CreateQueryCollection, {
@@ -76,7 +76,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
76
76
  const space = getSpace(subject);
77
77
  invariant(space, "Space not found", {
78
78
  F: __dxlog_file,
79
- L: 68,
79
+ L: 69,
80
80
  S: void 0,
81
81
  A: [
82
82
  "space",
@@ -116,6 +116,64 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
116
116
  };
117
117
  }
118
118
  }),
119
+ createResolver({
120
+ intent: ThreadAction.AddProposal,
121
+ resolve: ({ text, anchor, sender, subject }) => {
122
+ const space = getSpace(subject);
123
+ invariant(space, "Space not found", {
124
+ F: __dxlog_file,
125
+ L: 102,
126
+ S: void 0,
127
+ A: [
128
+ "space",
129
+ "'Space not found'"
130
+ ]
131
+ });
132
+ const subjectId = fullyQualifiedId(subject);
133
+ const proposal = Obj.make(DataType.Message, {
134
+ created: (/* @__PURE__ */ new Date()).toISOString(),
135
+ sender,
136
+ blocks: [
137
+ {
138
+ _tag: "proposal",
139
+ text
140
+ }
141
+ ]
142
+ });
143
+ const thread = Obj.make(ThreadType, {
144
+ name: "Proposal",
145
+ messages: [
146
+ Ref.make(proposal)
147
+ ],
148
+ status: "active"
149
+ });
150
+ return {
151
+ intents: [
152
+ createIntent(SpaceAction.AddObject, {
153
+ object: thread,
154
+ target: space,
155
+ hidden: true
156
+ }),
157
+ createIntent(SpaceAction.AddRelation, {
158
+ space,
159
+ schema: AnchoredTo,
160
+ source: thread,
161
+ target: subject,
162
+ fields: {
163
+ anchor
164
+ }
165
+ }),
166
+ createIntent(ThreadAction.Select, {
167
+ current: fullyQualifiedId(thread)
168
+ }),
169
+ createIntent(DeckAction.ChangeCompanion, {
170
+ primary: subjectId,
171
+ companion: `${subjectId}${ATTENDABLE_PATH_SEPARATOR}comments`
172
+ })
173
+ ]
174
+ };
175
+ }
176
+ }),
119
177
  createResolver({
120
178
  intent: ThreadAction.Select,
121
179
  resolve: ({ current }) => {
@@ -134,7 +192,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
134
192
  const space = getSpace(thread);
135
193
  invariant(space, "Space not found", {
136
194
  F: __dxlog_file,
137
- L: 114,
195
+ L: 148,
138
196
  S: void 0,
139
197
  A: [
140
198
  "space",
@@ -182,7 +240,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
182
240
  message: [
183
241
  "thread deleted label",
184
242
  {
185
- ns: THREAD_PLUGIN
243
+ ns: meta.id
186
244
  }
187
245
  ],
188
246
  data: {
@@ -227,14 +285,13 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
227
285
  const space = getSpace(subject);
228
286
  invariant(space, "Space not found", {
229
287
  F: __dxlog_file,
230
- L: 199,
288
+ L: 233,
231
289
  S: void 0,
232
290
  A: [
233
291
  "space",
234
292
  "'Space not found'"
235
293
  ]
236
294
  });
237
- const intents = [];
238
295
  const message = Obj.make(DataType.Message, {
239
296
  created: (/* @__PURE__ */ new Date()).toISOString(),
240
297
  sender,
@@ -246,6 +303,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
246
303
  ]
247
304
  });
248
305
  thread.messages.push(Ref.make(message));
306
+ const intents = [];
249
307
  const draft = state.drafts[subjectId]?.find((a) => a.id === anchor.id);
250
308
  if (draft) {
251
309
  thread.status = "active";
@@ -294,7 +352,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
294
352
  const space = getSpace(subject);
295
353
  invariant(space, "Space not found", {
296
354
  F: __dxlog_file,
297
- L: 259,
355
+ L: 293,
298
356
  S: void 0,
299
357
  A: [
300
358
  "space",
@@ -324,7 +382,7 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
324
382
  message: [
325
383
  "message deleted label",
326
384
  {
327
- ns: THREAD_PLUGIN
385
+ ns: meta.id
328
386
  }
329
387
  ],
330
388
  data: {
@@ -363,8 +421,8 @@ var intent_resolver_default = (context) => contributes(Capabilities.IntentResolv
363
421
  }
364
422
  }
365
423
  })
366
- ]);
424
+ ]));
367
425
  export {
368
426
  intent_resolver_default as default
369
427
  };
370
- //# sourceMappingURL=intent-resolver-OXGNQ44Y.mjs.map
428
+ //# sourceMappingURL=intent-resolver-AKVH66PH.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, type PluginContext, contributes, createIntent, createResolver } from '@dxos/app-framework';\nimport { sleep } from '@dxos/async';\nimport { Obj, Relation, Type } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { ATTENDABLE_PATH_SEPARATOR, DeckAction } from '@dxos/plugin-deck/types';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { CollectionAction, SpaceAction } from '@dxos/plugin-space/types';\nimport { Ref, fullyQualifiedId, getSpace } from '@dxos/react-client/echo';\nimport { AnchoredTo, DataType } from '@dxos/schema';\n\nimport { meta } from '../meta';\nimport { ChannelType, ThreadAction, ThreadType } from '../types';\n\nimport { ThreadCapabilities } from './capabilities';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: ThreadAction.onCreateSpace,\n resolve: ({ space, rootCollection }) =>\n Effect.gen(function* () {\n const { dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const { object: collection } = yield* dispatch(\n createIntent(CollectionAction.CreateQueryCollection, { typename: Type.getTypename(ChannelType) }),\n );\n rootCollection.objects.push(Ref.make(collection));\n\n const { object: channel } = yield* dispatch(\n createIntent(ThreadAction.CreateChannel, { name: 'General', spaceId: space.id }),\n );\n space.db.add(channel);\n }),\n }),\n createResolver({\n intent: ThreadAction.CreateChannel,\n resolve: ({ name }) => ({\n data: {\n object: Obj.make(ChannelType, {\n name,\n defaultThread: Ref.make(Obj.make(ThreadType, { messages: [], status: 'active' })),\n threads: [],\n }),\n },\n }),\n }),\n createResolver({\n intent: ThreadAction.CreateChannelThread,\n resolve: ({ channel }) => {\n const thread = Obj.make(ThreadType, { messages: [], status: 'active' });\n channel.threads.push(Ref.make(thread));\n return {\n data: {\n object: thread,\n },\n };\n },\n }),\n // TODO(wittjosiah): Break this up into more composable pieces.\n createResolver({\n intent: ThreadAction.Create,\n resolve: ({ name, anchor: _anchor, subject }) => {\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const thread = Obj.make(ThreadType, { name, messages: [], status: 'staged' });\n const anchor = Relation.make(AnchoredTo, {\n [Relation.Source]: thread,\n [Relation.Target]: subject,\n anchor: _anchor,\n });\n\n const draft = state.drafts[subjectId];\n if (draft) {\n draft.push(anchor);\n } else {\n state.drafts[subjectId] = [anchor];\n }\n\n return {\n intents: [\n createIntent(ThreadAction.Select, { current: fullyQualifiedId(thread) }),\n createIntent(DeckAction.ChangeCompanion, {\n primary: subjectId,\n companion: `${subjectId}${ATTENDABLE_PATH_SEPARATOR}comments`,\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ThreadAction.AddProposal,\n resolve: ({ text, anchor, sender, subject }) => {\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n\n const subjectId = fullyQualifiedId(subject);\n const proposal = Obj.make(DataType.Message, {\n created: new Date().toISOString(),\n sender,\n blocks: [{ _tag: 'proposal', text }],\n });\n const thread = Obj.make(ThreadType, { name: 'Proposal', messages: [Ref.make(proposal)], status: 'active' });\n\n return {\n intents: [\n createIntent(SpaceAction.AddObject, { object: thread, target: space, hidden: true }),\n createIntent(SpaceAction.AddRelation, {\n space,\n schema: AnchoredTo,\n source: thread,\n target: subject,\n fields: { anchor },\n }),\n createIntent(ThreadAction.Select, { current: fullyQualifiedId(thread) }),\n createIntent(DeckAction.ChangeCompanion, {\n primary: subjectId,\n companion: `${subjectId}${ATTENDABLE_PATH_SEPARATOR}comments`,\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ThreadAction.Select,\n resolve: ({ current }) => {\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n state.current = current;\n },\n }),\n createResolver({\n intent: ThreadAction.ToggleResolved,\n resolve: ({ thread }) => {\n if (thread.status === 'active' || thread.status === undefined) {\n thread.status = 'resolved';\n } else if (thread.status === 'resolved') {\n thread.status = 'active';\n }\n\n const space = getSpace(thread);\n invariant(space, 'Space not found');\n const spaceId = space.id;\n\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.toggle-resolved',\n properties: {\n spaceId,\n threadId: thread.id,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ThreadAction.Delete,\n resolve: async ({ subject, anchor, thread: _thread }, undo) => {\n const thread = _thread ?? (Relation.getSource(anchor) as ThreadType);\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const draft = state.drafts[subjectId];\n if (draft) {\n // Check if we're deleting a draft; if so, remo ve it.\n const index = draft.findIndex((a) => a.id === anchor.id);\n if (index !== -1) {\n draft.splice(index, 1);\n return;\n }\n }\n\n const space = getSpace(anchor);\n if (!space) {\n return;\n }\n\n if (!undo) {\n // TODO(wittjosiah): Without sleep, rendering crashes at `Relation.setSource(anchor)`.\n space.db.remove(anchor);\n await sleep(100);\n space.db.remove(thread);\n\n return {\n undoable: {\n message: ['thread deleted label', { ns: meta.id }],\n data: { thread, anchor },\n },\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n ],\n };\n } else {\n // TODO(wittjosiah): Without sleep, rendering crashes at `Relation.setSource(anchor)`.\n space.db.add(thread);\n await sleep(100);\n space.db.add(anchor);\n\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.undo-delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n ],\n };\n }\n },\n }),\n createResolver({\n intent: ThreadAction.AddMessage,\n resolve: ({ anchor, subject, sender, text }) => {\n const thread = Relation.getSource(anchor) as ThreadType;\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n\n const message = Obj.make(DataType.Message, {\n created: new Date().toISOString(),\n sender,\n blocks: [{ _tag: 'text', text }],\n // TODO(wittjosiah): Context based on attention.\n // context: context ? Ref.make(context) : undefined,\n });\n thread.messages.push(Ref.make(message));\n\n const intents = [];\n const draft = state.drafts[subjectId]?.find((a) => a.id === anchor.id);\n if (draft) {\n // Move draft to document.\n thread.status = 'active';\n // TODO(wittjosiah): This causes the thread to flash as it transitions from draft to db.\n state.drafts[subjectId] = state.drafts[subjectId]?.filter((a) => a.id !== anchor.id);\n intents.push(createIntent(SpaceAction.AddObject, { object: thread, target: space, hidden: true }));\n intents.push(\n createIntent(SpaceAction.AddRelation, {\n space,\n schema: AnchoredTo,\n source: thread,\n target: subject,\n fields: { anchor: draft.anchor },\n }),\n );\n intents.push(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.create',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n );\n }\n\n intents.push(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.add',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n threadLength: thread.messages.length,\n messageId: message.id,\n messageLength: text.length,\n },\n }),\n );\n\n return { intents };\n },\n }),\n createResolver({\n intent: ThreadAction.DeleteMessage,\n resolve: ({ subject, anchor, messageId, message, messageIndex }, undo) => {\n const thread = Relation.getSource(anchor) as ThreadType;\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n\n if (!undo) {\n const messageIndex = thread.messages.findIndex(Ref.hasObjectId(messageId));\n const message = thread.messages[messageIndex]?.target;\n if (!message) {\n return;\n }\n\n if (messageIndex === 0 && thread.messages.length === 1) {\n // If the message is the only message in the thread, delete the thread.\n return {\n intents: [createIntent(ThreadAction.Delete, { subject, anchor })],\n };\n } else {\n thread.messages.splice(messageIndex, 1);\n }\n\n return {\n undoable: {\n message: ['message deleted label', { ns: meta.id }],\n data: { message, messageIndex },\n },\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n messageId: message.id,\n },\n }),\n ],\n };\n } else {\n if (messageIndex === undefined || !message) {\n return;\n }\n\n thread.messages.splice(messageIndex, 0, Ref.make(message));\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.undo-delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n messageId: message.id,\n },\n }),\n ],\n };\n }\n },\n }),\n ]);\n"],
5
+ "mappings": "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",
6
+ "names": ["Effect", "Capabilities", "contributes", "createIntent", "createResolver", "sleep", "Obj", "Relation", "Type", "invariant", "ATTENDABLE_PATH_SEPARATOR", "DeckAction", "ObservabilityAction", "CollectionAction", "SpaceAction", "Ref", "fullyQualifiedId", "getSpace", "AnchoredTo", "DataType", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ThreadAction", "onCreateSpace", "resolve", "space", "rootCollection", "gen", "dispatch", "getCapability", "IntentDispatcher", "object", "collection", "createIntent", "CollectionAction", "CreateQueryCollection", "typename", "Type", "getTypename", "ChannelType", "objects", "push", "Ref", "make", "channel", "CreateChannel", "name", "spaceId", "id", "db", "add", "data", "Obj", "defaultThread", "ThreadType", "messages", "status", "threads", "CreateChannelThread", "thread", "Create", "anchor", "_anchor", "subject", "getSpace", "invariant", "state", "ThreadCapabilities", "MutableState", "subjectId", "fullyQualifiedId", "Relation", "AnchoredTo", "Source", "Target", "draft", "drafts", "intents", "Select", "current", "DeckAction", "ChangeCompanion", "primary", "companion", "ATTENDABLE_PATH_SEPARATOR", "AddProposal", "text", "sender", "proposal", "DataType", "Message", "created", "Date", "toISOString", "blocks", "_tag", "SpaceAction", "AddObject", "target", "hidden", "AddRelation", "schema", "source", "fields", "ToggleResolved", "undefined", "ObservabilityAction", "SendEvent", "properties", "threadId", "Delete", "_thread", "undo", "getSource", "index", "findIndex", "a", "splice", "remove", "sleep", "undoable", "message", "ns", "meta", "AddMessage", "find", "filter", "threadLength", "length", "messageId", "messageLength", "DeleteMessage", "messageIndex", "hasObjectId"]
7
+ }
@@ -2,11 +2,11 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  ThreadAction,
4
4
  ThreadType
5
- } from "./chunk-TDFHTCZZ.mjs";
5
+ } from "./chunk-BAMZXJS4.mjs";
6
6
  import {
7
7
  ThreadCapabilities
8
- } from "./chunk-75RJ5DJI.mjs";
9
- import "./chunk-GRLRWTRU.mjs";
8
+ } from "./chunk-LCHTNRK7.mjs";
9
+ import "./chunk-OBVAURUU.mjs";
10
10
 
11
11
  // src/capabilities/markdown.ts
12
12
  import { EditorView as EditorView2 } from "@codemirror/view";
@@ -21,7 +21,7 @@ import { EditorView } from "@codemirror/view";
21
21
  import { computed, effect } from "@preact/signals-core";
22
22
  import { createIntent } from "@dxos/app-framework";
23
23
  import { Filter, Obj, Query, Relation } from "@dxos/echo";
24
- import { getSpace, getTextInRange, createDocAccessor, fullyQualifiedId, getSource } from "@dxos/react-client/echo";
24
+ import { createDocAccessor, fullyQualifiedId, getSource, getSpace, getTextInRange } from "@dxos/react-client/echo";
25
25
  import { comments, createExternalCommentSync } from "@dxos/react-ui-editor";
26
26
  import { AnchoredTo } from "@dxos/schema";
27
27
  var getName = (doc, anchor) => {
@@ -120,7 +120,7 @@ var threads = (state, doc, dispatch) => {
120
120
  };
121
121
 
122
122
  // src/capabilities/markdown.ts
123
- var markdown_default = (context) => contributes(MarkdownCapabilities.Extensions, [
123
+ var markdown_default = ((context) => contributes(MarkdownCapabilities.Extensions, [
124
124
  ({ document: doc }) => {
125
125
  const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);
126
126
  const { state } = context.getCapability(ThreadCapabilities.MutableState);
@@ -150,7 +150,7 @@ var markdown_default = (context) => contributes(MarkdownCapabilities.Extensions,
150
150
  });
151
151
  });
152
152
  }
153
- ]);
153
+ ]));
154
154
  var selectionOverlapsComment = (state) => {
155
155
  const commentState = state.field(commentsState, false);
156
156
  if (commentState === void 0) {
@@ -167,4 +167,4 @@ var selectionOverlapsComment = (state) => {
167
167
  export {
168
168
  markdown_default as default
169
169
  };
170
- //# sourceMappingURL=markdown-LIJZDK2J.mjs.map
170
+ //# sourceMappingURL=markdown-MYGTDXT6.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/markdown.ts", "../../../src/extensions/threads.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { EditorView } from '@codemirror/view';\n\nimport { Capabilities, type PluginContext, contributes, createIntent } from '@dxos/app-framework';\nimport { ATTENDABLE_PATH_SEPARATOR, DeckAction } from '@dxos/plugin-deck/types';\nimport { MarkdownCapabilities } from '@dxos/plugin-markdown';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { type EditorState, commentClickedEffect, commentsState, overlap } from '@dxos/react-ui-editor';\n\nimport { threads } from '../extensions';\n\nimport { ThreadCapabilities } from './capabilities';\n\nexport default (context: PluginContext) =>\n contributes(MarkdownCapabilities.Extensions, [\n ({ document: doc }) => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n return threads(state, doc, dispatch);\n },\n ({ document: doc }) => {\n const { state } = context.getCapability(ThreadCapabilities.MutableState);\n\n return EditorView.updateListener.of((update) => {\n if (update.docChanged || update.selectionSet) {\n state.toolbar[fullyQualifiedId(doc)] = selectionOverlapsComment(update.state);\n }\n });\n },\n ({ document: doc }) => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const id = fullyQualifiedId(doc);\n\n return EditorView.updateListener.of((update) => {\n update.transactions.forEach((transaction) => {\n transaction.effects.forEach(async (effect) => {\n if (effect.is(commentClickedEffect)) {\n void dispatch(\n createIntent(DeckAction.ChangeCompanion, {\n primary: id,\n companion: `${id}${ATTENDABLE_PATH_SEPARATOR}comments`,\n }),\n );\n }\n });\n });\n });\n },\n ]);\n\nconst selectionOverlapsComment = (state: EditorState): boolean => {\n // May not be defined if thread plugin not installed.\n const commentState = state.field(commentsState, false);\n if (commentState === undefined) {\n return false;\n }\n\n const { selection } = state;\n for (const range of selection.ranges) {\n if (commentState.comments.some(({ range: commentRange }) => overlap(commentRange, range))) {\n return true;\n }\n }\n\n return false;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Extension } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { computed, effect } from '@preact/signals-core';\n\nimport { type PromiseIntentDispatcher, createIntent } from '@dxos/app-framework';\nimport { Filter, Obj, Query, Relation } from '@dxos/echo';\nimport { type Markdown } from '@dxos/plugin-markdown/types';\nimport { createDocAccessor, fullyQualifiedId, getSource, getSpace, getTextInRange } from '@dxos/react-client/echo';\nimport { comments, createExternalCommentSync } from '@dxos/react-ui-editor';\nimport { AnchoredTo } from '@dxos/schema';\n\nimport { ThreadAction, type ThreadState, ThreadType } from '../types';\n\n// TODO(burdon): Factor out.\nconst getName = (doc: Markdown.Document, anchor: string): string | undefined => {\n if (doc.content) {\n const [start, end] = anchor.split(':');\n return getTextInRange(createDocAccessor(doc.content.target!, ['content']), start, end);\n }\n};\n\n/**\n * Construct plugins.\n */\nexport const threads = (state: ThreadState, doc?: Markdown.Document, dispatch?: PromiseIntentDispatcher): Extension => {\n const space = doc && getSpace(doc);\n if (!doc || !space || !dispatch) {\n // Include no-op comments extension here to ensure that the facets are always present when they are expected.\n // TODO(wittjosiah): The Editor should only look for these facets when comments are available.\n return [comments()];\n }\n\n const query = space.db.query(Query.select(Filter.ids(doc.id)).targetOf(AnchoredTo));\n const unsubscribe = query.subscribe();\n\n const anchors = computed(() =>\n query.objects\n .filter((anchor) => {\n const thread = Relation.getSource(anchor);\n return Obj.instanceOf(ThreadType, thread) && thread.status !== 'resolved';\n })\n .concat(state.drafts[fullyQualifiedId(doc)] ?? []),\n );\n\n return [\n EditorView.domEventHandlers({\n destroy: () => {\n unsubscribe();\n },\n }),\n\n EditorView.updateListener.of((update) => {\n if (update.docChanged) {\n anchors.value.forEach((anchor) => {\n if (anchor.anchor) {\n // Only update if the name has changed, otherwise this will cause an infinite loop.\n // Skip if the name is empty; this means comment text was deleted, but thread name should remain.\n const name = getName(doc, anchor.anchor);\n const thread = Relation.getSource(anchor) as ThreadType;\n if (name && name !== thread.name) {\n thread.name = name;\n }\n }\n });\n }\n }),\n\n createExternalCommentSync(\n fullyQualifiedId(doc),\n (sink) => effect(() => sink()),\n () =>\n anchors.value\n .filter((anchor) => anchor.anchor)\n .map((anchor) => ({ id: fullyQualifiedId(Relation.getSource(anchor)), cursor: anchor.anchor })),\n ),\n\n comments({\n id: fullyQualifiedId(doc),\n onCreate: ({ cursor }) => {\n const name = getName(doc, cursor);\n void dispatch(createIntent(ThreadAction.Create, { anchor: cursor, name, subject: doc }));\n },\n onDelete: ({ id }) => {\n const draft = state.drafts[fullyQualifiedId(doc)];\n if (draft) {\n const index = draft.findIndex((thread) => fullyQualifiedId(thread) === id);\n if (index !== -1) {\n draft.splice(index, 1);\n }\n }\n\n const thread = query.objects.find((object) => getSource(object).id === id);\n if (thread) {\n thread.anchor = undefined;\n }\n },\n onUpdate: ({ id, cursor }) => {\n const draft = state.drafts[fullyQualifiedId(doc)]?.find((thread) => fullyQualifiedId(thread) === id);\n if (draft) {\n const thread = Relation.getSource(draft) as ThreadType;\n thread.name = getName(doc, cursor);\n draft.anchor = cursor;\n }\n\n const relation = query.objects.find((object) => getSource(object).id === id);\n if (relation) {\n const thread = getSource(relation);\n if (Obj.instanceOf(ThreadType, thread)) {\n thread.name = getName(doc, cursor);\n relation.anchor = cursor;\n }\n }\n },\n onSelect: ({ selection }) => {\n const current = selection.current ?? selection.closest;\n if (current) {\n void dispatch(createIntent(ThreadAction.Select, { current }));\n }\n },\n }),\n ];\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["EditorView", "Capabilities", "contributes", "createIntent", "ATTENDABLE_PATH_SEPARATOR", "DeckAction", "MarkdownCapabilities", "fullyQualifiedId", "commentClickedEffect", "commentsState", "overlap", "EditorView", "computed", "effect", "createIntent", "Filter", "Obj", "Query", "Relation", "createDocAccessor", "fullyQualifiedId", "getSource", "getSpace", "getTextInRange", "comments", "createExternalCommentSync", "AnchoredTo", "getName", "doc", "anchor", "content", "start", "end", "split", "getTextInRange", "createDocAccessor", "target", "threads", "state", "dispatch", "space", "getSpace", "comments", "query", "db", "Query", "select", "Filter", "ids", "id", "targetOf", "AnchoredTo", "unsubscribe", "subscribe", "anchors", "computed", "objects", "filter", "thread", "Relation", "getSource", "Obj", "instanceOf", "ThreadType", "status", "concat", "drafts", "fullyQualifiedId", "EditorView", "domEventHandlers", "destroy", "updateListener", "of", "update", "docChanged", "value", "forEach", "name", "createExternalCommentSync", "sink", "effect", "map", "cursor", "onCreate", "createIntent", "ThreadAction", "Create", "subject", "onDelete", "draft", "index", "findIndex", "splice", "find", "object", "undefined", "onUpdate", "relation", "onSelect", "selection", "current", "closest", "Select", "context", "contributes", "MarkdownCapabilities", "Extensions", "document", "doc", "dispatchPromise", "dispatch", "getCapability", "Capabilities", "IntentDispatcher", "state", "ThreadCapabilities", "MutableState", "threads", "EditorView", "updateListener", "of", "update", "docChanged", "selectionSet", "toolbar", "fullyQualifiedId", "selectionOverlapsComment", "id", "transactions", "forEach", "transaction", "effects", "effect", "is", "commentClickedEffect", "createIntent", "DeckAction", "ChangeCompanion", "primary", "companion", "ATTENDABLE_PATH_SEPARATOR", "commentState", "field", "commentsState", "undefined", "selection", "range", "ranges", "comments", "some", "commentRange", "overlap"]
7
+ }