mirror of
https://github.com/lingble/twenty.git
synced 2025-10-30 12:22:29 +00:00
Fix actions setter when opening the command menu (#8263)
Fix standard actions overriding navigate and create commands when opening the command menu. Before fix: <img width="493" alt="Capture d’écran 2024-10-31 à 18 08 56" src="https://github.com/user-attachments/assets/015bd798-baa4-4f84-8886-e355c0ef1455"> After fix: <img width="499" alt="Capture d’écran 2024-10-31 à 18 08 34" src="https://github.com/user-attachments/assets/02ba7fc4-ec90-4c13-9830-d884c0da37d9"> --------- Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
@@ -1,5 +1,4 @@
|
|||||||
import { ApolloProvider } from '@/apollo/components/ApolloProvider';
|
import { ApolloProvider } from '@/apollo/components/ApolloProvider';
|
||||||
import { CommandMenuEffect } from '@/app/effect-components/CommandMenuEffect';
|
|
||||||
import { GotoHotkeysEffectsProvider } from '@/app/effect-components/GotoHotkeysEffectsProvider';
|
import { GotoHotkeysEffectsProvider } from '@/app/effect-components/GotoHotkeysEffectsProvider';
|
||||||
import { PageChangeEffect } from '@/app/effect-components/PageChangeEffect';
|
import { PageChangeEffect } from '@/app/effect-components/PageChangeEffect';
|
||||||
import { AuthProvider } from '@/auth/components/AuthProvider';
|
import { AuthProvider } from '@/auth/components/AuthProvider';
|
||||||
@@ -44,7 +43,6 @@ export const AppRouterProviders = () => {
|
|||||||
<DialogManager>
|
<DialogManager>
|
||||||
<StrictMode>
|
<StrictMode>
|
||||||
<PromiseRejectionEffect />
|
<PromiseRejectionEffect />
|
||||||
<CommandMenuEffect />
|
|
||||||
<GotoHotkeysEffectsProvider />
|
<GotoHotkeysEffectsProvider />
|
||||||
<PageTitle title={pageTitle} />
|
<PageTitle title={pageTitle} />
|
||||||
<Outlet />
|
<Outlet />
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
import { useEffect } from 'react';
|
|
||||||
import { useSetRecoilState } from 'recoil';
|
|
||||||
|
|
||||||
import { COMMAND_MENU_COMMANDS } from '@/command-menu/constants/CommandMenuCommands';
|
|
||||||
import { commandMenuCommandsState } from '@/command-menu/states/commandMenuCommandsState';
|
|
||||||
|
|
||||||
export const CommandMenuEffect = () => {
|
|
||||||
const setCommands = useSetRecoilState(commandMenuCommandsState);
|
|
||||||
|
|
||||||
const commands = Object.values(COMMAND_MENU_COMMANDS);
|
|
||||||
useEffect(() => {
|
|
||||||
setCommands(commands);
|
|
||||||
}, [commands, setCommands]);
|
|
||||||
|
|
||||||
return <></>;
|
|
||||||
};
|
|
||||||
@@ -43,6 +43,8 @@ export const useCommandMenu = () => {
|
|||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const commands = Object.values(COMMAND_MENU_COMMANDS);
|
||||||
|
|
||||||
const actionCommands = actionMenuEntries
|
const actionCommands = actionMenuEntries
|
||||||
.getValue()
|
.getValue()
|
||||||
?.map((actionMenuEntry) => ({
|
?.map((actionMenuEntry) => ({
|
||||||
@@ -53,7 +55,7 @@ export const useCommandMenu = () => {
|
|||||||
type: CommandType.Action,
|
type: CommandType.Action,
|
||||||
}));
|
}));
|
||||||
|
|
||||||
setCommands(actionCommands);
|
setCommands([...commands, ...actionCommands]);
|
||||||
}
|
}
|
||||||
|
|
||||||
setIsCommandMenuOpened(true);
|
setIsCommandMenuOpened(true);
|
||||||
@@ -76,11 +78,17 @@ export const useCommandMenu = () => {
|
|||||||
|
|
||||||
if (isCommandMenuOpened) {
|
if (isCommandMenuOpened) {
|
||||||
setIsCommandMenuOpened(false);
|
setIsCommandMenuOpened(false);
|
||||||
|
setCommands([]);
|
||||||
resetSelectedItem();
|
resetSelectedItem();
|
||||||
goBackToPreviousHotkeyScope();
|
goBackToPreviousHotkeyScope();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[goBackToPreviousHotkeyScope, resetSelectedItem, setIsCommandMenuOpened],
|
[
|
||||||
|
goBackToPreviousHotkeyScope,
|
||||||
|
resetSelectedItem,
|
||||||
|
setCommands,
|
||||||
|
setIsCommandMenuOpened,
|
||||||
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
const toggleCommandMenu = useRecoilCallback(
|
const toggleCommandMenu = useRecoilCallback(
|
||||||
|
|||||||
Reference in New Issue
Block a user