@dxos/plugin-thread 0.8.4-main.72ec0f3 → 0.8.4-main.765dc60934

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 (568) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/ChannelArticle-ACZD7YFT.mjs +28 -0
  4. package/dist/lib/neutral/ChannelArticle-ACZD7YFT.mjs.map +7 -0
  5. package/dist/lib/neutral/ChannelChat-6YTD5HWL.mjs +10 -0
  6. package/dist/lib/neutral/ThreadCompanion-NQWPS2H6.mjs +208 -0
  7. package/dist/lib/neutral/ThreadCompanion-NQWPS2H6.mjs.map +7 -0
  8. package/dist/lib/neutral/ThreadContainer-XYEPEOSD.mjs +61 -0
  9. package/dist/lib/neutral/ThreadContainer-XYEPEOSD.mjs.map +7 -0
  10. package/dist/lib/neutral/ThreadPlugin.mjs +80 -0
  11. package/dist/lib/neutral/ThreadPlugin.mjs.map +7 -0
  12. package/dist/lib/neutral/ThreadPlugin.node.mjs +40 -0
  13. package/dist/lib/neutral/ThreadPlugin.node.mjs.map +7 -0
  14. package/dist/lib/neutral/ThreadSettings-5MKTDK3A.mjs +15 -0
  15. package/dist/lib/neutral/ThreadSettings-5MKTDK3A.mjs.map +7 -0
  16. package/dist/lib/neutral/add-message-FBIROBEZ.mjs +87 -0
  17. package/dist/lib/neutral/add-message-FBIROBEZ.mjs.map +7 -0
  18. package/dist/lib/neutral/app-graph-builder-7Q6MA6RT.mjs +120 -0
  19. package/dist/lib/neutral/app-graph-builder-7Q6MA6RT.mjs.map +7 -0
  20. package/dist/lib/neutral/append-channel-message-FTFAD3PK.mjs +40 -0
  21. package/dist/lib/neutral/append-channel-message-FTFAD3PK.mjs.map +7 -0
  22. package/dist/lib/neutral/blueprint-definition-S3EBOH4R.mjs +15 -0
  23. package/dist/lib/neutral/blueprint-definition-S3EBOH4R.mjs.map +7 -0
  24. package/dist/lib/neutral/blueprints/index.mjs +8 -0
  25. package/dist/lib/neutral/capabilities/index.mjs +25 -0
  26. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-5T5LPLBN.mjs +36 -0
  28. package/dist/lib/neutral/chunk-5T5LPLBN.mjs.map +7 -0
  29. package/dist/lib/{browser/chunk-K2DUJRFJ.mjs → neutral/chunk-7GHUS3IX.mjs} +4 -11
  30. package/dist/lib/neutral/chunk-7GHUS3IX.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-D5LGFCUY.mjs +55 -0
  32. package/dist/lib/neutral/chunk-D5LGFCUY.mjs.map +7 -0
  33. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  34. package/dist/lib/{browser/chunk-CP7E2HRE.mjs → neutral/chunk-JLY4NVTA.mjs} +12 -5
  35. package/dist/lib/neutral/chunk-JLY4NVTA.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-KRXHIW4P.mjs +164 -0
  37. package/dist/lib/neutral/chunk-KRXHIW4P.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-PE7IH7EL.mjs +271 -0
  39. package/dist/lib/neutral/chunk-PE7IH7EL.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-QFDT33VT.mjs +69 -0
  41. package/dist/lib/neutral/chunk-QFDT33VT.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-QK4QZUR5.mjs +8 -0
  43. package/dist/lib/neutral/chunk-QK4QZUR5.mjs.map +7 -0
  44. package/dist/lib/neutral/components/index.mjs +539 -0
  45. package/dist/lib/neutral/components/index.mjs.map +7 -0
  46. package/dist/lib/neutral/containers/index.mjs +15 -0
  47. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  48. package/dist/lib/neutral/create-OAQJ6LXN.mjs +52 -0
  49. package/dist/lib/neutral/create-OAQJ6LXN.mjs.map +7 -0
  50. package/dist/lib/neutral/create-channel-3E4FJ662.mjs +19 -0
  51. package/dist/lib/neutral/create-channel-3E4FJ662.mjs.map +7 -0
  52. package/dist/lib/neutral/create-object-HIEWSBZB.mjs +27 -0
  53. package/dist/lib/neutral/create-object-HIEWSBZB.mjs.map +7 -0
  54. package/dist/lib/neutral/create-proposals-GRYZXRMV.mjs +56 -0
  55. package/dist/lib/neutral/create-proposals-GRYZXRMV.mjs.map +7 -0
  56. package/dist/lib/neutral/delete-HCCG5RVR.mjs +57 -0
  57. package/dist/lib/neutral/delete-HCCG5RVR.mjs.map +7 -0
  58. package/dist/lib/neutral/delete-message-DHFRACB4.mjs +54 -0
  59. package/dist/lib/neutral/delete-message-DHFRACB4.mjs.map +7 -0
  60. package/dist/lib/neutral/hooks/index.mjs +10 -0
  61. package/dist/lib/neutral/index.mjs +28 -0
  62. package/dist/lib/neutral/markdown-BUORNCPG.mjs +83 -0
  63. package/dist/lib/neutral/markdown-BUORNCPG.mjs.map +7 -0
  64. package/dist/lib/neutral/meta.json +1 -0
  65. package/dist/lib/neutral/meta.mjs +10 -0
  66. package/dist/lib/neutral/on-create-space-OEBRKOAM.mjs +23 -0
  67. package/dist/lib/neutral/on-create-space-OEBRKOAM.mjs.map +7 -0
  68. package/dist/lib/neutral/operation-handler-RU6K2S4L.mjs +13 -0
  69. package/dist/lib/neutral/operation-handler-RU6K2S4L.mjs.map +7 -0
  70. package/dist/lib/neutral/operations/index.mjs +8 -0
  71. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  72. package/dist/lib/neutral/plugin.mjs +16 -0
  73. package/dist/lib/neutral/plugin.mjs.map +7 -0
  74. package/dist/lib/neutral/react-surface-XY23GVZH.mjs +76 -0
  75. package/dist/lib/neutral/react-surface-XY23GVZH.mjs.map +7 -0
  76. package/dist/lib/neutral/restore-P4ZLXLF7.mjs +32 -0
  77. package/dist/lib/neutral/restore-P4ZLXLF7.mjs.map +7 -0
  78. package/dist/lib/neutral/restore-message-AUBOP2DF.mjs +33 -0
  79. package/dist/lib/neutral/restore-message-AUBOP2DF.mjs.map +7 -0
  80. package/dist/lib/neutral/select-LIVAMBCE.mjs +24 -0
  81. package/dist/lib/neutral/select-LIVAMBCE.mjs.map +7 -0
  82. package/dist/lib/neutral/settings-HK4EB6TF.mjs +30 -0
  83. package/dist/lib/neutral/settings-HK4EB6TF.mjs.map +7 -0
  84. package/dist/lib/neutral/state-UU7VEAKV.mjs +22 -0
  85. package/dist/lib/neutral/state-UU7VEAKV.mjs.map +7 -0
  86. package/dist/lib/neutral/testing/index.mjs +58 -0
  87. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  88. package/dist/lib/neutral/toggle-resolved-RQBDQZSV.mjs +36 -0
  89. package/dist/lib/neutral/toggle-resolved-RQBDQZSV.mjs.map +7 -0
  90. package/dist/lib/neutral/translations.mjs +90 -0
  91. package/dist/lib/neutral/translations.mjs.map +7 -0
  92. package/dist/lib/neutral/types/index.mjs +12 -0
  93. package/dist/lib/neutral/types/index.mjs.map +7 -0
  94. package/dist/lib/neutral/undo-mappings-HOKL2L3M.mjs +54 -0
  95. package/dist/lib/neutral/undo-mappings-HOKL2L3M.mjs.map +7 -0
  96. package/dist/types/src/ThreadPlugin.d.ts +3 -1
  97. package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
  98. package/dist/types/src/ThreadPlugin.node.d.ts +4 -0
  99. package/dist/types/src/ThreadPlugin.node.d.ts.map +1 -0
  100. package/dist/types/src/ThreadPlugin.test.d.ts +2 -0
  101. package/dist/types/src/ThreadPlugin.test.d.ts.map +1 -0
  102. package/dist/types/src/blueprints/index.d.ts +2 -0
  103. package/dist/types/src/blueprints/index.d.ts.map +1 -0
  104. package/dist/types/src/blueprints/thread-blueprint.d.ts +4 -0
  105. package/dist/types/src/blueprints/thread-blueprint.d.ts.map +1 -0
  106. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  107. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -4
  109. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  111. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/index.d.ts +15 -15
  113. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/markdown.d.ts +3 -2
  115. package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  117. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  119. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  120. package/dist/types/src/capabilities/settings.d.ts +5 -2
  121. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  122. package/dist/types/src/capabilities/state.d.ts +5 -5
  123. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  124. package/dist/types/src/capabilities/undo-mappings.d.ts +5 -0
  125. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
  126. package/dist/types/src/components/Chat/Chat.d.ts +51 -0
  127. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -0
  128. package/dist/types/src/components/Chat/index.d.ts +2 -0
  129. package/dist/types/src/components/Chat/index.d.ts.map +1 -0
  130. package/dist/types/src/components/CommentsPanel/CommentsPanel.d.ts +13 -0
  131. package/dist/types/src/components/CommentsPanel/CommentsPanel.d.ts.map +1 -0
  132. package/dist/types/src/components/CommentsPanel/CommentsPanel.stories.d.ts +160 -0
  133. package/dist/types/src/components/CommentsPanel/CommentsPanel.stories.d.ts.map +1 -0
  134. package/dist/types/src/components/{CommentsThreadContainer.d.ts → CommentsPanel/CommentsThread.d.ts} +3 -3
  135. package/dist/types/src/components/CommentsPanel/CommentsThread.d.ts.map +1 -0
  136. package/dist/types/src/components/CommentsPanel/index.d.ts +3 -0
  137. package/dist/types/src/components/CommentsPanel/index.d.ts.map +1 -0
  138. package/dist/types/src/components/MessagePanel/MessagePanel.d.ts +15 -0
  139. package/dist/types/src/components/MessagePanel/MessagePanel.d.ts.map +1 -0
  140. package/dist/types/src/components/MessagePanel/index.d.ts +2 -0
  141. package/dist/types/src/components/MessagePanel/index.d.ts.map +1 -0
  142. package/dist/types/src/components/ThreadSettings/ThreadSettings.d.ts +6 -0
  143. package/dist/types/src/components/ThreadSettings/ThreadSettings.d.ts.map +1 -0
  144. package/dist/types/src/components/ThreadSettings/ThreadSettings.stories.d.ts +161 -0
  145. package/dist/types/src/components/ThreadSettings/ThreadSettings.stories.d.ts.map +1 -0
  146. package/dist/types/src/components/ThreadSettings/index.d.ts +2 -0
  147. package/dist/types/src/components/ThreadSettings/index.d.ts.map +1 -0
  148. package/dist/types/src/components/index.d.ts +5 -10
  149. package/dist/types/src/components/index.d.ts.map +1 -1
  150. package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts +13 -0
  151. package/dist/types/src/containers/ChannelArticle/ChannelArticle.d.ts.map +1 -0
  152. package/dist/types/src/containers/ChannelArticle/ChannelArticle.stories.d.ts +162 -0
  153. package/dist/types/src/containers/ChannelArticle/ChannelArticle.stories.d.ts.map +1 -0
  154. package/dist/types/src/containers/ChannelArticle/index.d.ts +2 -0
  155. package/dist/types/src/containers/ChannelArticle/index.d.ts.map +1 -0
  156. package/dist/types/src/containers/ChannelChat/ChannelChat.d.ts +20 -0
  157. package/dist/types/src/containers/ChannelChat/ChannelChat.d.ts.map +1 -0
  158. package/dist/types/src/containers/ChannelChat/index.d.ts +4 -0
  159. package/dist/types/src/containers/ChannelChat/index.d.ts.map +1 -0
  160. package/dist/types/src/containers/ThreadCompanion/ThreadCompanion.d.ts +8 -0
  161. package/dist/types/src/containers/ThreadCompanion/ThreadCompanion.d.ts.map +1 -0
  162. package/dist/types/src/containers/ThreadCompanion/index.d.ts +2 -0
  163. package/dist/types/src/containers/ThreadCompanion/index.d.ts.map +1 -0
  164. package/dist/types/src/containers/ThreadContainer/ThreadContainer.d.ts +20 -0
  165. package/dist/types/src/containers/ThreadContainer/ThreadContainer.d.ts.map +1 -0
  166. package/dist/types/src/containers/ThreadContainer/ThreadContainer.stories.d.ts +162 -0
  167. package/dist/types/src/containers/ThreadContainer/ThreadContainer.stories.d.ts.map +1 -0
  168. package/dist/types/src/containers/ThreadContainer/index.d.ts +4 -0
  169. package/dist/types/src/containers/ThreadContainer/index.d.ts.map +1 -0
  170. package/dist/types/src/containers/index.d.ts +6 -0
  171. package/dist/types/src/containers/index.d.ts.map +1 -0
  172. package/dist/types/src/{components/command-extension.d.ts → extensions/command.d.ts} +1 -1
  173. package/dist/types/src/extensions/command.d.ts.map +1 -0
  174. package/dist/types/src/extensions/index.d.ts +1 -0
  175. package/dist/types/src/extensions/index.d.ts.map +1 -1
  176. package/dist/types/src/extensions/threads.d.ts +9 -4
  177. package/dist/types/src/extensions/threads.d.ts.map +1 -1
  178. package/dist/types/src/hooks/analytics.d.ts +1 -2
  179. package/dist/types/src/hooks/analytics.d.ts.map +1 -1
  180. package/dist/types/src/hooks/index.d.ts +0 -4
  181. package/dist/types/src/hooks/index.d.ts.map +1 -1
  182. package/dist/types/src/hooks/useStatus.d.ts.map +1 -1
  183. package/dist/types/src/index.d.ts +2 -3
  184. package/dist/types/src/index.d.ts.map +1 -1
  185. package/dist/types/src/meta.d.ts +2 -2
  186. package/dist/types/src/meta.d.ts.map +1 -1
  187. package/dist/types/src/operations/add-message.d.ts +5 -0
  188. package/dist/types/src/operations/add-message.d.ts.map +1 -0
  189. package/dist/types/src/operations/append-channel-message.d.ts +5 -0
  190. package/dist/types/src/operations/append-channel-message.d.ts.map +1 -0
  191. package/dist/types/src/operations/create-channel.d.ts +5 -0
  192. package/dist/types/src/operations/create-channel.d.ts.map +1 -0
  193. package/dist/types/src/operations/create-proposals.d.ts +5 -0
  194. package/dist/types/src/operations/create-proposals.d.ts.map +1 -0
  195. package/dist/types/src/operations/create.d.ts +5 -0
  196. package/dist/types/src/operations/create.d.ts.map +1 -0
  197. package/dist/types/src/operations/delete-message.d.ts +5 -0
  198. package/dist/types/src/operations/delete-message.d.ts.map +1 -0
  199. package/dist/types/src/operations/delete.d.ts +5 -0
  200. package/dist/types/src/operations/delete.d.ts.map +1 -0
  201. package/dist/types/src/operations/index.d.ts +3 -0
  202. package/dist/types/src/operations/index.d.ts.map +1 -0
  203. package/dist/types/src/operations/on-create-space.d.ts +5 -0
  204. package/dist/types/src/operations/on-create-space.d.ts.map +1 -0
  205. package/dist/types/src/operations/restore-message.d.ts +5 -0
  206. package/dist/types/src/operations/restore-message.d.ts.map +1 -0
  207. package/dist/types/src/operations/restore.d.ts +5 -0
  208. package/dist/types/src/operations/restore.d.ts.map +1 -0
  209. package/dist/types/src/operations/select.d.ts +5 -0
  210. package/dist/types/src/operations/select.d.ts.map +1 -0
  211. package/dist/types/src/operations/toggle-resolved.d.ts +5 -0
  212. package/dist/types/src/operations/toggle-resolved.d.ts.map +1 -0
  213. package/dist/types/src/plugin.d.ts +4 -0
  214. package/dist/types/src/plugin.d.ts.map +1 -0
  215. package/dist/types/src/{components/testing.d.ts → testing/data.d.ts} +2 -2
  216. package/dist/types/src/testing/data.d.ts.map +1 -0
  217. package/dist/types/src/testing/index.d.ts +1 -1
  218. package/dist/types/src/testing/index.d.ts.map +1 -1
  219. package/dist/types/src/translations.d.ts +140 -138
  220. package/dist/types/src/translations.d.ts.map +1 -1
  221. package/dist/types/src/types/Settings.d.ts +5 -0
  222. package/dist/types/src/types/Settings.d.ts.map +1 -0
  223. package/dist/types/src/types/ThreadCapabilities.d.ts +13 -0
  224. package/dist/types/src/types/ThreadCapabilities.d.ts.map +1 -0
  225. package/dist/types/src/types/ThreadOperation.d.ts +1995 -0
  226. package/dist/types/src/types/ThreadOperation.d.ts.map +1 -0
  227. package/dist/types/src/types/index.d.ts +3 -2
  228. package/dist/types/src/types/index.d.ts.map +1 -1
  229. package/dist/types/src/types/types.d.ts +1 -368
  230. package/dist/types/src/types/types.d.ts.map +1 -1
  231. package/dist/types/src/util.d.ts +6 -3
  232. package/dist/types/src/util.d.ts.map +1 -1
  233. package/dist/types/tsconfig.tsbuildinfo +1 -1
  234. package/package.json +149 -90
  235. package/src/ThreadPlugin.node.ts +39 -0
  236. package/src/ThreadPlugin.test.ts +37 -0
  237. package/src/ThreadPlugin.tsx +42 -133
  238. package/src/blueprints/index.ts +5 -0
  239. package/src/blueprints/thread-blueprint.ts +36 -0
  240. package/src/capabilities/app-graph-builder.ts +123 -174
  241. package/src/capabilities/blueprint-definition.ts +11 -30
  242. package/src/capabilities/create-object.ts +29 -0
  243. package/src/capabilities/index.ts +15 -12
  244. package/src/capabilities/markdown.ts +53 -38
  245. package/src/capabilities/operation-handler.ts +16 -0
  246. package/src/capabilities/react-surface.tsx +64 -79
  247. package/src/capabilities/settings.ts +26 -12
  248. package/src/capabilities/state.ts +14 -18
  249. package/src/capabilities/undo-mappings.ts +46 -0
  250. package/src/components/Chat/Chat.tsx +258 -0
  251. package/src/components/Chat/index.ts +5 -0
  252. package/src/components/CommentsPanel/CommentsPanel.stories.tsx +95 -0
  253. package/src/components/{CommentsContainer.tsx → CommentsPanel/CommentsPanel.tsx} +16 -16
  254. package/src/components/{CommentsThreadContainer.tsx → CommentsPanel/CommentsThread.tsx} +30 -33
  255. package/src/components/CommentsPanel/index.ts +6 -0
  256. package/src/components/{MessageContainer.tsx → MessagePanel/MessagePanel.tsx} +81 -45
  257. package/src/components/MessagePanel/index.ts +5 -0
  258. package/src/components/ThreadSettings/ThreadSettings.stories.tsx +32 -0
  259. package/src/components/ThreadSettings/ThreadSettings.tsx +19 -0
  260. package/src/components/ThreadSettings/index.ts +5 -0
  261. package/src/components/index.ts +5 -12
  262. package/src/containers/ChannelArticle/ChannelArticle.stories.tsx +105 -0
  263. package/src/containers/ChannelArticle/ChannelArticle.tsx +42 -0
  264. package/src/containers/ChannelArticle/index.ts +5 -0
  265. package/src/containers/ChannelChat/ChannelChat.tsx +75 -0
  266. package/src/containers/ChannelChat/index.ts +8 -0
  267. package/src/containers/ThreadCompanion/ThreadCompanion.tsx +215 -0
  268. package/src/containers/ThreadCompanion/index.ts +5 -0
  269. package/src/{components/Chat.stories.tsx → containers/ThreadContainer/ThreadContainer.stories.tsx} +27 -26
  270. package/src/containers/ThreadContainer/ThreadContainer.tsx +75 -0
  271. package/src/containers/ThreadContainer/index.ts +8 -0
  272. package/src/containers/index.ts +10 -0
  273. package/src/{components/command-extension.ts → extensions/command.ts} +3 -3
  274. package/src/extensions/index.ts +1 -0
  275. package/src/extensions/threads.ts +80 -44
  276. package/src/hooks/analytics.ts +24 -20
  277. package/src/hooks/index.ts +0 -5
  278. package/src/index.ts +4 -4
  279. package/src/meta.ts +5 -6
  280. package/src/operations/add-message.ts +81 -0
  281. package/src/operations/append-channel-message.ts +37 -0
  282. package/src/operations/create-channel.ts +20 -0
  283. package/src/operations/create-proposals.ts +49 -0
  284. package/src/operations/create.ts +48 -0
  285. package/src/operations/delete-message.ts +53 -0
  286. package/src/operations/delete.ts +63 -0
  287. package/src/operations/index.ts +20 -0
  288. package/src/operations/on-create-space.ts +27 -0
  289. package/src/operations/restore-message.ts +38 -0
  290. package/src/operations/restore.ts +38 -0
  291. package/src/operations/select.ts +24 -0
  292. package/src/operations/toggle-resolved.ts +41 -0
  293. package/src/plugin.ts +11 -0
  294. package/src/{components/testing.ts → testing/data.ts} +8 -10
  295. package/src/testing/index.ts +1 -1
  296. package/src/translations.ts +74 -76
  297. package/src/types/Settings.ts +10 -0
  298. package/src/types/ThreadCapabilities.ts +26 -0
  299. package/src/types/ThreadOperation.ts +178 -0
  300. package/src/types/index.ts +4 -2
  301. package/src/types/types.ts +2 -99
  302. package/src/util.ts +37 -5
  303. package/dist/lib/browser/ChannelContainer-MX5ABVGC.mjs +0 -16
  304. package/dist/lib/browser/ChatContainer-7F5Y6GXJ.mjs +0 -15
  305. package/dist/lib/browser/app-graph-builder-HNYLII5E.mjs +0 -170
  306. package/dist/lib/browser/app-graph-builder-HNYLII5E.mjs.map +0 -7
  307. package/dist/lib/browser/blueprint-definition-6BKYTMJS.mjs +0 -104
  308. package/dist/lib/browser/blueprint-definition-6BKYTMJS.mjs.map +0 -7
  309. package/dist/lib/browser/call-manager-MAXQLMMS.mjs +0 -24
  310. package/dist/lib/browser/call-manager-MAXQLMMS.mjs.map +0 -7
  311. package/dist/lib/browser/chunk-BBTXGRIR.mjs +0 -18
  312. package/dist/lib/browser/chunk-BBTXGRIR.mjs.map +0 -7
  313. package/dist/lib/browser/chunk-BQWQFTWT.mjs +0 -612
  314. package/dist/lib/browser/chunk-BQWQFTWT.mjs.map +0 -7
  315. package/dist/lib/browser/chunk-CP7E2HRE.mjs.map +0 -7
  316. package/dist/lib/browser/chunk-FR6MEAZI.mjs +0 -377
  317. package/dist/lib/browser/chunk-FR6MEAZI.mjs.map +0 -7
  318. package/dist/lib/browser/chunk-INQVAYPN.mjs +0 -989
  319. package/dist/lib/browser/chunk-INQVAYPN.mjs.map +0 -7
  320. package/dist/lib/browser/chunk-ISCHODBV.mjs +0 -106
  321. package/dist/lib/browser/chunk-ISCHODBV.mjs.map +0 -7
  322. package/dist/lib/browser/chunk-K2DUJRFJ.mjs.map +0 -7
  323. package/dist/lib/browser/chunk-KOBXMDCI.mjs +0 -182
  324. package/dist/lib/browser/chunk-KOBXMDCI.mjs.map +0 -7
  325. package/dist/lib/browser/chunk-NMJEVD36.mjs +0 -168
  326. package/dist/lib/browser/chunk-NMJEVD36.mjs.map +0 -7
  327. package/dist/lib/browser/chunk-OOUDK7Q7.mjs +0 -23
  328. package/dist/lib/browser/chunk-OOUDK7Q7.mjs.map +0 -7
  329. package/dist/lib/browser/chunk-ZCW3NSDZ.mjs +0 -1793
  330. package/dist/lib/browser/chunk-ZCW3NSDZ.mjs.map +0 -7
  331. package/dist/lib/browser/index.mjs +0 -312
  332. package/dist/lib/browser/index.mjs.map +0 -7
  333. package/dist/lib/browser/intent-resolver-BOUT4WGY.mjs +0 -361
  334. package/dist/lib/browser/intent-resolver-BOUT4WGY.mjs.map +0 -7
  335. package/dist/lib/browser/markdown-74EUSQGV.mjs +0 -171
  336. package/dist/lib/browser/markdown-74EUSQGV.mjs.map +0 -7
  337. package/dist/lib/browser/meta.json +0 -1
  338. package/dist/lib/browser/react-root-BVG7B2LW.mjs +0 -28
  339. package/dist/lib/browser/react-root-BVG7B2LW.mjs.map +0 -7
  340. package/dist/lib/browser/react-surface-BCD5ODQ6.mjs +0 -110
  341. package/dist/lib/browser/react-surface-BCD5ODQ6.mjs.map +0 -7
  342. package/dist/lib/browser/settings-LGQUZITB.mjs +0 -22
  343. package/dist/lib/browser/settings-LGQUZITB.mjs.map +0 -7
  344. package/dist/lib/browser/state-36REWXO5.mjs +0 -34
  345. package/dist/lib/browser/state-36REWXO5.mjs.map +0 -7
  346. package/dist/lib/browser/types/index.mjs +0 -14
  347. package/dist/lib/node-esm/ChannelContainer-2JJJ3IDK.mjs +0 -17
  348. package/dist/lib/node-esm/ChatContainer-C526R4DI.mjs +0 -16
  349. package/dist/lib/node-esm/app-graph-builder-SOCKP4ST.mjs +0 -171
  350. package/dist/lib/node-esm/app-graph-builder-SOCKP4ST.mjs.map +0 -7
  351. package/dist/lib/node-esm/blueprint-definition-6LEAWSC7.mjs +0 -105
  352. package/dist/lib/node-esm/blueprint-definition-6LEAWSC7.mjs.map +0 -7
  353. package/dist/lib/node-esm/call-manager-LC4OS2KD.mjs +0 -25
  354. package/dist/lib/node-esm/call-manager-LC4OS2KD.mjs.map +0 -7
  355. package/dist/lib/node-esm/chunk-5DLH4MWN.mjs +0 -25
  356. package/dist/lib/node-esm/chunk-5DLH4MWN.mjs.map +0 -7
  357. package/dist/lib/node-esm/chunk-7KZWZS2U.mjs +0 -1794
  358. package/dist/lib/node-esm/chunk-7KZWZS2U.mjs.map +0 -7
  359. package/dist/lib/node-esm/chunk-ABUFOZVX.mjs +0 -33
  360. package/dist/lib/node-esm/chunk-ABUFOZVX.mjs.map +0 -7
  361. package/dist/lib/node-esm/chunk-JF7THR7F.mjs +0 -990
  362. package/dist/lib/node-esm/chunk-JF7THR7F.mjs.map +0 -7
  363. package/dist/lib/node-esm/chunk-JJW6YMLC.mjs +0 -613
  364. package/dist/lib/node-esm/chunk-JJW6YMLC.mjs.map +0 -7
  365. package/dist/lib/node-esm/chunk-PZH2EDU5.mjs +0 -183
  366. package/dist/lib/node-esm/chunk-PZH2EDU5.mjs.map +0 -7
  367. package/dist/lib/node-esm/chunk-TJKM5JZT.mjs +0 -169
  368. package/dist/lib/node-esm/chunk-TJKM5JZT.mjs.map +0 -7
  369. package/dist/lib/node-esm/chunk-TWKGDFCS.mjs +0 -378
  370. package/dist/lib/node-esm/chunk-TWKGDFCS.mjs.map +0 -7
  371. package/dist/lib/node-esm/chunk-VBI32FGI.mjs +0 -108
  372. package/dist/lib/node-esm/chunk-VBI32FGI.mjs.map +0 -7
  373. package/dist/lib/node-esm/chunk-XI45H4IV.mjs +0 -28
  374. package/dist/lib/node-esm/chunk-XI45H4IV.mjs.map +0 -7
  375. package/dist/lib/node-esm/chunk-ZQAGII7M.mjs +0 -19
  376. package/dist/lib/node-esm/chunk-ZQAGII7M.mjs.map +0 -7
  377. package/dist/lib/node-esm/index.mjs +0 -313
  378. package/dist/lib/node-esm/index.mjs.map +0 -7
  379. package/dist/lib/node-esm/intent-resolver-45PLIFCJ.mjs +0 -362
  380. package/dist/lib/node-esm/intent-resolver-45PLIFCJ.mjs.map +0 -7
  381. package/dist/lib/node-esm/markdown-566XXB55.mjs +0 -172
  382. package/dist/lib/node-esm/markdown-566XXB55.mjs.map +0 -7
  383. package/dist/lib/node-esm/meta.json +0 -1
  384. package/dist/lib/node-esm/react-root-DCY6DKLC.mjs +0 -29
  385. package/dist/lib/node-esm/react-root-DCY6DKLC.mjs.map +0 -7
  386. package/dist/lib/node-esm/react-surface-WZH7OAO3.mjs +0 -111
  387. package/dist/lib/node-esm/react-surface-WZH7OAO3.mjs.map +0 -7
  388. package/dist/lib/node-esm/settings-WKLJSP6R.mjs +0 -23
  389. package/dist/lib/node-esm/settings-WKLJSP6R.mjs.map +0 -7
  390. package/dist/lib/node-esm/state-X3W67GTL.mjs +0 -35
  391. package/dist/lib/node-esm/state-X3W67GTL.mjs.map +0 -7
  392. package/dist/lib/node-esm/types/index.mjs +0 -15
  393. package/dist/types/src/calls/call-manager.d.ts +0 -77
  394. package/dist/types/src/calls/call-manager.d.ts.map +0 -1
  395. package/dist/types/src/calls/call-swarm-synchronizer.d.ts +0 -66
  396. package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +0 -1
  397. package/dist/types/src/calls/index.d.ts +0 -7
  398. package/dist/types/src/calls/index.d.ts.map +0 -1
  399. package/dist/types/src/calls/media-manager.d.ts +0 -60
  400. package/dist/types/src/calls/media-manager.d.ts.map +0 -1
  401. package/dist/types/src/calls/speaking-monitor.d.ts +0 -24
  402. package/dist/types/src/calls/speaking-monitor.d.ts.map +0 -1
  403. package/dist/types/src/calls/types.d.ts +0 -45
  404. package/dist/types/src/calls/types.d.ts.map +0 -1
  405. package/dist/types/src/calls/util/audio.d.ts +0 -6
  406. package/dist/types/src/calls/util/audio.d.ts.map +0 -1
  407. package/dist/types/src/calls/util/calls-service.d.ts +0 -77
  408. package/dist/types/src/calls/util/calls-service.d.ts.map +0 -1
  409. package/dist/types/src/calls/util/history-cache.d.ts +0 -11
  410. package/dist/types/src/calls/util/history-cache.d.ts.map +0 -1
  411. package/dist/types/src/calls/util/index.d.ts +0 -5
  412. package/dist/types/src/calls/util/index.d.ts.map +0 -1
  413. package/dist/types/src/calls/util/media.d.ts +0 -6
  414. package/dist/types/src/calls/util/media.d.ts.map +0 -1
  415. package/dist/types/src/calls/util/stub-media-streams.d.ts +0 -18
  416. package/dist/types/src/calls/util/stub-media-streams.d.ts.map +0 -1
  417. package/dist/types/src/calls/util/task-scheduling.d.ts +0 -17
  418. package/dist/types/src/calls/util/task-scheduling.d.ts.map +0 -1
  419. package/dist/types/src/calls-service.stories.d.ts +0 -23
  420. package/dist/types/src/calls-service.stories.d.ts.map +0 -1
  421. package/dist/types/src/capabilities/call-manager.d.ts +0 -5
  422. package/dist/types/src/capabilities/call-manager.d.ts.map +0 -1
  423. package/dist/types/src/capabilities/capabilities.d.ts +0 -27
  424. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  425. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  426. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  427. package/dist/types/src/capabilities/react-root.d.ts +0 -7
  428. package/dist/types/src/capabilities/react-root.d.ts.map +0 -1
  429. package/dist/types/src/components/Call/Call.d.ts +0 -17
  430. package/dist/types/src/components/Call/Call.d.ts.map +0 -1
  431. package/dist/types/src/components/Call/Toolbar.d.ts +0 -16
  432. package/dist/types/src/components/Call/Toolbar.d.ts.map +0 -1
  433. package/dist/types/src/components/Call/index.d.ts +0 -3
  434. package/dist/types/src/components/Call/index.d.ts.map +0 -1
  435. package/dist/types/src/components/CallDebugPanel.d.ts +0 -15
  436. package/dist/types/src/components/CallDebugPanel.d.ts.map +0 -1
  437. package/dist/types/src/components/CallSidebar.d.ts +0 -4
  438. package/dist/types/src/components/CallSidebar.d.ts.map +0 -1
  439. package/dist/types/src/components/ChannelContainer.d.ts +0 -14
  440. package/dist/types/src/components/ChannelContainer.d.ts.map +0 -1
  441. package/dist/types/src/components/ChannelContainer.stories.d.ts +0 -160
  442. package/dist/types/src/components/ChannelContainer.stories.d.ts.map +0 -1
  443. package/dist/types/src/components/Chat.stories.d.ts +0 -160
  444. package/dist/types/src/components/Chat.stories.d.ts.map +0 -1
  445. package/dist/types/src/components/ChatContainer.d.ts +0 -18
  446. package/dist/types/src/components/ChatContainer.d.ts.map +0 -1
  447. package/dist/types/src/components/Comments.stories.d.ts +0 -158
  448. package/dist/types/src/components/Comments.stories.d.ts.map +0 -1
  449. package/dist/types/src/components/CommentsContainer.d.ts +0 -13
  450. package/dist/types/src/components/CommentsContainer.d.ts.map +0 -1
  451. package/dist/types/src/components/CommentsThreadContainer.d.ts.map +0 -1
  452. package/dist/types/src/components/Lobby/Lobby.d.ts +0 -15
  453. package/dist/types/src/components/Lobby/Lobby.d.ts.map +0 -1
  454. package/dist/types/src/components/Lobby/index.d.ts +0 -2
  455. package/dist/types/src/components/Lobby/index.d.ts.map +0 -1
  456. package/dist/types/src/components/Media/AudioStream.d.ts +0 -6
  457. package/dist/types/src/components/Media/AudioStream.d.ts.map +0 -1
  458. package/dist/types/src/components/Media/VideoObject.d.ts +0 -15
  459. package/dist/types/src/components/Media/VideoObject.d.ts.map +0 -1
  460. package/dist/types/src/components/Media/VideoObject.stories.d.ts +0 -22
  461. package/dist/types/src/components/Media/VideoObject.stories.d.ts.map +0 -1
  462. package/dist/types/src/components/Media/index.d.ts +0 -3
  463. package/dist/types/src/components/Media/index.d.ts.map +0 -1
  464. package/dist/types/src/components/MessageContainer.d.ts +0 -14
  465. package/dist/types/src/components/MessageContainer.d.ts.map +0 -1
  466. package/dist/types/src/components/Participant/Participant.d.ts +0 -6
  467. package/dist/types/src/components/Participant/Participant.d.ts.map +0 -1
  468. package/dist/types/src/components/Participant/ParticipantGrid.d.ts +0 -11
  469. package/dist/types/src/components/Participant/ParticipantGrid.d.ts.map +0 -1
  470. package/dist/types/src/components/Participant/index.d.ts +0 -3
  471. package/dist/types/src/components/Participant/index.d.ts.map +0 -1
  472. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.d.ts +0 -12
  473. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.d.ts.map +0 -1
  474. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts +0 -162
  475. package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +0 -1
  476. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.d.ts +0 -32
  477. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.d.ts.map +0 -1
  478. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +0 -176
  479. package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +0 -1
  480. package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.d.ts +0 -21
  481. package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.d.ts.map +0 -1
  482. package/dist/types/src/components/ResponsiveGrid/index.d.ts +0 -4
  483. package/dist/types/src/components/ResponsiveGrid/index.d.ts.map +0 -1
  484. package/dist/types/src/components/ThreadCompanion.d.ts +0 -5
  485. package/dist/types/src/components/ThreadCompanion.d.ts.map +0 -1
  486. package/dist/types/src/components/ThreadSettings.d.ts +0 -6
  487. package/dist/types/src/components/ThreadSettings.d.ts.map +0 -1
  488. package/dist/types/src/components/command-extension.d.ts.map +0 -1
  489. package/dist/types/src/components/testing.d.ts.map +0 -1
  490. package/dist/types/src/functions/create-proposals.d.ts +0 -6
  491. package/dist/types/src/functions/create-proposals.d.ts.map +0 -1
  492. package/dist/types/src/functions/index.d.ts +0 -2
  493. package/dist/types/src/functions/index.d.ts.map +0 -1
  494. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts +0 -2
  495. package/dist/types/src/hooks/useBlackCanvasStreamTrack.d.ts.map +0 -1
  496. package/dist/types/src/hooks/useDebugMode.d.ts +0 -2
  497. package/dist/types/src/hooks/useDebugMode.d.ts.map +0 -1
  498. package/dist/types/src/hooks/useInaudibleAudioStreamTrack.d.ts +0 -2
  499. package/dist/types/src/hooks/useInaudibleAudioStreamTrack.d.ts.map +0 -1
  500. package/dist/types/src/hooks/useVideoStreamTrack.d.ts +0 -3
  501. package/dist/types/src/hooks/useVideoStreamTrack.d.ts.map +0 -1
  502. package/dist/types/src/testing/stories.d.ts +0 -2
  503. package/dist/types/src/testing/stories.d.ts.map +0 -1
  504. package/dist/types/src/types/Channel.d.ts +0 -16
  505. package/dist/types/src/types/Channel.d.ts.map +0 -1
  506. package/dist/types/src/types/Thread.d.ts +0 -167
  507. package/dist/types/src/types/Thread.d.ts.map +0 -1
  508. package/src/calls/call-manager.ts +0 -246
  509. package/src/calls/call-swarm-synchronizer.ts +0 -350
  510. package/src/calls/index.ts +0 -10
  511. package/src/calls/media-manager.ts +0 -378
  512. package/src/calls/speaking-monitor.ts +0 -85
  513. package/src/calls/types.ts +0 -74
  514. package/src/calls/util/audio.ts +0 -58
  515. package/src/calls/util/calls-service.ts +0 -581
  516. package/src/calls/util/history-cache.ts +0 -27
  517. package/src/calls/util/index.ts +0 -8
  518. package/src/calls/util/media.ts +0 -52
  519. package/src/calls/util/stub-media-streams.ts +0 -127
  520. package/src/calls/util/task-scheduling.ts +0 -92
  521. package/src/calls-service.stories.tsx +0 -229
  522. package/src/capabilities/call-manager.ts +0 -20
  523. package/src/capabilities/capabilities.ts +0 -33
  524. package/src/capabilities/intent-resolver.ts +0 -311
  525. package/src/capabilities/react-root.tsx +0 -17
  526. package/src/components/Call/Call.tsx +0 -89
  527. package/src/components/Call/Toolbar.tsx +0 -182
  528. package/src/components/Call/index.ts +0 -6
  529. package/src/components/CallDebugPanel.tsx +0 -172
  530. package/src/components/CallSidebar.tsx +0 -18
  531. package/src/components/ChannelContainer.stories.tsx +0 -59
  532. package/src/components/ChannelContainer.tsx +0 -205
  533. package/src/components/ChatContainer.tsx +0 -154
  534. package/src/components/Comments.stories.tsx +0 -91
  535. package/src/components/Lobby/Lobby.tsx +0 -119
  536. package/src/components/Lobby/index.ts +0 -5
  537. package/src/components/Media/AudioStream.tsx +0 -67
  538. package/src/components/Media/VideoObject.stories.tsx +0 -60
  539. package/src/components/Media/VideoObject.tsx +0 -58
  540. package/src/components/Media/index.ts +0 -6
  541. package/src/components/Participant/Participant.tsx +0 -63
  542. package/src/components/Participant/ParticipantGrid.tsx +0 -89
  543. package/src/components/Participant/index.ts +0 -6
  544. package/src/components/ResponsiveGrid/ResponsiveContainer.stories.tsx +0 -54
  545. package/src/components/ResponsiveGrid/ResponsiveContainer.tsx +0 -31
  546. package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +0 -158
  547. package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +0 -341
  548. package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +0 -134
  549. package/src/components/ResponsiveGrid/index.ts +0 -7
  550. package/src/components/ThreadCompanion.tsx +0 -188
  551. package/src/components/ThreadSettings.tsx +0 -16
  552. package/src/functions/create-proposals.ts +0 -58
  553. package/src/functions/index.ts +0 -5
  554. package/src/hooks/useBlackCanvasStreamTrack.tsx +0 -27
  555. package/src/hooks/useDebugMode.ts +0 -25
  556. package/src/hooks/useInaudibleAudioStreamTrack.tsx +0 -27
  557. package/src/hooks/useVideoStreamTrack.tsx +0 -36
  558. package/src/testing/stories.ts +0 -51
  559. package/src/types/Channel.ts +0 -27
  560. package/src/types/Thread.ts +0 -26
  561. package/src/typings/peermetrics-webrtc-stats.d.ts +0 -46
  562. package/src/typings.d.ts +0 -8
  563. /package/dist/lib/{browser/ChannelContainer-MX5ABVGC.mjs.map → neutral/ChannelChat-6YTD5HWL.mjs.map} +0 -0
  564. /package/dist/lib/{browser/types → neutral/blueprints}/index.mjs.map +0 -0
  565. /package/dist/lib/{browser/ChatContainer-7F5Y6GXJ.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  566. /package/dist/lib/{node-esm/types → neutral/hooks}/index.mjs.map +0 -0
  567. /package/dist/lib/{node-esm/ChannelContainer-2JJJ3IDK.mjs.map → neutral/index.mjs.map} +0 -0
  568. /package/dist/lib/{node-esm/ChatContainer-C526R4DI.mjs.map → neutral/meta.mjs.map} +0 -0
@@ -2,105 +2,7 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import * as Schema from 'effect/Schema';
6
-
7
- import { Type } from '@dxos/echo';
8
- import { EchoObjectSchema, SpaceSchema } from '@dxos/react-client/echo';
9
- import { Collection } from '@dxos/schema';
10
- import { Actor, AnchoredTo, Message } from '@dxos/types';
11
-
12
- import { meta } from '../meta';
13
-
14
- import * as Channel from './Channel';
15
- import * as Thread from './Thread';
16
-
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
- }) {}
25
-
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
- }) {}
35
-
36
- export class CreateChannelThread extends Schema.TaggedClass<CreateChannelThread>()(
37
- `${meta.id}/action/create-channel-thread`,
38
- {
39
- input: Schema.Struct({
40
- channel: Channel.Channel,
41
- }),
42
- output: Schema.Struct({
43
- object: Thread.Thread,
44
- }),
45
- },
46
- ) {}
47
-
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
-
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
- }) {}
72
-
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),
97
- }),
98
- output: Schema.Void,
99
- }) {}
100
- }
101
-
102
- export const ThreadSettingsSchema = Schema.mutable(Schema.Struct({}));
103
- export type ThreadSettingsProps = Schema.Schema.Type<typeof ThreadSettingsSchema>;
5
+ import { AnchoredTo, Thread } from '@dxos/types';
104
6
 
105
7
  export interface ThreadModel {
106
8
  root: Thread.Thread;
@@ -114,6 +16,7 @@ export type ThreadState = {
114
16
  /** Object toolbar state. */
115
17
  toolbar: Record<string, boolean>;
116
18
  /** In-memory draft threads. */
19
+ // TODO(burdon): Drafts are getting lost.
117
20
  drafts: Record<string, AnchoredTo.AnchoredTo[]>;
118
21
  current?: string | undefined;
119
22
  };
package/src/util.ts CHANGED
@@ -5,22 +5,54 @@
5
5
  import * as Match from 'effect/Match';
6
6
 
7
7
  import { generateName } from '@dxos/display-name';
8
- import { type Selection } from '@dxos/plugin-attention';
9
8
  import { type PublicKey } from '@dxos/react-client';
10
9
  import { type Identity } from '@dxos/react-client/halo';
10
+ import { type Selection } from '@dxos/react-ui-attention';
11
11
  import { type MessageMetadata } from '@dxos/react-ui-thread';
12
- import { hexToFallback } from '@dxos/util';
12
+ import { hexToFallback, toFallback } from '@dxos/util';
13
13
 
14
14
  export type MessagePropertiesProvider = (identityKey: PublicKey | undefined) => MessageMetadata;
15
15
 
16
- export const getMessageMetadata = (id: string, identity?: Identity): MessageMetadata => {
17
- const fallback = hexToFallback(identity?.identityKey.toHex() ?? '0');
16
+ /**
17
+ * Stable hash for an arbitrary string — used as the avatar-fallback seed for
18
+ * external senders who have no DXOS identity (e.g. Slack/Discord-synced
19
+ * messages). djb2-ish, only stability matters.
20
+ *
21
+ * Coerced to unsigned 32-bit via `>>> 0` because `toFallback` does a plain
22
+ * modulo against `idEmoji.length * idHue.length` and JavaScript's `%`
23
+ * preserves the sign of the dividend — a negative hash would index
24
+ * `idEmoji[-x]` and `idHue[-x]` to `undefined`, causing the avatar to fall
25
+ * through to `Avatar.Content`'s default red/ghost.
26
+ */
27
+ const hashString = (s: string): number => {
28
+ let h = 0;
29
+ for (let i = 0; i < s.length; i++) {
30
+ h = (h * 31 + s.charCodeAt(i)) | 0;
31
+ }
32
+ return h >>> 0;
33
+ };
34
+
35
+ export const getMessageMetadata = (
36
+ id: string,
37
+ identity?: Identity,
38
+ /**
39
+ * Externally-sourced sender info (Slack/Discord/etc). Used only when no
40
+ * matching DXOS `identity` is available — provides `name`/`email` for the
41
+ * author label and a stable seed for the avatar fallback.
42
+ */
43
+ fallbackSender?: { name?: string; email?: string },
44
+ ): MessageMetadata => {
45
+ const fallback = identity?.identityKey
46
+ ? hexToFallback(identity.identityKey.toHex())
47
+ : toFallback(hashString(fallbackSender?.name ?? fallbackSender?.email ?? '0'));
18
48
  return {
19
49
  id,
20
50
  authorId: identity?.did,
21
51
  authorName:
22
52
  identity?.profile?.displayName ??
23
- (identity?.identityKey ? generateName(identity.identityKey.toHex()) : undefined),
53
+ (identity?.identityKey ? generateName(identity.identityKey.toHex()) : undefined) ??
54
+ fallbackSender?.name ??
55
+ fallbackSender?.email,
24
56
  authorAvatarProps: {
25
57
  hue: identity?.profile?.data?.hue ?? fallback.hue,
26
58
  emoji: identity?.profile?.data?.emoji ?? fallback.emoji,
@@ -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": "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",
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,104 +0,0 @@
1
- import {
2
- Thread_exports
3
- } from "./chunk-NMJEVD36.mjs";
4
- import "./chunk-K2DUJRFJ.mjs";
5
-
6
- // src/capabilities/blueprint-definition.ts
7
- import { Capabilities, contributes } from "@dxos/app-framework";
8
- import { Blueprint, Template } from "@dxos/blueprints";
9
- import { trim } from "@dxos/util";
10
-
11
- // src/functions/create-proposals.ts
12
- import * as Array from "effect/Array";
13
- import * as Effect from "effect/Effect";
14
- import * as Function from "effect/Function";
15
- import * as Schema from "effect/Schema";
16
- import { ArtifactId, computeDiffsWithCursors } from "@dxos/assistant";
17
- import { Obj, Ref, Relation } from "@dxos/echo";
18
- import { createDocAccessor } from "@dxos/echo-db";
19
- import { DatabaseService, defineFunction } from "@dxos/functions";
20
- import { DXN } from "@dxos/keys";
21
- import { Markdown } from "@dxos/plugin-markdown/types";
22
- import { AnchoredTo, Message } from "@dxos/types";
23
- var create_proposals_default = defineFunction({
24
- key: "dxos.org/function/thread/create-proposals",
25
- name: "Create Proposals",
26
- description: "Proposes a set of changes to a document.",
27
- inputSchema: Schema.Struct({
28
- id: ArtifactId,
29
- diffs: Schema.Array(Schema.String).annotations({
30
- description: "The diffs to propose for the document."
31
- })
32
- }),
33
- outputSchema: Schema.Void,
34
- handler: Effect.fn(function* ({ data: { id, diffs: _diffs } }) {
35
- const object = yield* DatabaseService.resolve(DXN.parse(id), Markdown.Document);
36
- const content = yield* Effect.promise(() => object.content.load());
37
- const accessor = createDocAccessor(content, [
38
- "content"
39
- ]);
40
- yield* Function.pipe(computeDiffsWithCursors(accessor, _diffs), Array.map(Effect.fnUntraced(function* ({ cursor, text }) {
41
- const proposal = Obj.make(Message.Message, {
42
- created: (/* @__PURE__ */ new Date()).toISOString(),
43
- sender: {
44
- role: "assistant"
45
- },
46
- blocks: [
47
- {
48
- _tag: "proposal",
49
- text
50
- }
51
- ]
52
- });
53
- const thread = Thread_exports.make({
54
- name: "Proposal",
55
- messages: [
56
- Ref.make(proposal)
57
- ],
58
- status: "active"
59
- });
60
- const relation = Relation.make(AnchoredTo.AnchoredTo, {
61
- [Relation.Source]: thread,
62
- [Relation.Target]: object,
63
- anchor: cursor
64
- });
65
- yield* DatabaseService.add(thread);
66
- yield* DatabaseService.add(relation);
67
- })), Effect.allWith({
68
- concurrency: "unbounded"
69
- }));
70
- })
71
- });
72
-
73
- // src/capabilities/blueprint-definition.ts
74
- var functions = [
75
- create_proposals_default
76
- ];
77
- var ASSISTANT_BLUEPRINT_KEY = "dxos.org/blueprint/thread";
78
- var blueprint_definition_default = (() => [
79
- contributes(Capabilities.Functions, functions),
80
- contributes(Capabilities.BlueprintDefinition, Blueprint.make({
81
- key: ASSISTANT_BLUEPRINT_KEY,
82
- name: "Thread",
83
- tools: Blueprint.toolDefinitions({
84
- functions
85
- }),
86
- instructions: Template.make({
87
- // TODO(wittjosiah): Move example to function input schema annotation.
88
- source: trim`
89
- You can update markdown documents via proposals.
90
- For each diff, respond with the smallest possible matching span.
91
- For example:
92
- - "There is a tyop in this sentence."
93
- + "There is a typo in this sentence."
94
- - "This id goof."
95
- + "This is good."
96
- `
97
- })
98
- }))
99
- ]);
100
- export {
101
- ASSISTANT_BLUEPRINT_KEY,
102
- blueprint_definition_default as default
103
- };
104
- //# sourceMappingURL=blueprint-definition-6BKYTMJS.mjs.map
@@ -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
- }