Przeglądaj źródła

remove useIsSlackEnabled and use useState instead

kaori 3 lat temu
rodzic
commit
43dee8796e

+ 8 - 8
packages/app/src/components/PageEditor/EditorNavbarBottom.tsx

@@ -7,7 +7,7 @@ import { Collapse, Button } from 'reactstrap';
 import AppContainer from '~/client/services/AppContainer';
 import AppContainer from '~/client/services/AppContainer';
 import EditorContainer from '~/client/services/EditorContainer';
 import EditorContainer from '~/client/services/EditorContainer';
 import { useCurrentPagePath } from '~/stores/context';
 import { useCurrentPagePath } from '~/stores/context';
-import { useSWRxSlackChannels, useIsSlackEnabled } from '~/stores/editor';
+import { useSWRxSlackChannels } from '~/stores/editor';
 import {
 import {
   EditorMode, useDrawerOpened, useEditorMode, useIsDeviceSmallerThanMd,
   EditorMode, useDrawerOpened, useEditorMode, useIsDeviceSmallerThanMd,
 } from '~/stores/ui';
 } from '~/stores/ui';
@@ -31,23 +31,23 @@ const EditorNavbarBottom = (props) => {
 
 
   const { mutate: mutateDrawerOpened } = useDrawerOpened();
   const { mutate: mutateDrawerOpened } = useDrawerOpened();
   const { data: isDeviceSmallerThanMd } = useIsDeviceSmallerThanMd();
   const { data: isDeviceSmallerThanMd } = useIsDeviceSmallerThanMd();
-  const { data: isSlackEnabled, mutate: mutateIsSlackEnabled } = useIsSlackEnabled();
   const { data: currentPagePath } = useCurrentPagePath();
   const { data: currentPagePath } = useCurrentPagePath();
   const { data: slackChannelsData } = useSWRxSlackChannels(currentPagePath);
   const { data: slackChannelsData } = useSWRxSlackChannels(currentPagePath);
   const additionalClasses = ['grw-editor-navbar-bottom'];
   const additionalClasses = ['grw-editor-navbar-bottom'];
 
 
+  const [isSlackEnabled, setIsSlackEnabled] = useState<boolean>(isSlackConfigured);
   const [slackChannelsStr, setSlackChannelsStr] = useState<string>('');
   const [slackChannelsStr, setSlackChannelsStr] = useState<string>('');
 
 
-  const isSlackEnabledToggleHandler = useCallback(
-    (bool: boolean) => mutateIsSlackEnabled(bool), [mutateIsSlackEnabled],
-  );
-
   useEffect(() => {
   useEffect(() => {
     if (slackChannelsData != null) {
     if (slackChannelsData != null) {
       setSlackChannelsStr(slackChannelsData.toString());
       setSlackChannelsStr(slackChannelsData.toString());
     }
     }
   }, [slackChannelsData]);
   }, [slackChannelsData]);
 
 
+  const isSlackEnabledToggleHandler = () => {
+    const toggleIsSlackEnabled = !isSlackEnabled;
+    setIsSlackEnabled(toggleIsSlackEnabled);
+  };
 
 
   const slackChannelsChangedHandler = useCallback((slackChannels: string) => {
   const slackChannelsChangedHandler = useCallback((slackChannels: string) => {
     setSlackChannelsStr(slackChannels);
     setSlackChannelsStr(slackChannels);
@@ -86,7 +86,7 @@ const EditorNavbarBottom = (props) => {
         <Collapse isOpen={isSlackExpanded && isDeviceSmallerThanMd === true}>
         <Collapse isOpen={isSlackExpanded && isDeviceSmallerThanMd === true}>
           <nav className={`navbar navbar-expand-lg border-top ${additionalClasses.join(' ')}`}>
           <nav className={`navbar navbar-expand-lg border-top ${additionalClasses.join(' ')}`}>
             <SlackNotification
             <SlackNotification
-              isSlackEnabled={isSlackEnabled ?? false}
+              isSlackEnabled={isSlackEnabled}
               slackChannels={slackChannelsStr}
               slackChannels={slackChannelsStr}
               onEnabledFlagChange={isSlackEnabledToggleHandler}
               onEnabledFlagChange={isSlackEnabledToggleHandler}
               onChannelChange={slackChannelsChangedHandler}
               onChannelChange={slackChannelsChangedHandler}
@@ -117,7 +117,7 @@ const EditorNavbarBottom = (props) => {
           ) : (
           ) : (
             <div className="mr-2">
             <div className="mr-2">
               <SlackNotification
               <SlackNotification
-                isSlackEnabled={isSlackEnabled ?? false}
+                isSlackEnabled={isSlackEnabled}
                 slackChannels={slackChannelsStr}
                 slackChannels={slackChannelsStr}
                 onEnabledFlagChange={isSlackEnabledToggleHandler}
                 onEnabledFlagChange={isSlackEnabledToggleHandler}
                 onChannelChange={slackChannelsChangedHandler}
                 onChannelChange={slackChannelsChangedHandler}