@dxos/plugin-assistant 0.8.4-main.67995b8 → 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 (521) hide show
  1. package/dist/lib/browser/{BlueprintContainer-IZ4AK5EO.mjs → BlueprintContainer-TO35YXHT.mjs} +4 -3
  2. package/dist/lib/browser/ChatCompanion-ZIKNUUSU.mjs +127 -0
  3. package/dist/lib/browser/ChatCompanion-ZIKNUUSU.mjs.map +7 -0
  4. package/dist/lib/browser/{ChatContainer-RP3QEXYX.mjs → ChatContainer-MA5BVDGH.mjs} +33 -14
  5. package/dist/lib/browser/ChatContainer-MA5BVDGH.mjs.map +7 -0
  6. package/dist/lib/browser/{ChatDialog-ZVLXFHEY.mjs → ChatDialog-7OXLIWZI.mjs} +26 -12
  7. package/dist/lib/browser/ChatDialog-7OXLIWZI.mjs.map +7 -0
  8. package/dist/lib/browser/{SequenceContainer-3UDVKWPA.mjs → SequenceContainer-2FEWMQGW.mjs} +7 -19
  9. package/dist/lib/browser/SequenceContainer-2FEWMQGW.mjs.map +7 -0
  10. package/dist/lib/browser/ai-service-ERTZBTP3.mjs +19 -0
  11. package/dist/lib/browser/ai-service-ERTZBTP3.mjs.map +7 -0
  12. package/dist/lib/browser/{app-graph-builder-XSEOKJLG.mjs → app-graph-builder-VKFRYY2N.mjs} +31 -41
  13. package/dist/lib/browser/app-graph-builder-VKFRYY2N.mjs.map +7 -0
  14. package/dist/lib/browser/blueprint-definition-NSJARW5U.mjs +12 -0
  15. package/dist/lib/browser/blueprint-definition-NSJARW5U.mjs.map +7 -0
  16. package/dist/lib/browser/chunk-2CE2KPKZ.mjs +175 -0
  17. package/dist/lib/browser/chunk-2CE2KPKZ.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-43I2LR6O.mjs +216 -0
  19. package/dist/lib/browser/chunk-43I2LR6O.mjs.map +7 -0
  20. package/dist/lib/browser/chunk-5EGXHCAZ.mjs +16 -0
  21. package/dist/lib/browser/chunk-5EGXHCAZ.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-5RICKAMN.mjs +18 -0
  23. package/dist/lib/browser/chunk-5RICKAMN.mjs.map +7 -0
  24. package/dist/lib/browser/chunk-B2RCJXEO.mjs +202 -0
  25. package/dist/lib/browser/chunk-B2RCJXEO.mjs.map +7 -0
  26. package/dist/lib/browser/chunk-BRJMNZOS.mjs +169 -0
  27. package/dist/lib/browser/chunk-BRJMNZOS.mjs.map +7 -0
  28. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  29. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
  30. package/dist/lib/browser/chunk-P5P7QXBS.mjs +296 -0
  31. package/dist/lib/browser/chunk-P5P7QXBS.mjs.map +7 -0
  32. package/dist/lib/browser/chunk-UDH4MR7H.mjs +1744 -0
  33. package/dist/lib/browser/chunk-UDH4MR7H.mjs.map +7 -0
  34. package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs +18 -0
  35. package/dist/lib/browser/edge-model-resolver-O6OFYIO2.mjs.map +7 -0
  36. package/dist/lib/browser/index.mjs +144 -63
  37. package/dist/lib/browser/index.mjs.map +3 -3
  38. package/dist/lib/browser/intent-resolver-5LB25ZRN.mjs +112 -0
  39. package/dist/lib/browser/intent-resolver-5LB25ZRN.mjs.map +7 -0
  40. package/dist/lib/browser/local-model-resolver-GO6ZEMLL.mjs +17 -0
  41. package/dist/lib/browser/local-model-resolver-GO6ZEMLL.mjs.map +7 -0
  42. package/dist/lib/browser/meta.json +1 -1
  43. package/dist/lib/browser/react-surface-WQZXU624.mjs +107 -0
  44. package/dist/lib/browser/react-surface-WQZXU624.mjs.map +7 -0
  45. package/dist/lib/browser/{settings-5GTTCVGD.mjs → settings-4B2NA4CE.mjs} +8 -7
  46. package/dist/lib/{node-esm/settings-J2EXEM5H.mjs.map → browser/settings-4B2NA4CE.mjs.map} +1 -1
  47. package/dist/lib/browser/state-LXTS54DI.mjs +21 -0
  48. package/dist/lib/browser/state-LXTS54DI.mjs.map +7 -0
  49. package/dist/lib/browser/toolkit-NQ2GXCF5.mjs +199 -0
  50. package/dist/lib/browser/toolkit-NQ2GXCF5.mjs.map +7 -0
  51. package/dist/lib/browser/types/index.mjs +7 -4
  52. package/dist/lib/node-esm/{BlueprintContainer-RGTMNLNX.mjs → BlueprintContainer-J664LTU3.mjs} +4 -3
  53. package/dist/lib/{browser/BlueprintContainer-IZ4AK5EO.mjs.map → node-esm/BlueprintContainer-J664LTU3.mjs.map} +1 -1
  54. package/dist/lib/node-esm/ChatCompanion-YDXJIVCF.mjs +128 -0
  55. package/dist/lib/node-esm/ChatCompanion-YDXJIVCF.mjs.map +7 -0
  56. package/dist/lib/node-esm/{ChatContainer-W3W6FWV3.mjs → ChatContainer-WLTOQLHH.mjs} +33 -14
  57. package/dist/lib/node-esm/ChatContainer-WLTOQLHH.mjs.map +7 -0
  58. package/dist/lib/node-esm/{ChatDialog-QW4JRKVO.mjs → ChatDialog-ADKF62SY.mjs} +26 -12
  59. package/dist/lib/node-esm/ChatDialog-ADKF62SY.mjs.map +7 -0
  60. package/dist/lib/node-esm/{SequenceContainer-RQQH5XOC.mjs → SequenceContainer-PGGJUQ46.mjs} +7 -19
  61. package/dist/lib/node-esm/SequenceContainer-PGGJUQ46.mjs.map +7 -0
  62. package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs +20 -0
  63. package/dist/lib/node-esm/ai-service-MUYLV3NT.mjs.map +7 -0
  64. package/dist/lib/node-esm/{app-graph-builder-PANCJUHV.mjs → app-graph-builder-K6AYO4YM.mjs} +31 -41
  65. package/dist/lib/node-esm/app-graph-builder-K6AYO4YM.mjs.map +7 -0
  66. package/dist/lib/node-esm/blueprint-definition-WD2IVMAI.mjs +13 -0
  67. package/dist/lib/node-esm/blueprint-definition-WD2IVMAI.mjs.map +7 -0
  68. package/dist/lib/node-esm/chunk-73ABYRYX.mjs +20 -0
  69. package/dist/lib/node-esm/chunk-73ABYRYX.mjs.map +7 -0
  70. package/dist/lib/node-esm/chunk-DBDKOC3I.mjs +203 -0
  71. package/dist/lib/node-esm/chunk-DBDKOC3I.mjs.map +7 -0
  72. package/dist/lib/node-esm/chunk-DSE2IILK.mjs +217 -0
  73. package/dist/lib/node-esm/chunk-DSE2IILK.mjs.map +7 -0
  74. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  75. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  76. package/dist/lib/node-esm/chunk-I7BZMIAG.mjs +170 -0
  77. package/dist/lib/node-esm/chunk-I7BZMIAG.mjs.map +7 -0
  78. package/dist/lib/node-esm/chunk-TBQOICXZ.mjs +297 -0
  79. package/dist/lib/node-esm/chunk-TBQOICXZ.mjs.map +7 -0
  80. package/dist/lib/node-esm/chunk-U2NYUS2N.mjs +177 -0
  81. package/dist/lib/node-esm/chunk-U2NYUS2N.mjs.map +7 -0
  82. package/dist/lib/node-esm/chunk-UPPSDTOJ.mjs +1745 -0
  83. package/dist/lib/node-esm/chunk-UPPSDTOJ.mjs.map +7 -0
  84. package/dist/lib/node-esm/chunk-XQGWSZ4T.mjs +17 -0
  85. package/dist/lib/node-esm/chunk-XQGWSZ4T.mjs.map +7 -0
  86. package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs +19 -0
  87. package/dist/lib/node-esm/edge-model-resolver-2ARXDOYS.mjs.map +7 -0
  88. package/dist/lib/node-esm/index.mjs +144 -63
  89. package/dist/lib/node-esm/index.mjs.map +3 -3
  90. package/dist/lib/node-esm/intent-resolver-I64MNI4C.mjs +113 -0
  91. package/dist/lib/node-esm/intent-resolver-I64MNI4C.mjs.map +7 -0
  92. package/dist/lib/node-esm/local-model-resolver-WOQ2D2R2.mjs +18 -0
  93. package/dist/lib/node-esm/local-model-resolver-WOQ2D2R2.mjs.map +7 -0
  94. package/dist/lib/node-esm/meta.json +1 -1
  95. package/dist/lib/node-esm/{react-surface-QDQWJ7FZ.mjs → react-surface-TVVVRIR3.mjs} +25 -68
  96. package/dist/lib/node-esm/react-surface-TVVVRIR3.mjs.map +7 -0
  97. package/dist/lib/node-esm/{settings-J2EXEM5H.mjs → settings-7Y3CRASE.mjs} +8 -7
  98. package/dist/lib/{browser/settings-5GTTCVGD.mjs.map → node-esm/settings-7Y3CRASE.mjs.map} +1 -1
  99. package/dist/lib/node-esm/state-BO6GUFLB.mjs +22 -0
  100. package/dist/lib/node-esm/state-BO6GUFLB.mjs.map +7 -0
  101. package/dist/lib/node-esm/toolkit-V57PRJNG.mjs +200 -0
  102. package/dist/lib/node-esm/toolkit-V57PRJNG.mjs.map +7 -0
  103. package/dist/lib/node-esm/types/index.mjs +7 -4
  104. package/dist/types/src/AssistantPlugin.d.ts +1 -1
  105. package/dist/types/src/AssistantPlugin.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/ai-service.d.ts +4 -0
  107. package/dist/types/src/capabilities/ai-service.d.ts.map +1 -0
  108. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  109. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/blueprint-definition.d.ts +7 -0
  111. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/capabilities.d.ts +11 -0
  113. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/edge-model-resolver.d.ts +4 -0
  115. package/dist/types/src/capabilities/edge-model-resolver.d.ts.map +1 -0
  116. package/dist/types/src/capabilities/index.d.ts +11 -3
  117. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  118. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  119. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  120. package/dist/types/src/capabilities/local-model-resolver.d.ts +10 -0
  121. package/dist/types/src/capabilities/local-model-resolver.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  123. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  124. package/dist/types/src/capabilities/settings.d.ts +1 -1
  125. package/dist/types/src/capabilities/state.d.ts +4 -0
  126. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  127. package/dist/types/src/capabilities/toolkit.d.ts +4 -0
  128. package/dist/types/src/capabilities/toolkit.d.ts.map +1 -0
  129. package/dist/types/src/components/AssistantSettings/AssistantSettings.d.ts.map +1 -1
  130. package/dist/types/src/components/Chat/Chat.d.ts +20 -17
  131. package/dist/types/src/components/Chat/Chat.d.ts.map +1 -1
  132. package/dist/types/src/components/Chat/events.d.ts +5 -0
  133. package/dist/types/src/components/Chat/events.d.ts.map +1 -1
  134. package/dist/types/src/components/ChatCompanion.d.ts +13 -0
  135. package/dist/types/src/components/ChatCompanion.d.ts.map +1 -0
  136. package/dist/types/src/components/ChatContainer.d.ts +4 -4
  137. package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
  138. package/dist/types/src/components/ChatDialog.d.ts.map +1 -1
  139. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts +7 -0
  140. package/dist/types/src/components/ChatProgress/ChatProgress.d.ts.map +1 -0
  141. package/dist/types/src/components/ChatProgress/index.d.ts +2 -0
  142. package/dist/types/src/components/ChatProgress/index.d.ts.map +1 -0
  143. package/dist/types/src/components/ChatPrompt/ChatActions.d.ts.map +1 -1
  144. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts +20 -0
  145. package/dist/types/src/components/ChatPrompt/ChatOptions.d.ts.map +1 -0
  146. package/dist/types/src/components/ChatPrompt/ChatPresets.d.ts.map +1 -1
  147. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts +4 -5
  148. package/dist/types/src/components/ChatPrompt/ChatReferences.d.ts.map +1 -1
  149. package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts +6 -4
  150. package/dist/types/src/components/ChatPrompt/ChatStatusIndicator.d.ts.map +1 -1
  151. package/dist/types/src/components/ChatPrompt/index.d.ts +1 -1
  152. package/dist/types/src/components/ChatPrompt/index.d.ts.map +1 -1
  153. package/dist/types/src/components/ChatThread/ChatThread.d.ts +10 -7
  154. package/dist/types/src/components/ChatThread/ChatThread.d.ts.map +1 -1
  155. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts +115 -33
  156. package/dist/types/src/components/ChatThread/ChatThread.stories.d.ts.map +1 -1
  157. package/dist/types/src/components/ChatThread/Link.d.ts +9 -0
  158. package/dist/types/src/components/ChatThread/Link.d.ts.map +1 -0
  159. package/dist/types/src/components/ChatThread/reducers.d.ts +40 -0
  160. package/dist/types/src/components/ChatThread/reducers.d.ts.map +1 -0
  161. package/dist/types/src/components/ChatThread/registry.d.ts +11 -0
  162. package/dist/types/src/components/ChatThread/registry.d.ts.map +1 -0
  163. package/dist/types/src/components/ChatThread/sync.d.ts +36 -0
  164. package/dist/types/src/components/ChatThread/sync.d.ts.map +1 -0
  165. package/dist/types/src/components/ChatThread/sync.test.d.ts +2 -0
  166. package/dist/types/src/components/ChatThread/sync.test.d.ts.map +1 -0
  167. package/dist/types/src/components/PromptSettings.d.ts.map +1 -1
  168. package/dist/types/src/components/SequenceContainer.d.ts.map +1 -1
  169. package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts +1 -1
  170. package/dist/types/src/components/SequenceEditor/SequenceEditor.d.ts.map +1 -1
  171. package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts +264 -3
  172. package/dist/types/src/components/SequenceEditor/SequenceEditor.stories.d.ts.map +1 -1
  173. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts +0 -5
  174. package/dist/types/src/components/TemplateEditor/TemplateEditor.d.ts.map +1 -1
  175. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts +262 -7
  176. package/dist/types/src/components/TemplateEditor/TemplateEditor.stories.d.ts.map +1 -1
  177. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts +1 -1
  178. package/dist/types/src/components/TemplateEditor/TemplateForm.d.ts.map +1 -1
  179. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts +259 -2
  180. package/dist/types/src/components/TemplateEditor/TemplateForm.stories.d.ts.map +1 -1
  181. package/dist/types/src/components/TemplateEditor/handlebars-extension.d.ts +12 -0
  182. package/dist/types/src/components/TemplateEditor/handlebars-extension.d.ts.map +1 -0
  183. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts +19 -0
  184. package/dist/types/src/components/ToolBlock/ToolBlock.d.ts.map +1 -0
  185. package/dist/types/src/components/ToolBlock/ToolBlockWidget.d.ts +2 -0
  186. package/dist/types/src/components/ToolBlock/ToolBlockWidget.d.ts.map +1 -0
  187. package/dist/types/src/components/ToolBlock/index.d.ts +3 -0
  188. package/dist/types/src/components/ToolBlock/index.d.ts.map +1 -0
  189. package/dist/types/src/components/Toolbar/Toolbar.d.ts +5 -0
  190. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -0
  191. package/dist/types/src/components/Toolbar/index.d.ts +2 -0
  192. package/dist/types/src/components/Toolbar/index.d.ts.map +1 -0
  193. package/dist/types/src/components/Toolbar/useChatToolbarActions.d.ts +11 -0
  194. package/dist/types/src/components/Toolbar/useChatToolbarActions.d.ts.map +1 -0
  195. package/dist/types/src/components/Toolbox/Toolbox.d.ts +4 -9
  196. package/dist/types/src/components/Toolbox/Toolbox.d.ts.map +1 -1
  197. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts +262 -5
  198. package/dist/types/src/components/Toolbox/Toolbox.stories.d.ts.map +1 -1
  199. package/dist/types/src/components/index.d.ts +4 -1
  200. package/dist/types/src/components/index.d.ts.map +1 -1
  201. package/dist/types/src/events.d.ts +1 -1
  202. package/dist/types/src/events.d.ts.map +1 -1
  203. package/dist/types/src/functions/analysis.d.ts +5 -0
  204. package/dist/types/src/functions/analysis.d.ts.map +1 -0
  205. package/dist/types/src/functions/index.d.ts +4 -0
  206. package/dist/types/src/functions/index.d.ts.map +1 -0
  207. package/dist/types/src/functions/list.d.ts +10 -0
  208. package/dist/types/src/functions/list.d.ts.map +1 -0
  209. package/dist/types/src/functions/load.d.ts +8 -0
  210. package/dist/types/src/functions/load.d.ts.map +1 -0
  211. package/dist/types/src/hooks/index.d.ts +7 -3
  212. package/dist/types/src/hooks/index.d.ts.map +1 -1
  213. package/dist/types/src/hooks/useBlueprintRegistry.d.ts +25 -0
  214. package/dist/types/src/hooks/useBlueprintRegistry.d.ts.map +1 -0
  215. package/dist/types/src/hooks/useChatProcessor.d.ts +8 -21
  216. package/dist/types/src/hooks/useChatProcessor.d.ts.map +1 -1
  217. package/dist/types/src/hooks/useChatServices.d.ts +5 -6
  218. package/dist/types/src/hooks/useChatServices.d.ts.map +1 -1
  219. package/dist/types/src/hooks/useContextBinder.d.ts +4 -0
  220. package/dist/types/src/hooks/useContextBinder.d.ts.map +1 -0
  221. package/dist/types/src/hooks/useContextObjects.d.ts +15 -0
  222. package/dist/types/src/hooks/useContextObjects.d.ts.map +1 -0
  223. package/dist/types/src/hooks/useFlush.d.ts +6 -0
  224. package/dist/types/src/hooks/useFlush.d.ts.map +1 -0
  225. package/dist/types/src/hooks/useItemTypes.d.ts +4 -0
  226. package/dist/types/src/hooks/useItemTypes.d.ts.map +1 -0
  227. package/dist/types/src/hooks/useOnline.d.ts +3 -0
  228. package/dist/types/src/hooks/useOnline.d.ts.map +1 -0
  229. package/dist/types/src/hooks/usePresets.d.ts +7 -0
  230. package/dist/types/src/hooks/usePresets.d.ts.map +1 -0
  231. package/dist/types/src/hooks/useReferencesProvider.d.ts.map +1 -1
  232. package/dist/types/src/meta.d.ts +1 -2
  233. package/dist/types/src/meta.d.ts.map +1 -1
  234. package/dist/types/src/processor/index.d.ts +3 -0
  235. package/dist/types/src/processor/index.d.ts.map +1 -0
  236. package/dist/types/src/{hooks → processor}/presets.d.ts +3 -3
  237. package/dist/types/src/processor/presets.d.ts.map +1 -0
  238. package/dist/types/src/processor/processor.d.ts +74 -0
  239. package/dist/types/src/processor/processor.d.ts.map +1 -0
  240. package/dist/types/src/processor/processor.test.d.ts +2 -0
  241. package/dist/types/src/processor/processor.test.d.ts.map +1 -0
  242. package/dist/types/src/stories/Chat.stories.d.ts +28 -203
  243. package/dist/types/src/stories/Chat.stories.d.ts.map +1 -1
  244. package/dist/types/src/stories/QueryEditor.stories.d.ts +7 -0
  245. package/dist/types/src/stories/QueryEditor.stories.d.ts.map +1 -0
  246. package/dist/types/src/stories/components/BlueprintContainer.d.ts +4 -0
  247. package/dist/types/src/stories/components/BlueprintContainer.d.ts.map +1 -0
  248. package/dist/types/src/stories/components/ChatContainer.d.ts +4 -0
  249. package/dist/types/src/stories/components/ChatContainer.d.ts.map +1 -0
  250. package/dist/types/src/stories/components/ChessContainer.d.ts +4 -0
  251. package/dist/types/src/stories/components/ChessContainer.d.ts.map +1 -0
  252. package/dist/types/src/stories/components/CommentsContainer.d.ts +4 -0
  253. package/dist/types/src/stories/components/CommentsContainer.d.ts.map +1 -0
  254. package/dist/types/src/stories/components/DebugCard.d.ts +8 -0
  255. package/dist/types/src/stories/components/DebugCard.d.ts.map +1 -0
  256. package/dist/types/src/stories/components/ExecutionGraphContainer.d.ts +7 -0
  257. package/dist/types/src/stories/components/ExecutionGraphContainer.d.ts.map +1 -0
  258. package/dist/types/src/stories/components/GraphContainer.d.ts +6 -0
  259. package/dist/types/src/stories/components/GraphContainer.d.ts.map +1 -0
  260. package/dist/types/src/stories/components/InvocationsContainer.d.ts +4 -0
  261. package/dist/types/src/stories/components/InvocationsContainer.d.ts.map +1 -0
  262. package/dist/types/src/stories/components/MessageContainer.d.ts +4 -0
  263. package/dist/types/src/stories/components/MessageContainer.d.ts.map +1 -0
  264. package/dist/types/src/stories/components/ProjectContainer.d.ts +4 -0
  265. package/dist/types/src/stories/components/ProjectContainer.d.ts.map +1 -0
  266. package/dist/types/src/stories/components/PromptContainer.d.ts +6 -0
  267. package/dist/types/src/stories/components/PromptContainer.d.ts.map +1 -0
  268. package/dist/types/src/stories/components/ResearchInputStack.d.ts +4 -0
  269. package/dist/types/src/stories/components/ResearchInputStack.d.ts.map +1 -0
  270. package/dist/types/src/stories/components/ResearchOutputStack.d.ts +4 -0
  271. package/dist/types/src/stories/components/ResearchOutputStack.d.ts.map +1 -0
  272. package/dist/types/src/stories/components/ScriptContainer.d.ts +4 -0
  273. package/dist/types/src/stories/components/ScriptContainer.d.ts.map +1 -0
  274. package/dist/types/src/stories/components/TasksContainer.d.ts +4 -0
  275. package/dist/types/src/stories/components/TasksContainer.d.ts.map +1 -0
  276. package/dist/types/src/stories/components/TokenManagerContainer.d.ts +3 -0
  277. package/dist/types/src/stories/components/TokenManagerContainer.d.ts.map +1 -0
  278. package/dist/types/src/stories/components/TriggersContainer.d.ts +3 -0
  279. package/dist/types/src/stories/components/TriggersContainer.d.ts.map +1 -0
  280. package/dist/types/src/stories/components/index.d.ts +18 -0
  281. package/dist/types/src/stories/components/index.d.ts.map +1 -0
  282. package/dist/types/src/stories/components/types.d.ts +7 -0
  283. package/dist/types/src/stories/components/types.d.ts.map +1 -0
  284. package/dist/types/src/stories/testing/data.d.ts +9 -0
  285. package/dist/types/src/stories/testing/data.d.ts.map +1 -0
  286. package/dist/types/src/stories/testing/index.d.ts +3 -0
  287. package/dist/types/src/stories/testing/index.d.ts.map +1 -0
  288. package/dist/types/src/stories/testing/schema.d.ts +7 -0
  289. package/dist/types/src/stories/testing/schema.d.ts.map +1 -0
  290. package/dist/types/src/stories/testing/testing.d.ts +51 -0
  291. package/dist/types/src/stories/testing/testing.d.ts.map +1 -0
  292. package/dist/types/src/testing/index.d.ts +3 -1
  293. package/dist/types/src/testing/index.d.ts.map +1 -1
  294. package/dist/types/src/testing/test-data.d.ts +14 -0
  295. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  296. package/dist/types/src/testing/test-functions.d.ts +5 -2
  297. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  298. package/dist/types/src/testing/test-generator.d.ts +7 -0
  299. package/dist/types/src/testing/test-generator.d.ts.map +1 -0
  300. package/dist/types/src/testing/test-sequence.d.ts +0 -4
  301. package/dist/types/src/testing/test-sequence.d.ts.map +1 -1
  302. package/dist/types/src/translations.d.ts +28 -12
  303. package/dist/types/src/translations.d.ts.map +1 -1
  304. package/dist/types/src/types/Assistant.d.ts +42 -0
  305. package/dist/types/src/types/Assistant.d.ts.map +1 -0
  306. package/dist/types/src/types/AssistantAction.d.ts +107 -0
  307. package/dist/types/src/types/AssistantAction.d.ts.map +1 -0
  308. package/dist/types/src/types/defs.d.ts +2 -0
  309. package/dist/types/src/types/defs.d.ts.map +1 -0
  310. package/dist/types/src/types/index.d.ts +3 -1
  311. package/dist/types/src/types/index.d.ts.map +1 -1
  312. package/dist/types/src/types/service.d.ts +15 -12
  313. package/dist/types/src/types/service.d.ts.map +1 -1
  314. package/dist/types/tsconfig.tsbuildinfo +1 -1
  315. package/package.json +115 -96
  316. package/src/AssistantPlugin.tsx +150 -107
  317. package/src/capabilities/ai-service.ts +27 -0
  318. package/src/capabilities/app-graph-builder.ts +45 -51
  319. package/src/capabilities/blueprint-definition.ts +64 -0
  320. package/src/capabilities/capabilities.ts +18 -0
  321. package/src/capabilities/edge-model-resolver.ts +25 -0
  322. package/src/capabilities/index.ts +9 -0
  323. package/src/capabilities/intent-resolver.ts +46 -24
  324. package/src/capabilities/local-model-resolver.ts +30 -0
  325. package/src/capabilities/react-surface.tsx +10 -57
  326. package/src/capabilities/state.ts +20 -0
  327. package/src/capabilities/toolkit.ts +168 -0
  328. package/src/components/AssistantSettings/AssistantSettings.tsx +83 -76
  329. package/src/components/Chat/Chat.tsx +180 -176
  330. package/src/components/Chat/events.ts +7 -0
  331. package/src/components/ChatCompanion.tsx +114 -0
  332. package/src/components/ChatContainer.tsx +19 -13
  333. package/src/components/ChatDialog.tsx +18 -14
  334. package/src/components/ChatProgress/ChatProgress.tsx +67 -0
  335. package/src/components/ChatProgress/index.ts +5 -0
  336. package/src/components/ChatPrompt/ChatActions.tsx +10 -24
  337. package/src/components/ChatPrompt/ChatOptions.tsx +225 -0
  338. package/src/components/ChatPrompt/ChatPresets.tsx +1 -0
  339. package/src/components/ChatPrompt/ChatReferences.tsx +31 -36
  340. package/src/components/ChatPrompt/ChatStatusIndicator.tsx +25 -22
  341. package/src/components/ChatPrompt/index.ts +1 -1
  342. package/src/components/ChatThread/ChatThread.stories.tsx +98 -112
  343. package/src/components/ChatThread/ChatThread.tsx +65 -29
  344. package/src/components/ChatThread/Link.tsx +26 -0
  345. package/src/components/ChatThread/reducers.ts +151 -0
  346. package/src/components/ChatThread/registry.tsx +184 -0
  347. package/src/components/ChatThread/sync.test.ts +81 -0
  348. package/src/components/ChatThread/sync.ts +113 -0
  349. package/src/components/PromptSettings.tsx +1 -0
  350. package/src/components/SequenceContainer.tsx +29 -30
  351. package/src/components/SequenceEditor/SequenceEditor.stories.tsx +11 -8
  352. package/src/components/SequenceEditor/SequenceEditor.tsx +3 -3
  353. package/src/components/TemplateEditor/TemplateEditor.stories.tsx +26 -15
  354. package/src/components/TemplateEditor/TemplateEditor.tsx +17 -50
  355. package/src/components/TemplateEditor/TemplateForm.stories.tsx +15 -10
  356. package/src/components/TemplateEditor/TemplateForm.tsx +4 -2
  357. package/src/components/TemplateEditor/handlebars-extension.ts +165 -0
  358. package/src/components/ToolBlock/ToolBlock.tsx +152 -0
  359. package/src/components/ToolBlock/ToolBlockWidget.tsx +5 -0
  360. package/src/components/ToolBlock/index.ts +6 -0
  361. package/src/components/Toolbar/Toolbar.tsx +21 -0
  362. package/src/components/Toolbar/index.ts +5 -0
  363. package/src/components/Toolbar/useChatToolbarActions.ts +126 -0
  364. package/src/components/Toolbox/Toolbox.stories.tsx +13 -22
  365. package/src/components/Toolbox/Toolbox.tsx +21 -51
  366. package/src/components/index.ts +3 -4
  367. package/src/events.ts +2 -2
  368. package/src/functions/analysis.ts +22 -0
  369. package/src/functions/index.ts +7 -0
  370. package/src/functions/list.ts +48 -0
  371. package/src/functions/load.ts +46 -0
  372. package/src/hooks/index.ts +7 -4
  373. package/src/hooks/useBlueprintRegistry.ts +94 -0
  374. package/src/hooks/useChatProcessor.ts +21 -98
  375. package/src/hooks/useChatServices.ts +30 -48
  376. package/src/hooks/useContextBinder.ts +18 -0
  377. package/src/hooks/useContextObjects.ts +58 -0
  378. package/src/hooks/useFlush.ts +35 -0
  379. package/src/hooks/useItemTypes.ts +37 -0
  380. package/src/hooks/useOnline.ts +10 -0
  381. package/src/hooks/usePresets.ts +44 -0
  382. package/src/hooks/useReferencesProvider.ts +11 -9
  383. package/src/meta.ts +4 -6
  384. package/src/processor/index.ts +6 -0
  385. package/src/{hooks → processor}/presets.ts +15 -7
  386. package/src/processor/processor.test.ts +81 -0
  387. package/src/processor/processor.ts +303 -0
  388. package/src/queue-logger.ts +10 -10
  389. package/src/stories/Chat.stories.tsx +816 -305
  390. package/src/stories/QueryEditor.stories.tsx +114 -0
  391. package/src/stories/components/BlueprintContainer.tsx +34 -0
  392. package/src/stories/components/ChatContainer.tsx +74 -0
  393. package/src/stories/components/ChessContainer.tsx +17 -0
  394. package/src/stories/components/CommentsContainer.tsx +25 -0
  395. package/src/stories/components/DebugCard.tsx +61 -0
  396. package/src/stories/components/ExecutionGraphContainer.tsx +30 -0
  397. package/src/stories/components/GraphContainer.tsx +106 -0
  398. package/src/stories/components/InvocationsContainer.tsx +17 -0
  399. package/src/stories/components/MessageContainer.tsx +22 -0
  400. package/src/stories/components/ProjectContainer.tsx +17 -0
  401. package/src/stories/components/PromptContainer.tsx +52 -0
  402. package/src/stories/components/ResearchInputStack.tsx +30 -0
  403. package/src/stories/components/ResearchOutputStack.tsx +29 -0
  404. package/src/stories/components/ScriptContainer.tsx +28 -0
  405. package/src/stories/components/TasksContainer.tsx +47 -0
  406. package/src/stories/components/TokenManagerContainer.tsx +14 -0
  407. package/src/stories/components/TriggersContainer.tsx +12 -0
  408. package/src/stories/components/index.ts +22 -0
  409. package/src/stories/components/types.ts +11 -0
  410. package/src/stories/testing/data.ts +135 -0
  411. package/src/stories/testing/index.ts +6 -0
  412. package/src/stories/testing/schema.ts +17 -0
  413. package/src/stories/testing/testing.tsx +291 -0
  414. package/src/testing/index.ts +3 -1
  415. package/src/testing/test-data.ts +248 -0
  416. package/src/testing/test-functions.ts +8 -3
  417. package/src/testing/test-generator.ts +261 -0
  418. package/src/testing/test-sequence.ts +2 -27
  419. package/src/translations.ts +31 -12
  420. package/src/types/Assistant.ts +61 -0
  421. package/src/types/AssistantAction.ts +62 -0
  422. package/src/types/defs.ts +5 -0
  423. package/src/types/index.ts +4 -1
  424. package/src/types/service.ts +2 -2
  425. package/src/vite-env.d.ts +30 -0
  426. package/dist/lib/browser/ChatContainer-RP3QEXYX.mjs.map +0 -7
  427. package/dist/lib/browser/ChatDialog-ZVLXFHEY.mjs.map +0 -7
  428. package/dist/lib/browser/SequenceContainer-3UDVKWPA.mjs.map +0 -7
  429. package/dist/lib/browser/app-graph-builder-XSEOKJLG.mjs.map +0 -7
  430. package/dist/lib/browser/chunk-63GG6U6D.mjs +0 -2226
  431. package/dist/lib/browser/chunk-63GG6U6D.mjs.map +0 -7
  432. package/dist/lib/browser/chunk-7W7LHTRH.mjs +0 -171
  433. package/dist/lib/browser/chunk-7W7LHTRH.mjs.map +0 -7
  434. package/dist/lib/browser/chunk-FDCJSQYF.mjs +0 -40
  435. package/dist/lib/browser/chunk-FDCJSQYF.mjs.map +0 -7
  436. package/dist/lib/browser/chunk-KFXSBNZR.mjs +0 -89
  437. package/dist/lib/browser/chunk-KFXSBNZR.mjs.map +0 -7
  438. package/dist/lib/browser/chunk-LERGF5YG.mjs +0 -108
  439. package/dist/lib/browser/chunk-LERGF5YG.mjs.map +0 -7
  440. package/dist/lib/browser/intent-resolver-MV3VSZLS.mjs +0 -75
  441. package/dist/lib/browser/intent-resolver-MV3VSZLS.mjs.map +0 -7
  442. package/dist/lib/browser/react-surface-3GYEHQRP.mjs +0 -150
  443. package/dist/lib/browser/react-surface-3GYEHQRP.mjs.map +0 -7
  444. package/dist/lib/node-esm/ChatContainer-W3W6FWV3.mjs.map +0 -7
  445. package/dist/lib/node-esm/ChatDialog-QW4JRKVO.mjs.map +0 -7
  446. package/dist/lib/node-esm/SequenceContainer-RQQH5XOC.mjs.map +0 -7
  447. package/dist/lib/node-esm/app-graph-builder-PANCJUHV.mjs.map +0 -7
  448. package/dist/lib/node-esm/chunk-BFO3KHYL.mjs +0 -2227
  449. package/dist/lib/node-esm/chunk-BFO3KHYL.mjs.map +0 -7
  450. package/dist/lib/node-esm/chunk-MS3PJARN.mjs +0 -109
  451. package/dist/lib/node-esm/chunk-MS3PJARN.mjs.map +0 -7
  452. package/dist/lib/node-esm/chunk-QN2H2EHV.mjs +0 -41
  453. package/dist/lib/node-esm/chunk-QN2H2EHV.mjs.map +0 -7
  454. package/dist/lib/node-esm/chunk-VIIMA3XQ.mjs +0 -90
  455. package/dist/lib/node-esm/chunk-VIIMA3XQ.mjs.map +0 -7
  456. package/dist/lib/node-esm/chunk-Z7PUODRT.mjs +0 -172
  457. package/dist/lib/node-esm/chunk-Z7PUODRT.mjs.map +0 -7
  458. package/dist/lib/node-esm/intent-resolver-3FMC3GHC.mjs +0 -76
  459. package/dist/lib/node-esm/intent-resolver-3FMC3GHC.mjs.map +0 -7
  460. package/dist/lib/node-esm/react-surface-QDQWJ7FZ.mjs.map +0 -7
  461. package/dist/types/src/capability-definitions.d.ts +0 -7
  462. package/dist/types/src/capability-definitions.d.ts.map +0 -1
  463. package/dist/types/src/components/ChatPrompt/ChatOptionsMenu.d.ts +0 -9
  464. package/dist/types/src/components/ChatPrompt/ChatOptionsMenu.d.ts.map +0 -1
  465. package/dist/types/src/components/ChatThread/ChatMessage.d.ts +0 -17
  466. package/dist/types/src/components/ChatThread/ChatMessage.d.ts.map +0 -1
  467. package/dist/types/src/components/ChatThread/ToolBlock.d.ts +0 -19
  468. package/dist/types/src/components/ChatThread/ToolBlock.d.ts.map +0 -1
  469. package/dist/types/src/components/ChatThread/reducer.d.ts +0 -12
  470. package/dist/types/src/components/ChatThread/reducer.d.ts.map +0 -1
  471. package/dist/types/src/hooks/chat-processor.d.ts +0 -86
  472. package/dist/types/src/hooks/chat-processor.d.ts.map +0 -1
  473. package/dist/types/src/hooks/chat-processor.test.d.ts +0 -2
  474. package/dist/types/src/hooks/chat-processor.test.d.ts.map +0 -1
  475. package/dist/types/src/hooks/presets.d.ts.map +0 -1
  476. package/dist/types/src/hooks/useBlueprints.d.ts +0 -9
  477. package/dist/types/src/hooks/useBlueprints.d.ts.map +0 -1
  478. package/dist/types/src/parser/filter-generator.d.ts +0 -4
  479. package/dist/types/src/parser/filter-generator.d.ts.map +0 -1
  480. package/dist/types/src/parser/filter-generator.test.d.ts +0 -2
  481. package/dist/types/src/parser/filter-generator.test.d.ts.map +0 -1
  482. package/dist/types/src/parser/index.d.ts +0 -4
  483. package/dist/types/src/parser/index.d.ts.map +0 -1
  484. package/dist/types/src/parser/query-parser.d.ts +0 -15
  485. package/dist/types/src/parser/query-parser.d.ts.map +0 -1
  486. package/dist/types/src/parser/query-parser.test.d.ts +0 -2
  487. package/dist/types/src/parser/query-parser.test.d.ts.map +0 -1
  488. package/dist/types/src/parser/types.d.ts +0 -24
  489. package/dist/types/src/parser/types.d.ts.map +0 -1
  490. package/dist/types/src/tools/function.d.ts +0 -5
  491. package/dist/types/src/tools/function.d.ts.map +0 -1
  492. package/dist/types/src/tools/index.d.ts +0 -3
  493. package/dist/types/src/tools/index.d.ts.map +0 -1
  494. package/dist/types/src/tools/openapi.d.ts +0 -10
  495. package/dist/types/src/tools/openapi.d.ts.map +0 -1
  496. package/dist/types/src/tools/openapi.test.d.ts +0 -2
  497. package/dist/types/src/tools/openapi.test.d.ts.map +0 -1
  498. package/dist/types/src/types/schema.d.ts +0 -120
  499. package/dist/types/src/types/schema.d.ts.map +0 -1
  500. package/src/capability-definitions.ts +0 -15
  501. package/src/components/ChatPrompt/ChatOptionsMenu.tsx +0 -52
  502. package/src/components/ChatThread/ChatMessage.tsx +0 -268
  503. package/src/components/ChatThread/ToolBlock.tsx +0 -121
  504. package/src/components/ChatThread/reducer.ts +0 -52
  505. package/src/hooks/chat-processor.test.ts +0 -16
  506. package/src/hooks/chat-processor.ts +0 -314
  507. package/src/hooks/useBlueprints.ts +0 -57
  508. package/src/parser/filter-generator.test.ts +0 -32
  509. package/src/parser/filter-generator.ts +0 -81
  510. package/src/parser/index.ts +0 -7
  511. package/src/parser/query-parser.test.ts +0 -139
  512. package/src/parser/query-parser.ts +0 -199
  513. package/src/parser/types.ts +0 -34
  514. package/src/shims.d.ts +0 -8
  515. package/src/tools/function.ts +0 -46
  516. package/src/tools/index.ts +0 -6
  517. package/src/tools/openapi.test.ts +0 -217
  518. package/src/tools/openapi.ts +0 -338
  519. package/src/types/schema.ts +0 -108
  520. package/src/typings.d.ts +0 -9
  521. /package/dist/lib/{node-esm/BlueprintContainer-RGTMNLNX.mjs.map → browser/BlueprintContainer-TO35YXHT.mjs.map} +0 -0
@@ -0,0 +1,203 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ meta
4
+ } from "./chunk-73ABYRYX.mjs";
5
+ import {
6
+ __export
7
+ } from "./chunk-HSLMI22Q.mjs";
8
+
9
+ // src/types/Assistant.ts
10
+ var Assistant_exports = {};
11
+ __export(Assistant_exports, {
12
+ Chat: () => Chat,
13
+ CompanionTo: () => CompanionTo,
14
+ Settings: () => Settings
15
+ });
16
+ import * as Schema from "effect/Schema";
17
+ import { Queue } from "@dxos/client/echo";
18
+ import { Type } from "@dxos/echo";
19
+ import { LabelAnnotation } from "@dxos/echo/internal";
20
+
21
+ // src/types/defs.ts
22
+ var LLM_PROVIDERS = [
23
+ "edge",
24
+ "ollama",
25
+ "lmstudio"
26
+ ];
27
+
28
+ // src/types/Assistant.ts
29
+ var Chat = Schema.Struct({
30
+ id: Type.ObjectId,
31
+ name: Schema.optional(Schema.String),
32
+ queue: Type.Ref(Queue),
33
+ // TODO(dmaretskyi): Eventually this and the message queue will be the same.
34
+ traceQueue: Schema.optional(Type.Ref(Queue))
35
+ }).pipe(Type.Obj({
36
+ typename: "dxos.org/type/assistant/Chat",
37
+ version: "0.2.0"
38
+ }), LabelAnnotation.set([
39
+ "name"
40
+ ]));
41
+ var CompanionTo = Schema.Struct({
42
+ id: Type.ObjectId
43
+ }).pipe(Type.Relation({
44
+ typename: "dxos.org/relation/assistant/CompanionTo",
45
+ version: "0.1.0",
46
+ source: Chat,
47
+ target: Type.Expando
48
+ }));
49
+ var Settings = Schema.mutable(Schema.Struct({
50
+ llmProvider: Schema.optional(Schema.Literal(...LLM_PROVIDERS)),
51
+ edgeModel: Schema.optional(Schema.String),
52
+ ollamaModel: Schema.optional(Schema.String),
53
+ lmstudioModel: Schema.optional(Schema.String),
54
+ customPrompts: Schema.optional(Schema.Boolean)
55
+ }));
56
+
57
+ // src/types/AssistantAction.ts
58
+ var AssistantAction_exports = {};
59
+ __export(AssistantAction_exports, {
60
+ BlueprintForm: () => BlueprintForm,
61
+ CreateBlueprint: () => CreateBlueprint,
62
+ CreateChat: () => CreateChat,
63
+ CreateSequence: () => CreateSequence,
64
+ SetCurrentChat: () => SetCurrentChat,
65
+ onCreateSpace: () => onCreateSpace
66
+ });
67
+ import * as Schema2 from "effect/Schema";
68
+ import { Blueprint } from "@dxos/blueprints";
69
+ import { EchoObjectSchema, SpaceSchema } from "@dxos/client/echo";
70
+ import { Sequence } from "@dxos/conductor";
71
+ import { DataType } from "@dxos/schema";
72
+ var onCreateSpace = class extends Schema2.TaggedClass()(`${meta.id}/on-space-created`, {
73
+ input: Schema2.Struct({
74
+ space: SpaceSchema,
75
+ rootCollection: DataType.Collection
76
+ }),
77
+ output: Schema2.Void
78
+ }) {
79
+ };
80
+ var CreateChat = class extends Schema2.TaggedClass()(`${meta.id}/action/create-chat`, {
81
+ input: Schema2.Struct({
82
+ space: SpaceSchema,
83
+ name: Schema2.optional(Schema2.String)
84
+ }),
85
+ output: Schema2.Struct({
86
+ object: Chat
87
+ })
88
+ }) {
89
+ };
90
+ var BlueprintForm = Schema2.Struct({
91
+ key: Schema2.String,
92
+ name: Schema2.String,
93
+ description: Schema2.optional(Schema2.String)
94
+ });
95
+ var CreateBlueprint = class extends Schema2.TaggedClass()(`${meta.id}/action/create-blueprint`, {
96
+ input: BlueprintForm,
97
+ output: Schema2.Struct({
98
+ object: Blueprint.Blueprint
99
+ })
100
+ }) {
101
+ };
102
+ var CreateSequence = class extends Schema2.TaggedClass()(`${meta.id}/action/create-sequence`, {
103
+ input: Schema2.Struct({
104
+ name: Schema2.optional(Schema2.String)
105
+ }),
106
+ output: Schema2.Struct({
107
+ object: Sequence
108
+ })
109
+ }) {
110
+ };
111
+ var SetCurrentChat = class extends Schema2.TaggedClass()(`${meta.id}/action/set-current-chat`, {
112
+ input: Schema2.Struct({
113
+ companionTo: EchoObjectSchema,
114
+ chat: Chat
115
+ }),
116
+ output: Schema2.Void
117
+ }) {
118
+ };
119
+
120
+ // src/types/service.ts
121
+ import * as Schema3 from "effect/Schema";
122
+ import { ComputeGraph } from "@dxos/conductor";
123
+ import { Type as Type2 } from "@dxos/echo";
124
+ import { TypedObject } from "@dxos/echo/internal";
125
+ import { FunctionType } from "@dxos/functions";
126
+ var ApiAuthorizationKey = Schema3.Struct({
127
+ type: Schema3.Literal("api-key"),
128
+ key: Schema3.String,
129
+ placement: Schema3.Union(Schema3.Struct({
130
+ type: Schema3.Literal("authorization-header")
131
+ }), Schema3.Struct({
132
+ type: Schema3.Literal("query"),
133
+ name: Schema3.String
134
+ }))
135
+ });
136
+ var ApiAuthorizationOauth = Schema3.Struct({
137
+ type: Schema3.Literal("oauth"),
138
+ clientId: Schema3.String,
139
+ clientSecret: Schema3.String,
140
+ tokenUrl: Schema3.String,
141
+ grantType: Schema3.String
142
+ });
143
+ var ApiAuthorization = Schema3.Union(ApiAuthorizationKey, ApiAuthorizationOauth);
144
+ var ServiceInterfaceFunction = Schema3.Struct({
145
+ kind: Schema3.Literal("function"),
146
+ fn: Type2.Ref(FunctionType)
147
+ });
148
+ var ServiceInterfaceWorkflow = Schema3.Struct({
149
+ kind: Schema3.Literal("workflow"),
150
+ workflow: Type2.Ref(ComputeGraph)
151
+ });
152
+ var ServiceInterfaceApi = Schema3.Struct({
153
+ kind: Schema3.Literal("api"),
154
+ /**
155
+ * URL to fetch the openapi schema.
156
+ */
157
+ schemaUrl: Schema3.optional(Schema3.String),
158
+ /**
159
+ * Inlined openapi schema.
160
+ */
161
+ schema: Schema3.optional(Schema3.Any),
162
+ /**
163
+ * Authorization configuration if required.
164
+ */
165
+ authorization: Schema3.optional(ApiAuthorization)
166
+ });
167
+ var ServiceInterface = Schema3.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);
168
+ var ServiceType = class extends TypedObject({
169
+ typename: "dxos.org/type/ServiceType",
170
+ version: "0.1.0"
171
+ })({
172
+ serviceId: Schema3.String,
173
+ name: Schema3.optional(Schema3.String),
174
+ description: Schema3.optional(Schema3.String),
175
+ category: Schema3.optional(Schema3.String),
176
+ enabled: Schema3.optional(Schema3.Boolean),
177
+ /**
178
+ * Entries exposed: functions, workflows, and APIs.
179
+ */
180
+ interfaces: Schema3.optional(Schema3.Array(ServiceInterface))
181
+ }) {
182
+ };
183
+ var categoryIcons = {
184
+ finance: "ph--bank--regular",
185
+ health: "ph--heart--regular",
186
+ geolocation: "ph--globe-simple--regular",
187
+ education: "ph--books--regular",
188
+ entertainment: "ph--music-notes--regular",
189
+ shopping: "ph--shopping-cart--regular",
190
+ travel: "ph--airplane-takeoff--regular",
191
+ utilities: "ph--lightning--regular",
192
+ weather: "ph--cloud-rain--regular"
193
+ };
194
+
195
+ export {
196
+ LLM_PROVIDERS,
197
+ Assistant_exports,
198
+ AssistantAction_exports,
199
+ ApiAuthorization,
200
+ ServiceType,
201
+ categoryIcons
202
+ };
203
+ //# sourceMappingURL=chunk-DBDKOC3I.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/Assistant.ts", "../../../src/types/defs.ts", "../../../src/types/AssistantAction.ts", "../../../src/types/service.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Queue } from '@dxos/client/echo';\nimport { Type } from '@dxos/echo';\nimport { LabelAnnotation } from '@dxos/echo/internal';\n\nimport { LLM_PROVIDERS } from './defs';\n\n/**\n * AI chat.\n */\nexport const Chat = Schema.Struct({\n id: Type.ObjectId,\n name: Schema.optional(Schema.String),\n queue: Type.Ref(Queue),\n // TODO(dmaretskyi): Eventually this and the message queue will be the same.\n traceQueue: Schema.optional(Type.Ref(Queue)),\n}).pipe(\n Type.Obj({\n typename: 'dxos.org/type/assistant/Chat',\n version: '0.2.0',\n }),\n LabelAnnotation.set(['name']),\n);\n\nexport interface Chat extends Schema.Schema.Type<typeof Chat> {}\n\n/**\n * Relation between a Chat and companion objects (e.g., artifacts).\n */\nexport const CompanionTo = Schema.Struct({\n id: Type.ObjectId,\n}).pipe(\n Type.Relation({\n typename: 'dxos.org/relation/assistant/CompanionTo',\n version: '0.1.0',\n source: Chat,\n target: Type.Expando,\n }),\n);\n\nexport interface CompanionTo extends Schema.Schema.Type<typeof CompanionTo> {}\n\n/**\n * Plugin settings.\n */\nexport const Settings = Schema.mutable(\n Schema.Struct({\n llmProvider: Schema.optional(Schema.Literal(...LLM_PROVIDERS)),\n edgeModel: Schema.optional(Schema.String),\n ollamaModel: Schema.optional(Schema.String),\n lmstudioModel: Schema.optional(Schema.String),\n customPrompts: Schema.optional(Schema.Boolean),\n }),\n);\n\nexport type Settings = Schema.Schema.Type<typeof Settings>;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nexport const LLM_PROVIDERS = ['edge', 'ollama', 'lmstudio'] as const;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Blueprint } from '@dxos/blueprints';\nimport { EchoObjectSchema, SpaceSchema } from '@dxos/client/echo';\nimport { Sequence } from '@dxos/conductor';\nimport { DataType } from '@dxos/schema';\n\nimport { meta } from '../meta';\n\nimport { Chat } from './Assistant';\n\nexport class onCreateSpace extends Schema.TaggedClass<onCreateSpace>()(`${meta.id}/on-space-created`, {\n input: Schema.Struct({\n space: SpaceSchema,\n rootCollection: DataType.Collection,\n }),\n output: Schema.Void,\n}) {}\n\nexport class CreateChat extends Schema.TaggedClass<CreateChat>()(`${meta.id}/action/create-chat`, {\n input: Schema.Struct({\n space: SpaceSchema,\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Chat,\n }),\n}) {}\n\nexport const BlueprintForm = Schema.Struct({\n key: Schema.String,\n name: Schema.String,\n description: Schema.optional(Schema.String),\n});\n\nexport class CreateBlueprint extends Schema.TaggedClass<CreateBlueprint>()(`${meta.id}/action/create-blueprint`, {\n input: BlueprintForm,\n output: Schema.Struct({\n object: Blueprint.Blueprint,\n }),\n}) {}\n\nexport class CreateSequence extends Schema.TaggedClass<CreateSequence>()(`${meta.id}/action/create-sequence`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Sequence,\n }),\n}) {}\n\nexport class SetCurrentChat extends Schema.TaggedClass<SetCurrentChat>()(`${meta.id}/action/set-current-chat`, {\n input: Schema.Struct({\n companionTo: EchoObjectSchema,\n chat: Chat,\n }),\n output: Schema.Void,\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Type } from '@dxos/echo';\nimport { TypedObject } from '@dxos/echo/internal';\nimport { FunctionType } from '@dxos/functions';\n\nconst ApiAuthorizationKey = Schema.Struct({\n type: Schema.Literal('api-key'),\n key: Schema.String,\n placement: Schema.Union(\n Schema.Struct({\n type: Schema.Literal('authorization-header'),\n }),\n Schema.Struct({\n type: Schema.Literal('query'),\n name: Schema.String,\n }),\n ),\n});\n\nconst ApiAuthorizationOauth = Schema.Struct({\n type: Schema.Literal('oauth'),\n clientId: Schema.String,\n clientSecret: Schema.String,\n tokenUrl: Schema.String,\n grantType: Schema.String,\n});\n\nexport const ApiAuthorization = Schema.Union(ApiAuthorizationKey, ApiAuthorizationOauth);\nexport type ApiAuthorization = Schema.Schema.Type<typeof ApiAuthorization>;\n\nconst ServiceInterfaceFunction = Schema.Struct({\n kind: Schema.Literal('function'),\n fn: Type.Ref(FunctionType),\n});\n\nconst ServiceInterfaceWorkflow = Schema.Struct({\n kind: Schema.Literal('workflow'),\n workflow: Type.Ref(ComputeGraph),\n});\n\nconst ServiceInterfaceApi = Schema.Struct({\n kind: Schema.Literal('api'),\n\n /**\n * URL to fetch the openapi schema.\n */\n schemaUrl: Schema.optional(Schema.String),\n\n /**\n * Inlined openapi schema.\n */\n schema: Schema.optional(Schema.Any),\n\n /**\n * Authorization configuration if required.\n */\n authorization: Schema.optional(ApiAuthorization),\n});\n\nconst ServiceInterface = Schema.Union(ServiceInterfaceFunction, ServiceInterfaceWorkflow, ServiceInterfaceApi);\nexport type ServiceInterface = Schema.Schema.Type<typeof ServiceInterface>;\n\nexport class ServiceType extends TypedObject({\n typename: 'dxos.org/type/ServiceType',\n version: '0.1.0',\n})({\n serviceId: Schema.String,\n name: Schema.optional(Schema.String),\n description: Schema.optional(Schema.String),\n category: Schema.optional(Schema.String),\n enabled: Schema.optional(Schema.Boolean),\n\n /**\n * Entries exposed: functions, workflows, and APIs.\n */\n interfaces: Schema.optional(Schema.Array(ServiceInterface)),\n}) {}\n\n//\n// Service Registry\n//\n\nexport type ServiceQuery = {\n name?: string;\n category?: string;\n};\n\nexport interface BaseServiceRegistry {\n queryServices(query?: ServiceQuery): Promise<ServiceType[]>;\n}\n\nexport const categoryIcons: Record<string, string> = {\n finance: 'ph--bank--regular',\n health: 'ph--heart--regular',\n geolocation: 'ph--globe-simple--regular',\n education: 'ph--books--regular',\n entertainment: 'ph--music-notes--regular',\n shopping: 'ph--shopping-cart--regular',\n travel: 'ph--airplane-takeoff--regular',\n utilities: 'ph--lightning--regular',\n weather: 'ph--cloud-rain--regular',\n} as const;\n"],
5
+ "mappings": "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",
6
+ "names": ["Schema", "Queue", "Type", "LabelAnnotation", "LLM_PROVIDERS", "Chat", "Struct", "id", "Type", "ObjectId", "name", "optional", "String", "queue", "Ref", "Queue", "traceQueue", "pipe", "Obj", "typename", "version", "LabelAnnotation", "set", "CompanionTo", "Relation", "source", "target", "Expando", "Settings", "mutable", "llmProvider", "Literal", "LLM_PROVIDERS", "edgeModel", "ollamaModel", "lmstudioModel", "customPrompts", "Boolean", "Schema", "Blueprint", "EchoObjectSchema", "SpaceSchema", "Sequence", "DataType", "onCreateSpace", "TaggedClass", "meta", "id", "input", "Struct", "space", "SpaceSchema", "rootCollection", "DataType", "Collection", "output", "Void", "CreateChat", "name", "optional", "String", "object", "Chat", "BlueprintForm", "key", "description", "CreateBlueprint", "Blueprint", "CreateSequence", "Sequence", "SetCurrentChat", "companionTo", "EchoObjectSchema", "chat", "Schema", "ComputeGraph", "Type", "TypedObject", "FunctionType", "ApiAuthorizationKey", "Struct", "type", "Literal", "key", "String", "placement", "Union", "name", "ApiAuthorizationOauth", "clientId", "clientSecret", "tokenUrl", "grantType", "ApiAuthorization", "ServiceInterfaceFunction", "kind", "fn", "Type", "Ref", "FunctionType", "ServiceInterfaceWorkflow", "workflow", "ComputeGraph", "ServiceInterfaceApi", "schemaUrl", "optional", "schema", "Any", "authorization", "ServiceInterface", "ServiceType", "TypedObject", "typename", "version", "serviceId", "description", "category", "enabled", "Boolean", "interfaces", "Array", "categoryIcons", "finance", "health", "geolocation", "education", "entertainment", "shopping", "travel", "utilities", "weather"]
7
+ }
@@ -0,0 +1,217 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ meta
4
+ } from "./chunk-73ABYRYX.mjs";
5
+
6
+ // src/components/TemplateEditor/TemplateEditor.tsx
7
+ import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
8
+ import React from "react";
9
+ import { createDocAccessor } from "@dxos/react-client/echo";
10
+ import { useThemeContext, useTranslation } from "@dxos/react-ui";
11
+ import { createBasicExtensions, createDataExtensions, createMarkdownExtensions, createThemeExtensions, decorateMarkdown, useTextEditor } from "@dxos/react-ui-editor";
12
+ import { mx } from "@dxos/react-ui-theme";
13
+ import { isTruthy } from "@dxos/util";
14
+
15
+ // src/components/TemplateEditor/handlebars-extension.ts
16
+ import { autocompletion, completionKeymap } from "@codemirror/autocomplete";
17
+ import { Decoration, ViewPlugin, keymap } from "@codemirror/view";
18
+ function _define_property(obj, key, value) {
19
+ if (key in obj) {
20
+ Object.defineProperty(obj, key, {
21
+ value,
22
+ enumerable: true,
23
+ configurable: true,
24
+ writable: true
25
+ });
26
+ } else {
27
+ obj[key] = value;
28
+ }
29
+ return obj;
30
+ }
31
+ var handlebars = (_ = {}) => {
32
+ return [
33
+ handlebarsHighlightPlugin,
34
+ autocompletion({
35
+ activateOnTyping: true,
36
+ aboveCursor: true,
37
+ closeOnBlur: true,
38
+ override: [
39
+ handlebarsCompletions
40
+ ]
41
+ }),
42
+ keymap.of(completionKeymap)
43
+ ];
44
+ };
45
+ var regex = {
46
+ comment: /\{\{!\s*[^}]*\}\}/g,
47
+ brackets: /\{\{[^}]*\}\}/g,
48
+ command: /\{\{[#/]([^}]+)\}\}/g,
49
+ var: /\{\{(?!\s*!)(\w[^}]*)\}\}/g
50
+ };
51
+ var handlebarsHighlightPlugin = ViewPlugin.fromClass(class {
52
+ buildDecorations(view) {
53
+ const widgets = [];
54
+ for (const { from, to } of view.visibleRanges) {
55
+ const text = view.state.doc.sliceString(from, to);
56
+ {
57
+ let match;
58
+ while ((match = regex.comment.exec(text)) !== null) {
59
+ const start = from + match.index;
60
+ const end = start + match[0].length;
61
+ widgets.push(Decoration.mark({
62
+ class: "text-subdued"
63
+ }).range(start, end));
64
+ }
65
+ }
66
+ {
67
+ let match;
68
+ while ((match = regex.brackets.exec(text)) !== null) {
69
+ const start = from + match.index;
70
+ const end = start + match[0].length;
71
+ widgets.push(Decoration.mark({
72
+ class: "text-subdued"
73
+ }).range(start, end));
74
+ }
75
+ }
76
+ {
77
+ let match;
78
+ while ((match = regex.command.exec(text)) !== null) {
79
+ const start = from + match.index + 2;
80
+ let end = start + match[0].length - 4;
81
+ const text2 = view.state.doc.sliceString(start, end);
82
+ const parts = text2.split(/\s+/);
83
+ if (parts.length > 1) {
84
+ const idx = start + parts[0].length;
85
+ widgets.push(Decoration.mark({
86
+ class: "text-greenText"
87
+ }).range(idx, end));
88
+ end = idx;
89
+ }
90
+ widgets.push(Decoration.mark({
91
+ class: "text-blueText"
92
+ }).range(start, end));
93
+ }
94
+ }
95
+ {
96
+ let match;
97
+ while ((match = regex.var.exec(text)) !== null) {
98
+ const start = from + match.index + 2;
99
+ const end = start + match[0].length - 4;
100
+ widgets.push(Decoration.mark({
101
+ class: "text-greenText"
102
+ }).range(start, end));
103
+ }
104
+ }
105
+ }
106
+ widgets.sort((a, b) => a.from - b.from || a.startSide - b.startSide);
107
+ return Decoration.set(widgets);
108
+ }
109
+ update(update) {
110
+ if (update.docChanged || update.viewportChanged) {
111
+ this.decorations = this.buildDecorations(update.view);
112
+ }
113
+ }
114
+ constructor(view) {
115
+ _define_property(this, "decorations", void 0);
116
+ this.decorations = this.buildDecorations(view);
117
+ }
118
+ }, {
119
+ decorations: (v) => v.decorations
120
+ });
121
+ var variables = [
122
+ "this"
123
+ ];
124
+ var commands = [
125
+ "this",
126
+ "each",
127
+ "if",
128
+ "unless",
129
+ "with"
130
+ ];
131
+ function handlebarsCompletions(context) {
132
+ const match = context.matchBefore(/\{\{[^}]*/);
133
+ if (!match || match.from === match.to) {
134
+ return null;
135
+ }
136
+ let type = "variable";
137
+ let text = match.text.slice(2);
138
+ let from = match.from + 2;
139
+ let matches = [];
140
+ if (text.startsWith("#") || text.startsWith("/")) {
141
+ const idx = text.lastIndexOf(" ");
142
+ if (idx !== -1) {
143
+ type = "variable";
144
+ matches = variables;
145
+ text = text.slice(idx + 1);
146
+ from += idx + 1;
147
+ } else {
148
+ type = "command";
149
+ text = text.slice(1);
150
+ matches = commands;
151
+ from += 1;
152
+ }
153
+ } else {
154
+ type = "variable";
155
+ matches = variables;
156
+ }
157
+ const options = matches.filter((name) => name.startsWith(text)).map((name) => ({
158
+ type,
159
+ label: name
160
+ }));
161
+ return {
162
+ from,
163
+ options
164
+ };
165
+ }
166
+
167
+ // src/components/TemplateEditor/TemplateEditor.tsx
168
+ var TemplateEditor = ({ id, classNames, template }) => {
169
+ var _effect = _useSignals();
170
+ try {
171
+ const { t } = useTranslation(meta.id);
172
+ const { themeMode } = useThemeContext();
173
+ const { parentRef } = useTextEditor(() => {
174
+ const text = template.source?.target;
175
+ if (!text) {
176
+ return {};
177
+ }
178
+ return {
179
+ initialValue: text.content ?? "",
180
+ extensions: [
181
+ createDataExtensions({
182
+ id,
183
+ text: createDocAccessor(text, [
184
+ "content"
185
+ ])
186
+ }),
187
+ createBasicExtensions({
188
+ bracketMatching: false,
189
+ lineNumbers: true,
190
+ lineWrapping: true,
191
+ placeholder: t("template placeholder")
192
+ }),
193
+ createThemeExtensions({
194
+ themeMode
195
+ }),
196
+ createMarkdownExtensions(),
197
+ decorateMarkdown(),
198
+ handlebars()
199
+ ].filter(isTruthy)
200
+ };
201
+ }, [
202
+ themeMode,
203
+ template.source?.target
204
+ ]);
205
+ return /* @__PURE__ */ React.createElement("div", {
206
+ ref: parentRef,
207
+ className: mx("bs-full overflow-hidden", classNames)
208
+ });
209
+ } finally {
210
+ _effect.f();
211
+ }
212
+ };
213
+
214
+ export {
215
+ TemplateEditor
216
+ };
217
+ //# sourceMappingURL=chunk-DSE2IILK.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/TemplateEditor/TemplateEditor.tsx", "../../../src/components/TemplateEditor/handlebars-extension.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Template } from '@dxos/blueprints';\nimport { createDocAccessor } from '@dxos/react-client/echo';\nimport { type ThemedClassName, useThemeContext, useTranslation } from '@dxos/react-ui';\nimport {\n createBasicExtensions,\n createDataExtensions,\n createMarkdownExtensions,\n createThemeExtensions,\n decorateMarkdown,\n useTextEditor,\n} from '@dxos/react-ui-editor';\nimport { mx } from '@dxos/react-ui-theme';\nimport { isTruthy } from '@dxos/util';\n\nimport { meta } from '../../meta';\n\nimport { handlebars } from './handlebars-extension';\n\nexport type TemplateEditorProps = ThemedClassName<{\n id: string;\n template: Template.Template;\n}>;\n\nexport const TemplateEditor = ({ id, classNames, template }: TemplateEditorProps) => {\n const { t } = useTranslation(meta.id);\n const { themeMode } = useThemeContext();\n const { parentRef } = useTextEditor(() => {\n const text = template.source?.target;\n if (!text) {\n return {};\n }\n\n return {\n initialValue: text.content ?? '',\n extensions: [\n createDataExtensions({ id, text: createDocAccessor(text, ['content']) }),\n createBasicExtensions({\n bracketMatching: false,\n lineNumbers: true,\n lineWrapping: true,\n placeholder: t('template placeholder'),\n }),\n createThemeExtensions({ themeMode }),\n createMarkdownExtensions(),\n decorateMarkdown(),\n handlebars(),\n ].filter(isTruthy),\n };\n }, [themeMode, template.source?.target]);\n\n return <div ref={parentRef} className={mx('bs-full overflow-hidden', classNames)} />;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n type CompletionContext,\n type CompletionResult,\n autocompletion,\n completionKeymap,\n} from '@codemirror/autocomplete';\nimport { type Extension } from '@codemirror/state';\nimport { Decoration, type DecorationSet, type EditorView, ViewPlugin, type ViewUpdate, keymap } from '@codemirror/view';\n\nexport type HandlebarsOptions = {};\n\n/**\n * Simple Handlebars plugin for CodeMirror.\n * Supports:\n * - Comments: {{! comment }}\n * - Commands: {{#command}} {{/command}}\n * - Variables: {{var}}\n * - Commands with variables: {{#each items}} {{/each}}\n */\nexport const handlebars = (_: HandlebarsOptions = {}): Extension => {\n return [\n handlebarsHighlightPlugin,\n autocompletion({\n activateOnTyping: true,\n aboveCursor: true,\n closeOnBlur: true,\n override: [handlebarsCompletions],\n }),\n keymap.of(completionKeymap),\n ];\n};\n\nconst regex = {\n comment: /\\{\\{!\\s*[^}]*\\}\\}/g,\n brackets: /\\{\\{[^}]*\\}\\}/g,\n command: /\\{\\{[#/]([^}]+)\\}\\}/g,\n var: /\\{\\{(?!\\s*!)(\\w[^}]*)\\}\\}/g,\n};\n\n/**\n * ViewPlugin that decorates Handlebars syntax.\n */\nconst handlebarsHighlightPlugin = ViewPlugin.fromClass(\n class {\n decorations: DecorationSet;\n\n constructor(view: EditorView) {\n this.decorations = this.buildDecorations(view);\n }\n\n buildDecorations(view: EditorView) {\n const widgets: any[] = [];\n\n for (const { from, to } of view.visibleRanges) {\n const text = view.state.doc.sliceString(from, to);\n\n // Match comments: {{! comment }}\n {\n let match;\n while ((match = regex.comment.exec(text)) !== null) {\n const start = from + match.index;\n const end = start + match[0].length;\n widgets.push(Decoration.mark({ class: 'text-subdued' }).range(start, end));\n }\n }\n\n // Match brackets: {{ and }}\n {\n let match;\n while ((match = regex.brackets.exec(text)) !== null) {\n const start = from + match.index;\n const end = start + match[0].length;\n widgets.push(Decoration.mark({ class: 'text-subdued' }).range(start, end));\n }\n }\n\n // Match commands: {{#command}} and {{/command}}\n {\n let match;\n while ((match = regex.command.exec(text)) !== null) {\n const start = from + match.index + 2;\n let end = start + match[0].length - 4;\n const text = view.state.doc.sliceString(start, end);\n const parts = text.split(/\\s+/);\n if (parts.length > 1) {\n const idx = start + parts[0].length;\n widgets.push(Decoration.mark({ class: 'text-greenText' }).range(idx, end));\n end = idx;\n }\n widgets.push(Decoration.mark({ class: 'text-blueText' }).range(start, end));\n }\n }\n\n // Match variables: {{var}}\n {\n let match;\n while ((match = regex.var.exec(text)) !== null) {\n const start = from + match.index + 2;\n const end = start + match[0].length - 4;\n widgets.push(Decoration.mark({ class: 'text-greenText' }).range(start, end));\n }\n }\n }\n\n // Sort decorations by position to avoid \"Ranges must be added sorted\" error.\n widgets.sort((a, b) => a.from - b.from || a.startSide - b.startSide);\n return Decoration.set(widgets);\n }\n\n update(update: ViewUpdate) {\n if (update.docChanged || update.viewportChanged) {\n this.decorations = this.buildDecorations(update.view);\n }\n }\n },\n {\n decorations: (v) => v.decorations,\n },\n);\n\n// TODO(burdon): Pass in variables.\nconst variables = ['this'];\nconst commands = ['this', 'each', 'if', 'unless', 'with'];\n\n/**\n * Provides completions for Handlebars variables.\n */\nfunction handlebarsCompletions(context: CompletionContext): CompletionResult | null {\n const match = context.matchBefore(/\\{\\{[^}]*/);\n if (!match || match.from === match.to) {\n return null;\n }\n\n let type = 'variable';\n let text = match.text.slice(2);\n let from = match.from + 2;\n let matches = [];\n if (text.startsWith('#') || text.startsWith('/')) {\n const idx = text.lastIndexOf(' ');\n if (idx !== -1) {\n type = 'variable';\n matches = variables;\n text = text.slice(idx + 1);\n from += idx + 1;\n } else {\n type = 'command';\n text = text.slice(1);\n matches = commands;\n from += 1;\n }\n } else {\n type = 'variable';\n matches = variables;\n }\n\n const options = matches.filter((name) => name.startsWith(text)).map((name) => ({ type, label: name }));\n return {\n from,\n options,\n };\n}\n"],
5
+ "mappings": ";;;;;;;AAIA,OAAOA,WAAW;AAGlB,SAASC,yBAAyB;AAClC,SAA+BC,iBAAiBC,sBAAsB;AACtE,SACEC,uBACAC,sBACAC,0BACAC,uBACAC,kBACAC,qBACK;AACP,SAASC,UAAU;AACnB,SAASC,gBAAgB;;;ACdzB,SAGEC,gBACAC,wBACK;AAEP,SAASC,YAAiDC,YAA6BC,cAAc;;;;;;;;;;;;;;AAY9F,IAAMC,aAAa,CAACC,IAAuB,CAAC,MAAC;AAClD,SAAO;IACLC;IACAC,eAAe;MACbC,kBAAkB;MAClBC,aAAa;MACbC,aAAa;MACbC,UAAU;QAACC;;IACb,CAAA;IACAC,OAAOC,GAAGC,gBAAAA;;AAEd;AAEA,IAAMC,QAAQ;EACZC,SAAS;EACTC,UAAU;EACVC,SAAS;EACTC,KAAK;AACP;AAKA,IAAMd,4BAA4Be,WAAWC,UAC3C,MAAA;EAOEC,iBAAiBC,MAAkB;AACjC,UAAMC,UAAiB,CAAA;AAEvB,eAAW,EAAEC,MAAMC,GAAE,KAAMH,KAAKI,eAAe;AAC7C,YAAMC,OAAOL,KAAKM,MAAMC,IAAIC,YAAYN,MAAMC,EAAAA;AAG9C;AACE,YAAIM;AACJ,gBAAQA,QAAQjB,MAAMC,QAAQiB,KAAKL,IAAAA,OAAW,MAAM;AAClD,gBAAMM,QAAQT,OAAOO,MAAMG;AAC3B,gBAAMC,MAAMF,QAAQF,MAAM,CAAA,EAAGK;AAC7Bb,kBAAQc,KAAKC,WAAWC,KAAK;YAAEC,OAAO;UAAe,CAAA,EAAGC,MAAMR,OAAOE,GAAAA,CAAAA;QACvE;MACF;AAGA;AACE,YAAIJ;AACJ,gBAAQA,QAAQjB,MAAME,SAASgB,KAAKL,IAAAA,OAAW,MAAM;AACnD,gBAAMM,QAAQT,OAAOO,MAAMG;AAC3B,gBAAMC,MAAMF,QAAQF,MAAM,CAAA,EAAGK;AAC7Bb,kBAAQc,KAAKC,WAAWC,KAAK;YAAEC,OAAO;UAAe,CAAA,EAAGC,MAAMR,OAAOE,GAAAA,CAAAA;QACvE;MACF;AAGA;AACE,YAAIJ;AACJ,gBAAQA,QAAQjB,MAAMG,QAAQe,KAAKL,IAAAA,OAAW,MAAM;AAClD,gBAAMM,QAAQT,OAAOO,MAAMG,QAAQ;AACnC,cAAIC,MAAMF,QAAQF,MAAM,CAAA,EAAGK,SAAS;AACpC,gBAAMT,QAAOL,KAAKM,MAAMC,IAAIC,YAAYG,OAAOE,GAAAA;AAC/C,gBAAMO,QAAQf,MAAKgB,MAAM,KAAA;AACzB,cAAID,MAAMN,SAAS,GAAG;AACpB,kBAAMQ,MAAMX,QAAQS,MAAM,CAAA,EAAGN;AAC7Bb,oBAAQc,KAAKC,WAAWC,KAAK;cAAEC,OAAO;YAAiB,CAAA,EAAGC,MAAMG,KAAKT,GAAAA,CAAAA;AACrEA,kBAAMS;UACR;AACArB,kBAAQc,KAAKC,WAAWC,KAAK;YAAEC,OAAO;UAAgB,CAAA,EAAGC,MAAMR,OAAOE,GAAAA,CAAAA;QACxE;MACF;AAGA;AACE,YAAIJ;AACJ,gBAAQA,QAAQjB,MAAMI,IAAIc,KAAKL,IAAAA,OAAW,MAAM;AAC9C,gBAAMM,QAAQT,OAAOO,MAAMG,QAAQ;AACnC,gBAAMC,MAAMF,QAAQF,MAAM,CAAA,EAAGK,SAAS;AACtCb,kBAAQc,KAAKC,WAAWC,KAAK;YAAEC,OAAO;UAAiB,CAAA,EAAGC,MAAMR,OAAOE,GAAAA,CAAAA;QACzE;MACF;IACF;AAGAZ,YAAQsB,KAAK,CAACC,GAAGC,MAAMD,EAAEtB,OAAOuB,EAAEvB,QAAQsB,EAAEE,YAAYD,EAAEC,SAAS;AACnE,WAAOV,WAAWW,IAAI1B,OAAAA;EACxB;EAEA2B,OAAOA,QAAoB;AACzB,QAAIA,OAAOC,cAAcD,OAAOE,iBAAiB;AAC/C,WAAKC,cAAc,KAAKhC,iBAAiB6B,OAAO5B,IAAI;IACtD;EACF;EAnEA,YAAYA,MAAkB;AAF9B+B,qBAAAA,MAAAA,eAAAA,MAAAA;AAGE,SAAKA,cAAc,KAAKhC,iBAAiBC,IAAAA;EAC3C;AAkEF,GACA;EACE+B,aAAa,CAACC,MAAMA,EAAED;AACxB,CAAA;AAIF,IAAME,YAAY;EAAC;;AACnB,IAAMC,WAAW;EAAC;EAAQ;EAAQ;EAAM;EAAU;;AAKlD,SAAS9C,sBAAsB+C,SAA0B;AACvD,QAAM1B,QAAQ0B,QAAQC,YAAY,WAAA;AAClC,MAAI,CAAC3B,SAASA,MAAMP,SAASO,MAAMN,IAAI;AACrC,WAAO;EACT;AAEA,MAAIkC,OAAO;AACX,MAAIhC,OAAOI,MAAMJ,KAAKiC,MAAM,CAAA;AAC5B,MAAIpC,OAAOO,MAAMP,OAAO;AACxB,MAAIqC,UAAU,CAAA;AACd,MAAIlC,KAAKmC,WAAW,GAAA,KAAQnC,KAAKmC,WAAW,GAAA,GAAM;AAChD,UAAMlB,MAAMjB,KAAKoC,YAAY,GAAA;AAC7B,QAAInB,QAAQ,IAAI;AACde,aAAO;AACPE,gBAAUN;AACV5B,aAAOA,KAAKiC,MAAMhB,MAAM,CAAA;AACxBpB,cAAQoB,MAAM;IAChB,OAAO;AACLe,aAAO;AACPhC,aAAOA,KAAKiC,MAAM,CAAA;AAClBC,gBAAUL;AACVhC,cAAQ;IACV;EACF,OAAO;AACLmC,WAAO;AACPE,cAAUN;EACZ;AAEA,QAAMS,UAAUH,QAAQI,OAAO,CAACC,SAASA,KAAKJ,WAAWnC,IAAAA,CAAAA,EAAOwC,IAAI,CAACD,UAAU;IAAEP;IAAMS,OAAOF;EAAK,EAAA;AACnG,SAAO;IACL1C;IACAwC;EACF;AACF;;;ADvIO,IAAMK,iBAAiB,CAAC,EAAEC,IAAIC,YAAYC,SAAQ,MAAuB;;;AAC9E,UAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKL,EAAE;AACpC,UAAM,EAAEM,UAAS,IAAKC,gBAAAA;AACtB,UAAM,EAAEC,UAAS,IAAKC,cAAc,MAAA;AAClC,YAAMC,OAAOR,SAASS,QAAQC;AAC9B,UAAI,CAACF,MAAM;AACT,eAAO,CAAC;MACV;AAEA,aAAO;QACLG,cAAcH,KAAKI,WAAW;QAC9BC,YAAY;UACVC,qBAAqB;YAAEhB;YAAIU,MAAMO,kBAAkBP,MAAM;cAAC;aAAU;UAAE,CAAA;UACtEQ,sBAAsB;YACpBC,iBAAiB;YACjBC,aAAa;YACbC,cAAc;YACdC,aAAanB,EAAE,sBAAA;UACjB,CAAA;UACAoB,sBAAsB;YAAEjB;UAAU,CAAA;UAClCkB,yBAAAA;UACAC,iBAAAA;UACAC,WAAAA;UACAC,OAAOC,QAAAA;MACX;IACF,GAAG;MAACtB;MAAWJ,SAASS,QAAQC;KAAO;AAEvC,WAAO,sBAAA,cAACiB,OAAAA;MAAIC,KAAKtB;MAAWuB,WAAWC,GAAG,2BAA2B/B,UAAAA;;;;;AACvE;",
6
+ "names": ["React", "createDocAccessor", "useThemeContext", "useTranslation", "createBasicExtensions", "createDataExtensions", "createMarkdownExtensions", "createThemeExtensions", "decorateMarkdown", "useTextEditor", "mx", "isTruthy", "autocompletion", "completionKeymap", "Decoration", "ViewPlugin", "keymap", "handlebars", "_", "handlebarsHighlightPlugin", "autocompletion", "activateOnTyping", "aboveCursor", "closeOnBlur", "override", "handlebarsCompletions", "keymap", "of", "completionKeymap", "regex", "comment", "brackets", "command", "var", "ViewPlugin", "fromClass", "buildDecorations", "view", "widgets", "from", "to", "visibleRanges", "text", "state", "doc", "sliceString", "match", "exec", "start", "index", "end", "length", "push", "Decoration", "mark", "class", "range", "parts", "split", "idx", "sort", "a", "b", "startSide", "set", "update", "docChanged", "viewportChanged", "decorations", "v", "variables", "commands", "context", "matchBefore", "type", "slice", "matches", "startsWith", "lastIndexOf", "options", "filter", "name", "map", "label", "TemplateEditor", "id", "classNames", "template", "t", "useTranslation", "meta", "themeMode", "useThemeContext", "parentRef", "useTextEditor", "text", "source", "target", "initialValue", "content", "extensions", "createDataExtensions", "createDocAccessor", "createBasicExtensions", "bracketMatching", "lineNumbers", "lineWrapping", "placeholder", "createThemeExtensions", "createMarkdownExtensions", "decorateMarkdown", "handlebars", "filter", "isTruthy", "div", "ref", "className", "mx"]
7
+ }
@@ -0,0 +1,11 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ var __defProp = Object.defineProperty;
3
+ var __export = (target, all) => {
4
+ for (var name in all)
5
+ __defProp(target, name, { get: all[name], enumerable: true });
6
+ };
7
+
8
+ export {
9
+ __export
10
+ };
11
+ //# sourceMappingURL=chunk-HSLMI22Q.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,170 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ AssistantAction_exports,
4
+ Assistant_exports
5
+ } from "./chunk-DBDKOC3I.mjs";
6
+ import {
7
+ meta
8
+ } from "./chunk-73ABYRYX.mjs";
9
+
10
+ // src/components/Toolbar/Toolbar.tsx
11
+ import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
12
+ import React from "react";
13
+ import { fullyQualifiedId } from "@dxos/react-client/echo";
14
+ import { MenuProvider, ToolbarMenu } from "@dxos/react-ui-menu";
15
+
16
+ // src/components/Toolbar/useChatToolbarActions.ts
17
+ import { Rx } from "@effect-rx/rx-react";
18
+ import * as Effect from "effect/Effect";
19
+ import { useMemo } from "react";
20
+ import { createIntent, useIntentDispatcher } from "@dxos/app-framework";
21
+ import { Filter, Obj, Query } from "@dxos/echo";
22
+ import { invariant } from "@dxos/invariant";
23
+ import { SpaceAction } from "@dxos/plugin-space/types";
24
+ import { getSpace, useQuery } from "@dxos/react-client/echo";
25
+ import { MenuBuilder, useMenuActions } from "@dxos/react-ui-menu";
26
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-assistant/src/components/Toolbar/useChatToolbarActions.ts";
27
+ var useChatToolbarActions = ({ chat, companionTo, onReset }) => {
28
+ const { dispatch } = useIntentDispatcher();
29
+ const space = getSpace(chat);
30
+ const query = companionTo ? Query.select(Filter.ids(companionTo.id)).targetOf(Assistant_exports.CompanionTo).source() : Query.select(Filter.nothing());
31
+ const chats = useQuery(space, query);
32
+ return useMenuActions(useMemo(() => Rx.make(() => {
33
+ const builder = MenuBuilder.make().root({
34
+ label: [
35
+ "chat toolbar title",
36
+ {
37
+ ns: meta.id
38
+ }
39
+ ]
40
+ }).action("new", {
41
+ label: [
42
+ "button new thread",
43
+ {
44
+ ns: meta.id
45
+ }
46
+ ],
47
+ icon: "ph--plus--regular",
48
+ type: "new"
49
+ }, () => Effect.gen(function* () {
50
+ invariant(space, void 0, {
51
+ F: __dxlog_file,
52
+ L: 51,
53
+ S: this,
54
+ A: [
55
+ "space",
56
+ ""
57
+ ]
58
+ });
59
+ const { object } = yield* dispatch(createIntent(AssistantAction_exports.CreateChat, {
60
+ space
61
+ }));
62
+ yield* dispatch(createIntent(SpaceAction.AddObject, {
63
+ object,
64
+ target: space,
65
+ hidden: true
66
+ }));
67
+ if (companionTo) {
68
+ yield* dispatch(createIntent(SpaceAction.AddRelation, {
69
+ space,
70
+ schema: Assistant_exports.CompanionTo,
71
+ source: object,
72
+ target: companionTo
73
+ }));
74
+ yield* dispatch(createIntent(AssistantAction_exports.SetCurrentChat, {
75
+ companionTo,
76
+ chat: object
77
+ }));
78
+ }
79
+ }).pipe(Effect.runPromise)).action("branch", {
80
+ label: [
81
+ "button branch thread",
82
+ {
83
+ ns: meta.id
84
+ }
85
+ ],
86
+ icon: "ph--git-branch--regular",
87
+ type: "branch",
88
+ disabled: true
89
+ }, () => {
90
+ });
91
+ if (chats.length > 0) {
92
+ builder.group("chats", {
93
+ label: [
94
+ "chat history label",
95
+ {
96
+ ns: meta.id
97
+ }
98
+ ],
99
+ icon: "ph--clock-counter-clockwise--regular",
100
+ selectCardinality: "single",
101
+ variant: "dropdownMenu"
102
+ }, (builder2) => {
103
+ chats.toSorted((a, b) => a.id.localeCompare(b.id)).forEach((chat2) => {
104
+ builder2.action(chat2.id, {
105
+ label: Obj.getLabel(chat2) ?? [
106
+ "object name placeholder",
107
+ {
108
+ ns: Assistant_exports.Chat.typename
109
+ }
110
+ ]
111
+ }, () => Effect.gen(function* () {
112
+ invariant(companionTo, void 0, {
113
+ F: __dxlog_file,
114
+ L: 100,
115
+ S: this,
116
+ A: [
117
+ "companionTo",
118
+ ""
119
+ ]
120
+ });
121
+ yield* dispatch(createIntent(AssistantAction_exports.SetCurrentChat, {
122
+ companionTo,
123
+ chat: chat2
124
+ }));
125
+ }).pipe(Effect.runPromise));
126
+ });
127
+ });
128
+ }
129
+ if (onReset) {
130
+ builder.action("reset", {
131
+ label: [
132
+ "button reset",
133
+ {
134
+ ns: meta.id
135
+ }
136
+ ],
137
+ icon: "ph--trash--regular",
138
+ type: "reset"
139
+ }, onReset);
140
+ }
141
+ return builder.build();
142
+ }), [
143
+ chats
144
+ ]));
145
+ };
146
+
147
+ // src/components/Toolbar/Toolbar.tsx
148
+ var Toolbar = ({ chat, companionTo, onReset, classNames }) => {
149
+ var _effect = _useSignals();
150
+ try {
151
+ const menu = useChatToolbarActions({
152
+ chat,
153
+ companionTo,
154
+ onReset
155
+ });
156
+ return /* @__PURE__ */ React.createElement(MenuProvider, {
157
+ ...menu,
158
+ attendableId: companionTo ? fullyQualifiedId(companionTo) : fullyQualifiedId(chat)
159
+ }, /* @__PURE__ */ React.createElement(ToolbarMenu, {
160
+ classNames
161
+ }));
162
+ } finally {
163
+ _effect.f();
164
+ }
165
+ };
166
+
167
+ export {
168
+ Toolbar
169
+ };
170
+ //# sourceMappingURL=chunk-I7BZMIAG.mjs.map