@dxos/plugin-automation 0.8.4-main.fffef41 → 0.9.0

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 (407) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +428 -0
  3. package/README.md +1 -1
  4. package/dist/lib/neutral/AutomationArticle-GN36NUX2.mjs +17 -0
  5. package/dist/lib/neutral/AutomationCompanion-M26WR6VP.mjs +165 -0
  6. package/dist/lib/neutral/AutomationCompanion-M26WR6VP.mjs.map +7 -0
  7. package/dist/lib/neutral/AutomationPlugin.mjs +10 -0
  8. package/dist/lib/neutral/AutomationPlugin.node.mjs +1132 -0
  9. package/dist/lib/neutral/AutomationPlugin.node.mjs.map +7 -0
  10. package/dist/lib/neutral/AutomationPlugin.workerd.mjs +36 -0
  11. package/dist/lib/neutral/AutomationPlugin.workerd.mjs.map +7 -0
  12. package/dist/lib/neutral/AutomationSettings-YXUJDRQA.mjs +27 -0
  13. package/dist/lib/neutral/AutomationSettings-YXUJDRQA.mjs.map +7 -0
  14. package/dist/lib/neutral/TriggerSettings-XCHIZPOR.mjs +9 -0
  15. package/dist/lib/neutral/app-graph-builder-BTTHS4VK.mjs +102 -0
  16. package/dist/lib/neutral/app-graph-builder-BTTHS4VK.mjs.map +7 -0
  17. package/dist/lib/neutral/capabilities/index.mjs +25 -0
  18. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  19. package/dist/lib/neutral/capabilities/node.mjs +19 -0
  20. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  21. package/dist/lib/neutral/chunk-24JKY6NU.mjs +21 -0
  22. package/dist/lib/neutral/chunk-24JKY6NU.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-2JP77CMN.mjs +42 -0
  24. package/dist/lib/neutral/chunk-2JP77CMN.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-DUGOIM7G.mjs +36 -0
  26. package/dist/lib/neutral/chunk-DUGOIM7G.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-FE7YFBX7.mjs +486 -0
  28. package/dist/lib/neutral/chunk-FE7YFBX7.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-GARB7S5R.mjs +157 -0
  30. package/dist/lib/neutral/chunk-GARB7S5R.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-HPUHQ3L6.mjs +64 -0
  32. package/dist/lib/neutral/chunk-HPUHQ3L6.mjs.map +7 -0
  33. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  34. package/dist/lib/neutral/chunk-SONGOJRB.mjs +8 -0
  35. package/dist/lib/neutral/chunk-SONGOJRB.mjs.map +7 -0
  36. package/dist/lib/neutral/components/index.mjs +48 -0
  37. package/dist/lib/neutral/components/index.mjs.map +7 -0
  38. package/dist/lib/neutral/containers/index.mjs +15 -0
  39. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  40. package/dist/lib/neutral/create-automation-OE3TNXYE.mjs +41 -0
  41. package/dist/lib/neutral/create-automation-OE3TNXYE.mjs.map +7 -0
  42. package/dist/lib/neutral/create-object-MEJOWGMH.mjs +25 -0
  43. package/dist/lib/neutral/create-object-MEJOWGMH.mjs.map +7 -0
  44. package/dist/lib/neutral/create-trigger-from-template-TERHKWJM.mjs +68 -0
  45. package/dist/lib/neutral/create-trigger-from-template-TERHKWJM.mjs.map +7 -0
  46. package/dist/lib/neutral/hooks/index.mjs +47 -0
  47. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  48. package/dist/lib/neutral/index.mjs +22 -0
  49. package/dist/lib/neutral/layer-specs-G6GCH7BE.mjs +137 -0
  50. package/dist/lib/neutral/layer-specs-G6GCH7BE.mjs.map +7 -0
  51. package/dist/lib/neutral/meta.json +1 -0
  52. package/dist/lib/neutral/meta.mjs +8 -0
  53. package/dist/lib/neutral/navigation-resolver-I3L5FHJO.mjs +14 -0
  54. package/dist/lib/neutral/navigation-resolver-I3L5FHJO.mjs.map +7 -0
  55. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs +13 -0
  56. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs.map +7 -0
  57. package/dist/lib/neutral/operations/index.mjs +8 -0
  58. package/dist/lib/neutral/plugin.mjs +16 -0
  59. package/dist/lib/neutral/plugin.mjs.map +7 -0
  60. package/dist/lib/neutral/react-surface-IBRWUKPC.mjs +54 -0
  61. package/dist/lib/neutral/react-surface-IBRWUKPC.mjs.map +7 -0
  62. package/dist/lib/neutral/registry-sync-G6TKKZGK.mjs +86 -0
  63. package/dist/lib/neutral/registry-sync-G6TKKZGK.mjs.map +7 -0
  64. package/dist/lib/neutral/templates-ETXVD3VE.mjs +16 -0
  65. package/dist/lib/neutral/templates-ETXVD3VE.mjs.map +7 -0
  66. package/dist/lib/neutral/testing.mjs +8 -0
  67. package/dist/lib/neutral/translations.mjs +64 -0
  68. package/dist/lib/neutral/translations.mjs.map +7 -0
  69. package/dist/lib/neutral/trigger-runtime-controller-BOEJYGWC.mjs +77 -0
  70. package/dist/lib/neutral/trigger-runtime-controller-BOEJYGWC.mjs.map +7 -0
  71. package/dist/lib/neutral/types/index.mjs +18 -0
  72. package/dist/lib/neutral/types/index.mjs.map +7 -0
  73. package/dist/types/src/AutomationPlugin.d.ts +3 -1
  74. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  75. package/dist/types/src/AutomationPlugin.node.d.ts +4 -0
  76. package/dist/types/src/AutomationPlugin.node.d.ts.map +1 -0
  77. package/dist/types/src/AutomationPlugin.test.d.ts +2 -0
  78. package/dist/types/src/AutomationPlugin.test.d.ts.map +1 -0
  79. package/dist/types/src/AutomationPlugin.workerd.d.ts +4 -0
  80. package/dist/types/src/AutomationPlugin.workerd.d.ts.map +1 -0
  81. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  82. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  83. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  84. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  85. package/dist/types/src/capabilities/create-object.test.d.ts +2 -0
  86. package/dist/types/src/capabilities/create-object.test.d.ts.map +1 -0
  87. package/dist/types/src/capabilities/index.d.ts +16 -5
  88. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/layer-specs.d.ts +6 -0
  90. package/dist/types/src/capabilities/layer-specs.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/navigation-resolver.d.ts +6 -0
  92. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/node.d.ts +9 -0
  94. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  95. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  96. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  98. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/registry-sync.d.ts +21 -0
  100. package/dist/types/src/capabilities/registry-sync.d.ts.map +1 -0
  101. package/dist/types/src/capabilities/templates.d.ts +6 -0
  102. package/dist/types/src/capabilities/templates.d.ts.map +1 -0
  103. package/dist/types/src/capabilities/trigger-runtime-controller.d.ts +5 -0
  104. package/dist/types/src/capabilities/trigger-runtime-controller.d.ts.map +1 -0
  105. package/dist/types/src/capabilities/trigger-runtime-controller.test.d.ts +2 -0
  106. package/dist/types/src/capabilities/trigger-runtime-controller.test.d.ts.map +1 -0
  107. package/dist/types/src/commands/index.d.ts +2 -0
  108. package/dist/types/src/commands/index.d.ts.map +1 -0
  109. package/dist/types/src/commands/trigger/create/index.d.ts +25 -0
  110. package/dist/types/src/commands/trigger/create/index.d.ts.map +1 -0
  111. package/dist/types/src/commands/trigger/create/queue.d.ts +13 -0
  112. package/dist/types/src/commands/trigger/create/queue.d.ts.map +1 -0
  113. package/dist/types/src/commands/trigger/create/subscription.d.ts +15 -0
  114. package/dist/types/src/commands/trigger/create/subscription.d.ts.map +1 -0
  115. package/dist/types/src/commands/trigger/create/timer.d.ts +13 -0
  116. package/dist/types/src/commands/trigger/create/timer.d.ts.map +1 -0
  117. package/dist/types/src/commands/trigger/index.d.ts +57 -0
  118. package/dist/types/src/commands/trigger/index.d.ts.map +1 -0
  119. package/dist/types/src/commands/trigger/list.d.ts +7 -0
  120. package/dist/types/src/commands/trigger/list.d.ts.map +1 -0
  121. package/dist/types/src/commands/trigger/options.d.ts +10 -0
  122. package/dist/types/src/commands/trigger/options.d.ts.map +1 -0
  123. package/dist/types/src/commands/trigger/remove.d.ts +8 -0
  124. package/dist/types/src/commands/trigger/remove.d.ts.map +1 -0
  125. package/dist/types/src/commands/trigger/update/index.d.ts +28 -0
  126. package/dist/types/src/commands/trigger/update/index.d.ts.map +1 -0
  127. package/dist/types/src/commands/trigger/update/queue.d.ts +11 -0
  128. package/dist/types/src/commands/trigger/update/queue.d.ts.map +1 -0
  129. package/dist/types/src/commands/trigger/update/subscription.d.ts +13 -0
  130. package/dist/types/src/commands/trigger/update/subscription.d.ts.map +1 -0
  131. package/dist/types/src/commands/trigger/update/timer.d.ts +11 -0
  132. package/dist/types/src/commands/trigger/update/timer.d.ts.map +1 -0
  133. package/dist/types/src/commands/trigger/util.d.ts +85 -0
  134. package/dist/types/src/commands/trigger/util.d.ts.map +1 -0
  135. package/dist/types/src/components/CreateAutomationPanel/CreateAutomationPanel.d.ts +14 -0
  136. package/dist/types/src/components/CreateAutomationPanel/CreateAutomationPanel.d.ts.map +1 -0
  137. package/dist/types/src/components/CreateAutomationPanel/index.d.ts +2 -0
  138. package/dist/types/src/components/CreateAutomationPanel/index.d.ts.map +1 -0
  139. package/dist/types/src/components/index.d.ts +1 -7
  140. package/dist/types/src/components/index.d.ts.map +1 -1
  141. package/dist/types/src/containers/AutomationArticle/AutomationArticle.d.ts +35 -0
  142. package/dist/types/src/containers/AutomationArticle/AutomationArticle.d.ts.map +1 -0
  143. package/dist/types/src/containers/AutomationArticle/index.d.ts +3 -0
  144. package/dist/types/src/containers/AutomationArticle/index.d.ts.map +1 -0
  145. package/dist/types/src/containers/AutomationCompanion/AutomationCompanion.d.ts +13 -0
  146. package/dist/types/src/containers/AutomationCompanion/AutomationCompanion.d.ts.map +1 -0
  147. package/dist/types/src/containers/AutomationCompanion/index.d.ts +3 -0
  148. package/dist/types/src/containers/AutomationCompanion/index.d.ts.map +1 -0
  149. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +10 -0
  150. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -0
  151. package/dist/types/src/containers/AutomationSettings/index.d.ts +2 -0
  152. package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -0
  153. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -0
  154. package/dist/types/src/containers/TriggerSettings/index.d.ts +3 -0
  155. package/dist/types/src/containers/TriggerSettings/index.d.ts.map +1 -0
  156. package/dist/types/src/containers/index.d.ts +6 -0
  157. package/dist/types/src/containers/index.d.ts.map +1 -0
  158. package/dist/types/src/hooks/index.d.ts +0 -1
  159. package/dist/types/src/hooks/index.d.ts.map +1 -1
  160. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +5 -4
  161. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
  162. package/dist/types/src/index.d.ts +1 -5
  163. package/dist/types/src/index.d.ts.map +1 -1
  164. package/dist/types/src/meta.d.ts +2 -2
  165. package/dist/types/src/meta.d.ts.map +1 -1
  166. package/dist/types/src/operations/create-automation.d.ts +5 -0
  167. package/dist/types/src/operations/create-automation.d.ts.map +1 -0
  168. package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
  169. package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
  170. package/dist/types/src/operations/index.d.ts +3 -0
  171. package/dist/types/src/operations/index.d.ts.map +1 -0
  172. package/dist/types/src/paths.d.ts +3 -0
  173. package/dist/types/src/paths.d.ts.map +1 -0
  174. package/dist/types/src/plugin.d.ts +4 -0
  175. package/dist/types/src/plugin.d.ts.map +1 -0
  176. package/dist/types/src/templates/index.d.ts +10 -0
  177. package/dist/types/src/templates/index.d.ts.map +1 -0
  178. package/dist/types/src/testing/test-functions.d.ts +318 -3
  179. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  180. package/dist/types/src/testing.d.ts +2 -0
  181. package/dist/types/src/testing.d.ts.map +1 -0
  182. package/dist/types/src/translations.d.ts +90 -31
  183. package/dist/types/src/translations.d.ts.map +1 -1
  184. package/dist/types/src/types/Automation.d.ts +41 -0
  185. package/dist/types/src/types/Automation.d.ts.map +1 -0
  186. package/dist/types/src/types/Automation.test.d.ts +2 -0
  187. package/dist/types/src/types/Automation.test.d.ts.map +1 -0
  188. package/dist/types/src/types/AutomationCapabilities.d.ts +42 -0
  189. package/dist/types/src/types/AutomationCapabilities.d.ts.map +1 -0
  190. package/dist/types/src/types/AutomationOperation.d.ts +31 -0
  191. package/dist/types/src/types/AutomationOperation.d.ts.map +1 -0
  192. package/dist/types/src/types/Runnable.d.ts +14 -0
  193. package/dist/types/src/types/Runnable.d.ts.map +1 -0
  194. package/dist/types/src/types/index.d.ts +4 -0
  195. package/dist/types/src/types/index.d.ts.map +1 -1
  196. package/dist/types/src/types/schema.d.ts +13 -5
  197. package/dist/types/src/types/schema.d.ts.map +1 -1
  198. package/dist/types/src/util/automations-for-object.d.ts +20 -0
  199. package/dist/types/src/util/automations-for-object.d.ts.map +1 -0
  200. package/dist/types/src/util/automations-for-object.test.d.ts +2 -0
  201. package/dist/types/src/util/automations-for-object.test.d.ts.map +1 -0
  202. package/dist/types/tsconfig.tsbuildinfo +1 -1
  203. package/package.json +136 -71
  204. package/src/AutomationPlugin.node.ts +48 -0
  205. package/src/AutomationPlugin.test.ts +27 -0
  206. package/src/AutomationPlugin.tsx +47 -35
  207. package/src/AutomationPlugin.workerd.ts +24 -0
  208. package/src/capabilities/app-graph-builder.ts +81 -78
  209. package/src/capabilities/create-object.test.ts +18 -0
  210. package/src/capabilities/create-object.ts +26 -0
  211. package/src/capabilities/index.ts +17 -7
  212. package/src/capabilities/layer-specs.ts +196 -0
  213. package/src/capabilities/navigation-resolver.ts +19 -0
  214. package/src/capabilities/node.ts +19 -0
  215. package/src/capabilities/operation-handler.ts +16 -0
  216. package/src/capabilities/react-surface.tsx +45 -46
  217. package/src/capabilities/registry-sync.ts +114 -0
  218. package/src/capabilities/templates.ts +17 -0
  219. package/src/capabilities/trigger-runtime-controller.test.ts +107 -0
  220. package/src/capabilities/trigger-runtime-controller.ts +126 -0
  221. package/src/commands/index.ts +5 -0
  222. package/src/commands/trigger/create/index.ts +14 -0
  223. package/src/commands/trigger/create/queue.ts +87 -0
  224. package/src/commands/trigger/create/subscription.ts +126 -0
  225. package/src/commands/trigger/create/timer.ts +90 -0
  226. package/src/commands/trigger/index.ts +16 -0
  227. package/src/commands/trigger/list.ts +69 -0
  228. package/src/commands/trigger/options.ts +47 -0
  229. package/src/commands/trigger/remove.ts +45 -0
  230. package/src/commands/trigger/update/index.ts +14 -0
  231. package/src/commands/trigger/update/queue.ts +191 -0
  232. package/src/commands/trigger/update/subscription.ts +279 -0
  233. package/src/commands/trigger/update/timer.ts +195 -0
  234. package/src/commands/trigger/util.ts +410 -0
  235. package/src/components/CreateAutomationPanel/CreateAutomationPanel.tsx +68 -0
  236. package/src/components/CreateAutomationPanel/index.ts +5 -0
  237. package/src/components/index.ts +1 -8
  238. package/src/containers/AutomationArticle/AutomationArticle.tsx +586 -0
  239. package/src/containers/AutomationArticle/index.ts +6 -0
  240. package/src/containers/AutomationCompanion/AutomationCompanion.tsx +183 -0
  241. package/src/containers/AutomationCompanion/index.ts +6 -0
  242. package/src/containers/AutomationSettings/AutomationSettings.tsx +34 -0
  243. package/src/containers/AutomationSettings/index.ts +5 -0
  244. package/src/containers/TriggerSettings/TriggerSettings.tsx +48 -0
  245. package/src/containers/TriggerSettings/index.ts +6 -0
  246. package/src/containers/index.ts +10 -0
  247. package/src/hooks/index.ts +1 -1
  248. package/src/hooks/useTriggerRuntimeControls.ts +38 -19
  249. package/src/index.ts +1 -6
  250. package/src/meta.ts +23 -7
  251. package/src/operations/create-automation.ts +38 -0
  252. package/src/operations/create-trigger-from-template.ts +70 -0
  253. package/src/operations/index.ts +10 -0
  254. package/src/paths.ts +13 -0
  255. package/src/plugin.ts +11 -0
  256. package/src/templates/index.ts +22 -0
  257. package/src/testing/test-functions.ts +43 -9
  258. package/src/testing.ts +7 -0
  259. package/src/translations.ts +49 -33
  260. package/src/types/Automation.test.ts +37 -0
  261. package/src/types/Automation.ts +45 -0
  262. package/src/types/AutomationCapabilities.ts +52 -0
  263. package/src/types/AutomationOperation.ts +61 -0
  264. package/src/types/Runnable.ts +14 -0
  265. package/src/types/index.ts +5 -0
  266. package/src/types/schema.ts +6 -6
  267. package/src/util/automations-for-object.test.ts +86 -0
  268. package/src/util/automations-for-object.ts +72 -0
  269. package/src/vite-env.d.ts +10 -0
  270. package/dist/lib/browser/AutomationPanel-7OECLR5N.mjs +0 -11
  271. package/dist/lib/browser/AutomationSettings-KCZISXI6.mjs +0 -68
  272. package/dist/lib/browser/AutomationSettings-KCZISXI6.mjs.map +0 -7
  273. package/dist/lib/browser/FunctionsContainer-MIWEISRR.mjs +0 -151
  274. package/dist/lib/browser/FunctionsContainer-MIWEISRR.mjs.map +0 -7
  275. package/dist/lib/browser/FunctionsPanel-CRW6SJUN.mjs +0 -10
  276. package/dist/lib/browser/app-graph-builder-W7LLC6XW.mjs +0 -81
  277. package/dist/lib/browser/app-graph-builder-W7LLC6XW.mjs.map +0 -7
  278. package/dist/lib/browser/chunk-EPEXQP45.mjs +0 -14
  279. package/dist/lib/browser/chunk-EPEXQP45.mjs.map +0 -7
  280. package/dist/lib/browser/chunk-JW7XSPYW.mjs +0 -267
  281. package/dist/lib/browser/chunk-JW7XSPYW.mjs.map +0 -7
  282. package/dist/lib/browser/chunk-LZQFZO3B.mjs +0 -17
  283. package/dist/lib/browser/chunk-LZQFZO3B.mjs.map +0 -7
  284. package/dist/lib/browser/chunk-NAPXRXTY.mjs +0 -100
  285. package/dist/lib/browser/chunk-NAPXRXTY.mjs.map +0 -7
  286. package/dist/lib/browser/chunk-QKFBHAGN.mjs +0 -184
  287. package/dist/lib/browser/chunk-QKFBHAGN.mjs.map +0 -7
  288. package/dist/lib/browser/chunk-TWWFNOIR.mjs +0 -109
  289. package/dist/lib/browser/chunk-TWWFNOIR.mjs.map +0 -7
  290. package/dist/lib/browser/chunk-XAKZ4ANY.mjs +0 -15
  291. package/dist/lib/browser/chunk-XAKZ4ANY.mjs.map +0 -7
  292. package/dist/lib/browser/chunk-YBPJCY3F.mjs +0 -38
  293. package/dist/lib/browser/chunk-YBPJCY3F.mjs.map +0 -7
  294. package/dist/lib/browser/compute-runtime-EIQTHJFZ.mjs +0 -113
  295. package/dist/lib/browser/compute-runtime-EIQTHJFZ.mjs.map +0 -7
  296. package/dist/lib/browser/hooks/index.mjs +0 -13
  297. package/dist/lib/browser/index.mjs +0 -130
  298. package/dist/lib/browser/index.mjs.map +0 -7
  299. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs +0 -77
  300. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs.map +0 -7
  301. package/dist/lib/browser/meta.json +0 -1
  302. package/dist/lib/browser/react-surface-YQW7WCFW.mjs +0 -64
  303. package/dist/lib/browser/react-surface-YQW7WCFW.mjs.map +0 -7
  304. package/dist/lib/browser/types/index.mjs +0 -8
  305. package/dist/lib/node-esm/AutomationPanel-HCVFNHGQ.mjs +0 -12
  306. package/dist/lib/node-esm/AutomationSettings-UUUPVNUJ.mjs +0 -69
  307. package/dist/lib/node-esm/AutomationSettings-UUUPVNUJ.mjs.map +0 -7
  308. package/dist/lib/node-esm/FunctionsContainer-6OB3JN5O.mjs +0 -152
  309. package/dist/lib/node-esm/FunctionsContainer-6OB3JN5O.mjs.map +0 -7
  310. package/dist/lib/node-esm/FunctionsPanel-RVVCS6VH.mjs +0 -11
  311. package/dist/lib/node-esm/app-graph-builder-SLQOO7GH.mjs +0 -82
  312. package/dist/lib/node-esm/app-graph-builder-SLQOO7GH.mjs.map +0 -7
  313. package/dist/lib/node-esm/chunk-6YRKST6M.mjs +0 -185
  314. package/dist/lib/node-esm/chunk-6YRKST6M.mjs.map +0 -7
  315. package/dist/lib/node-esm/chunk-CEVIVRTY.mjs +0 -19
  316. package/dist/lib/node-esm/chunk-CEVIVRTY.mjs.map +0 -7
  317. package/dist/lib/node-esm/chunk-CPP35BE6.mjs +0 -16
  318. package/dist/lib/node-esm/chunk-CPP35BE6.mjs.map +0 -7
  319. package/dist/lib/node-esm/chunk-ECJKIUBO.mjs +0 -39
  320. package/dist/lib/node-esm/chunk-ECJKIUBO.mjs.map +0 -7
  321. package/dist/lib/node-esm/chunk-KB7NFEYY.mjs +0 -16
  322. package/dist/lib/node-esm/chunk-KB7NFEYY.mjs.map +0 -7
  323. package/dist/lib/node-esm/chunk-PICJ2REN.mjs +0 -101
  324. package/dist/lib/node-esm/chunk-PICJ2REN.mjs.map +0 -7
  325. package/dist/lib/node-esm/chunk-RVK52XGK.mjs +0 -110
  326. package/dist/lib/node-esm/chunk-RVK52XGK.mjs.map +0 -7
  327. package/dist/lib/node-esm/chunk-W76WUTZY.mjs +0 -268
  328. package/dist/lib/node-esm/chunk-W76WUTZY.mjs.map +0 -7
  329. package/dist/lib/node-esm/compute-runtime-URROOC34.mjs +0 -114
  330. package/dist/lib/node-esm/compute-runtime-URROOC34.mjs.map +0 -7
  331. package/dist/lib/node-esm/hooks/index.mjs +0 -14
  332. package/dist/lib/node-esm/index.mjs +0 -131
  333. package/dist/lib/node-esm/index.mjs.map +0 -7
  334. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs +0 -78
  335. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs.map +0 -7
  336. package/dist/lib/node-esm/meta.json +0 -1
  337. package/dist/lib/node-esm/react-surface-NNHYNBO6.mjs +0 -65
  338. package/dist/lib/node-esm/react-surface-NNHYNBO6.mjs.map +0 -7
  339. package/dist/lib/node-esm/types/index.mjs +0 -9
  340. package/dist/types/src/capabilities/capabilities.d.ts +0 -20
  341. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  342. package/dist/types/src/capabilities/compute-runtime.d.ts +0 -5
  343. package/dist/types/src/capabilities/compute-runtime.d.ts.map +0 -1
  344. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  345. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  346. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +0 -13
  347. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +0 -1
  348. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +0 -50
  349. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +0 -1
  350. package/dist/types/src/components/AutomationPanel/index.d.ts +0 -4
  351. package/dist/types/src/components/AutomationPanel/index.d.ts.map +0 -1
  352. package/dist/types/src/components/AutomationSettings.d.ts +0 -5
  353. package/dist/types/src/components/AutomationSettings.d.ts.map +0 -1
  354. package/dist/types/src/components/FunctionsContainer.d.ts +0 -7
  355. package/dist/types/src/components/FunctionsContainer.d.ts.map +0 -1
  356. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts +0 -7
  357. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +0 -1
  358. package/dist/types/src/components/FunctionsPanel/index.d.ts +0 -4
  359. package/dist/types/src/components/FunctionsPanel/index.d.ts.map +0 -1
  360. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts +0 -8
  361. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +0 -1
  362. package/dist/types/src/components/FunctionsRegistry/index.d.ts +0 -2
  363. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +0 -1
  364. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +0 -12
  365. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +0 -1
  366. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +0 -5
  367. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +0 -1
  368. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +0 -13
  369. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +0 -1
  370. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +0 -51
  371. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +0 -1
  372. package/dist/types/src/components/TriggerEditor/index.d.ts +0 -2
  373. package/dist/types/src/components/TriggerEditor/index.d.ts.map +0 -1
  374. package/dist/types/src/components/TriggerSettings.d.ts.map +0 -1
  375. package/dist/types/src/events.d.ts +0 -4
  376. package/dist/types/src/events.d.ts.map +0 -1
  377. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +0 -12
  378. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +0 -1
  379. package/src/capabilities/capabilities.ts +0 -41
  380. package/src/capabilities/compute-runtime.ts +0 -127
  381. package/src/capabilities/intent-resolver.ts +0 -72
  382. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +0 -56
  383. package/src/components/AutomationPanel/AutomationPanel.tsx +0 -223
  384. package/src/components/AutomationPanel/index.ts +0 -9
  385. package/src/components/AutomationSettings.tsx +0 -30
  386. package/src/components/FunctionsContainer.tsx +0 -36
  387. package/src/components/FunctionsPanel/FunctionsPanel.tsx +0 -116
  388. package/src/components/FunctionsPanel/index.ts +0 -8
  389. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +0 -135
  390. package/src/components/FunctionsRegistry/index.ts +0 -5
  391. package/src/components/TriggerEditor/FunctionInputEditor.tsx +0 -84
  392. package/src/components/TriggerEditor/SpecSelector.tsx +0 -65
  393. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +0 -121
  394. package/src/components/TriggerEditor/TriggerEditor.tsx +0 -127
  395. package/src/components/TriggerEditor/index.ts +0 -5
  396. package/src/components/TriggerSettings.tsx +0 -25
  397. package/src/events.ts +0 -11
  398. package/src/hooks/useComputeRuntimeCallback.ts +0 -68
  399. /package/dist/lib/{browser/AutomationPanel-7OECLR5N.mjs.map → neutral/AutomationArticle-GN36NUX2.mjs.map} +0 -0
  400. /package/dist/lib/{browser/FunctionsPanel-CRW6SJUN.mjs.map → neutral/AutomationPlugin.mjs.map} +0 -0
  401. /package/dist/lib/{browser/hooks/index.mjs.map → neutral/TriggerSettings-XCHIZPOR.mjs.map} +0 -0
  402. /package/dist/lib/{browser/types/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  403. /package/dist/lib/{node-esm/hooks → neutral}/index.mjs.map +0 -0
  404. /package/dist/lib/{node-esm/AutomationPanel-HCVFNHGQ.mjs.map → neutral/meta.mjs.map} +0 -0
  405. /package/dist/lib/{node-esm/types → neutral/operations}/index.mjs.map +0 -0
  406. /package/dist/lib/{node-esm/FunctionsPanel-RVVCS6VH.mjs.map → neutral/testing.mjs.map} +0 -0
  407. /package/dist/types/src/{components → containers/TriggerSettings}/TriggerSettings.d.ts +0 -0
@@ -0,0 +1,25 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/create-object.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capability } from "@dxos/app-framework";
6
+ import { Operation } from "@dxos/compute";
7
+ import { Type } from "@dxos/echo";
8
+ import { SpaceCapabilities } from "@dxos/plugin-space";
9
+ import { CreateAutomationPanel } from "#components";
10
+ import { Automation, AutomationOperation } from "#types";
11
+ var create_object_default = Capability.makeModule(Effect.fnUntraced(function* () {
12
+ return Capability.contributes(SpaceCapabilities.CreateObjectEntry, {
13
+ id: Type.getTypename(Automation.Automation),
14
+ customPanel: CreateAutomationPanel,
15
+ createObject: ({ name, templateId }, options) => Operation.invoke(AutomationOperation.CreateAutomation, {
16
+ db: options.db,
17
+ templateId,
18
+ name
19
+ })
20
+ });
21
+ }));
22
+ export {
23
+ create_object_default as default
24
+ };
25
+ //# sourceMappingURL=create-object-MEJOWGMH.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/create-object.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\nimport { Type } from '@dxos/echo';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\n\nimport { CreateAutomationPanel } from '#components';\nimport { Automation, AutomationOperation } from '#types';\n\ntype CreateOptions = Parameters<SpaceCapabilities.CreateObjectEntry['createObject']>[1];\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contributes(SpaceCapabilities.CreateObjectEntry, {\n id: Type.getTypename(Automation.Automation),\n customPanel: CreateAutomationPanel,\n createObject: ({ name, templateId }: { name?: string; templateId: string }, options: CreateOptions) =>\n Operation.invoke(AutomationOperation.CreateAutomation, { db: options.db, templateId, name }),\n });\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,YAAY;AACrB,SAASC,yBAAyB;AAElC,SAASC,6BAA6B;AACtC,SAASC,YAAYC,2BAA2B;AAIhD,IAAA,wBAAeN,WAAWO,WACjBC,kBAAW,aAAA;AAChB,SAAOR,WAAWS,YAAYN,kBAAkBO,mBAAmB;IACjEC,IAAIT,KAAKU,YAAYP,WAAWA,UAAU;IAC1CQ,aAAaT;IACbU,cAAc,CAAC,EAAEC,MAAMC,WAAU,GAA2CC,YAC1EhB,UAAUiB,OAAOZ,oBAAoBa,kBAAkB;MAAEC,IAAIH,QAAQG;MAAIJ;MAAYD;IAAK,CAAA;EAC9F,CAAA;AACF,CAAA,CAAA;",
6
+ "names": ["Effect", "Capability", "Operation", "Type", "SpaceCapabilities", "CreateAutomationPanel", "Automation", "AutomationOperation", "makeModule", "fnUntraced", "contributes", "CreateObjectEntry", "id", "getTypename", "customPanel", "createObject", "name", "templateId", "options", "invoke", "CreateAutomation", "db"]
7
+ }
@@ -0,0 +1,68 @@
1
+ import {
2
+ AutomationOperation_exports
3
+ } from "./chunk-GARB7S5R.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+
6
+ // src/operations/create-trigger-from-template.ts
7
+ import * as Effect from "effect/Effect";
8
+ import { LayoutOperation, getSpacePath } from "@dxos/app-toolkit";
9
+ import { Operation, Script, Trigger } from "@dxos/compute";
10
+ import { Filter, Obj, Ref } from "@dxos/echo";
11
+ import { SpaceOperation } from "@dxos/plugin-space";
12
+ import { meta } from "#meta";
13
+ var handler = AutomationOperation_exports.CreateTriggerFromTemplate.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ db, template, enabled = false, scriptName, input }) {
14
+ const trigger = Trigger.make({
15
+ enabled,
16
+ input
17
+ });
18
+ if (scriptName) {
19
+ const scripts = yield* Effect.promise(() => db.query(Filter.type(Script.Script, {
20
+ name: scriptName
21
+ })).run());
22
+ const [script] = scripts;
23
+ if (script) {
24
+ const functions = yield* Effect.promise(() => db.query(Filter.type(Operation.PersistentOperation, {
25
+ source: Ref.make(script)
26
+ })).run());
27
+ const [fn] = functions;
28
+ if (fn) {
29
+ Obj.update(trigger, (trigger2) => {
30
+ trigger2.function = Ref.make(fn);
31
+ });
32
+ }
33
+ }
34
+ }
35
+ switch (template.type) {
36
+ case "timer": {
37
+ Obj.update(trigger, (trigger2) => {
38
+ trigger2.spec = Trigger.specTimer(template.cron);
39
+ });
40
+ break;
41
+ }
42
+ case "feed": {
43
+ Obj.update(trigger, (trigger2) => {
44
+ trigger2.spec = Trigger.specFeed(template.feed);
45
+ });
46
+ break;
47
+ }
48
+ default: {
49
+ break;
50
+ }
51
+ }
52
+ yield* Operation.invoke(SpaceOperation.AddObject, {
53
+ object: trigger,
54
+ target: db,
55
+ hidden: true
56
+ });
57
+ yield* Operation.invoke(LayoutOperation.Open, {
58
+ subject: [
59
+ `${getSpacePath(db.spaceId)}/settings/${meta.id}.automations`
60
+ ],
61
+ workspace: getSpacePath(db.spaceId)
62
+ });
63
+ })));
64
+ var create_trigger_from_template_default = handler;
65
+ export {
66
+ create_trigger_from_template_default as default
67
+ };
68
+ //# sourceMappingURL=create-trigger-from-template-TERHKWJM.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/create-trigger-from-template.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation, getSpacePath } from '@dxos/app-toolkit';\nimport { Operation, Script, Trigger } from '@dxos/compute';\nimport { type Feed, Filter, Obj, Ref } from '@dxos/echo';\nimport { SpaceOperation } from '@dxos/plugin-space';\n\nimport { meta } from '#meta';\n\nimport { AutomationOperation } from '../types';\n\nconst handler: Operation.WithHandler<typeof AutomationOperation.CreateTriggerFromTemplate> =\n AutomationOperation.CreateTriggerFromTemplate.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ db, 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 scripts = yield* Effect.promise(() => db.query(Filter.type(Script.Script, { name: scriptName })).run());\n const [script] = scripts;\n if (script) {\n const functions = yield* Effect.promise(() =>\n db.query(Filter.type(Operation.PersistentOperation, { source: Ref.make(script) })).run(),\n );\n const [fn] = functions;\n if (fn) {\n Obj.update(trigger, (trigger) => {\n trigger.function = Ref.make(fn);\n });\n }\n }\n }\n\n switch (template.type) {\n case 'timer': {\n Obj.update(trigger, (trigger) => {\n trigger.spec = Trigger.specTimer(template.cron);\n });\n break;\n }\n case 'feed': {\n Obj.update(trigger, (trigger) => {\n trigger.spec = Trigger.specFeed(template.feed as Feed.Feed);\n });\n break;\n }\n default: {\n break;\n }\n }\n\n yield* Operation.invoke(SpaceOperation.AddObject, {\n object: trigger,\n target: db,\n hidden: true,\n });\n yield* Operation.invoke(LayoutOperation.Open, {\n subject: [`${getSpacePath(db.spaceId)}/settings/${meta.id}.automations`],\n workspace: getSpacePath(db.spaceId),\n });\n }),\n ),\n );\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiBC,oBAAoB;AAC9C,SAASC,WAAWC,QAAQC,eAAe;AAC3C,SAAoBC,QAAQC,KAAKC,WAAW;AAC5C,SAASC,sBAAsB;AAE/B,SAASC,YAAY;AAIrB,IAAMC,UACJC,4BAAoBC,0BAA0BC,KAC5CC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,IAAIC,UAAUC,UAAU,OAAOC,YAAYC,MAAK,GAAE;AAC/E,QAAMC,UAAUC,QAAQC,KAAK;IAAEL;IAASE;EAAM,CAAA;AAG9C,MAAID,YAAY;AACd,UAAMK,UAAU,OAAcC,eAAQ,MAAMT,GAAGU,MAAMC,OAAOC,KAAKC,OAAOA,QAAQ;MAAEC,MAAMX;IAAW,CAAA,CAAA,EAAIY,IAAG,CAAA;AAC1G,UAAM,CAACC,MAAAA,IAAUR;AACjB,QAAIQ,QAAQ;AACV,YAAMC,YAAY,OAAcR,eAAQ,MACtCT,GAAGU,MAAMC,OAAOC,KAAKf,UAAUqB,qBAAqB;QAAEC,QAAQC,IAAIb,KAAKS,MAAAA;MAAQ,CAAA,CAAA,EAAID,IAAG,CAAA;AAExF,YAAM,CAACM,EAAAA,IAAMJ;AACb,UAAII,IAAI;AACNC,YAAIC,OAAOlB,SAAS,CAACA,aAAAA;AACnBA,UAAAA,SAAQmB,WAAWJ,IAAIb,KAAKc,EAAAA;QAC9B,CAAA;MACF;IACF;EACF;AAEA,UAAQpB,SAASW,MAAI;IACnB,KAAK,SAAS;AACZU,UAAIC,OAAOlB,SAAS,CAACA,aAAAA;AACnBA,QAAAA,SAAQoB,OAAOnB,QAAQoB,UAAUzB,SAAS0B,IAAI;MAChD,CAAA;AACA;IACF;IACA,KAAK,QAAQ;AACXL,UAAIC,OAAOlB,SAAS,CAACA,aAAAA;AACnBA,QAAAA,SAAQoB,OAAOnB,QAAQsB,SAAS3B,SAAS4B,IAAI;MAC/C,CAAA;AACA;IACF;IACA,SAAS;AACP;IACF;EACF;AAEA,SAAOhC,UAAUiC,OAAOC,eAAeC,WAAW;IAChDC,QAAQ5B;IACR6B,QAAQlC;IACRmC,QAAQ;EACV,CAAA;AACA,SAAOtC,UAAUiC,OAAOM,gBAAgBC,MAAM;IAC5CC,SAAS;MAAC,GAAGC,aAAavC,GAAGwC,OAAO,CAAA,aAAcC,KAAKC,EAAE;;IACzDC,WAAWJ,aAAavC,GAAGwC,OAAO;EACpC,CAAA;AACF,CAAA,CAAA,CAAA;AAIN,IAAA,uCAAe/C;",
6
+ "names": ["Effect", "LayoutOperation", "getSpacePath", "Operation", "Script", "Trigger", "Filter", "Obj", "Ref", "SpaceOperation", "meta", "handler", "AutomationOperation", "CreateTriggerFromTemplate", "pipe", "Operation", "withHandler", "fnUntraced", "db", "template", "enabled", "scriptName", "input", "trigger", "Trigger", "make", "scripts", "promise", "query", "Filter", "type", "Script", "name", "run", "script", "functions", "PersistentOperation", "source", "Ref", "fn", "Obj", "update", "function", "spec", "specTimer", "cron", "specFeed", "feed", "invoke", "SpaceOperation", "AddObject", "object", "target", "hidden", "LayoutOperation", "Open", "subject", "getSpacePath", "spaceId", "meta", "id", "workspace"]
7
+ }
@@ -0,0 +1,47 @@
1
+ import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/hooks/useTriggerRuntimeControls.ts
4
+ import { Atom, useAtomValue } from "@effect-atom/atom-react";
5
+ import * as Effect from "effect/Effect";
6
+ import { useEffect, useState } from "react";
7
+ import { useSpaceCallback } from "@dxos/app-framework/ui";
8
+ import { Trigger } from "@dxos/compute";
9
+ import { Filter, Query } from "@dxos/echo";
10
+ import { TriggerDispatcher } from "@dxos/functions-runtime";
11
+ import { useQuery } from "@dxos/react-client/echo";
12
+ var useTriggerRuntimeControls = (db) => {
13
+ const triggers = useQuery(db, Query.select(Filter.type(Trigger.Trigger)).debugLabel("plugin-automation.useTriggerRuntimeControls"));
14
+ const [dispatcher, setDispatcher] = useState(void 0);
15
+ const init = useSpaceCallback(db?.spaceId, [
16
+ TriggerDispatcher
17
+ ], Effect.fnUntraced(function* () {
18
+ const dispatcher2 = yield* TriggerDispatcher;
19
+ setDispatcher(dispatcher2);
20
+ }));
21
+ useEffect(() => {
22
+ void init();
23
+ }, []);
24
+ const state = useAtomValue(dispatcher?.state ?? Atom.make(void 0));
25
+ const start = useSpaceCallback(db?.spaceId, [
26
+ TriggerDispatcher
27
+ ], Effect.fnUntraced(function* () {
28
+ const dispatcher2 = yield* TriggerDispatcher;
29
+ yield* dispatcher2.start();
30
+ }));
31
+ const stop = useSpaceCallback(db?.spaceId, [
32
+ TriggerDispatcher
33
+ ], Effect.fnUntraced(function* () {
34
+ const dispatcher2 = yield* TriggerDispatcher;
35
+ yield* dispatcher2.stop();
36
+ }));
37
+ return {
38
+ triggers,
39
+ state,
40
+ start: () => void start(),
41
+ stop: () => void stop()
42
+ };
43
+ };
44
+ export {
45
+ useTriggerRuntimeControls
46
+ };
47
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/hooks/useTriggerRuntimeControls.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom, useAtomValue } from '@effect-atom/atom-react';\nimport type * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\nimport { useEffect, useState } from 'react';\n\nimport { useSpaceCallback } from '@dxos/app-framework/ui';\nimport { Trigger } from '@dxos/compute';\nimport { type Database, Filter, Query } from '@dxos/echo';\nimport { TriggerDispatcher, type TriggerDispatcherState } from '@dxos/functions-runtime';\nimport { useQuery } from '@dxos/react-client/echo';\n\ninterface TriggerRuntimeControls {\n triggers: Trigger.Trigger[];\n\n state: TriggerDispatcherState | undefined;\n\n start: () => void;\n stop: () => void;\n}\n\nexport const useTriggerRuntimeControls = (db: Database.Database | undefined): TriggerRuntimeControls => {\n const triggers = useQuery(\n db,\n Query.select(Filter.type(Trigger.Trigger)).debugLabel('plugin-automation.useTriggerRuntimeControls'),\n );\n\n const [dispatcher, setDispatcher] = useState<Context.Tag.Service<TriggerDispatcher> | undefined>(undefined);\n\n const init = useSpaceCallback(\n db?.spaceId,\n [TriggerDispatcher],\n Effect.fnUntraced(function* () {\n const dispatcher = yield* TriggerDispatcher;\n setDispatcher(dispatcher);\n }),\n );\n\n useEffect(() => {\n void init();\n }, []);\n\n const state = useAtomValue(dispatcher?.state ?? Atom.make(undefined));\n\n const start = useSpaceCallback(\n db?.spaceId,\n [TriggerDispatcher],\n Effect.fnUntraced(function* () {\n const dispatcher = yield* TriggerDispatcher;\n yield* dispatcher.start();\n }),\n );\n\n const stop = useSpaceCallback(\n db?.spaceId,\n [TriggerDispatcher],\n Effect.fnUntraced(function* () {\n const dispatcher = yield* TriggerDispatcher;\n yield* dispatcher.stop();\n }),\n );\n\n return {\n triggers,\n state,\n start: () => void start(),\n stop: () => void stop(),\n };\n};\n"],
5
+ "mappings": ";;;AAIA,SAASA,MAAMC,oBAAoB;AAEnC,YAAYC,YAAY;AACxB,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,wBAAwB;AACjC,SAASC,eAAe;AACxB,SAAwBC,QAAQC,aAAa;AAC7C,SAASC,yBAAsD;AAC/D,SAASC,gBAAgB;AAWlB,IAAMC,4BAA4B,CAACC,OAAAA;AACxC,QAAMC,WAAWH,SACfE,IACAJ,MAAMM,OAAOP,OAAOQ,KAAKT,QAAQA,OAAO,CAAA,EAAGU,WAAW,6CAAA,CAAA;AAGxD,QAAM,CAACC,YAAYC,aAAAA,IAAiBd,SAA6De,MAAAA;AAEjG,QAAMC,OAAOf,iBACXO,IAAIS,SACJ;IAACZ;KACMa,kBAAW,aAAA;AAChB,UAAML,cAAa,OAAOR;AAC1BS,kBAAcD,WAAAA;EAChB,CAAA,CAAA;AAGFd,YAAU,MAAA;AACR,SAAKiB,KAAAA;EACP,GAAG,CAAA,CAAE;AAEL,QAAMG,QAAQtB,aAAagB,YAAYM,SAASvB,KAAKwB,KAAKL,MAAAA,CAAAA;AAE1D,QAAMM,QAAQpB,iBACZO,IAAIS,SACJ;IAACZ;KACMa,kBAAW,aAAA;AAChB,UAAML,cAAa,OAAOR;AAC1B,WAAOQ,YAAWQ,MAAK;EACzB,CAAA,CAAA;AAGF,QAAMC,OAAOrB,iBACXO,IAAIS,SACJ;IAACZ;KACMa,kBAAW,aAAA;AAChB,UAAML,cAAa,OAAOR;AAC1B,WAAOQ,YAAWS,KAAI;EACxB,CAAA,CAAA;AAGF,SAAO;IACLb;IACAU;IACAE,OAAO,MAAM,KAAKA,MAAAA;IAClBC,MAAM,MAAM,KAAKA,KAAAA;EACnB;AACF;",
6
+ "names": ["Atom", "useAtomValue", "Effect", "useEffect", "useState", "useSpaceCallback", "Trigger", "Filter", "Query", "TriggerDispatcher", "useQuery", "useTriggerRuntimeControls", "db", "triggers", "select", "type", "debugLabel", "dispatcher", "setDispatcher", "undefined", "init", "spaceId", "fnUntraced", "state", "make", "start", "stop"]
7
+ }
@@ -0,0 +1,22 @@
1
+ import {
2
+ meta
3
+ } from "./chunk-DUGOIM7G.mjs";
4
+ import {
5
+ AutomationAction,
6
+ AutomationCapabilities_exports,
7
+ AutomationOperation_exports,
8
+ Automation_exports,
9
+ Runnable_exports,
10
+ TriggerTemplate
11
+ } from "./chunk-GARB7S5R.mjs";
12
+ import "./chunk-J5LGTIGS.mjs";
13
+ export {
14
+ Automation_exports as Automation,
15
+ AutomationAction,
16
+ AutomationCapabilities_exports as AutomationCapabilities,
17
+ AutomationOperation_exports as AutomationOperation,
18
+ Runnable_exports as Runnable,
19
+ TriggerTemplate,
20
+ meta
21
+ };
22
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,137 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/layer-specs.ts
4
+ import { Registry as AtomRegistry } from "@effect-atom/atom";
5
+ import * as Effect from "effect/Effect";
6
+ import * as Layer from "effect/Layer";
7
+ import { OpaqueToolkit } from "@dxos/ai";
8
+ import { Capabilities, Capability } from "@dxos/app-framework";
9
+ import { AppCapabilities } from "@dxos/app-toolkit";
10
+ import { ClientService } from "@dxos/client";
11
+ import { LayerSpec, Operation, OperationHandlerSet } from "@dxos/compute";
12
+ import { ProcessManager } from "@dxos/compute-runtime";
13
+ import { Database, Feed, Registry } from "@dxos/echo";
14
+ import { FeedTraceSink, RemoteFunctionExecutionService, TriggerDispatcher, TriggerStateStore } from "@dxos/functions-runtime";
15
+ import { invariant } from "@dxos/invariant";
16
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/capabilities/layer-specs.ts";
17
+ var OperationHandlerProviderSpec = LayerSpec.make({
18
+ affinity: "application",
19
+ requires: [
20
+ Capability.Service
21
+ ],
22
+ provides: [
23
+ OperationHandlerSet.OperationHandlerProvider
24
+ ]
25
+ }, () => Layer.unwrapEffect(Effect.gen(function* () {
26
+ const operationHandlerSets = yield* Capability.getAll(Capabilities.OperationHandler);
27
+ const mergedOperationHandlers = operationHandlerSets.length === 0 ? OperationHandlerSet.empty : OperationHandlerSet.merge(...operationHandlerSets);
28
+ return OperationHandlerSet.provide(mergedOperationHandlers);
29
+ })));
30
+ var RegistrySpec = LayerSpec.make({
31
+ affinity: "application",
32
+ requires: [
33
+ ClientService
34
+ ],
35
+ provides: [
36
+ Registry.Service
37
+ ]
38
+ }, () => Layer.unwrapEffect(Effect.gen(function* () {
39
+ const client = yield* ClientService;
40
+ return Layer.succeed(Registry.Service, client.graph.registry);
41
+ })));
42
+ var OpaqueToolkitSpec = LayerSpec.make({
43
+ affinity: "application",
44
+ requires: [
45
+ Capability.Service
46
+ ],
47
+ provides: [
48
+ OpaqueToolkit.OpaqueToolkitProvider
49
+ ]
50
+ }, () => Layer.unwrapEffect(Effect.gen(function* () {
51
+ const capabilities = yield* Capability.Service;
52
+ return Layer.succeed(OpaqueToolkit.OpaqueToolkitProvider, {
53
+ getToolkit: () => {
54
+ const toolkits = capabilities.getAll(AppCapabilities.Toolkit);
55
+ return OpaqueToolkit.merge(...toolkits);
56
+ }
57
+ });
58
+ })));
59
+ var OperationsToRegistrySpec = LayerSpec.make({
60
+ affinity: "space",
61
+ requires: [
62
+ Registry.Service,
63
+ OperationHandlerSet.OperationHandlerProvider
64
+ ],
65
+ provides: [
66
+ Registry.Service
67
+ ]
68
+ }, () => Layer.effect(Registry.Service, Effect.gen(function* () {
69
+ const handlerSet = yield* OperationHandlerSet.OperationHandlerProvider;
70
+ const registry = yield* Registry.Service;
71
+ const handlers = yield* handlerSet.handlers;
72
+ registry.add(handlers.map(Operation.serialize));
73
+ return registry;
74
+ })));
75
+ var TriggerStateStoreSpec = LayerSpec.make({
76
+ affinity: "application",
77
+ requires: [],
78
+ provides: [
79
+ TriggerStateStore
80
+ ]
81
+ }, () => TriggerStateStore.layerMemory);
82
+ var FeedTraceSinkSpec = LayerSpec.make({
83
+ affinity: "space",
84
+ requires: [
85
+ Database.Service,
86
+ Feed.FeedService
87
+ ],
88
+ provides: [
89
+ FeedTraceSink.FeedTraceSink
90
+ ]
91
+ }, () => FeedTraceSink.layerLive);
92
+ var RemoteFunctionExecutionSpec = LayerSpec.make({
93
+ affinity: "space",
94
+ requires: [
95
+ ClientService
96
+ ],
97
+ provides: [
98
+ RemoteFunctionExecutionService
99
+ ]
100
+ }, (context) => Layer.unwrapEffect(Effect.gen(function* () {
101
+ invariant(context.space, "space context required for RemoteFunctionExecutionService", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 132, S: this, A: ["context.space", "'space context required for RemoteFunctionExecutionService'"] });
102
+ const client = yield* ClientService;
103
+ const edgeAgents = client.config.get("runtime.client.edgeFeatures.agents");
104
+ return RemoteFunctionExecutionService.fromClient(client, edgeAgents ? void 0 : context.space);
105
+ })));
106
+ var TriggerDispatcherSpec = LayerSpec.make({
107
+ affinity: "space",
108
+ requires: [
109
+ Database.Service,
110
+ Feed.FeedService,
111
+ TriggerStateStore,
112
+ ProcessManager.ProcessManagerService,
113
+ AtomRegistry.AtomRegistry
114
+ ],
115
+ provides: [
116
+ TriggerDispatcher
117
+ ]
118
+ }, () => TriggerDispatcher.layer({
119
+ timeControl: "natural"
120
+ }));
121
+ var layer_specs_default = Capability.makeModule(() => Effect.succeed([
122
+ Capability.contributes(Capabilities.LayerSpec, OperationHandlerProviderSpec),
123
+ Capability.contributes(Capabilities.LayerSpec, RegistrySpec),
124
+ Capability.contributes(Capabilities.LayerSpec, OpaqueToolkitSpec),
125
+ Capability.contributes(Capabilities.LayerSpec, OperationsToRegistrySpec),
126
+ Capability.contributes(Capabilities.LayerSpec, TriggerStateStoreSpec),
127
+ Capability.contributes(Capabilities.LayerSpec, FeedTraceSinkSpec),
128
+ Capability.contributes(Capabilities.LayerSpec, TriggerDispatcherSpec),
129
+ Capability.contributes(Capabilities.LayerSpec, RemoteFunctionExecutionSpec),
130
+ Capability.contributes(Capabilities.TraceSink, ({ resolver }) => FeedTraceSink.makeRoutingSink({
131
+ resolver
132
+ }))
133
+ ]));
134
+ export {
135
+ layer_specs_default as default
136
+ };
137
+ //# sourceMappingURL=layer-specs-G6GCH7BE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/layer-specs.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport { Registry as AtomRegistry } from '@effect-atom/atom';\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\n\nimport { OpaqueToolkit } from '@dxos/ai';\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { ClientService } from '@dxos/client';\nimport { LayerSpec, Operation, OperationHandlerSet } from '@dxos/compute';\nimport { ProcessManager } from '@dxos/compute-runtime';\nimport { Database, Feed, Registry } from '@dxos/echo';\nimport {\n FeedTraceSink,\n RemoteFunctionExecutionService,\n TriggerDispatcher,\n TriggerStateStore,\n} from '@dxos/functions-runtime';\nimport { invariant } from '@dxos/invariant';\n\n//\n// Capability Module\n//\n// Contributes application- and space-affinity `Capabilities.LayerSpec` entries\n// that together replace the former monolithic `AutomationCapabilities.ComputeRuntime`.\n//\n// Specs are declared at module level; runtime state (the `Client`, contributed\n// capability lists, etc.) is resolved via Effect-level requirements rather\n// than captured from an outer scope.\n//\n\n/**\n * Gathers contributed {@link Capabilities.OperationHandler} sets from the\n * {@link Capability.Service} and exposes them through the\n * {@link OperationHandlerSet.OperationHandlerProvider} tag so space-affinity\n * specs (e.g. {@link OperationsToRegistrySpec}) can consume them through the\n * normal LayerStack resolution path.\n */\nconst OperationHandlerProviderSpec = LayerSpec.make(\n {\n affinity: 'application',\n requires: [Capability.Service],\n provides: [OperationHandlerSet.OperationHandlerProvider],\n },\n () =>\n Layer.unwrapEffect(\n Effect.gen(function* () {\n const operationHandlerSets = yield* Capability.getAll(Capabilities.OperationHandler);\n const mergedOperationHandlers =\n operationHandlerSets.length === 0\n ? OperationHandlerSet.empty\n : OperationHandlerSet.merge(...operationHandlerSets);\n return OperationHandlerSet.provide(mergedOperationHandlers);\n }),\n ),\n);\n\nconst RegistrySpec = LayerSpec.make(\n {\n affinity: 'application',\n requires: [ClientService],\n provides: [Registry.Service],\n },\n () =>\n Layer.unwrapEffect(\n Effect.gen(function* () {\n const client = yield* ClientService;\n return Layer.succeed(Registry.Service, client.graph.registry);\n }),\n ),\n);\n\nconst OpaqueToolkitSpec = LayerSpec.make(\n {\n affinity: 'application',\n requires: [Capability.Service],\n provides: [OpaqueToolkit.OpaqueToolkitProvider],\n },\n () =>\n Layer.unwrapEffect(\n Effect.gen(function* () {\n const capabilities = yield* Capability.Service;\n return Layer.succeed(OpaqueToolkit.OpaqueToolkitProvider, {\n getToolkit: () => {\n const toolkits = capabilities.getAll(AppCapabilities.Toolkit);\n return OpaqueToolkit.merge(...toolkits);\n },\n });\n }),\n ),\n);\n\nconst OperationsToRegistrySpec = LayerSpec.make(\n {\n affinity: 'space',\n requires: [Registry.Service, OperationHandlerSet.OperationHandlerProvider],\n provides: [Registry.Service],\n },\n () =>\n Layer.effect(\n Registry.Service,\n Effect.gen(function* () {\n const handlerSet = yield* OperationHandlerSet.OperationHandlerProvider;\n const registry = yield* Registry.Service;\n const handlers = yield* handlerSet.handlers;\n registry.add(handlers.map(Operation.serialize));\n return registry;\n }),\n ),\n);\n\n/**\n * In-memory trigger state. Loses state across restarts but works in both\n * browser and CLI/Node contexts. Hosts that need durable storage should\n * contribute a replacement LayerSpec that provides {@link TriggerStateStore}\n * backed by a persistent `KeyValueStore` (e.g. `BrowserKeyValueStore` or\n * `BunKeyValueStore`).\n */\nconst TriggerStateStoreSpec = LayerSpec.make(\n {\n affinity: 'application',\n requires: [],\n provides: [TriggerStateStore],\n },\n () => TriggerStateStore.layerMemory,\n);\n\n//\n// Space-affinity specs.\n//\n\nconst FeedTraceSinkSpec = LayerSpec.make(\n {\n affinity: 'space',\n requires: [Database.Service, Feed.FeedService],\n provides: [FeedTraceSink.FeedTraceSink],\n },\n () => FeedTraceSink.layerLive,\n);\n\n/**\n * Space-scoped `RemoteFunctionExecutionService`. When edge agents are enabled\n * (`runtime.client.edgeFeatures.agents`) functions are invoked without a space\n * binding (the edge routes them); otherwise they are scoped to the space. The\n * config is read inside the factory — at slice-materialisation time, once\n * `ClientService` is available — so the owning module does not need the client\n * at activation time and can activate on `SetupProcessManager`.\n */\nconst RemoteFunctionExecutionSpec = LayerSpec.make(\n {\n affinity: 'space',\n requires: [ClientService],\n provides: [RemoteFunctionExecutionService],\n },\n (context) =>\n Layer.unwrapEffect(\n Effect.gen(function* () {\n invariant(context.space, 'space context required for RemoteFunctionExecutionService');\n const client = yield* ClientService;\n const edgeAgents = client.config.get('runtime.client.edgeFeatures.agents');\n return RemoteFunctionExecutionService.fromClient(client, edgeAgents ? undefined : context.space);\n }),\n ),\n);\n\nconst TriggerDispatcherSpec = LayerSpec.make(\n {\n affinity: 'space',\n requires: [\n Database.Service,\n Feed.FeedService,\n TriggerStateStore,\n ProcessManager.ProcessManagerService,\n AtomRegistry.AtomRegistry,\n ],\n provides: [TriggerDispatcher],\n },\n () => TriggerDispatcher.layer({ timeControl: 'natural' }),\n);\n\nexport default Capability.makeModule(() =>\n Effect.succeed([\n Capability.contributes(Capabilities.LayerSpec, OperationHandlerProviderSpec),\n Capability.contributes(Capabilities.LayerSpec, RegistrySpec),\n Capability.contributes(Capabilities.LayerSpec, OpaqueToolkitSpec),\n Capability.contributes(Capabilities.LayerSpec, OperationsToRegistrySpec),\n Capability.contributes(Capabilities.LayerSpec, TriggerStateStoreSpec),\n Capability.contributes(Capabilities.LayerSpec, FeedTraceSinkSpec),\n Capability.contributes(Capabilities.LayerSpec, TriggerDispatcherSpec),\n Capability.contributes(Capabilities.LayerSpec, RemoteFunctionExecutionSpec),\n Capability.contributes(Capabilities.TraceSink, ({ resolver }) => FeedTraceSink.makeRoutingSink({ resolver })),\n ]),\n);\n"],
5
+ "mappings": "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",
6
+ "names": ["Registry", "AtomRegistry", "Effect", "Layer", "OpaqueToolkit", "Capabilities", "Capability", "AppCapabilities", "ClientService", "LayerSpec", "Operation", "OperationHandlerSet", "ProcessManager", "Database", "Feed", "FeedTraceSink", "RemoteFunctionExecutionService", "TriggerDispatcher", "TriggerStateStore", "invariant", "requires", "provides", "mergedOperationHandlers", "operationHandlerSets", "provide", "RegistrySpec", "affinity", "unwrapEffect", "client", "OpaqueToolkitSpec", "make", "OpaqueToolkitProvider", "getToolkit", "toolkits", "capabilities", "OperationsToRegistrySpec", "effect", "registry", "Service", "handlers", "handlerSet", "map", "FeedService", "layerLive", "context", "edgeAgents", "TriggerDispatcherSpec", "contributes", "TriggerStateStoreSpec", "FeedTraceSinkSpec", "RemoteFunctionExecutionSpec", "TraceSink", "resolver"]
7
+ }