@dxos/plugin-automation 0.8.4-main.3eb6e50203 → 0.8.4-main.3fbcb4aa9b
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.
- package/dist/lib/neutral/AutomationPanel-64U7W3SJ.mjs +11 -0
- package/dist/lib/neutral/AutomationPlugin.mjs +38 -0
- package/dist/lib/neutral/AutomationPlugin.mjs.map +7 -0
- package/dist/lib/{browser/cli/index.mjs → neutral/AutomationPlugin.node.mjs} +138 -133
- package/dist/lib/neutral/AutomationPlugin.node.mjs.map +7 -0
- package/dist/lib/neutral/AutomationSettings-NNL2AVNT.mjs +31 -0
- package/dist/lib/neutral/AutomationSettings-NNL2AVNT.mjs.map +7 -0
- package/dist/lib/neutral/FunctionsContainer-CU2FVKZF.mjs +38 -0
- package/dist/lib/neutral/FunctionsContainer-CU2FVKZF.mjs.map +7 -0
- package/dist/lib/{browser/chunk-QNEQ23BF.mjs → neutral/FunctionsPanel-GLCUBEDT.mjs} +23 -25
- package/dist/lib/neutral/FunctionsPanel-GLCUBEDT.mjs.map +7 -0
- package/dist/lib/{browser/FunctionsContainer-5NHAAP5H.mjs → neutral/FunctionsRegistry-VRU4FBVH.mjs} +23 -54
- package/dist/lib/neutral/FunctionsRegistry-VRU4FBVH.mjs.map +7 -0
- package/dist/lib/neutral/TriggerSettings-XCHIZPOR.mjs +9 -0
- package/dist/lib/neutral/app-graph-builder-GDCGRYEP.mjs +75 -0
- package/dist/lib/neutral/app-graph-builder-GDCGRYEP.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +15 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/node.mjs +13 -0
- package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
- package/dist/lib/neutral/chunk-2JP77CMN.mjs +42 -0
- package/dist/lib/neutral/chunk-2JP77CMN.mjs.map +7 -0
- package/dist/lib/{browser/chunk-PZNBEKO5.mjs → neutral/chunk-ATECY555.mjs} +7 -4
- package/dist/lib/{browser/chunk-PZNBEKO5.mjs.map → neutral/chunk-ATECY555.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-DSCOLDT5.mjs +93 -0
- package/dist/lib/neutral/chunk-DSCOLDT5.mjs.map +7 -0
- package/dist/lib/{browser/chunk-C273ZYLE.mjs → neutral/chunk-FKFFU54G.mjs} +53 -41
- package/dist/lib/neutral/chunk-FKFFU54G.mjs.map +7 -0
- package/dist/lib/neutral/chunk-GDNOJOAR.mjs +8 -0
- package/dist/lib/neutral/chunk-GDNOJOAR.mjs.map +7 -0
- package/dist/lib/neutral/chunk-IGGNE2XI.mjs +12 -0
- package/dist/lib/neutral/chunk-IGGNE2XI.mjs.map +7 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/{node-esm/chunk-EJPZWAGR.mjs → neutral/chunk-N735CP33.mjs} +69 -41
- package/dist/lib/neutral/chunk-N735CP33.mjs.map +7 -0
- package/dist/lib/neutral/components/index.mjs +16 -0
- package/dist/lib/neutral/compute-runtime-2Q5MGOR6.mjs +220 -0
- package/dist/lib/neutral/compute-runtime-2Q5MGOR6.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +13 -0
- package/dist/lib/neutral/containers/index.mjs.map +7 -0
- package/dist/lib/neutral/create-trigger-from-template-5FT7O7OU.mjs +69 -0
- package/dist/lib/neutral/create-trigger-from-template-5FT7O7OU.mjs.map +7 -0
- package/dist/lib/neutral/hooks/index.mjs +129 -0
- package/dist/lib/neutral/hooks/index.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +20 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs +13 -0
- package/dist/lib/neutral/operation-handler-YXGYH5W5.mjs.map +7 -0
- package/dist/lib/neutral/operations/index.mjs +8 -0
- package/dist/lib/neutral/plugin.mjs +16 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/neutral/react-surface-3OGMAMKV.mjs +57 -0
- package/dist/lib/neutral/react-surface-3OGMAMKV.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +47 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +16 -0
- package/dist/types/src/AutomationPlugin.d.ts +1 -0
- package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
- package/dist/types/src/{cli/plugin.d.ts → AutomationPlugin.node.d.ts} +2 -1
- package/dist/types/src/AutomationPlugin.node.d.ts.map +1 -0
- package/dist/types/src/AutomationPlugin.test.d.ts +2 -0
- package/dist/types/src/AutomationPlugin.test.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/compute-runtime.d.ts +14 -0
- package/dist/types/src/capabilities/compute-runtime.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +6 -4
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/node.d.ts +6 -0
- package/dist/types/src/capabilities/node.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/commands/index.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/create/index.d.ts +6 -6
- package/dist/types/src/commands/trigger/create/index.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/create/queue.d.ts +1 -1
- package/dist/types/src/commands/trigger/create/queue.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/create/subscription.d.ts +1 -1
- package/dist/types/src/commands/trigger/create/subscription.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/create/timer.d.ts +1 -1
- package/dist/types/src/commands/trigger/create/timer.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/index.d.ts +7 -7
- package/dist/types/src/commands/trigger/index.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/list.d.ts +1 -1
- package/dist/types/src/commands/trigger/list.d.ts.map +1 -0
- package/dist/types/src/commands/trigger/options.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/remove.d.ts +1 -1
- package/dist/types/src/commands/trigger/remove.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/update/index.d.ts +5 -5
- package/dist/types/src/commands/trigger/update/index.d.ts.map +1 -0
- package/dist/types/src/commands/trigger/update/queue.d.ts.map +1 -0
- package/dist/types/src/commands/trigger/update/subscription.d.ts.map +1 -0
- package/dist/types/src/commands/trigger/update/timer.d.ts.map +1 -0
- package/dist/types/src/{cli/commands → commands}/trigger/util.d.ts +4 -4
- package/dist/types/src/commands/trigger/util.d.ts.map +1 -0
- package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +1 -1
- package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
- package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +32 -31
- package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
- package/dist/types/src/components/AutomationPanel/index.d.ts.map +1 -1
- package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
- package/dist/types/src/components/FunctionsPanel/index.d.ts.map +1 -1
- package/dist/types/src/components/FunctionsRegistry/FunctionsRegistry.d.ts.map +1 -1
- package/dist/types/src/components/FunctionsRegistry/index.d.ts +3 -1
- package/dist/types/src/components/FunctionsRegistry/index.d.ts.map +1 -1
- package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts +6 -6
- package/dist/types/src/components/TriggerEditor/FunctionInputEditor.d.ts.map +1 -1
- package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts +4 -4
- package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
- package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +1 -1
- package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
- package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +96 -92
- package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -3
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts +6 -0
- package/dist/types/src/containers/AutomationSettings/AutomationSettings.d.ts.map +1 -0
- package/dist/types/src/containers/AutomationSettings/index.d.ts +2 -0
- package/dist/types/src/containers/AutomationSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts +4 -0
- package/dist/types/src/containers/FunctionsContainer/FunctionsContainer.d.ts.map +1 -0
- package/dist/types/src/containers/FunctionsContainer/index.d.ts +2 -0
- package/dist/types/src/containers/FunctionsContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts +6 -0
- package/dist/types/src/containers/TriggerSettings/TriggerSettings.d.ts.map +1 -0
- package/dist/types/src/containers/TriggerSettings/index.d.ts +3 -0
- package/dist/types/src/containers/TriggerSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +5 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +2 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useComputeRuntime.d.ts +8 -0
- package/dist/types/src/hooks/useComputeRuntime.d.ts.map +1 -0
- package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts +1 -4
- package/dist/types/src/hooks/useComputeRuntimeCallback.d.ts.map +1 -1
- package/dist/types/src/hooks/useComputeRuntimeService.d.ts +17 -0
- package/dist/types/src/hooks/useComputeRuntimeService.d.ts.map +1 -0
- package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts +1 -1
- package/dist/types/src/hooks/useTriggerRuntimeControls.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +0 -3
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/create-trigger-from-template.d.ts +5 -0
- package/dist/types/src/operations/create-trigger-from-template.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +3 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/plugin.d.ts +4 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/testing/test-functions.d.ts +78 -76
- package/dist/types/src/testing/test-functions.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +32 -32
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/AutomationCapabilities.d.ts +22 -0
- package/dist/types/src/types/AutomationCapabilities.d.ts.map +1 -0
- package/dist/types/src/types/AutomationEvents.d.ts +3 -0
- package/dist/types/src/types/AutomationEvents.d.ts.map +1 -0
- package/dist/types/src/types/AutomationOperation.d.ts +19 -0
- package/dist/types/src/types/AutomationOperation.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +3 -2
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +9 -30
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +115 -65
- package/src/AutomationPlugin.node.ts +29 -0
- package/src/AutomationPlugin.test.ts +27 -0
- package/src/AutomationPlugin.tsx +11 -9
- package/src/capabilities/app-graph-builder.ts +66 -0
- package/src/capabilities/compute-runtime.ts +325 -0
- package/src/capabilities/index.ts +10 -4
- package/src/capabilities/node.ts +13 -0
- package/src/capabilities/operation-handler.ts +16 -0
- package/src/capabilities/react-surface.tsx +59 -0
- package/src/{cli/commands → commands}/trigger/create/queue.ts +6 -9
- package/src/{cli/commands → commands}/trigger/create/subscription.ts +10 -13
- package/src/{cli/commands → commands}/trigger/create/timer.ts +6 -9
- package/src/{cli/commands → commands}/trigger/list.ts +7 -4
- package/src/{cli/commands → commands}/trigger/remove.ts +1 -1
- package/src/{cli/commands → commands}/trigger/update/queue.ts +18 -19
- package/src/{cli/commands → commands}/trigger/update/subscription.ts +17 -17
- package/src/{cli/commands → commands}/trigger/update/timer.ts +18 -18
- package/src/{cli/commands → commands}/trigger/util.ts +39 -24
- package/src/components/AutomationPanel/AutomationPanel.stories.tsx +8 -7
- package/src/components/AutomationPanel/AutomationPanel.tsx +76 -66
- package/src/components/FunctionsPanel/FunctionsPanel.tsx +31 -27
- package/src/components/FunctionsRegistry/FunctionsRegistry.tsx +25 -21
- package/src/components/FunctionsRegistry/index.ts +4 -1
- package/src/components/TriggerEditor/FunctionInputEditor.tsx +6 -6
- package/src/components/TriggerEditor/SpecSelector.tsx +17 -13
- package/src/components/TriggerEditor/TriggerEditor.stories.tsx +54 -12
- package/src/components/TriggerEditor/TriggerEditor.tsx +45 -17
- package/src/components/index.ts +1 -2
- package/src/containers/AutomationSettings/AutomationSettings.tsx +31 -0
- package/src/containers/AutomationSettings/index.ts +5 -0
- package/src/containers/FunctionsContainer/FunctionsContainer.tsx +33 -0
- package/src/containers/FunctionsContainer/index.ts +5 -0
- package/src/containers/TriggerSettings/TriggerSettings.tsx +48 -0
- package/src/containers/TriggerSettings/index.ts +6 -0
- package/src/containers/index.ts +9 -0
- package/src/hooks/index.ts +3 -0
- package/src/hooks/useComputeRuntime.ts +30 -0
- package/src/hooks/useComputeRuntimeCallback.ts +4 -39
- package/src/hooks/useComputeRuntimeService.ts +64 -0
- package/src/hooks/useTriggerRuntimeControls.ts +6 -3
- package/src/index.ts +0 -4
- package/src/meta.ts +3 -2
- package/src/operations/create-trigger-from-template.ts +72 -0
- package/src/operations/index.ts +7 -0
- package/src/plugin.ts +11 -0
- package/src/testing/test-functions.ts +11 -8
- package/src/translations.ts +39 -38
- package/src/types/AutomationCapabilities.ts +48 -0
- package/src/types/AutomationEvents.ts +11 -0
- package/src/types/AutomationOperation.ts +30 -0
- package/src/types/index.ts +4 -2
- package/src/types/schema.ts +3 -24
- package/dist/lib/browser/AutomationPanel-C6MZ22CB.mjs +0 -11
- package/dist/lib/browser/AutomationSettings-D7UO5V3Q.mjs +0 -57
- package/dist/lib/browser/AutomationSettings-D7UO5V3Q.mjs.map +0 -7
- package/dist/lib/browser/FunctionsContainer-5NHAAP5H.mjs.map +0 -7
- package/dist/lib/browser/FunctionsPanel-RD22LYMR.mjs +0 -10
- package/dist/lib/browser/app-graph-builder-HLARI3VW.mjs +0 -85
- package/dist/lib/browser/app-graph-builder-HLARI3VW.mjs.map +0 -7
- package/dist/lib/browser/chunk-C273ZYLE.mjs.map +0 -7
- package/dist/lib/browser/chunk-JFBUK3WR.mjs +0 -14
- package/dist/lib/browser/chunk-JFBUK3WR.mjs.map +0 -7
- package/dist/lib/browser/chunk-JN7QRQQX.mjs +0 -256
- package/dist/lib/browser/chunk-JN7QRQQX.mjs.map +0 -7
- package/dist/lib/browser/chunk-JOXPQ27I.mjs +0 -83
- package/dist/lib/browser/chunk-JOXPQ27I.mjs.map +0 -7
- package/dist/lib/browser/chunk-O5Y2F33G.mjs +0 -8
- package/dist/lib/browser/chunk-O5Y2F33G.mjs.map +0 -7
- package/dist/lib/browser/chunk-P5AEO35Y.mjs +0 -93
- package/dist/lib/browser/chunk-P5AEO35Y.mjs.map +0 -7
- package/dist/lib/browser/chunk-QNEQ23BF.mjs.map +0 -7
- package/dist/lib/browser/cli/index.mjs.map +0 -7
- package/dist/lib/browser/compute-runtime-BUBHYS4Y.mjs +0 -119
- package/dist/lib/browser/compute-runtime-BUBHYS4Y.mjs.map +0 -7
- package/dist/lib/browser/hooks/index.mjs +0 -13
- package/dist/lib/browser/index.mjs +0 -123
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/operation-resolver-IN2FRGOT.mjs +0 -83
- package/dist/lib/browser/operation-resolver-IN2FRGOT.mjs.map +0 -7
- package/dist/lib/browser/react-surface-246NXXJR.mjs +0 -66
- package/dist/lib/browser/react-surface-246NXXJR.mjs.map +0 -7
- package/dist/lib/browser/types/index.mjs +0 -14
- package/dist/lib/node-esm/AutomationPanel-RTBY7YFM.mjs +0 -12
- package/dist/lib/node-esm/AutomationSettings-GK4RLSDN.mjs +0 -58
- package/dist/lib/node-esm/AutomationSettings-GK4RLSDN.mjs.map +0 -7
- package/dist/lib/node-esm/FunctionsContainer-AHHZODM5.mjs +0 -126
- package/dist/lib/node-esm/FunctionsContainer-AHHZODM5.mjs.map +0 -7
- package/dist/lib/node-esm/FunctionsPanel-V2DKWYMU.mjs +0 -11
- package/dist/lib/node-esm/app-graph-builder-Z2TMQHVX.mjs +0 -86
- package/dist/lib/node-esm/app-graph-builder-Z2TMQHVX.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-5FXNN3MV.mjs +0 -19
- package/dist/lib/node-esm/chunk-5FXNN3MV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-AENSLAVD.mjs +0 -99
- package/dist/lib/node-esm/chunk-AENSLAVD.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-EJPZWAGR.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-K5Z4UGIO.mjs +0 -16
- package/dist/lib/node-esm/chunk-K5Z4UGIO.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-M3UPTGXF.mjs +0 -10
- package/dist/lib/node-esm/chunk-M3UPTGXF.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-OJEFRZEV.mjs +0 -259
- package/dist/lib/node-esm/chunk-OJEFRZEV.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-Q7EMIPMW.mjs +0 -94
- package/dist/lib/node-esm/chunk-Q7EMIPMW.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RX52VKI2.mjs +0 -84
- package/dist/lib/node-esm/chunk-RX52VKI2.mjs.map +0 -7
- package/dist/lib/node-esm/cli/index.mjs +0 -1109
- package/dist/lib/node-esm/cli/index.mjs.map +0 -7
- package/dist/lib/node-esm/compute-runtime-6UEDBN76.mjs +0 -120
- package/dist/lib/node-esm/compute-runtime-6UEDBN76.mjs.map +0 -7
- package/dist/lib/node-esm/hooks/index.mjs +0 -14
- package/dist/lib/node-esm/index.mjs +0 -124
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/operation-resolver-67CEAKXP.mjs +0 -84
- package/dist/lib/node-esm/operation-resolver-67CEAKXP.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-U6762KPI.mjs +0 -67
- package/dist/lib/node-esm/react-surface-U6762KPI.mjs.map +0 -7
- package/dist/lib/node-esm/types/index.mjs +0 -15
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +0 -6
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts +0 -6
- package/dist/types/src/capabilities/compute-runtime/compute-runtime.d.ts.map +0 -1
- package/dist/types/src/capabilities/compute-runtime/index.d.ts +0 -3
- package/dist/types/src/capabilities/compute-runtime/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/cli/commands/index.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/create/index.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/create/queue.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/create/subscription.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/create/timer.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/index.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/list.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/options.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/remove.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/update/index.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/update/queue.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/update/subscription.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/update/timer.d.ts.map +0 -1
- package/dist/types/src/cli/commands/trigger/util.d.ts.map +0 -1
- package/dist/types/src/cli/index.d.ts +0 -2
- package/dist/types/src/cli/index.d.ts.map +0 -1
- package/dist/types/src/cli/plugin.d.ts.map +0 -1
- package/dist/types/src/components/AutomationSettings.d.ts +0 -5
- package/dist/types/src/components/AutomationSettings.d.ts.map +0 -1
- package/dist/types/src/components/FunctionsContainer.d.ts +0 -7
- package/dist/types/src/components/FunctionsContainer.d.ts.map +0 -1
- package/dist/types/src/components/TriggerSettings.d.ts +0 -6
- package/dist/types/src/components/TriggerSettings.d.ts.map +0 -1
- package/dist/types/src/types/capabilities.d.ts +0 -22
- package/dist/types/src/types/capabilities.d.ts.map +0 -1
- package/dist/types/src/types/events.d.ts +0 -5
- package/dist/types/src/types/events.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -72
- package/src/capabilities/app-graph-builder/index.ts +0 -7
- package/src/capabilities/compute-runtime/compute-runtime.ts +0 -140
- package/src/capabilities/compute-runtime/index.ts +0 -7
- package/src/capabilities/operation-resolver/index.ts +0 -7
- package/src/capabilities/operation-resolver/operation-resolver.ts +0 -80
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/react-surface/react-surface.tsx +0 -61
- package/src/cli/index.ts +0 -5
- package/src/cli/plugin.ts +0 -24
- package/src/components/AutomationSettings.tsx +0 -30
- package/src/components/FunctionsContainer.tsx +0 -36
- package/src/components/TriggerSettings.tsx +0 -26
- package/src/types/capabilities.ts +0 -42
- package/src/types/events.ts +0 -11
- /package/dist/lib/{browser/AutomationPanel-C6MZ22CB.mjs.map → neutral/AutomationPanel-64U7W3SJ.mjs.map} +0 -0
- /package/dist/lib/{browser/FunctionsPanel-RD22LYMR.mjs.map → neutral/TriggerSettings-XCHIZPOR.mjs.map} +0 -0
- /package/dist/lib/{browser/hooks/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
- /package/dist/lib/{browser/types → neutral/components}/index.mjs.map +0 -0
- /package/dist/lib/{node-esm/hooks → neutral}/index.mjs.map +0 -0
- /package/dist/lib/{node-esm/AutomationPanel-RTBY7YFM.mjs.map → neutral/meta.mjs.map} +0 -0
- /package/dist/lib/{node-esm/types → neutral/operations}/index.mjs.map +0 -0
- /package/dist/lib/{node-esm/FunctionsPanel-V2DKWYMU.mjs.map → neutral/types/index.mjs.map} +0 -0
- /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
- /package/dist/types/src/{cli/commands → commands}/trigger/options.d.ts +0 -0
- /package/dist/types/src/{cli/commands → commands}/trigger/update/queue.d.ts +0 -0
- /package/dist/types/src/{cli/commands → commands}/trigger/update/subscription.d.ts +0 -0
- /package/dist/types/src/{cli/commands → commands}/trigger/update/timer.d.ts +0 -0
- /package/src/{cli/commands → commands}/index.ts +0 -0
- /package/src/{cli/commands → commands}/trigger/create/index.ts +0 -0
- /package/src/{cli/commands → commands}/trigger/index.ts +0 -0
- /package/src/{cli/commands → commands}/trigger/options.ts +0 -0
- /package/src/{cli/commands → commands}/trigger/update/index.ts +0 -0
|
@@ -12,8 +12,8 @@ import * as Option from 'effect/Option';
|
|
|
12
12
|
import { CommandConfig } from '@dxos/cli-util';
|
|
13
13
|
import { flushAndSync, print, spaceLayer, withTypes } from '@dxos/cli-util';
|
|
14
14
|
import { Common } from '@dxos/cli-util';
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
15
|
+
import { Operation, Trigger } from '@dxos/compute';
|
|
16
|
+
import { DXN, Database, Filter, JsonSchema, Obj, Ref } from '@dxos/echo';
|
|
17
17
|
|
|
18
18
|
import { Enabled, Input, Queue, TriggerId } from '../options';
|
|
19
19
|
import { printTrigger, promptForSchemaInput, selectFunction, selectQueue, selectTrigger } from '../util';
|
|
@@ -31,7 +31,6 @@ export const queue = Command.make(
|
|
|
31
31
|
(options) =>
|
|
32
32
|
Effect.gen(function* () {
|
|
33
33
|
const { json } = yield* CommandConfig;
|
|
34
|
-
|
|
35
34
|
const triggerId = yield* Option.match(options.id, {
|
|
36
35
|
onNone: () => selectTrigger('queue'),
|
|
37
36
|
onSome: (id) => Effect.succeed(id),
|
|
@@ -58,7 +57,7 @@ export const queue = Command.make(
|
|
|
58
57
|
).pipe(
|
|
59
58
|
Command.withDescription('Update a queue trigger.'),
|
|
60
59
|
Command.provide(({ spaceId }) => spaceLayer(spaceId, true)),
|
|
61
|
-
Command.provideEffectDiscard(() => withTypes(
|
|
60
|
+
Command.provideEffectDiscard(() => withTypes(Operation.PersistentOperation, Trigger.Trigger)),
|
|
62
61
|
);
|
|
63
62
|
|
|
64
63
|
/**
|
|
@@ -67,10 +66,10 @@ export const queue = Command.make(
|
|
|
67
66
|
* @returns The current function (either original or newly assigned)
|
|
68
67
|
*/
|
|
69
68
|
const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionIdOption: Option.Option<string>) {
|
|
70
|
-
let currentFn:
|
|
69
|
+
let currentFn: Operation.PersistentOperation | undefined = trigger.function
|
|
71
70
|
? yield* Database.load(trigger.function) as any
|
|
72
71
|
: undefined;
|
|
73
|
-
if (currentFn && !Obj.instanceOf(
|
|
72
|
+
if (currentFn && !Obj.instanceOf(Operation.PersistentOperation, currentFn)) {
|
|
74
73
|
currentFn = undefined;
|
|
75
74
|
}
|
|
76
75
|
const currentFunctionName = currentFn ? (currentFn.name ?? currentFn.id) : undefined;
|
|
@@ -87,13 +86,13 @@ const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionId
|
|
|
87
86
|
onNone: () => selectFunction(),
|
|
88
87
|
onSome: (id) => Effect.succeed(id),
|
|
89
88
|
});
|
|
90
|
-
const functions = yield* Database.runQuery(Filter.type(
|
|
89
|
+
const functions = yield* Database.runQuery(Filter.type(Operation.PersistentOperation));
|
|
91
90
|
const foundFn = functions.find((fn) => fn.id === functionId);
|
|
92
|
-
if (!foundFn || !Obj.instanceOf(
|
|
91
|
+
if (!foundFn || !Obj.instanceOf(Operation.PersistentOperation, foundFn)) {
|
|
93
92
|
return yield* Effect.fail(new Error(`Function not found: ${functionId}`));
|
|
94
93
|
}
|
|
95
|
-
Obj.
|
|
96
|
-
|
|
94
|
+
Obj.update(trigger, (trigger) => {
|
|
95
|
+
trigger.function = Ref.make(foundFn);
|
|
97
96
|
});
|
|
98
97
|
currentFn = foundFn;
|
|
99
98
|
}
|
|
@@ -130,9 +129,9 @@ const updateQueue = Effect.fn(function* (trigger: Trigger.Trigger, queueOption:
|
|
|
130
129
|
onNone: () => selectQueue(),
|
|
131
130
|
onSome: (dxn) => Effect.succeed(dxn.toString()),
|
|
132
131
|
});
|
|
133
|
-
Obj.
|
|
134
|
-
if (
|
|
135
|
-
|
|
132
|
+
Obj.update(trigger, (trigger) => {
|
|
133
|
+
if (trigger.spec?.kind === 'queue') {
|
|
134
|
+
trigger.spec.queue = queueDxn;
|
|
136
135
|
}
|
|
137
136
|
});
|
|
138
137
|
}
|
|
@@ -144,7 +143,7 @@ const updateQueue = Effect.fn(function* (trigger: Trigger.Trigger, queueOption:
|
|
|
144
143
|
*/
|
|
145
144
|
const updateInput = Effect.fn(function* (
|
|
146
145
|
trigger: Trigger.Trigger,
|
|
147
|
-
fn:
|
|
146
|
+
fn: Operation.PersistentOperation,
|
|
148
147
|
inputOption: Option.Option<Record<string, any>>,
|
|
149
148
|
) {
|
|
150
149
|
const currentInput = trigger.input as Record<string, any> | undefined;
|
|
@@ -163,11 +162,11 @@ const updateInput = Effect.fn(function* (
|
|
|
163
162
|
if (shouldChangeInput) {
|
|
164
163
|
const inputObj = yield* Option.match(inputOption, {
|
|
165
164
|
onNone: () =>
|
|
166
|
-
promptForSchemaInput(fn.inputSchema ?
|
|
165
|
+
promptForSchemaInput(fn.inputSchema ? JsonSchema.toEffectSchema(fn.inputSchema) : undefined, currentInput),
|
|
167
166
|
onSome: (value) => Effect.succeed(value as Record<string, any>),
|
|
168
167
|
});
|
|
169
|
-
Obj.
|
|
170
|
-
|
|
168
|
+
Obj.update(trigger, (trigger) => {
|
|
169
|
+
trigger.input = inputObj;
|
|
171
170
|
});
|
|
172
171
|
}
|
|
173
172
|
});
|
|
@@ -189,7 +188,7 @@ const updateEnabled = Effect.fn(function* (
|
|
|
189
188
|
}).pipe(Prompt.run),
|
|
190
189
|
onSome: () => Effect.succeed(enabled),
|
|
191
190
|
});
|
|
192
|
-
Obj.
|
|
193
|
-
|
|
191
|
+
Obj.update(trigger, (trigger) => {
|
|
192
|
+
trigger.enabled = enabledValue;
|
|
194
193
|
});
|
|
195
194
|
});
|
|
@@ -13,8 +13,8 @@ import * as Option from 'effect/Option';
|
|
|
13
13
|
import { CommandConfig } from '@dxos/cli-util';
|
|
14
14
|
import { flushAndSync, print, spaceLayer, withTypes } from '@dxos/cli-util';
|
|
15
15
|
import { Common } from '@dxos/cli-util';
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
16
|
+
import { Operation, Trigger } from '@dxos/compute';
|
|
17
|
+
import { DXN, Database, Filter, JsonSchema, Obj, Query, Ref } from '@dxos/echo';
|
|
18
18
|
|
|
19
19
|
import { Deep, Delay, Enabled, Input, TriggerId, Typename } from '../options';
|
|
20
20
|
import { printTrigger, promptForSchemaInput, selectFunction, selectTrigger } from '../util';
|
|
@@ -61,7 +61,7 @@ export const subscription = Command.make(
|
|
|
61
61
|
).pipe(
|
|
62
62
|
Command.withDescription('Update a subscription trigger.'),
|
|
63
63
|
Command.provide(({ spaceId }) => spaceLayer(spaceId, true)),
|
|
64
|
-
Command.provideEffectDiscard(() => withTypes(
|
|
64
|
+
Command.provideEffectDiscard(() => withTypes(Operation.PersistentOperation, Trigger.Trigger)),
|
|
65
65
|
);
|
|
66
66
|
|
|
67
67
|
/**
|
|
@@ -95,10 +95,10 @@ const extractCurrentTypename = (spec: Trigger.SubscriptionSpec | undefined): Opt
|
|
|
95
95
|
* @returns The current function (either original or newly assigned)
|
|
96
96
|
*/
|
|
97
97
|
const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionIdOption: Option.Option<string>) {
|
|
98
|
-
let currentFn:
|
|
98
|
+
let currentFn: Operation.PersistentOperation | undefined = trigger.function
|
|
99
99
|
? yield* Database.load(trigger.function) as any
|
|
100
100
|
: undefined;
|
|
101
|
-
if (currentFn && !Obj.instanceOf(
|
|
101
|
+
if (currentFn && !Obj.instanceOf(Operation.PersistentOperation, currentFn)) {
|
|
102
102
|
currentFn = undefined;
|
|
103
103
|
}
|
|
104
104
|
const currentFunctionName = currentFn ? (currentFn.name ?? currentFn.id) : undefined;
|
|
@@ -115,13 +115,13 @@ const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionId
|
|
|
115
115
|
onNone: () => selectFunction(),
|
|
116
116
|
onSome: (id) => Effect.succeed(id),
|
|
117
117
|
});
|
|
118
|
-
const functions = yield* Database.runQuery(Filter.type(
|
|
118
|
+
const functions = yield* Database.runQuery(Filter.type(Operation.PersistentOperation));
|
|
119
119
|
const foundFn = functions.find((fn) => fn.id === functionId);
|
|
120
|
-
if (!foundFn || !Obj.instanceOf(
|
|
120
|
+
if (!foundFn || !Obj.instanceOf(Operation.PersistentOperation, foundFn)) {
|
|
121
121
|
return yield* Effect.fail(new Error(`Function not found: ${functionId}`));
|
|
122
122
|
}
|
|
123
|
-
Obj.
|
|
124
|
-
|
|
123
|
+
Obj.update(trigger, (trigger) => {
|
|
124
|
+
trigger.function = Ref.make(foundFn);
|
|
125
125
|
});
|
|
126
126
|
currentFn = foundFn;
|
|
127
127
|
}
|
|
@@ -210,8 +210,8 @@ const updateSpec = Effect.fn(function* (
|
|
|
210
210
|
subscriptionOptions.delay = delayOptionValue.value;
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
-
Obj.
|
|
214
|
-
const spec =
|
|
213
|
+
Obj.update(trigger, (trigger) => {
|
|
214
|
+
const spec = trigger.spec;
|
|
215
215
|
if (spec?.kind === 'subscription') {
|
|
216
216
|
// Cast needed because QueryAST types are deeply readonly but spec.query expects mutable.
|
|
217
217
|
spec.query = { ast: queryAst } as NonNullable<typeof spec.query>;
|
|
@@ -227,7 +227,7 @@ const updateSpec = Effect.fn(function* (
|
|
|
227
227
|
*/
|
|
228
228
|
const updateInput = Effect.fn(function* (
|
|
229
229
|
trigger: Trigger.Trigger,
|
|
230
|
-
fn:
|
|
230
|
+
fn: Operation.PersistentOperation,
|
|
231
231
|
inputOption: Option.Option<Record<string, any>>,
|
|
232
232
|
) {
|
|
233
233
|
const currentInput = trigger.input as Record<string, any> | undefined;
|
|
@@ -246,11 +246,11 @@ const updateInput = Effect.fn(function* (
|
|
|
246
246
|
if (shouldChangeInput) {
|
|
247
247
|
const inputObj = yield* Option.match(inputOption, {
|
|
248
248
|
onNone: () =>
|
|
249
|
-
promptForSchemaInput(fn.inputSchema ?
|
|
249
|
+
promptForSchemaInput(fn.inputSchema ? JsonSchema.toEffectSchema(fn.inputSchema) : undefined, currentInput),
|
|
250
250
|
onSome: (value) => Effect.succeed(value as Record<string, any>),
|
|
251
251
|
});
|
|
252
|
-
Obj.
|
|
253
|
-
|
|
252
|
+
Obj.update(trigger, (trigger) => {
|
|
253
|
+
trigger.input = inputObj;
|
|
254
254
|
});
|
|
255
255
|
}
|
|
256
256
|
});
|
|
@@ -272,7 +272,7 @@ const updateEnabled = Effect.fn(function* (
|
|
|
272
272
|
}).pipe(Prompt.run),
|
|
273
273
|
onSome: () => Effect.succeed(enabled),
|
|
274
274
|
});
|
|
275
|
-
Obj.
|
|
276
|
-
|
|
275
|
+
Obj.update(trigger, (trigger) => {
|
|
276
|
+
trigger.enabled = enabledValue;
|
|
277
277
|
});
|
|
278
278
|
});
|
|
@@ -12,8 +12,8 @@ import * as Option from 'effect/Option';
|
|
|
12
12
|
import { CommandConfig } from '@dxos/cli-util';
|
|
13
13
|
import { flushAndSync, print, spaceLayer, withTypes } from '@dxos/cli-util';
|
|
14
14
|
import { Common } from '@dxos/cli-util';
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
15
|
+
import { Operation, Trigger } from '@dxos/compute';
|
|
16
|
+
import { DXN, Database, Filter, JsonSchema, Obj, Ref } from '@dxos/echo';
|
|
17
17
|
|
|
18
18
|
import { Cron, Enabled, Input, TriggerId } from '../options';
|
|
19
19
|
import { printTrigger, promptForSchemaInput, selectFunction, selectTrigger } from '../util';
|
|
@@ -58,7 +58,7 @@ export const timer = Command.make(
|
|
|
58
58
|
).pipe(
|
|
59
59
|
Command.withDescription('Update a timer trigger.'),
|
|
60
60
|
Command.provide(({ spaceId }) => spaceLayer(spaceId, true)),
|
|
61
|
-
Command.provideEffectDiscard(() => withTypes(
|
|
61
|
+
Command.provideEffectDiscard(() => withTypes(Operation.PersistentOperation, Trigger.Trigger)),
|
|
62
62
|
);
|
|
63
63
|
|
|
64
64
|
/**
|
|
@@ -67,10 +67,10 @@ export const timer = Command.make(
|
|
|
67
67
|
* @returns The current function (either original or newly assigned)
|
|
68
68
|
*/
|
|
69
69
|
const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionIdOption: Option.Option<string>) {
|
|
70
|
-
let currentFn:
|
|
70
|
+
let currentFn: Operation.PersistentOperation | undefined = trigger.function
|
|
71
71
|
? yield* Database.load(trigger.function) as any
|
|
72
72
|
: undefined;
|
|
73
|
-
if (currentFn && !Obj.instanceOf(
|
|
73
|
+
if (currentFn && !Obj.instanceOf(Operation.PersistentOperation, currentFn)) {
|
|
74
74
|
currentFn = undefined;
|
|
75
75
|
}
|
|
76
76
|
const currentFunctionName = currentFn ? (currentFn.name ?? currentFn.id) : undefined;
|
|
@@ -87,13 +87,13 @@ const updateFunction = Effect.fn(function* (trigger: Trigger.Trigger, functionId
|
|
|
87
87
|
onNone: () => selectFunction(),
|
|
88
88
|
onSome: (id) => Effect.succeed(id),
|
|
89
89
|
});
|
|
90
|
-
const functions = yield* Database.runQuery(Filter.type(
|
|
90
|
+
const functions = yield* Database.runQuery(Filter.type(Operation.PersistentOperation));
|
|
91
91
|
const foundFn = functions.find((fn) => fn.id === functionId);
|
|
92
|
-
if (!foundFn || !Obj.instanceOf(
|
|
92
|
+
if (!foundFn || !Obj.instanceOf(Operation.PersistentOperation, foundFn)) {
|
|
93
93
|
return yield* Effect.fail(new Error(`Function not found: ${functionId}`));
|
|
94
94
|
}
|
|
95
|
-
Obj.
|
|
96
|
-
|
|
95
|
+
Obj.update(trigger, (trigger) => {
|
|
96
|
+
trigger.function = Ref.make(foundFn);
|
|
97
97
|
});
|
|
98
98
|
currentFn = foundFn;
|
|
99
99
|
}
|
|
@@ -128,9 +128,9 @@ const updateCron = Effect.fn(function* (trigger: Trigger.Trigger, cronOption: Op
|
|
|
128
128
|
}).pipe(Prompt.run),
|
|
129
129
|
onSome: (value) => Effect.succeed(value),
|
|
130
130
|
});
|
|
131
|
-
Obj.
|
|
132
|
-
if (
|
|
133
|
-
|
|
131
|
+
Obj.update(trigger, (trigger) => {
|
|
132
|
+
if (trigger.spec?.kind === 'timer') {
|
|
133
|
+
trigger.spec.cron = cron;
|
|
134
134
|
}
|
|
135
135
|
});
|
|
136
136
|
}
|
|
@@ -142,7 +142,7 @@ const updateCron = Effect.fn(function* (trigger: Trigger.Trigger, cronOption: Op
|
|
|
142
142
|
*/
|
|
143
143
|
const updateInput = Effect.fn(function* (
|
|
144
144
|
trigger: Trigger.Trigger,
|
|
145
|
-
fn:
|
|
145
|
+
fn: Operation.PersistentOperation,
|
|
146
146
|
inputOption: Option.Option<Record<string, any>>,
|
|
147
147
|
) {
|
|
148
148
|
const currentInput = trigger.input as Record<string, any> | undefined;
|
|
@@ -161,11 +161,11 @@ const updateInput = Effect.fn(function* (
|
|
|
161
161
|
if (shouldChangeInput) {
|
|
162
162
|
const inputObj = yield* Option.match(inputOption, {
|
|
163
163
|
onNone: () =>
|
|
164
|
-
promptForSchemaInput(fn.inputSchema ?
|
|
164
|
+
promptForSchemaInput(fn.inputSchema ? JsonSchema.toEffectSchema(fn.inputSchema) : undefined, currentInput),
|
|
165
165
|
onSome: (value) => Effect.succeed(value as Record<string, any>),
|
|
166
166
|
});
|
|
167
|
-
Obj.
|
|
168
|
-
|
|
167
|
+
Obj.update(trigger, (trigger) => {
|
|
168
|
+
trigger.input = inputObj;
|
|
169
169
|
});
|
|
170
170
|
}
|
|
171
171
|
});
|
|
@@ -187,7 +187,7 @@ const updateEnabled = Effect.fn(function* (
|
|
|
187
187
|
}).pipe(Prompt.run),
|
|
188
188
|
onSome: () => Effect.succeed(enabled),
|
|
189
189
|
});
|
|
190
|
-
Obj.
|
|
191
|
-
|
|
190
|
+
Obj.update(trigger, (trigger) => {
|
|
191
|
+
trigger.enabled = enabledValue;
|
|
192
192
|
});
|
|
193
193
|
});
|
|
@@ -12,10 +12,10 @@ import type * as Schema from 'effect/Schema';
|
|
|
12
12
|
import * as SchemaAST from 'effect/SchemaAST';
|
|
13
13
|
|
|
14
14
|
import { FormBuilder } from '@dxos/cli-util';
|
|
15
|
-
import {
|
|
15
|
+
import { Operation, Trigger } from '@dxos/compute';
|
|
16
|
+
import { Annotation, Database, Entity, Feed, Filter, Obj, Query, Ref, Type } from '@dxos/echo';
|
|
16
17
|
import { getProperties } from '@dxos/effect';
|
|
17
|
-
import {
|
|
18
|
-
import { QueueAnnotation } from '@dxos/schema';
|
|
18
|
+
import { FeedAnnotation } from '@dxos/schema';
|
|
19
19
|
|
|
20
20
|
export type TriggerRemoteStatus = 'available' | 'not available' | 'n/a';
|
|
21
21
|
|
|
@@ -60,7 +60,10 @@ export const printTrigger = Effect.fn(function* (trigger: Trigger.Trigger, remot
|
|
|
60
60
|
fn,
|
|
61
61
|
FormBuilder.nest(
|
|
62
62
|
'function',
|
|
63
|
-
FormBuilder.make().pipe(
|
|
63
|
+
FormBuilder.make().pipe(
|
|
64
|
+
FormBuilder.set('key', (fn as Operation.PersistentOperation).key),
|
|
65
|
+
FormBuilder.set('dxn', Obj.getDXN(fn as Obj.Unknown).toString()),
|
|
66
|
+
),
|
|
64
67
|
),
|
|
65
68
|
),
|
|
66
69
|
FormBuilder.nestedOption('spec', Option.fromNullable(trigger.spec).pipe(Option.map(printSpec))),
|
|
@@ -272,7 +275,7 @@ export const promptForSchemaInput = Effect.fn(function* (
|
|
|
272
275
|
* Queries the database for functions and prompts the user to select one.
|
|
273
276
|
*/
|
|
274
277
|
export const selectFunction = Effect.fn(function* () {
|
|
275
|
-
const functions = yield* Database.runQuery(Filter.type(
|
|
278
|
+
const functions = yield* Database.runQuery(Filter.type(Operation.PersistentOperation));
|
|
276
279
|
|
|
277
280
|
if (functions.length === 0) {
|
|
278
281
|
return yield* Effect.fail(new Error('No functions available'));
|
|
@@ -280,7 +283,7 @@ export const selectFunction = Effect.fn(function* () {
|
|
|
280
283
|
|
|
281
284
|
const selected = yield* Prompt.select({
|
|
282
285
|
message: 'Select a function:',
|
|
283
|
-
choices: functions.map((fn:
|
|
286
|
+
choices: functions.map((fn: Operation.PersistentOperation) => ({
|
|
284
287
|
title: fn.name ?? fn.id,
|
|
285
288
|
value: fn.id,
|
|
286
289
|
description: fn.description,
|
|
@@ -296,7 +299,9 @@ export const selectFunction = Effect.fn(function* () {
|
|
|
296
299
|
* Queries the database for triggers and prompts the user to select one.
|
|
297
300
|
*/
|
|
298
301
|
export const selectTrigger = Effect.fn(function* (kind?: Trigger.Kind) {
|
|
299
|
-
const triggers = yield* Database.runQuery(
|
|
302
|
+
const triggers = yield* Database.runQuery(
|
|
303
|
+
Query.select(Filter.type(Trigger.Trigger)).debugLabel('cli.trigger.selectTrigger'),
|
|
304
|
+
);
|
|
300
305
|
const filteredTriggers = kind ? triggers.filter((trigger) => trigger.spec?.kind === kind) : triggers;
|
|
301
306
|
|
|
302
307
|
if (filteredTriggers.length === 0) {
|
|
@@ -307,7 +312,8 @@ export const selectTrigger = Effect.fn(function* (kind?: Trigger.Kind) {
|
|
|
307
312
|
filteredTriggers.map((trigger) =>
|
|
308
313
|
Effect.gen(function* () {
|
|
309
314
|
const fn = trigger.function ? yield* Database.load(trigger.function) : undefined;
|
|
310
|
-
const functionName =
|
|
315
|
+
const functionName =
|
|
316
|
+
fn && Obj.instanceOf(Operation.PersistentOperation, fn) ? (fn.name ?? fn.key ?? fn.id) : undefined;
|
|
311
317
|
const title = functionName ?? trigger.id;
|
|
312
318
|
const description = `${trigger.enabled ? 'enabled' : 'disabled'} - ${trigger.spec?.kind ?? 'unknown'}`;
|
|
313
319
|
|
|
@@ -330,46 +336,55 @@ export const selectTrigger = Effect.fn(function* (kind?: Trigger.Kind) {
|
|
|
330
336
|
|
|
331
337
|
/**
|
|
332
338
|
* Selects a queue interactively from available queues in the database.
|
|
333
|
-
* Queries schemas with
|
|
334
|
-
* and extracts queue DXNs from the objects'
|
|
339
|
+
* Queries schemas with FeedAnnotation, then queries objects of those types,
|
|
340
|
+
* and extracts queue DXNs from the objects' feed properties.
|
|
335
341
|
*/
|
|
336
342
|
export const selectQueue = Effect.fn(function* () {
|
|
337
|
-
// Query schema registry for schemas with
|
|
343
|
+
// Query schema registry for schemas with FeedAnnotation.
|
|
338
344
|
const schemas = yield* Database.runSchemaQuery({ location: ['database', 'runtime'] });
|
|
339
345
|
|
|
340
|
-
// Filter schemas that have
|
|
341
|
-
const
|
|
342
|
-
const annotation =
|
|
346
|
+
// Filter schemas that have FeedAnnotation.
|
|
347
|
+
const feedSchemas = schemas.filter((schema) => {
|
|
348
|
+
const annotation = FeedAnnotation.get(schema);
|
|
343
349
|
return Option.isSome(annotation) && annotation.value === true;
|
|
344
350
|
});
|
|
345
351
|
|
|
346
|
-
if (
|
|
347
|
-
return yield* Effect.fail(new Error('No schemas with
|
|
352
|
+
if (feedSchemas.length === 0) {
|
|
353
|
+
return yield* Effect.fail(new Error('No schemas with Feed annotation found'));
|
|
348
354
|
}
|
|
349
355
|
|
|
350
|
-
// Collect all objects with queues
|
|
356
|
+
// Collect all objects with queues.
|
|
351
357
|
const queueChoices: Array<{ title: string; value: string; description?: string }> = [];
|
|
352
358
|
|
|
353
|
-
// Process each schema,
|
|
354
|
-
for (const schema of
|
|
359
|
+
// Process each feed schema, loading the Feed object to extract queue DXN.
|
|
360
|
+
for (const schema of feedSchemas) {
|
|
355
361
|
yield* Effect.gen(function* () {
|
|
356
362
|
const typename = Type.getTypename(schema);
|
|
357
363
|
const objects = yield* Database.runQuery(Filter.type(typename));
|
|
358
364
|
|
|
359
365
|
for (const obj of objects) {
|
|
360
|
-
// Access the
|
|
361
|
-
const
|
|
362
|
-
if (!
|
|
366
|
+
// Access the feed property (which is a Ref<Feed>).
|
|
367
|
+
const feedRef = (obj as any).feed as Ref.Ref<any> | undefined;
|
|
368
|
+
if (!feedRef) {
|
|
369
|
+
continue;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
const feedObj = yield* Effect.promise(() => feedRef.tryLoad());
|
|
373
|
+
if (!feedObj || !Obj.instanceOf(Feed.Feed, feedObj)) {
|
|
374
|
+
continue;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
const queueDxn = Feed.getQueueDxn(feedObj);
|
|
378
|
+
if (!queueDxn) {
|
|
363
379
|
continue;
|
|
364
380
|
}
|
|
365
381
|
|
|
366
|
-
const queueDxn = queueRef.dxn.toString();
|
|
367
382
|
const label = Obj.getLabel(obj) ?? obj.id;
|
|
368
383
|
const description = Obj.getTypename(obj);
|
|
369
384
|
|
|
370
385
|
queueChoices.push({
|
|
371
386
|
title: label,
|
|
372
|
-
value: queueDxn,
|
|
387
|
+
value: queueDxn.toString(),
|
|
373
388
|
description,
|
|
374
389
|
});
|
|
375
390
|
}
|
|
@@ -5,13 +5,14 @@
|
|
|
5
5
|
import { type Meta, type StoryObj } from '@storybook/react-vite';
|
|
6
6
|
import React from 'react';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import { Operation, Trigger } from '@dxos/compute';
|
|
9
|
+
import { Obj } from '@dxos/echo';
|
|
9
10
|
import { useSpaces } from '@dxos/react-client/echo';
|
|
10
11
|
import { withClientProvider } from '@dxos/react-client/testing';
|
|
11
12
|
import { withTheme } from '@dxos/react-ui/testing';
|
|
12
13
|
|
|
13
|
-
import { functions } from '
|
|
14
|
-
import { translations } from '
|
|
14
|
+
import { functions } from '#testing';
|
|
15
|
+
import { translations } from '#translations';
|
|
15
16
|
|
|
16
17
|
import { AutomationPanel } from './AutomationPanel';
|
|
17
18
|
|
|
@@ -20,14 +21,14 @@ const DefaultStory = () => {
|
|
|
20
21
|
const space = spaces[1];
|
|
21
22
|
|
|
22
23
|
return (
|
|
23
|
-
<div className='
|
|
24
|
+
<div className='w-96'>
|
|
24
25
|
<AutomationPanel space={space} />
|
|
25
26
|
</div>
|
|
26
27
|
);
|
|
27
28
|
};
|
|
28
29
|
|
|
29
30
|
const meta = {
|
|
30
|
-
title: 'plugins/plugin-automation/AutomationPanel',
|
|
31
|
+
title: 'plugins/plugin-automation/components/AutomationPanel',
|
|
31
32
|
component: AutomationPanel as any,
|
|
32
33
|
render: DefaultStory,
|
|
33
34
|
decorators: [
|
|
@@ -35,10 +36,10 @@ const meta = {
|
|
|
35
36
|
withClientProvider({
|
|
36
37
|
createIdentity: true,
|
|
37
38
|
createSpace: true,
|
|
38
|
-
types: [
|
|
39
|
+
types: [Operation.PersistentOperation, Trigger.Trigger],
|
|
39
40
|
onCreateSpace: ({ space }) => {
|
|
40
41
|
for (const fn of functions) {
|
|
41
|
-
space.db.add(
|
|
42
|
+
space.db.add(Obj.make(Operation.PersistentOperation, { ...fn, version: fn.version ?? '0.1.0' }));
|
|
42
43
|
}
|
|
43
44
|
},
|
|
44
45
|
}),
|