Преглед изворни кода

Merge pull request #6810 from weseek/imprv/107215-get-globalNotification-value

imprv: Create a new global notification trigger
Yuki Takei пре 3 година
родитељ
комит
c7c6de58ed
1 измењених фајлова са 10 додато и 9 уклоњено
  1. 10 9
      packages/app/src/components/Admin/Notification/ManageGlobalNotification.jsx

+ 10 - 9
packages/app/src/components/Admin/Notification/ManageGlobalNotification.jsx

@@ -32,26 +32,27 @@ const ManageGlobalNotification = (props) => {
   const [slackChannelToSend, setSlackChannelToSend] = useState('');
   const [slackChannelToSend, setSlackChannelToSend] = useState('');
   const [triggerEvents, setTriggerEvents] = useState(new Set(globalNotification?.triggerEvents));
   const [triggerEvents, setTriggerEvents] = useState(new Set(globalNotification?.triggerEvents));
 
 
-  const onChangeTriggerEvents = (triggerEvent) => {
+  const onChangeTriggerEvents = useCallback((triggerEvent) => {
+    let newTriggerEvents;
 
 
     if (triggerEvents.has(triggerEvent)) {
     if (triggerEvents.has(triggerEvent)) {
-      triggerEvents.delete(triggerEvent);
-      setTriggerEvents(triggerEvents);
+      newTriggerEvents = ([...triggerEvents].filter(item => item !== triggerEvent));
+      setTriggerEvents(new Set(newTriggerEvents));
     }
     }
     else {
     else {
-      triggerEvents.add(triggerEvent);
-      setTriggerEvents(triggerEvents);
+      newTriggerEvents = [...triggerEvents, triggerEvent];
+      setTriggerEvents(new Set(newTriggerEvents));
     }
     }
-  };
+  }, [triggerEvents]);
 
 
   const submitHandler = useCallback(async() => {
   const submitHandler = useCallback(async() => {
 
 
     const requestParams = {
     const requestParams = {
       triggerPath,
       triggerPath,
       notifyToType,
       notifyToType,
-      emailToSend,
-      slackChannelToSend,
-      triggerEvents,
+      toEmail: emailToSend,
+      slackChannels: slackChannelToSend,
+      triggerEvents: [...triggerEvents],
     };
     };
 
 
     try {
     try {