@dxos/plugin-automation 0.8.4-main.b97322e → 0.8.4-main.bc2380dfbc

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 (318) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/neutral/AutomationPanel-T5O4DNQF.mjs +11 -0
  4. package/dist/lib/neutral/AutomationPlugin.mjs +10 -0
  5. package/dist/lib/neutral/AutomationPlugin.node.mjs +1112 -0
  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-UVS5STCS.mjs +31 -0
  10. package/dist/lib/neutral/AutomationSettings-UVS5STCS.mjs.map +7 -0
  11. package/dist/lib/neutral/FunctionsContainer-CDCM65U4.mjs +38 -0
  12. package/dist/lib/neutral/FunctionsContainer-CDCM65U4.mjs.map +7 -0
  13. package/dist/lib/neutral/FunctionsPanel-SVRKRUXZ.mjs +97 -0
  14. package/dist/lib/neutral/FunctionsPanel-SVRKRUXZ.mjs.map +7 -0
  15. package/dist/lib/neutral/FunctionsRegistry-7ITCFJCW.mjs +95 -0
  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-GDCGRYEP.mjs +75 -0
  19. package/dist/lib/neutral/app-graph-builder-GDCGRYEP.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/neutral/chunk-2UYFDJO6.mjs +12 -0
  27. package/dist/lib/neutral/chunk-2UYFDJO6.mjs.map +7 -0
  28. package/dist/lib/neutral/chunk-ATECY555.mjs +20 -0
  29. package/dist/lib/neutral/chunk-ATECY555.mjs.map +7 -0
  30. package/dist/lib/neutral/chunk-CNFKEN7S.mjs +37 -0
  31. package/dist/lib/neutral/chunk-CNFKEN7S.mjs.map +7 -0
  32. package/dist/lib/neutral/chunk-DSCOLDT5.mjs +93 -0
  33. package/dist/lib/neutral/chunk-DSCOLDT5.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  35. package/dist/lib/neutral/chunk-JKVVCWSL.mjs +307 -0
  36. package/dist/lib/neutral/chunk-JKVVCWSL.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-K3C5ZTZA.mjs +285 -0
  38. package/dist/lib/neutral/chunk-K3C5ZTZA.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-M3TIHFXN.mjs +8 -0
  40. package/dist/lib/neutral/chunk-M3TIHFXN.mjs.map +7 -0
  41. package/dist/lib/neutral/components/index.mjs +16 -0
  42. package/dist/lib/neutral/compute-runtime-D7MPZJ4R.mjs +222 -0
  43. package/dist/lib/neutral/compute-runtime-D7MPZJ4R.mjs.map +7 -0
  44. package/dist/lib/neutral/containers/index.mjs +13 -0
  45. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  46. package/dist/lib/neutral/create-trigger-from-template-7K3OYOHQ.mjs +68 -0
  47. package/dist/lib/neutral/create-trigger-from-template-7K3OYOHQ.mjs.map +7 -0
  48. package/dist/lib/neutral/hooks/index.mjs +129 -0
  49. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  50. package/dist/lib/neutral/index.mjs +20 -0
  51. package/dist/lib/neutral/meta.json +1 -0
  52. package/dist/lib/neutral/meta.mjs +8 -0
  53. package/dist/lib/neutral/meta.mjs.map +7 -0
  54. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs +13 -0
  55. package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs.map +7 -0
  56. package/dist/lib/neutral/operations/index.mjs +8 -0
  57. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  58. package/dist/lib/neutral/plugin.mjs +16 -0
  59. package/dist/lib/neutral/plugin.mjs.map +7 -0
  60. package/dist/lib/neutral/react-surface-3OGMAMKV.mjs +57 -0
  61. package/dist/lib/neutral/react-surface-3OGMAMKV.mjs.map +7 -0
  62. package/dist/lib/neutral/testing.mjs +8 -0
  63. package/dist/lib/neutral/testing.mjs.map +7 -0
  64. package/dist/lib/neutral/translations.mjs +47 -0
  65. package/dist/lib/neutral/translations.mjs.map +7 -0
  66. package/dist/lib/neutral/types/index.mjs +16 -0
  67. package/dist/lib/neutral/types/index.mjs.map +7 -0
  68. package/dist/types/src/AutomationPlugin.d.ts +3 -1
  69. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  70. package/dist/types/src/AutomationPlugin.node.d.ts +4 -0
  71. package/dist/types/src/AutomationPlugin.node.d.ts.map +1 -0
  72. package/dist/types/src/AutomationPlugin.test.d.ts +2 -0
  73. package/dist/types/src/AutomationPlugin.test.d.ts.map +1 -0
  74. package/dist/types/src/AutomationPlugin.workerd.d.ts +4 -0
  75. package/dist/types/src/AutomationPlugin.workerd.d.ts.map +1 -0
  76. package/dist/types/src/capabilities/app-graph-builder.d.ts +4 -2
  77. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  78. package/dist/types/src/capabilities/compute-runtime.d.ts +14 -0
  79. package/dist/types/src/capabilities/compute-runtime.d.ts.map +1 -0
  80. package/dist/types/src/capabilities/index.d.ts +6 -3
  81. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/node.d.ts +6 -0
  83. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  84. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  85. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  86. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  87. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  88. package/dist/types/src/commands/index.d.ts +2 -0
  89. package/dist/types/src/commands/index.d.ts.map +1 -0
  90. package/dist/types/src/commands/trigger/create/index.d.ts +25 -0
  91. package/dist/types/src/commands/trigger/create/index.d.ts.map +1 -0
  92. package/dist/types/src/commands/trigger/create/queue.d.ts +13 -0
  93. package/dist/types/src/commands/trigger/create/queue.d.ts.map +1 -0
  94. package/dist/types/src/commands/trigger/create/subscription.d.ts +15 -0
  95. package/dist/types/src/commands/trigger/create/subscription.d.ts.map +1 -0
  96. package/dist/types/src/commands/trigger/create/timer.d.ts +13 -0
  97. package/dist/types/src/commands/trigger/create/timer.d.ts.map +1 -0
  98. package/dist/types/src/commands/trigger/index.d.ts +57 -0
  99. package/dist/types/src/commands/trigger/index.d.ts.map +1 -0
  100. package/dist/types/src/commands/trigger/list.d.ts +7 -0
  101. package/dist/types/src/commands/trigger/list.d.ts.map +1 -0
  102. package/dist/types/src/commands/trigger/options.d.ts +11 -0
  103. package/dist/types/src/commands/trigger/options.d.ts.map +1 -0
  104. package/dist/types/src/commands/trigger/remove.d.ts +8 -0
  105. package/dist/types/src/commands/trigger/remove.d.ts.map +1 -0
  106. package/dist/types/src/commands/trigger/update/index.d.ts +28 -0
  107. package/dist/types/src/commands/trigger/update/index.d.ts.map +1 -0
  108. package/dist/types/src/commands/trigger/update/queue.d.ts +12 -0
  109. package/dist/types/src/commands/trigger/update/queue.d.ts.map +1 -0
  110. package/dist/types/src/commands/trigger/update/subscription.d.ts +13 -0
  111. package/dist/types/src/commands/trigger/update/subscription.d.ts.map +1 -0
  112. package/dist/types/src/commands/trigger/update/timer.d.ts +11 -0
  113. package/dist/types/src/commands/trigger/update/timer.d.ts.map +1 -0
  114. package/dist/types/src/commands/trigger/util.d.ts +46 -0
  115. package/dist/types/src/commands/trigger/util.d.ts.map +1 -0
  116. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +3 -3
  117. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  118. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +50 -4
  119. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  120. package/dist/types/src/components/AutomationPanel/index.d.ts.map +1 -1
  121. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  122. package/dist/types/src/components/FunctionsPanel/index.d.ts.map +1 -1
  123. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts +8 -0
  124. package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -0
  125. package/dist/types/src/components/FunctionsRegistry/index.d.ts +4 -0
  126. package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -0
  127. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +12 -9
  128. package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
  129. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +6 -3
  130. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  131. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +11 -8
  132. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  133. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +121 -4
  134. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  135. package/dist/types/src/components/index.d.ts +2 -3
  136. package/dist/types/src/components/index.d.ts.map +1 -1
  137. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +6 -0
  138. package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -0
  139. package/dist/types/src/containers/AutomationSettings/index.d.ts +2 -0
  140. package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -0
  141. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts +4 -0
  142. package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts.map +1 -0
  143. package/dist/types/src/containers/FunctionsContainer/index.d.ts +2 -0
  144. package/dist/types/src/containers/FunctionsContainer/index.d.ts.map +1 -0
  145. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts +6 -0
  146. package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -0
  147. package/dist/types/src/containers/TriggerSettings/index.d.ts +3 -0
  148. package/dist/types/src/containers/TriggerSettings/index.d.ts.map +1 -0
  149. package/dist/types/src/containers/index.d.ts +5 -0
  150. package/dist/types/src/containers/index.d.ts.map +1 -0
  151. package/dist/types/src/hooks/index.d.ts +5 -0
  152. package/dist/types/src/hooks/index.d.ts.map +1 -0
  153. package/dist/types/src/hooks/useComputeRuntime.d.ts +8 -0
  154. package/dist/types/src/hooks/useComputeRuntime.d.ts.map +1 -0
  155. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +9 -0
  156. package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -0
  157. package/dist/types/src/hooks/useComputeRuntimeService.d.ts +17 -0
  158. package/dist/types/src/hooks/useComputeRuntimeService.d.ts.map +1 -0
  159. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +12 -0
  160. package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -0
  161. package/dist/types/src/index.d.ts +1 -2
  162. package/dist/types/src/index.d.ts.map +1 -1
  163. package/dist/types/src/meta.d.ts +2 -3
  164. package/dist/types/src/meta.d.ts.map +1 -1
  165. package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
  166. package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
  167. package/dist/types/src/operations/index.d.ts +3 -0
  168. package/dist/types/src/operations/index.d.ts.map +1 -0
  169. package/dist/types/src/plugin.d.ts +4 -0
  170. package/dist/types/src/plugin.d.ts.map +1 -0
  171. package/dist/types/src/testing/test-functions.d.ts +204 -3
  172. package/dist/types/src/testing/test-functions.d.ts.map +1 -1
  173. package/dist/types/src/testing.d.ts +2 -0
  174. package/dist/types/src/testing.d.ts.map +1 -0
  175. package/dist/types/src/translations.d.ts +32 -26
  176. package/dist/types/src/translations.d.ts.map +1 -1
  177. package/dist/types/src/types/AutomationCapabilities.d.ts +22 -0
  178. package/dist/types/src/types/AutomationCapabilities.d.ts.map +1 -0
  179. package/dist/types/src/types/AutomationEvents.d.ts +3 -0
  180. package/dist/types/src/types/AutomationEvents.d.ts.map +1 -0
  181. package/dist/types/src/types/AutomationOperation.d.ts +19 -0
  182. package/dist/types/src/types/AutomationOperation.d.ts.map +1 -0
  183. package/dist/types/src/types/index.d.ts +3 -0
  184. package/dist/types/src/types/index.d.ts.map +1 -1
  185. package/dist/types/src/types/schema.d.ts +12 -4
  186. package/dist/types/src/types/schema.d.ts.map +1 -1
  187. package/dist/types/tsconfig.tsbuildinfo +1 -1
  188. package/package.json +147 -50
  189. package/src/AutomationPlugin.node.ts +29 -0
  190. package/src/AutomationPlugin.test.ts +27 -0
  191. package/src/AutomationPlugin.tsx +23 -34
  192. package/src/AutomationPlugin.workerd.ts +18 -0
  193. package/src/capabilities/app-graph-builder.ts +59 -79
  194. package/src/capabilities/compute-runtime.ts +326 -0
  195. package/src/capabilities/index.ts +9 -4
  196. package/src/capabilities/node.ts +13 -0
  197. package/src/capabilities/operation-handler.ts +16 -0
  198. package/src/capabilities/react-surface.tsx +49 -46
  199. package/src/commands/index.ts +5 -0
  200. package/src/commands/trigger/create/index.ts +14 -0
  201. package/src/commands/trigger/create/queue.ts +86 -0
  202. package/src/commands/trigger/create/subscription.ts +125 -0
  203. package/src/commands/trigger/create/timer.ts +90 -0
  204. package/src/commands/trigger/index.ts +16 -0
  205. package/src/commands/trigger/list.ts +70 -0
  206. package/src/commands/trigger/options.ts +59 -0
  207. package/src/commands/trigger/remove.ts +44 -0
  208. package/src/commands/trigger/update/index.ts +14 -0
  209. package/src/commands/trigger/update/queue.ts +194 -0
  210. package/src/commands/trigger/update/subscription.ts +278 -0
  211. package/src/commands/trigger/update/timer.ts +193 -0
  212. package/src/commands/trigger/util.ts +412 -0
  213. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +23 -17
  214. package/src/components/AutomationPanel/AutomationPanel.tsx +289 -94
  215. package/src/components/FunctionsPanel/FunctionsPanel.tsx +52 -32
  216. package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +119 -0
  217. package/src/components/FunctionsRegistry/index.ts +8 -0
  218. package/src/components/TriggerEditor/FunctionInputEditor.tsx +42 -35
  219. package/src/components/TriggerEditor/SpecSelector.tsx +34 -22
  220. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +134 -40
  221. package/src/components/TriggerEditor/TriggerEditor.tsx +109 -48
  222. package/src/components/index.ts +1 -2
  223. package/src/containers/AutomationSettings/AutomationSettings.tsx +31 -0
  224. package/src/containers/AutomationSettings/index.ts +5 -0
  225. package/src/containers/FunctionsContainer/FunctionsContainer.tsx +33 -0
  226. package/src/containers/FunctionsContainer/index.ts +5 -0
  227. package/src/containers/TriggerSettings/TriggerSettings.tsx +48 -0
  228. package/src/containers/TriggerSettings/index.ts +6 -0
  229. package/src/containers/index.ts +9 -0
  230. package/src/hooks/index.ts +9 -0
  231. package/src/hooks/useComputeRuntime.ts +30 -0
  232. package/src/hooks/useComputeRuntimeCallback.ts +31 -0
  233. package/src/hooks/useComputeRuntimeService.ts +64 -0
  234. package/src/hooks/useTriggerRuntimeControls.ts +70 -0
  235. package/src/index.ts +1 -3
  236. package/src/meta.ts +10 -8
  237. package/src/operations/create-trigger-from-template.ts +71 -0
  238. package/src/operations/index.ts +7 -0
  239. package/src/plugin.ts +11 -0
  240. package/src/testing/test-functions.ts +13 -10
  241. package/src/testing.ts +7 -0
  242. package/src/translations.ts +39 -29
  243. package/src/types/AutomationCapabilities.ts +48 -0
  244. package/src/types/AutomationEvents.ts +11 -0
  245. package/src/types/AutomationOperation.ts +30 -0
  246. package/src/types/index.ts +4 -0
  247. package/src/types/schema.ts +6 -6
  248. package/dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs +0 -38
  249. package/dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs.map +0 -7
  250. package/dist/lib/browser/AutomationPanel-ZWA6GOFY.mjs +0 -11
  251. package/dist/lib/browser/FunctionsContainer-IOB333TX.mjs +0 -39
  252. package/dist/lib/browser/FunctionsContainer-IOB333TX.mjs.map +0 -7
  253. package/dist/lib/browser/FunctionsPanel-56ZKRVM5.mjs +0 -10
  254. package/dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs +0 -80
  255. package/dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs.map +0 -7
  256. package/dist/lib/browser/chunk-ECSTS2UI.mjs +0 -14
  257. package/dist/lib/browser/chunk-ECSTS2UI.mjs.map +0 -7
  258. package/dist/lib/browser/chunk-ERTIGJYE.mjs +0 -147
  259. package/dist/lib/browser/chunk-ERTIGJYE.mjs.map +0 -7
  260. package/dist/lib/browser/chunk-FSJZXTS2.mjs +0 -230
  261. package/dist/lib/browser/chunk-FSJZXTS2.mjs.map +0 -7
  262. package/dist/lib/browser/chunk-GW5U2DGT.mjs +0 -15
  263. package/dist/lib/browser/chunk-GW5U2DGT.mjs.map +0 -7
  264. package/dist/lib/browser/chunk-HN7OHFCB.mjs +0 -38
  265. package/dist/lib/browser/chunk-HN7OHFCB.mjs.map +0 -7
  266. package/dist/lib/browser/chunk-LYJVTIVD.mjs +0 -94
  267. package/dist/lib/browser/chunk-LYJVTIVD.mjs.map +0 -7
  268. package/dist/lib/browser/index.mjs +0 -101
  269. package/dist/lib/browser/index.mjs.map +0 -7
  270. package/dist/lib/browser/intent-resolver-U3ZAQEFW.mjs +0 -76
  271. package/dist/lib/browser/intent-resolver-U3ZAQEFW.mjs.map +0 -7
  272. package/dist/lib/browser/meta.json +0 -1
  273. package/dist/lib/browser/react-surface-4DFSM7OX.mjs +0 -64
  274. package/dist/lib/browser/react-surface-4DFSM7OX.mjs.map +0 -7
  275. package/dist/lib/browser/types/index.mjs +0 -8
  276. package/dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs +0 -39
  277. package/dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs.map +0 -7
  278. package/dist/lib/node-esm/AutomationPanel-YYUMSK2W.mjs +0 -12
  279. package/dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs +0 -40
  280. package/dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs.map +0 -7
  281. package/dist/lib/node-esm/FunctionsPanel-KGIOZSPZ.mjs +0 -11
  282. package/dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs +0 -81
  283. package/dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs.map +0 -7
  284. package/dist/lib/node-esm/chunk-AZH66CED.mjs +0 -231
  285. package/dist/lib/node-esm/chunk-AZH66CED.mjs.map +0 -7
  286. package/dist/lib/node-esm/chunk-HIMYPGHF.mjs +0 -148
  287. package/dist/lib/node-esm/chunk-HIMYPGHF.mjs.map +0 -7
  288. package/dist/lib/node-esm/chunk-NK5N3QKD.mjs +0 -17
  289. package/dist/lib/node-esm/chunk-NK5N3QKD.mjs.map +0 -7
  290. package/dist/lib/node-esm/chunk-OEZNHUL2.mjs +0 -39
  291. package/dist/lib/node-esm/chunk-OEZNHUL2.mjs.map +0 -7
  292. package/dist/lib/node-esm/chunk-SGZPTJ47.mjs +0 -16
  293. package/dist/lib/node-esm/chunk-SGZPTJ47.mjs.map +0 -7
  294. package/dist/lib/node-esm/chunk-ZGPUV5VS.mjs +0 -95
  295. package/dist/lib/node-esm/chunk-ZGPUV5VS.mjs.map +0 -7
  296. package/dist/lib/node-esm/index.mjs +0 -102
  297. package/dist/lib/node-esm/index.mjs.map +0 -7
  298. package/dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs +0 -77
  299. package/dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs.map +0 -7
  300. package/dist/lib/node-esm/meta.json +0 -1
  301. package/dist/lib/node-esm/react-surface-3PNW7NDW.mjs +0 -65
  302. package/dist/lib/node-esm/react-surface-3PNW7NDW.mjs.map +0 -7
  303. package/dist/lib/node-esm/types/index.mjs +0 -9
  304. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  305. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  306. package/dist/types/src/components/AutomationContainer.d.ts +0 -5
  307. package/dist/types/src/components/AutomationContainer.d.ts.map +0 -1
  308. package/dist/types/src/components/FunctionsContainer.d.ts +0 -7
  309. package/dist/types/src/components/FunctionsContainer.d.ts.map +0 -1
  310. package/src/capabilities/intent-resolver.ts +0 -72
  311. package/src/components/AutomationContainer.tsx +0 -30
  312. package/src/components/FunctionsContainer.tsx +0 -31
  313. /package/dist/lib/{browser/AutomationPanel-ZWA6GOFY.mjs.map → neutral/AutomationPanel-T5O4DNQF.mjs.map} +0 -0
  314. /package/dist/lib/{browser/FunctionsPanel-56ZKRVM5.mjs.map → neutral/AutomationPlugin.mjs.map} +0 -0
  315. /package/dist/lib/{browser/types/index.mjs.map → neutral/TriggerSettings-XCHIZPOR.mjs.map} +0 -0
  316. /package/dist/lib/{node-esm/AutomationPanel-YYUMSK2W.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  317. /package/dist/lib/{node-esm/types → neutral/components}/index.mjs.map +0 -0
  318. /package/dist/lib/{node-esm/FunctionsPanel-KGIOZSPZ.mjs.map → neutral/index.mjs.map} +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/FunctionsPanel/FunctionsPanel.tsx", "../../../src/components/FunctionsPanel/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { FunctionType, ScriptType } from '@dxos/functions';\nimport { Filter, fullyQualifiedId, useQuery, type Space } from '@dxos/react-client/echo';\nimport { Button, useTranslation } from '@dxos/react-ui';\nimport { controlItemClasses } from '@dxos/react-ui-form';\nimport { List } from '@dxos/react-ui-list';\nimport { ghostHover, mx } from '@dxos/react-ui-theme';\n\nimport { AUTOMATION_PLUGIN } from '../../meta';\n\nconst grid = 'grid grid-cols-[1fr_auto] min-bs-[2.5rem]';\n\nexport type FunctionsPanelProps = {\n space: Space;\n};\n\nexport const FunctionsPanel = ({ space }: FunctionsPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n const functions = useQuery(space, Filter.type(FunctionType));\n const scripts = useQuery(space, Filter.type(ScriptType));\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n const functionToScriptMap = useMemo(\n () =>\n functions.reduce(\n (map, func) => {\n const scriptId = func.source?.target?.id;\n if (scriptId) {\n const script = scripts.find((s) => s.id === scriptId);\n if (script) {\n map[func.id] = script;\n }\n }\n return map;\n },\n {} as Record<string, ScriptType>,\n ),\n [functions, scripts],\n );\n\n const getScriptName = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n return script?.name;\n },\n [functionToScriptMap],\n );\n\n const handleGoToScript = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n if (script) {\n void dispatch(createIntent(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(script)] }));\n }\n },\n [functionToScriptMap, dispatch],\n );\n\n return (\n <div role='none' className={mx(controlItemClasses)}>\n {functions.length > 0 && (\n <List.Root<FunctionType> items={functions} isItem={Schema.is(FunctionType)} getId={(func) => func.id}>\n {({ items }) => (\n <div role='list' className='flex flex-col w-full'>\n {items?.map((func) => (\n <List.Item<FunctionType>\n key={func.id}\n item={func}\n classNames={mx(grid, ghostHover, 'items-center', 'pli-2', 'min-bs-[3rem]')}\n >\n <div className='flex flex-col truncate'>\n <List.ItemTitle classNames='truncate'>{func.name}</List.ItemTitle>\n {getScriptName(func) && (\n <div className='text-xs text-description truncate'>{getScriptName(func)}</div>\n )}\n </div>\n {functionToScriptMap[func.id] && (\n <Button onClick={() => handleGoToScript(func)}>{t('go to function source button label')}</Button>\n )}\n </List.Item>\n ))}\n </div>\n )}\n </List.Root>\n )}\n\n {functions.length === 0 && <div className='text-center plb-4 text-gray-500'>{t('no functions found')}</div>}\n </div>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { FunctionsPanel } from './FunctionsPanel';\n\nexport * from './FunctionsPanel';\nexport default FunctionsPanel;\n"],
5
- "mappings": ";;;;;;;AAIA,SAASA,cAAc;AACvB,OAAOC,SAASC,aAAaC,eAAe;AAE5C,SAASC,cAAcC,cAAcC,2BAA2B;AAChE,SAASC,cAAcC,kBAAkB;AACzC,SAASC,QAAQC,kBAAkBC,gBAA4B;AAC/D,SAASC,QAAQC,sBAAsB;AACvC,SAASC,0BAA0B;AACnC,SAASC,YAAY;AACrB,SAASC,YAAYC,UAAU;AAI/B,IAAMC,OAAO;AAMN,IAAMC,iBAAiB,CAAC,EAAEC,MAAK,MAAuB;;;AAC3D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,UAAMC,YAAYC,SAASL,OAAOM,OAAOC,KAAKC,YAAAA,CAAAA;AAC9C,UAAMC,UAAUJ,SAASL,OAAOM,OAAOC,KAAKG,UAAAA,CAAAA;AAC5C,UAAM,EAAEC,iBAAiBC,SAAQ,IAAKC,oBAAAA;AAEtC,UAAMC,sBAAsBC,QAC1B,MACEX,UAAUY,OACR,CAACC,KAAKC,SAAAA;AACJ,YAAMC,WAAWD,KAAKE,QAAQC,QAAQC;AACtC,UAAIH,UAAU;AACZ,cAAMI,SAASd,QAAQe,KAAK,CAACC,MAAMA,EAAEH,OAAOH,QAAAA;AAC5C,YAAII,QAAQ;AACVN,cAAIC,KAAKI,EAAE,IAAIC;QACjB;MACF;AACA,aAAON;IACT,GACA,CAAC,CAAA,GAEL;MAACb;MAAWK;KAAQ;AAGtB,UAAMiB,gBAAgBC,YACpB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,aAAOC,QAAQK;IACjB,GACA;MAACd;KAAoB;AAGvB,UAAMe,mBAAmBF,YACvB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,UAAIC,QAAQ;AACV,aAAKX,SAASkB,aAAaC,aAAaC,MAAM;UAAEC,MAAM;UAAQC,SAAS;YAACC,iBAAiBZ,MAAAA;;QAAS,CAAA,CAAA;MACpG;IACF,GACA;MAACT;MAAqBF;KAAS;AAGjC,WACE,sBAAA,cAACwB,OAAAA;MAAIC,MAAK;MAAOC,WAAWC,GAAGC,kBAAAA;OAC5BpC,UAAUqC,SAAS,KAClB,sBAAA,cAACC,KAAKC,MAAI;MAAeC,OAAOxC;MAAWyC,QAAQC,OAAOC,GAAGvC,YAAAA;MAAewC,OAAO,CAAC9B,SAASA,KAAKI;OAC/F,CAAC,EAAEsB,MAAK,MACP,sBAAA,cAACR,OAAAA;MAAIC,MAAK;MAAOC,WAAU;OACxBM,OAAO3B,IAAI,CAACC,SACX,sBAAA,cAACwB,KAAKO,MAAI;MACRC,KAAKhC,KAAKI;MACV6B,MAAMjC;MACNkC,YAAYb,GAAGzC,MAAMuD,YAAY,gBAAgB,SAAS,eAAA;OAE1D,sBAAA,cAACjB,OAAAA;MAAIE,WAAU;OACb,sBAAA,cAACI,KAAKY,WAAS;MAACF,YAAW;OAAYlC,KAAKU,IAAI,GAC/CF,cAAcR,IAAAA,KACb,sBAAA,cAACkB,OAAAA;MAAIE,WAAU;OAAqCZ,cAAcR,IAAAA,CAAAA,CAAAA,GAGrEJ,oBAAoBI,KAAKI,EAAE,KAC1B,sBAAA,cAACiC,QAAAA;MAAOC,SAAS,MAAM3B,iBAAiBX,IAAAA;OAAQjB,EAAE,oCAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAS/DG,UAAUqC,WAAW,KAAK,sBAAA,cAACL,OAAAA;MAAIE,WAAU;OAAmCrC,EAAE,oBAAA,CAAA,CAAA;;;;AAGrF;;;ACzFA,IAAA,yBAAewD;",
6
- "names": ["Schema", "React", "useCallback", "useMemo", "createIntent", "LayoutAction", "useIntentDispatcher", "FunctionType", "ScriptType", "Filter", "fullyQualifiedId", "useQuery", "Button", "useTranslation", "controlItemClasses", "List", "ghostHover", "mx", "grid", "FunctionsPanel", "space", "t", "useTranslation", "AUTOMATION_PLUGIN", "functions", "useQuery", "Filter", "type", "FunctionType", "scripts", "ScriptType", "dispatchPromise", "dispatch", "useIntentDispatcher", "functionToScriptMap", "useMemo", "reduce", "map", "func", "scriptId", "source", "target", "id", "script", "find", "s", "getScriptName", "useCallback", "name", "handleGoToScript", "createIntent", "LayoutAction", "Open", "part", "subject", "fullyQualifiedId", "div", "role", "className", "mx", "controlItemClasses", "length", "List", "Root", "items", "isItem", "Schema", "is", "getId", "Item", "key", "item", "classNames", "ghostHover", "ItemTitle", "Button", "onClick", "FunctionsPanel"]
7
- }
@@ -1,102 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationContainer,
4
- AutomationPanel,
5
- FunctionsContainer,
6
- FunctionsPanel
7
- } from "./chunk-SGZPTJ47.mjs";
8
- import {
9
- TriggerEditor
10
- } from "./chunk-AZH66CED.mjs";
11
- import {
12
- AUTOMATION_PLUGIN,
13
- meta
14
- } from "./chunk-NK5N3QKD.mjs";
15
-
16
- // src/AutomationPlugin.tsx
17
- import { Capabilities, contributes, defineModule, definePlugin, Events } from "@dxos/app-framework";
18
- import { FunctionType, FunctionTrigger } from "@dxos/functions";
19
- import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
20
-
21
- // src/capabilities/index.ts
22
- import { lazy } from "@dxos/app-framework";
23
- var AppGraphBuilder = lazy(() => import("./app-graph-builder-3FP63ZSG.mjs"));
24
- var IntentResolver = lazy(() => import("./intent-resolver-3QWXEBPX.mjs"));
25
- var ReactSurface = lazy(() => import("./react-surface-3PNW7NDW.mjs"));
26
-
27
- // src/translations.ts
28
- var translations = [
29
- {
30
- "en-US": {
31
- [meta.id]: {
32
- "plugin name": "Automation",
33
- "automation panel label": "Automations",
34
- "script automation label": "Automation",
35
- "automation verbose label": "Manage automations",
36
- "automation description": "You can manage all the triggers which automate your space here.",
37
- "functions panel label": "Functions",
38
- "functions verbose label": "Manage deployed functions",
39
- "functions description": "You can manage all the functions deployed from your space on EDGE here.",
40
- "function copy id": "Copy Function ID",
41
- "no functions found": "No functions found",
42
- "go to function source button label": "Show function source",
43
- "trigger editor title": "Configure Trigger",
44
- "new trigger label": "Add Trigger",
45
- "trigger type timer": "Timer",
46
- "trigger type webhook": "Webhook",
47
- "trigger type websocket": "Websocket",
48
- "trigger type subscription": "Subscription",
49
- "trigger type email": "Email",
50
- "trigger type queue": "Queue",
51
- "trigger copy url": "Copy URL",
52
- "trigger copy email": "Copy Email",
53
- "trigger payload add": "Add",
54
- "trigger payload remove": "Remove",
55
- "trigger payload prop name placeholder": "New payload property name"
56
- }
57
- }
58
- }
59
- ];
60
-
61
- // src/AutomationPlugin.tsx
62
- var AutomationPlugin = () => definePlugin(meta, [
63
- defineModule({
64
- id: `${meta.id}/module/translations`,
65
- activatesOn: Events.SetupTranslations,
66
- activate: () => contributes(Capabilities.Translations, translations)
67
- }),
68
- defineModule({
69
- id: `${meta.id}/module/schema`,
70
- activatesOn: ClientEvents.SetupSchema,
71
- activate: () => contributes(ClientCapabilities.Schema, [
72
- FunctionType,
73
- FunctionTrigger
74
- ])
75
- }),
76
- defineModule({
77
- id: `${meta.id}/module/app-graph-builder`,
78
- activatesOn: Events.SetupAppGraph,
79
- activate: AppGraphBuilder
80
- }),
81
- defineModule({
82
- id: `${meta.id}/module/intent-resolver`,
83
- activatesOn: Events.SetupIntentResolver,
84
- activate: IntentResolver
85
- }),
86
- defineModule({
87
- id: `${meta.id}/module/react-surface`,
88
- activatesOn: Events.SetupReactSurface,
89
- activate: ReactSurface
90
- })
91
- ]);
92
- export {
93
- AUTOMATION_PLUGIN,
94
- AutomationContainer,
95
- AutomationPanel,
96
- AutomationPlugin,
97
- FunctionsContainer,
98
- FunctionsPanel,
99
- TriggerEditor,
100
- meta
101
- };
102
- //# sourceMappingURL=index.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/AutomationPlugin.tsx", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { FunctionType, FunctionTrigger } from '@dxos/functions';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\n\nimport { AppGraphBuilder, IntentResolver, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\n\nexport const AutomationPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [FunctionType, FunctionTrigger]),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = lazy(() => import('./app-graph-builder'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from './meta';\n\nexport const translations = [\n {\n 'en-US': {\n [meta.id]: {\n 'plugin name': 'Automation',\n 'automation panel label': 'Automations',\n 'script automation label': 'Automation',\n 'automation verbose label': 'Manage automations',\n 'automation description': 'You can manage all the triggers which automate your space here.',\n\n 'functions panel label': 'Functions',\n 'functions verbose label': 'Manage deployed functions',\n 'functions description': 'You can manage all the functions deployed from your space on EDGE here.',\n 'function copy id': 'Copy Function ID',\n 'no functions found': 'No functions found',\n 'go to function source button label': 'Show function source',\n\n 'trigger editor title': 'Configure Trigger',\n 'new trigger label': 'Add Trigger',\n 'trigger type timer': 'Timer',\n 'trigger type webhook': 'Webhook',\n 'trigger type websocket': 'Websocket',\n 'trigger type subscription': 'Subscription',\n 'trigger type email': 'Email',\n 'trigger type queue': 'Queue',\n\n 'trigger copy url': 'Copy URL',\n 'trigger copy email': 'Copy Email',\n\n 'trigger payload add': 'Add',\n 'trigger payload remove': 'Remove',\n 'trigger payload prop name placeholder': 'New payload property name',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,cAAcC,cAAcC,cAAc;AAC9E,SAASC,cAAcC,uBAAuB;AAC9C,SAASC,oBAAoBC,oBAAoB;;;ACFjD,SAASC,YAAY;AAEd,IAAMC,kBAAkBC,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC1C,IAAMC,iBAAiBD,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAME,eAAeF,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACAvC,IAAMG,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;QACf,0BAA0B;QAC1B,2BAA2B;QAC3B,4BAA4B;QAC5B,0BAA0B;QAE1B,yBAAyB;QACzB,2BAA2B;QAC3B,yBAAyB;QACzB,oBAAoB;QACpB,sBAAsB;QACtB,sCAAsC;QAEtC,wBAAwB;QACxB,qBAAqB;QACrB,sBAAsB;QACtB,wBAAwB;QACxB,0BAA0B;QAC1B,6BAA6B;QAC7B,sBAAsB;QACtB,sBAAsB;QAEtB,oBAAoB;QACpB,sBAAsB;QAEtB,uBAAuB;QACvB,0BAA0B;QAC1B,yCAAyC;MAC3C;IACF;EACF;;;;AF9BK,IAAMC,mBAAmB,MAC9BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,YAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaQ,aAAaC;IAC1BN,UAAU,MAAMC,YAAYM,mBAAmBC,QAAQ;MAACC;MAAcC;KAAgB;EACxF,CAAA;EACAf,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOa;IACpBX,UAAUY;EACZ,CAAA;EACAjB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOe;IACpBb,UAAUc;EACZ,CAAA;EACAnB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOiB;IACpBf,UAAUgB;EACZ,CAAA;CACD;",
6
- "names": ["Capabilities", "contributes", "defineModule", "definePlugin", "Events", "FunctionType", "FunctionTrigger", "ClientCapabilities", "ClientEvents", "lazy", "AppGraphBuilder", "lazy", "IntentResolver", "ReactSurface", "translations", "meta", "id", "AutomationPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "ClientEvents", "SetupSchema", "ClientCapabilities", "Schema", "FunctionType", "FunctionTrigger", "SetupAppGraph", "AppGraphBuilder", "SetupIntentResolver", "IntentResolver", "SetupReactSurface", "ReactSurface"]
7
- }
@@ -1,77 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationAction
4
- } from "./chunk-OEZNHUL2.mjs";
5
- import "./chunk-NK5N3QKD.mjs";
6
-
7
- // src/capabilities/intent-resolver.ts
8
- import { contributes, Capabilities, createResolver, createIntent, LayoutAction } from "@dxos/app-framework";
9
- import { Obj, Ref } from "@dxos/echo";
10
- import { FunctionTrigger, FunctionType, ScriptType, TriggerKind } from "@dxos/functions";
11
- import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
12
- import { SpaceAction } from "@dxos/plugin-space/types";
13
- import { Filter } from "@dxos/react-client/echo";
14
- var intent_resolver_default = (context) => contributes(Capabilities.IntentResolver, [
15
- createResolver({
16
- intent: AutomationAction.CreateTriggerFromTemplate,
17
- resolve: async ({ space, template, enabled = false, scriptName, input }) => {
18
- const trigger = Obj.make(FunctionTrigger, {
19
- enabled,
20
- input
21
- });
22
- if (scriptName) {
23
- const { objects: [script] } = await space.db.query(Filter.type(ScriptType, {
24
- name: scriptName
25
- })).run();
26
- if (script) {
27
- const { objects: [fn] } = await space.db.query(Filter.type(FunctionType, {
28
- source: Ref.make(script)
29
- })).run();
30
- if (fn) {
31
- trigger.function = Ref.make(fn);
32
- }
33
- }
34
- }
35
- switch (template.type) {
36
- case "timer": {
37
- trigger.spec = {
38
- kind: TriggerKind.Timer,
39
- cron: template.cron
40
- };
41
- break;
42
- }
43
- case "queue": {
44
- trigger.spec = {
45
- kind: TriggerKind.Queue,
46
- queue: template.queueDXN.toString()
47
- };
48
- break;
49
- }
50
- default: {
51
- break;
52
- }
53
- }
54
- return {
55
- intents: [
56
- createIntent(SpaceAction.AddObject, {
57
- object: trigger,
58
- target: space
59
- }),
60
- createIntent(LayoutAction.Open, {
61
- part: "main",
62
- subject: [
63
- `automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`
64
- ],
65
- options: {
66
- workspace: space.id
67
- }
68
- })
69
- ]
70
- };
71
- }
72
- })
73
- ]);
74
- export {
75
- intent_resolver_default as default
76
- };
77
- //# sourceMappingURL=intent-resolver-3QWXEBPX.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n contributes,\n Capabilities,\n createResolver,\n type PluginContext,\n createIntent,\n LayoutAction,\n} from '@dxos/app-framework';\nimport { Obj, Ref } from '@dxos/echo';\nimport { FunctionTrigger, FunctionType, ScriptType, TriggerKind } from '@dxos/functions';\nimport { type DXN } from '@dxos/keys';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter } from '@dxos/react-client/echo';\n\nimport { AutomationAction } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: AutomationAction.CreateTriggerFromTemplate,\n resolve: async ({ space, template, enabled = false, scriptName, input }) => {\n const trigger = Obj.make(FunctionTrigger, { enabled, input });\n\n // TODO(wittjosiah): Factor out function lookup by script name?\n if (scriptName) {\n const {\n objects: [script],\n } = await space.db.query(Filter.type(ScriptType, { name: scriptName })).run();\n if (script) {\n const {\n objects: [fn],\n } = await space.db.query(Filter.type(FunctionType, { source: Ref.make(script) })).run();\n if (fn) {\n trigger.function = Ref.make(fn);\n }\n }\n }\n\n switch (template.type) {\n case 'timer': {\n trigger.spec = { kind: TriggerKind.Timer, cron: template.cron };\n break;\n }\n case 'queue': {\n trigger.spec = { kind: TriggerKind.Queue, queue: (template.queueDXN as DXN).toString() };\n break;\n }\n default: {\n break;\n }\n }\n\n return {\n intents: [\n createIntent(SpaceAction.AddObject, { object: trigger, target: space }),\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: [`automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`],\n options: {\n workspace: space.id,\n },\n }),\n ],\n };\n },\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;AAIA,SACEA,aACAC,cACAC,gBAEAC,cACAC,oBACK;AACP,SAASC,KAAKC,WAAW;AACzB,SAASC,iBAAiBC,cAAcC,YAAYC,mBAAmB;AAEvE,SAASC,iCAAiC;AAC1C,SAASC,mBAAmB;AAC5B,SAASC,cAAc;AAIvB,IAAA,0BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,iBAAiBC;IACzBC,SAAS,OAAO,EAAEC,OAAOC,UAAUC,UAAU,OAAOC,YAAYC,MAAK,MAAE;AACrE,YAAMC,UAAUC,IAAIC,KAAKC,iBAAiB;QAAEN;QAASE;MAAM,CAAA;AAG3D,UAAID,YAAY;AACd,cAAM,EACJM,SAAS,CAACC,MAAAA,EAAO,IACf,MAAMV,MAAMW,GAAGC,MAAMC,OAAOC,KAAKC,YAAY;UAAEC,MAAMb;QAAW,CAAA,CAAA,EAAIc,IAAG;AAC3E,YAAIP,QAAQ;AACV,gBAAM,EACJD,SAAS,CAACS,EAAAA,EAAG,IACX,MAAMlB,MAAMW,GAAGC,MAAMC,OAAOC,KAAKK,cAAc;YAAEC,QAAQC,IAAId,KAAKG,MAAAA;UAAQ,CAAA,CAAA,EAAIO,IAAG;AACrF,cAAIC,IAAI;AACNb,oBAAQiB,WAAWD,IAAId,KAAKW,EAAAA;UAC9B;QACF;MACF;AAEA,cAAQjB,SAASa,MAAI;QACnB,KAAK,SAAS;AACZT,kBAAQkB,OAAO;YAAEC,MAAMC,YAAYC;YAAOC,MAAM1B,SAAS0B;UAAK;AAC9D;QACF;QACA,KAAK,SAAS;AACZtB,kBAAQkB,OAAO;YAAEC,MAAMC,YAAYG;YAAOC,OAAQ5B,SAAS6B,SAAiBC,SAAQ;UAAG;AACvF;QACF;QACA,SAAS;AACP;QACF;MACF;AAEA,aAAO;QACLC,SAAS;UACPC,aAAaC,YAAYC,WAAW;YAAEC,QAAQ/B;YAASgC,QAAQrC;UAAM,CAAA;UACrEiC,aAAaK,aAAaC,MAAM;YAC9BC,MAAM;YACNC,SAAS;cAAC,sBAAsBC,yBAAAA,GAA4B1C,MAAM2C,EAAE;;YACpEC,SAAS;cACPC,WAAW7C,MAAM2C;YACnB;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;CACD;",
6
- "names": ["contributes", "Capabilities", "createResolver", "createIntent", "LayoutAction", "Obj", "Ref", "FunctionTrigger", "FunctionType", "ScriptType", "TriggerKind", "ATTENDABLE_PATH_SEPARATOR", "SpaceAction", "Filter", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "AutomationAction", "CreateTriggerFromTemplate", "resolve", "space", "template", "enabled", "scriptName", "input", "trigger", "Obj", "make", "FunctionTrigger", "objects", "script", "db", "query", "Filter", "type", "ScriptType", "name", "run", "fn", "FunctionType", "source", "Ref", "function", "spec", "kind", "TriggerKind", "Timer", "cron", "Queue", "queue", "queueDXN", "toString", "intents", "createIntent", "SpaceAction", "AddObject", "object", "target", "LayoutAction", "Open", "part", "subject", "ATTENDABLE_PATH_SEPARATOR", "id", "options", "workspace"]
7
- }
@@ -1 +0,0 @@
1
- {"inputs":{"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytes":8587,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/meta.ts":{"bytes":1682,"imports":[],"format":"esm"},"src/components/TriggerEditor/SpecSelector.tsx":{"bytes":7355,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/TriggerEditor/TriggerEditor.tsx":{"bytes":12329,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/FunctionInputEditor.tsx","kind":"import-statement","original":"./FunctionInputEditor"},{"path":"src/components/TriggerEditor/SpecSelector.tsx","kind":"import-statement","original":"./SpecSelector"}],"format":"esm"},"src/components/TriggerEditor/index.ts":{"bytes":503,"imports":[{"path":"src/components/TriggerEditor/TriggerEditor.tsx","kind":"import-statement","original":"./TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/AutomationPanel.tsx":{"bytes":21282,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"../TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/index.ts":{"bytes":800,"imports":[{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"},{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"}],"format":"esm"},"src/components/AutomationContainer.tsx":{"bytes":3610,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"src/components/AutomationPanel/index.ts","kind":"import-statement","original":"./AutomationPanel"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytes":12138,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/FunctionsPanel/index.ts":{"bytes":783,"imports":[{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"},{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"}],"format":"esm"},"src/components/FunctionsContainer.tsx":{"bytes":3693,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"src/components/FunctionsPanel/index.ts","kind":"import-statement","original":"./FunctionsPanel"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/index.ts":{"bytes":1687,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"./TriggerEditor"},{"path":"src/components/AutomationContainer.tsx","kind":"dynamic-import","original":"./AutomationContainer"},{"path":"src/components/AutomationPanel/index.ts","kind":"dynamic-import","original":"./AutomationPanel"},{"path":"src/components/FunctionsContainer.tsx","kind":"dynamic-import","original":"./FunctionsContainer"},{"path":"src/components/FunctionsPanel/index.ts","kind":"dynamic-import","original":"./FunctionsPanel"}],"format":"esm"},"src/capabilities/app-graph-builder.ts":{"bytes":11375,"imports":[{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/schema.ts":{"bytes":4024,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/index.ts":{"bytes":465,"imports":[{"path":"src/types/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/capabilities/intent-resolver.ts":{"bytes":9269,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":7273,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1304,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/translations.ts":{"bytes":4690,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/AutomationPlugin.tsx":{"bytes":5379,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"src/index.ts":{"bytes":659,"imports":[{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/AutomationPlugin.tsx","kind":"import-statement","original":"./AutomationPlugin"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/react-surface-3PNW7NDW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3605},"dist/lib/node-esm/react-surface-3PNW7NDW.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-SGZPTJ47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-AZH66CED.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":1702}},"bytes":2094},"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5275},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-SGZPTJ47.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-AZH66CED.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/react-surface-3PNW7NDW.mjs","kind":"dynamic-import"}],"exports":["AUTOMATION_PLUGIN","AutomationContainer","AutomationPanel","AutomationPlugin","FunctionsContainer","FunctionsPanel","TriggerEditor","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/AutomationPlugin.tsx":{"bytesInOutput":1101},"src/capabilities/index.ts":{"bytesInOutput":268},"src/translations.ts":{"bytesInOutput":1362}},"bytes":3374},"dist/lib/node-esm/chunk-SGZPTJ47.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":838},"dist/lib/node-esm/chunk-SGZPTJ47.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/AutomationPanel-YYUMSK2W.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/FunctionsPanel-KGIOZSPZ.mjs","kind":"dynamic-import"}],"exports":["AutomationContainer","AutomationPanel","FunctionsContainer","FunctionsPanel"],"inputs":{"src/components/index.ts":{"bytesInOutput":346}},"bytes":604},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-OEZNHUL2.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"}],"exports":["AutomationAction"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":250},"dist/lib/node-esm/AutomationPanel-YYUMSK2W.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/AutomationPanel-YYUMSK2W.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HIMYPGHF.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-AZH66CED.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"}],"exports":["AutomationPanel","default"],"entryPoint":"src/components/AutomationPanel/index.ts","inputs":{},"bytes":361},"dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1783},"dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HIMYPGHF.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-AZH66CED.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["AutomationContainer","default"],"entryPoint":"src/components/AutomationContainer.tsx","inputs":{"src/components/AutomationContainer.tsx":{"bytesInOutput":968}},"bytes":1386},"dist/lib/node-esm/chunk-HIMYPGHF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11703},"dist/lib/node-esm/chunk-HIMYPGHF.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-AZH66CED.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["AutomationPanel","AutomationPanel_default"],"inputs":{"src/components/AutomationPanel/AutomationPanel.tsx":{"bytesInOutput":5288},"src/components/AutomationPanel/index.ts":{"bytesInOutput":47}},"bytes":5744},"dist/lib/node-esm/chunk-AZH66CED.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14380},"dist/lib/node-esm/chunk-AZH66CED.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["TriggerEditor"],"inputs":{"src/components/TriggerEditor/TriggerEditor.tsx":{"bytesInOutput":2929},"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytesInOutput":2203},"src/components/TriggerEditor/SpecSelector.tsx":{"bytesInOutput":1877},"src/components/TriggerEditor/index.ts":{"bytesInOutput":0}},"bytes":7443},"dist/lib/node-esm/FunctionsPanel-KGIOZSPZ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/FunctionsPanel-KGIOZSPZ.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZGPUV5VS.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"}],"exports":["FunctionsPanel","default"],"entryPoint":"src/components/FunctionsPanel/index.ts","inputs":{},"bytes":325},"dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1793},"dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZGPUV5VS.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["FunctionsContainer","default"],"entryPoint":"src/components/FunctionsContainer.tsx","inputs":{"src/components/FunctionsContainer.tsx":{"bytesInOutput":980}},"bytes":1362},"dist/lib/node-esm/chunk-ZGPUV5VS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6640},"dist/lib/node-esm/chunk-ZGPUV5VS.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["FunctionsPanel","FunctionsPanel_default"],"inputs":{"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytesInOutput":3203},"src/components/FunctionsPanel/index.ts":{"bytesInOutput":45}},"bytes":3596},"dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5344},"dist/lib/node-esm/app-graph-builder-3FP63ZSG.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder.ts":{"bytesInOutput":2525}},"bytes":2813},"dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4510},"dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-OEZNHUL2.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/intent-resolver.ts","inputs":{"src/capabilities/intent-resolver.ts":{"bytesInOutput":2035}},"bytes":2360},"dist/lib/node-esm/chunk-OEZNHUL2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2059},"dist/lib/node-esm/chunk-OEZNHUL2.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-NK5N3QKD.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["AutomationAction"],"inputs":{"src/types/schema.ts":{"bytesInOutput":963},"src/types/index.ts":{"bytesInOutput":0}},"bytes":1202},"dist/lib/node-esm/chunk-NK5N3QKD.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":816},"dist/lib/node-esm/chunk-NK5N3QKD.mjs":{"imports":[],"exports":["AUTOMATION_PLUGIN","meta"],"inputs":{"src/meta.ts":{"bytesInOutput":382}},"bytes":575}}}
@@ -1,65 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationContainer,
4
- FunctionsContainer
5
- } from "./chunk-SGZPTJ47.mjs";
6
- import "./chunk-AZH66CED.mjs";
7
- import {
8
- meta
9
- } from "./chunk-NK5N3QKD.mjs";
10
-
11
- // src/capabilities/react-surface.tsx
12
- import React from "react";
13
- import { Capabilities, contributes, createSurface, useLayout } from "@dxos/app-framework";
14
- import { Obj } from "@dxos/echo";
15
- import { ScriptType } from "@dxos/functions";
16
- import { getSpace, parseId, useSpace } from "@dxos/react-client/echo";
17
- var react_surface_default = () => contributes(Capabilities.ReactSurface, [
18
- createSurface({
19
- id: `${meta.id}/space-settings-automation`,
20
- role: "article",
21
- filter: (data) => data.subject === `${meta.id}/space-settings-automation`,
22
- component: () => {
23
- const layout = useLayout();
24
- const { spaceId } = parseId(layout.workspace);
25
- const space = useSpace(spaceId);
26
- if (!space || !spaceId) {
27
- return null;
28
- }
29
- return /* @__PURE__ */ React.createElement(AutomationContainer, {
30
- space
31
- });
32
- }
33
- }),
34
- createSurface({
35
- id: `${meta.id}/space-settings-functions`,
36
- role: "article",
37
- filter: (data) => data.subject === `${meta.id}/space-settings-functions`,
38
- component: () => {
39
- const layout = useLayout();
40
- const { spaceId } = parseId(layout.workspace);
41
- const space = useSpace(spaceId);
42
- if (!space || !spaceId) {
43
- return null;
44
- }
45
- return /* @__PURE__ */ React.createElement(FunctionsContainer, {
46
- space
47
- });
48
- }
49
- }),
50
- createSurface({
51
- id: `${meta.id}/companion/automation`,
52
- role: "article",
53
- filter: (data) => Obj.instanceOf(ScriptType, data.companionTo) && data.subject === "automation",
54
- component: ({ data, role }) => {
55
- return /* @__PURE__ */ React.createElement(AutomationContainer, {
56
- space: getSpace(data.companionTo),
57
- object: data.companionTo
58
- });
59
- }
60
- })
61
- ]);
62
- export {
63
- react_surface_default as default
64
- };
65
- //# sourceMappingURL=react-surface-3PNW7NDW.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface, useLayout } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { ScriptType } from '@dxos/functions';\nimport { getSpace, parseId, useSpace } from '@dxos/react-client/echo';\n\nimport { AutomationContainer, FunctionsContainer } from '../components';\nimport { meta } from '../meta';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/space-settings-automation`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/space-settings-automation`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <AutomationContainer space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/space-settings-functions`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/space-settings-functions`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <FunctionsContainer space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/companion/automation`,\n role: 'article',\n filter: (data): data is { companionTo: ScriptType; subject: 'automation' } =>\n Obj.instanceOf(ScriptType, data.companionTo) && data.subject === 'automation',\n component: ({ data, role }) => {\n return <AutomationContainer space={getSpace(data.companionTo)!} object={data.companionTo} />;\n },\n }),\n ]);\n"],
5
- "mappings": ";;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,eAAeC,iBAAiB;AACpE,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,UAAUC,SAASC,gBAAgB;AAK5C,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAsCA,KAAKC,YAAY,GAAGJ,KAAKD,EAAE;IAC1EM,WAAW,MAAA;AACT,YAAMC,SAASC,UAAAA;AACf,YAAM,EAAEC,QAAO,IAAKC,QAAQH,OAAOI,SAAS;AAC5C,YAAMC,QAAQC,SAASJ,OAAAA;AACvB,UAAI,CAACG,SAAS,CAACH,SAAS;AACtB,eAAO;MACT;AAEA,aAAO,sBAAA,cAACK,qBAAAA;QAAoBF;;IAC9B;EACF,CAAA;EACAb,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SAAsCA,KAAKC,YAAY,GAAGJ,KAAKD,EAAE;IAC1EM,WAAW,MAAA;AACT,YAAMC,SAASC,UAAAA;AACf,YAAM,EAAEC,QAAO,IAAKC,QAAQH,OAAOI,SAAS;AAC5C,YAAMC,QAAQC,SAASJ,OAAAA;AACvB,UAAI,CAACG,SAAS,CAACH,SAAS;AACtB,eAAO;MACT;AAEA,aAAO,sBAAA,cAACM,oBAAAA;QAAmBH;;IAC7B;EACF,CAAA;EACAb,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SACPY,IAAIC,WAAWC,YAAYd,KAAKe,WAAW,KAAKf,KAAKC,YAAY;IACnEC,WAAW,CAAC,EAAEF,MAAMF,KAAI,MAAE;AACxB,aAAO,sBAAA,cAACY,qBAAAA;QAAoBF,OAAOQ,SAAShB,KAAKe,WAAW;QAAIE,QAAQjB,KAAKe;;IAC/E;EACF,CAAA;CACD;",
6
- "names": ["React", "Capabilities", "contributes", "createSurface", "useLayout", "Obj", "ScriptType", "getSpace", "parseId", "useSpace", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "subject", "component", "layout", "useLayout", "spaceId", "parseId", "workspace", "space", "useSpace", "AutomationContainer", "FunctionsContainer", "Obj", "instanceOf", "ScriptType", "companionTo", "getSpace", "object"]
7
- }
@@ -1,9 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- AutomationAction
4
- } from "../chunk-OEZNHUL2.mjs";
5
- import "../chunk-NK5N3QKD.mjs";
6
- export {
7
- AutomationAction
8
- };
9
- //# sourceMappingURL=index.mjs.map
@@ -1,4 +0,0 @@
1
- import { Capabilities, type PluginContext } from '@dxos/app-framework';
2
- declare const _default: (context: PluginContext) => import("@dxos/app-framework").Capability<Capabilities.IntentResolver>;
3
- export default _default;
4
- //# sourceMappingURL=intent-resolver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,YAAY,EAEZ,KAAK,aAAa,EAGnB,MAAM,qBAAqB,CAAC;yBAUb,SAAS,aAAa;AAAtC,wBAkDK"}
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import { type AutomationPanelProps } from './AutomationPanel';
3
- export declare const AutomationContainer: (props: AutomationPanelProps) => React.JSX.Element;
4
- export default AutomationContainer;
5
- //# sourceMappingURL=AutomationContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AutomationContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/AutomationContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG/E,eAAO,MAAM,mBAAmB,GAAI,OAAO,oBAAoB,sBAc9D,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type Space } from '@dxos/react-client/echo';
3
- export declare const FunctionsContainer: ({ space }: {
4
- space: Space;
5
- }) => React.JSX.Element;
6
- export default FunctionsContainer;
7
- //# sourceMappingURL=FunctionsContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionsContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/FunctionsContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAQrD,eAAO,MAAM,kBAAkB,GAAI,WAAW;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE,sBAc7D,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1,72 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import {
6
- contributes,
7
- Capabilities,
8
- createResolver,
9
- type PluginContext,
10
- createIntent,
11
- LayoutAction,
12
- } from '@dxos/app-framework';
13
- import { Obj, Ref } from '@dxos/echo';
14
- import { FunctionTrigger, FunctionType, ScriptType, TriggerKind } from '@dxos/functions';
15
- import { type DXN } from '@dxos/keys';
16
- import { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';
17
- import { SpaceAction } from '@dxos/plugin-space/types';
18
- import { Filter } from '@dxos/react-client/echo';
19
-
20
- import { AutomationAction } from '../types';
21
-
22
- export default (context: PluginContext) =>
23
- contributes(Capabilities.IntentResolver, [
24
- createResolver({
25
- intent: AutomationAction.CreateTriggerFromTemplate,
26
- resolve: async ({ space, template, enabled = false, scriptName, input }) => {
27
- const trigger = Obj.make(FunctionTrigger, { enabled, input });
28
-
29
- // TODO(wittjosiah): Factor out function lookup by script name?
30
- if (scriptName) {
31
- const {
32
- objects: [script],
33
- } = await space.db.query(Filter.type(ScriptType, { name: scriptName })).run();
34
- if (script) {
35
- const {
36
- objects: [fn],
37
- } = await space.db.query(Filter.type(FunctionType, { source: Ref.make(script) })).run();
38
- if (fn) {
39
- trigger.function = Ref.make(fn);
40
- }
41
- }
42
- }
43
-
44
- switch (template.type) {
45
- case 'timer': {
46
- trigger.spec = { kind: TriggerKind.Timer, cron: template.cron };
47
- break;
48
- }
49
- case 'queue': {
50
- trigger.spec = { kind: TriggerKind.Queue, queue: (template.queueDXN as DXN).toString() };
51
- break;
52
- }
53
- default: {
54
- break;
55
- }
56
- }
57
-
58
- return {
59
- intents: [
60
- createIntent(SpaceAction.AddObject, { object: trigger, target: space }),
61
- createIntent(LayoutAction.Open, {
62
- part: 'main',
63
- subject: [`automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`],
64
- options: {
65
- workspace: space.id,
66
- },
67
- }),
68
- ],
69
- };
70
- },
71
- }),
72
- ]);
@@ -1,30 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { useTranslation } from '@dxos/react-ui';
8
- import { ControlSection, ControlPage } from '@dxos/react-ui-form';
9
- import { StackItem } from '@dxos/react-ui-stack';
10
-
11
- import { AutomationPanel, type AutomationPanelProps } from './AutomationPanel';
12
- import { AUTOMATION_PLUGIN } from '../meta';
13
-
14
- export const AutomationContainer = (props: AutomationPanelProps) => {
15
- const { t } = useTranslation(AUTOMATION_PLUGIN);
16
- return (
17
- <StackItem.Content classNames='block overflow-y-auto'>
18
- <ControlPage>
19
- <ControlSection
20
- title={t('automation verbose label', { ns: AUTOMATION_PLUGIN })}
21
- description={t('automation description', { ns: AUTOMATION_PLUGIN })}
22
- >
23
- <AutomationPanel {...props} />
24
- </ControlSection>
25
- </ControlPage>
26
- </StackItem.Content>
27
- );
28
- };
29
-
30
- export default AutomationContainer;
@@ -1,31 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import React from 'react';
6
-
7
- import { type Space } from '@dxos/react-client/echo';
8
- import { useTranslation } from '@dxos/react-ui';
9
- import { ControlPage, ControlSection } from '@dxos/react-ui-form';
10
- import { StackItem } from '@dxos/react-ui-stack';
11
-
12
- import { FunctionsPanel } from './FunctionsPanel';
13
- import { AUTOMATION_PLUGIN } from '../meta';
14
-
15
- export const FunctionsContainer = ({ space }: { space: Space }) => {
16
- const { t } = useTranslation(AUTOMATION_PLUGIN);
17
- return (
18
- <StackItem.Content classNames='block overflow-y-auto'>
19
- <ControlPage>
20
- <ControlSection
21
- title={t('functions verbose label', { ns: AUTOMATION_PLUGIN })}
22
- description={t('functions description', { ns: AUTOMATION_PLUGIN })}
23
- >
24
- <FunctionsPanel space={space} />
25
- </ControlSection>
26
- </ControlPage>
27
- </StackItem.Content>
28
- );
29
- };
30
-
31
- export default FunctionsContainer;