Skip to content

Commit d391732

Browse files
committed
After adding an account, verify that it is signed in and change to the account screen
1 parent b10dbbd commit d391732

1 file changed

Lines changed: 21 additions & 2 deletions

File tree

app/add-account.tsx

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ import {
1313
import { SafeAreaView } from "react-native-safe-area-context";
1414

1515
import { Colors } from "@/constants/theme";
16+
import { BlueskyAccountController } from "@/controllers";
1617
import { useAccounts } from "@/hooks/use-accounts";
1718
import { useColorScheme } from "@/hooks/use-color-scheme";
19+
import { verifyBlueskyAccountAuthStatus } from "@/services/bluesky-account-auth-status";
1820
import {
1921
authenticateBlueskyAccount,
2022
normalizeHandle,
@@ -52,8 +54,25 @@ export default function AddAccountScreen() {
5254
setSubmitting(true);
5355
setError(null);
5456
try {
55-
await authenticateBlueskyAccount(handle);
56-
router.back();
57+
const savedAccount = await authenticateBlueskyAccount(handle);
58+
try {
59+
const controller = new BlueskyAccountController(
60+
savedAccount.id,
61+
savedAccount.uuid
62+
);
63+
await controller.initDB();
64+
await verifyBlueskyAccountAuthStatus(controller, savedAccount);
65+
await controller.cleanup();
66+
} catch (verifyError) {
67+
console.warn(
68+
"[AddAccount] Failed to persist auth status after OAuth",
69+
verifyError
70+
);
71+
}
72+
router.replace({
73+
pathname: "/account/[accountId]",
74+
params: { accountId: savedAccount.uuid },
75+
});
5776
} catch (err) {
5877
console.error("[Bluesky OAuth] Authentication failed", err);
5978
const message = err instanceof Error ? err.message : String(err);

0 commit comments

Comments
 (0)