Email library: await _loadAccounts before loading emails

After dropping the 'Default' chip, _loadAccounts started setting
state._libAccountId asynchronously while _loadEmails fired in parallel
with the still-null id. The list request was going out with no
account_id (so the server defaulted) while subsequent per-email reads
used the explicit id set after _loadAccounts resolved — back to the
same desync the chip-removal was meant to fix.

Sequence them: await _loadAccounts first, then kick off the folders /
reminders / emails fetches. The list always carries the right
account_id from the very first call.
This commit is contained in:
pewdiepie-archdaemon
2026-06-11 17:15:49 +09:00
parent 8e8ce8ddd6
commit 44f12f266e
+9 -4
View File
@@ -1321,10 +1321,15 @@ export function openEmailLibrary(opts = {}) {
document.addEventListener('keydown', state._libEscHandler, true);
_renderAccountsLoading();
_loadAccounts();
_loadFolders();
_loadEmailReminderBellVisibility();
_loadEmails();
// Await accounts before loading emails so the list request carries the
// right account_id from the very first fetch (now that we auto-select
// an explicit account instead of relying on a 'Default' chip).
(async () => {
await _loadAccounts();
_loadFolders();
_loadEmailReminderBellVisibility();
_loadEmails();
})();
}
async function _loadAccounts() {