add: show_nsfw, hide_extra_post_tabs settings

add: ability to remove tokens from account switcher ui
This commit is contained in:
trisua 2025-06-02 16:11:27 -04:00
parent 88afb3ec37
commit 701ea79c9a
7 changed files with 70 additions and 77 deletions

View file

@ -438,7 +438,7 @@
["object"],
);
self.define("login", ({ $ }, username) => {
self.define("login", (_, username) => {
const token = self.LOGIN_ACCOUNT_TOKENS[username];
if (!token) {
@ -448,20 +448,41 @@
window.location.href = `/api/v1/auth/token?token=${token}`;
});
self.define("remove_token", async (_, username) => {
if (
!(await trigger("atto::confirm", [
"Are you sure you would like to do this?",
]))
) {
return;
}
delete self.LOGIN_ACCOUNT_TOKENS[username];
self.set_login_account_tokens(self.LOGIN_ACCOUNT_TOKENS);
trigger("atto::toast", ["success", "Token removed"]);
});
self.define("render_token_picker", ({ $ }, element) => {
element.innerHTML = "";
for (const token of Object.entries($.LOGIN_ACCOUNT_TOKENS)) {
element.innerHTML += `<button class="quaternary w-full justify-start" onclick="trigger('me::login', ['${token[0]}'])">
<img
title="${token[0]}'s avatar"
src="/api/v1/auth/user/${token[0]}/avatar?selector_type=username"
alt="Avatar image"
class="avatar"
style="--size: 24px"
/>
element.innerHTML += `<div class="flex gap-2 flex-row">
<button class="quaternary w-full justify-start" onclick="trigger('me::login', ['${token[0]}'])">
<img
title="${token[0]}'s avatar"
src="/api/v1/auth/user/${token[0]}/avatar?selector_type=username"
alt="Avatar image"
class="avatar"
style="--size: 24px"
/>
<span>${token[0]}</span>
</button>`;
<span>${token[0]}</span>
</button>
<button onclick="trigger('me::remove_token', ['${token[0]}'])" class="small square red quaternary">
-
</button>
</div>`;
}
});