@dxos/plugin-automation 0.8.4-main.67995b8 → 0.8.4-main.69d29f4

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 (285) 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-56ZKRVM5.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-54PANILA.mjs +14 -0
  10. package/dist/lib/browser/chunk-54PANILA.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-BFUIVUQH.mjs +102 -0
  12. package/dist/lib/browser/chunk-BFUIVUQH.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-BKFQBKYO.mjs +8 -0
  14. package/dist/lib/browser/chunk-BKFQBKYO.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-JOXPQ27I.mjs +83 -0
  16. package/dist/lib/browser/chunk-JOXPQ27I.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-PZNBEKO5.mjs +17 -0
  18. package/dist/lib/browser/chunk-PZNBEKO5.mjs.map +7 -0
  19. package/dist/lib/browser/chunk-QW3EM35H.mjs +248 -0
  20. package/dist/lib/browser/chunk-QW3EM35H.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-RAF2FJST.mjs +86 -0
  22. package/dist/lib/browser/chunk-RAF2FJST.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-YWLEY2FD.mjs +200 -0
  24. package/dist/lib/browser/chunk-YWLEY2FD.mjs.map +7 -0
  25. package/dist/lib/browser/cli/index.mjs +1107 -0
  26. package/dist/lib/browser/cli/index.mjs.map +7 -0
  27. package/dist/lib/browser/compute-runtime-WTWLQ67J.mjs +114 -0
  28. package/dist/lib/browser/compute-runtime-WTWLQ67J.mjs.map +7 -0
  29. package/dist/lib/browser/hooks/index.mjs +13 -0
  30. package/dist/lib/browser/index.mjs +67 -46
  31. package/dist/lib/browser/index.mjs.map +4 -4
  32. package/dist/lib/browser/meta.json +1 -1
  33. package/dist/lib/browser/operation-resolver-Q3MWOR7K.mjs +82 -0
  34. package/dist/lib/browser/operation-resolver-Q3MWOR7K.mjs.map +7 -0
  35. package/dist/lib/browser/{react-surface-4DFSM7OX.mjs → react-surface-EV3AC62F.mjs} +25 -24
  36. package/dist/lib/browser/react-surface-EV3AC62F.mjs.map +7 -0
  37. package/dist/lib/browser/types/index.mjs +10 -4
  38. package/dist/lib/node-esm/{AutomationPanel-YYUMSK2W.mjs → AutomationPanel-B7NAGDFA.mjs} +4 -4
  39. package/dist/lib/node-esm/AutomationSettings-M5PMZJ6P.mjs +57 -0
  40. package/dist/lib/node-esm/AutomationSettings-M5PMZJ6P.mjs.map +7 -0
  41. package/dist/lib/node-esm/FunctionsContainer-J4O2ULWR.mjs +130 -0
  42. package/dist/lib/node-esm/FunctionsContainer-J4O2ULWR.mjs.map +7 -0
  43. package/dist/lib/node-esm/{FunctionsPanel-KGIOZSPZ.mjs → FunctionsPanel-SS6GIVNU.mjs} +3 -3
  44. package/dist/lib/node-esm/FunctionsPanel-SS6GIVNU.mjs.map +7 -0
  45. package/dist/lib/node-esm/app-graph-builder-4UCMXHYY.mjs +85 -0
  46. package/dist/lib/node-esm/app-graph-builder-4UCMXHYY.mjs.map +7 -0
  47. package/dist/lib/node-esm/chunk-2CKVH7JC.mjs +201 -0
  48. package/dist/lib/node-esm/chunk-2CKVH7JC.mjs.map +7 -0
  49. package/dist/lib/node-esm/chunk-5FXNN3MV.mjs +19 -0
  50. package/dist/lib/node-esm/chunk-5FXNN3MV.mjs.map +7 -0
  51. package/dist/lib/node-esm/chunk-7QRUPEHH.mjs +16 -0
  52. package/dist/lib/node-esm/chunk-7QRUPEHH.mjs.map +7 -0
  53. package/dist/lib/node-esm/chunk-HQLVREIX.mjs +87 -0
  54. package/dist/lib/node-esm/chunk-HQLVREIX.mjs.map +7 -0
  55. package/dist/lib/node-esm/chunk-K7GCM342.mjs +10 -0
  56. package/dist/lib/node-esm/chunk-K7GCM342.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-KWKWOGS5.mjs +103 -0
  58. package/dist/lib/node-esm/chunk-KWKWOGS5.mjs.map +7 -0
  59. package/dist/lib/node-esm/chunk-LJAXQ6CX.mjs +249 -0
  60. package/dist/lib/node-esm/chunk-LJAXQ6CX.mjs.map +7 -0
  61. package/dist/lib/node-esm/chunk-RX52VKI2.mjs +84 -0
  62. package/dist/lib/node-esm/chunk-RX52VKI2.mjs.map +7 -0
  63. package/dist/lib/node-esm/cli/index.mjs +1108 -0
  64. package/dist/lib/node-esm/cli/index.mjs.map +7 -0
  65. package/dist/lib/node-esm/compute-runtime-ZHROOBLY.mjs +115 -0
  66. package/dist/lib/node-esm/compute-runtime-ZHROOBLY.mjs.map +7 -0
  67. package/dist/lib/node-esm/hooks/index.mjs +14 -0
  68. package/dist/lib/node-esm/hooks/index.mjs.map +7 -0
  69. package/dist/lib/node-esm/index.mjs +67 -46
  70. package/dist/lib/node-esm/index.mjs.map +4 -4
  71. package/dist/lib/node-esm/meta.json +1 -1
  72. package/dist/lib/node-esm/operation-resolver-R5GA4YNO.mjs +83 -0
  73. package/dist/lib/node-esm/operation-resolver-R5GA4YNO.mjs.map +7 -0
  74. package/dist/lib/node-esm/{react-surface-3PNW7NDW.mjs → react-surface-S6VZJCEZ.mjs} +25 -24
  75. package/dist/lib/node-esm/react-surface-S6VZJCEZ.mjs.map +7 -0
  76. package/dist/lib/node-esm/types/index.mjs +10 -4
  77. package/dist/types/src/AutomationPlugin.d.ts +2 -1
  78. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  79. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
  80. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
  81. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
  82. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
  83. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts +6 -0
  84. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts.map +1 -0
  85. package/dist/types/src/capabilities/compute-runtime/index.d.ts +3 -0
  86. package/dist/types/src/capabilities/compute-runtime/index.d.ts.map +1 -0
  87. package/dist/types/src/capabilities/index.d.ts +4 -3
  88. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
  90. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
  91. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
  92. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
  93. package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
  94. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
  95. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
  96. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
  97. package/dist/types/src/cli/commands/index.d.ts +2 -0
  98. package/dist/types/src/cli/commands/index.d.ts.map +1 -0
  99. package/dist/types/src/cli/commands/trigger/create/index.d.ts +25 -0
  100. package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +1 -0
  101. package/dist/types/src/cli/commands/trigger/create/queue.d.ts +13 -0
  102. package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +1 -0
  103. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts +15 -0
  104. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +1 -0
  105. package/dist/types/src/cli/commands/trigger/create/timer.d.ts +13 -0
  106. package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +1 -0
  107. package/dist/types/src/cli/commands/trigger/index.d.ts +57 -0
  108. package/dist/types/src/cli/commands/trigger/index.d.ts.map +1 -0
  109. package/dist/types/src/cli/commands/trigger/list.d.ts +7 -0
  110. package/dist/types/src/cli/commands/trigger/list.d.ts.map +1 -0
  111. package/dist/types/src/cli/commands/trigger/options.d.ts +11 -0
  112. package/dist/types/src/cli/commands/trigger/options.d.ts.map +1 -0
  113. package/dist/types/src/cli/commands/trigger/remove.d.ts +8 -0
  114. package/dist/types/src/cli/commands/trigger/remove.d.ts.map +1 -0
  115. package/dist/types/src/cli/commands/trigger/update/index.d.ts +28 -0
  116. package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +1 -0
  117. package/dist/types/src/cli/commands/trigger/update/queue.d.ts +12 -0
  118. package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +1 -0
  119. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts +13 -0
  120. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +1 -0
  121. package/dist/types/src/cli/commands/trigger/update/timer.d.ts +11 -0
  122. package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +1 -0
  123. package/dist/types/src/cli/commands/trigger/util.d.ts +46 -0
  124. package/dist/types/src/cli/commands/trigger/util.d.ts.map +1 -0
  125. package/dist/types/src/cli/index.d.ts +2 -0
  126. package/dist/types/src/cli/index.d.ts.map +1 -0
  127. package/dist/types/src/cli/plugin.d.ts +3 -0
  128. package/dist/types/src/cli/plugin.d.ts.map +1 -0
  129. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +7 -6
  130. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  131. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +49 -4
  132. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  133. package/dist/types/src/components/AutomationSettings.d.ts +5 -0
  134. package/dist/types/src/components/AutomationSettings.d.ts.map +1 -0
  135. package/dist/types/src/components/FunctionsContainer.d.ts.map +1 -1
  136. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  137. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts +8 -0
  138. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -0
  139. package/dist/types/src/components/FunctionsRegistry/index.d.ts +2 -0
  140. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -0
  141. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +12 -9
  142. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  143. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +6 -3
  144. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  145. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +11 -8
  146. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  147. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +117 -4
  148. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  149. package/dist/types/src/components/TriggerSettings.d.ts +6 -0
  150. package/dist/types/src/components/TriggerSettings.d.ts.map +1 -0
  151. package/dist/types/src/components/index.d.ts +2 -2
  152. package/dist/types/src/components/index.d.ts.map +1 -1
  153. package/dist/types/src/hooks/index.d.ts +3 -0
  154. package/dist/types/src/hooks/index.d.ts.map +1 -0
  155. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +12 -0
  156. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -0
  157. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +11 -0
  158. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -0
  159. package/dist/types/src/index.d.ts +2 -0
  160. package/dist/types/src/index.d.ts.map +1 -1
  161. package/dist/types/src/meta.d.ts +2 -3
  162. package/dist/types/src/meta.d.ts.map +1 -1
  163. package/dist/types/src/testing/test-functions.d.ts +202 -3
  164. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  165. package/dist/types/src/translations.d.ts +6 -0
  166. package/dist/types/src/translations.d.ts.map +1 -1
  167. package/dist/types/src/types/capabilities.d.ts +22 -0
  168. package/dist/types/src/types/capabilities.d.ts.map +1 -0
  169. package/dist/types/src/types/events.d.ts +5 -0
  170. package/dist/types/src/types/events.d.ts.map +1 -0
  171. package/dist/types/src/types/index.d.ts +2 -0
  172. package/dist/types/src/types/index.d.ts.map +1 -1
  173. package/dist/types/src/types/schema.d.ts +31 -2
  174. package/dist/types/src/types/schema.d.ts.map +1 -1
  175. package/dist/types/tsconfig.tsbuildinfo +1 -1
  176. package/package.json +80 -45
  177. package/src/AutomationPlugin.tsx +18 -32
  178. package/src/capabilities/app-graph-builder/app-graph-builder.ts +71 -0
  179. package/src/capabilities/app-graph-builder/index.ts +7 -0
  180. package/src/capabilities/compute-runtime/compute-runtime.ts +133 -0
  181. package/src/capabilities/compute-runtime/index.ts +7 -0
  182. package/src/capabilities/index.ts +4 -5
  183. package/src/capabilities/operation-resolver/index.ts +7 -0
  184. package/src/capabilities/operation-resolver/operation-resolver.ts +79 -0
  185. package/src/capabilities/react-surface/index.ts +7 -0
  186. package/src/capabilities/react-surface/react-surface.tsx +60 -0
  187. package/src/cli/commands/index.ts +5 -0
  188. package/src/cli/commands/trigger/create/index.ts +14 -0
  189. package/src/cli/commands/trigger/create/queue.ts +89 -0
  190. package/src/cli/commands/trigger/create/subscription.ts +128 -0
  191. package/src/cli/commands/trigger/create/timer.ts +93 -0
  192. package/src/cli/commands/trigger/index.ts +16 -0
  193. package/src/cli/commands/trigger/list.ts +67 -0
  194. package/src/cli/commands/trigger/options.ts +59 -0
  195. package/src/cli/commands/trigger/remove.ts +45 -0
  196. package/src/cli/commands/trigger/update/index.ts +14 -0
  197. package/src/cli/commands/trigger/update/queue.ts +195 -0
  198. package/src/cli/commands/trigger/update/subscription.ts +278 -0
  199. package/src/cli/commands/trigger/update/timer.ts +193 -0
  200. package/src/cli/commands/trigger/util.ts +395 -0
  201. package/src/cli/index.ts +5 -0
  202. package/src/cli/plugin.ts +23 -0
  203. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +16 -17
  204. package/src/components/AutomationPanel/AutomationPanel.tsx +139 -59
  205. package/src/components/AutomationSettings.tsx +30 -0
  206. package/src/components/FunctionsContainer.tsx +18 -13
  207. package/src/components/FunctionsPanel/FunctionsPanel.tsx +33 -19
  208. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +111 -0
  209. package/src/components/FunctionsRegistry/index.ts +5 -0
  210. package/src/components/TriggerEditor/FunctionInputEditor.tsx +33 -35
  211. package/src/components/TriggerEditor/SpecSelector.tsx +29 -21
  212. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +78 -32
  213. package/src/components/TriggerEditor/TriggerEditor.tsx +81 -48
  214. package/src/components/TriggerSettings.tsx +25 -0
  215. package/src/components/index.ts +1 -1
  216. package/src/hooks/index.ts +6 -0
  217. package/src/hooks/useComputeRuntimeCallback.ts +67 -0
  218. package/src/hooks/useTriggerRuntimeControls.ts +53 -0
  219. package/src/index.ts +2 -0
  220. package/src/meta.ts +8 -7
  221. package/src/testing/test-functions.ts +3 -3
  222. package/src/translations.ts +9 -0
  223. package/src/types/capabilities.ts +42 -0
  224. package/src/types/events.ts +11 -0
  225. package/src/types/index.ts +2 -0
  226. package/src/types/schema.ts +24 -3
  227. package/dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs +0 -38
  228. package/dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs.map +0 -7
  229. package/dist/lib/browser/AutomationPanel-ZWA6GOFY.mjs +0 -11
  230. package/dist/lib/browser/FunctionsContainer-IOB333TX.mjs +0 -39
  231. package/dist/lib/browser/FunctionsContainer-IOB333TX.mjs.map +0 -7
  232. package/dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs +0 -80
  233. package/dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs.map +0 -7
  234. package/dist/lib/browser/chunk-ECSTS2UI.mjs +0 -14
  235. package/dist/lib/browser/chunk-ECSTS2UI.mjs.map +0 -7
  236. package/dist/lib/browser/chunk-ERTIGJYE.mjs +0 -147
  237. package/dist/lib/browser/chunk-ERTIGJYE.mjs.map +0 -7
  238. package/dist/lib/browser/chunk-FSJZXTS2.mjs +0 -230
  239. package/dist/lib/browser/chunk-FSJZXTS2.mjs.map +0 -7
  240. package/dist/lib/browser/chunk-GW5U2DGT.mjs +0 -15
  241. package/dist/lib/browser/chunk-GW5U2DGT.mjs.map +0 -7
  242. package/dist/lib/browser/chunk-HN7OHFCB.mjs +0 -38
  243. package/dist/lib/browser/chunk-HN7OHFCB.mjs.map +0 -7
  244. package/dist/lib/browser/chunk-LYJVTIVD.mjs +0 -94
  245. package/dist/lib/browser/chunk-LYJVTIVD.mjs.map +0 -7
  246. package/dist/lib/browser/intent-resolver-U3ZAQEFW.mjs +0 -76
  247. package/dist/lib/browser/intent-resolver-U3ZAQEFW.mjs.map +0 -7
  248. package/dist/lib/browser/react-surface-4DFSM7OX.mjs.map +0 -7
  249. package/dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs +0 -39
  250. package/dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs.map +0 -7
  251. package/dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs +0 -40
  252. package/dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs.map +0 -7
  253. package/dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs +0 -81
  254. package/dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-AZH66CED.mjs +0 -231
  256. package/dist/lib/node-esm/chunk-AZH66CED.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-HIMYPGHF.mjs +0 -148
  258. package/dist/lib/node-esm/chunk-HIMYPGHF.mjs.map +0 -7
  259. package/dist/lib/node-esm/chunk-NK5N3QKD.mjs +0 -17
  260. package/dist/lib/node-esm/chunk-NK5N3QKD.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-OEZNHUL2.mjs +0 -39
  262. package/dist/lib/node-esm/chunk-OEZNHUL2.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-SGZPTJ47.mjs +0 -16
  264. package/dist/lib/node-esm/chunk-SGZPTJ47.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-ZGPUV5VS.mjs +0 -95
  266. package/dist/lib/node-esm/chunk-ZGPUV5VS.mjs.map +0 -7
  267. package/dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs +0 -77
  268. package/dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs.map +0 -7
  269. package/dist/lib/node-esm/react-surface-3PNW7NDW.mjs.map +0 -7
  270. package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
  271. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
  272. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  273. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  274. package/dist/types/src/capabilities/react-surface.d.ts +0 -4
  275. package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
  276. package/dist/types/src/components/AutomationContainer.d.ts +0 -5
  277. package/dist/types/src/components/AutomationContainer.d.ts.map +0 -1
  278. package/src/capabilities/app-graph-builder.ts +0 -86
  279. package/src/capabilities/intent-resolver.ts +0 -72
  280. package/src/capabilities/react-surface.tsx +0 -56
  281. package/src/components/AutomationContainer.tsx +0 -30
  282. /package/dist/lib/browser/{AutomationPanel-ZWA6GOFY.mjs.map → AutomationPanel-FAS6ADCW.mjs.map} +0 -0
  283. /package/dist/lib/browser/{FunctionsPanel-56ZKRVM5.mjs.map → FunctionsPanel-ZX4J75UM.mjs.map} +0 -0
  284. /package/dist/lib/{node-esm/AutomationPanel-YYUMSK2W.mjs.map → browser/hooks/index.mjs.map} +0 -0
  285. /package/dist/lib/node-esm/{FunctionsPanel-KGIOZSPZ.mjs.map → AutomationPanel-B7NAGDFA.mjs.map} +0 -0
@@ -0,0 +1,53 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+
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';
11
+ import { useAsyncState } from '@dxos/react-ui';
12
+
13
+ import { useComputeRuntimeCallback } from './useComputeRuntimeCallback';
14
+
15
+ interface TriggerRuntimeControls {
16
+ triggers: Trigger.Trigger[];
17
+ isRunning: boolean;
18
+ start: () => void;
19
+ stop: () => void;
20
+ }
21
+
22
+ export const useTriggerRuntimeControls = (db: Database.Database | undefined): TriggerRuntimeControls => {
23
+ const triggers = useQuery(db, Filter.type(Trigger.Trigger));
24
+
25
+ const [isRunningState, setIsRunningState] = useAsyncState(
26
+ useComputeRuntimeCallback(db?.spaceId, () => TriggerDispatcher.pipe(Effect.map((t) => t.running))),
27
+ );
28
+
29
+ const start = useComputeRuntimeCallback(
30
+ db?.spaceId,
31
+ Effect.fnUntraced(function* () {
32
+ const dispatcher = yield* TriggerDispatcher;
33
+ yield* dispatcher.start();
34
+ setIsRunningState(true);
35
+ }),
36
+ );
37
+
38
+ const stop = useComputeRuntimeCallback(
39
+ db?.spaceId,
40
+ Effect.fnUntraced(function* () {
41
+ const dispatcher = yield* TriggerDispatcher;
42
+ yield* dispatcher.stop();
43
+ setIsRunningState(false);
44
+ }),
45
+ );
46
+
47
+ return {
48
+ triggers,
49
+ isRunning: isRunningState ?? false,
50
+ start: () => void start(),
51
+ stop: () => void stop(),
52
+ };
53
+ };
package/src/index.ts CHANGED
@@ -4,5 +4,7 @@
4
4
 
5
5
  export * from './components';
6
6
  export * from './meta';
7
+ export * from './hooks';
8
+ export * from './types';
7
9
 
8
10
  export * from './AutomationPlugin';
package/src/meta.ts CHANGED
@@ -2,15 +2,16 @@
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
+ import { trim } from '@dxos/util';
6
7
 
7
- export const AUTOMATION_PLUGIN = 'dxos.org/plugin/automation';
8
-
9
- export const meta: PluginMeta = {
10
- id: AUTOMATION_PLUGIN,
8
+ export const meta: Plugin.Meta = {
9
+ id: 'dxos.org/plugin/automation',
11
10
  name: 'Automation',
12
- description:
13
- 'The Automation tab allows you to trigger pre-defined workflows related to the element you are interacting with inside of Composer.',
11
+ description: trim`
12
+ Workflow automation engine that triggers custom actions based on object events and conditions.
13
+ Create automated pipelines that respond to changes and streamline repetitive tasks.
14
+ `,
14
15
  icon: 'ph--robot--regular',
15
16
  source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-automation',
16
17
  };
@@ -2,9 +2,9 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
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
  },
@@ -16,12 +16,21 @@ export const translations = [
16
16
  'automation verbose label': 'Manage automations',
17
17
  'automation description': 'You can manage all the triggers which automate your space here.',
18
18
 
19
+ 'runtime label': 'Enable Local Runtime',
20
+ 'runtime description':
21
+ 'This will start a trigger dispatcher locally for this space to run triggers on your device while Composer is running.',
22
+
19
23
  'functions panel label': 'Functions',
20
24
  'functions verbose label': 'Manage deployed functions',
25
+ 'functions registry verbose label': 'Functions registry',
26
+ 'functions registry description': 'Import functions from the registry',
21
27
  'functions description': 'You can manage all the functions deployed from your space on EDGE here.',
22
28
  'function copy id': 'Copy Function ID',
23
29
  'no functions found': 'No functions found',
24
30
  'go to function source button label': 'Show function source',
31
+ 'delete function button label': 'Delete function',
32
+
33
+ 'function parameters label': 'Function parameters',
25
34
 
26
35
  'trigger editor title': 'Configure Trigger',
27
36
  'new trigger label': 'Add Trigger',
@@ -0,0 +1,42 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import type * as ManagedRuntime from 'effect/ManagedRuntime';
6
+
7
+ import { type AiService, type ToolExecutionService, type ToolResolverService } from '@dxos/ai';
8
+ import { 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';
12
+ import type { SpaceId } from '@dxos/keys';
13
+
14
+ import { meta } from '../meta';
15
+
16
+ export namespace AutomationCapabilities {
17
+ /**
18
+ * Service stack for executing agents, functions, and triggers.
19
+ */
20
+ export type ComputeServices =
21
+ | TriggerDispatcher
22
+ | TriggerStateStore
23
+ | AiService.AiService
24
+ | Database.Service
25
+ | QueueService
26
+ | CredentialsService
27
+ | FunctionInvocationService
28
+ | TracingService
29
+ // TODO(dmaretskyi): Those should be provided at AI-chat call site.
30
+ | ToolResolverService
31
+ | ToolExecutionService;
32
+
33
+ export type ComputeRuntime = ManagedRuntime.ManagedRuntime<AutomationCapabilities.ComputeServices, never>;
34
+ export interface ComputeRuntimeProvider {
35
+ getRuntime(spaceId: SpaceId): ComputeRuntime;
36
+ }
37
+
38
+ /**
39
+ * Runtime for executing agents, functions, and triggers.
40
+ */
41
+ export const ComputeRuntime = Capability.make<ComputeRuntimeProvider>(`${meta.id}/capability/compute-runtime`);
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';
@@ -2,9 +2,11 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
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,38 +0,0 @@
1
- import {
2
- AutomationPanel
3
- } from "./chunk-ERTIGJYE.mjs";
4
- import "./chunk-FSJZXTS2.mjs";
5
- import {
6
- AUTOMATION_PLUGIN
7
- } from "./chunk-GW5U2DGT.mjs";
8
-
9
- // src/components/AutomationContainer.tsx
10
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
11
- import React from "react";
12
- import { useTranslation } from "@dxos/react-ui";
13
- import { ControlSection, ControlPage } from "@dxos/react-ui-form";
14
- import { StackItem } from "@dxos/react-ui-stack";
15
- var AutomationContainer = (props) => {
16
- var _effect = _useSignals();
17
- try {
18
- const { t } = useTranslation(AUTOMATION_PLUGIN);
19
- return /* @__PURE__ */ React.createElement(StackItem.Content, {
20
- classNames: "block overflow-y-auto"
21
- }, /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
22
- title: t("automation verbose label", {
23
- ns: AUTOMATION_PLUGIN
24
- }),
25
- description: t("automation description", {
26
- ns: AUTOMATION_PLUGIN
27
- })
28
- }, /* @__PURE__ */ React.createElement(AutomationPanel, props))));
29
- } finally {
30
- _effect.f();
31
- }
32
- };
33
- var AutomationContainer_default = AutomationContainer;
34
- export {
35
- AutomationContainer,
36
- AutomationContainer_default as default
37
- };
38
- //# sourceMappingURL=AutomationContainer-VZNV2ZQF.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/AutomationContainer.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { useTranslation } from '@dxos/react-ui';\nimport { ControlSection, ControlPage } from '@dxos/react-ui-form';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { AutomationPanel, type AutomationPanelProps } from './AutomationPanel';\nimport { AUTOMATION_PLUGIN } from '../meta';\n\nexport const AutomationContainer = (props: AutomationPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n return (\n <StackItem.Content classNames='block overflow-y-auto'>\n <ControlPage>\n <ControlSection\n title={t('automation verbose label', { ns: AUTOMATION_PLUGIN })}\n description={t('automation description', { ns: AUTOMATION_PLUGIN })}\n >\n <AutomationPanel {...props} />\n </ControlSection>\n </ControlPage>\n </StackItem.Content>\n );\n};\n\nexport default AutomationContainer;\n"],
5
- "mappings": ";;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,sBAAsB;AAC/B,SAASC,gBAAgBC,mBAAmB;AAC5C,SAASC,iBAAiB;AAKnB,IAAMC,sBAAsB,CAACC,UAAAA;;;AAClC,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,WACE,sBAAA,cAACC,UAAUC,SAAO;MAACC,YAAW;OAC5B,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;MACCC,OAAOR,EAAE,4BAA4B;QAAES,IAAIP;MAAkB,CAAA;MAC7DQ,aAAaV,EAAE,0BAA0B;QAAES,IAAIP;MAAkB,CAAA;OAEjE,sBAAA,cAACS,iBAAoBZ,KAAAA,CAAAA,CAAAA,CAAAA;;;;AAK/B;AAEA,IAAA,8BAAeD;",
6
- "names": ["React", "useTranslation", "ControlSection", "ControlPage", "StackItem", "AutomationContainer", "props", "t", "useTranslation", "AUTOMATION_PLUGIN", "StackItem", "Content", "classNames", "ControlPage", "ControlSection", "title", "ns", "description", "AutomationPanel"]
7
- }
@@ -1,11 +0,0 @@
1
- import {
2
- AutomationPanel,
3
- AutomationPanel_default
4
- } from "./chunk-ERTIGJYE.mjs";
5
- import "./chunk-FSJZXTS2.mjs";
6
- import "./chunk-GW5U2DGT.mjs";
7
- export {
8
- AutomationPanel,
9
- AutomationPanel_default as default
10
- };
11
- //# sourceMappingURL=AutomationPanel-ZWA6GOFY.mjs.map
@@ -1,39 +0,0 @@
1
- import {
2
- FunctionsPanel
3
- } from "./chunk-LYJVTIVD.mjs";
4
- import {
5
- AUTOMATION_PLUGIN
6
- } from "./chunk-GW5U2DGT.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
- import { StackItem } from "@dxos/react-ui-stack";
14
- var FunctionsContainer = ({ space }) => {
15
- var _effect = _useSignals();
16
- try {
17
- const { t } = useTranslation(AUTOMATION_PLUGIN);
18
- return /* @__PURE__ */ React.createElement(StackItem.Content, {
19
- classNames: "block overflow-y-auto"
20
- }, /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
21
- title: t("functions verbose label", {
22
- ns: AUTOMATION_PLUGIN
23
- }),
24
- description: t("functions description", {
25
- ns: AUTOMATION_PLUGIN
26
- })
27
- }, /* @__PURE__ */ React.createElement(FunctionsPanel, {
28
- space
29
- }))));
30
- } finally {
31
- _effect.f();
32
- }
33
- };
34
- var FunctionsContainer_default = FunctionsContainer;
35
- export {
36
- FunctionsContainer,
37
- FunctionsContainer_default as default
38
- };
39
- //# sourceMappingURL=FunctionsContainer-IOB333TX.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';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { FunctionsPanel } from './FunctionsPanel';\nimport { AUTOMATION_PLUGIN } from '../meta';\n\nexport const FunctionsContainer = ({ space }: { space: Space }) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n return (\n <StackItem.Content classNames='block overflow-y-auto'>\n <ControlPage>\n <ControlSection\n title={t('functions verbose label', { ns: AUTOMATION_PLUGIN })}\n description={t('functions description', { ns: AUTOMATION_PLUGIN })}\n >\n <FunctionsPanel space={space} />\n </ControlSection>\n </ControlPage>\n </StackItem.Content>\n );\n};\n\nexport default FunctionsContainer;\n"],
5
- "mappings": ";;;;;;;;;AAIA,OAAOA,WAAW;AAGlB,SAASC,sBAAsB;AAC/B,SAASC,aAAaC,sBAAsB;AAC5C,SAASC,iBAAiB;AAKnB,IAAMC,qBAAqB,CAAC,EAAEC,MAAK,MAAoB;;;AAC5D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,WACE,sBAAA,cAACC,UAAUC,SAAO;MAACC,YAAW;OAC5B,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;MACCC,OAAOR,EAAE,2BAA2B;QAAES,IAAIP;MAAkB,CAAA;MAC5DQ,aAAaV,EAAE,yBAAyB;QAAES,IAAIP;MAAkB,CAAA;OAEhE,sBAAA,cAACS,gBAAAA;MAAeZ;;;;;AAK1B;AAEA,IAAA,6BAAeD;",
6
- "names": ["React", "useTranslation", "ControlPage", "ControlSection", "StackItem", "FunctionsContainer", "space", "t", "useTranslation", "AUTOMATION_PLUGIN", "StackItem", "Content", "classNames", "ControlPage", "ControlSection", "title", "ns", "description", "FunctionsPanel"]
7
- }
@@ -1,80 +0,0 @@
1
- import {
2
- meta
3
- } from "./chunk-GW5U2DGT.mjs";
4
-
5
- // src/capabilities/app-graph-builder.ts
6
- import { Rx } from "@effect-rx/rx-react";
7
- import { Option, pipe } from "effect";
8
- import { Capabilities, contributes } from "@dxos/app-framework";
9
- import { Obj } from "@dxos/echo";
10
- import { ScriptType } from "@dxos/functions";
11
- import { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
12
- import { createExtension } from "@dxos/plugin-graph";
13
- import { SPACE_PLUGIN } from "@dxos/plugin-space";
14
- var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, [
15
- createExtension({
16
- id: `${meta.id}/space-settings-automation`,
17
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.type === `${SPACE_PLUGIN}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => [
18
- {
19
- id: `automation-${node2.id}`,
20
- type: `${meta.id}/space-settings-automation`,
21
- data: `${meta.id}/space-settings-automation`,
22
- properties: {
23
- label: [
24
- "automation panel label",
25
- {
26
- ns: meta.id
27
- }
28
- ],
29
- icon: "ph--lightning--regular"
30
- }
31
- }
32
- ]), Option.getOrElse(() => [])))
33
- }),
34
- createExtension({
35
- id: `${meta.id}/space-settings-functions`,
36
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.type === `${SPACE_PLUGIN}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => [
37
- {
38
- id: `functions-${node2.id}`,
39
- type: `${meta.id}/space-settings-functions`,
40
- data: `${meta.id}/space-settings-functions`,
41
- properties: {
42
- label: [
43
- "functions panel label",
44
- {
45
- ns: meta.id
46
- }
47
- ],
48
- icon: "ph--function--regular"
49
- }
50
- }
51
- ]), Option.getOrElse(() => [])))
52
- }),
53
- createExtension({
54
- id: `${meta.id}/script-companion`,
55
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(ScriptType, node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
56
- {
57
- id: [
58
- node2.id,
59
- "automation"
60
- ].join(ATTENDABLE_PATH_SEPARATOR),
61
- type: PLANK_COMPANION_TYPE,
62
- data: "automation",
63
- properties: {
64
- label: [
65
- "script automation label",
66
- {
67
- ns: meta.id
68
- }
69
- ],
70
- icon: "ph--lightning--regular",
71
- disposition: "hidden"
72
- }
73
- }
74
- ]), Option.getOrElse(() => [])))
75
- })
76
- ]);
77
- export {
78
- app_graph_builder_default as default
79
- };
80
- //# sourceMappingURL=app-graph-builder-ZTAUTFI4.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 { Option, pipe } from 'effect';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { ScriptType } from '@dxos/functions';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { createExtension } from '@dxos/plugin-graph';\nimport { SPACE_PLUGIN } 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 pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/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 pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/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 pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(ScriptType, 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,SAASC,QAAQC,YAAY;AAE7B,SAASC,cAAcC,mBAAuC;AAC9D,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,sBAAsBC,iCAAiC;AAChE,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAI7B,IAAA,4BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,cAAcG,MAAKH,EAAE;QACzBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAA0B;cAAEC,IAAIjB,KAAKD;YAAG;;UAChDmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,aAAaG,MAAKH,EAAE;QACxBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAAyB;cAAEC,IAAIjB,KAAKD;YAAG;;UAC/CmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUkB,IAAIC,WAAWC,YAAYpB,MAAKY,IAAI,IAAIP,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACjGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAcwB,KAAKC,yBAAAA;QACjCf,MAAMgB;QACNX,MAAM;QACNC,YAAY;UACVC,OAAO;YAAC;YAA2B;cAAEC,IAAIjB,KAAKD;YAAG;;UACjDmB,MAAM;UACNQ,aAAa;QACf;MACF;KACD,GACDnB,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;CACD;",
6
- "names": ["Rx", "Option", "pipe", "Capabilities", "contributes", "Obj", "ScriptType", "PLANK_COMPANION_TYPE", "ATTENDABLE_PATH_SEPARATOR", "createExtension", "SPACE_PLUGIN", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "connector", "node", "Rx", "make", "get", "pipe", "Option", "flatMap", "type", "SPACE_PLUGIN", "some", "none", "map", "data", "properties", "label", "ns", "icon", "getOrElse", "Obj", "instanceOf", "ScriptType", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "disposition"]
7
- }
@@ -1,14 +0,0 @@
1
- // src/components/index.ts
2
- import { lazy } from "react";
3
- var AutomationContainer = lazy(() => import("./AutomationContainer-VZNV2ZQF.mjs"));
4
- var AutomationPanel = lazy(() => import("./AutomationPanel-ZWA6GOFY.mjs"));
5
- var FunctionsContainer = lazy(() => import("./FunctionsContainer-IOB333TX.mjs"));
6
- var FunctionsPanel = lazy(() => import("./FunctionsPanel-56ZKRVM5.mjs"));
7
-
8
- export {
9
- AutomationContainer,
10
- AutomationPanel,
11
- FunctionsContainer,
12
- FunctionsPanel
13
- };
14
- //# sourceMappingURL=chunk-ECSTS2UI.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './TriggerEditor';\n\nexport const AutomationContainer = lazy(() => import('./AutomationContainer'));\nexport const AutomationPanel = lazy(() => import('./AutomationPanel'));\nexport const FunctionsContainer = lazy(() => import('./FunctionsContainer'));\nexport const FunctionsPanel = lazy(() => import('./FunctionsPanel'));\n"],
5
- "mappings": ";AAIA,SAASA,YAAY;AAId,IAAMC,sBAAsBC,KAAK,MAAM,OAAO,oCAAA,CAAA;AAC9C,IAAMC,kBAAkBD,KAAK,MAAM,OAAO,gCAAA,CAAA;AAC1C,IAAME,qBAAqBF,KAAK,MAAM,OAAO,mCAAA,CAAA;AAC7C,IAAMG,iBAAiBH,KAAK,MAAM,OAAO,+BAAA,CAAA;",
6
- "names": ["lazy", "AutomationContainer", "lazy", "AutomationPanel", "FunctionsContainer", "FunctionsPanel"]
7
- }
@@ -1,147 +0,0 @@
1
- import {
2
- TriggerEditor
3
- } from "./chunk-FSJZXTS2.mjs";
4
- import {
5
- AUTOMATION_PLUGIN
6
- } from "./chunk-GW5U2DGT.mjs";
7
-
8
- // src/components/AutomationPanel/AutomationPanel.tsx
9
- import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
10
- import { Schema } from "effect";
11
- import React, { useState } from "react";
12
- import { Filter, Obj } from "@dxos/echo";
13
- import { FunctionType, FunctionTrigger, FunctionTriggerSchema, ScriptType, TriggerKind } from "@dxos/functions";
14
- import { useClient } from "@dxos/react-client";
15
- import { useQuery, getSpace } from "@dxos/react-client/echo";
16
- import { Clipboard, IconButton, Input, Separator, useTranslation } from "@dxos/react-ui";
17
- import { ControlItem, controlItemClasses } from "@dxos/react-ui-form";
18
- import { List } from "@dxos/react-ui-list";
19
- import { ghostHover, mx } from "@dxos/react-ui-theme";
20
- var grid = "grid grid-cols-[40px_1fr_32px] min-bs-[2.5rem]";
21
- var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
22
- var _effect = _useSignals();
23
- try {
24
- const { t } = useTranslation(AUTOMATION_PLUGIN);
25
- const client = useClient();
26
- const triggers = useQuery(space, Filter.type(FunctionTrigger));
27
- const functions = useQuery(space, Filter.type(FunctionType));
28
- const scripts = useQuery(space, Filter.type(ScriptType));
29
- const [trigger, setTrigger] = useState(initialTrigger);
30
- const [selected, setSelected] = useState();
31
- const handleSelect = (trigger2) => {
32
- const { id: _, ...values } = trigger2;
33
- setTrigger(values);
34
- setSelected(trigger2);
35
- };
36
- const handleAdd = () => {
37
- setTrigger(Obj.make(FunctionTriggerSchema, {}));
38
- setSelected(void 0);
39
- };
40
- const handleDelete = (trigger2) => {
41
- space.db.remove(trigger2);
42
- setTrigger(void 0);
43
- setSelected(void 0);
44
- };
45
- const handleSave = (trigger2) => {
46
- if (selected) {
47
- Object.assign(selected, trigger2);
48
- } else {
49
- space.db.add(Obj.make(FunctionTrigger, trigger2));
50
- }
51
- setTrigger(void 0);
52
- setSelected(void 0);
53
- onDone?.();
54
- };
55
- const handleCancel = () => {
56
- setTrigger(void 0);
57
- onDone?.();
58
- };
59
- if (trigger) {
60
- return /* @__PURE__ */ React.createElement(ControlItem, {
61
- title: t("trigger editor title")
62
- }, /* @__PURE__ */ React.createElement(TriggerEditor, {
63
- space,
64
- trigger,
65
- onSave: handleSave,
66
- onCancel: handleCancel
67
- }));
68
- }
69
- return /* @__PURE__ */ React.createElement("div", {
70
- className: controlItemClasses
71
- }, triggers.length > 0 && /* @__PURE__ */ React.createElement(List.Root, {
72
- items: triggers,
73
- isItem: Schema.is(FunctionTrigger),
74
- getId: (field) => field.id
75
- }, ({ items: triggers2 }) => /* @__PURE__ */ React.createElement("div", {
76
- role: "list",
77
- className: "flex flex-col w-full"
78
- }, triggers2?.map((trigger2) => {
79
- const copyAction = getCopyAction(client, trigger2);
80
- return /* @__PURE__ */ React.createElement(List.Item, {
81
- key: trigger2.id,
82
- item: trigger2,
83
- classNames: mx(grid, ghostHover, "items-center", "px-2")
84
- }, /* @__PURE__ */ React.createElement(Input.Root, null, /* @__PURE__ */ React.createElement(Input.Switch, {
85
- checked: trigger2.enabled,
86
- onCheckedChange: (checked) => trigger2.enabled = checked
87
- })), /* @__PURE__ */ React.createElement("div", {
88
- className: "flex"
89
- }, /* @__PURE__ */ React.createElement(List.ItemTitle, {
90
- classNames: "px-1 cursor-pointer w-0 shrink truncate",
91
- onClick: () => handleSelect(trigger2)
92
- }, getFunctionName(scripts, functions, trigger2) ?? "\u2205"), copyAction && /* @__PURE__ */ React.createElement(Clipboard.IconButton, {
93
- label: t(copyAction.translationKey),
94
- value: copyAction.contentProvider()
95
- })), /* @__PURE__ */ React.createElement(List.ItemDeleteButton, {
96
- onClick: () => handleDelete(trigger2)
97
- }));
98
- }))), triggers.length > 0 && /* @__PURE__ */ React.createElement(Separator, {
99
- classNames: "mlb-4"
100
- }), /* @__PURE__ */ React.createElement(IconButton, {
101
- icon: "ph--plus--regular",
102
- label: t("new trigger label"),
103
- onClick: handleAdd
104
- }));
105
- } finally {
106
- _effect.f();
107
- }
108
- };
109
- var getCopyAction = (client, trigger) => {
110
- if (trigger?.spec?.kind === TriggerKind.Email) {
111
- return {
112
- translationKey: "trigger copy email",
113
- contentProvider: () => `${getSpace(trigger).id}@dxos.network`
114
- };
115
- }
116
- if (trigger?.spec?.kind === TriggerKind.Webhook) {
117
- return {
118
- translationKey: "trigger copy url",
119
- contentProvider: () => getWebhookUrl(client, trigger)
120
- };
121
- }
122
- return void 0;
123
- };
124
- var getWebhookUrl = (client, trigger) => {
125
- const spaceId = getSpace(trigger).id;
126
- const edgeUrl = new URL(client.config.values.runtime.services.edge.url);
127
- const isSecure = edgeUrl.protocol.startsWith("https") || edgeUrl.protocol.startsWith("wss");
128
- edgeUrl.protocol = isSecure ? "https" : "http";
129
- return new URL(`/webhook/${spaceId}:${trigger.id}`, edgeUrl).toString();
130
- };
131
- var getFunctionName = (scripts, functions, trigger) => {
132
- const shortId = trigger.function && `${trigger.function.dxn.toString().slice(0, 16)}\u2026`;
133
- const functionObject = functions.find((fn) => fn === trigger.function?.target);
134
- if (!functionObject) {
135
- return shortId;
136
- }
137
- return scripts.find((s) => functionObject.source?.target?.id === s.id)?.name ?? shortId;
138
- };
139
-
140
- // src/components/AutomationPanel/index.ts
141
- var AutomationPanel_default = AutomationPanel;
142
-
143
- export {
144
- AutomationPanel,
145
- AutomationPanel_default
146
- };
147
- //# sourceMappingURL=chunk-ERTIGJYE.mjs.map