Replace session with user in team accounts
This commit replaces the session object with the user object in the team accounts feature. This change is reflected in the team-account-danger-zone, layout, team-account-workspace, and billing components. The usage of the user object provides more specificity and accuracy in handling user information compared to the more generic session object.
This commit is contained in:
@@ -30,12 +30,12 @@ export const loadTeamWorkspace = cache(async (accountSlug: string) => {
|
||||
accountResult,
|
||||
accountsResult,
|
||||
{
|
||||
data: { session },
|
||||
data: { user },
|
||||
},
|
||||
] = await Promise.all([
|
||||
accountPromise,
|
||||
accountsPromise,
|
||||
client.auth.getSession(),
|
||||
client.auth.getUser(),
|
||||
]);
|
||||
|
||||
if (accountResult.error) {
|
||||
@@ -63,6 +63,6 @@ export const loadTeamWorkspace = cache(async (accountSlug: string) => {
|
||||
return {
|
||||
account: accountData,
|
||||
accounts: accountsResult.data,
|
||||
session,
|
||||
user,
|
||||
};
|
||||
});
|
||||
|
||||
@@ -37,6 +37,7 @@ export const generateMetadata = async () => {
|
||||
async function TeamAccountBillingPage({ params }: Params) {
|
||||
const workspace = await loadTeamWorkspace(params.account);
|
||||
const accountId = workspace.account.id;
|
||||
|
||||
const [subscription, customerId] =
|
||||
await loadTeamAccountBillingPage(accountId);
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ function TeamWorkspaceLayout({
|
||||
collapsed={false}
|
||||
account={params.account}
|
||||
accounts={accounts}
|
||||
user={data.session?.user ?? null}
|
||||
user={data?.user ?? null}
|
||||
/>
|
||||
}
|
||||
>
|
||||
|
||||
@@ -47,14 +47,14 @@ export function TeamAccountDangerZone({
|
||||
|
||||
primaryOwnerUserId: string;
|
||||
}>) {
|
||||
const { data: user, isLoading } = useUser();
|
||||
const { data: user } = useUser();
|
||||
|
||||
if (isLoading) {
|
||||
if (!user) {
|
||||
return <LoadingOverlay fullPage={false} />;
|
||||
}
|
||||
|
||||
// Only the primary owner can delete the team account
|
||||
const userIsPrimaryOwner = user?.id === primaryOwnerUserId;
|
||||
const userIsPrimaryOwner = user.id === primaryOwnerUserId;
|
||||
|
||||
if (userIsPrimaryOwner) {
|
||||
return <DeleteTeamContainer account={account} />;
|
||||
|
||||
Reference in New Issue
Block a user