diff --git a/packages/twenty-front/src/modules/accounts/types/Account.ts b/packages/twenty-front/src/modules/accounts/types/Account.ts index d65ee24c1..a45a1f240 100644 --- a/packages/twenty-front/src/modules/accounts/types/Account.ts +++ b/packages/twenty-front/src/modules/accounts/types/Account.ts @@ -1,8 +1,8 @@ import { InboxSettingsVisibilityValue } from '@/settings/accounts/components/SettingsAccountsInboxSettingsVisibilitySection'; export type Account = { - email: string; + id: string; + handle: string; isSynced?: boolean; - uuid: string; visibility: InboxSettingsVisibilityValue; }; diff --git a/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsCard.tsx b/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsCard.tsx index b6fa3224d..6da1196a0 100644 --- a/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsCard.tsx +++ b/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsCard.tsx @@ -46,7 +46,7 @@ export const SettingsAccountsCard = ({ {accounts.map((account, index) => ( { - const [accounts, setAccounts] = useState(mockedAccounts); + const currentWorkspaceMember = useRecoilValue(currentWorkspaceMemberState); - const handleAccountRemove = (uuid: string) => - setAccounts((previousAccounts) => - previousAccounts.filter((account) => account.uuid !== uuid), - ); + const accounts = useFindManyRecords({ + objectNameSingular: 'connectedAccount', + filter: { + accountOwnerId: { + eq: currentWorkspaceMember?.id, + }, + }, + }).records; + + const { deleteOneRecord } = useDeleteOneRecord({ + objectNameSingular: 'connectedAccount', + }); + + const handleAccountRemove = (idToRemove: string) => + deleteOneRecord(idToRemove); return (
@@ -21,7 +35,7 @@ export const SettingsAccountsConnectedAccountsSection = () => { title="Connected accounts" description="Manage your internet accounts." /> - {accounts.length ? ( + {accounts?.length ? ( - {account.email} + {account.handle} {rightComponent} ); diff --git a/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsRowDropdownMenu.tsx b/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsRowDropdownMenu.tsx index dafc8d9c1..963c7b2fd 100644 --- a/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsRowDropdownMenu.tsx +++ b/packages/twenty-front/src/modules/settings/accounts/components/SettingsAccountsRowDropdownMenu.tsx @@ -21,7 +21,7 @@ export const SettingsAccountsRowDropdownMenu = ({ className, onRemove, }: SettingsAccountsRowDropdownMenuProps) => { - const dropdownScopeId = `settings-account-row-${account.uuid}`; + const dropdownScopeId = `settings-account-row-${account.id}`; const navigate = useNavigate(); const { closeDropdown } = useDropdown(dropdownScopeId); @@ -42,7 +42,7 @@ export const SettingsAccountsRowDropdownMenu = ({ LeftIcon={IconMail} text="Emails settings" onClick={() => { - navigate(`/settings/accounts/emails/${account.uuid}`); + navigate(`/settings/accounts/emails/${account.id}`); closeDropdown(); }} /> @@ -52,7 +52,7 @@ export const SettingsAccountsRowDropdownMenu = ({ LeftIcon={IconTrash} text="Remove account" onClick={() => { - onRemove(account.uuid); + onRemove(account.id); closeDropdown(); }} />