diff --git a/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/ObjectOptionsDropdownRecordGroupFieldsContent.tsx b/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/ObjectOptionsDropdownRecordGroupFieldsContent.tsx index 59a8e9c43..d34e08258 100644 --- a/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/ObjectOptionsDropdownRecordGroupFieldsContent.tsx +++ b/packages/twenty-front/src/modules/object-record/object-options-dropdown/components/ObjectOptionsDropdownRecordGroupFieldsContent.tsx @@ -11,6 +11,7 @@ import { hiddenRecordGroupIdsComponentSelector } from '@/object-record/record-gr import { useHandleRecordGroupField } from '@/object-record/record-index/hooks/useHandleRecordGroupField'; import { SettingsPath } from '@/types/SettingsPath'; import { DropdownMenuHeader } from '@/ui/layout/dropdown/components/DropdownMenuHeader/DropdownMenuHeader'; +import { DropdownMenuHeaderLeftComponent } from '@/ui/layout/dropdown/components/DropdownMenuHeader/internal/DropdownMenuHeaderLeftComponent'; import { DropdownMenuItemsContainer } from '@/ui/layout/dropdown/components/DropdownMenuItemsContainer'; import { DropdownMenuSeparator } from '@/ui/layout/dropdown/components/DropdownMenuSeparator'; import { navigationMemorizedUrlState } from '@/ui/navigation/states/navigationMemorizedUrlState'; @@ -19,9 +20,6 @@ import { ViewType } from '@/views/types/ViewType'; import { useLingui } from '@lingui/react/macro'; import { useLocation } from 'react-router-dom'; import { useSetRecoilState } from 'recoil'; -import { FieldMetadataType } from '~/generated-metadata/graphql'; -import { getSettingsPath } from '~/utils/navigation/getSettingsPath'; -import { DropdownMenuHeaderLeftComponent } from '@/ui/layout/dropdown/components/DropdownMenuHeader/internal/DropdownMenuHeaderLeftComponent'; import { isDefined } from 'twenty-shared/utils'; import { IconChevronLeft, IconSettings, useIcons } from 'twenty-ui/display'; import { @@ -29,6 +27,8 @@ import { MenuItemSelect, UndecoratedLink, } from 'twenty-ui/navigation'; +import { FieldMetadataType } from '~/generated-metadata/graphql'; +import { getSettingsPath } from '~/utils/navigation/getSettingsPath'; export const ObjectOptionsDropdownRecordGroupFieldsContent = () => { const { t } = useLingui(); @@ -116,7 +116,7 @@ export const ObjectOptionsDropdownRecordGroupFieldsContent = () => { /> } > - Group by + {t`Group by`} { return; } - const view = await getViewFromPrefetchState(currentViewId); + const view = getViewFromPrefetchState(currentViewId); if (isUndefinedOrNull(view)) { return; diff --git a/packages/twenty-front/src/modules/object-record/record-table/record-table-cell/components/RecordTableCellPortalWrapper.tsx b/packages/twenty-front/src/modules/object-record/record-table/record-table-cell/components/RecordTableCellPortalWrapper.tsx index 9c307b9e4..3455b30d6 100644 --- a/packages/twenty-front/src/modules/object-record/record-table/record-table-cell/components/RecordTableCellPortalWrapper.tsx +++ b/packages/twenty-front/src/modules/object-record/record-table/record-table-cell/components/RecordTableCellPortalWrapper.tsx @@ -8,6 +8,7 @@ import { visibleTableColumnsComponentSelector } from '@/object-record/record-tab import { TableCellPosition } from '@/object-record/record-table/types/TableCellPosition'; import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2'; import ReactDOM from 'react-dom'; +import { isDefined } from 'twenty-shared/utils'; export const RecordTableCellPortalWrapper = ({ position, @@ -16,9 +17,9 @@ export const RecordTableCellPortalWrapper = ({ position: TableCellPosition; children: React.ReactNode; }) => { - const anchorElement = document.body.querySelector( + const anchorElement = document.body.querySelector( `#record-table-cell-${position.column}-${position.row}`, - ) as HTMLElement; + ); const allRecordIds = useRecoilComponentValueV2( recordIndexAllRecordIdsComponentSelector, @@ -30,12 +31,11 @@ export const RecordTableCellPortalWrapper = ({ visibleTableColumnsComponentSelector, ); - if (!anchorElement) { + const recordId = allRecordIds.at(position.row); + if (!isDefined(anchorElement) || !isDefined(recordId)) { return null; } - const recordId = allRecordIds[position.row]; - return ReactDOM.createPortal(