···
31
-
let [followRecords, setFollowRecords] = createStore<FollowRecord[]>([]);
32
-
let [loginState, setLoginState] = createSignal<boolean>();
31
+
const [followRecords, setFollowRecords] = createStore<FollowRecord[]>([]);
32
+
const [loginState, setLoginState] = createSignal<boolean>();
33
+
const [notice, setNotice] = createSignal("");
const client = await BrowserOAuthClient.load({
clientId: "https://cleanfollow-bsky.pages.dev/client-metadata.json",
···
const loginBsky = async (handle: string) => {
59
+
setNotice("Redirecting...");
await client.signIn(handle, {
signal: new AbortController().signal,
65
+
setNotice("Error during OAuth redirection");
const logoutBsky = async () => {
···
const [loginInput, setLoginInput] = createSignal("");
const [progress, setProgress] = createSignal(0);
const [followCount, setFollowCount] = createSignal(0);
215
-
const [notice, setNotice] = createSignal("");
const fetchHiddenAccounts = async () => {
const fetchFollows = async () => {
···
<h1 class="text-2xl mb-5">cleanfollow-bsky</h1>
<div class="mb-3 text-center">
<p>Unfollow blocked, deleted, suspended, and deactivated accounts</p>
417
+
<p>By default, every account will be unselected</p>
class="text-blue-600 hover:underline"