Unfollow tool for Bluesky

fix getProfile error handling resolves #12

Changed files
+13 -13
src
+13 -13
src/App.tsx
···
const follow = record.value as AppBskyGraphFollow.Main;
let handle = "";
-
try {
-
const res = await rpc.get("app.bsky.actor.getProfile", {
-
params: { actor: follow.subject },
-
});
+
const res = await rpc.get("app.bsky.actor.getProfile", {
+
params: { actor: follow.subject },
+
});
-
if (!res.ok) throw new Error(res.data.error);
+
if (!res.ok) {
+
handle = await resolveDid(follow.subject);
+
const e = res.data as any;
+
+
status =
+
e.message.includes("not found") ? RepoStatus.DELETED
+
: e.message.includes("deactivated") ? RepoStatus.DEACTIVATED
+
: e.message.includes("suspended") ? RepoStatus.SUSPENDED
+
: undefined;
+
} else {
handle = res.data.handle;
const viewer = res.data.viewer!;
···
} else if (viewer.blocking || viewer.blockingByList) {
status = RepoStatus.BLOCKING;
}
-
} catch (e: any) {
-
handle = await resolveDid(follow.subject);
-
-
status =
-
e.message.includes("not found") ? RepoStatus.DELETED
-
: e.message.includes("deactivated") ? RepoStatus.DEACTIVATED
-
: e.message.includes("suspended") ? RepoStatus.SUSPENDED
-
: undefined;
}
const status_label =