Files
twenty/packages/twenty-front/src/modules/command-menu/pages/navigation-menu-item/components/CommandMenuEditOwnerSection.tsx
T
Abdul Rahman 3fb2352c78 Navbar customization followup (#17848)
Addresses review comments from the [first navbar customization
PR](https://github.com/twentyhq/twenty/pull/17728)

---------

Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
Co-authored-by: Devessier <baptiste@devessier.fr>
2026-02-12 02:35:43 +00:00

55 lines
1.8 KiB
TypeScript

import { useLingui } from '@lingui/react/macro';
import { isDefined } from 'twenty-shared/utils';
import { IconApps } from 'twenty-ui/display';
import { CommandGroup } from '@/command-menu/components/CommandGroup';
import { CommandMenuItem } from '@/command-menu/components/CommandMenuItem';
import { useDraftNavigationMenuItems } from '@/navigation-menu-item/hooks/useDraftNavigationMenuItems';
import { useSelectedNavigationMenuItemEditItem } from '@/navigation-menu-item/hooks/useSelectedNavigationMenuItemEditItem';
import { SelectableListItem } from '@/ui/layout/selectable-list/components/SelectableListItem';
import { useFindOneApplicationQuery } from '~/generated-metadata/graphql';
type CommandMenuEditOwnerSectionProps = {
applicationId?: string | null;
};
export const CommandMenuEditOwnerSection = ({
applicationId: applicationIdProp,
}: CommandMenuEditOwnerSectionProps) => {
const { t } = useLingui();
const { selectedItem } = useSelectedNavigationMenuItemEditItem();
const { currentDraft } = useDraftNavigationMenuItems();
const applicationIdFromDraft =
selectedItem && currentDraft
? currentDraft.find((item) => item.id === selectedItem.id)?.applicationId
: undefined;
const applicationId = applicationIdProp ?? applicationIdFromDraft;
const { data } = useFindOneApplicationQuery({
variables: { id: applicationId ?? '' },
skip: !isDefined(applicationId),
});
const applicationName = data?.findOneApplication?.name;
if (!isDefined(applicationName)) {
return null;
}
return (
<CommandGroup heading={t`Owner`}>
<SelectableListItem itemId="owner-app" onEnter={() => {}}>
<CommandMenuItem
Icon={IconApps}
label={applicationName}
id="owner-app"
disabled
/>
</SelectableListItem>
</CommandGroup>
);
};