Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/fix-abandn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
default: patch
---

Fix leaving modal looking outsized
78 changes: 46 additions & 32 deletions src/app/pages/client/sidebar/AccountSwitcherTab.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ import {
toRem,
Chip,
Spinner,
Overlay,
OverlayBackdrop,
OverlayCenter,
Line,
} from 'folds';
import FocusTrap from 'focus-trap-react';
Expand All @@ -38,7 +41,6 @@ import { useUserProfile } from '$hooks/useUserProfile';
import { useMediaAuthentication } from '$hooks/useMediaAuthentication';
import { useSessionProfiles } from '$hooks/useSessionProfiles';
import { useOpenSettings } from '$features/settings';
import { Modal500 } from '$components/Modal500';
import { createLogger } from '$utils/debug';
import { useClientConfig } from '$hooks/useClientConfig';
import { UnreadBadge, UnreadBadgeCenter } from '$components/unread-badge';
Expand Down Expand Up @@ -365,41 +367,53 @@ export function AccountSwitcherTab({ isBottom }: { isBottom?: boolean }) {
/>

{confirmSignOutSession && (
<Modal500 requestClose={() => setConfirmSignOutSession(undefined)}>
<Dialog variant="Surface">
<Header
style={{
padding: `0 ${config.space.S200} 0 ${config.space.S400}`,
borderBottomWidth: config.borderWidth.B300,
<Overlay open backdrop={<OverlayBackdrop />}>
<OverlayCenter>
<FocusTrap
focusTrapOptions={{
initialFocus: false,
fallbackFocus: () => document.body,
clickOutsideDeactivates: true,
onDeactivate: () => setConfirmSignOutSession(undefined),
escapeDeactivates: stopPropagation,
}}
variant="Surface"
size="500"
>
<Box grow="Yes">
<Text size="H4">Sign out</Text>
</Box>
</Header>
<Box style={{ padding: config.space.S400 }} direction="Column" gap="400">
<Text priority="400">
Are you sure you want to sign out of <b>{confirmSignOutSession.userId}</b>?
</Text>
<Box direction="Column" gap="200">
<Button
variant="Critical"
onClick={() => {
handleSignOut(confirmSignOutSession);
setConfirmSignOutSession(undefined);
<Dialog variant="Surface">
<Header
style={{
padding: `0 ${config.space.S200} 0 ${config.space.S400}`,
borderBottomWidth: config.borderWidth.B300,
}}
variant="Surface"
size="500"
>
<Text size="B400">Sign out</Text>
</Button>
<Button variant="Secondary" onClick={() => setConfirmSignOutSession(undefined)}>
<Text size="B400">Cancel</Text>
</Button>
</Box>
</Box>
</Dialog>
</Modal500>
<Box grow="Yes">
<Text size="H4">Sign out</Text>
</Box>
</Header>
<Box style={{ padding: config.space.S400 }} direction="Column" gap="400">
<Text priority="400">
Are you sure you want to sign out of <b>{confirmSignOutSession.userId}</b>?
</Text>
<Box direction="Column" gap="200">
<Button
variant="Critical"
onClick={() => {
handleSignOut(confirmSignOutSession);
setConfirmSignOutSession(undefined);
}}
>
<Text size="B400">Sign out</Text>
</Button>
<Button variant="Secondary" onClick={() => setConfirmSignOutSession(undefined)}>
<Text size="B400">Cancel</Text>
</Button>
</Box>
</Box>
</Dialog>
</FocusTrap>
</OverlayCenter>
</Overlay>
)}
</SidebarItem>
);
Expand Down
Loading