@dxos/plugin-automation 0.8.4-main.72ec0f3 → 0.8.4-main.74a063c4e0

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 (282) hide show
  1. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  2. package/dist/lib/browser/chunk-POEIL4RN.mjs +44 -0
  3. package/dist/lib/browser/chunk-POEIL4RN.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-WQLEMRPU.mjs +54 -0
  5. package/dist/lib/browser/chunk-WQLEMRPU.mjs.map +7 -0
  6. package/dist/lib/browser/cli/index.mjs +1122 -0
  7. package/dist/lib/browser/cli/index.mjs.map +7 -0
  8. package/dist/lib/browser/create-trigger-from-template-JPF5BFMX.mjs +77 -0
  9. package/dist/lib/browser/create-trigger-from-template-JPF5BFMX.mjs.map +7 -0
  10. package/dist/lib/browser/hooks/index.mjs +79 -7
  11. package/dist/lib/browser/hooks/index.mjs.map +4 -4
  12. package/dist/lib/browser/index.mjs +72 -112
  13. package/dist/lib/browser/index.mjs.map +4 -4
  14. package/dist/lib/browser/meta.json +1 -1
  15. package/dist/lib/browser/operations/index.mjs +14 -0
  16. package/dist/lib/browser/operations/index.mjs.map +7 -0
  17. package/dist/lib/browser/types/index.mjs +10 -4
  18. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  19. package/dist/lib/node-esm/{chunk-ECJKIUBO.mjs → chunk-JWZAVQLF.mjs} +24 -7
  20. package/dist/lib/node-esm/chunk-JWZAVQLF.mjs.map +7 -0
  21. package/dist/lib/node-esm/chunk-SP3P4OUI.mjs +45 -0
  22. package/dist/lib/node-esm/chunk-SP3P4OUI.mjs.map +7 -0
  23. package/dist/lib/node-esm/cli/index.mjs +1123 -0
  24. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  25. package/dist/lib/node-esm/create-trigger-from-template-FT75A4SF.mjs +78 -0
  26. package/dist/lib/node-esm/create-trigger-from-template-FT75A4SF.mjs.map +7 -0
  27. package/dist/lib/node-esm/hooks/index.mjs +79 -7
  28. package/dist/lib/node-esm/hooks/index.mjs.map +4 -4
  29. package/dist/lib/node-esm/index.mjs +72 -112
  30. package/dist/lib/node-esm/index.mjs.map +4 -4
  31. package/dist/lib/node-esm/meta.json +1 -1
  32. package/dist/lib/node-esm/operations/index.mjs +15 -0
  33. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  34. package/dist/lib/node-esm/types/index.mjs +10 -4
  35. package/dist/types/src/AutomationPlugin.d.ts +2 -1
  36. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  37. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  38. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  39. package/dist/types/src/capabilities/compute-runtime.d.ts +4 -3
  40. package/dist/types/src/capabilities/compute-runtime.d.ts.map +1 -1
  41. package/dist/types/src/capabilities/index.d.ts +6 -5
  42. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  43. package/dist/types/src/capabilities/node.d.ts +3 -0
  44. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  45. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  46. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  47. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  48. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  49. package/dist/types/src/cli/commands/index.d.ts +2 -0
  50. package/dist/types/src/cli/commands/index.d.ts.map +1 -0
  51. package/dist/types/src/cli/commands/trigger/create/index.d.ts +25 -0
  52. package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +1 -0
  53. package/dist/types/src/cli/commands/trigger/create/queue.d.ts +13 -0
  54. package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +1 -0
  55. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts +15 -0
  56. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +1 -0
  57. package/dist/types/src/cli/commands/trigger/create/timer.d.ts +13 -0
  58. package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +1 -0
  59. package/dist/types/src/cli/commands/trigger/index.d.ts +57 -0
  60. package/dist/types/src/cli/commands/trigger/index.d.ts.map +1 -0
  61. package/dist/types/src/cli/commands/trigger/list.d.ts +7 -0
  62. package/dist/types/src/cli/commands/trigger/list.d.ts.map +1 -0
  63. package/dist/types/src/cli/commands/trigger/options.d.ts +11 -0
  64. package/dist/types/src/cli/commands/trigger/options.d.ts.map +1 -0
  65. package/dist/types/src/cli/commands/trigger/remove.d.ts +8 -0
  66. package/dist/types/src/cli/commands/trigger/remove.d.ts.map +1 -0
  67. package/dist/types/src/cli/commands/trigger/update/index.d.ts +28 -0
  68. package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +1 -0
  69. package/dist/types/src/cli/commands/trigger/update/queue.d.ts +12 -0
  70. package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +1 -0
  71. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts +13 -0
  72. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +1 -0
  73. package/dist/types/src/cli/commands/trigger/update/timer.d.ts +11 -0
  74. package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +1 -0
  75. package/dist/types/src/cli/commands/trigger/util.d.ts +46 -0
  76. package/dist/types/src/cli/commands/trigger/util.d.ts.map +1 -0
  77. package/dist/types/src/cli/index.d.ts +2 -0
  78. package/dist/types/src/cli/index.d.ts.map +1 -0
  79. package/dist/types/src/cli/plugin.d.ts +3 -0
  80. package/dist/types/src/cli/plugin.d.ts.map +1 -0
  81. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +4 -5
  82. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  83. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +28 -29
  84. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  85. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  86. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -1
  87. package/dist/types/src/components/FunctionsRegistry/index.d.ts +3 -1
  88. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -1
  89. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +12 -9
  90. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  91. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +6 -3
  92. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  93. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +7 -6
  94. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  95. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +98 -31
  96. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  97. package/dist/types/src/components/index.d.ts +3 -4
  98. package/dist/types/src/components/index.d.ts.map +1 -1
  99. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +4 -0
  100. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -0
  101. package/dist/types/src/containers/AutomationSettings/index.d.ts +2 -0
  102. package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -0
  103. package/dist/types/src/{components → containers/FunctionsContainer}/FunctionsContainer.d.ts +0 -1
  104. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts.map +1 -0
  105. package/dist/types/src/containers/FunctionsContainer/index.d.ts +2 -0
  106. package/dist/types/src/containers/FunctionsContainer/index.d.ts.map +1 -0
  107. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts +6 -0
  108. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -0
  109. package/dist/types/src/containers/TriggerSettings/index.d.ts +3 -0
  110. package/dist/types/src/containers/TriggerSettings/index.d.ts.map +1 -0
  111. package/dist/types/src/containers/index.d.ts +5 -0
  112. package/dist/types/src/containers/index.d.ts.map +1 -0
  113. package/dist/types/src/hooks/index.d.ts +2 -0
  114. package/dist/types/src/hooks/index.d.ts.map +1 -1
  115. package/dist/types/src/hooks/useComputeRuntime.d.ts +7 -0
  116. package/dist/types/src/hooks/useComputeRuntime.d.ts.map +1 -0
  117. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +4 -7
  118. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -1
  119. package/dist/types/src/hooks/useComputeRuntimeService.d.ts +5 -0
  120. package/dist/types/src/hooks/useComputeRuntimeService.d.ts.map +1 -0
  121. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +4 -3
  122. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
  123. package/dist/types/src/index.d.ts +2 -6
  124. package/dist/types/src/index.d.ts.map +1 -1
  125. package/dist/types/src/meta.d.ts +2 -2
  126. package/dist/types/src/meta.d.ts.map +1 -1
  127. package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
  128. package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
  129. package/dist/types/src/operations/definitions.d.ts +19 -0
  130. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  131. package/dist/types/src/operations/index.d.ts +4 -0
  132. package/dist/types/src/operations/index.d.ts.map +1 -0
  133. package/dist/types/src/testing/test-functions.d.ts +204 -3
  134. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  135. package/dist/types/src/translations.d.ts +29 -30
  136. package/dist/types/src/translations.d.ts.map +1 -1
  137. package/dist/types/src/types/capabilities.d.ts +25 -0
  138. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  139. package/dist/types/src/types/events.d.ts +5 -0
  140. package/dist/types/src/types/events.d.ts.map +1 -0
  141. package/dist/types/src/types/index.d.ts +2 -0
  142. package/dist/types/src/types/index.d.ts.map +1 -1
  143. package/dist/types/src/types/schema.d.ts +11 -3
  144. package/dist/types/src/types/schema.d.ts.map +1 -1
  145. package/dist/types/tsconfig.tsbuildinfo +1 -1
  146. package/package.json +89 -50
  147. package/src/AutomationPlugin.tsx +18 -35
  148. package/src/capabilities/app-graph-builder.ts +54 -79
  149. package/src/capabilities/compute-runtime.ts +172 -53
  150. package/src/capabilities/index.ts +9 -7
  151. package/src/capabilities/node.ts +7 -0
  152. package/src/capabilities/operation-handler.ts +16 -0
  153. package/src/capabilities/react-surface.tsx +49 -46
  154. package/src/cli/commands/index.ts +5 -0
  155. package/src/cli/commands/trigger/create/index.ts +14 -0
  156. package/src/cli/commands/trigger/create/queue.ts +90 -0
  157. package/src/cli/commands/trigger/create/subscription.ts +129 -0
  158. package/src/cli/commands/trigger/create/timer.ts +94 -0
  159. package/src/cli/commands/trigger/index.ts +16 -0
  160. package/src/cli/commands/trigger/list.ts +68 -0
  161. package/src/cli/commands/trigger/options.ts +59 -0
  162. package/src/cli/commands/trigger/remove.ts +45 -0
  163. package/src/cli/commands/trigger/update/index.ts +14 -0
  164. package/src/cli/commands/trigger/update/queue.ts +195 -0
  165. package/src/cli/commands/trigger/update/subscription.ts +279 -0
  166. package/src/cli/commands/trigger/update/timer.ts +194 -0
  167. package/src/cli/commands/trigger/util.ts +409 -0
  168. package/src/cli/index.ts +5 -0
  169. package/src/cli/plugin.ts +23 -0
  170. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +10 -8
  171. package/src/components/AutomationPanel/AutomationPanel.tsx +174 -75
  172. package/src/components/FunctionsPanel/FunctionsPanel.tsx +42 -41
  173. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +28 -49
  174. package/src/components/FunctionsRegistry/index.ts +4 -1
  175. package/src/components/TriggerEditor/FunctionInputEditor.tsx +34 -33
  176. package/src/components/TriggerEditor/SpecSelector.tsx +20 -9
  177. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +80 -34
  178. package/src/components/TriggerEditor/TriggerEditor.tsx +90 -48
  179. package/src/components/index.ts +1 -2
  180. package/src/containers/AutomationSettings/AutomationSettings.tsx +28 -0
  181. package/src/containers/AutomationSettings/index.ts +5 -0
  182. package/src/containers/FunctionsContainer/FunctionsContainer.tsx +34 -0
  183. package/src/containers/FunctionsContainer/index.ts +5 -0
  184. package/src/containers/TriggerSettings/TriggerSettings.tsx +26 -0
  185. package/src/containers/TriggerSettings/index.ts +6 -0
  186. package/src/containers/index.ts +9 -0
  187. package/src/hooks/index.ts +3 -0
  188. package/src/hooks/useComputeRuntime.ts +16 -0
  189. package/src/hooks/useComputeRuntimeCallback.ts +8 -44
  190. package/src/hooks/useComputeRuntimeService.ts +24 -0
  191. package/src/hooks/useTriggerRuntimeControls.ts +28 -14
  192. package/src/index.ts +2 -7
  193. package/src/meta.ts +3 -3
  194. package/src/operations/create-trigger-from-template.ts +75 -0
  195. package/src/operations/definitions.ts +28 -0
  196. package/src/operations/index.ts +9 -0
  197. package/src/testing/test-functions.ts +9 -6
  198. package/src/translations.ts +35 -34
  199. package/src/types/capabilities.ts +56 -0
  200. package/src/types/events.ts +11 -0
  201. package/src/types/index.ts +2 -0
  202. package/src/types/schema.ts +5 -5
  203. package/dist/lib/browser/AutomationPanel-7OECLR5N.mjs +0 -11
  204. package/dist/lib/browser/AutomationSettings-KCZISXI6.mjs +0 -68
  205. package/dist/lib/browser/AutomationSettings-KCZISXI6.mjs.map +0 -7
  206. package/dist/lib/browser/FunctionsContainer-MIWEISRR.mjs +0 -151
  207. package/dist/lib/browser/FunctionsContainer-MIWEISRR.mjs.map +0 -7
  208. package/dist/lib/browser/FunctionsPanel-CRW6SJUN.mjs +0 -10
  209. package/dist/lib/browser/app-graph-builder-W7LLC6XW.mjs +0 -81
  210. package/dist/lib/browser/app-graph-builder-W7LLC6XW.mjs.map +0 -7
  211. package/dist/lib/browser/chunk-EPEXQP45.mjs +0 -14
  212. package/dist/lib/browser/chunk-EPEXQP45.mjs.map +0 -7
  213. package/dist/lib/browser/chunk-JW7XSPYW.mjs +0 -267
  214. package/dist/lib/browser/chunk-JW7XSPYW.mjs.map +0 -7
  215. package/dist/lib/browser/chunk-LZQFZO3B.mjs +0 -17
  216. package/dist/lib/browser/chunk-LZQFZO3B.mjs.map +0 -7
  217. package/dist/lib/browser/chunk-NAPXRXTY.mjs +0 -100
  218. package/dist/lib/browser/chunk-NAPXRXTY.mjs.map +0 -7
  219. package/dist/lib/browser/chunk-QKFBHAGN.mjs +0 -184
  220. package/dist/lib/browser/chunk-QKFBHAGN.mjs.map +0 -7
  221. package/dist/lib/browser/chunk-TWWFNOIR.mjs +0 -109
  222. package/dist/lib/browser/chunk-TWWFNOIR.mjs.map +0 -7
  223. package/dist/lib/browser/chunk-XAKZ4ANY.mjs +0 -15
  224. package/dist/lib/browser/chunk-XAKZ4ANY.mjs.map +0 -7
  225. package/dist/lib/browser/chunk-YBPJCY3F.mjs +0 -38
  226. package/dist/lib/browser/chunk-YBPJCY3F.mjs.map +0 -7
  227. package/dist/lib/browser/compute-runtime-EIQTHJFZ.mjs +0 -113
  228. package/dist/lib/browser/compute-runtime-EIQTHJFZ.mjs.map +0 -7
  229. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs +0 -77
  230. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs.map +0 -7
  231. package/dist/lib/browser/react-surface-YQW7WCFW.mjs +0 -64
  232. package/dist/lib/browser/react-surface-YQW7WCFW.mjs.map +0 -7
  233. package/dist/lib/node-esm/AutomationPanel-HCVFNHGQ.mjs +0 -12
  234. package/dist/lib/node-esm/AutomationPanel-HCVFNHGQ.mjs.map +0 -7
  235. package/dist/lib/node-esm/AutomationSettings-UUUPVNUJ.mjs +0 -69
  236. package/dist/lib/node-esm/AutomationSettings-UUUPVNUJ.mjs.map +0 -7
  237. package/dist/lib/node-esm/FunctionsContainer-6OB3JN5O.mjs +0 -152
  238. package/dist/lib/node-esm/FunctionsContainer-6OB3JN5O.mjs.map +0 -7
  239. package/dist/lib/node-esm/FunctionsPanel-RVVCS6VH.mjs +0 -11
  240. package/dist/lib/node-esm/FunctionsPanel-RVVCS6VH.mjs.map +0 -7
  241. package/dist/lib/node-esm/app-graph-builder-SLQOO7GH.mjs +0 -82
  242. package/dist/lib/node-esm/app-graph-builder-SLQOO7GH.mjs.map +0 -7
  243. package/dist/lib/node-esm/chunk-6YRKST6M.mjs +0 -185
  244. package/dist/lib/node-esm/chunk-6YRKST6M.mjs.map +0 -7
  245. package/dist/lib/node-esm/chunk-CEVIVRTY.mjs +0 -19
  246. package/dist/lib/node-esm/chunk-CEVIVRTY.mjs.map +0 -7
  247. package/dist/lib/node-esm/chunk-CPP35BE6.mjs +0 -16
  248. package/dist/lib/node-esm/chunk-CPP35BE6.mjs.map +0 -7
  249. package/dist/lib/node-esm/chunk-ECJKIUBO.mjs.map +0 -7
  250. package/dist/lib/node-esm/chunk-KB7NFEYY.mjs +0 -16
  251. package/dist/lib/node-esm/chunk-KB7NFEYY.mjs.map +0 -7
  252. package/dist/lib/node-esm/chunk-PICJ2REN.mjs +0 -101
  253. package/dist/lib/node-esm/chunk-PICJ2REN.mjs.map +0 -7
  254. package/dist/lib/node-esm/chunk-RVK52XGK.mjs +0 -110
  255. package/dist/lib/node-esm/chunk-RVK52XGK.mjs.map +0 -7
  256. package/dist/lib/node-esm/chunk-W76WUTZY.mjs +0 -268
  257. package/dist/lib/node-esm/chunk-W76WUTZY.mjs.map +0 -7
  258. package/dist/lib/node-esm/compute-runtime-URROOC34.mjs +0 -114
  259. package/dist/lib/node-esm/compute-runtime-URROOC34.mjs.map +0 -7
  260. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs +0 -78
  261. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs.map +0 -7
  262. package/dist/lib/node-esm/react-surface-NNHYNBO6.mjs +0 -65
  263. package/dist/lib/node-esm/react-surface-NNHYNBO6.mjs.map +0 -7
  264. package/dist/types/src/capabilities/capabilities.d.ts +0 -20
  265. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  266. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  267. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  268. package/dist/types/src/components/AutomationSettings.d.ts +0 -5
  269. package/dist/types/src/components/AutomationSettings.d.ts.map +0 -1
  270. package/dist/types/src/components/FunctionsContainer.d.ts.map +0 -1
  271. package/dist/types/src/components/TriggerSettings.d.ts +0 -6
  272. package/dist/types/src/components/TriggerSettings.d.ts.map +0 -1
  273. package/dist/types/src/events.d.ts +0 -4
  274. package/dist/types/src/events.d.ts.map +0 -1
  275. package/src/capabilities/capabilities.ts +0 -41
  276. package/src/capabilities/intent-resolver.ts +0 -72
  277. package/src/components/AutomationSettings.tsx +0 -30
  278. package/src/components/FunctionsContainer.tsx +0 -36
  279. package/src/components/TriggerSettings.tsx +0 -25
  280. package/src/events.ts +0 -11
  281. /package/dist/lib/browser/{AutomationPanel-7OECLR5N.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  282. /package/dist/lib/{browser/FunctionsPanel-CRW6SJUN.mjs.map → node-esm/chunk-HSLMI22Q.mjs.map} +0 -0
@@ -1,114 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationCapabilities
4
- } from "./chunk-KB7NFEYY.mjs";
5
- import "./chunk-CEVIVRTY.mjs";
6
-
7
- // src/capabilities/compute-runtime.ts
8
- import * as BrowserKeyValueStore from "@effect/platform-browser/BrowserKeyValueStore";
9
- import * as Effect from "effect/Effect";
10
- import * as Layer from "effect/Layer";
11
- import * as ManagedRuntime from "effect/ManagedRuntime";
12
- import { Capabilities, contributes } from "@dxos/app-framework";
13
- import { GenericToolkit, makeToolExecutionServiceFromFunctions, makeToolResolverFromFunctions } from "@dxos/assistant";
14
- import { Resource } from "@dxos/context";
15
- import { Query, Ref } from "@dxos/echo";
16
- import { CredentialsService, DatabaseService, QueueService } from "@dxos/functions";
17
- import { FunctionImplementationResolver, FunctionInvocationServiceLayerWithLocalLoopbackExecutor, InvocationTracer, RemoteFunctionExecutionService, TriggerDispatcher } from "@dxos/functions-runtime";
18
- import { TriggerStateStore } from "@dxos/functions-runtime";
19
- import { invariant } from "@dxos/invariant";
20
- import { ClientCapabilities } from "@dxos/plugin-client";
21
- import { PropertiesType } from "@dxos/react-client/echo";
22
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/capabilities/compute-runtime.ts";
23
- var compute_runtime_default = (async (context) => {
24
- const provider = await new ComputeRuntimeProviderImpl(context).open();
25
- return contributes(AutomationCapabilities.ComputeRuntime, provider, async () => {
26
- await provider.close();
27
- });
28
- });
29
- var ComputeRuntimeProviderImpl = class extends Resource {
30
- #runtimes = /* @__PURE__ */ new Map();
31
- #context;
32
- constructor(context) {
33
- super();
34
- this.#context = context;
35
- }
36
- async _open() {
37
- }
38
- async _close() {
39
- await Promise.all(Array.from(this.#runtimes.values()).map((rt) => rt.dispose()));
40
- this.#runtimes.clear();
41
- }
42
- getRuntime(spaceId) {
43
- if (this.#runtimes.has(spaceId)) {
44
- return this.#runtimes.get(spaceId);
45
- }
46
- const layer = Layer.unwrapEffect(Effect.gen(this, function* () {
47
- const client = this.#context.getCapability(ClientCapabilities.Client);
48
- const serviceLayer = this.#context.getCapability(Capabilities.AiServiceLayer) ?? Layer.die("AiService not found");
49
- const functions = this.#context.getCapabilities(Capabilities.Functions).flat();
50
- const toolkits = this.#context.getCapabilities(Capabilities.Toolkit);
51
- const mergedToolkit = GenericToolkit.merge(...toolkits);
52
- const toolkit = mergedToolkit.toolkit;
53
- const toolkitLayer = mergedToolkit.layer;
54
- const space = client.spaces.get(spaceId);
55
- invariant(space, void 0, {
56
- F: __dxlog_file,
57
- L: 72,
58
- S: this,
59
- A: [
60
- "space",
61
- ""
62
- ]
63
- });
64
- yield* Effect.promise(() => space.waitUntilReady());
65
- return Layer.mergeAll(TriggerDispatcher.layer({
66
- timeControl: "natural"
67
- })).pipe(Layer.provideMerge(Layer.mergeAll(InvocationTracerLive, TriggerStateStore.layerKv.pipe(Layer.provide(BrowserKeyValueStore.layerLocalStorage)), makeToolResolverFromFunctions(functions, toolkit), makeToolExecutionServiceFromFunctions(toolkit, toolkitLayer))), Layer.provideMerge(Layer.mergeAll(FunctionInvocationServiceLayerWithLocalLoopbackExecutor.pipe(Layer.provideMerge(FunctionImplementationResolver.layerTest({
68
- functions
69
- })), Layer.provideMerge(RemoteFunctionExecutionService.fromClient(
70
- client,
71
- // If agent is not enabled do not provide spaceId because space context will be unavailable on EDGE.
72
- client.config.get("runtime.client.edgeFeatures.agents") ? spaceId : void 0
73
- )), Layer.provideMerge(serviceLayer), Layer.provideMerge(CredentialsService.layerFromDatabase()), Layer.provideMerge(space ? DatabaseService.layer(space.db) : DatabaseService.notAvailable), Layer.provideMerge(space ? QueueService.layer(space.queues) : QueueService.notAvailable)))));
74
- }));
75
- const runtime = ManagedRuntime.make(layer);
76
- this.#runtimes.set(spaceId, runtime);
77
- return runtime;
78
- }
79
- };
80
- var InvocationTracerLive = Layer.unwrapEffect(Effect.gen(function* () {
81
- const { objects: [properties] } = yield* DatabaseService.runQuery(Query.type(PropertiesType));
82
- invariant(properties, void 0, {
83
- F: __dxlog_file,
84
- L: 118,
85
- S: this,
86
- A: [
87
- "properties",
88
- ""
89
- ]
90
- });
91
- if (!properties.invocationTraceQueue) {
92
- const queue2 = yield* QueueService.createQueue({
93
- subspaceTag: "trace"
94
- });
95
- properties.invocationTraceQueue = Ref.fromDXN(queue2.dxn);
96
- }
97
- const queue = properties.invocationTraceQueue.target;
98
- invariant(queue, void 0, {
99
- F: __dxlog_file,
100
- L: 124,
101
- S: this,
102
- A: [
103
- "queue",
104
- ""
105
- ]
106
- });
107
- return InvocationTracer.layerLive({
108
- invocationTraceQueue: queue
109
- });
110
- }));
111
- export {
112
- compute_runtime_default as default
113
- };
114
- //# sourceMappingURL=compute-runtime-URROOC34.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/compute-runtime.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as BrowserKeyValueStore from '@effect/platform-browser/BrowserKeyValueStore';\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\nimport * as ManagedRuntime from 'effect/ManagedRuntime';\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { GenericToolkit, makeToolExecutionServiceFromFunctions, makeToolResolverFromFunctions } from '@dxos/assistant';\nimport { Resource } from '@dxos/context';\nimport { Query, Ref } from '@dxos/echo';\nimport { CredentialsService, DatabaseService, QueueService } from '@dxos/functions';\nimport {\n FunctionImplementationResolver,\n FunctionInvocationServiceLayerWithLocalLoopbackExecutor,\n InvocationTracer,\n RemoteFunctionExecutionService,\n TriggerDispatcher,\n} from '@dxos/functions-runtime';\nimport { TriggerStateStore } from '@dxos/functions-runtime';\nimport { invariant } from '@dxos/invariant';\nimport { type SpaceId } from '@dxos/keys';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { PropertiesType } from '@dxos/react-client/echo';\n\nimport { AutomationCapabilities } from './capabilities';\n\nexport default async (context: PluginContext) => {\n const provider = await new ComputeRuntimeProviderImpl(context).open();\n return contributes(AutomationCapabilities.ComputeRuntime, provider, async () => {\n await provider.close();\n });\n};\n\nclass ComputeRuntimeProviderImpl extends Resource implements AutomationCapabilities.ComputeRuntimeProvider {\n readonly #runtimes = new Map<SpaceId, AutomationCapabilities.ComputeRuntime>();\n readonly #context: PluginContext;\n\n constructor(context: PluginContext) {\n super();\n this.#context = context;\n }\n\n protected override async _open() {}\n\n protected override async _close() {\n await Promise.all(Array.from(this.#runtimes.values()).map((rt) => rt.dispose()));\n this.#runtimes.clear();\n }\n\n getRuntime(spaceId: SpaceId): AutomationCapabilities.ComputeRuntime {\n if (this.#runtimes.has(spaceId)) {\n return this.#runtimes.get(spaceId)!;\n }\n\n const layer = Layer.unwrapEffect(\n Effect.gen(this, function* () {\n const client = this.#context.getCapability(ClientCapabilities.Client);\n const serviceLayer =\n this.#context.getCapability(Capabilities.AiServiceLayer) ?? Layer.die('AiService not found');\n\n // TODO(dmaretskyi): Make these reactive.\n const functions = this.#context.getCapabilities(Capabilities.Functions).flat();\n const toolkits = this.#context.getCapabilities(Capabilities.Toolkit);\n const mergedToolkit = GenericToolkit.merge(...toolkits);\n const toolkit = mergedToolkit.toolkit;\n const toolkitLayer = mergedToolkit.layer;\n\n const space = client.spaces.get(spaceId);\n invariant(space);\n yield* Effect.promise(() => space.waitUntilReady());\n\n return Layer.mergeAll(TriggerDispatcher.layer({ timeControl: 'natural' })).pipe(\n Layer.provideMerge(\n Layer.mergeAll(\n InvocationTracerLive,\n TriggerStateStore.layerKv.pipe(Layer.provide(BrowserKeyValueStore.layerLocalStorage)),\n makeToolResolverFromFunctions(functions, toolkit),\n makeToolExecutionServiceFromFunctions(toolkit, toolkitLayer),\n ),\n ),\n Layer.provideMerge(\n Layer.mergeAll(\n FunctionInvocationServiceLayerWithLocalLoopbackExecutor.pipe(\n Layer.provideMerge(FunctionImplementationResolver.layerTest({ functions })),\n Layer.provideMerge(\n RemoteFunctionExecutionService.fromClient(\n client,\n // If agent is not enabled do not provide spaceId because space context will be unavailable on EDGE.\n client.config.get('runtime.client.edgeFeatures.agents') ? spaceId : undefined,\n ),\n ),\n Layer.provideMerge(serviceLayer),\n Layer.provideMerge(CredentialsService.layerFromDatabase()),\n Layer.provideMerge(space ? DatabaseService.layer(space.db) : DatabaseService.notAvailable),\n Layer.provideMerge(space ? QueueService.layer(space.queues) : QueueService.notAvailable),\n ),\n ),\n ),\n );\n }),\n );\n\n const runtime = ManagedRuntime.make(layer);\n this.#runtimes.set(spaceId, runtime);\n\n return runtime;\n }\n}\n\nconst InvocationTracerLive = Layer.unwrapEffect(\n Effect.gen(function* () {\n const {\n objects: [properties],\n } = yield* DatabaseService.runQuery(Query.type(PropertiesType));\n invariant(properties);\n if (!properties.invocationTraceQueue) {\n const queue = yield* QueueService.createQueue({ subspaceTag: 'trace' });\n properties.invocationTraceQueue = Ref.fromDXN(queue.dxn);\n }\n const queue = properties.invocationTraceQueue.target;\n invariant(queue);\n return InvocationTracer.layerLive({ invocationTraceQueue: queue });\n }),\n);\n"],
5
- "mappings": "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",
6
- "names": ["BrowserKeyValueStore", "Effect", "Layer", "ManagedRuntime", "Capabilities", "contributes", "GenericToolkit", "makeToolExecutionServiceFromFunctions", "makeToolResolverFromFunctions", "Resource", "Query", "Ref", "CredentialsService", "DatabaseService", "QueueService", "FunctionImplementationResolver", "FunctionInvocationServiceLayerWithLocalLoopbackExecutor", "InvocationTracer", "RemoteFunctionExecutionService", "TriggerDispatcher", "TriggerStateStore", "invariant", "ClientCapabilities", "PropertiesType", "context", "provider", "ComputeRuntimeProviderImpl", "open", "contributes", "AutomationCapabilities", "ComputeRuntime", "close", "Resource", "Map", "_open", "_close", "Promise", "all", "Array", "from", "values", "map", "rt", "dispose", "clear", "getRuntime", "spaceId", "has", "get", "layer", "unwrapEffect", "gen", "client", "getCapability", "ClientCapabilities", "Client", "serviceLayer", "Capabilities", "AiServiceLayer", "die", "functions", "getCapabilities", "Functions", "flat", "toolkits", "Toolkit", "mergedToolkit", "GenericToolkit", "merge", "toolkit", "toolkitLayer", "space", "spaces", "invariant", "promise", "waitUntilReady", "mergeAll", "TriggerDispatcher", "timeControl", "pipe", "provideMerge", "InvocationTracerLive", "TriggerStateStore", "layerKv", "provide", "layerLocalStorage", "makeToolResolverFromFunctions", "makeToolExecutionServiceFromFunctions", "FunctionInvocationServiceLayerWithLocalLoopbackExecutor", "FunctionImplementationResolver", "layerTest", "RemoteFunctionExecutionService", "fromClient", "config", "undefined", "CredentialsService", "layerFromDatabase", "DatabaseService", "db", "notAvailable", "QueueService", "queues", "runtime", "make", "set", "objects", "properties", "runQuery", "Query", "type", "PropertiesType", "invocationTraceQueue", "queue", "createQueue", "subspaceTag", "Ref", "fromDXN", "dxn", "target", "InvocationTracer", "layerLive"]
7
- }
@@ -1,78 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationAction
4
- } from "./chunk-ECJKIUBO.mjs";
5
- import "./chunk-CEVIVRTY.mjs";
6
-
7
- // src/capabilities/intent-resolver.ts
8
- import { Capabilities, LayoutAction, contributes, createIntent, createResolver } from "@dxos/app-framework";
9
- import { Ref } from "@dxos/echo";
10
- import { Function, Script, Trigger } from "@dxos/functions";
11
- import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
12
- import { SpaceAction } from "@dxos/plugin-space/types";
13
- import { Filter } from "@dxos/react-client/echo";
14
- var intent_resolver_default = ((context) => contributes(Capabilities.IntentResolver, [
15
- createResolver({
16
- intent: AutomationAction.CreateTriggerFromTemplate,
17
- resolve: async ({ space, template, enabled = false, scriptName, input }) => {
18
- const trigger = Trigger.make({
19
- enabled,
20
- input
21
- });
22
- if (scriptName) {
23
- const { objects: [script] } = await space.db.query(Filter.type(Script.Script, {
24
- name: scriptName
25
- })).run();
26
- if (script) {
27
- const { objects: [fn] } = await space.db.query(Filter.type(Function.Function, {
28
- source: Ref.make(script)
29
- })).run();
30
- if (fn) {
31
- trigger.function = Ref.make(fn);
32
- }
33
- }
34
- }
35
- switch (template.type) {
36
- case "timer": {
37
- trigger.spec = {
38
- kind: "timer",
39
- cron: template.cron
40
- };
41
- break;
42
- }
43
- case "queue": {
44
- trigger.spec = {
45
- kind: "queue",
46
- queue: template.queueDXN.toString()
47
- };
48
- break;
49
- }
50
- default: {
51
- break;
52
- }
53
- }
54
- return {
55
- intents: [
56
- createIntent(SpaceAction.AddObject, {
57
- object: trigger,
58
- target: space,
59
- hidden: true
60
- }),
61
- createIntent(LayoutAction.Open, {
62
- part: "main",
63
- subject: [
64
- `automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`
65
- ],
66
- options: {
67
- workspace: space.id
68
- }
69
- })
70
- ]
71
- };
72
- }
73
- })
74
- ]));
75
- export {
76
- intent_resolver_default as default
77
- };
78
- //# sourceMappingURL=intent-resolver-KDRYB5BC.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n LayoutAction,\n type PluginContext,\n contributes,\n createIntent,\n createResolver,\n} from '@dxos/app-framework';\nimport { Ref } from '@dxos/echo';\nimport { Function, Script, Trigger } from '@dxos/functions';\nimport { type DXN } from '@dxos/keys';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter } from '@dxos/react-client/echo';\n\nimport { AutomationAction } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: AutomationAction.CreateTriggerFromTemplate,\n resolve: async ({ space, template, enabled = false, scriptName, input }) => {\n const trigger = Trigger.make({ enabled, input });\n\n // TODO(wittjosiah): Factor out function lookup by script name?\n if (scriptName) {\n const {\n objects: [script],\n } = await space.db.query(Filter.type(Script.Script, { name: scriptName })).run();\n if (script) {\n const {\n objects: [fn],\n } = await space.db.query(Filter.type(Function.Function, { source: Ref.make(script) })).run();\n if (fn) {\n trigger.function = Ref.make(fn);\n }\n }\n }\n\n switch (template.type) {\n case 'timer': {\n trigger.spec = { kind: 'timer', cron: template.cron };\n break;\n }\n case 'queue': {\n trigger.spec = { kind: 'queue', queue: (template.queueDXN as DXN).toString() };\n break;\n }\n default: {\n break;\n }\n }\n\n return {\n intents: [\n createIntent(SpaceAction.AddObject, { object: trigger, target: space, hidden: true }),\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: [`automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`],\n options: {\n workspace: space.id,\n },\n }),\n ],\n };\n },\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;AAIA,SACEA,cACAC,cAEAC,aACAC,cACAC,sBACK;AACP,SAASC,WAAW;AACpB,SAASC,UAAUC,QAAQC,eAAe;AAE1C,SAASC,iCAAiC;AAC1C,SAASC,mBAAmB;AAC5B,SAASC,cAAc;AAIvB,IAAA,2BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,iBAAiBC;IACzBC,SAAS,OAAO,EAAEC,OAAOC,UAAUC,UAAU,OAAOC,YAAYC,MAAK,MAAE;AACrE,YAAMC,UAAUC,QAAQC,KAAK;QAAEL;QAASE;MAAM,CAAA;AAG9C,UAAID,YAAY;AACd,cAAM,EACJK,SAAS,CAACC,MAAAA,EAAO,IACf,MAAMT,MAAMU,GAAGC,MAAMC,OAAOC,KAAKC,OAAOA,QAAQ;UAAEC,MAAMZ;QAAW,CAAA,CAAA,EAAIa,IAAG;AAC9E,YAAIP,QAAQ;AACV,gBAAM,EACJD,SAAS,CAACS,EAAAA,EAAG,IACX,MAAMjB,MAAMU,GAAGC,MAAMC,OAAOC,KAAKK,SAASA,UAAU;YAAEC,QAAQC,IAAIb,KAAKE,MAAAA;UAAQ,CAAA,CAAA,EAAIO,IAAG;AAC1F,cAAIC,IAAI;AACNZ,oBAAQgB,WAAWD,IAAIb,KAAKU,EAAAA;UAC9B;QACF;MACF;AAEA,cAAQhB,SAASY,MAAI;QACnB,KAAK,SAAS;AACZR,kBAAQiB,OAAO;YAAEC,MAAM;YAASC,MAAMvB,SAASuB;UAAK;AACpD;QACF;QACA,KAAK,SAAS;AACZnB,kBAAQiB,OAAO;YAAEC,MAAM;YAASE,OAAQxB,SAASyB,SAAiBC,SAAQ;UAAG;AAC7E;QACF;QACA,SAAS;AACP;QACF;MACF;AAEA,aAAO;QACLC,SAAS;UACPC,aAAaC,YAAYC,WAAW;YAAEC,QAAQ3B;YAAS4B,QAAQjC;YAAOkC,QAAQ;UAAK,CAAA;UACnFL,aAAaM,aAAaC,MAAM;YAC9BC,MAAM;YACNC,SAAS;cAAC,sBAAsBC,yBAAAA,GAA4BvC,MAAMwC,EAAE;;YACpEC,SAAS;cACPC,WAAW1C,MAAMwC;YACnB;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;CACD;",
6
- "names": ["Capabilities", "LayoutAction", "contributes", "createIntent", "createResolver", "Ref", "Function", "Script", "Trigger", "ATTENDABLE_PATH_SEPARATOR", "SpaceAction", "Filter", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "AutomationAction", "CreateTriggerFromTemplate", "resolve", "space", "template", "enabled", "scriptName", "input", "trigger", "Trigger", "make", "objects", "script", "db", "query", "Filter", "type", "Script", "name", "run", "fn", "Function", "source", "Ref", "function", "spec", "kind", "cron", "queue", "queueDXN", "toString", "intents", "createIntent", "SpaceAction", "AddObject", "object", "target", "hidden", "LayoutAction", "Open", "part", "subject", "ATTENDABLE_PATH_SEPARATOR", "id", "options", "workspace"]
7
- }
@@ -1,65 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationSettings,
4
- FunctionsContainer
5
- } from "./chunk-CPP35BE6.mjs";
6
- import "./chunk-W76WUTZY.mjs";
7
- import {
8
- meta
9
- } from "./chunk-CEVIVRTY.mjs";
10
-
11
- // src/capabilities/react-surface.tsx
12
- import React from "react";
13
- import { Capabilities, contributes, createSurface } from "@dxos/app-framework";
14
- import { useLayout } from "@dxos/app-framework/react";
15
- import { Obj } from "@dxos/echo";
16
- import { getSpace, parseId, useSpace } from "@dxos/react-client/echo";
17
- var react_surface_default = (() => contributes(Capabilities.ReactSurface, [
18
- createSurface({
19
- id: `${meta.id}/space-settings-functions`,
20
- role: "article",
21
- filter: (data) => data.subject === `${meta.id}/space-settings-functions`,
22
- component: () => {
23
- const layout = useLayout();
24
- const { spaceId } = parseId(layout.workspace);
25
- const space = useSpace(spaceId);
26
- if (!space) {
27
- return null;
28
- }
29
- return /* @__PURE__ */ React.createElement(FunctionsContainer, {
30
- space
31
- });
32
- }
33
- }),
34
- createSurface({
35
- id: `${meta.id}/space-settings-automation`,
36
- role: "article",
37
- filter: (data) => data.subject === `${meta.id}/space-settings-automation`,
38
- component: () => {
39
- const layout = useLayout();
40
- const { spaceId } = parseId(layout.workspace);
41
- const space = useSpace(spaceId);
42
- if (!space) {
43
- return null;
44
- }
45
- return /* @__PURE__ */ React.createElement(AutomationSettings, {
46
- space
47
- });
48
- }
49
- }),
50
- createSurface({
51
- id: `${meta.id}/companion/automation`,
52
- role: "article",
53
- filter: (data) => Obj.isObject(data.companionTo) && data.subject === "automation",
54
- component: ({ data }) => {
55
- return /* @__PURE__ */ React.createElement(AutomationSettings, {
56
- space: getSpace(data.companionTo),
57
- object: data.companionTo
58
- });
59
- }
60
- })
61
- ]));
62
- export {
63
- react_surface_default as default
64
- };
65
- //# sourceMappingURL=react-surface-NNHYNBO6.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { useLayout } from '@dxos/app-framework/react';\nimport { Obj } from '@dxos/echo';\nimport { getSpace, parseId, useSpace } from '@dxos/react-client/echo';\n\nimport { AutomationSettings, FunctionsContainer } from '../components';\nimport { meta } from '../meta';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/space-settings-functions`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/space-settings-functions`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space) {\n return null;\n }\n\n return <FunctionsContainer space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/space-settings-automation`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/space-settings-automation`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space) {\n return null;\n }\n\n return <AutomationSettings space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/companion/automation`,\n role: 'article',\n filter: (data): data is { companionTo: Obj.Any; subject: 'automation' } =>\n Obj.isObject(data.companionTo) && data.subject === 'automation',\n component: ({ data }) => {\n return <AutomationSettings space={getSpace(data.companionTo)!} object={data.companionTo} />;\n },\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,iBAAiB;AAC1B,SAASC,WAAW;AACpB,SAASC,UAAUC,SAASC,gBAAgB;AAK5C,IAAA,yBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAsCA,KAAKC,YAAY,GAAGJ,KAAKD,EAAE;IAC1EM,WAAW,MAAA;AACT,YAAMC,SAASC,UAAAA;AACf,YAAM,EAAEC,QAAO,IAAKC,QAAQH,OAAOI,SAAS;AAC5C,YAAMC,QAAQC,SAASJ,OAAAA;AACvB,UAAI,CAACG,OAAO;AACV,eAAO;MACT;AAEA,aAAO,sBAAA,cAACE,oBAAAA;QAAmBF;;IAC7B;EACF,CAAA;EACAb,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAsCA,KAAKC,YAAY,GAAGJ,KAAKD,EAAE;IAC1EM,WAAW,MAAA;AACT,YAAMC,SAASC,UAAAA;AACf,YAAM,EAAEC,QAAO,IAAKC,QAAQH,OAAOI,SAAS;AAC5C,YAAMC,QAAQC,SAASJ,OAAAA;AACvB,UAAI,CAACG,OAAO;AACV,eAAO;MACT;AAEA,aAAO,sBAAA,cAACG,oBAAAA;QAAmBH;;IAC7B;EACF,CAAA;EACAb,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SACPY,IAAIC,SAASb,KAAKc,WAAW,KAAKd,KAAKC,YAAY;IACrDC,WAAW,CAAC,EAAEF,KAAI,MAAE;AAClB,aAAO,sBAAA,cAACW,oBAAAA;QAAmBH,OAAOO,SAASf,KAAKc,WAAW;QAAIE,QAAQhB,KAAKc;;IAC9E;EACF,CAAA;CACD;",
6
- "names": ["React", "Capabilities", "contributes", "createSurface", "useLayout", "Obj", "getSpace", "parseId", "useSpace", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "subject", "component", "layout", "useLayout", "spaceId", "parseId", "workspace", "space", "useSpace", "FunctionsContainer", "AutomationSettings", "Obj", "isObject", "companionTo", "getSpace", "object"]
7
- }
@@ -1,20 +0,0 @@
1
- import type * as ManagedRuntime from 'effect/ManagedRuntime';
2
- import { type AiService, type ToolExecutionService, type ToolResolverService } from '@dxos/ai';
3
- import type { CredentialsService, DatabaseService, FunctionInvocationService, QueueService } from '@dxos/functions';
4
- import type { InvocationTracer, TriggerDispatcher, TriggerStateStore } from '@dxos/functions-runtime';
5
- import type { SpaceId } from '@dxos/keys';
6
- export declare namespace AutomationCapabilities {
7
- /**
8
- * Service stack for executing agents, functions, and triggers.
9
- */
10
- type ComputeServices = TriggerDispatcher | AiService.AiService | DatabaseService | QueueService | CredentialsService | FunctionInvocationService | InvocationTracer | TriggerStateStore | ToolResolverService | ToolExecutionService;
11
- type ComputeRuntime = ManagedRuntime.ManagedRuntime<AutomationCapabilities.ComputeServices, never>;
12
- interface ComputeRuntimeProvider {
13
- getRuntime(spaceId: SpaceId): ComputeRuntime;
14
- }
15
- /**
16
- * Runtime for executing agents, functions, and triggers.
17
- */
18
- const ComputeRuntime: import("@dxos/app-framework").InterfaceDef<ComputeRuntimeProvider>;
19
- }
20
- //# sourceMappingURL=capabilities.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/capabilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,cAAc,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/F,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpH,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACtG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C,yBAAiB,sBAAsB,CAAC;IACtC;;OAEG;IACH,KAAY,eAAe,GACvB,iBAAiB,GACjB,SAAS,CAAC,SAAS,GACnB,eAAe,GACf,YAAY,GACZ,kBAAkB,GAClB,yBAAyB,GACzB,gBAAgB,GAChB,iBAAiB,GAEjB,mBAAmB,GACnB,oBAAoB,CAAC;IAEzB,KAAY,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,sBAAsB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAC1G,UAAiB,sBAAsB;QACrC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAAC;KAC9C;IAED;;OAEG;IACI,MAAM,cAAc,oEAAoF,CAAC;CACjH"}
@@ -1,4 +0,0 @@
1
- import { Capabilities, type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.IntentResolver>>;
3
- export default _default;
4
- //# sourceMappingURL=intent-resolver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,YAAY,EAEZ,KAAK,aAAa,EAInB,MAAM,qBAAqB,CAAC;yBAUb,SAAS,aAAa;AAAtC,wBAkDK"}
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import { type AutomationPanelProps } from './AutomationPanel';
3
- export declare const AutomationSettings: (props: AutomationPanelProps) => React.JSX.Element;
4
- export default AutomationSettings;
5
- //# sourceMappingURL=AutomationSettings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AutomationSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/AutomationSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG/E,eAAO,MAAM,kBAAkB,GAAI,OAAO,oBAAoB,sBAa7D,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionsContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/FunctionsContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AASrD,eAAO,MAAM,kBAAkB,GAAI,WAAW;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,sBAkB7D,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- import { type Space } from '@dxos/react-client/echo';
3
- export declare const TriggersSettings: ({ space }: {
4
- space: Space;
5
- }) => React.JSX.Element;
6
- //# sourceMappingURL=TriggerSettings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TriggerSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/TriggerSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAOrD,eAAO,MAAM,gBAAgB,GAAI,WAAW;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,sBAW3D,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare namespace AutomationEvents {
2
- const ComputeRuntimeReady: import("@dxos/app-framework").ActivationEvent;
3
- }
4
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/events.ts"],"names":[],"mappings":"AAQA,yBAAiB,gBAAgB,CAAC;IACzB,MAAM,mBAAmB,+CAAwD,CAAC;CAC1F"}
@@ -1,41 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import type * as ManagedRuntime from 'effect/ManagedRuntime';
6
-
7
- import { type AiService, type ToolExecutionService, type ToolResolverService } from '@dxos/ai';
8
- import { defineCapability } from '@dxos/app-framework';
9
- import type { CredentialsService, DatabaseService, FunctionInvocationService, QueueService } from '@dxos/functions';
10
- import type { InvocationTracer, TriggerDispatcher, TriggerStateStore } from '@dxos/functions-runtime';
11
- import type { SpaceId } from '@dxos/keys';
12
-
13
- import { meta } from '../meta';
14
-
15
- export namespace AutomationCapabilities {
16
- /**
17
- * Service stack for executing agents, functions, and triggers.
18
- */
19
- export type ComputeServices =
20
- | TriggerDispatcher
21
- | AiService.AiService
22
- | DatabaseService
23
- | QueueService
24
- | CredentialsService
25
- | FunctionInvocationService
26
- | InvocationTracer
27
- | TriggerStateStore
28
- // TODO(dmaretskyi): Those should be provided at AI-chat call site.
29
- | ToolResolverService
30
- | ToolExecutionService;
31
-
32
- export type ComputeRuntime = ManagedRuntime.ManagedRuntime<AutomationCapabilities.ComputeServices, never>;
33
- export interface ComputeRuntimeProvider {
34
- getRuntime(spaceId: SpaceId): ComputeRuntime;
35
- }
36
-
37
- /**
38
- * Runtime for executing agents, functions, and triggers.
39
- */
40
- export const ComputeRuntime = defineCapability<ComputeRuntimeProvider>(`${meta.id}/capability/compute-runtime`);
41
- }
@@ -1,72 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import {
6
- Capabilities,
7
- LayoutAction,
8
- type PluginContext,
9
- contributes,
10
- createIntent,
11
- createResolver,
12
- } from '@dxos/app-framework';
13
- import { Ref } from '@dxos/echo';
14
- import { Function, Script, Trigger } from '@dxos/functions';
15
- import { type DXN } from '@dxos/keys';
16
- import { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';
17
- import { SpaceAction } from '@dxos/plugin-space/types';
18
- import { Filter } from '@dxos/react-client/echo';
19
-
20
- import { AutomationAction } from '../types';
21
-
22
- export default (context: PluginContext) =>
23
- contributes(Capabilities.IntentResolver, [
24
- createResolver({
25
- intent: AutomationAction.CreateTriggerFromTemplate,
26
- resolve: async ({ space, template, enabled = false, scriptName, input }) => {
27
- const trigger = Trigger.make({ enabled, input });
28
-
29
- // TODO(wittjosiah): Factor out function lookup by script name?
30
- if (scriptName) {
31
- const {
32
- objects: [script],
33
- } = await space.db.query(Filter.type(Script.Script, { name: scriptName })).run();
34
- if (script) {
35
- const {
36
- objects: [fn],
37
- } = await space.db.query(Filter.type(Function.Function, { source: Ref.make(script) })).run();
38
- if (fn) {
39
- trigger.function = Ref.make(fn);
40
- }
41
- }
42
- }
43
-
44
- switch (template.type) {
45
- case 'timer': {
46
- trigger.spec = { kind: 'timer', cron: template.cron };
47
- break;
48
- }
49
- case 'queue': {
50
- trigger.spec = { kind: 'queue', queue: (template.queueDXN as DXN).toString() };
51
- break;
52
- }
53
- default: {
54
- break;
55
- }
56
- }
57
-
58
- return {
59
- intents: [
60
- createIntent(SpaceAction.AddObject, { object: trigger, target: space, hidden: true }),
61
- createIntent(LayoutAction.Open, {
62
- part: 'main',
63
- subject: [`automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`],
64
- options: {
65
- workspace: space.id,
66
- },
67
- }),
68
- ],
69
- };
70
- },
71
- }),
72
- ]);
@@ -1,30 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { useTranslation } from '@dxos/react-ui';
8
- import { ControlPage, ControlSection } from '@dxos/react-ui-form';
9
-
10
- import { meta } from '../meta';
11
-
12
- import { AutomationPanel, type AutomationPanelProps } from './AutomationPanel';
13
- import { TriggersSettings } from './TriggerSettings';
14
-
15
- export const AutomationSettings = (props: AutomationPanelProps) => {
16
- const { t } = useTranslation(meta.id);
17
- return (
18
- <ControlPage>
19
- <ControlSection
20
- title={t('automation verbose label', { ns: meta.id })}
21
- description={t('automation description', { ns: meta.id })}
22
- >
23
- <AutomationPanel {...props} />
24
- <TriggersSettings space={props.space} />
25
- </ControlSection>
26
- </ControlPage>
27
- );
28
- };
29
-
30
- export default AutomationSettings;
@@ -1,36 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { type Space } from '@dxos/react-client/echo';
8
- import { useTranslation } from '@dxos/react-ui';
9
- import { ControlPage, ControlSection } from '@dxos/react-ui-form';
10
-
11
- import { meta } from '../meta';
12
-
13
- import { FunctionsPanel } from './FunctionsPanel';
14
- import { FunctionsRegistry } from './FunctionsRegistry';
15
-
16
- export const FunctionsContainer = ({ space }: { space: Space }) => {
17
- const { t } = useTranslation(meta.id);
18
- return (
19
- <ControlPage>
20
- <ControlSection
21
- title={t('functions verbose label', { ns: meta.id })}
22
- description={t('functions description', { ns: meta.id })}
23
- >
24
- <FunctionsPanel space={space} />
25
- </ControlSection>
26
- <ControlSection
27
- title={t('functions registry verbose label', { ns: meta.id })}
28
- description={t('functions registry description', { ns: meta.id })}
29
- >
30
- <FunctionsRegistry space={space} />
31
- </ControlSection>
32
- </ControlPage>
33
- );
34
- };
35
-
36
- export default FunctionsContainer;
@@ -1,25 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { type Space } from '@dxos/react-client/echo';
8
- import { Input, useTranslation } from '@dxos/react-ui';
9
- import { ControlItemInput } from '@dxos/react-ui-form';
10
-
11
- import { useTriggerRuntimeControls } from '../hooks';
12
- import { meta } from '../meta';
13
-
14
- export const TriggersSettings = ({ space }: { space: Space }) => {
15
- const { triggers, isRunning, start, stop } = useTriggerRuntimeControls(space);
16
- const { t } = useTranslation(meta.id);
17
-
18
- return (
19
- <div className='container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]'>
20
- <ControlItemInput title={t('runtime label')} description={t('runtime description')}>
21
- <Input.Switch classNames='justify-self-end' checked={isRunning} onCheckedChange={isRunning ? stop : start} />
22
- </ControlItemInput>
23
- </div>
24
- );
25
- };
package/src/events.ts DELETED
@@ -1,11 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { defineEvent } from '@dxos/app-framework';
6
-
7
- import { meta } from './meta';
8
-
9
- export namespace AutomationEvents {
10
- export const ComputeRuntimeReady = defineEvent(`${meta.id}/event/compute-runtime-ready`);
11
- }