gateway/modules/workflows/automation2/executors/triggerExecutor.py
2026-03-22 15:25:29 +01:00

27 lines
870 B
Python

# Copyright (c) 2025 Patrick Motsch
# Trigger node executor.
import logging
from typing import Dict, Any
logger = logging.getLogger(__name__)
class TriggerExecutor:
"""Execute trigger nodes (manual, schedule, formSubmit)."""
async def execute(
self,
node: Dict[str, Any],
context: Dict[str, Any],
) -> Any:
nodeType = node.get("type", "")
if nodeType == "trigger.manual":
return {"triggered": True, "source": "manual"}
if nodeType == "trigger.schedule":
return {"triggered": True, "source": "schedule"}
if nodeType == "trigger.formSubmit":
params = node.get("parameters") or {}
formId = params.get("formId", "")
return {"triggered": True, "source": "formSubmit", "formId": formId}
return {"triggered": True, "source": "unknown"}