From 6d8610ff74c449341512268246702ee13e58f45e Mon Sep 17 00:00:00 2001 From: Hardik Bhatia <98163873+hardikbhatia777@users.noreply.github.com> Date: Tue, 19 Mar 2024 01:06:00 +0530 Subject: [PATCH] fix: Incorrect initial data not allowing edit webhooks properly (#31948) Co-authored-by: Douglas Fabris <27704687+dougfabris@users.noreply.github.com> --- .changeset/breezy-fireants-float.md | 5 +++ .../incoming/EditIncomingWebhook.tsx | 22 +++++----- .../outgoing/EditOutgoingWebhook.tsx | 40 +++++++++---------- 3 files changed, 36 insertions(+), 31 deletions(-) create mode 100644 .changeset/breezy-fireants-float.md diff --git a/.changeset/breezy-fireants-float.md b/.changeset/breezy-fireants-float.md new file mode 100644 index 00000000000..c43d2c6934b --- /dev/null +++ b/.changeset/breezy-fireants-float.md @@ -0,0 +1,5 @@ +--- +'@rocket.chat/meteor': patch +--- + +Fixes an issue not allowing edit webhooks properly diff --git a/apps/meteor/client/views/admin/integrations/incoming/EditIncomingWebhook.tsx b/apps/meteor/client/views/admin/integrations/incoming/EditIncomingWebhook.tsx index 87a29dcce5c..c14c2b19d02 100644 --- a/apps/meteor/client/views/admin/integrations/incoming/EditIncomingWebhook.tsx +++ b/apps/meteor/client/views/admin/integrations/incoming/EditIncomingWebhook.tsx @@ -13,17 +13,17 @@ import { useUpdateIntegration } from '../hooks/useUpdateIntegration'; import IncomingWebhookForm from './IncomingWebhookForm'; const getInitialValue = (webhookData: Serialized<IIncomingIntegration> | undefined) => ({ - enabled: webhookData?.enabled || false, - channel: webhookData?.channel.join(', ') || '', - username: webhookData?.username || '', - name: webhookData?.name || '', - alias: webhookData?.alias || '', - avatar: webhookData?.avatar || '', - emoji: webhookData?.emoji || '', - scriptEnabled: webhookData?.scriptEnabled || false, - scriptEngine: webhookData?.scriptEngine || 'isolated-vm', - overrideDestinationChannelEnabled: webhookData?.overrideDestinationChannelEnabled || false, - script: webhookData?.script || '', + enabled: webhookData?.enabled ?? true, + channel: webhookData?.channel.join(', ') ?? '', + username: webhookData?.username ?? '', + name: webhookData?.name ?? '', + alias: webhookData?.alias ?? '', + avatar: webhookData?.avatar ?? '', + emoji: webhookData?.emoji ?? '', + scriptEnabled: webhookData?.scriptEnabled ?? false, + scriptEngine: webhookData?.scriptEngine ?? 'isolated-vm', + overrideDestinationChannelEnabled: webhookData?.overrideDestinationChannelEnabled ?? false, + script: webhookData?.script ?? '', }); const INCOMING_TYPE = 'webhook-incoming'; diff --git a/apps/meteor/client/views/admin/integrations/outgoing/EditOutgoingWebhook.tsx b/apps/meteor/client/views/admin/integrations/outgoing/EditOutgoingWebhook.tsx index a8a3c1b8f50..1ca7d1f481c 100644 --- a/apps/meteor/client/views/admin/integrations/outgoing/EditOutgoingWebhook.tsx +++ b/apps/meteor/client/views/admin/integrations/outgoing/EditOutgoingWebhook.tsx @@ -14,27 +14,27 @@ import { useUpdateIntegration } from '../hooks/useUpdateIntegration'; import OutgoingWebhookForm from './OutgoingWebhookForm'; const getInitialValue = (webhookData: Serialized<IOutgoingIntegration> | undefined, defaultToken: string) => ({ - enabled: webhookData?.enabled || true, - impersonateUser: webhookData?.impersonateUser || false, - event: webhookData?.event || 'sendMessage', + enabled: webhookData?.enabled ?? true, + impersonateUser: webhookData?.impersonateUser ?? false, + event: webhookData?.event ?? 'sendMessage', urls: webhookData?.urls?.join('\n') ?? '', - token: webhookData?.token || defaultToken, - triggerWords: triggerWordsToString(webhookData?.triggerWords) || '', - targetRoom: webhookData?.targetRoom || '', - channel: webhookData?.channel.join(', ') || '', - username: webhookData?.username || '', - name: webhookData?.name || '', - alias: webhookData?.alias || '', - avatar: webhookData?.avatar || '', - emoji: webhookData?.emoji || '', - scriptEnabled: webhookData?.scriptEnabled || false, - scriptEngine: webhookData?.scriptEngine || 'isolated-vm', - script: webhookData?.script || '', - retryFailedCalls: webhookData?.retryFailedCalls || true, - retryCount: webhookData?.retryCount || 6, - retryDelay: webhookData?.retryDelay || 'powers-of-ten', - triggerWordAnywhere: webhookData?.triggerWordAnywhere || false, - runOnEdits: webhookData?.runOnEdits || true, + token: webhookData?.token ?? defaultToken, + triggerWords: triggerWordsToString(webhookData?.triggerWords) ?? '', + targetRoom: webhookData?.targetRoom ?? '', + channel: webhookData?.channel.join(', ') ?? '', + username: webhookData?.username ?? '', + name: webhookData?.name ?? '', + alias: webhookData?.alias ?? '', + avatar: webhookData?.avatar ?? '', + emoji: webhookData?.emoji ?? '', + scriptEnabled: webhookData?.scriptEnabled ?? false, + scriptEngine: webhookData?.scriptEngine ?? 'isolated-vm', + script: webhookData?.script ?? '', + retryFailedCalls: webhookData?.retryFailedCalls ?? true, + retryCount: webhookData?.retryCount ?? 6, + retryDelay: webhookData?.retryDelay ?? 'powers-of-ten', + triggerWordAnywhere: webhookData?.triggerWordAnywhere ?? false, + runOnEdits: webhookData?.runOnEdits ?? true, }); const OUTGOING_TYPE = 'webhook-outgoing'; -- GitLab