From beb7526d1d92e5752ef68e0d41f9c2c711be2f21 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Wed, 5 Jun 2024 10:38:05 -0700 Subject: [PATCH] Update webhook.ts --- apps/api/src/services/webhook.ts | 84 +++++++++++++++++--------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/apps/api/src/services/webhook.ts b/apps/api/src/services/webhook.ts index e0ad4df..eca7d09 100644 --- a/apps/api/src/services/webhook.ts +++ b/apps/api/src/services/webhook.ts @@ -2,53 +2,57 @@ import { supabase_service } from "./supabase"; export const callWebhook = async (teamId: string, data: any) => { try { - const selfHostedUrl = process.env.SELF_HOSTED_WEBHOOK_URL; - let webhookUrl = selfHostedUrl; + const selfHostedUrl = process.env.SELF_HOSTED_WEBHOOK_URL; + let webhookUrl = selfHostedUrl; - if (!selfHostedUrl) { - const { data: webhooksData, error } = await supabase_service - .from('webhooks') - .select('url') - .eq('team_id', teamId) - .limit(1); + if (!selfHostedUrl) { + const { data: webhooksData, error } = await supabase_service + .from("webhooks") + .select("url") + .eq("team_id", teamId) + .limit(1); - if (error) { - console.error(`Error fetching webhook URL for team ID: ${teamId}`, error.message); - return null; - } + if (error) { + console.error( + `Error fetching webhook URL for team ID: ${teamId}`, + error.message + ); + return null; + } - if (!webhooksData || webhooksData.length === 0) { - return null; - } + if (!webhooksData || webhooksData.length === 0) { + return null; + } - webhookUrl = webhooksData[0].url; -} - - let dataToSend = []; - if (data.result.links && data.result.links.length !== 0) { - for (let i = 0; i < data.result.links.length; i++) { - dataToSend.push({ - content: data.result.links[i].content.content, - markdown: data.result.links[i].content.markdown, - metadata: data.result.links[i].content.metadata, - }); + webhookUrl = webhooksData[0].url; } - } - await fetch(webhookUrl, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - success: data.success, - project_id: data.project_id, - data: dataToSend, - error: data.error || undefined, - }), + let dataToSend = []; + if (data.result.links && data.result.links.length !== 0) { + for (let i = 0; i < data.result.links.length; i++) { + dataToSend.push({ + content: data.result.links[i].content.content, + markdown: data.result.links[i].content.markdown, + metadata: data.result.links[i].content.metadata, + }); + } + } + + await fetch(webhookUrl, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + success: data.success, + data: dataToSend, + error: data.error || undefined, + }), }); } catch (error) { - console.error(`Error sending webhook for team ID: ${teamId}`, error.message); + console.error( + `Error sending webhook for team ID: ${teamId}`, + error.message + ); } }; -