瀏覽代碼

fix: workflow triggers not registered

Ahmad Kholid 2 年之前
父節點
當前提交
e698a8876c
共有 2 個文件被更改,包括 9 次插入3 次删除
  1. 8 2
      src/background/index.js
  2. 1 1
      src/utils/workflowTrigger.js

+ 8 - 2
src/background/index.js

@@ -563,7 +563,7 @@ browser.runtime.onStartup.addListener(async () => {
       const executeWorkflow = async (trigger, triggerData) => {
         if (trigger.type === 'on-startup') {
           workflow.execute(currWorkflow);
-        } else {
+        } else if (trigger.type !== 'manual') {
           await registerWorkflowTrigger(currWorkflow.id, triggerData);
         }
       };
@@ -571,8 +571,14 @@ browser.runtime.onStartup.addListener(async () => {
       if (triggerBlock) {
         if (triggerBlock.triggers) {
           for (const trigger of triggerBlock.triggers) {
-            await executeWorkflow(trigger, trigger);
+            if (trigger.type === 'on-startup') {
+              workflow.execute(currWorkflow);
+            }
           }
+
+          await registerWorkflowTrigger(currWorkflow.id, {
+            data: triggerBlock,
+          });
         } else {
           await executeWorkflow(triggerBlock, { data: triggerBlock });
         }

+ 1 - 1
src/utils/workflowTrigger.js

@@ -281,7 +281,7 @@ export const workflowTriggersMap = {
 
 export async function registerWorkflowTrigger(workflowId, { data }) {
   try {
-    await cleanWorkflowTriggers(workflowId, data.triggers);
+    await cleanWorkflowTriggers(workflowId, data && data?.triggers);
 
     if (data.triggers) {
       for (const trigger of data.triggers) {