fix: Make kanban view creation text dynamic based on the object type (#9310)

fixes #9298 

fix issue where Kanban view creation text shows "Companies" instead of
current object type.

Changes:
- Made text dynamic in ViewPickerContentCreateMode
- Now displays correct object name

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
This commit is contained in:
Anuj
2025-01-02 00:10:46 +05:30
committed by GitHub
parent 85c04c8931
commit 306b45a038

View File

@ -2,6 +2,7 @@ import styled from '@emotion/styled';
import { Key } from 'ts-key-enum';
import { IconLayoutKanban, IconTable, IconX } from 'twenty-ui';
import { useObjectMetadataItemById } from '@/object-metadata/hooks/useObjectMetadataItemById';
import { IconPicker } from '@/ui/input/components/IconPicker';
import { Select } from '@/ui/input/components/Select';
import { TextInputV2 } from '@/ui/input/components/TextInputV2';
@ -13,6 +14,7 @@ import { useSetHotkeyScope } from '@/ui/utilities/hotkey/hooks/useSetHotkeyScope
import { useRecoilComponentStateV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentStateV2';
import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2';
import { useSetRecoilComponentStateV2 } from '@/ui/utilities/state/component-state/hooks/useSetRecoilComponentStateV2';
import { viewObjectMetadataIdComponentState } from '@/views/states/viewObjectMetadataIdComponentState';
import { ViewsHotkeyScope } from '@/views/types/ViewsHotkeyScope';
import { ViewType } from '@/views/types/ViewType';
import { ViewPickerCreateButton } from '@/views/view-picker/components/ViewPickerCreateButton';
@ -44,6 +46,13 @@ export const ViewPickerContentCreateMode = () => {
const { viewPickerMode, setViewPickerMode } = useViewPickerMode();
const [hasManuallySelectedIcon, setHasManuallySelectedIcon] = useState(false);
const viewObjectMetadataId = useRecoilComponentValueV2(
viewObjectMetadataIdComponentState,
);
const { objectMetadataItem } = useObjectMetadataItemById({
objectId: viewObjectMetadataId ?? '',
});
const [viewPickerInputName, setViewPickerInputName] =
useRecoilComponentStateV2(viewPickerInputNameComponentState);
@ -183,7 +192,8 @@ export const ViewPickerContentCreateMode = () => {
</ViewPickerSelectContainer>
{availableFieldsForKanban.length === 0 && (
<StyledNoKanbanFieldAvailableContainer>
Set up a Select field on Companies to create a Kanban
Set up a Select field on {objectMetadataItem.labelPlural} to
create a Kanban
</StyledNoKanbanFieldAvailableContainer>
)}
</>