@dxos/plugin-automation 0.8.4-main.ae835ea → 0.8.4-main.bc674ce

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 (286) hide show
  1. package/dist/lib/browser/AutomationPanel-FAS6ADCW.mjs +11 -0
  2. package/dist/lib/browser/AutomationSettings-XN2OIYWL.mjs +56 -0
  3. package/dist/lib/browser/AutomationSettings-XN2OIYWL.mjs.map +7 -0
  4. package/dist/lib/browser/FunctionsContainer-6QLC7JP4.mjs +129 -0
  5. package/dist/lib/browser/FunctionsContainer-6QLC7JP4.mjs.map +7 -0
  6. package/dist/lib/browser/{FunctionsPanel-HFCK3JRB.mjs → FunctionsPanel-ZX4J75UM.mjs} +3 -3
  7. package/dist/lib/browser/app-graph-builder-LAQMEBMH.mjs +84 -0
  8. package/dist/lib/browser/app-graph-builder-LAQMEBMH.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-XXZNGORC.mjs → chunk-54PANILA.mjs} +5 -5
  10. package/dist/lib/browser/chunk-BFUIVUQH.mjs +102 -0
  11. package/dist/lib/browser/chunk-BFUIVUQH.mjs.map +7 -0
  12. package/dist/lib/browser/chunk-BKFQBKYO.mjs +8 -0
  13. package/dist/lib/browser/chunk-BKFQBKYO.mjs.map +7 -0
  14. package/dist/lib/browser/chunk-JOXPQ27I.mjs +83 -0
  15. package/dist/lib/browser/chunk-JOXPQ27I.mjs.map +7 -0
  16. package/dist/lib/browser/{chunk-LZQFZO3B.mjs → chunk-PZNBEKO5.mjs} +1 -1
  17. package/dist/lib/browser/chunk-PZNBEKO5.mjs.map +7 -0
  18. package/dist/lib/browser/chunk-QW3EM35H.mjs +248 -0
  19. package/dist/lib/browser/chunk-QW3EM35H.mjs.map +7 -0
  20. package/dist/lib/browser/chunk-RAF2FJST.mjs +86 -0
  21. package/dist/lib/browser/chunk-RAF2FJST.mjs.map +7 -0
  22. package/dist/lib/browser/chunk-YWLEY2FD.mjs +200 -0
  23. package/dist/lib/browser/chunk-YWLEY2FD.mjs.map +7 -0
  24. package/dist/lib/browser/cli/index.mjs +1107 -0
  25. package/dist/lib/browser/cli/index.mjs.map +7 -0
  26. package/dist/lib/browser/compute-runtime-WTWLQ67J.mjs +114 -0
  27. package/dist/lib/browser/compute-runtime-WTWLQ67J.mjs.map +7 -0
  28. package/dist/lib/browser/hooks/index.mjs +5 -3
  29. package/dist/lib/browser/index.mjs +53 -57
  30. package/dist/lib/browser/index.mjs.map +4 -4
  31. package/dist/lib/browser/meta.json +1 -1
  32. package/dist/lib/browser/operation-resolver-Q3MWOR7K.mjs +82 -0
  33. package/dist/lib/browser/operation-resolver-Q3MWOR7K.mjs.map +7 -0
  34. package/dist/lib/browser/{react-surface-WPMY3EX2.mjs → react-surface-EV3AC62F.mjs} +13 -11
  35. package/dist/lib/browser/react-surface-EV3AC62F.mjs.map +7 -0
  36. package/dist/lib/browser/types/index.mjs +10 -4
  37. package/dist/lib/node-esm/{AutomationPanel-NVEIUIZP.mjs → AutomationPanel-B7NAGDFA.mjs} +4 -4
  38. package/dist/lib/node-esm/AutomationSettings-M5PMZJ6P.mjs +57 -0
  39. package/dist/lib/node-esm/AutomationSettings-M5PMZJ6P.mjs.map +7 -0
  40. package/dist/lib/node-esm/FunctionsContainer-J4O2ULWR.mjs +130 -0
  41. package/dist/lib/node-esm/FunctionsContainer-J4O2ULWR.mjs.map +7 -0
  42. package/dist/lib/node-esm/{FunctionsPanel-74ELGR7P.mjs → FunctionsPanel-SS6GIVNU.mjs} +3 -3
  43. package/dist/lib/node-esm/app-graph-builder-4UCMXHYY.mjs +85 -0
  44. package/dist/lib/node-esm/app-graph-builder-4UCMXHYY.mjs.map +7 -0
  45. package/dist/lib/node-esm/chunk-2CKVH7JC.mjs +201 -0
  46. package/dist/lib/node-esm/chunk-2CKVH7JC.mjs.map +7 -0
  47. package/dist/lib/node-esm/{chunk-CEVIVRTY.mjs → chunk-5FXNN3MV.mjs} +1 -1
  48. package/dist/lib/node-esm/chunk-5FXNN3MV.mjs.map +7 -0
  49. package/dist/lib/node-esm/{chunk-U5Q2NI7H.mjs → chunk-7QRUPEHH.mjs} +5 -5
  50. package/dist/lib/node-esm/chunk-HQLVREIX.mjs +87 -0
  51. package/dist/lib/node-esm/chunk-HQLVREIX.mjs.map +7 -0
  52. package/dist/lib/node-esm/chunk-K7GCM342.mjs +10 -0
  53. package/dist/lib/node-esm/chunk-K7GCM342.mjs.map +7 -0
  54. package/dist/lib/node-esm/chunk-KWKWOGS5.mjs +103 -0
  55. package/dist/lib/node-esm/chunk-KWKWOGS5.mjs.map +7 -0
  56. package/dist/lib/node-esm/chunk-LJAXQ6CX.mjs +249 -0
  57. package/dist/lib/node-esm/chunk-LJAXQ6CX.mjs.map +7 -0
  58. package/dist/lib/node-esm/chunk-RX52VKI2.mjs +84 -0
  59. package/dist/lib/node-esm/chunk-RX52VKI2.mjs.map +7 -0
  60. package/dist/lib/node-esm/cli/index.mjs +1108 -0
  61. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  62. package/dist/lib/node-esm/compute-runtime-ZHROOBLY.mjs +115 -0
  63. package/dist/lib/node-esm/compute-runtime-ZHROOBLY.mjs.map +7 -0
  64. package/dist/lib/node-esm/hooks/index.mjs +5 -3
  65. package/dist/lib/node-esm/index.mjs +53 -57
  66. package/dist/lib/node-esm/index.mjs.map +4 -4
  67. package/dist/lib/node-esm/meta.json +1 -1
  68. package/dist/lib/node-esm/operation-resolver-R5GA4YNO.mjs +83 -0
  69. package/dist/lib/node-esm/operation-resolver-R5GA4YNO.mjs.map +7 -0
  70. package/dist/lib/node-esm/{react-surface-Y2BBJV2I.mjs → react-surface-S6VZJCEZ.mjs} +13 -11
  71. package/dist/lib/node-esm/react-surface-S6VZJCEZ.mjs.map +7 -0
  72. package/dist/lib/node-esm/types/index.mjs +10 -4
  73. package/dist/types/src/AutomationPlugin.d.ts +2 -1
  74. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  75. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  76. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  77. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  78. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  79. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts +6 -0
  80. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts.map +1 -0
  81. package/dist/types/src/capabilities/compute-runtime/index.d.ts +3 -0
  82. package/dist/types/src/capabilities/compute-runtime/index.d.ts.map +1 -0
  83. package/dist/types/src/capabilities/index.d.ts +4 -5
  84. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  86. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  87. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  88. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  89. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  90. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  92. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  93. package/dist/types/src/cli/commands/index.d.ts +2 -0
  94. package/dist/types/src/cli/commands/index.d.ts.map +1 -0
  95. package/dist/types/src/cli/commands/trigger/create/index.d.ts +25 -0
  96. package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +1 -0
  97. package/dist/types/src/cli/commands/trigger/create/queue.d.ts +13 -0
  98. package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +1 -0
  99. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts +15 -0
  100. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +1 -0
  101. package/dist/types/src/cli/commands/trigger/create/timer.d.ts +13 -0
  102. package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +1 -0
  103. package/dist/types/src/cli/commands/trigger/index.d.ts +57 -0
  104. package/dist/types/src/cli/commands/trigger/index.d.ts.map +1 -0
  105. package/dist/types/src/cli/commands/trigger/list.d.ts +7 -0
  106. package/dist/types/src/cli/commands/trigger/list.d.ts.map +1 -0
  107. package/dist/types/src/cli/commands/trigger/options.d.ts +11 -0
  108. package/dist/types/src/cli/commands/trigger/options.d.ts.map +1 -0
  109. package/dist/types/src/cli/commands/trigger/remove.d.ts +8 -0
  110. package/dist/types/src/cli/commands/trigger/remove.d.ts.map +1 -0
  111. package/dist/types/src/cli/commands/trigger/update/index.d.ts +28 -0
  112. package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +1 -0
  113. package/dist/types/src/cli/commands/trigger/update/queue.d.ts +12 -0
  114. package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +1 -0
  115. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts +13 -0
  116. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +1 -0
  117. package/dist/types/src/cli/commands/trigger/update/timer.d.ts +11 -0
  118. package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +1 -0
  119. package/dist/types/src/cli/commands/trigger/util.d.ts +46 -0
  120. package/dist/types/src/cli/commands/trigger/util.d.ts.map +1 -0
  121. package/dist/types/src/cli/index.d.ts +2 -0
  122. package/dist/types/src/cli/index.d.ts.map +1 -0
  123. package/dist/types/src/cli/plugin.d.ts +3 -0
  124. package/dist/types/src/cli/plugin.d.ts.map +1 -0
  125. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +1 -1
  126. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  127. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +3 -0
  128. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  129. package/dist/types/src/components/FunctionsContainer.d.ts.map +1 -1
  130. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  131. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts +8 -0
  132. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -0
  133. package/dist/types/src/components/FunctionsRegistry/index.d.ts +2 -0
  134. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -0
  135. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +10 -7
  136. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  137. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +6 -3
  138. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  139. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +7 -6
  140. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  141. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +72 -2
  142. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  143. package/dist/types/src/components/TriggerSettings.d.ts +3 -3
  144. package/dist/types/src/components/TriggerSettings.d.ts.map +1 -1
  145. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +8 -4
  146. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -1
  147. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +2 -2
  148. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
  149. package/dist/types/src/index.d.ts +1 -2
  150. package/dist/types/src/index.d.ts.map +1 -1
  151. package/dist/types/src/meta.d.ts +2 -2
  152. package/dist/types/src/meta.d.ts.map +1 -1
  153. package/dist/types/src/testing/test-functions.d.ts +202 -3
  154. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  155. package/dist/types/src/translations.d.ts +3 -0
  156. package/dist/types/src/translations.d.ts.map +1 -1
  157. package/dist/types/src/types/capabilities.d.ts +22 -0
  158. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  159. package/dist/types/src/types/events.d.ts +5 -0
  160. package/dist/types/src/types/events.d.ts.map +1 -0
  161. package/dist/types/src/types/index.d.ts +2 -0
  162. package/dist/types/src/types/index.d.ts.map +1 -1
  163. package/dist/types/src/types/schema.d.ts +30 -1
  164. package/dist/types/src/types/schema.d.ts.map +1 -1
  165. package/dist/types/tsconfig.tsbuildinfo +1 -1
  166. package/package.json +61 -47
  167. package/src/AutomationPlugin.tsx +13 -33
  168. package/src/capabilities/app-graph-builder/app-graph-builder.ts +71 -0
  169. package/src/capabilities/app-graph-builder/index.ts +7 -0
  170. package/src/capabilities/compute-runtime/compute-runtime.ts +133 -0
  171. package/src/capabilities/compute-runtime/index.ts +7 -0
  172. package/src/capabilities/index.ts +4 -8
  173. package/src/capabilities/operation-resolver/index.ts +7 -0
  174. package/src/capabilities/operation-resolver/operation-resolver.ts +79 -0
  175. package/src/capabilities/react-surface/index.ts +7 -0
  176. package/src/capabilities/react-surface/react-surface.tsx +60 -0
  177. package/src/cli/commands/index.ts +5 -0
  178. package/src/cli/commands/trigger/create/index.ts +14 -0
  179. package/src/cli/commands/trigger/create/queue.ts +89 -0
  180. package/src/cli/commands/trigger/create/subscription.ts +128 -0
  181. package/src/cli/commands/trigger/create/timer.ts +93 -0
  182. package/src/cli/commands/trigger/index.ts +16 -0
  183. package/src/cli/commands/trigger/list.ts +67 -0
  184. package/src/cli/commands/trigger/options.ts +59 -0
  185. package/src/cli/commands/trigger/remove.ts +45 -0
  186. package/src/cli/commands/trigger/update/index.ts +14 -0
  187. package/src/cli/commands/trigger/update/queue.ts +195 -0
  188. package/src/cli/commands/trigger/update/subscription.ts +278 -0
  189. package/src/cli/commands/trigger/update/timer.ts +193 -0
  190. package/src/cli/commands/trigger/util.ts +395 -0
  191. package/src/cli/index.ts +5 -0
  192. package/src/cli/plugin.ts +23 -0
  193. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +1 -1
  194. package/src/components/AutomationPanel/AutomationPanel.tsx +51 -22
  195. package/src/components/AutomationSettings.tsx +1 -1
  196. package/src/components/FunctionsContainer.tsx +7 -0
  197. package/src/components/FunctionsPanel/FunctionsPanel.tsx +14 -12
  198. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +111 -0
  199. package/src/components/FunctionsRegistry/index.ts +5 -0
  200. package/src/components/TriggerEditor/FunctionInputEditor.tsx +23 -31
  201. package/src/components/TriggerEditor/SpecSelector.tsx +8 -6
  202. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +33 -29
  203. package/src/components/TriggerEditor/TriggerEditor.tsx +56 -43
  204. package/src/components/TriggerSettings.tsx +3 -3
  205. package/src/hooks/useComputeRuntimeCallback.ts +43 -8
  206. package/src/hooks/useTriggerRuntimeControls.ts +9 -8
  207. package/src/index.ts +1 -2
  208. package/src/meta.ts +2 -2
  209. package/src/testing/test-functions.ts +2 -2
  210. package/src/translations.ts +4 -0
  211. package/src/{capabilities → types}/capabilities.ts +8 -14
  212. package/src/types/events.ts +11 -0
  213. package/src/types/index.ts +2 -0
  214. package/src/types/schema.ts +23 -2
  215. package/dist/lib/browser/AutomationPanel-LBXJDM6Z.mjs +0 -11
  216. package/dist/lib/browser/AutomationSettings-IIEI5D2K.mjs +0 -68
  217. package/dist/lib/browser/AutomationSettings-IIEI5D2K.mjs.map +0 -7
  218. package/dist/lib/browser/FunctionsContainer-IZTCGNJZ.mjs +0 -36
  219. package/dist/lib/browser/FunctionsContainer-IZTCGNJZ.mjs.map +0 -7
  220. package/dist/lib/browser/app-graph-builder-7VKA2GS3.mjs +0 -81
  221. package/dist/lib/browser/app-graph-builder-7VKA2GS3.mjs.map +0 -7
  222. package/dist/lib/browser/chunk-CVYJM6OO.mjs +0 -66
  223. package/dist/lib/browser/chunk-CVYJM6OO.mjs.map +0 -7
  224. package/dist/lib/browser/chunk-FHSN7G4H.mjs +0 -107
  225. package/dist/lib/browser/chunk-FHSN7G4H.mjs.map +0 -7
  226. package/dist/lib/browser/chunk-GCGHLQM2.mjs +0 -15
  227. package/dist/lib/browser/chunk-GCGHLQM2.mjs.map +0 -7
  228. package/dist/lib/browser/chunk-JW7XSPYW.mjs +0 -267
  229. package/dist/lib/browser/chunk-JW7XSPYW.mjs.map +0 -7
  230. package/dist/lib/browser/chunk-K5YNWESC.mjs +0 -183
  231. package/dist/lib/browser/chunk-K5YNWESC.mjs.map +0 -7
  232. package/dist/lib/browser/chunk-LZQFZO3B.mjs.map +0 -7
  233. package/dist/lib/browser/chunk-YBPJCY3F.mjs +0 -38
  234. package/dist/lib/browser/chunk-YBPJCY3F.mjs.map +0 -7
  235. package/dist/lib/browser/compute-runtime-PFYRMGN2.mjs +0 -114
  236. package/dist/lib/browser/compute-runtime-PFYRMGN2.mjs.map +0 -7
  237. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs +0 -77
  238. package/dist/lib/browser/intent-resolver-5HR7M7T6.mjs.map +0 -7
  239. package/dist/lib/browser/react-surface-WPMY3EX2.mjs.map +0 -7
  240. package/dist/lib/node-esm/AutomationSettings-VIIEPI2P.mjs +0 -69
  241. package/dist/lib/node-esm/AutomationSettings-VIIEPI2P.mjs.map +0 -7
  242. package/dist/lib/node-esm/FunctionsContainer-KKRCIXGB.mjs +0 -37
  243. package/dist/lib/node-esm/FunctionsContainer-KKRCIXGB.mjs.map +0 -7
  244. package/dist/lib/node-esm/app-graph-builder-RTOFJNFV.mjs +0 -82
  245. package/dist/lib/node-esm/app-graph-builder-RTOFJNFV.mjs.map +0 -7
  246. package/dist/lib/node-esm/chunk-3BJ6BR3E.mjs +0 -67
  247. package/dist/lib/node-esm/chunk-3BJ6BR3E.mjs.map +0 -7
  248. package/dist/lib/node-esm/chunk-CEVIVRTY.mjs.map +0 -7
  249. package/dist/lib/node-esm/chunk-ECJKIUBO.mjs +0 -39
  250. package/dist/lib/node-esm/chunk-ECJKIUBO.mjs.map +0 -7
  251. package/dist/lib/node-esm/chunk-JOCKHLFT.mjs +0 -108
  252. package/dist/lib/node-esm/chunk-JOCKHLFT.mjs.map +0 -7
  253. package/dist/lib/node-esm/chunk-MRYKW5TM.mjs +0 -16
  254. package/dist/lib/node-esm/chunk-MRYKW5TM.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-W76WUTZY.mjs +0 -268
  256. package/dist/lib/node-esm/chunk-W76WUTZY.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-Y7PJXFCJ.mjs +0 -184
  258. package/dist/lib/node-esm/chunk-Y7PJXFCJ.mjs.map +0 -7
  259. package/dist/lib/node-esm/compute-runtime-IXCSD3W7.mjs +0 -115
  260. package/dist/lib/node-esm/compute-runtime-IXCSD3W7.mjs.map +0 -7
  261. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs +0 -78
  262. package/dist/lib/node-esm/intent-resolver-KDRYB5BC.mjs.map +0 -7
  263. package/dist/lib/node-esm/react-surface-Y2BBJV2I.mjs.map +0 -7
  264. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  265. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  266. package/dist/types/src/capabilities/capabilities.d.ts +0 -19
  267. package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
  268. package/dist/types/src/capabilities/compute-runtime.d.ts +0 -5
  269. package/dist/types/src/capabilities/compute-runtime.d.ts.map +0 -1
  270. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  271. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  272. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  273. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  274. package/dist/types/src/events.d.ts +0 -4
  275. package/dist/types/src/events.d.ts.map +0 -1
  276. package/src/capabilities/app-graph-builder.ts +0 -87
  277. package/src/capabilities/compute-runtime.ts +0 -138
  278. package/src/capabilities/intent-resolver.ts +0 -72
  279. package/src/capabilities/react-surface.tsx +0 -55
  280. package/src/events.ts +0 -11
  281. /package/dist/lib/browser/{AutomationPanel-LBXJDM6Z.mjs.map → AutomationPanel-FAS6ADCW.mjs.map} +0 -0
  282. /package/dist/lib/browser/{FunctionsPanel-HFCK3JRB.mjs.map → FunctionsPanel-ZX4J75UM.mjs.map} +0 -0
  283. /package/dist/lib/browser/{chunk-XXZNGORC.mjs.map → chunk-54PANILA.mjs.map} +0 -0
  284. /package/dist/lib/node-esm/{AutomationPanel-NVEIUIZP.mjs.map → AutomationPanel-B7NAGDFA.mjs.map} +0 -0
  285. /package/dist/lib/node-esm/{FunctionsPanel-74ELGR7P.mjs.map → FunctionsPanel-SS6GIVNU.mjs.map} +0 -0
  286. /package/dist/lib/node-esm/{chunk-U5Q2NI7H.mjs.map → chunk-7QRUPEHH.mjs.map} +0 -0
@@ -2,25 +2,29 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import type * as Effect from 'effect/Effect';
6
- import { useCallback } from 'react';
5
+ import * as Cause from 'effect/Cause';
6
+ import * as Effect from 'effect/Effect';
7
+ import * as Exit from 'effect/Exit';
8
+ import { type DependencyList, useCallback } from 'react';
7
9
 
8
- import { useCapability } from '@dxos/app-framework';
9
- import type { Space } from '@dxos/react-client/echo';
10
+ import { useCapability } from '@dxos/app-framework/react';
11
+ import { type Key } from '@dxos/echo';
12
+ import { type FunctionDefinition, FunctionInvocationService, TracingService } from '@dxos/functions';
13
+ import { log } from '@dxos/log';
10
14
 
11
- import { AutomationCapabilities } from '../capabilities';
15
+ import { AutomationCapabilities } from '../types';
12
16
 
13
17
  /**
14
18
  * Create an effectful function that has access to compute services
15
19
  */
16
20
  // TODO(burdon): Factor out (figure out cross-plugin capabilities dependencies).
17
21
  export const useComputeRuntimeCallback = <T>(
18
- space: Space | undefined,
22
+ id: Key.SpaceId | undefined,
19
23
  fn: () => Effect.Effect<T, any, AutomationCapabilities.ComputeServices>,
20
- deps?: React.DependencyList,
24
+ deps?: DependencyList,
21
25
  ): (() => Promise<T>) => {
22
26
  const computeRuntime = useCapability(AutomationCapabilities.ComputeRuntime);
23
- const runtime = space !== undefined ? computeRuntime.getRuntime(space.id) : undefined;
27
+ const runtime = id !== undefined ? computeRuntime.getRuntime(id) : undefined;
24
28
 
25
29
  return useCallback(() => {
26
30
  if (!runtime) {
@@ -30,3 +34,34 @@ export const useComputeRuntimeCallback = <T>(
30
34
  return runtime.runPromise(fn());
31
35
  }, [runtime, ...(deps ?? [])]);
32
36
  };
37
+
38
+ // TODO(wittjosiah): Function invoking should automatically be traced (DX-647).
39
+ export const invokeFunctionWithTracing = <I, O>(functionDef: FunctionDefinition<I, O>, inputData: I) =>
40
+ Effect.gen(function* () {
41
+ const tracer = yield* TracingService;
42
+ const trace = yield* tracer.traceInvocationStart({
43
+ target: undefined,
44
+ payload: {
45
+ data: {},
46
+ },
47
+ });
48
+
49
+ // Invoke the function.
50
+ const result = yield* FunctionInvocationService.invokeFunction(functionDef, inputData).pipe(
51
+ Effect.provide(trace.invocationTraceQueue ? TracingService.layerInvocation(trace) : TracingService.layerNoop),
52
+ Effect.exit,
53
+ );
54
+
55
+ if (Exit.isFailure(result)) {
56
+ const error = Cause.prettyErrors(result.cause)[0];
57
+ log.error(error.message, error.cause ?? error.stack);
58
+ }
59
+
60
+ yield* tracer.traceInvocationEnd({
61
+ trace,
62
+ // TODO(dmaretskyi): Might miss errors.
63
+ exception: Exit.isFailure(result) ? Cause.prettyErrors(result.cause)[0] : undefined,
64
+ });
65
+
66
+ return result;
67
+ });
@@ -4,9 +4,10 @@
4
4
 
5
5
  import * as Effect from 'effect/Effect';
6
6
 
7
- import { Filter } from '@dxos/echo';
8
- import { Trigger, TriggerDispatcher } from '@dxos/functions';
9
- import { type Space, useQuery } from '@dxos/react-client/echo';
7
+ import { type Database, Filter } from '@dxos/echo';
8
+ import { Trigger } from '@dxos/functions';
9
+ import { TriggerDispatcher } from '@dxos/functions-runtime';
10
+ import { useQuery } from '@dxos/react-client/echo';
10
11
  import { useAsyncState } from '@dxos/react-ui';
11
12
 
12
13
  import { useComputeRuntimeCallback } from './useComputeRuntimeCallback';
@@ -18,15 +19,15 @@ interface TriggerRuntimeControls {
18
19
  stop: () => void;
19
20
  }
20
21
 
21
- export const useTriggerRuntimeControls = (space: Space | undefined): TriggerRuntimeControls => {
22
- const triggers = useQuery(space, Filter.type(Trigger.Trigger));
22
+ export const useTriggerRuntimeControls = (db: Database.Database | undefined): TriggerRuntimeControls => {
23
+ const triggers = useQuery(db, Filter.type(Trigger.Trigger));
23
24
 
24
25
  const [isRunningState, setIsRunningState] = useAsyncState(
25
- useComputeRuntimeCallback(space, () => TriggerDispatcher.pipe(Effect.map((t) => t.running))),
26
+ useComputeRuntimeCallback(db?.spaceId, () => TriggerDispatcher.pipe(Effect.map((t) => t.running))),
26
27
  );
27
28
 
28
29
  const start = useComputeRuntimeCallback(
29
- space,
30
+ db?.spaceId,
30
31
  Effect.fnUntraced(function* () {
31
32
  const dispatcher = yield* TriggerDispatcher;
32
33
  yield* dispatcher.start();
@@ -35,7 +36,7 @@ export const useTriggerRuntimeControls = (space: Space | undefined): TriggerRunt
35
36
  );
36
37
 
37
38
  const stop = useComputeRuntimeCallback(
38
- space,
39
+ db?.spaceId,
39
40
  Effect.fnUntraced(function* () {
40
41
  const dispatcher = yield* TriggerDispatcher;
41
42
  yield* dispatcher.stop();
package/src/index.ts CHANGED
@@ -2,10 +2,9 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export { AutomationCapabilities } from './capabilities';
6
5
  export * from './components';
7
6
  export * from './meta';
8
- export * from './events';
9
7
  export * from './hooks';
8
+ export * from './types';
10
9
 
11
10
  export * from './AutomationPlugin';
package/src/meta.ts CHANGED
@@ -2,10 +2,10 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { type PluginMeta } from '@dxos/app-framework';
5
+ import { type Plugin } from '@dxos/app-framework';
6
6
  import { trim } from '@dxos/util';
7
7
 
8
- export const meta: PluginMeta = {
8
+ export const meta: Plugin.Meta = {
9
9
  id: 'dxos.org/plugin/automation',
10
10
  name: 'Automation',
11
11
  description: trim`
@@ -4,7 +4,7 @@
4
4
 
5
5
  import * as Schema from 'effect/Schema';
6
6
 
7
- import { ContactType } from '@dxos/client/testing';
7
+ import { TestSchema } from '@dxos/client/testing';
8
8
  import { Type } from '@dxos/echo';
9
9
 
10
10
  export const functions = [
@@ -35,7 +35,7 @@ export const functions = [
35
35
  version: '0.0.1',
36
36
  inputSchema: Type.toJsonSchema(
37
37
  Schema.Struct({
38
- contact: Type.Ref(ContactType).annotations({ title: 'Contact' }),
38
+ contact: Type.Ref(TestSchema.ContactType).annotations({ title: 'Contact' }),
39
39
  }),
40
40
  ),
41
41
  },
@@ -22,12 +22,16 @@ export const translations = [
22
22
 
23
23
  'functions panel label': 'Functions',
24
24
  'functions verbose label': 'Manage deployed functions',
25
+ 'functions registry verbose label': 'Functions registry',
26
+ 'functions registry description': 'Import functions from the registry',
25
27
  'functions description': 'You can manage all the functions deployed from your space on EDGE here.',
26
28
  'function copy id': 'Copy Function ID',
27
29
  'no functions found': 'No functions found',
28
30
  'go to function source button label': 'Show function source',
29
31
  'delete function button label': 'Delete function',
30
32
 
33
+ 'function parameters label': 'Function parameters',
34
+
31
35
  'trigger editor title': 'Configure Trigger',
32
36
  'new trigger label': 'Add Trigger',
33
37
  'trigger type timer': 'Timer',
@@ -5,16 +5,10 @@
5
5
  import type * as ManagedRuntime from 'effect/ManagedRuntime';
6
6
 
7
7
  import { type AiService, type ToolExecutionService, type ToolResolverService } from '@dxos/ai';
8
- import { defineCapability } from '@dxos/app-framework';
9
- import type {
10
- CredentialsService,
11
- DatabaseService,
12
- FunctionInvocationService,
13
- InvocationTracer,
14
- QueueService,
15
- TriggerDispatcher,
16
- TriggerStateStore,
17
- } from '@dxos/functions';
8
+ import { Capability } from '@dxos/app-framework';
9
+ import { type Database } from '@dxos/echo';
10
+ import type { CredentialsService, FunctionInvocationService, QueueService, TracingService } from '@dxos/functions';
11
+ import type { TriggerDispatcher, TriggerStateStore } from '@dxos/functions-runtime';
18
12
  import type { SpaceId } from '@dxos/keys';
19
13
 
20
14
  import { meta } from '../meta';
@@ -25,13 +19,13 @@ export namespace AutomationCapabilities {
25
19
  */
26
20
  export type ComputeServices =
27
21
  | TriggerDispatcher
22
+ | TriggerStateStore
28
23
  | AiService.AiService
29
- | DatabaseService
24
+ | Database.Service
30
25
  | QueueService
31
26
  | CredentialsService
32
27
  | FunctionInvocationService
33
- | InvocationTracer
34
- | TriggerStateStore
28
+ | TracingService
35
29
  // TODO(dmaretskyi): Those should be provided at AI-chat call site.
36
30
  | ToolResolverService
37
31
  | ToolExecutionService;
@@ -44,5 +38,5 @@ export namespace AutomationCapabilities {
44
38
  /**
45
39
  * Runtime for executing agents, functions, and triggers.
46
40
  */
47
- export const ComputeRuntime = defineCapability<ComputeRuntimeProvider>(`${meta.id}/capability/compute-runtime`);
41
+ export const ComputeRuntime = Capability.make<ComputeRuntimeProvider>(`${meta.id}/capability/compute-runtime`);
48
42
  }
@@ -0,0 +1,11 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { ActivationEvent } from '@dxos/app-framework';
6
+
7
+ import { meta } from '../meta';
8
+
9
+ export namespace AutomationEvents {
10
+ export const ComputeRuntimeReady = ActivationEvent.make(`${meta.id}/event/compute-runtime-ready`);
11
+ }
@@ -2,4 +2,6 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ export * from './capabilities';
6
+ export * from './events';
5
7
  export * from './schema';
@@ -4,7 +4,9 @@
4
4
 
5
5
  import * as Schema from 'effect/Schema';
6
6
 
7
- import { SpaceSchema } from '@dxos/react-client/echo';
7
+ import { Capability } from '@dxos/app-framework';
8
+ import { Database } from '@dxos/echo';
9
+ import { Operation } from '@dxos/operation';
8
10
 
9
11
  import { meta } from '../meta';
10
12
 
@@ -18,7 +20,7 @@ export namespace AutomationAction {
18
20
  `${meta.id}/action/create-trigger-from-template`,
19
21
  {
20
22
  input: Schema.Struct({
21
- space: SpaceSchema,
23
+ db: Database.Database,
22
24
  template: TriggerTemplate,
23
25
  enabled: Schema.optional(Schema.Boolean),
24
26
  // TODO(wittjosiah): Improve how this lookup is done.
@@ -29,3 +31,22 @@ export namespace AutomationAction {
29
31
  },
30
32
  ) {}
31
33
  }
34
+
35
+ const AUTOMATION_OPERATION = `${meta.id}/operation`;
36
+
37
+ export namespace AutomationOperation {
38
+ export const CreateTriggerFromTemplate = Operation.make({
39
+ meta: { key: `${AUTOMATION_OPERATION}/create-trigger-from-template`, name: 'Create Trigger From Template' },
40
+ services: [Capability.Service],
41
+ schema: {
42
+ input: Schema.Struct({
43
+ db: Database.Database,
44
+ template: TriggerTemplate,
45
+ enabled: Schema.optional(Schema.Boolean),
46
+ scriptName: Schema.optional(Schema.String),
47
+ input: Schema.optional(Schema.Record({ key: Schema.String, value: Schema.Any })),
48
+ }),
49
+ output: Schema.Void,
50
+ },
51
+ });
52
+ }
@@ -1,11 +0,0 @@
1
- import {
2
- AutomationPanel,
3
- AutomationPanel_default
4
- } from "./chunk-K5YNWESC.mjs";
5
- import "./chunk-JW7XSPYW.mjs";
6
- import "./chunk-LZQFZO3B.mjs";
7
- export {
8
- AutomationPanel,
9
- AutomationPanel_default as default
10
- };
11
- //# sourceMappingURL=AutomationPanel-LBXJDM6Z.mjs.map
@@ -1,68 +0,0 @@
1
- import {
2
- useTriggerRuntimeControls
3
- } from "./chunk-CVYJM6OO.mjs";
4
- import "./chunk-GCGHLQM2.mjs";
5
- import {
6
- AutomationPanel
7
- } from "./chunk-K5YNWESC.mjs";
8
- import "./chunk-JW7XSPYW.mjs";
9
- import {
10
- meta
11
- } from "./chunk-LZQFZO3B.mjs";
12
-
13
- // src/components/AutomationSettings.tsx
14
- import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
15
- import React2 from "react";
16
- import { useTranslation as useTranslation2 } from "@dxos/react-ui";
17
- import { ControlPage, ControlSection } from "@dxos/react-ui-form";
18
-
19
- // src/components/TriggerSettings.tsx
20
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
21
- import React from "react";
22
- import { Input, useTranslation } from "@dxos/react-ui";
23
- import { ControlItemInput } from "@dxos/react-ui-form";
24
- var TriggersSettings = ({ space }) => {
25
- var _effect = _useSignals();
26
- try {
27
- const { triggers, isRunning, start, stop } = useTriggerRuntimeControls(space);
28
- const { t } = useTranslation(meta.id);
29
- return /* @__PURE__ */ React.createElement("div", {
30
- className: "container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]"
31
- }, /* @__PURE__ */ React.createElement(ControlItemInput, {
32
- title: t("runtime label"),
33
- description: t("runtime description")
34
- }, /* @__PURE__ */ React.createElement(Input.Switch, {
35
- classNames: "justify-self-end",
36
- checked: isRunning,
37
- onCheckedChange: isRunning ? stop : start
38
- })));
39
- } finally {
40
- _effect.f();
41
- }
42
- };
43
-
44
- // src/components/AutomationSettings.tsx
45
- var AutomationSettings = (props) => {
46
- var _effect = _useSignals2();
47
- try {
48
- const { t } = useTranslation2(meta.id);
49
- return /* @__PURE__ */ React2.createElement(ControlPage, null, /* @__PURE__ */ React2.createElement(ControlSection, {
50
- title: t("automation verbose label", {
51
- ns: meta.id
52
- }),
53
- description: t("automation description", {
54
- ns: meta.id
55
- })
56
- }, /* @__PURE__ */ React2.createElement(AutomationPanel, props), /* @__PURE__ */ React2.createElement(TriggersSettings, {
57
- space: props.space
58
- })));
59
- } finally {
60
- _effect.f();
61
- }
62
- };
63
- var AutomationSettings_default = AutomationSettings;
64
- export {
65
- AutomationSettings,
66
- AutomationSettings_default as default
67
- };
68
- //# sourceMappingURL=AutomationSettings-IIEI5D2K.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/AutomationSettings.tsx", "../../../src/components/TriggerSettings.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { useTranslation } from '@dxos/react-ui';\nimport { ControlPage, ControlSection } from '@dxos/react-ui-form';\n\nimport { meta } from '../meta';\n\nimport { AutomationPanel, type AutomationPanelProps } from './AutomationPanel';\nimport { TriggersSettings } from './TriggerSettings';\n\nexport const AutomationSettings = (props: AutomationPanelProps) => {\n const { t } = useTranslation(meta.id);\n return (\n <ControlPage>\n <ControlSection\n title={t('automation verbose label', { ns: meta.id })}\n description={t('automation description', { ns: meta.id })}\n >\n <AutomationPanel {...props} />\n <TriggersSettings space={props.space} />\n </ControlSection>\n </ControlPage>\n );\n};\n\nexport default AutomationSettings;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\nimport { Input, useTranslation } from '@dxos/react-ui';\nimport { ControlItemInput } from '@dxos/react-ui-form';\n\nimport { useTriggerRuntimeControls } from '../hooks';\nimport { meta } from '../meta';\n\nexport const TriggersSettings = ({ space }: { space: Space }) => {\n const { triggers, isRunning, start, stop } = useTriggerRuntimeControls(space);\n const { t } = useTranslation(meta.id);\n\n return (\n <div className='container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]'>\n <ControlItemInput title={t('runtime label')} description={t('runtime description')}>\n <Input.Switch classNames='justify-self-end' checked={isRunning} onCheckedChange={isRunning ? stop : start} />\n </ControlItemInput>\n </div>\n );\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAIA,OAAOA,YAAW;AAElB,SAASC,kBAAAA,uBAAsB;AAC/B,SAASC,aAAaC,sBAAsB;;;;ACH5C,OAAOC,WAAW;AAGlB,SAASC,OAAOC,sBAAsB;AACtC,SAASC,wBAAwB;AAK1B,IAAMC,mBAAmB,CAAC,EAAEC,MAAK,MAAoB;;;AAC1D,UAAM,EAAEC,UAAUC,WAAWC,OAAOC,KAAI,IAAKC,0BAA0BL,KAAAA;AACvE,UAAM,EAAEM,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AAEpC,WACE,sBAAA,cAACC,OAAAA;MAAIC,WAAU;OACb,sBAAA,cAACC,kBAAAA;MAAiBC,OAAOP,EAAE,eAAA;MAAkBQ,aAAaR,EAAE,qBAAA;OAC1D,sBAAA,cAACS,MAAMC,QAAM;MAACC,YAAW;MAAmBC,SAAShB;MAAWiB,iBAAiBjB,YAAYE,OAAOD;;;;;AAI5G;;;ADVO,IAAMiB,qBAAqB,CAACC,UAAAA;;;AACjC,UAAM,EAAEC,EAAC,IAAKC,gBAAeC,KAAKC,EAAE;AACpC,WACE,gBAAAC,OAAA,cAACC,aAAAA,MACC,gBAAAD,OAAA,cAACE,gBAAAA;MACCC,OAAOP,EAAE,4BAA4B;QAAEQ,IAAIN,KAAKC;MAAG,CAAA;MACnDM,aAAaT,EAAE,0BAA0B;QAAEQ,IAAIN,KAAKC;MAAG,CAAA;OAEvD,gBAAAC,OAAA,cAACM,iBAAoBX,KAAAA,GACrB,gBAAAK,OAAA,cAACO,kBAAAA;MAAiBC,OAAOb,MAAMa;;;;;AAIvC;AAEA,IAAA,6BAAed;",
6
- "names": ["React", "useTranslation", "ControlPage", "ControlSection", "React", "Input", "useTranslation", "ControlItemInput", "TriggersSettings", "space", "triggers", "isRunning", "start", "stop", "useTriggerRuntimeControls", "t", "useTranslation", "meta", "id", "div", "className", "ControlItemInput", "title", "description", "Input", "Switch", "classNames", "checked", "onCheckedChange", "AutomationSettings", "props", "t", "useTranslation", "meta", "id", "React", "ControlPage", "ControlSection", "title", "ns", "description", "AutomationPanel", "TriggersSettings", "space"]
7
- }
@@ -1,36 +0,0 @@
1
- import {
2
- FunctionsPanel
3
- } from "./chunk-FHSN7G4H.mjs";
4
- import {
5
- meta
6
- } from "./chunk-LZQFZO3B.mjs";
7
-
8
- // src/components/FunctionsContainer.tsx
9
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
10
- import React from "react";
11
- import { useTranslation } from "@dxos/react-ui";
12
- import { ControlPage, ControlSection } from "@dxos/react-ui-form";
13
- var FunctionsContainer = ({ space }) => {
14
- var _effect = _useSignals();
15
- try {
16
- const { t } = useTranslation(meta.id);
17
- return /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
18
- title: t("functions verbose label", {
19
- ns: meta.id
20
- }),
21
- description: t("functions description", {
22
- ns: meta.id
23
- })
24
- }, /* @__PURE__ */ React.createElement(FunctionsPanel, {
25
- space
26
- })));
27
- } finally {
28
- _effect.f();
29
- }
30
- };
31
- var FunctionsContainer_default = FunctionsContainer;
32
- export {
33
- FunctionsContainer,
34
- FunctionsContainer_default as default
35
- };
36
- //# sourceMappingURL=FunctionsContainer-IZTCGNJZ.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/FunctionsContainer.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\nimport { ControlPage, ControlSection } from '@dxos/react-ui-form';\n\nimport { meta } from '../meta';\n\nimport { FunctionsPanel } from './FunctionsPanel';\n\nexport const FunctionsContainer = ({ space }: { space: Space }) => {\n const { t } = useTranslation(meta.id);\n return (\n <ControlPage>\n <ControlSection\n title={t('functions verbose label', { ns: meta.id })}\n description={t('functions description', { ns: meta.id })}\n >\n <FunctionsPanel space={space} />\n </ControlSection>\n </ControlPage>\n );\n};\n\nexport default FunctionsContainer;\n"],
5
- "mappings": ";;;;;;;;;AAIA,OAAOA,WAAW;AAGlB,SAASC,sBAAsB;AAC/B,SAASC,aAAaC,sBAAsB;AAMrC,IAAMC,qBAAqB,CAAC,EAAEC,MAAK,MAAoB;;;AAC5D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,KAAKC,EAAE;AACpC,WACE,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;MACCC,OAAON,EAAE,2BAA2B;QAAEO,IAAIL,KAAKC;MAAG,CAAA;MAClDK,aAAaR,EAAE,yBAAyB;QAAEO,IAAIL,KAAKC;MAAG,CAAA;OAEtD,sBAAA,cAACM,gBAAAA;MAAeV;;;;;AAIxB;AAEA,IAAA,6BAAeD;",
6
- "names": ["React", "useTranslation", "ControlPage", "ControlSection", "FunctionsContainer", "space", "t", "useTranslation", "meta", "id", "ControlPage", "ControlSection", "title", "ns", "description", "FunctionsPanel"]
7
- }
@@ -1,81 +0,0 @@
1
- import {
2
- meta
3
- } from "./chunk-LZQFZO3B.mjs";
4
-
5
- // src/capabilities/app-graph-builder.ts
6
- import { Rx } from "@effect-rx/rx-react";
7
- import * as Function from "effect/Function";
8
- import * as Option from "effect/Option";
9
- import { Capabilities, contributes } from "@dxos/app-framework";
10
- import { Obj } from "@dxos/echo";
11
- import { Script } from "@dxos/functions";
12
- import { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
13
- import { createExtension } from "@dxos/plugin-graph";
14
- import { meta as spaceMeta } from "@dxos/plugin-space";
15
- var app_graph_builder_default = ((context) => contributes(Capabilities.AppGraphBuilder, [
16
- createExtension({
17
- id: `${meta.id}/space-settings-automation`,
18
- connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.type === `${spaceMeta.id}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => [
19
- {
20
- id: `automation-${node2.id}`,
21
- type: `${meta.id}/space-settings-automation`,
22
- data: `${meta.id}/space-settings-automation`,
23
- properties: {
24
- label: [
25
- "automation panel label",
26
- {
27
- ns: meta.id
28
- }
29
- ],
30
- icon: "ph--lightning--regular"
31
- }
32
- }
33
- ]), Option.getOrElse(() => [])))
34
- }),
35
- createExtension({
36
- id: `${meta.id}/space-settings-functions`,
37
- connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.type === `${spaceMeta.id}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => [
38
- {
39
- id: `functions-${node2.id}`,
40
- type: `${meta.id}/space-settings-functions`,
41
- data: `${meta.id}/space-settings-functions`,
42
- properties: {
43
- label: [
44
- "functions panel label",
45
- {
46
- ns: meta.id
47
- }
48
- ],
49
- icon: "ph--function--regular"
50
- }
51
- }
52
- ]), Option.getOrElse(() => [])))
53
- }),
54
- createExtension({
55
- id: `${meta.id}/script-companion`,
56
- connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(Script.Script, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
57
- {
58
- id: [
59
- node2.id,
60
- "automation"
61
- ].join(ATTENDABLE_PATH_SEPARATOR),
62
- type: PLANK_COMPANION_TYPE,
63
- data: "automation",
64
- properties: {
65
- label: [
66
- "script automation label",
67
- {
68
- ns: meta.id
69
- }
70
- ],
71
- icon: "ph--lightning--regular",
72
- disposition: "hidden"
73
- }
74
- }
75
- ]), Option.getOrElse(() => [])))
76
- })
77
- ]));
78
- export {
79
- app_graph_builder_default as default
80
- };
81
- //# sourceMappingURL=app-graph-builder-7VKA2GS3.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { Script } from '@dxos/functions';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension } from '@dxos/plugin-graph';\nimport { meta as spaceMeta } from '@dxos/plugin-space';\n\nimport { meta } from '../meta';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/space-settings-automation`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${spaceMeta.id}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `automation-${node.id}`,\n type: `${meta.id}/space-settings-automation`,\n data: `${meta.id}/space-settings-automation`,\n properties: {\n label: ['automation panel label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/space-settings-functions`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${spaceMeta.id}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `functions-${node.id}`,\n type: `${meta.id}/space-settings-functions`,\n data: `${meta.id}/space-settings-functions`,\n properties: {\n label: ['functions panel label', { ns: meta.id }],\n icon: 'ph--function--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/script-companion`,\n connector: (node) =>\n Rx.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(Script.Script, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'automation'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'automation',\n properties: {\n label: ['script automation label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n"],
5
- "mappings": ";;;;;AAIA,SAASA,UAAU;AACnB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,cAAkCC,mBAAmB;AAC9D,SAASC,WAAW;AACpB,SAASC,cAAc;AACvB,SAASC,2BAA2BC,4BAA4B;AAChE,SAASC,uBAAuB;AAChC,SAASC,QAAQC,iBAAiB;AAIlC,IAAA,6BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACEC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUA,MAAKM,SAAS,GAAGC,UAAUV,EAAE,cAAqBW,YAAKR,KAAAA,IAAeS,YAAI,CAAA,GAC7FC,WAAI,CAACV,UAAS;MACnB;QACEH,IAAI,cAAcG,MAAKH,EAAE;QACzBS,MAAM,GAAGR,KAAKD,EAAE;QAChBc,MAAM,GAAGb,KAAKD,EAAE;QAChBe,YAAY;UACVC,OAAO;YAAC;YAA0B;cAAEC,IAAIhB,KAAKD;YAAG;;UAChDkB,MAAM;QACR;MACF;KACD,GACMC,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACApB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACEC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUA,MAAKM,SAAS,GAAGC,UAAUV,EAAE,cAAqBW,YAAKR,KAAAA,IAAeS,YAAI,CAAA,GAC7FC,WAAI,CAACV,UAAS;MACnB;QACEH,IAAI,aAAaG,MAAKH,EAAE;QACxBS,MAAM,GAAGR,KAAKD,EAAE;QAChBc,MAAM,GAAGb,KAAKD,EAAE;QAChBe,YAAY;UACVC,OAAO;YAAC;YAAyB;cAAEC,IAAIhB,KAAKD;YAAG;;UAC/CkB,MAAM;QACR;MACF;KACD,GACMC,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACApB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACEC,cACPD,IAAIH,IAAAA,GACGK,eAAQ,CAACL,UAAUiB,IAAIC,WAAWC,OAAOA,QAAQnB,MAAKW,IAAI,IAAWH,YAAKR,KAAAA,IAAeS,YAAI,CAAA,GAC7FC,WAAI,CAACV,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAcuB,KAAKC,yBAAAA;QACjCf,MAAMgB;QACNX,MAAM;QACNC,YAAY;UACVC,OAAO;YAAC;YAA2B;cAAEC,IAAIhB,KAAKD;YAAG;;UACjDkB,MAAM;UACNQ,aAAa;QACf;MACF;KACD,GACMP,iBAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;CACD;",
6
- "names": ["Rx", "Function", "Option", "Capabilities", "contributes", "Obj", "Script", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "createExtension", "meta", "spaceMeta", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "connector", "node", "Rx", "make", "get", "pipe", "flatMap", "type", "spaceMeta", "some", "none", "map", "data", "properties", "label", "ns", "icon", "getOrElse", "Obj", "instanceOf", "Script", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "disposition"]
7
- }
@@ -1,66 +0,0 @@
1
- import {
2
- AutomationCapabilities
3
- } from "./chunk-GCGHLQM2.mjs";
4
-
5
- // src/hooks/useComputeRuntimeCallback.ts
6
- import { useCallback } from "react";
7
- import { useCapability } from "@dxos/app-framework";
8
-
9
- // src/capabilities/index.ts
10
- import { lazy } from "@dxos/app-framework";
11
- var AppGraphBuilder = lazy(() => import("./app-graph-builder-7VKA2GS3.mjs"));
12
- var ComputeRuntime = lazy(() => import("./compute-runtime-PFYRMGN2.mjs"));
13
- var IntentResolver = lazy(() => import("./intent-resolver-5HR7M7T6.mjs"));
14
- var ReactSurface = lazy(() => import("./react-surface-WPMY3EX2.mjs"));
15
-
16
- // src/hooks/useComputeRuntimeCallback.ts
17
- var useComputeRuntimeCallback = (space, fn, deps) => {
18
- const computeRuntime = useCapability(AutomationCapabilities.ComputeRuntime);
19
- const runtime = space !== void 0 ? computeRuntime.getRuntime(space.id) : void 0;
20
- return useCallback(() => {
21
- if (!runtime) {
22
- throw new TypeError("Space not provided to useComputeRuntimeCallback");
23
- }
24
- return runtime.runPromise(fn());
25
- }, [
26
- runtime,
27
- ...deps ?? []
28
- ]);
29
- };
30
-
31
- // src/hooks/useTriggerRuntimeControls.ts
32
- import * as Effect from "effect/Effect";
33
- import { Filter } from "@dxos/echo";
34
- import { Trigger, TriggerDispatcher } from "@dxos/functions";
35
- import { useQuery } from "@dxos/react-client/echo";
36
- import { useAsyncState } from "@dxos/react-ui";
37
- var useTriggerRuntimeControls = (space) => {
38
- const triggers = useQuery(space, Filter.type(Trigger.Trigger));
39
- const [isRunningState, setIsRunningState] = useAsyncState(useComputeRuntimeCallback(space, () => TriggerDispatcher.pipe(Effect.map((t) => t.running))));
40
- const start = useComputeRuntimeCallback(space, Effect.fnUntraced(function* () {
41
- const dispatcher = yield* TriggerDispatcher;
42
- yield* dispatcher.start();
43
- setIsRunningState(true);
44
- }));
45
- const stop = useComputeRuntimeCallback(space, Effect.fnUntraced(function* () {
46
- const dispatcher = yield* TriggerDispatcher;
47
- yield* dispatcher.stop();
48
- setIsRunningState(false);
49
- }));
50
- return {
51
- triggers,
52
- isRunning: isRunningState ?? false,
53
- start: () => void start(),
54
- stop: () => void stop()
55
- };
56
- };
57
-
58
- export {
59
- useComputeRuntimeCallback,
60
- useTriggerRuntimeControls,
61
- AppGraphBuilder,
62
- ComputeRuntime,
63
- IntentResolver,
64
- ReactSurface
65
- };
66
- //# sourceMappingURL=chunk-CVYJM6OO.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/useComputeRuntimeCallback.ts", "../../../src/capabilities/index.ts", "../../../src/hooks/useTriggerRuntimeControls.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Effect from 'effect/Effect';\nimport { useCallback } from 'react';\n\nimport { useCapability } from '@dxos/app-framework';\nimport type { Space } from '@dxos/react-client/echo';\n\nimport { AutomationCapabilities } from '../capabilities';\n\n/**\n * Create an effectful function that has access to compute services\n */\n// TODO(burdon): Factor out (figure out cross-plugin capabilities dependencies).\nexport const useComputeRuntimeCallback = <T>(\n space: Space | undefined,\n fn: () => Effect.Effect<T, any, AutomationCapabilities.ComputeServices>,\n deps?: React.DependencyList,\n): (() => Promise<T>) => {\n const computeRuntime = useCapability(AutomationCapabilities.ComputeRuntime);\n const runtime = space !== undefined ? computeRuntime.getRuntime(space.id) : undefined;\n\n return useCallback(() => {\n if (!runtime) {\n throw new TypeError('Space not provided to useComputeRuntimeCallback');\n }\n\n return runtime.runPromise(fn());\n }, [runtime, ...(deps ?? [])]);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = lazy(() => import('./app-graph-builder'));\nexport const ComputeRuntime = lazy(() => import('./compute-runtime'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Filter } from '@dxos/echo';\nimport { Trigger, TriggerDispatcher } from '@dxos/functions';\nimport { type Space, useQuery } from '@dxos/react-client/echo';\nimport { useAsyncState } from '@dxos/react-ui';\n\nimport { useComputeRuntimeCallback } from './useComputeRuntimeCallback';\n\ninterface TriggerRuntimeControls {\n triggers: Trigger.Trigger[];\n isRunning: boolean;\n start: () => void;\n stop: () => void;\n}\n\nexport const useTriggerRuntimeControls = (space: Space | undefined): TriggerRuntimeControls => {\n const triggers = useQuery(space, Filter.type(Trigger.Trigger));\n\n const [isRunningState, setIsRunningState] = useAsyncState(\n useComputeRuntimeCallback(space, () => TriggerDispatcher.pipe(Effect.map((t) => t.running))),\n );\n\n const start = useComputeRuntimeCallback(\n space,\n Effect.fnUntraced(function* () {\n const dispatcher = yield* TriggerDispatcher;\n yield* dispatcher.start();\n setIsRunningState(true);\n }),\n );\n\n const stop = useComputeRuntimeCallback(\n space,\n Effect.fnUntraced(function* () {\n const dispatcher = yield* TriggerDispatcher;\n yield* dispatcher.stop();\n setIsRunningState(false);\n }),\n );\n\n return {\n triggers,\n isRunning: isRunningState ?? false,\n start: () => void start(),\n stop: () => void stop(),\n };\n};\n"],
5
- "mappings": ";;;;;AAKA,SAASA,mBAAmB;AAE5B,SAASC,qBAAqB;;;ACH9B,SAASC,YAAY;AAEd,IAAMC,kBAAkBC,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC1C,IAAMC,iBAAiBD,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAME,iBAAiBF,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMG,eAAeH,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ADOvC,IAAMI,4BAA4B,CACvCC,OACAC,IACAC,SAAAA;AAEA,QAAMC,iBAAiBC,cAAcC,uBAAuBC,cAAc;AAC1E,QAAMC,UAAUP,UAAUQ,SAAYL,eAAeM,WAAWT,MAAMU,EAAE,IAAIF;AAE5E,SAAOG,YAAY,MAAA;AACjB,QAAI,CAACJ,SAAS;AACZ,YAAM,IAAIK,UAAU,iDAAA;IACtB;AAEA,WAAOL,QAAQM,WAAWZ,GAAAA,CAAAA;EAC5B,GAAG;IAACM;OAAaL,QAAQ,CAAA;GAAI;AAC/B;;;AE3BA,YAAYY,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,SAASC,yBAAyB;AAC3C,SAAqBC,gBAAgB;AACrC,SAASC,qBAAqB;AAWvB,IAAMC,4BAA4B,CAACC,UAAAA;AACxC,QAAMC,WAAWC,SAASF,OAAOG,OAAOC,KAAKC,QAAQA,OAAO,CAAA;AAE5D,QAAM,CAACC,gBAAgBC,iBAAAA,IAAqBC,cAC1CC,0BAA0BT,OAAO,MAAMU,kBAAkBC,KAAYC,WAAI,CAACC,MAAMA,EAAEC,OAAO,CAAA,CAAA,CAAA;AAG3F,QAAMC,QAAQN,0BACZT,OACOgB,kBAAW,aAAA;AAChB,UAAMC,aAAa,OAAOP;AAC1B,WAAOO,WAAWF,MAAK;AACvBR,sBAAkB,IAAA;EACpB,CAAA,CAAA;AAGF,QAAMW,OAAOT,0BACXT,OACOgB,kBAAW,aAAA;AAChB,UAAMC,aAAa,OAAOP;AAC1B,WAAOO,WAAWC,KAAI;AACtBX,sBAAkB,KAAA;EACpB,CAAA,CAAA;AAGF,SAAO;IACLN;IACAkB,WAAWb,kBAAkB;IAC7BS,OAAO,MAAM,KAAKA,MAAAA;IAClBG,MAAM,MAAM,KAAKA,KAAAA;EACnB;AACF;",
6
- "names": ["useCallback", "useCapability", "lazy", "AppGraphBuilder", "lazy", "ComputeRuntime", "IntentResolver", "ReactSurface", "useComputeRuntimeCallback", "space", "fn", "deps", "computeRuntime", "useCapability", "AutomationCapabilities", "ComputeRuntime", "runtime", "undefined", "getRuntime", "id", "useCallback", "TypeError", "runPromise", "Effect", "Filter", "Trigger", "TriggerDispatcher", "useQuery", "useAsyncState", "useTriggerRuntimeControls", "space", "triggers", "useQuery", "Filter", "type", "Trigger", "isRunningState", "setIsRunningState", "useAsyncState", "useComputeRuntimeCallback", "TriggerDispatcher", "pipe", "map", "t", "running", "start", "fnUntraced", "dispatcher", "stop", "isRunning"]
7
- }