@dxos/plugin-automation 0.8.4-main.8360d9e660 → 0.8.4-main.8baae0fced

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 (352) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/AutomationPanel-GQCS4EPU.mjs +11 -0
  4. package/dist/lib/neutral/AutomationPlugin.mjs +10 -0
  5. package/dist/lib/{browser/cli/index.mjs → neutral/AutomationPlugin.node.mjs} +126 -130
  6. package/dist/lib/neutral/AutomationPlugin.node.mjs.map +7 -0
  7. package/dist/lib/neutral/AutomationPlugin.workerd.mjs +23 -0
  8. package/dist/lib/neutral/AutomationPlugin.workerd.mjs.map +7 -0
  9. package/dist/lib/neutral/AutomationSettings-F6AZQV74.mjs +31 -0
  10. package/dist/lib/neutral/AutomationSettings-F6AZQV74.mjs.map +7 -0
  11. package/dist/lib/neutral/FunctionsContainer-2ETGQQR2.mjs +38 -0
  12. package/dist/lib/neutral/FunctionsContainer-2ETGQQR2.mjs.map +7 -0
  13. package/dist/lib/{browser/chunk-75XLBFAG.mjs → neutral/FunctionsPanel-SVRKRUXZ.mjs} +22 -22
  14. package/dist/lib/neutral/FunctionsPanel-SVRKRUXZ.mjs.map +7 -0
  15. package/dist/lib/{browser/chunk-FUVAC5EC.mjs → neutral/FunctionsRegistry-7ITCFJCW.mjs} +24 -25
  16. package/dist/lib/neutral/FunctionsRegistry-7ITCFJCW.mjs.map +7 -0
  17. package/dist/lib/neutral/TriggerSettings-XCHIZPOR.mjs +9 -0
  18. package/dist/lib/neutral/app-graph-builder-4QOUKY5L.mjs +75 -0
  19. package/dist/lib/neutral/app-graph-builder-4QOUKY5L.mjs.map +7 -0
  20. package/dist/lib/neutral/capabilities/index.mjs +15 -0
  21. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  22. package/dist/lib/neutral/capabilities/node.mjs +13 -0
  23. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  24. package/dist/lib/neutral/chunk-2JP77CMN.mjs +42 -0
  25. package/dist/lib/neutral/chunk-2JP77CMN.mjs.map +7 -0
  26. package/dist/lib/{browser/chunk-EL64ZPPN.mjs → neutral/chunk-4ETZEEYR.mjs} +7 -3
  27. package/dist/lib/neutral/chunk-4ETZEEYR.mjs.map +7 -0
  28. package/dist/lib/{browser/chunk-O23LHDEX.mjs → neutral/chunk-EIIPEUUP.mjs} +60 -26
  29. package/dist/lib/neutral/chunk-EIIPEUUP.mjs.map +7 -0
  30. package/dist/lib/neutral/chunk-HRUXURVS.mjs +12 -0
  31. package/dist/lib/neutral/chunk-HRUXURVS.mjs.map +7 -0
  32. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  33. package/dist/lib/{browser/chunk-BWEKRPFJ.mjs → neutral/chunk-K3C5ZTZA.mjs} +29 -38
  34. package/dist/lib/neutral/chunk-K3C5ZTZA.mjs.map +7 -0
  35. package/dist/lib/neutral/chunk-VCWVO3JE.mjs +8 -0
  36. package/dist/lib/neutral/chunk-VCWVO3JE.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-VRGWNUVV.mjs +36 -0
  38. package/dist/lib/neutral/chunk-VRGWNUVV.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-YA2ZTSOH.mjs +73 -0
  40. package/dist/lib/neutral/chunk-YA2ZTSOH.mjs.map +7 -0
  41. package/dist/lib/neutral/components/index.mjs +16 -0
  42. package/dist/lib/neutral/containers/index.mjs +13 -0
  43. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  44. package/dist/lib/neutral/create-trigger-from-template-XAJWHKO2.mjs +68 -0
  45. package/dist/lib/neutral/create-trigger-from-template-XAJWHKO2.mjs.map +7 -0
  46. package/dist/lib/neutral/hooks/index.mjs +47 -0
  47. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  48. package/dist/lib/neutral/index.mjs +16 -0
  49. package/dist/lib/neutral/layer-specs-XLG75KLY.mjs +161 -0
  50. package/dist/lib/neutral/layer-specs-XLG75KLY.mjs.map +7 -0
  51. package/dist/lib/neutral/meta.json +1 -0
  52. package/dist/lib/neutral/meta.mjs +8 -0
  53. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs +13 -0
  54. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs.map +7 -0
  55. package/dist/lib/neutral/operations/index.mjs +8 -0
  56. package/dist/lib/neutral/plugin.mjs +16 -0
  57. package/dist/lib/neutral/plugin.mjs.map +7 -0
  58. package/dist/lib/neutral/react-surface-3OGMAMKV.mjs +57 -0
  59. package/dist/lib/neutral/react-surface-3OGMAMKV.mjs.map +7 -0
  60. package/dist/lib/neutral/testing.mjs +8 -0
  61. package/dist/lib/neutral/translations.mjs +47 -0
  62. package/dist/lib/neutral/translations.mjs.map +7 -0
  63. package/dist/lib/neutral/types/index.mjs +12 -0
  64. package/dist/types/src/AutomationPlugin.d.ts +1 -0
  65. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  66. package/dist/types/src/{cli/plugin.d.ts → AutomationPlugin.node.d.ts} +2 -1
  67. package/dist/types/src/AutomationPlugin.node.d.ts.map +1 -0
  68. package/dist/types/src/AutomationPlugin.test.d.ts +2 -0
  69. package/dist/types/src/AutomationPlugin.test.d.ts.map +1 -0
  70. package/dist/types/src/AutomationPlugin.workerd.d.ts +4 -0
  71. package/dist/types/src/AutomationPlugin.workerd.d.ts.map +1 -0
  72. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  73. package/dist/types/src/capabilities/index.d.ts +6 -4
  74. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  75. package/dist/types/src/capabilities/layer-specs.d.ts +5 -0
  76. package/dist/types/src/capabilities/layer-specs.d.ts.map +1 -0
  77. package/dist/types/src/capabilities/node.d.ts +6 -0
  78. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  79. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  80. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  81. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  82. package/dist/types/src/commands/index.d.ts.map +1 -0
  83. package/dist/types/src/{cli/commands → commands}/trigger/create/index.d.ts +6 -6
  84. package/dist/types/src/commands/trigger/create/index.d.ts.map +1 -0
  85. package/dist/types/src/{cli/commands → commands}/trigger/create/queue.d.ts +1 -1
  86. package/dist/types/src/commands/trigger/create/queue.d.ts.map +1 -0
  87. package/dist/types/src/{cli/commands → commands}/trigger/create/subscription.d.ts +1 -1
  88. package/dist/types/src/commands/trigger/create/subscription.d.ts.map +1 -0
  89. package/dist/types/src/{cli/commands → commands}/trigger/create/timer.d.ts +1 -1
  90. package/dist/types/src/commands/trigger/create/timer.d.ts.map +1 -0
  91. package/dist/types/src/{cli/commands → commands}/trigger/index.d.ts +7 -7
  92. package/dist/types/src/commands/trigger/index.d.ts.map +1 -0
  93. package/dist/types/src/{cli/commands → commands}/trigger/list.d.ts +1 -1
  94. package/dist/types/src/commands/trigger/list.d.ts.map +1 -0
  95. package/dist/types/src/commands/trigger/options.d.ts.map +1 -0
  96. package/dist/types/src/{cli/commands → commands}/trigger/remove.d.ts +1 -1
  97. package/dist/types/src/commands/trigger/remove.d.ts.map +1 -0
  98. package/dist/types/src/{cli/commands → commands}/trigger/update/index.d.ts +5 -5
  99. package/dist/types/src/commands/trigger/update/index.d.ts.map +1 -0
  100. package/dist/types/src/commands/trigger/update/queue.d.ts.map +1 -0
  101. package/dist/types/src/commands/trigger/update/subscription.d.ts.map +1 -0
  102. package/dist/types/src/commands/trigger/update/timer.d.ts.map +1 -0
  103. package/dist/types/src/{cli/commands → commands}/trigger/util.d.ts +4 -4
  104. package/dist/types/src/commands/trigger/util.d.ts.map +1 -0
  105. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +1 -1
  106. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  107. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +32 -32
  108. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  109. package/dist/types/src/components/AutomationPanel/index.d.ts.map +1 -1
  110. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  111. package/dist/types/src/components/FunctionsPanel/index.d.ts.map +1 -1
  112. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -1
  113. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -1
  114. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +6 -6
  115. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  116. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +4 -4
  117. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  118. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +1 -1
  119. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  120. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +95 -93
  121. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  122. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +3 -1
  123. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -1
  124. package/dist/types/src/containers/AutomationSettings/index.d.ts +1 -2
  125. package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -1
  126. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts +2 -4
  127. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts.map +1 -1
  128. package/dist/types/src/containers/FunctionsContainer/index.d.ts +1 -2
  129. package/dist/types/src/containers/FunctionsContainer/index.d.ts.map +1 -1
  130. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts +3 -3
  131. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -1
  132. package/dist/types/src/hooks/index.d.ts +0 -1
  133. package/dist/types/src/hooks/index.d.ts.map +1 -1
  134. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +1 -1
  135. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
  136. package/dist/types/src/index.d.ts +0 -3
  137. package/dist/types/src/index.d.ts.map +1 -1
  138. package/dist/types/src/meta.d.ts.map +1 -1
  139. package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
  140. package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
  141. package/dist/types/src/operations/index.d.ts +3 -0
  142. package/dist/types/src/operations/index.d.ts.map +1 -0
  143. package/dist/types/src/plugin.d.ts +4 -0
  144. package/dist/types/src/plugin.d.ts.map +1 -0
  145. package/dist/types/src/testing/test-functions.d.ts +78 -76
  146. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  147. package/dist/types/src/testing.d.ts +2 -0
  148. package/dist/types/src/testing.d.ts.map +1 -0
  149. package/dist/types/src/translations.d.ts +32 -33
  150. package/dist/types/src/translations.d.ts.map +1 -1
  151. package/dist/types/src/types/AutomationOperation.d.ts +19 -0
  152. package/dist/types/src/types/AutomationOperation.d.ts.map +1 -0
  153. package/dist/types/src/types/index.d.ts +1 -2
  154. package/dist/types/src/types/index.d.ts.map +1 -1
  155. package/dist/types/src/types/schema.d.ts +7 -28
  156. package/dist/types/src/types/schema.d.ts.map +1 -1
  157. package/dist/types/tsconfig.tsbuildinfo +1 -1
  158. package/package.json +125 -68
  159. package/src/AutomationPlugin.node.ts +28 -0
  160. package/src/AutomationPlugin.test.ts +27 -0
  161. package/src/AutomationPlugin.tsx +12 -11
  162. package/src/AutomationPlugin.workerd.ts +18 -0
  163. package/src/capabilities/app-graph-builder.ts +66 -0
  164. package/src/capabilities/index.ts +10 -4
  165. package/src/capabilities/layer-specs.ts +231 -0
  166. package/src/capabilities/node.ts +13 -0
  167. package/src/capabilities/operation-handler.ts +16 -0
  168. package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +17 -15
  169. package/src/{cli/commands → commands}/trigger/create/queue.ts +7 -10
  170. package/src/{cli/commands → commands}/trigger/create/subscription.ts +8 -11
  171. package/src/{cli/commands → commands}/trigger/create/timer.ts +4 -7
  172. package/src/{cli/commands → commands}/trigger/list.ts +7 -4
  173. package/src/{cli/commands → commands}/trigger/remove.ts +2 -3
  174. package/src/{cli/commands → commands}/trigger/update/queue.ts +19 -20
  175. package/src/{cli/commands → commands}/trigger/update/subscription.ts +15 -15
  176. package/src/{cli/commands → commands}/trigger/update/timer.ts +16 -16
  177. package/src/{cli/commands → commands}/trigger/util.ts +25 -17
  178. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +12 -5
  179. package/src/components/AutomationPanel/AutomationPanel.tsx +89 -47
  180. package/src/components/FunctionsPanel/FunctionsPanel.tsx +33 -25
  181. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +32 -23
  182. package/src/components/TriggerEditor/FunctionInputEditor.tsx +4 -4
  183. package/src/components/TriggerEditor/SpecSelector.tsx +17 -13
  184. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +19 -13
  185. package/src/components/TriggerEditor/TriggerEditor.tsx +13 -17
  186. package/src/containers/AutomationSettings/AutomationSettings.tsx +11 -7
  187. package/src/containers/AutomationSettings/index.ts +1 -3
  188. package/src/containers/FunctionsContainer/FunctionsContainer.tsx +11 -11
  189. package/src/containers/FunctionsContainer/index.ts +1 -3
  190. package/src/containers/TriggerSettings/TriggerSettings.tsx +32 -10
  191. package/src/hooks/index.ts +1 -1
  192. package/src/hooks/useTriggerRuntimeControls.ts +13 -8
  193. package/src/index.ts +0 -4
  194. package/src/meta.ts +3 -1
  195. package/src/operations/create-trigger-from-template.ts +71 -0
  196. package/src/operations/index.ts +7 -0
  197. package/src/plugin.ts +11 -0
  198. package/src/testing/test-functions.ts +6 -3
  199. package/src/testing.ts +7 -0
  200. package/src/translations.ts +38 -39
  201. package/src/types/AutomationOperation.ts +30 -0
  202. package/src/types/index.ts +2 -2
  203. package/src/types/schema.ts +2 -23
  204. package/dist/lib/browser/AutomationPanel-IGLIQY2N.mjs +0 -11
  205. package/dist/lib/browser/AutomationSettings-XGJGVBDD.mjs +0 -37
  206. package/dist/lib/browser/AutomationSettings-XGJGVBDD.mjs.map +0 -7
  207. package/dist/lib/browser/FunctionsContainer-R4ZMYSFJ.mjs +0 -43
  208. package/dist/lib/browser/FunctionsContainer-R4ZMYSFJ.mjs.map +0 -7
  209. package/dist/lib/browser/FunctionsPanel-NMA4RYJL.mjs +0 -10
  210. package/dist/lib/browser/FunctionsRegistry-TMKAEG5E.mjs +0 -10
  211. package/dist/lib/browser/TriggerSettings-GW5OEM2G.mjs +0 -11
  212. package/dist/lib/browser/app-graph-builder-74ILZP25.mjs +0 -83
  213. package/dist/lib/browser/app-graph-builder-74ILZP25.mjs.map +0 -7
  214. package/dist/lib/browser/chunk-5WMYSXEH.mjs +0 -83
  215. package/dist/lib/browser/chunk-5WMYSXEH.mjs.map +0 -7
  216. package/dist/lib/browser/chunk-75XLBFAG.mjs.map +0 -7
  217. package/dist/lib/browser/chunk-BWEKRPFJ.mjs.map +0 -7
  218. package/dist/lib/browser/chunk-EL64ZPPN.mjs.map +0 -7
  219. package/dist/lib/browser/chunk-FUVAC5EC.mjs.map +0 -7
  220. package/dist/lib/browser/chunk-LHJEQVX5.mjs +0 -8
  221. package/dist/lib/browser/chunk-LHJEQVX5.mjs.map +0 -7
  222. package/dist/lib/browser/chunk-O23LHDEX.mjs.map +0 -7
  223. package/dist/lib/browser/chunk-PUYY7B5F.mjs +0 -31
  224. package/dist/lib/browser/chunk-PUYY7B5F.mjs.map +0 -7
  225. package/dist/lib/browser/chunk-ZBEMNWNY.mjs +0 -93
  226. package/dist/lib/browser/chunk-ZBEMNWNY.mjs.map +0 -7
  227. package/dist/lib/browser/cli/index.mjs.map +0 -7
  228. package/dist/lib/browser/compute-runtime-I3I2BIRE.mjs +0 -130
  229. package/dist/lib/browser/compute-runtime-I3I2BIRE.mjs.map +0 -7
  230. package/dist/lib/browser/hooks/index.mjs +0 -13
  231. package/dist/lib/browser/index.mjs +0 -123
  232. package/dist/lib/browser/index.mjs.map +0 -7
  233. package/dist/lib/browser/meta.json +0 -1
  234. package/dist/lib/browser/operation-resolver-NGN4BEWN.mjs +0 -84
  235. package/dist/lib/browser/operation-resolver-NGN4BEWN.mjs.map +0 -7
  236. package/dist/lib/browser/react-surface-SXDIM3RM.mjs +0 -65
  237. package/dist/lib/browser/react-surface-SXDIM3RM.mjs.map +0 -7
  238. package/dist/lib/browser/types/index.mjs +0 -14
  239. package/dist/lib/node-esm/AutomationPanel-O2BCQA7P.mjs +0 -12
  240. package/dist/lib/node-esm/AutomationSettings-W52ZO2XI.mjs +0 -38
  241. package/dist/lib/node-esm/AutomationSettings-W52ZO2XI.mjs.map +0 -7
  242. package/dist/lib/node-esm/FunctionsContainer-GYRPQZM7.mjs +0 -44
  243. package/dist/lib/node-esm/FunctionsContainer-GYRPQZM7.mjs.map +0 -7
  244. package/dist/lib/node-esm/FunctionsPanel-DCXXLSVP.mjs +0 -11
  245. package/dist/lib/node-esm/FunctionsRegistry-7WCHC64E.mjs +0 -11
  246. package/dist/lib/node-esm/FunctionsRegistry-7WCHC64E.mjs.map +0 -7
  247. package/dist/lib/node-esm/TriggerSettings-2GKFPECW.mjs +0 -12
  248. package/dist/lib/node-esm/TriggerSettings-2GKFPECW.mjs.map +0 -7
  249. package/dist/lib/node-esm/app-graph-builder-VDXPOWCH.mjs +0 -84
  250. package/dist/lib/node-esm/app-graph-builder-VDXPOWCH.mjs.map +0 -7
  251. package/dist/lib/node-esm/chunk-6JVB3IHW.mjs +0 -97
  252. package/dist/lib/node-esm/chunk-6JVB3IHW.mjs.map +0 -7
  253. package/dist/lib/node-esm/chunk-BNWZ2NNI.mjs +0 -32
  254. package/dist/lib/node-esm/chunk-BNWZ2NNI.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-FPXVLTEY.mjs +0 -270
  256. package/dist/lib/node-esm/chunk-FPXVLTEY.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-K7T2MVB7.mjs +0 -98
  258. package/dist/lib/node-esm/chunk-K7T2MVB7.mjs.map +0 -7
  259. package/dist/lib/node-esm/chunk-Q5JSKD6Z.mjs +0 -295
  260. package/dist/lib/node-esm/chunk-Q5JSKD6Z.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-V3VUE2NR.mjs +0 -10
  262. package/dist/lib/node-esm/chunk-V3VUE2NR.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-WC5AT7B3.mjs +0 -19
  264. package/dist/lib/node-esm/chunk-WC5AT7B3.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-XCFO2IXT.mjs +0 -84
  266. package/dist/lib/node-esm/chunk-XCFO2IXT.mjs.map +0 -7
  267. package/dist/lib/node-esm/chunk-XQO3HK62.mjs +0 -94
  268. package/dist/lib/node-esm/chunk-XQO3HK62.mjs.map +0 -7
  269. package/dist/lib/node-esm/cli/index.mjs +0 -1116
  270. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  271. package/dist/lib/node-esm/compute-runtime-7HCSIYFG.mjs +0 -131
  272. package/dist/lib/node-esm/compute-runtime-7HCSIYFG.mjs.map +0 -7
  273. package/dist/lib/node-esm/hooks/index.mjs +0 -14
  274. package/dist/lib/node-esm/index.mjs +0 -124
  275. package/dist/lib/node-esm/index.mjs.map +0 -7
  276. package/dist/lib/node-esm/meta.json +0 -1
  277. package/dist/lib/node-esm/operation-resolver-ANGACQZG.mjs +0 -85
  278. package/dist/lib/node-esm/operation-resolver-ANGACQZG.mjs.map +0 -7
  279. package/dist/lib/node-esm/react-surface-QVLVDEVW.mjs +0 -66
  280. package/dist/lib/node-esm/react-surface-QVLVDEVW.mjs.map +0 -7
  281. package/dist/lib/node-esm/types/index.mjs +0 -15
  282. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  283. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  284. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  285. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts +0 -6
  286. package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts.map +0 -1
  287. package/dist/types/src/capabilities/compute-runtime/index.d.ts +0 -3
  288. package/dist/types/src/capabilities/compute-runtime/index.d.ts.map +0 -1
  289. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  290. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  291. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  292. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  293. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  294. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  295. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  296. package/dist/types/src/cli/commands/index.d.ts.map +0 -1
  297. package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +0 -1
  298. package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +0 -1
  299. package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +0 -1
  300. package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +0 -1
  301. package/dist/types/src/cli/commands/trigger/index.d.ts.map +0 -1
  302. package/dist/types/src/cli/commands/trigger/list.d.ts.map +0 -1
  303. package/dist/types/src/cli/commands/trigger/options.d.ts.map +0 -1
  304. package/dist/types/src/cli/commands/trigger/remove.d.ts.map +0 -1
  305. package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +0 -1
  306. package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +0 -1
  307. package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +0 -1
  308. package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +0 -1
  309. package/dist/types/src/cli/commands/trigger/util.d.ts.map +0 -1
  310. package/dist/types/src/cli/index.d.ts +0 -2
  311. package/dist/types/src/cli/index.d.ts.map +0 -1
  312. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  313. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +0 -12
  314. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +0 -1
  315. package/dist/types/src/types/capabilities.d.ts +0 -23
  316. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  317. package/dist/types/src/types/events.d.ts +0 -5
  318. package/dist/types/src/types/events.d.ts.map +0 -1
  319. package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -73
  320. package/src/capabilities/app-graph-builder/index.ts +0 -7
  321. package/src/capabilities/compute-runtime/compute-runtime.ts +0 -155
  322. package/src/capabilities/compute-runtime/index.ts +0 -7
  323. package/src/capabilities/operation-resolver/index.ts +0 -7
  324. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -80
  325. package/src/capabilities/react-surface/index.ts +0 -7
  326. package/src/cli/index.ts +0 -5
  327. package/src/cli/plugin.ts +0 -24
  328. package/src/hooks/useComputeRuntimeCallback.ts +0 -67
  329. package/src/types/capabilities.ts +0 -45
  330. package/src/types/events.ts +0 -11
  331. /package/dist/lib/{browser/AutomationPanel-IGLIQY2N.mjs.map → neutral/AutomationPanel-GQCS4EPU.mjs.map} +0 -0
  332. /package/dist/lib/{browser/FunctionsPanel-NMA4RYJL.mjs.map → neutral/AutomationPlugin.mjs.map} +0 -0
  333. /package/dist/lib/{browser/FunctionsRegistry-TMKAEG5E.mjs.map → neutral/TriggerSettings-XCHIZPOR.mjs.map} +0 -0
  334. /package/dist/lib/{browser/TriggerSettings-GW5OEM2G.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  335. /package/dist/lib/{browser/hooks → neutral/components}/index.mjs.map +0 -0
  336. /package/dist/lib/{browser/types → neutral}/index.mjs.map +0 -0
  337. /package/dist/lib/{node-esm/AutomationPanel-O2BCQA7P.mjs.map → neutral/meta.mjs.map} +0 -0
  338. /package/dist/lib/{node-esm/hooks → neutral/operations}/index.mjs.map +0 -0
  339. /package/dist/lib/{node-esm/FunctionsPanel-DCXXLSVP.mjs.map → neutral/testing.mjs.map} +0 -0
  340. /package/dist/lib/{node-esm → neutral}/types/index.mjs.map +0 -0
  341. /package/dist/types/src/capabilities/{app-graph-builder/app-graph-builder.d.ts → app-graph-builder.d.ts} +0 -0
  342. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
  343. /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
  344. /package/dist/types/src/{cli/commands → commands}/trigger/options.d.ts +0 -0
  345. /package/dist/types/src/{cli/commands → commands}/trigger/update/queue.d.ts +0 -0
  346. /package/dist/types/src/{cli/commands → commands}/trigger/update/subscription.d.ts +0 -0
  347. /package/dist/types/src/{cli/commands → commands}/trigger/update/timer.d.ts +0 -0
  348. /package/src/{cli/commands → commands}/index.ts +0 -0
  349. /package/src/{cli/commands → commands}/trigger/create/index.ts +0 -0
  350. /package/src/{cli/commands → commands}/trigger/index.ts +0 -0
  351. /package/src/{cli/commands → commands}/trigger/options.ts +0 -0
  352. /package/src/{cli/commands → commands}/trigger/update/index.ts +0 -0
@@ -1,58 +1,60 @@
1
- import {
2
- meta
3
- } from "./chunk-EL64ZPPN.mjs";
1
+ import "./chunk-J5LGTIGS.mjs";
4
2
 
5
3
  // src/components/FunctionsRegistry/FunctionsRegistry.tsx
6
4
  import * as Schema from "effect/Schema";
7
5
  import { useState } from "react";
8
6
  import React, { useCallback } from "react";
9
- import { Function } from "@dxos/functions";
7
+ import * as OperationModule from "@dxos/compute";
8
+ import { Context } from "@dxos/context";
9
+ import { Filter, Obj } from "@dxos/echo";
10
10
  import { getDeployedFunctions } from "@dxos/functions-runtime/edge";
11
11
  import { useClient } from "@dxos/react-client";
12
- import { Filter, Query, useQuery } from "@dxos/react-client/echo";
12
+ import { useQuery } from "@dxos/react-client/echo";
13
13
  import { IconButton, useAsyncEffect, useTranslation } from "@dxos/react-ui";
14
14
  import { Settings } from "@dxos/react-ui-form";
15
15
  import { List } from "@dxos/react-ui-list";
16
16
  import { ghostHover, mx } from "@dxos/ui-theme";
17
+ import { meta } from "#meta";
18
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/components/FunctionsRegistry/FunctionsRegistry.tsx";
17
19
  var grid = "grid grid-cols-[1fr_1fr_auto] min-h-[2.5rem]";
18
20
  var FunctionsRegistry = ({ space }) => {
19
21
  const client = useClient();
20
22
  const [loading, setLoading] = useState(true);
21
23
  const [functions, setFunctions] = useState([]);
22
24
  const { t } = useTranslation(meta.id);
23
- const dbFunctions = useQuery(space.db, Filter.type(Function.Function));
25
+ const dbFunctions = useQuery(space.db, Filter.type(OperationModule.Operation.PersistentOperation));
24
26
  const state = (func) => {
25
- const dbFunction = dbFunctions.find((f) => f.key === func.key);
27
+ const funcKey = Obj.getMeta(func).key;
28
+ const dbFunction = dbFunctions.find((f) => Obj.getMeta(f).key === funcKey);
26
29
  if (!dbFunction) {
27
30
  return "import";
28
31
  }
29
- if (dbFunction.version === func.version && dbFunction.updated === func.updated) {
32
+ if (Obj.getMeta(dbFunction).version === Obj.getMeta(func).version && dbFunction.updated === func.updated) {
30
33
  return "none";
31
34
  }
32
35
  return "update";
33
36
  };
34
37
  useAsyncEffect(async () => {
35
38
  setLoading(true);
36
- const functions2 = await getDeployedFunctions(client, true);
39
+ const functions2 = await getDeployedFunctions(Context.default(void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 38 }), client, true);
37
40
  setFunctions(functions2);
38
41
  setLoading(false);
39
42
  }, []);
40
43
  const hanleImportOrUpdate = useCallback(async (func) => {
41
- const functions2 = await space.db.query(Query.type(Function.Function, {
42
- key: func.key
43
- })).run();
44
+ const funcKey = Obj.getMeta(func).key;
45
+ const functions2 = funcKey ? await space.db.query(Filter.and(Filter.type(OperationModule.Operation.PersistentOperation), Filter.key(funcKey))).run() : [];
44
46
  const [existingFunc] = functions2;
45
47
  if (!existingFunc) {
46
48
  space.db.add(func);
47
49
  return;
48
50
  }
49
- Function.setFrom(existingFunc, func);
51
+ OperationModule.Operation.setFrom(existingFunc, func);
50
52
  }, [
51
53
  space
52
54
  ]);
53
- return /* @__PURE__ */ React.createElement(Settings.Container, null, functions.length > 0 && /* @__PURE__ */ React.createElement(List.Root, {
55
+ return /* @__PURE__ */ React.createElement(Settings.Panel, null, functions.length > 0 && /* @__PURE__ */ React.createElement(List.Root, {
54
56
  items: functions,
55
- isItem: Schema.is(Function.Function),
57
+ isItem: Schema.is(OperationModule.Operation.PersistentOperation),
56
58
  getId: (func) => func.id
57
59
  }, ({ items }) => /* @__PURE__ */ React.createElement("div", {
58
60
  role: "list",
@@ -67,30 +69,27 @@ var FunctionsRegistry = ({ space }) => {
67
69
  classNames: "truncate"
68
70
  }, func.name), /* @__PURE__ */ React.createElement("div", {
69
71
  className: "text-xs text-description truncate"
70
- }, func.key)), /* @__PURE__ */ React.createElement("div", {
72
+ }, Obj.getMeta(func).key)), /* @__PURE__ */ React.createElement("div", {
71
73
  className: "flex flex-col truncate"
72
74
  }, /* @__PURE__ */ React.createElement("div", {
73
75
  className: "text-xs text-description truncate"
74
- }, func.version), /* @__PURE__ */ React.createElement("div", {
76
+ }, Obj.getMeta(func).version), /* @__PURE__ */ React.createElement("div", {
75
77
  className: "text-xs text-description truncate"
76
78
  }, func.updated ? `Uploaded ${new Date(func.updated).toLocaleString()}` : "")), /* @__PURE__ */ React.createElement(IconButton, {
77
79
  iconOnly: true,
78
80
  icon: state(func) === "update" ? "ph--arrows-clockwise--regular" : "ph--download--regular",
79
- label: state(func) === "update" ? t("update function button label") : t("import function button label"),
81
+ label: state(func) === "update" ? t("update-function-button.label") : t("import-function-button.label"),
80
82
  disabled: state(func) === "none",
81
83
  onClick: () => hanleImportOrUpdate(func)
82
- }))))), functions.length === 0 && !loading && /* @__PURE__ */ React.createElement("div", {
84
+ }))))), loading && /* @__PURE__ */ React.createElement("div", {
83
85
  className: "text-center py-4 text-gray-500"
84
- }, t("no functions found")), loading && /* @__PURE__ */ React.createElement("div", {
85
- className: "text-center py-4 text-gray-500"
86
- }, t("loading functions")));
86
+ }, t("loading-functions.message")));
87
87
  };
88
88
 
89
89
  // src/components/FunctionsRegistry/index.ts
90
90
  var FunctionsRegistry_default = FunctionsRegistry;
91
-
92
91
  export {
93
92
  FunctionsRegistry,
94
- FunctionsRegistry_default
93
+ FunctionsRegistry_default as default
95
94
  };
96
- //# sourceMappingURL=chunk-FUVAC5EC.mjs.map
95
+ //# sourceMappingURL=FunctionsRegistry-7ITCFJCW.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/FunctionsRegistry/FunctionsRegistry.tsx", "../../../src/components/FunctionsRegistry/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\nimport { useState } from 'react';\nimport React, { useCallback } from 'react';\n\nimport * as OperationModule from '@dxos/compute';\nimport { Context } from '@dxos/context';\nimport { Filter, Obj } from '@dxos/echo';\nimport { getDeployedFunctions } from '@dxos/functions-runtime/edge';\nimport { useClient } from '@dxos/react-client';\nimport { type Space, useQuery } from '@dxos/react-client/echo';\nimport { IconButton, useAsyncEffect, useTranslation } from '@dxos/react-ui';\nimport { Settings } from '@dxos/react-ui-form';\nimport { List } from '@dxos/react-ui-list';\nimport { ghostHover, mx } from '@dxos/ui-theme';\n\nimport { meta } from '#meta';\n\nconst grid = 'grid grid-cols-[1fr_1fr_auto] min-h-[2.5rem]';\n\ntype FunctionsRegistryProps = {\n space: Space;\n};\n\nexport const FunctionsRegistry = ({ space }: FunctionsRegistryProps) => {\n const client = useClient();\n const [loading, setLoading] = useState(true);\n const [functions, setFunctions] = useState<OperationModule.Operation.PersistentOperation[]>([]);\n const { t } = useTranslation(meta.id);\n\n const dbFunctions = useQuery(space.db, Filter.type(OperationModule.Operation.PersistentOperation));\n\n const state = (func: OperationModule.Operation.PersistentOperation) => {\n const funcKey = Obj.getMeta(func).key;\n const dbFunction = dbFunctions.find((f) => Obj.getMeta(f).key === funcKey);\n if (!dbFunction) {\n return 'import';\n }\n if (Obj.getMeta(dbFunction).version === Obj.getMeta(func).version && dbFunction.updated === func.updated) {\n return 'none';\n }\n return 'update';\n };\n\n useAsyncEffect(async () => {\n setLoading(true);\n const functions = await getDeployedFunctions(Context.default(), client, true);\n setFunctions(functions);\n setLoading(false);\n }, []);\n\n const hanleImportOrUpdate = useCallback(\n async (func: OperationModule.Operation.PersistentOperation) => {\n const funcKey = Obj.getMeta(func).key;\n const functions = funcKey\n ? await space.db\n .query(Filter.and(Filter.type(OperationModule.Operation.PersistentOperation), Filter.key(funcKey)))\n .run()\n : [];\n const [existingFunc] = functions;\n if (!existingFunc) {\n space.db.add(func);\n return;\n }\n OperationModule.Operation.setFrom(existingFunc, func);\n },\n [space],\n );\n\n return (\n <Settings.Panel>\n {functions.length > 0 && (\n <List.Root<OperationModule.Operation.PersistentOperation>\n items={functions}\n isItem={Schema.is(OperationModule.Operation.PersistentOperation)}\n getId={(func) => func.id}\n >\n {({ items }) => (\n <div role='list' className='flex flex-col w-full'>\n {items?.map((func) => (\n <List.Item<OperationModule.Operation.PersistentOperation>\n key={func.id}\n item={func}\n classNames={mx(grid, ghostHover, 'items-center', 'px-2', 'min-h-[3rem]')}\n >\n <div className='flex flex-col truncate'>\n <List.ItemTitle classNames='truncate'>{func.name}</List.ItemTitle>\n <div className='text-xs text-description truncate'>{Obj.getMeta(func).key}</div>\n </div>\n <div className='flex flex-col truncate'>\n <div className='text-xs text-description truncate'>{Obj.getMeta(func).version}</div>\n <div className='text-xs text-description truncate'>\n {func.updated ? `Uploaded ${new Date(func.updated).toLocaleString()}` : ''}\n </div>\n </div>\n\n <IconButton\n iconOnly\n icon={state(func) === 'update' ? 'ph--arrows-clockwise--regular' : 'ph--download--regular'}\n label={\n state(func) === 'update' ? t('update-function-button.label') : t('import-function-button.label')\n }\n disabled={state(func) === 'none'}\n onClick={() => hanleImportOrUpdate(func)}\n />\n </List.Item>\n ))}\n </div>\n )}\n </List.Root>\n )}\n\n {loading && <div className='text-center py-4 text-gray-500'>{t('loading-functions.message')}</div>}\n </Settings.Panel>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { FunctionsRegistry } from './FunctionsRegistry';\n\nexport { FunctionsRegistry };\nexport default FunctionsRegistry;\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AACxB,SAASC,gBAAgB;AACzB,OAAOC,SAASC,mBAAmB;AAEnC,YAAYC,qBAAqB;AACjC,SAASC,eAAe;AACxB,SAASC,QAAQC,WAAW;AAC5B,SAASC,4BAA4B;AACrC,SAASC,iBAAiB;AAC1B,SAAqBC,gBAAgB;AACrC,SAASC,YAAYC,gBAAgBC,sBAAsB;AAC3D,SAASC,gBAAgB;AACzB,SAASC,YAAY;AACrB,SAASC,YAAYC,UAAU;AAE/B,SAASC,YAAY;AAErB,IAAA,eAAa;IAOX,OAAMC;AACN,IAAOC,oBAAoB,CAAGnB,EAAAA,MAAAA,MAAS;AACvC,QAAM,SAACoB,UAAWC;AAClB,QAAM,CAAA,SAAQT,UAAAA,IAAeK,SAAO,IAAA;AAEpC,QAAMK,CAAAA,WAAAA,YAAuBC,IAAAA,SAAUlB,CAAAA,CAAAA;AAEvC,QAAMmB,EAAAA,EAAAA,IAAQ,eAACC,KAAAA,EAAAA;QACb,cAAgBnB,SAAIoB,MAAQD,IAAME,OAAG,KAAA,0BAAA,mBAAA,CAAA;QACrC,QAAMC,CAAAA,SAAAA;AACN,UAAKA,UAAAA,IAAY,QAAA,IAAA,EAAA;UACf,aAAO,YAAA,KAAA,CAAA,MAAA,IAAA,QAAA,CAAA,EAAA,QAAA,OAAA;AACT,QAAA,CAAA,YAAA;AACItB,aAAIoB;;AAER,QAAA,IAAA,QAAA,UAAA,EAAA,YAAA,IAAA,QAAA,IAAA,EAAA,WAAA,WAAA,YAAA,KAAA,SAAA;AACA,aAAO;IACT;AAEAf,WAAAA;;iBAEQS,YAAY;AAClBC,eAAAA,IAAaD;AACbS,UAAAA,aAAW,MAAA,qBAAA,QAAA,QAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,GAAA,CAAA,GAAA,QAAA,IAAA;AACV,iBAAET,UAAA;AAEL,eAAMU,KAAAA;MAEF,CAAA;QACA,sBAAkBC,YACRR,OACHS,SAAM3B;AAGb,UAAM,UAAC4B,IAAa,QAAGb,IAAAA,EAAAA;AACvB,UAAKa,aAAAA,UAAc,MAAA,MAAA,GAAA,MAAA,OAAA,IAAA,OAAA,KAAA,0BAAA,mBAAA,GAAA,OAAA,IAAA,OAAA,CAAA,CAAA,EAAA,IAAA,IAAA,CAAA;UACjBV,CAAAA,YAAaE,IAAAA;QACb,CAAA,cAAA;AACF,YAAA,GAAA,IAAA,IAAA;AACAtB;IAEF;AAACoB,IAAAA,0BAAAA,QAAAA,cAAAA,IAAAA;KAAM;IAGT;;SAKyB,sBAACpB,cAAgB+B,SAAUC,OAAAA,MAAAA,UAAmB,SAAA,KAAA,sBAAA,cAAA,KAAA,MAAA;IAC/DC,OAAO;IAEL,QAAS,UACT,0BAAA,mBAACC;WAAIC,CAAAA,SAAK,KAAA;cAAOC,MAAU,sBAAA,cAAA,OAAA;IACxBC,MAAOC;eAEChB;YACLiB,IAAMjB,CAAAA,SAAAA,sBAAAA,cAAAA,KAAAA,MAAAA;IACNkB,KAAAA,KAAAA;;IAEKJ,YAAU,GAAA,MAAA,YAAA,gBAAA,QAAA,cAAA;KACb,sBAAA,cAACzB,OAAK8B;IAAUD,WAAAA;KAAgC,sBAAA,cAChD,KAAA,WAACN;IAAIE,YAAU;KAAqCjC,KAAIoB,IAAAA,GAAiB,sBAAA,cAE3E,OAAA;IAAKa,WAAU;qBACb,EAAA,GAAA,CAAA,GAACF,sBAAAA,cAAAA,OAAAA;IAAIE,WAAU;KAAiDd,sBAAMoB,cAAO,OAAA;IACxEN,WAAU;KACZd,IAAAA,QAAY,IAAI,EAAA,OAAS,GAAgBqB,sBAAO,cAAEC,OAAkB;IAKvEC,WAAAA;UACAC,UAAYxB,YAAU,IAAA,KAAW,KAAA,OAAA,EAAA,eAAA,CAAA,KAAkC,EAAA,CAAA,GAAA,sBAAA,cAAA,YAAA;IACnEyB,UACE1B;IAEF2B,MAAAA,MAAU3B,IAAMC,MAAAA,WAAU,kCAAA;IAC1B2B,OAAAA,MAAetB,IAAAA,MAAAA,WAAoBL,EAAAA,8BAAAA,IAAAA,EAAAA,8BAAAA;cAShDN,MAAAA,IAAAA,MAAAA;IAAgBoB,SAAU,MAAA,oBAAA,IAAA;EAAoC,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,WAAA,sBAAA,cAAA,OAAA;IAGnE,WAAA;;;;;AC/GF,IAAA,4BAAec;",
6
+ "names": ["Schema", "useState", "React", "useCallback", "OperationModule", "Context", "Filter", "Obj", "getDeployedFunctions", "useClient", "useQuery", "IconButton", "useAsyncEffect", "useTranslation", "Settings", "List", "ghostHover", "mx", "meta", "client", "loading", "functions", "setFunctions", "dbFunctions", "space", "state", "func", "getMeta", "key", "dbFunction", "setLoading", "hanleImportOrUpdate", "funcKey", "query", "existingFunc", "Operation", "PersistentOperation", "getId", "div", "role", "className", "items", "map", "item", "classNames", "ItemTitle", "version", "updated", "toLocaleString", "iconOnly", "icon", "label", "disabled", "onClick", "FunctionsRegistry"]
7
+ }
@@ -0,0 +1,9 @@
1
+ import {
2
+ TriggersSettings
3
+ } from "./chunk-2JP77CMN.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+ export {
6
+ TriggersSettings,
7
+ TriggersSettings as default
8
+ };
9
+ //# sourceMappingURL=TriggerSettings-XCHIZPOR.mjs.map
@@ -0,0 +1,75 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/app-graph-builder.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capability } from "@dxos/app-framework";
6
+ import { AppCapabilities, AppNode } from "@dxos/app-toolkit";
7
+ import { Script } from "@dxos/compute";
8
+ import { GraphBuilder, NodeMatcher } from "@dxos/plugin-graph";
9
+ import { SETTINGS_SECTION_TYPE } from "@dxos/plugin-space";
10
+ import { linkedSegment } from "@dxos/react-ui-attention";
11
+ import { meta } from "#meta";
12
+ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function* () {
13
+ const extensions = yield* Effect.all([
14
+ GraphBuilder.createExtension({
15
+ id: "space-settings-automation",
16
+ match: NodeMatcher.whenNodeType(SETTINGS_SECTION_TYPE),
17
+ connector: () => Effect.succeed([
18
+ AppNode.makeSettingsPanel({
19
+ id: "automations",
20
+ type: `${meta.id}.space-settings-automation`,
21
+ label: [
22
+ "automation-panel.label",
23
+ {
24
+ ns: meta.id
25
+ }
26
+ ],
27
+ icon: "ph--lightning--regular",
28
+ iconHue: "indigo",
29
+ position: "last"
30
+ })
31
+ ])
32
+ }),
33
+ GraphBuilder.createExtension({
34
+ id: "space-settings-functions",
35
+ match: NodeMatcher.whenNodeType(SETTINGS_SECTION_TYPE),
36
+ connector: () => Effect.succeed([
37
+ AppNode.makeSettingsPanel({
38
+ id: "functions",
39
+ type: `${meta.id}.space-settings-functions`,
40
+ label: [
41
+ "functions-panel.label",
42
+ {
43
+ ns: meta.id
44
+ }
45
+ ],
46
+ icon: "ph--function--regular",
47
+ iconHue: "indigo",
48
+ position: "last"
49
+ })
50
+ ])
51
+ }),
52
+ GraphBuilder.createTypeExtension({
53
+ id: "script-companion",
54
+ type: Script.Script,
55
+ connector: (script) => Effect.succeed([
56
+ AppNode.makeCompanion({
57
+ id: linkedSegment("automation"),
58
+ label: [
59
+ "script-automation.label",
60
+ {
61
+ ns: meta.id
62
+ }
63
+ ],
64
+ icon: "ph--lightning--regular",
65
+ data: "automation"
66
+ })
67
+ ])
68
+ })
69
+ ]);
70
+ return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);
71
+ }));
72
+ export {
73
+ app_graph_builder_default as default
74
+ };
75
+ //# sourceMappingURL=app-graph-builder-4QOUKY5L.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities, AppNode } from '@dxos/app-toolkit';\nimport { Script } from '@dxos/compute';\nimport { GraphBuilder, NodeMatcher } from '@dxos/plugin-graph';\nimport { SETTINGS_SECTION_TYPE } from '@dxos/plugin-space';\nimport { linkedSegment } from '@dxos/react-ui-attention';\n\nimport { meta } from '#meta';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const extensions = yield* Effect.all([\n GraphBuilder.createExtension({\n id: 'space-settings-automation',\n match: NodeMatcher.whenNodeType(SETTINGS_SECTION_TYPE),\n connector: () =>\n Effect.succeed([\n AppNode.makeSettingsPanel({\n id: 'automations',\n type: `${meta.id}.space-settings-automation`,\n label: ['automation-panel.label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n iconHue: 'indigo',\n position: 'last',\n }),\n ]),\n }),\n GraphBuilder.createExtension({\n id: 'space-settings-functions',\n match: NodeMatcher.whenNodeType(SETTINGS_SECTION_TYPE),\n connector: () =>\n Effect.succeed([\n AppNode.makeSettingsPanel({\n id: 'functions',\n type: `${meta.id}.space-settings-functions`,\n label: ['functions-panel.label', { ns: meta.id }],\n icon: 'ph--function--regular',\n iconHue: 'indigo',\n position: 'last',\n }),\n ]),\n }),\n GraphBuilder.createTypeExtension({\n id: 'script-companion',\n type: Script.Script,\n connector: (script) =>\n Effect.succeed([\n AppNode.makeCompanion({\n id: linkedSegment('automation'),\n label: ['script-automation.label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n data: 'automation',\n }),\n ]),\n }),\n ]);\n\n return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiBC,eAAe;AACzC,SAASC,cAAc;AACvB,SAASC,cAAcC,mBAAmB;AAC1C,SAASC,6BAA6B;AACtC,SAASC,qBAAqB;AAE9B,SAASC,YAAY;AAErB,IAAA,4BAAeR,WAAWS,WACjBC,kBAAW,aAAA;AAChB,QAAMC,aAAa,OAAcC,WAAI;IACnCR,aAAaS,gBAAgB;MAC3BC,IAAI;MACJC,OAAOV,YAAYW,aAAaV,qBAAAA;MAChCW,WAAW,MACFC,eAAQ;QACbhB,QAAQiB,kBAAkB;UACxBL,IAAI;UACJM,MAAM,GAAGZ,KAAKM,EAAE;UAChBO,OAAO;YAAC;YAA0B;cAAEC,IAAId,KAAKM;YAAG;;UAChDS,MAAM;UACNC,SAAS;UACTC,UAAU;QACZ,CAAA;OACD;IACL,CAAA;IACArB,aAAaS,gBAAgB;MAC3BC,IAAI;MACJC,OAAOV,YAAYW,aAAaV,qBAAAA;MAChCW,WAAW,MACFC,eAAQ;QACbhB,QAAQiB,kBAAkB;UACxBL,IAAI;UACJM,MAAM,GAAGZ,KAAKM,EAAE;UAChBO,OAAO;YAAC;YAAyB;cAAEC,IAAId,KAAKM;YAAG;;UAC/CS,MAAM;UACNC,SAAS;UACTC,UAAU;QACZ,CAAA;OACD;IACL,CAAA;IACArB,aAAasB,oBAAoB;MAC/BZ,IAAI;MACJM,MAAMjB,OAAOA;MACbc,WAAW,CAACU,WACHT,eAAQ;QACbhB,QAAQ0B,cAAc;UACpBd,IAAIP,cAAc,YAAA;UAClBc,OAAO;YAAC;YAA2B;cAAEC,IAAId,KAAKM;YAAG;;UACjDS,MAAM;UACNM,MAAM;QACR,CAAA;OACD;IACL,CAAA;GACD;AAED,SAAO7B,WAAW8B,YAAY7B,gBAAgB8B,iBAAiBpB,UAAAA;AACjE,CAAA,CAAA;",
6
+ "names": ["Effect", "Capability", "AppCapabilities", "AppNode", "Script", "GraphBuilder", "NodeMatcher", "SETTINGS_SECTION_TYPE", "linkedSegment", "meta", "makeModule", "fnUntraced", "extensions", "all", "createExtension", "id", "match", "whenNodeType", "connector", "succeed", "makeSettingsPanel", "type", "label", "ns", "icon", "iconHue", "position", "createTypeExtension", "script", "makeCompanion", "data", "contributes", "AppGraphBuilder"]
7
+ }
@@ -0,0 +1,15 @@
1
+ import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/index.ts
4
+ import { Capability } from "@dxos/app-framework";
5
+ var AppGraphBuilder = Capability.lazy("AppGraphBuilder", () => import("../app-graph-builder-4QOUKY5L.mjs"));
6
+ var LayerSpecs = Capability.lazy("LayerSpecs", () => import("../layer-specs-XLG75KLY.mjs"));
7
+ var OperationHandler = Capability.lazy("OperationHandler", () => import("../operation-handler-YXGYH5W5.mjs"));
8
+ var ReactSurface = Capability.lazy("ReactSurface", () => import("../react-surface-3OGMAMKV.mjs"));
9
+ export {
10
+ AppGraphBuilder,
11
+ LayerSpecs,
12
+ OperationHandler,
13
+ ReactSurface
14
+ };
15
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\nimport { OperationHandlerSet } from '@dxos/compute';\n\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\nexport const LayerSpecs = Capability.lazy<void, Capability.Any[]>('LayerSpecs', () => import('./layer-specs'));\nexport const OperationHandler = Capability.lazy<OperationHandlerSet.OperationHandlerSet>(\n 'OperationHandler',\n () => import('./operation-handler'),\n);\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n"],
5
+ "mappings": ";;;AAIA,SAASA,kBAAkB;AAGpB,IAAMC,kBAAkBD,WAAWE,KAAK,mBAAmB,MAAM,OAAO,mCAAA,CAAA;AACxE,IAAMC,aAAaH,WAAWE,KAA6B,cAAc,MAAM,OAAO,6BAAA,CAAA;AACtF,IAAME,mBAAmBJ,WAAWE,KACzC,oBACA,MAAM,OAAO,mCAAA,CAAA;AAER,IAAMG,eAAeL,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;",
6
+ "names": ["Capability", "AppGraphBuilder", "lazy", "LayerSpecs", "OperationHandler", "ReactSurface"]
7
+ }
@@ -0,0 +1,13 @@
1
+ import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/node.ts
4
+ import { Capability } from "@dxos/app-framework";
5
+ var AppGraphBuilder = Capability.lazy("AppGraphBuilder", () => import("../app-graph-builder-4QOUKY5L.mjs"));
6
+ var LayerSpecs = Capability.lazy("LayerSpecs", () => import("../layer-specs-XLG75KLY.mjs"));
7
+ var OperationHandler = Capability.lazy("OperationHandler", () => import("../operation-handler-YXGYH5W5.mjs"));
8
+ export {
9
+ AppGraphBuilder,
10
+ LayerSpecs,
11
+ OperationHandler
12
+ };
13
+ //# sourceMappingURL=node.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/capabilities/node.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\nimport { OperationHandlerSet } from '@dxos/compute';\n\nexport const AppGraphBuilder = Capability.lazy('AppGraphBuilder', () => import('./app-graph-builder'));\nexport const LayerSpecs = Capability.lazy<void, Capability.Any[]>('LayerSpecs', () => import('./layer-specs'));\nexport const OperationHandler = Capability.lazy<OperationHandlerSet.OperationHandlerSet>(\n 'OperationHandler',\n () => import('./operation-handler'),\n);\n"],
5
+ "mappings": ";;;AAIA,SAASA,kBAAkB;AAGpB,IAAMC,kBAAkBD,WAAWE,KAAK,mBAAmB,MAAM,OAAO,mCAAA,CAAA;AACxE,IAAMC,aAAaH,WAAWE,KAA6B,cAAc,MAAM,OAAO,6BAAA,CAAA;AACtF,IAAME,mBAAmBJ,WAAWE,KACzC,oBACA,MAAM,OAAO,mCAAA,CAAA;",
6
+ "names": ["Capability", "AppGraphBuilder", "lazy", "LayerSpecs", "OperationHandler"]
7
+ }
@@ -0,0 +1,42 @@
1
+ // src/containers/TriggerSettings/TriggerSettings.tsx
2
+ import React from "react";
3
+ import { useObject } from "@dxos/echo-react";
4
+ import { DropdownMenu, IconButton, useTranslation } from "@dxos/react-ui";
5
+ import { Settings } from "@dxos/react-ui-form";
6
+ import { meta } from "#meta";
7
+ var TriggersSettings = ({ space }) => {
8
+ const { t } = useTranslation(meta.id);
9
+ const [properties, changeProperties] = useObject(space.properties);
10
+ const selected = properties.computeEnvironment ?? "local";
11
+ const handleUpdate = (option) => {
12
+ changeProperties((draft) => {
13
+ draft.computeEnvironment = option;
14
+ });
15
+ };
16
+ return /* @__PURE__ */ React.createElement("div", {
17
+ className: "grid grid-cols-1 md:grid-cols-[1fr_min-content]"
18
+ }, /* @__PURE__ */ React.createElement(Settings.Item, {
19
+ title: t("runtime.label"),
20
+ description: t("runtime.description")
21
+ }, /* @__PURE__ */ React.createElement(DropdownMenu.Root, null, /* @__PURE__ */ React.createElement(DropdownMenu.Trigger, {
22
+ asChild: true
23
+ }, /* @__PURE__ */ React.createElement(IconButton, {
24
+ iconEnd: true,
25
+ icon: "ph--caret-down--regular",
26
+ size: 4,
27
+ label: t(`runtime.${selected}.label`)
28
+ })), /* @__PURE__ */ React.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React.createElement(DropdownMenu.Content, {
29
+ side: "bottom"
30
+ }, /* @__PURE__ */ React.createElement(DropdownMenu.Viewport, null, /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
31
+ onClick: () => handleUpdate("disabled")
32
+ }, t(`runtime.disabled.label`)), /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
33
+ onClick: () => handleUpdate("local")
34
+ }, t(`runtime.local.label`)), /* @__PURE__ */ React.createElement(DropdownMenu.Item, {
35
+ onClick: () => handleUpdate("edge")
36
+ }, t(`runtime.edge.label`))))))));
37
+ };
38
+
39
+ export {
40
+ TriggersSettings
41
+ };
42
+ //# sourceMappingURL=chunk-2JP77CMN.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/containers/TriggerSettings/TriggerSettings.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type ComputeEnvironment } from '@dxos/client-protocol';\nimport { useObject } from '@dxos/echo-react';\nimport { type Space } from '@dxos/react-client/echo';\nimport { DropdownMenu, IconButton, useTranslation } from '@dxos/react-ui';\nimport { Settings } from '@dxos/react-ui-form';\n\nimport { meta } from '#meta';\n\nexport const TriggersSettings = ({ space }: { space: Space }) => {\n const { t } = useTranslation(meta.id);\n const [properties, changeProperties] = useObject(space.properties);\n const selected = properties.computeEnvironment ?? 'local';\n\n const handleUpdate = (option: ComputeEnvironment) => {\n changeProperties((draft) => {\n draft.computeEnvironment = option;\n });\n };\n\n return (\n <div className='grid grid-cols-1 md:grid-cols-[1fr_min-content]'>\n <Settings.Item title={t('runtime.label')} description={t('runtime.description')}>\n <DropdownMenu.Root>\n <DropdownMenu.Trigger asChild>\n <IconButton iconEnd icon='ph--caret-down--regular' size={4} label={t(`runtime.${selected}.label`)} />\n </DropdownMenu.Trigger>\n <DropdownMenu.Portal>\n <DropdownMenu.Content side='bottom'>\n <DropdownMenu.Viewport>\n <DropdownMenu.Item onClick={() => handleUpdate('disabled')}>\n {t(`runtime.disabled.label`)}\n </DropdownMenu.Item>\n <DropdownMenu.Item onClick={() => handleUpdate('local')}>{t(`runtime.local.label`)}</DropdownMenu.Item>\n <DropdownMenu.Item onClick={() => handleUpdate('edge')}>{t(`runtime.edge.label`)}</DropdownMenu.Item>\n </DropdownMenu.Viewport>\n </DropdownMenu.Content>\n </DropdownMenu.Portal>\n </DropdownMenu.Root>\n </Settings.Item>\n </div>\n );\n};\n"],
5
+ "mappings": ";AAIA,OAAOA,WAAW;AAGlB,SAASC,iBAAiB;AAE1B,SAASC,cAAcC,YAAYC,sBAAsB;AACzD,SAASC,gBAAgB;AAEzB,SAASC,YAAY;AAEd,IAAMC,mBAAmB,CAAC,EAAEC,MAAK,MAAoB;AAC1D,QAAM,EAAEC,EAAC,IAAKL,eAAeE,KAAKI,EAAE;AACpC,QAAM,CAACC,YAAYC,gBAAAA,IAAoBX,UAAUO,MAAMG,UAAU;AACjE,QAAME,WAAWF,WAAWG,sBAAsB;AAElD,QAAMC,eAAe,CAACC,WAAAA;AACpBJ,qBAAiB,CAACK,UAAAA;AAChBA,YAAMH,qBAAqBE;IAC7B,CAAA;EACF;AAEA,SACE,sBAAA,cAACE,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACd,SAASe,MAAI;IAACC,OAAOZ,EAAE,eAAA;IAAkBa,aAAab,EAAE,qBAAA;KACvD,sBAAA,cAACP,aAAaqB,MAAI,MAChB,sBAAA,cAACrB,aAAasB,SAAO;IAACC,SAAAA;KACpB,sBAAA,cAACtB,YAAAA;IAAWuB,SAAAA;IAAQC,MAAK;IAA0BC,MAAM;IAAGC,OAAOpB,EAAE,WAAWI,QAAAA,QAAgB;OAElG,sBAAA,cAACX,aAAa4B,QAAM,MAClB,sBAAA,cAAC5B,aAAa6B,SAAO;IAACC,MAAK;KACzB,sBAAA,cAAC9B,aAAa+B,UAAQ,MACpB,sBAAA,cAAC/B,aAAakB,MAAI;IAACc,SAAS,MAAMnB,aAAa,UAAA;KAC5CN,EAAE,wBAAwB,CAAA,GAE7B,sBAAA,cAACP,aAAakB,MAAI;IAACc,SAAS,MAAMnB,aAAa,OAAA;KAAWN,EAAE,qBAAqB,CAAA,GACjF,sBAAA,cAACP,aAAakB,MAAI;IAACc,SAAS,MAAMnB,aAAa,MAAA;KAAUN,EAAE,oBAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAQ/F;",
6
+ "names": ["React", "useObject", "DropdownMenu", "IconButton", "useTranslation", "Settings", "meta", "TriggersSettings", "space", "t", "id", "properties", "changeProperties", "selected", "computeEnvironment", "handleUpdate", "option", "draft", "div", "className", "Item", "title", "description", "Root", "Trigger", "asChild", "iconEnd", "icon", "size", "label", "Portal", "Content", "side", "Viewport", "onClick"]
7
+ }
@@ -3,15 +3,19 @@ import { trim } from "@dxos/util";
3
3
  var meta = {
4
4
  id: "org.dxos.plugin.automation",
5
5
  name: "Automation",
6
+ author: "DXOS",
6
7
  description: trim`
7
8
  Workflow automation engine that triggers custom actions based on object events and conditions.
8
9
  Create automated pipelines that respond to changes and streamline repetitive tasks.
9
10
  `,
10
- icon: "ph--robot--regular",
11
- source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-automation"
11
+ icon: "ph--atom--regular",
12
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-automation",
13
+ tags: [
14
+ "system"
15
+ ]
12
16
  };
13
17
 
14
18
  export {
15
19
  meta
16
20
  };
17
- //# sourceMappingURL=chunk-EL64ZPPN.mjs.map
21
+ //# sourceMappingURL=chunk-4ETZEEYR.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.automation',\n name: 'Automation',\n author: 'DXOS',\n description: trim`\n Workflow automation engine that triggers custom actions based on object events and conditions.\n Create automated pipelines that respond to changes and streamline repetitive tasks.\n `,\n icon: 'ph--atom--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-automation',\n tags: ['system'],\n};\n"],
5
+ "mappings": ";AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,QAAQ;EACRC,aAAaL;;;;EAIbM,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;AACT;",
6
+ "names": ["trim", "meta", "id", "name", "author", "description", "icon", "source", "tags"]
7
+ }
@@ -1,21 +1,22 @@
1
1
  import {
2
2
  TriggerEditor
3
- } from "./chunk-BWEKRPFJ.mjs";
4
- import {
5
- meta
6
- } from "./chunk-EL64ZPPN.mjs";
3
+ } from "./chunk-K3C5ZTZA.mjs";
7
4
 
8
5
  // src/components/AutomationPanel/AutomationPanel.tsx
9
6
  import * as Array from "effect/Array";
7
+ import * as Effect from "effect/Effect";
10
8
  import * as EFn from "effect/Function";
11
9
  import * as Match from "effect/Match";
12
10
  import * as Schema from "effect/Schema";
13
11
  import React, { useCallback, useMemo, useState } from "react";
14
- import { Filter, Obj, Tag } from "@dxos/echo";
15
- import { Function, Script, Trigger } from "@dxos/functions";
16
- import { KEY_QUEUE_CURSOR } from "@dxos/functions-runtime";
12
+ import { useProcessManagerRuntime } from "@dxos/app-framework/ui";
13
+ import { useTypeOptions } from "@dxos/app-toolkit/ui";
14
+ import { Operation, Script, ServiceResolver, Trigger } from "@dxos/compute";
15
+ import { Context } from "@dxos/context";
16
+ import { Filter, Obj, Query, Tag } from "@dxos/echo";
17
+ import { KEY_QUEUE_CURSOR, TriggerDispatcher } from "@dxos/functions-runtime";
17
18
  import { FunctionsServiceClient } from "@dxos/functions-runtime/edge";
18
- import { useTypeOptions } from "@dxos/plugin-space";
19
+ import { log } from "@dxos/log";
19
20
  import { useClient } from "@dxos/react-client";
20
21
  import { useObject, useQuery } from "@dxos/react-client/echo";
21
22
  import { Clipboard, IconButton, Input, Separator, useTranslation } from "@dxos/react-ui";
@@ -24,15 +25,20 @@ import { List } from "@dxos/react-ui-list";
24
25
  import { Pipeline } from "@dxos/types";
25
26
  import { ghostHover, mx } from "@dxos/ui-theme";
26
27
  import { isNonNullable } from "@dxos/util";
28
+ import { meta } from "#meta";
29
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-automation/src/components/AutomationPanel/AutomationPanel.tsx";
27
30
  var grid = "grid grid-cols-[40px_1fr_32px_32px] min-h-[2.5rem]";
28
31
  var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
29
32
  const { t } = useTranslation(meta.id);
30
33
  const client = useClient();
34
+ const processManagerRuntime = useProcessManagerRuntime();
35
+ const [properties] = useObject(space.properties);
36
+ const computeEnvironment = properties.computeEnvironment ?? "local";
31
37
  const functionsServiceClient = useMemo(() => FunctionsServiceClient.fromClient(client), [
32
38
  client
33
39
  ]);
34
- const functions = useQuery(space.db, Filter.type(Function.Function));
35
- const triggers = useQuery(space.db, Filter.type(Trigger.Trigger));
40
+ const functions = useQuery(space.db, Filter.type(Operation.PersistentOperation));
41
+ const triggers = useQuery(space.db, Query.select(Filter.type(Trigger.Trigger)).debugLabel("plugin-automation.AutomationPanel"));
36
42
  const filteredTriggers = useMemo(() => {
37
43
  return object ? triggers.filter(triggerMatch(object)) : triggers;
38
44
  }, [
@@ -41,7 +47,7 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
41
47
  ]);
42
48
  const tags = useQuery(space.db, Filter.type(Tag.Tag));
43
49
  const types = useTypeOptions({
44
- space,
50
+ db: space.db,
45
51
  annotation: {
46
52
  location: [
47
53
  "database",
@@ -69,8 +75,8 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
69
75
  };
70
76
  const handleSave = (trigger2) => {
71
77
  if (selected) {
72
- Obj.change(selected, (mutable) => {
73
- Object.assign(mutable, trigger2);
78
+ Obj.update(selected, (selected2) => {
79
+ Object.assign(selected2, trigger2);
74
80
  });
75
81
  } else {
76
82
  space.db.add(Trigger.make(trigger2));
@@ -84,11 +90,36 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
84
90
  onDone?.();
85
91
  };
86
92
  const handleForceRunTrigger = async (trigger2) => {
87
- await functionsServiceClient.forceRunCronTrigger(space.id, trigger2.id);
93
+ if (computeEnvironment === "disabled") {
94
+ return;
95
+ }
96
+ if (computeEnvironment === "local") {
97
+ try {
98
+ await processManagerRuntime.runPromise(Effect.gen(function* () {
99
+ const dispatcher = yield* TriggerDispatcher;
100
+ yield* dispatcher.invokeTrigger({
101
+ trigger: trigger2,
102
+ event: {
103
+ tick: Date.now()
104
+ }
105
+ });
106
+ }).pipe(Effect.provide(ServiceResolver.provide({
107
+ space: space.id
108
+ }, TriggerDispatcher))));
109
+ } catch (error) {
110
+ log.catch(error, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 109, S: void 0 });
111
+ }
112
+ return;
113
+ }
114
+ try {
115
+ await functionsServiceClient.forceRunCronTrigger(Context.default(void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 114 }), space.id, trigger2.id);
116
+ } catch (error) {
117
+ log.catch(error, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 116, S: void 0 });
118
+ }
88
119
  };
89
120
  const handleResetCursor = async (trigger2) => {
90
- Obj.change(trigger2, (t2) => {
91
- Obj.deleteKeys(t2, KEY_QUEUE_CURSOR);
121
+ Obj.update(trigger2, (trigger3) => {
122
+ Obj.deleteKeys(trigger3, KEY_QUEUE_CURSOR);
92
123
  });
93
124
  await space.db.flush({
94
125
  indexes: true
@@ -96,8 +127,8 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
96
127
  };
97
128
  if (trigger) {
98
129
  return /* @__PURE__ */ React.createElement(Settings.Item, {
99
- title: t("trigger editor title"),
100
- description: t("trigger editor description")
130
+ title: t("trigger-editor.title"),
131
+ description: t("trigger-editor.description")
101
132
  }, /* @__PURE__ */ React.createElement(TriggerEditor, {
102
133
  db: space.db,
103
134
  trigger,
@@ -108,7 +139,7 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
108
139
  onCancel: handleCancel
109
140
  }));
110
141
  }
111
- return /* @__PURE__ */ React.createElement(Settings.Container, null, filteredTriggers.length > 0 && /* @__PURE__ */ React.createElement(List.Root, {
142
+ return /* @__PURE__ */ React.createElement(Settings.Panel, null, /* @__PURE__ */ React.createElement(Clipboard.Provider, null, filteredTriggers.length > 0 && /* @__PURE__ */ React.createElement(List.Root, {
112
143
  items: filteredTriggers,
113
144
  isItem: Schema.is(Trigger.Trigger),
114
145
  getId: (field) => field.id
@@ -119,6 +150,7 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
119
150
  key: trigger2.id,
120
151
  trigger: trigger2,
121
152
  functions,
153
+ computeEnvironment,
122
154
  onSelect: handleSelect,
123
155
  onDelete: handleDelete,
124
156
  onResetCursor: handleResetCursor,
@@ -127,11 +159,11 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
127
159
  classNames: "my-4"
128
160
  }), /* @__PURE__ */ React.createElement(IconButton, {
129
161
  icon: "ph--plus--regular",
130
- label: t("new trigger label"),
162
+ label: t("new-trigger.label"),
131
163
  onClick: handleAdd
132
- }));
164
+ })));
133
165
  };
134
- var TriggerListItem = ({ trigger, functions, onSelect, onDelete, onResetCursor, onForceRun }) => {
166
+ var TriggerListItem = ({ trigger, functions, computeEnvironment, onSelect, onDelete, onResetCursor, onForceRun }) => {
135
167
  const client = useClient();
136
168
  const copyAction = getCopyAction(client, trigger);
137
169
  const { t } = useTranslation(meta.id);
@@ -170,7 +202,7 @@ var TriggerListItem = ({ trigger, functions, onSelect, onDelete, onResetCursor,
170
202
  const actionProps = useMemo(() => {
171
203
  if (trigger.spec?.kind === "timer" && onForceRun) {
172
204
  return {
173
- disabled: !enabled || trigger.spec?.kind !== "timer",
205
+ disabled: !enabled || computeEnvironment === "disabled",
174
206
  icon: "ph--play--regular",
175
207
  label: "Force run",
176
208
  onClick: handleForceRun
@@ -185,9 +217,11 @@ var TriggerListItem = ({ trigger, functions, onSelect, onDelete, onResetCursor,
185
217
  };
186
218
  }
187
219
  }, [
220
+ computeEnvironment,
188
221
  enabled,
189
222
  trigger.spec?.kind,
190
- handleForceRun
223
+ handleForceRun,
224
+ onResetCursor
191
225
  ]);
192
226
  return /* @__PURE__ */ React.createElement(List.Item, {
193
227
  key: trigger.id,
@@ -242,7 +276,7 @@ var getFunctionName = (functions, trigger) => {
242
276
  };
243
277
  var scriptMatch = (script) => (trigger) => {
244
278
  const fn = trigger.function?.target;
245
- if (!Obj.instanceOf(Function.Function, fn)) {
279
+ if (!Obj.instanceOf(Operation.PersistentOperation, fn)) {
246
280
  return false;
247
281
  }
248
282
  return fn.source?.target === script;
@@ -266,4 +300,4 @@ export {
266
300
  AutomationPanel,
267
301
  AutomationPanel_default
268
302
  };
269
- //# sourceMappingURL=chunk-O23LHDEX.mjs.map
303
+ //# sourceMappingURL=chunk-EIIPEUUP.mjs.map