fix: hidden settings menu affects settings layout (#7769)

This PR fixes #6746

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
ZiaCodes
2024-10-22 00:28:01 +05:00
committed by GitHub
parent 4407b1aaa2
commit 5e2df81211
7 changed files with 56 additions and 37 deletions

View File

@ -6,7 +6,7 @@ export const GoToHotkeyItemEffect = (props: {
}) => {
const { hotkey, pathToNavigateTo } = props;
useGoToHotkeys(hotkey, pathToNavigateTo);
useGoToHotkeys({ key: hotkey, location: pathToNavigateTo });
return <></>;
};

View File

@ -1,19 +0,0 @@
import { GoToHotkeyItemEffect } from '@/app/effect-components/GoToHotkeyItemEffect';
import { useNonSystemActiveObjectMetadataItems } from '@/object-metadata/hooks/useNonSystemActiveObjectMetadataItems';
import { useGoToHotkeys } from '@/ui/utilities/hotkey/hooks/useGoToHotkeys';
export const GotoHotkeys = () => {
const { nonSystemActiveObjectMetadataItems } =
useNonSystemActiveObjectMetadataItems();
// Hardcoded since settings is static
useGoToHotkeys('s', '/settings/profile');
return nonSystemActiveObjectMetadataItems.map((objectMetadataItem) => (
<GoToHotkeyItemEffect
key={`go-to-hokey-item-${objectMetadataItem.id}`}
hotkey={objectMetadataItem.namePlural[0]}
pathToNavigateTo={`/objects/${objectMetadataItem.namePlural}`}
/>
));
};

View File

@ -0,0 +1,37 @@
import { GoToHotkeyItemEffect } from '@/app/effect-components/GoToHotkeyItemEffect';
import { useNonSystemActiveObjectMetadataItems } from '@/object-metadata/hooks/useNonSystemActiveObjectMetadataItems';
import { isNavigationDrawerExpandedState } from '@/ui/navigation/states/isNavigationDrawerExpanded';
import { navigationDrawerExpandedMemorizedState } from '@/ui/navigation/states/navigationDrawerExpandedMemorizedState';
import { navigationMemorizedUrlState } from '@/ui/navigation/states/navigationMemorizedUrlState';
import { useGoToHotkeys } from '@/ui/utilities/hotkey/hooks/useGoToHotkeys';
import { useLocation } from 'react-router-dom';
import { useRecoilCallback } from 'recoil';
export const GotoHotkeysEffectsProvider = () => {
const { nonSystemActiveObjectMetadataItems } =
useNonSystemActiveObjectMetadataItems();
const location = useLocation();
useGoToHotkeys({
key: 's',
location: '/settings/profile',
preNavigateFunction: useRecoilCallback(
({ set }) =>
() => {
set(isNavigationDrawerExpandedState, true);
set(navigationDrawerExpandedMemorizedState, true);
set(navigationMemorizedUrlState, location.pathname + location.search);
},
[location.pathname, location.search],
),
});
return nonSystemActiveObjectMetadataItems.map((objectMetadataItem) => (
<GoToHotkeyItemEffect
key={`go-to-hokey-item-${objectMetadataItem.id}`}
hotkey={objectMetadataItem.namePlural[0]}
pathToNavigateTo={`/objects/${objectMetadataItem.namePlural}`}
/>
));
};