Skip to content

Commit

Permalink
bug fix for duplicate notification channels
Browse files Browse the repository at this point in the history
Signed-off-by: Riya Saxena <[email protected]>
  • Loading branch information
riysaxen-amzn committed Jun 26, 2024
1 parent 722047d commit d53bc63
Showing 1 changed file with 24 additions and 8 deletions.
32 changes: 24 additions & 8 deletions public/pages/CreateTrigger/utils/helper.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,30 @@ import moment from 'moment-timezone';
import { formikToTrigger } from '../containers/CreateTrigger/utils/formikToTrigger';
import { getUISettings } from '../../../services';

export const getChannelOptions = (channels) =>
channels.map((channel) => ({
key: channel.type,
label: channel.type,
options: channels
.filter((local_channel) => local_channel.type === channel.type)
.map((option) => ({ key: option.value, ...option })),
}));
export const getChannelOptions = (channels) => {
const channelMap = {};

// Iterate over channels to group options by channel type
channels.forEach(channel => {
if (!channelMap[channel.type]) {
channelMap[channel.type] = {
key: channel.type,
label: channel.type,
options: []
};
}
// Add the option to the corresponding channel type
channelMap[channel.type].options.push({
key: channel.value,
...channel
});
});

// Convert the channelMap object to an array of values
const channelOptions = Object.values(channelMap);

return channelOptions;
};

// Custom Webhooks for Destinations used `custom_webhook` for the type whereas Notification Channels use 'webhook'
// This conversion ensures Notifications' nomenclature is used for the labeling for consistency
Expand Down

0 comments on commit d53bc63

Please sign in to comment.