@dxos/plugin-automation 0.8.4-main.c85a9c8dae → 0.8.4-main.d9fc60f731

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 (386) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +428 -0
  3. package/README.md +1 -1
  4. package/dist/lib/neutral/AutomationPanel-OKF2MDLO.mjs +12 -0
  5. package/dist/lib/neutral/AutomationPlugin.mjs +10 -0
  6. package/dist/lib/{browser/cli/index.mjs → neutral/AutomationPlugin.node.mjs} +191 -186
  7. package/dist/lib/neutral/AutomationPlugin.node.mjs.map +7 -0
  8. package/dist/lib/neutral/AutomationPlugin.workerd.mjs +23 -0
  9. package/dist/lib/neutral/AutomationPlugin.workerd.mjs.map +7 -0
  10. package/dist/lib/neutral/AutomationSettings-GQF5UFM6.mjs +32 -0
  11. package/dist/lib/neutral/AutomationSettings-GQF5UFM6.mjs.map +7 -0
  12. package/dist/lib/neutral/FunctionsContainer-YBTQGCL3.mjs +38 -0
  13. package/dist/lib/neutral/FunctionsContainer-YBTQGCL3.mjs.map +7 -0
  14. package/dist/lib/{browser/chunk-U55ZXRYM.mjs → neutral/FunctionsPanel-L32Z67B7.mjs} +24 -25
  15. package/dist/lib/neutral/FunctionsPanel-L32Z67B7.mjs.map +7 -0
  16. package/dist/lib/{browser/chunk-XFXYU645.mjs → neutral/FunctionsRegistry-RTCY3LXE.mjs} +24 -25
  17. package/dist/lib/neutral/FunctionsRegistry-RTCY3LXE.mjs.map +7 -0
  18. package/dist/lib/neutral/TriggerSettings-XCHIZPOR.mjs +9 -0
  19. package/dist/lib/neutral/app-graph-builder-Q3LJLICE.mjs +75 -0
  20. package/dist/lib/neutral/app-graph-builder-Q3LJLICE.mjs.map +7 -0
  21. package/dist/lib/neutral/capabilities/index.mjs +19 -0
  22. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  23. package/dist/lib/neutral/capabilities/node.mjs +17 -0
  24. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  25. package/dist/lib/neutral/chunk-2JP77CMN.mjs +42 -0
  26. package/dist/lib/neutral/chunk-2JP77CMN.mjs.map +7 -0
  27. package/dist/lib/neutral/chunk-7YWISQOZ.mjs +54 -0
  28. package/dist/lib/neutral/chunk-7YWISQOZ.mjs.map +7 -0
  29. package/dist/lib/neutral/chunk-C7H62AU3.mjs +435 -0
  30. package/dist/lib/neutral/chunk-C7H62AU3.mjs.map +7 -0
  31. package/dist/lib/neutral/chunk-CMM3AFHR.mjs +111 -0
  32. package/dist/lib/neutral/chunk-CMM3AFHR.mjs.map +7 -0
  33. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  34. package/dist/lib/neutral/chunk-LRVJEKMN.mjs +40 -0
  35. package/dist/lib/neutral/chunk-LRVJEKMN.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-MBIODLCB.mjs +12 -0
  37. package/dist/lib/neutral/chunk-MBIODLCB.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-NCCFEPBZ.mjs +76 -0
  39. package/dist/lib/neutral/chunk-NCCFEPBZ.mjs.map +7 -0
  40. package/dist/lib/{browser/chunk-ZNI2CGQP.mjs → neutral/chunk-RCBE37YU.mjs} +158 -60
  41. package/dist/lib/neutral/chunk-RCBE37YU.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-TJOQNSS5.mjs +8 -0
  43. package/dist/lib/neutral/chunk-TJOQNSS5.mjs.map +7 -0
  44. package/dist/lib/neutral/components/index.mjs +16 -0
  45. package/dist/lib/neutral/containers/index.mjs +13 -0
  46. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  47. package/dist/lib/neutral/create-trigger-from-template-5YUHZOFA.mjs +68 -0
  48. package/dist/lib/neutral/create-trigger-from-template-5YUHZOFA.mjs.map +7 -0
  49. package/dist/lib/neutral/hooks/index.mjs +10 -0
  50. package/dist/lib/neutral/index.mjs +16 -0
  51. package/dist/lib/neutral/layer-specs-OXK75RDW.mjs +141 -0
  52. package/dist/lib/neutral/layer-specs-OXK75RDW.mjs.map +7 -0
  53. package/dist/lib/neutral/meta.json +1 -0
  54. package/dist/lib/neutral/meta.mjs +8 -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-FOOBGYNG.mjs +57 -0
  61. package/dist/lib/neutral/react-surface-FOOBGYNG.mjs.map +7 -0
  62. package/dist/lib/neutral/registry-sync-JYDDTBAE.mjs +82 -0
  63. package/dist/lib/neutral/registry-sync-JYDDTBAE.mjs.map +7 -0
  64. package/dist/lib/neutral/testing.mjs +8 -0
  65. package/dist/lib/neutral/translations.mjs +60 -0
  66. package/dist/lib/neutral/translations.mjs.map +7 -0
  67. package/dist/lib/neutral/trigger-runtime-controller-BOEJYGWC.mjs +77 -0
  68. package/dist/lib/neutral/trigger-runtime-controller-BOEJYGWC.mjs.map +7 -0
  69. package/dist/lib/neutral/types/index.mjs +12 -0
  70. package/dist/lib/neutral/types/index.mjs.map +7 -0
  71. package/dist/types/src/AutomationPlugin.d.ts +1 -0
  72. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  73. package/dist/types/src/{cli/plugin.d.ts → AutomationPlugin.node.d.ts} +2 -1
  74. package/dist/types/src/AutomationPlugin.node.d.ts.map +1 -0
  75. package/dist/types/src/AutomationPlugin.test.d.ts +2 -0
  76. package/dist/types/src/AutomationPlugin.test.d.ts.map +1 -0
  77. package/dist/types/src/AutomationPlugin.workerd.d.ts +4 -0
  78. package/dist/types/src/AutomationPlugin.workerd.d.ts.map +1 -0
  79. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  80. package/dist/types/src/capabilities/index.d.ts +8 -4
  81. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/layer-specs.d.ts +6 -0
  83. package/dist/types/src/capabilities/layer-specs.d.ts.map +1 -0
  84. package/dist/types/src/capabilities/node.d.ts +8 -0
  85. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  86. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  87. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  88. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  89. package/dist/types/src/capabilities/registry-sync.d.ts +21 -0
  90. package/dist/types/src/capabilities/registry-sync.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/trigger-runtime-controller.d.ts +5 -0
  92. package/dist/types/src/capabilities/trigger-runtime-controller.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/trigger-runtime-controller.test.d.ts +2 -0
  94. package/dist/types/src/capabilities/trigger-runtime-controller.test.d.ts.map +1 -0
  95. package/dist/types/src/commands/index.d.ts.map +1 -0
  96. package/dist/types/src/{cli/commands → commands}/trigger/create/index.d.ts +6 -6
  97. package/dist/types/src/commands/trigger/create/index.d.ts.map +1 -0
  98. package/dist/types/src/{cli/commands → commands}/trigger/create/queue.d.ts +2 -2
  99. package/dist/types/src/commands/trigger/create/queue.d.ts.map +1 -0
  100. package/dist/types/src/{cli/commands → commands}/trigger/create/subscription.d.ts +1 -1
  101. package/dist/types/src/commands/trigger/create/subscription.d.ts.map +1 -0
  102. package/dist/types/src/{cli/commands → commands}/trigger/create/timer.d.ts +1 -1
  103. package/dist/types/src/commands/trigger/create/timer.d.ts.map +1 -0
  104. package/dist/types/src/{cli/commands → commands}/trigger/index.d.ts +8 -8
  105. package/dist/types/src/commands/trigger/index.d.ts.map +1 -0
  106. package/dist/types/src/{cli/commands → commands}/trigger/list.d.ts +1 -1
  107. package/dist/types/src/commands/trigger/list.d.ts.map +1 -0
  108. package/dist/types/src/{cli/commands → commands}/trigger/options.d.ts +1 -2
  109. package/dist/types/src/commands/trigger/options.d.ts.map +1 -0
  110. package/dist/types/src/{cli/commands → commands}/trigger/remove.d.ts +1 -1
  111. package/dist/types/src/commands/trigger/remove.d.ts.map +1 -0
  112. package/dist/types/src/{cli/commands → commands}/trigger/update/index.d.ts +5 -5
  113. package/dist/types/src/commands/trigger/update/index.d.ts.map +1 -0
  114. package/dist/types/src/{cli/commands → commands}/trigger/update/queue.d.ts +2 -3
  115. package/dist/types/src/commands/trigger/update/queue.d.ts.map +1 -0
  116. package/dist/types/src/commands/trigger/update/subscription.d.ts.map +1 -0
  117. package/dist/types/src/commands/trigger/update/timer.d.ts.map +1 -0
  118. package/dist/types/src/commands/trigger/util.d.ts +85 -0
  119. package/dist/types/src/commands/trigger/util.d.ts.map +1 -0
  120. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +1 -1
  121. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  122. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +45 -32
  123. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  124. package/dist/types/src/components/AutomationPanel/TriggerEdgeMetadata.d.ts +18 -0
  125. package/dist/types/src/components/AutomationPanel/TriggerEdgeMetadata.d.ts.map +1 -0
  126. package/dist/types/src/components/AutomationPanel/index.d.ts.map +1 -1
  127. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  128. package/dist/types/src/components/FunctionsPanel/index.d.ts.map +1 -1
  129. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -1
  130. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -1
  131. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +6 -6
  132. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  133. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +4 -4
  134. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  135. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +1 -1
  136. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  137. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +109 -93
  138. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  139. package/dist/types/src/components/TriggerEditor/util.d.ts +14 -0
  140. package/dist/types/src/components/TriggerEditor/util.d.ts.map +1 -0
  141. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +3 -1
  142. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -1
  143. package/dist/types/src/containers/AutomationSettings/index.d.ts +1 -2
  144. package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -1
  145. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts +2 -4
  146. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts.map +1 -1
  147. package/dist/types/src/containers/FunctionsContainer/index.d.ts +1 -2
  148. package/dist/types/src/containers/FunctionsContainer/index.d.ts.map +1 -1
  149. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts +3 -3
  150. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -1
  151. package/dist/types/src/containers/TriggerSettings/index.d.ts +2 -2
  152. package/dist/types/src/containers/TriggerSettings/index.d.ts.map +1 -1
  153. package/dist/types/src/hooks/index.d.ts +1 -1
  154. package/dist/types/src/hooks/index.d.ts.map +1 -1
  155. package/dist/types/src/hooks/useEdgeTriggersDispatcherStatus.d.ts +13 -0
  156. package/dist/types/src/hooks/useEdgeTriggersDispatcherStatus.d.ts.map +1 -0
  157. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +1 -1
  158. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
  159. package/dist/types/src/index.d.ts +0 -3
  160. package/dist/types/src/index.d.ts.map +1 -1
  161. package/dist/types/src/meta.d.ts +1 -1
  162. package/dist/types/src/meta.d.ts.map +1 -1
  163. package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
  164. package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
  165. package/dist/types/src/operations/index.d.ts +3 -0
  166. package/dist/types/src/operations/index.d.ts.map +1 -0
  167. package/dist/types/src/plugin.d.ts +4 -0
  168. package/dist/types/src/plugin.d.ts.map +1 -0
  169. package/dist/types/src/testing/test-functions.d.ts +162 -46
  170. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  171. package/dist/types/src/testing.d.ts +2 -0
  172. package/dist/types/src/testing.d.ts.map +1 -0
  173. package/dist/types/src/translations.d.ts +45 -33
  174. package/dist/types/src/translations.d.ts.map +1 -1
  175. package/dist/types/src/types/AutomationOperation.d.ts +21 -0
  176. package/dist/types/src/types/AutomationOperation.d.ts.map +1 -0
  177. package/dist/types/src/types/index.d.ts +1 -2
  178. package/dist/types/src/types/index.d.ts.map +1 -1
  179. package/dist/types/src/types/schema.d.ts +11 -32
  180. package/dist/types/src/types/schema.d.ts.map +1 -1
  181. package/dist/types/tsconfig.tsbuildinfo +1 -1
  182. package/package.json +124 -75
  183. package/src/AutomationPlugin.node.ts +35 -0
  184. package/src/AutomationPlugin.test.ts +27 -0
  185. package/src/AutomationPlugin.tsx +33 -11
  186. package/src/AutomationPlugin.workerd.ts +18 -0
  187. package/src/capabilities/app-graph-builder.ts +66 -0
  188. package/src/capabilities/index.ts +15 -4
  189. package/src/capabilities/layer-specs.ts +197 -0
  190. package/src/capabilities/node.ts +18 -0
  191. package/src/capabilities/operation-handler.ts +16 -0
  192. package/src/capabilities/react-surface.tsx +59 -0
  193. package/src/capabilities/registry-sync.ts +110 -0
  194. package/src/capabilities/trigger-runtime-controller.test.ts +103 -0
  195. package/src/capabilities/trigger-runtime-controller.ts +126 -0
  196. package/src/{cli/commands → commands}/trigger/create/queue.ts +14 -16
  197. package/src/{cli/commands → commands}/trigger/create/subscription.ts +8 -11
  198. package/src/{cli/commands → commands}/trigger/create/timer.ts +4 -7
  199. package/src/{cli/commands → commands}/trigger/list.ts +7 -4
  200. package/src/{cli/commands → commands}/trigger/options.ts +3 -15
  201. package/src/{cli/commands → commands}/trigger/remove.ts +5 -5
  202. package/src/{cli/commands → commands}/trigger/update/queue.ts +39 -43
  203. package/src/{cli/commands → commands}/trigger/update/subscription.ts +22 -21
  204. package/src/{cli/commands → commands}/trigger/update/timer.ts +22 -20
  205. package/src/{cli/commands → commands}/trigger/util.ts +53 -38
  206. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +12 -5
  207. package/src/components/AutomationPanel/AutomationPanel.tsx +120 -58
  208. package/src/components/AutomationPanel/TriggerEdgeMetadata.tsx +148 -0
  209. package/src/components/FunctionsPanel/FunctionsPanel.tsx +35 -27
  210. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +32 -23
  211. package/src/components/TriggerEditor/FunctionInputEditor.tsx +9 -13
  212. package/src/components/TriggerEditor/SpecSelector.tsx +18 -14
  213. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +36 -18
  214. package/src/components/TriggerEditor/TriggerEditor.tsx +120 -25
  215. package/src/components/TriggerEditor/util.ts +51 -0
  216. package/src/containers/AutomationSettings/AutomationSettings.tsx +12 -8
  217. package/src/containers/AutomationSettings/index.ts +1 -3
  218. package/src/containers/FunctionsContainer/FunctionsContainer.tsx +11 -11
  219. package/src/containers/FunctionsContainer/index.ts +1 -3
  220. package/src/containers/TriggerSettings/TriggerSettings.tsx +32 -10
  221. package/src/containers/TriggerSettings/index.ts +2 -3
  222. package/src/hooks/index.ts +2 -1
  223. package/src/hooks/useEdgeTriggersDispatcherStatus.ts +78 -0
  224. package/src/hooks/useTriggerRuntimeControls.ts +13 -8
  225. package/src/index.ts +0 -4
  226. package/src/meta.ts +27 -7
  227. package/src/operations/create-trigger-from-template.ts +70 -0
  228. package/src/operations/index.ts +7 -0
  229. package/src/plugin.ts +11 -0
  230. package/src/testing/test-functions.ts +38 -4
  231. package/src/testing.ts +7 -0
  232. package/src/translations.ts +52 -39
  233. package/src/types/AutomationOperation.ts +39 -0
  234. package/src/types/index.ts +2 -2
  235. package/src/types/schema.ts +4 -25
  236. package/src/vite-env.d.ts +10 -0
  237. package/dist/lib/browser/AutomationPanel-EHRSV2DL.mjs +0 -11
  238. package/dist/lib/browser/AutomationSettings-TJYG77L6.mjs +0 -37
  239. package/dist/lib/browser/AutomationSettings-TJYG77L6.mjs.map +0 -7
  240. package/dist/lib/browser/FunctionsContainer-XHEQSNNO.mjs +0 -43
  241. package/dist/lib/browser/FunctionsContainer-XHEQSNNO.mjs.map +0 -7
  242. package/dist/lib/browser/FunctionsPanel-5WPUZGRB.mjs +0 -10
  243. package/dist/lib/browser/FunctionsRegistry-XRXIZRLL.mjs +0 -10
  244. package/dist/lib/browser/TriggerSettings-HUQT53SV.mjs +0 -13
  245. package/dist/lib/browser/TriggerSettings-HUQT53SV.mjs.map +0 -7
  246. package/dist/lib/browser/app-graph-builder-HLARI3VW.mjs +0 -85
  247. package/dist/lib/browser/app-graph-builder-HLARI3VW.mjs.map +0 -7
  248. package/dist/lib/browser/chunk-3P4R5WNC.mjs +0 -8
  249. package/dist/lib/browser/chunk-3P4R5WNC.mjs.map +0 -7
  250. package/dist/lib/browser/chunk-4EY2KMCM.mjs +0 -272
  251. package/dist/lib/browser/chunk-4EY2KMCM.mjs.map +0 -7
  252. package/dist/lib/browser/chunk-PZNBEKO5.mjs +0 -17
  253. package/dist/lib/browser/chunk-PZNBEKO5.mjs.map +0 -7
  254. package/dist/lib/browser/chunk-QPG3AKFX.mjs +0 -93
  255. package/dist/lib/browser/chunk-QPG3AKFX.mjs.map +0 -7
  256. package/dist/lib/browser/chunk-SEG5OCGB.mjs +0 -31
  257. package/dist/lib/browser/chunk-SEG5OCGB.mjs.map +0 -7
  258. package/dist/lib/browser/chunk-U55ZXRYM.mjs.map +0 -7
  259. package/dist/lib/browser/chunk-WOBCY2FQ.mjs +0 -83
  260. package/dist/lib/browser/chunk-WOBCY2FQ.mjs.map +0 -7
  261. package/dist/lib/browser/chunk-XFXYU645.mjs.map +0 -7
  262. package/dist/lib/browser/chunk-ZNI2CGQP.mjs.map +0 -7
  263. package/dist/lib/browser/cli/index.mjs.map +0 -7
  264. package/dist/lib/browser/compute-runtime-L2RVWXY2.mjs +0 -124
  265. package/dist/lib/browser/compute-runtime-L2RVWXY2.mjs.map +0 -7
  266. package/dist/lib/browser/hooks/index.mjs +0 -13
  267. package/dist/lib/browser/index.mjs +0 -123
  268. package/dist/lib/browser/index.mjs.map +0 -7
  269. package/dist/lib/browser/meta.json +0 -1
  270. package/dist/lib/browser/operation-resolver-2U6ZQVXR.mjs +0 -83
  271. package/dist/lib/browser/operation-resolver-2U6ZQVXR.mjs.map +0 -7
  272. package/dist/lib/browser/react-surface-U6FAYV42.mjs +0 -69
  273. package/dist/lib/browser/react-surface-U6FAYV42.mjs.map +0 -7
  274. package/dist/lib/browser/types/index.mjs +0 -14
  275. package/dist/lib/node-esm/AutomationPanel-F7MPUR7U.mjs +0 -12
  276. package/dist/lib/node-esm/AutomationSettings-5AHJMILI.mjs +0 -38
  277. package/dist/lib/node-esm/AutomationSettings-5AHJMILI.mjs.map +0 -7
  278. package/dist/lib/node-esm/FunctionsContainer-U5UVRKVT.mjs +0 -44
  279. package/dist/lib/node-esm/FunctionsContainer-U5UVRKVT.mjs.map +0 -7
  280. package/dist/lib/node-esm/FunctionsPanel-UFL5LT2R.mjs +0 -11
  281. package/dist/lib/node-esm/FunctionsRegistry-574OBZ5T.mjs +0 -11
  282. package/dist/lib/node-esm/TriggerSettings-RDIJHUKK.mjs +0 -14
  283. package/dist/lib/node-esm/TriggerSettings-RDIJHUKK.mjs.map +0 -7
  284. package/dist/lib/node-esm/app-graph-builder-Z2TMQHVX.mjs +0 -86
  285. package/dist/lib/node-esm/app-graph-builder-Z2TMQHVX.mjs.map +0 -7
  286. package/dist/lib/node-esm/chunk-2X564LII.mjs +0 -10
  287. package/dist/lib/node-esm/chunk-2X564LII.mjs.map +0 -7
  288. package/dist/lib/node-esm/chunk-34HGM46Z.mjs +0 -32
  289. package/dist/lib/node-esm/chunk-34HGM46Z.mjs.map +0 -7
  290. package/dist/lib/node-esm/chunk-4DK33JDH.mjs +0 -84
  291. package/dist/lib/node-esm/chunk-4DK33JDH.mjs.map +0 -7
  292. package/dist/lib/node-esm/chunk-5FXNN3MV.mjs +0 -19
  293. package/dist/lib/node-esm/chunk-5FXNN3MV.mjs.map +0 -7
  294. package/dist/lib/node-esm/chunk-7AIKTEAX.mjs +0 -273
  295. package/dist/lib/node-esm/chunk-7AIKTEAX.mjs.map +0 -7
  296. package/dist/lib/node-esm/chunk-CMZ4NKSK.mjs +0 -271
  297. package/dist/lib/node-esm/chunk-CMZ4NKSK.mjs.map +0 -7
  298. package/dist/lib/node-esm/chunk-GXFQR3KI.mjs +0 -99
  299. package/dist/lib/node-esm/chunk-GXFQR3KI.mjs.map +0 -7
  300. package/dist/lib/node-esm/chunk-QNPYY3XZ.mjs +0 -94
  301. package/dist/lib/node-esm/chunk-QNPYY3XZ.mjs.map +0 -7
  302. package/dist/lib/node-esm/chunk-RTEXGGBX.mjs +0 -97
  303. package/dist/lib/node-esm/chunk-RTEXGGBX.mjs.map +0 -7
  304. package/dist/lib/node-esm/cli/index.mjs +0 -1109
  305. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  306. package/dist/lib/node-esm/compute-runtime-XD6A5Q7Q.mjs +0 -125
  307. package/dist/lib/node-esm/compute-runtime-XD6A5Q7Q.mjs.map +0 -7
  308. package/dist/lib/node-esm/hooks/index.mjs +0 -14
  309. package/dist/lib/node-esm/index.mjs +0 -124
  310. package/dist/lib/node-esm/index.mjs.map +0 -7
  311. package/dist/lib/node-esm/meta.json +0 -1
  312. package/dist/lib/node-esm/operation-resolver-XWJGBHJZ.mjs +0 -84
  313. package/dist/lib/node-esm/operation-resolver-XWJGBHJZ.mjs.map +0 -7
  314. package/dist/lib/node-esm/react-surface-BVNHCWQ7.mjs +0 -70
  315. package/dist/lib/node-esm/react-surface-BVNHCWQ7.mjs.map +0 -7
  316. package/dist/lib/node-esm/types/index.mjs +0 -15
  317. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  318. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  319. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  320. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts +0 -6
  321. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts.map +0 -1
  322. package/dist/types/src/capabilities/compute-runtime/index.d.ts +0 -3
  323. package/dist/types/src/capabilities/compute-runtime/index.d.ts.map +0 -1
  324. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  325. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  326. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  327. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  328. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  329. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  330. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  331. package/dist/types/src/cli/commands/index.d.ts.map +0 -1
  332. package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +0 -1
  333. package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +0 -1
  334. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +0 -1
  335. package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +0 -1
  336. package/dist/types/src/cli/commands/trigger/index.d.ts.map +0 -1
  337. package/dist/types/src/cli/commands/trigger/list.d.ts.map +0 -1
  338. package/dist/types/src/cli/commands/trigger/options.d.ts.map +0 -1
  339. package/dist/types/src/cli/commands/trigger/remove.d.ts.map +0 -1
  340. package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +0 -1
  341. package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +0 -1
  342. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +0 -1
  343. package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +0 -1
  344. package/dist/types/src/cli/commands/trigger/util.d.ts +0 -46
  345. package/dist/types/src/cli/commands/trigger/util.d.ts.map +0 -1
  346. package/dist/types/src/cli/index.d.ts +0 -2
  347. package/dist/types/src/cli/index.d.ts.map +0 -1
  348. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  349. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +0 -12
  350. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +0 -1
  351. package/dist/types/src/types/capabilities.d.ts +0 -22
  352. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  353. package/dist/types/src/types/events.d.ts +0 -5
  354. package/dist/types/src/types/events.d.ts.map +0 -1
  355. package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -72
  356. package/src/capabilities/app-graph-builder/index.ts +0 -7
  357. package/src/capabilities/compute-runtime/compute-runtime.ts +0 -146
  358. package/src/capabilities/compute-runtime/index.ts +0 -7
  359. package/src/capabilities/operation-resolver/index.ts +0 -7
  360. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -80
  361. package/src/capabilities/react-surface/index.ts +0 -7
  362. package/src/capabilities/react-surface/react-surface.tsx +0 -61
  363. package/src/cli/index.ts +0 -5
  364. package/src/cli/plugin.ts +0 -24
  365. package/src/hooks/useComputeRuntimeCallback.ts +0 -67
  366. package/src/types/capabilities.ts +0 -43
  367. package/src/types/events.ts +0 -11
  368. /package/dist/lib/{browser/AutomationPanel-EHRSV2DL.mjs.map → neutral/AutomationPanel-OKF2MDLO.mjs.map} +0 -0
  369. /package/dist/lib/{browser/FunctionsPanel-5WPUZGRB.mjs.map → neutral/AutomationPlugin.mjs.map} +0 -0
  370. /package/dist/lib/{browser/FunctionsRegistry-XRXIZRLL.mjs.map → neutral/TriggerSettings-XCHIZPOR.mjs.map} +0 -0
  371. /package/dist/lib/{browser/hooks/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  372. /package/dist/lib/{browser/types → neutral/components}/index.mjs.map +0 -0
  373. /package/dist/lib/{node-esm → neutral}/hooks/index.mjs.map +0 -0
  374. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  375. /package/dist/lib/{node-esm/AutomationPanel-F7MPUR7U.mjs.map → neutral/meta.mjs.map} +0 -0
  376. /package/dist/lib/{node-esm/FunctionsPanel-UFL5LT2R.mjs.map → neutral/operations/index.mjs.map} +0 -0
  377. /package/dist/lib/{node-esm/FunctionsRegistry-574OBZ5T.mjs.map → neutral/testing.mjs.map} +0 -0
  378. /package/dist/types/src/capabilities/{app-graph-builder/app-graph-builder.d.ts → app-graph-builder.d.ts} +0 -0
  379. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
  380. /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
  381. /package/dist/types/src/{cli/commands → commands}/trigger/update/subscription.d.ts +0 -0
  382. /package/dist/types/src/{cli/commands → commands}/trigger/update/timer.d.ts +0 -0
  383. /package/src/{cli/commands → commands}/index.ts +0 -0
  384. /package/src/{cli/commands → commands}/trigger/create/index.ts +0 -0
  385. /package/src/{cli/commands → commands}/trigger/index.ts +0 -0
  386. /package/src/{cli/commands → commands}/trigger/update/index.ts +0 -0
@@ -0,0 +1,8 @@
1
+ import {
2
+ AutomationOperationHandlerSet
3
+ } from "../chunk-TJOQNSS5.mjs";
4
+ import "../chunk-J5LGTIGS.mjs";
5
+ export {
6
+ AutomationOperationHandlerSet
7
+ };
8
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,16 @@
1
+ import {
2
+ AutomationOperationHandlerSet
3
+ } from "./chunk-TJOQNSS5.mjs";
4
+ import {
5
+ meta
6
+ } from "./chunk-LRVJEKMN.mjs";
7
+ import "./chunk-J5LGTIGS.mjs";
8
+
9
+ // src/plugin.ts
10
+ import { Plugin } from "@dxos/app-framework";
11
+ var AutomationPlugin = Plugin.lazy(meta, () => import("#plugin"));
12
+ export {
13
+ AutomationOperationHandlerSet,
14
+ AutomationPlugin
15
+ };
16
+ //# sourceMappingURL=plugin.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/plugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport const AutomationPlugin = Plugin.lazy(meta, () => import('#plugin'));\n\nexport { AutomationOperationHandlerSet } from './operations';\n"],
5
+ "mappings": ";;;;;;;;;AAIA,SAASA,cAAc;AAIhB,IAAMC,mBAAmBC,OAAOC,KAAKC,MAAM,MAAM,OAAO,SAAA,CAAA;",
6
+ "names": ["Plugin", "AutomationPlugin", "Plugin", "lazy", "meta"]
7
+ }
@@ -0,0 +1,57 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/react-surface.tsx
4
+ import * as Effect from "effect/Effect";
5
+ import React from "react";
6
+ import { Capabilities, Capability } from "@dxos/app-framework";
7
+ import { Surface } from "@dxos/app-framework/ui";
8
+ import { AppSurface, useActiveSpace } from "@dxos/app-toolkit/ui";
9
+ import { getSpace } from "@dxos/react-client/echo";
10
+ import { AutomationSettings, FunctionsContainer } from "#containers";
11
+ import { meta } from "#meta";
12
+ var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, [
13
+ Surface.create({
14
+ id: "spaceSettingsFunctions",
15
+ filter: AppSurface.literal(AppSurface.Article, `${meta.id}.space-settings-functions`),
16
+ component: () => {
17
+ const space = useActiveSpace();
18
+ if (!space) {
19
+ return null;
20
+ }
21
+ return /* @__PURE__ */ React.createElement(FunctionsContainer, {
22
+ space
23
+ });
24
+ }
25
+ }),
26
+ Surface.create({
27
+ id: "spaceSettingsAutomation",
28
+ filter: AppSurface.literal(AppSurface.Article, `${meta.id}.space-settings-automation`),
29
+ component: () => {
30
+ const space = useActiveSpace();
31
+ if (!space) {
32
+ return null;
33
+ }
34
+ return /* @__PURE__ */ React.createElement(AutomationSettings, {
35
+ space
36
+ });
37
+ }
38
+ }),
39
+ Surface.create({
40
+ id: "companion.automation",
41
+ filter: AppSurface.allOf(AppSurface.literal(AppSurface.Article, "automation"), AppSurface.companion(AppSurface.Article)),
42
+ component: ({ data }) => {
43
+ const space = getSpace(data.companionTo);
44
+ if (!space) {
45
+ return null;
46
+ }
47
+ return /* @__PURE__ */ React.createElement(AutomationSettings, {
48
+ space,
49
+ object: data.companionTo
50
+ });
51
+ }
52
+ })
53
+ ])));
54
+ export {
55
+ react_surface_default as default
56
+ };
57
+ //# sourceMappingURL=react-surface-FOOBGYNG.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { AppSurface, useActiveSpace } from '@dxos/app-toolkit/ui';\nimport { getSpace } from '@dxos/react-client/echo';\n\nimport { AutomationSettings, FunctionsContainer } from '#containers';\nimport { meta } from '#meta';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: 'spaceSettingsFunctions',\n filter: AppSurface.literal(AppSurface.Article, `${meta.id}.space-settings-functions`),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <FunctionsContainer space={space} />;\n },\n }),\n Surface.create({\n id: 'spaceSettingsAutomation',\n filter: AppSurface.literal(AppSurface.Article, `${meta.id}.space-settings-automation`),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <AutomationSettings space={space} />;\n },\n }),\n Surface.create({\n id: 'companion.automation',\n filter: AppSurface.allOf(\n AppSurface.literal(AppSurface.Article, 'automation'),\n AppSurface.companion(AppSurface.Article),\n ),\n component: ({ data }) => {\n const space = getSpace(data.companionTo);\n if (!space) {\n return null;\n }\n return <AutomationSettings space={space} object={data.companionTo} />;\n },\n }),\n ]),\n ),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,eAAe;AACxB,SAASC,YAAYC,sBAAsB;AAC3C,SAASC,gBAAgB;AAEzB,SAASC,oBAAoBC,0BAA0B;AACvD,SAASC,YAAY;AAErB,IAAA,wBAAeP,WAAWQ,WAAW,MAC5BC,eACLT,WAAWU,YAAYX,aAAaY,cAAc;EAChDV,QAAQW,OAAO;IACbC,IAAI;IACJC,QAAQZ,WAAWa,QAAQb,WAAWc,SAAS,GAAGT,KAAKM,EAAE,2BAA2B;IACpFI,WAAW,MAAA;AACT,YAAMC,QAAQf,eAAAA;AACd,UAAI,CAACe,OAAO;AACV,eAAO;MACT;AAEA,aAAO,sBAAA,cAACZ,oBAAAA;QAAmBY;;IAC7B;EACF,CAAA;EACAjB,QAAQW,OAAO;IACbC,IAAI;IACJC,QAAQZ,WAAWa,QAAQb,WAAWc,SAAS,GAAGT,KAAKM,EAAE,4BAA4B;IACrFI,WAAW,MAAA;AACT,YAAMC,QAAQf,eAAAA;AACd,UAAI,CAACe,OAAO;AACV,eAAO;MACT;AAEA,aAAO,sBAAA,cAACb,oBAAAA;QAAmBa;;IAC7B;EACF,CAAA;EACAjB,QAAQW,OAAO;IACbC,IAAI;IACJC,QAAQZ,WAAWiB,MACjBjB,WAAWa,QAAQb,WAAWc,SAAS,YAAA,GACvCd,WAAWkB,UAAUlB,WAAWc,OAAO,CAAA;IAEzCC,WAAW,CAAC,EAAEI,KAAI,MAAE;AAClB,YAAMH,QAAQd,SAASiB,KAAKC,WAAW;AACvC,UAAI,CAACJ,OAAO;AACV,eAAO;MACT;AACA,aAAO,sBAAA,cAACb,oBAAAA;QAAmBa;QAAcK,QAAQF,KAAKC;;IACxD;EACF,CAAA;CACD,CAAA,CAAA;",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "Surface", "AppSurface", "useActiveSpace", "getSpace", "AutomationSettings", "FunctionsContainer", "meta", "makeModule", "succeed", "contributes", "ReactSurface", "create", "id", "filter", "literal", "Article", "component", "space", "allOf", "companion", "data", "companionTo", "object"]
7
+ }
@@ -0,0 +1,82 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/registry-sync.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capabilities, Capability } from "@dxos/app-framework";
6
+ import { AppCapabilities } from "@dxos/app-toolkit";
7
+ import { Operation } from "@dxos/compute";
8
+ import { log } from "@dxos/log";
9
+ import { ClientCapabilities } from "@dxos/plugin-client";
10
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/capabilities/registry-sync.ts";
11
+ var registry_sync_default = Capability.makeModule(Effect.fnUntraced(function* () {
12
+ const client = yield* Capability.get(ClientCapabilities.Client);
13
+ const atomRegistry = yield* Capability.get(Capabilities.AtomRegistry);
14
+ const capabilityManager = yield* Capability.Service;
15
+ const blueprintDefinitionsAtom = capabilityManager.atom(AppCapabilities.BlueprintDefinition);
16
+ const prevBlueprintKeys = /* @__PURE__ */ new Set();
17
+ atomRegistry.subscribe(blueprintDefinitionsAtom, (definitions) => {
18
+ const fresh = [];
19
+ for (const def of definitions) {
20
+ if (!prevBlueprintKeys.has(def.key)) {
21
+ prevBlueprintKeys.add(def.key);
22
+ fresh.push(def.make());
23
+ }
24
+ }
25
+ if (fresh.length > 0) {
26
+ client.graph.registry.add(fresh);
27
+ }
28
+ }, {
29
+ immediate: true
30
+ });
31
+ const operationHandlersAtom = capabilityManager.atom(Capabilities.OperationHandler);
32
+ const prevOperationKeys = /* @__PURE__ */ new Set();
33
+ atomRegistry.subscribe(operationHandlersAtom, async (handlerSets) => {
34
+ try {
35
+ const handlers = (await Promise.all(handlerSets.map((set) => set.getHandlers()))).flat();
36
+ const seenKeys = /* @__PURE__ */ new Set();
37
+ const batch = [];
38
+ for (const handler of handlers) {
39
+ const key = handler.meta.key;
40
+ if (!key) {
41
+ log.warn("skipping operation handler without key", void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 61, S: this });
42
+ continue;
43
+ }
44
+ if (seenKeys.has(key)) {
45
+ log("skipping duplicate operation", {
46
+ key
47
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 65, S: this });
48
+ continue;
49
+ }
50
+ seenKeys.add(key);
51
+ if (prevOperationKeys.has(key)) {
52
+ continue;
53
+ }
54
+ try {
55
+ batch.push(Operation.serialize(handler));
56
+ } catch {
57
+ log.verbose("skipping operation with unserializable schema", {
58
+ key
59
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 77, S: this });
60
+ prevOperationKeys.add(key);
61
+ }
62
+ }
63
+ if (batch.length > 0) {
64
+ client.graph.registry.add(batch);
65
+ for (const operation of batch) {
66
+ const operationKey = Operation.getKey(operation);
67
+ if (operationKey) {
68
+ prevOperationKeys.add(operationKey);
69
+ }
70
+ }
71
+ }
72
+ } catch (error) {
73
+ log.catch(error, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 93, S: this });
74
+ }
75
+ }, {
76
+ immediate: true
77
+ });
78
+ }));
79
+ export {
80
+ registry_sync_default as default
81
+ };
82
+ //# sourceMappingURL=registry-sync-JYDDTBAE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/registry-sync.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { Blueprint, Operation } from '@dxos/compute';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\n/**\n * Syncs plugin capability contributions into `client.graph.registry`.\n *\n * Watches two capability atoms and imperatively adds entities to the\n * hypergraph registry when they change:\n * - {@link AppCapabilities.BlueprintDefinition} → instantiates each blueprint via `def.make()`.\n * - {@link Capabilities.OperationHandler} → serializes each handler via `Operation.serialize`.\n *\n * Blueprint DB copies (stored in a space when a blueprint is \"enabled\") are treated as\n * user forks and are not overwritten. The registry is always used as the source of truth\n * for blueprint instructions at request time — see `formatSystemPrompt` in `@dxos/assistant`.\n *\n * Note: the plugin framework does not yet expose a teardown hook for capability\n * modules (see the TODO in process-manager-capability.ts), so the subscriptions\n * are not explicitly cancelled. They are effectively scoped to the client's lifetime.\n */\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const client = yield* Capability.get(ClientCapabilities.Client);\n const atomRegistry = yield* Capability.get(Capabilities.AtomRegistry);\n const capabilityManager = yield* Capability.Service;\n\n //\n // Blueprint registration.\n //\n\n const blueprintDefinitionsAtom = capabilityManager.atom(AppCapabilities.BlueprintDefinition);\n const prevBlueprintKeys = new Set<string>();\n\n atomRegistry.subscribe(\n blueprintDefinitionsAtom,\n (definitions) => {\n const fresh: Blueprint.Blueprint[] = [];\n for (const def of definitions) {\n if (!prevBlueprintKeys.has(def.key)) {\n prevBlueprintKeys.add(def.key);\n fresh.push(def.make());\n }\n }\n if (fresh.length > 0) {\n client.graph.registry.add(fresh);\n }\n },\n { immediate: true },\n );\n\n //\n // Operation registration.\n //\n\n const operationHandlersAtom = capabilityManager.atom(Capabilities.OperationHandler);\n const prevOperationKeys = new Set<string>();\n\n atomRegistry.subscribe(\n operationHandlersAtom,\n async (handlerSets) => {\n try {\n const handlers = (await Promise.all(handlerSets.map((set) => set.getHandlers()))).flat();\n const seenKeys = new Set<string>();\n const batch: Operation.PersistentOperation[] = [];\n for (const handler of handlers) {\n const key = handler.meta.key;\n if (!key) {\n log.warn('skipping operation handler without key');\n continue;\n }\n if (seenKeys.has(key)) {\n log('skipping duplicate operation', { key });\n continue;\n }\n seenKeys.add(key);\n if (prevOperationKeys.has(key)) {\n continue;\n }\n try {\n batch.push(Operation.serialize(handler));\n } catch {\n log.verbose('skipping operation with unserializable schema', { key });\n prevOperationKeys.add(key);\n }\n }\n if (batch.length > 0) {\n client.graph.registry.add(batch);\n for (const operation of batch) {\n const operationKey = Operation.getKey(operation);\n if (operationKey) {\n prevOperationKeys.add(operationKey);\n }\n }\n }\n } catch (error) {\n log.catch(error);\n }\n },\n { immediate: true },\n );\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAAoBC,iBAAiB;AACrC,SAASC,WAAW;AACpB,SAASC,0BAA0B;AAEnC,IAAA,eAAA;AAmBI,IAAMC,wBAAAA,WAAe,WAAsBN,kBAAAA,aAAaO;AACxD,QAAMC,SAAAA,OAAAA,WAA2BP,IAAAA,mBAAkB,MAAA;AAEnD,QAAE,eAAA,OAAA,WAAA,IAAA,aAAA,YAAA;AACF,QAAA,oBAA0B,OAAA,WAAA;AAM1BK,QAAAA,2BACEG,kBACCC,KAAAA,gBAAAA,mBAAAA;QACC,oBAAuC,oBAAA,IAAA;eAClC,UAAaA,0BAAa,CAAA,gBAAA;UAC7B,QAAKC,CAAAA;eACHA,OAAAA,aAAsBC;UACtBC,CAAAA,kBAAmB,IAAA,IAAA,GAAA,GAAA;AACrB,0BAAA,IAAA,IAAA,GAAA;AACF,cAAA,KAAA,IAAA,KAAA,CAAA;MACIA;;AAEJ,QAAA,MAAA,SAAA,GAAA;AAEF,aAAA,MAAA,SAAA,IAAA,KAAA;IAAEC;EAAgB,GAAA;IAGlB,WAAA;EACF,CAAA;AAMAR,QAAAA,wBACES,kBACA,KAAOC,aAAAA,gBAAAA;QACL,oBAAI,oBAAA,IAAA;eACF,UAAMC,uBAA8BD,OAAAA,gBAAyBE;QAC7D;AACA,YAAMC,YAA2C,MAAA,QAAA,IAAA,YAAA,IAAA,CAAA,QAAA,IAAA,YAAA,CAAA,CAAA,GAAA,KAAA;AACjD,YAAK,WAAMC,oBAAAA,IAAWH;YACpB,QAAMI,CAAAA;iBACDA,WAAK,UAAA;cACRjB,MAAQ,QAAC,KAAA;YACT,CAAA,KAAA;AACF,cAAA,KAAA,0CAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACIkB;;qBACoCD,IAAAA,GAAAA,GAAAA;AAAI,cAAA,gCAAA;YAC1C;UACF,GAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACAC;QACA;iBACE,IAAA,GAAA;AACF,YAAA,kBAAA,IAAA,GAAA,GAAA;AACI;;AAEJ,YAAE;AACAlB,gBAAImB,KAAO,UAAC,UAAA,OAAA,CAAA;gBAAmDF;AAAI,cAAA,QAAA,iDAAA;YACnEG;UACF,GAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACF,4BAAA,IAAA,GAAA;QACIL;;UAEF,MAAK,SAAMM,GAAAA;eACT,MAAMC,SAAAA,IAAevB,KAAAA;mBACjBuB,aAAc,OAAA;gBAChBF,eAAAA,UAAsBE,OAAAA,SAAAA;AACxB,cAAA,cAAA;AACF,8BAAA,IAAA,YAAA;UACF;QACA;MACAtB;IACF,SAAA,OAAA;AAEF,UAAA,MAAA,OAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;IAAEU;EAAgB,GAAA;IAGtB,WAAA;;;",
6
+ "names": ["Effect", "Capabilities", "Capability", "AppCapabilities", "Operation", "log", "ClientCapabilities", "atomRegistry", "AtomRegistry", "capabilityManager", "blueprintDefinitionsAtom", "definitions", "prevBlueprintKeys", "def", "fresh", "immediate", "operationHandlersAtom", "handlerSets", "handlers", "set", "batch", "handler", "key", "seenKeys", "verbose", "prevOperationKeys", "operation", "operationKey"]
7
+ }
@@ -0,0 +1,8 @@
1
+ import {
2
+ AutomationPlugin
3
+ } from "./chunk-7YWISQOZ.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+ export {
6
+ AutomationPlugin
7
+ };
8
+ //# sourceMappingURL=testing.mjs.map
@@ -0,0 +1,60 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/translations.ts
4
+ import { meta } from "#meta";
5
+ var translations = [
6
+ {
7
+ "en-US": {
8
+ [meta.id]: {
9
+ "plugin.name": "Automation",
10
+ "automation-panel.label": "Automations",
11
+ "script-automation.label": "Automation",
12
+ "automation-verbose.label": "Manage automations",
13
+ "automation.description": "Triggers that automate this space.",
14
+ "runtime.label": "Trigger runtime location",
15
+ "runtime.description": "Determines where the triggers in this space will execute.",
16
+ "runtime.disabled.label": "Triggers disabled",
17
+ "runtime.local.label": "Local",
18
+ "runtime.edge.label": "EDGE (experimental)",
19
+ "functions-panel.label": "Functions",
20
+ "functions-verbose.label": "Manage deployed functions",
21
+ "functions-registry-verbose.label": "Functions registry",
22
+ "functions-registry.description": "Import functions from the registry",
23
+ "functions.description": "Functions deployed from this space on EDGE.",
24
+ "show-source-button.label": "Show source",
25
+ "delete-function-button.label": "Delete function",
26
+ "function-parameters.label": "Function parameters",
27
+ "trigger-editor.title": "Configure Trigger",
28
+ "trigger-editor.description": "Triggers are used to run functions at specific times or when specific events occur.",
29
+ "new-trigger.label": "Add Trigger",
30
+ "trigger-type.timer.label": "Timer",
31
+ "trigger-type.webhook.label": "Webhook",
32
+ "trigger-type.websocket.label": "Websocket",
33
+ "trigger-type.subscription.label": "Subscription",
34
+ "trigger-type.email.label": "Email",
35
+ "trigger-type.feed.label": "Feed",
36
+ "trigger-payload-prop-name.placeholder": "New payload property name",
37
+ "import-function-button.label": "Loading...",
38
+ "update-function-button.label": "Update",
39
+ "loading-functions.message": "Loading functions...",
40
+ "edge.trigger.status.loading.message": "Loading edge trigger status\u2026",
41
+ "edge.trigger.status.unavailable.message": "Edge trigger status unavailable",
42
+ "edge.trigger.status.dispatcher.label": "Edge dispatcher: {{state}}",
43
+ "edge.trigger.status.active.label": "active",
44
+ "edge.trigger.status.inactive.label": "inactive",
45
+ "edge.trigger.status.next.cron.label": "Next cron run: {{time}}",
46
+ "edge.trigger.status.next.alarm.label": "Next alarm: {{time}}",
47
+ "edge.trigger.status.inactivity.label": "Inactivity timeout: {{remaining}} remaining",
48
+ "edge.trigger.status.registered.label": "Edge: registered",
49
+ "edge.trigger.status.not.registered.label": "Edge: not registered",
50
+ "edge.trigger.status.registered.count.label": "Enabled cron triggers on edge: {{registered}} / {{total}}",
51
+ "edge.trigger.status.cron.na.label": "Edge: cron registration n/a",
52
+ "edge.trigger.status.disabled.detail.label": "disabled"
53
+ }
54
+ }
55
+ }
56
+ ];
57
+ export {
58
+ translations
59
+ };
60
+ //# sourceMappingURL=translations.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n {\n 'en-US': {\n [meta.id]: {\n 'plugin.name': 'Automation',\n 'automation-panel.label': 'Automations',\n 'script-automation.label': 'Automation',\n 'automation-verbose.label': 'Manage automations',\n 'automation.description': 'Triggers that automate this space.',\n\n 'runtime.label': 'Trigger runtime location',\n 'runtime.description': 'Determines where the triggers in this space will execute.',\n 'runtime.disabled.label': 'Triggers disabled',\n 'runtime.local.label': 'Local',\n 'runtime.edge.label': 'EDGE (experimental)',\n\n 'functions-panel.label': 'Functions',\n 'functions-verbose.label': 'Manage deployed functions',\n 'functions-registry-verbose.label': 'Functions registry',\n 'functions-registry.description': 'Import functions from the registry',\n 'functions.description': 'Functions deployed from this space on EDGE.',\n 'show-source-button.label': 'Show source',\n 'delete-function-button.label': 'Delete function',\n\n 'function-parameters.label': 'Function parameters',\n\n 'trigger-editor.title': 'Configure Trigger',\n 'trigger-editor.description':\n 'Triggers are used to run functions at specific times or when specific events occur.',\n 'new-trigger.label': 'Add Trigger',\n\n 'trigger-type.timer.label': 'Timer',\n 'trigger-type.webhook.label': 'Webhook',\n 'trigger-type.websocket.label': 'Websocket',\n 'trigger-type.subscription.label': 'Subscription',\n 'trigger-type.email.label': 'Email',\n 'trigger-type.feed.label': 'Feed',\n\n 'trigger-payload-prop-name.placeholder': 'New payload property name',\n 'import-function-button.label': 'Loading...',\n 'update-function-button.label': 'Update',\n 'loading-functions.message': 'Loading functions...',\n\n 'edge.trigger.status.loading.message': 'Loading edge trigger status…',\n 'edge.trigger.status.unavailable.message': 'Edge trigger status unavailable',\n 'edge.trigger.status.dispatcher.label': 'Edge dispatcher: {{state}}',\n 'edge.trigger.status.active.label': 'active',\n 'edge.trigger.status.inactive.label': 'inactive',\n 'edge.trigger.status.next.cron.label': 'Next cron run: {{time}}',\n 'edge.trigger.status.next.alarm.label': 'Next alarm: {{time}}',\n 'edge.trigger.status.inactivity.label': 'Inactivity timeout: {{remaining}} remaining',\n 'edge.trigger.status.registered.label': 'Edge: registered',\n 'edge.trigger.status.not.registered.label': 'Edge: not registered',\n 'edge.trigger.status.registered.count.label': 'Enabled cron triggers on edge: {{registered}} / {{total}}',\n 'edge.trigger.status.cron.na.label': 'Edge: cron registration n/a',\n 'edge.trigger.status.disabled.detail.label': 'disabled',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";;;AAMA,SAASA,YAAY;AAEd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACD,KAAKE,EAAE,GAAG;QACT,eAAe;QACf,0BAA0B;QAC1B,2BAA2B;QAC3B,4BAA4B;QAC5B,0BAA0B;QAE1B,iBAAiB;QACjB,uBAAuB;QACvB,0BAA0B;QAC1B,uBAAuB;QACvB,sBAAsB;QAEtB,yBAAyB;QACzB,2BAA2B;QAC3B,oCAAoC;QACpC,kCAAkC;QAClC,yBAAyB;QACzB,4BAA4B;QAC5B,gCAAgC;QAEhC,6BAA6B;QAE7B,wBAAwB;QACxB,8BACE;QACF,qBAAqB;QAErB,4BAA4B;QAC5B,8BAA8B;QAC9B,gCAAgC;QAChC,mCAAmC;QACnC,4BAA4B;QAC5B,2BAA2B;QAE3B,yCAAyC;QACzC,gCAAgC;QAChC,gCAAgC;QAChC,6BAA6B;QAE7B,uCAAuC;QACvC,2CAA2C;QAC3C,wCAAwC;QACxC,oCAAoC;QACpC,sCAAsC;QACtC,uCAAuC;QACvC,wCAAwC;QACxC,wCAAwC;QACxC,wCAAwC;QACxC,4CAA4C;QAC5C,8CAA8C;QAC9C,qCAAqC;QACrC,6CAA6C;MAC/C;IACF;EACF;;",
6
+ "names": ["meta", "translations", "id"]
7
+ }
@@ -0,0 +1,77 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/trigger-runtime-controller.ts
4
+ import * as Effect from "effect/Effect";
5
+ import * as Fiber from "effect/Fiber";
6
+ import { Capabilities, Capability } from "@dxos/app-framework";
7
+ import { ServiceResolver } from "@dxos/compute";
8
+ import { Obj } from "@dxos/echo";
9
+ import { TriggerDispatcher } from "@dxos/functions-runtime";
10
+ import { log } from "@dxos/log";
11
+ import { ClientCapabilities } from "@dxos/plugin-client";
12
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/capabilities/trigger-runtime-controller.ts";
13
+ var LOCAL_ENVIRONMENT = "local";
14
+ var trigger_runtime_controller_default = Capability.makeModule(Effect.fnUntraced(function* () {
15
+ const client = yield* Capability.get(ClientCapabilities.Client);
16
+ const runtime = yield* Capability.get(Capabilities.ProcessManagerRuntime);
17
+ const trackers = /* @__PURE__ */ new Map();
18
+ const transition = (spaceId, environment) => runtime.runFork(Effect.gen(function* () {
19
+ const dispatcher = yield* TriggerDispatcher;
20
+ yield* environment === LOCAL_ENVIRONMENT ? dispatcher.start() : dispatcher.stop();
21
+ }).pipe(Effect.provide(ServiceResolver.provide({
22
+ space: spaceId
23
+ }, TriggerDispatcher)), Effect.tapErrorCause((cause) => Effect.sync(() => log.warn("trigger dispatcher transition failed", {
24
+ spaceId,
25
+ environment,
26
+ cause
27
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 41, S: this })))));
28
+ const apply = (tracker, spaceId, environment) => {
29
+ if (tracker.lastEnvironment === environment) {
30
+ return;
31
+ }
32
+ tracker.lastEnvironment = environment;
33
+ if (tracker.inFlight) {
34
+ runtime.runFork(Fiber.interrupt(tracker.inFlight));
35
+ }
36
+ tracker.inFlight = transition(spaceId, environment);
37
+ };
38
+ const install = (space) => {
39
+ if (trackers.has(space.id)) {
40
+ return;
41
+ }
42
+ const tracker = {
43
+ unsubscribe: () => {
44
+ }
45
+ };
46
+ trackers.set(space.id, tracker);
47
+ void space.waitUntilReady().then(() => {
48
+ if (trackers.get(space.id) !== tracker) {
49
+ return;
50
+ }
51
+ const readEnvironment = () => space.properties.computeEnvironment ?? LOCAL_ENVIRONMENT;
52
+ tracker.unsubscribe = Obj.subscribe(space.properties, () => apply(tracker, space.id, readEnvironment()));
53
+ apply(tracker, space.id, readEnvironment());
54
+ }).catch((err) => log.catch(err, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 76, S: this }));
55
+ };
56
+ const installAll = (spaces) => {
57
+ for (const space of spaces) {
58
+ install(space);
59
+ }
60
+ };
61
+ const spacesSubscription = client.spaces.subscribe(installAll);
62
+ installAll(client.spaces.get());
63
+ return Capability.contributes(Capabilities.Null, null, () => Effect.sync(() => {
64
+ spacesSubscription.unsubscribe();
65
+ for (const tracker of trackers.values()) {
66
+ tracker.unsubscribe();
67
+ if (tracker.inFlight) {
68
+ runtime.runFork(Fiber.interrupt(tracker.inFlight));
69
+ }
70
+ }
71
+ trackers.clear();
72
+ }));
73
+ }));
74
+ export {
75
+ trigger_runtime_controller_default as default
76
+ };
77
+ //# sourceMappingURL=trigger-runtime-controller-BOEJYGWC.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/trigger-runtime-controller.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Fiber from 'effect/Fiber';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { type ComputeEnvironment } from '@dxos/client-protocol';\nimport { ServiceResolver } from '@dxos/compute';\nimport { Obj } from '@dxos/echo';\nimport { TriggerDispatcher } from '@dxos/functions-runtime';\nimport { type SpaceId } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { type Space } from '@dxos/react-client/echo';\n\n//\n// Capability Module\n//\n// Watches `space.properties.computeEnvironment` for every space and toggles\n// the per-space {@link TriggerDispatcher} accordingly:\n//\n// - `local` → `dispatcher.start()`\n// - `edge` / `disabled` → `dispatcher.stop()`\n//\n// Replaces the in-line watcher that used to live inside the removed\n// `compute-runtime.ts` per-space layer. The dispatcher itself is now\n// contributed unconditionally via `TriggerDispatcherSpec` in `layer-specs.ts`,\n// so this capability is only responsible for driving its lifecycle.\n//\n\n/** Trigger execution location the dispatcher should run locally. */\nconst LOCAL_ENVIRONMENT: ComputeEnvironment = 'local';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const client = yield* Capability.get(ClientCapabilities.Client);\n const runtime = yield* Capability.get(Capabilities.ProcessManagerRuntime);\n\n /** Per-space property-subscription unsubscribe, last-seen environment, and in-flight transition fiber. */\n type Tracker = {\n unsubscribe: () => void;\n lastEnvironment?: ComputeEnvironment;\n inFlight?: Fiber.RuntimeFiber<unknown, unknown>;\n };\n const trackers = new Map<SpaceId, Tracker>();\n\n /**\n * Resolve the per-space `TriggerDispatcher` from the process-manager\n * runtime and invoke `start()` / `stop()` according to the requested\n * environment. Returns a fiber so the caller can cancel a pending\n * transition when a new one supersedes it.\n */\n const transition = (spaceId: SpaceId, environment: ComputeEnvironment) =>\n runtime.runFork(\n Effect.gen(function* () {\n const dispatcher = yield* TriggerDispatcher;\n yield* environment === LOCAL_ENVIRONMENT ? dispatcher.start() : dispatcher.stop();\n }).pipe(\n Effect.provide(ServiceResolver.provide({ space: spaceId }, TriggerDispatcher)),\n Effect.tapErrorCause((cause) =>\n Effect.sync(() => log.warn('trigger dispatcher transition failed', { spaceId, environment, cause })),\n ),\n ),\n );\n\n const apply = (tracker: Tracker, spaceId: SpaceId, environment: ComputeEnvironment): void => {\n if (tracker.lastEnvironment === environment) {\n return;\n }\n tracker.lastEnvironment = environment;\n if (tracker.inFlight) {\n runtime.runFork(Fiber.interrupt(tracker.inFlight));\n }\n tracker.inFlight = transition(spaceId, environment);\n };\n\n const install = (space: Space): void => {\n if (trackers.has(space.id)) {\n return;\n }\n // Reserve the slot synchronously so concurrent `client.spaces.subscribe`\n // notifications (e.g. spaces array churn while we await readiness) don't\n // wire a second subscriber for the same space.\n const tracker: Tracker = { unsubscribe: () => {} };\n trackers.set(space.id, tracker);\n\n void space\n .waitUntilReady()\n .then(() => {\n // The capability could have been torn down between `set` and the\n // promise resolving; bail out without subscribing in that case.\n if (trackers.get(space.id) !== tracker) {\n return;\n }\n const readEnvironment = (): ComputeEnvironment => space.properties.computeEnvironment ?? LOCAL_ENVIRONMENT;\n tracker.unsubscribe = Obj.subscribe(space.properties, () => apply(tracker, space.id, readEnvironment()));\n apply(tracker, space.id, readEnvironment());\n })\n .catch((err) => log.catch(err));\n };\n\n const installAll = (spaces: readonly Space[]): void => {\n for (const space of spaces) {\n install(space);\n }\n };\n\n const spacesSubscription = client.spaces.subscribe(installAll);\n installAll(client.spaces.get());\n\n return Capability.contributes(Capabilities.Null, null, () =>\n Effect.sync(() => {\n spacesSubscription.unsubscribe();\n for (const tracker of trackers.values()) {\n tracker.unsubscribe();\n if (tracker.inFlight) {\n runtime.runFork(Fiber.interrupt(tracker.inFlight));\n }\n }\n trackers.clear();\n }),\n );\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,YAAYC,WAAW;AAEvB,SAASC,cAAcC,kBAAkB;AAEzC,SAASC,uBAAuB;AAChC,SAASC,WAAW;AACpB,SAASC,yBAAyB;AAElC,SAASC,WAAW;AACpB,SAASC,0BAA0B;AAGnC,IAAE,eAAA;AAoBgE,IAAA,oBAAA;IAC9D,qCAAMC,WAAU,WAAsBP,kBAAaQ,aAAAA;AAQnD,QAAMC,SAAAA,OAAeC,WAAAA,IAAAA,mBAAAA,MAAAA;AAErB,QAAA,UAAA,OAAA,WAAA,IAAA,aAAA,qBAAA;;QAUM,aAAOC,CAAAA,SAAgBC,gBAAAA,QAAoBC,QAAgB,WAAKA,aAAWC;AAC1EC,UACDjB,aAAeI,OAAAA;AAA0Bc,WAAOC,gBAAAA,oBAAAA,WAAAA,MAAAA,IAAAA,WAAAA,KAAAA;EAAQ,CAAA,EAAGb,KAAAA,eAAAA,gBACpDc,QAAeC;;sBAC0DR,CAAAA,GAAAA,qBAAAA,CAAAA,UAAAA,YAAAA,MAAAA,IAAAA,KAAAA,wCAAAA;IAAaQ;IAAM;IAK1FC;EACTA,GAAAA,EAAAA,YAAQC,YAAoBV,GAAAA,cAAa,GAAA,IAAA,GAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBAC3C,CAAA,SAAA,SAAA,gBAAA;AACF,QAAA,QAAA,oBAAA,aAAA;AACAS;IACA;YACEb,kBAAsBe;AACxB,QAAA,QAAA,UAAA;AACAF,cAAQG,QAAWC,gBAAWP,QAASN,QAAAA,CAAAA;IACzC;AAEA,YAAMc,WAAWT,WAAAA,SAAAA,WAAAA;;kBAEb,CAAA,UAAA;AACF,QAAA,SAAA,IAAA,MAAA,EAAA,GAAA;AACA;IACA;AAEiD,UAAA,UAAA;MACjDP,aAAaO,MAAQ;MAAA;IAErB;aAGI,IAAA,MAAA,IAAA,OAAA;SACA,MAAA,eAAA,EAAA,KAAA,MAAA;AAGA,UAAA,SAAA,IAAA,MAAA,EAAA,MAAA,SAAA;AACA;MACAI;AACAM,YAAMN,kBAAiB,MAAEO,MAAAA,WAAAA,sBAAAA;AAE1BC,cAAOC,cAAkBA,IAAAA,UAAAA,MAAAA,YAAAA,MAAAA,MAAAA,SAAAA,MAAAA,IAAAA,gBAAAA,CAAAA,CAAAA;AAC9B,YAAA,SAAA,MAAA,IAAA,gBAAA,CAAA;IAEA,CAAA,EAAMC,MAAAA,CAAAA,QAAcC,IAAAA,MAAAA,KAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,KAAAA,CAAAA,CAAAA;;qBAERf,CAAAA,WAAAA;AACV,eAAA,SAAA,QAAA;AACF,cAAA,KAAA;IAEA;EACAc;AAEA,QAAA,qBAAkBE,OAAYhC,OAAAA,UAAmB,UAC/CF;aACEmC,OAAAA,OAAAA,IAAmBC,CAAAA;oBACd,YAAiBzB,aAAS0B,MAAU,MAAA,MAAA,YAAA,MAAA;uBAC/BD,YAAW;eACfd,WAAQG,SAAU,OAAA,GAAA;cACpBhB,YAAgBR;AAClB,UAAA,QAAA,UAAA;AACF,gBAAA,QAAA,gBAAA,QAAA,QAAA,CAAA;MACAU;IACF;AAGJ,aAAA,MAAA;;;",
6
+ "names": ["Effect", "Fiber", "Capabilities", "Capability", "ServiceResolver", "Obj", "TriggerDispatcher", "log", "ClientCapabilities", "runtime", "ProcessManagerRuntime", "trackers", "Map", "environment", "LOCAL_ENVIRONMENT", "dispatcher", "stop", "pipe", "space", "spaceId", "tapErrorCause", "cause", "tracker", "lastEnvironment", "interrupt", "inFlight", "transition", "install", "apply", "readEnvironment", "catch", "err", "installAll", "spaces", "contributes", "spacesSubscription", "unsubscribe", "values"]
7
+ }
@@ -0,0 +1,12 @@
1
+ import {
2
+ AutomationAction,
3
+ AutomationOperation_exports,
4
+ TriggerTemplate
5
+ } from "../chunk-NCCFEPBZ.mjs";
6
+ import "../chunk-J5LGTIGS.mjs";
7
+ export {
8
+ AutomationAction,
9
+ AutomationOperation_exports as AutomationOperation,
10
+ TriggerTemplate
11
+ };
12
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,3 +1,4 @@
1
1
  import { Plugin } from '@dxos/app-framework';
2
2
  export declare const AutomationPlugin: Plugin.PluginFactory<void>;
3
+ export default AutomationPlugin;
3
4
  //# sourceMappingURL=AutomationPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutomationPlugin.d.ts","sourceRoot":"","sources":["../../../src/AutomationPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAU7C,eAAO,MAAM,gBAAgB,4BAY5B,CAAC"}
1
+ {"version":3,"file":"AutomationPlugin.d.ts","sourceRoot":"","sources":["../../../src/AutomationPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAqC,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAmBhF,eAAO,MAAM,gBAAgB,4BAuB5B,CAAC;eAEa,gBAAgB"}
@@ -1,3 +1,4 @@
1
1
  import { Plugin } from '@dxos/app-framework';
2
2
  export declare const AutomationPlugin: Plugin.PluginFactory<void>;
3
- //# sourceMappingURL=plugin.d.ts.map
3
+ export default AutomationPlugin;
4
+ //# sourceMappingURL=AutomationPlugin.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutomationPlugin.node.d.ts","sourceRoot":"","sources":["../../../src/AutomationPlugin.node.ts"],"names":[],"mappings":"AAIA,OAAO,EAAqC,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAUhF,eAAO,MAAM,gBAAgB,4BAkB5B,CAAC;eAEa,gBAAgB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AutomationPlugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutomationPlugin.test.d.ts","sourceRoot":"","sources":["../../../src/AutomationPlugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const AutomationPlugin: Plugin.PluginFactory<void>;
3
+ export default AutomationPlugin;
4
+ //# sourceMappingURL=AutomationPlugin.workerd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutomationPlugin.workerd.d.ts","sourceRoot":"","sources":["../../../src/AutomationPlugin.workerd.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAO7C,eAAO,MAAM,gBAAgB,4BAI5B,CAAC;eAEa,gBAAgB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC"}
@@ -1,5 +1,9 @@
1
- export * from './app-graph-builder';
2
- export * from './compute-runtime';
3
- export * from './operation-resolver';
4
- export * from './react-surface';
1
+ import { Capability } from '@dxos/app-framework';
2
+ import { OperationHandlerSet } from '@dxos/compute';
3
+ export declare const AppGraphBuilder: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-graph").BuilderExtensions>>, Error>;
4
+ export declare const LayerSpecs: Capability.LazyCapability<void, Capability.Any[], Error>;
5
+ export declare const OperationHandler: Capability.LazyCapability<OperationHandlerSet.OperationHandlerSet, Capability.ModuleReturn, Error>;
6
+ export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Capabilities").ReactSurface>>, Error>;
7
+ export declare const RegistrySync: Capability.LazyCapability<void, void, Error>;
8
+ export declare const TriggerRuntimeController: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<null>>, Error>;
5
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,eAAe,qIAA0E,CAAC;AACvG,eAAO,MAAM,UAAU,0DAAuF,CAAC;AAC/G,eAAO,MAAM,gBAAgB,oGAG5B,CAAC;AACF,eAAO,MAAM,YAAY,iJAAmE,CAAC;AAC7F,eAAO,MAAM,YAAY,8CAAmE,CAAC;AAC7F,eAAO,MAAM,wBAAwB,8FAGpC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capabilities, Capability } from '@dxos/app-framework';
3
+ import { LayerSpec } from '@dxos/compute';
4
+ declare const _default: (props: void) => Effect.Effect<[Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<LayerSpec.LayerSpec>>, Capability.Capability<Capability.InterfaceDef<Capabilities.TraceSinkFactory>>], never, never>;
5
+ export default _default;
6
+ //# sourceMappingURL=layer-specs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-specs.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/layer-specs.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG/D,OAAO,EAAE,SAAS,EAA0C,MAAM,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Capability } from '@dxos/app-framework';
2
+ import { OperationHandlerSet } from '@dxos/compute';
3
+ export declare const AppGraphBuilder: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-graph").BuilderExtensions>>, Error>;
4
+ export declare const LayerSpecs: Capability.LazyCapability<void, Capability.Any[], Error>;
5
+ export declare const OperationHandler: Capability.LazyCapability<OperationHandlerSet.OperationHandlerSet, Capability.ModuleReturn, Error>;
6
+ export declare const RegistrySync: Capability.LazyCapability<void, void, Error>;
7
+ export declare const TriggerRuntimeController: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<null>>, Error>;
8
+ //# sourceMappingURL=node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/node.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,eAAe,qIAA0E,CAAC;AACvG,eAAO,MAAM,UAAU,0DAAuF,CAAC;AAC/G,eAAO,MAAM,gBAAgB,oGAG5B,CAAC;AACF,eAAO,MAAM,YAAY,8CAAmE,CAAC;AAC7F,eAAO,MAAM,wBAAwB,8FAGpC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ import type { OperationHandlerSet } from '@dxos/compute';
4
+ declare const _default: (props: OperationHandlerSet.OperationHandlerSet) => Effect.Effect<Capability.ModuleReturn, Error, Capability.Service>;
5
+ export default _default;
6
+ //# sourceMappingURL=operation-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-handler.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/operation-handler.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ /**
4
+ * Syncs plugin capability contributions into `client.graph.registry`.
5
+ *
6
+ * Watches two capability atoms and imperatively adds entities to the
7
+ * hypergraph registry when they change:
8
+ * - {@link AppCapabilities.BlueprintDefinition} → instantiates each blueprint via `def.make()`.
9
+ * - {@link Capabilities.OperationHandler} → serializes each handler via `Operation.serialize`.
10
+ *
11
+ * Blueprint DB copies (stored in a space when a blueprint is "enabled") are treated as
12
+ * user forks and are not overwritten. The registry is always used as the source of truth
13
+ * for blueprint instructions at request time — see `formatSystemPrompt` in `@dxos/assistant`.
14
+ *
15
+ * Note: the plugin framework does not yet expose a teardown hook for capability
16
+ * modules (see the TODO in process-manager-capability.ts), so the subscriptions
17
+ * are not explicitly cancelled. They are effectively scoped to the client's lifetime.
18
+ */
19
+ declare const _default: (props: void) => Effect.Effect<void, Error, Capability.Service>;
20
+ export default _default;
21
+ //# sourceMappingURL=registry-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-sync.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/registry-sync.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAM/D;;;;;;;;;;;;;;;GAeG"}
@@ -0,0 +1,5 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ declare const _default: (props: void) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<null>>, Error, Capability.Service>;
4
+ export default _default;
5
+ //# sourceMappingURL=trigger-runtime-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-runtime-controller.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/trigger-runtime-controller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=trigger-runtime-controller.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-runtime-controller.test.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/trigger-runtime-controller.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC"}
@@ -1,24 +1,24 @@
1
1
  import * as Command from '@effect/cli/Command';
2
- export declare const create: Command.Command<"create", import("@effect/cli/Prompt").Prompt.Environment | import("@dxos/cli-util").CommandConfig | import("@dxos/client").ClientService, Error | import("@dxos/echo/Err").ObjectNotFoundError | import("@dxos/cli-util").SpaceNotFoundError, {
2
+ export declare const create: Command.Command<"create", import("@dxos/client").ClientService | import("@dxos/cli-util").CommandConfig | import("@effect/cli/Prompt").Prompt.Environment, import("@dxos/echo/Err").EntityNotFoundError | Error | import("@dxos/cli-util").SpaceNotFoundError, {
3
3
  readonly subcommand: import("effect/Option").Option<{
4
4
  readonly spaceId: import("effect/Option").Option<import("@dxos/keys").SpaceId>;
5
5
  readonly enabled: boolean;
6
6
  readonly functionId: import("effect/Option").Option<string>;
7
- readonly queue: import("effect/Option").Option<import("@dxos/keys").DXN>;
7
+ readonly typename: import("effect/Option").Option<string>;
8
+ readonly deep: import("effect/Option").Option<boolean>;
9
+ readonly delay: import("effect/Option").Option<number>;
8
10
  readonly input: import("effect/Option").Option<import("effect/HashMap").HashMap<string, string>>;
9
11
  } | {
10
12
  readonly spaceId: import("effect/Option").Option<import("@dxos/keys").SpaceId>;
11
13
  readonly enabled: boolean;
12
14
  readonly functionId: import("effect/Option").Option<string>;
13
- readonly typename: import("effect/Option").Option<string>;
14
- readonly deep: import("effect/Option").Option<boolean>;
15
- readonly delay: import("effect/Option").Option<number>;
15
+ readonly cron: import("effect/Option").Option<string>;
16
16
  readonly input: import("effect/Option").Option<import("effect/HashMap").HashMap<string, string>>;
17
17
  } | {
18
18
  readonly spaceId: import("effect/Option").Option<import("@dxos/keys").SpaceId>;
19
19
  readonly enabled: boolean;
20
20
  readonly functionId: import("effect/Option").Option<string>;
21
- readonly cron: import("effect/Option").Option<string>;
21
+ readonly feed: import("effect/Option").Option<string>;
22
22
  readonly input: import("effect/Option").Option<import("effect/HashMap").HashMap<string, string>>;
23
23
  }>;
24
24
  }>;