@bobfrankston/mailx 1.0.407 → 1.0.408

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,6 +9,7 @@ import { pickFolder } from "./folder-picker.js";
9
9
  let onMessageSelect;
10
10
  let currentAccountId;
11
11
  let currentFolderId;
12
+ let currentSpecialUse = ""; // Cached for reloads — an empty value on reload used to reset Sent/Drafts/Outbox to "From"
12
13
  let lastClickedRow = null;
13
14
  let currentPage;
14
15
  let totalMessages;
@@ -333,6 +334,7 @@ export function reloadCurrentFolder() {
333
334
  export async function loadUnifiedInbox(autoSelect = true) {
334
335
  unifiedMode = true;
335
336
  searchMode = false;
337
+ currentSpecialUse = "";
336
338
  showToInsteadOfFrom = false; // Unified inbox always shows From, not To
337
339
  currentPage = 1;
338
340
  totalMessages = 0;
@@ -439,7 +441,12 @@ export async function loadMessages(accountId, folderId, page = 1, specialUse = "
439
441
  // specialUse is either the DB tag ("sent"/"drafts"/"outbox") or the
440
442
  // folder path lowercased (folder-tree fallback when tag is missing — common
441
443
  // on Dovecot which doesn't advertise \Sent). Match both cases.
442
- const su = (specialUse || "").toLowerCase();
444
+ // Empty specialUse on reload means "keep what we had" — otherwise a
445
+ // folderCountsChanged event or sort-header click resets Sent/Drafts/Outbox
446
+ // back to showing From (user-reported regression 2026-04-24).
447
+ if (specialUse)
448
+ currentSpecialUse = specialUse;
449
+ const su = currentSpecialUse.toLowerCase();
443
450
  showToInsteadOfFrom = su === "sent" || su === "drafts" || su === "outbox"
444
451
  || su.endsWith("sent") || su.endsWith("drafts") || su.endsWith("outbox")
445
452
  || su === "sent items" || su === "sent mail" || su.endsWith("/sent items") || su.endsWith(".sent items");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bobfrankston/mailx",
3
- "version": "1.0.407",
3
+ "version": "1.0.408",
4
4
  "description": "Local-first email client with IMAP sync and standalone native app",
5
5
  "type": "module",
6
6
  "main": "bin/mailx.js",
@@ -31,12 +31,12 @@
31
31
  "postinstall": "node bin/postinstall.js"
32
32
  },
33
33
  "dependencies": {
34
- "@bobfrankston/iflow-direct": "^0.1.26",
35
- "@bobfrankston/iflow-node": "^0.1.7",
36
- "@bobfrankston/miscinfo": "^1.0.9",
37
- "@bobfrankston/oauthsupport": "^1.0.24",
38
- "@bobfrankston/msger": "^0.1.349",
39
- "@bobfrankston/mailx-host": "^0.1.4",
34
+ "@bobfrankston/iflow-direct": "^0.1.27",
35
+ "@bobfrankston/iflow-node": "^0.1.8",
36
+ "@bobfrankston/miscinfo": "^1.0.10",
37
+ "@bobfrankston/oauthsupport": "^1.0.25",
38
+ "@bobfrankston/msger": "^0.1.350",
39
+ "@bobfrankston/mailx-host": "^0.1.5",
40
40
  "@capacitor/android": "^8.3.0",
41
41
  "@capacitor/cli": "^8.3.0",
42
42
  "@capacitor/core": "^8.3.0",
@@ -47,10 +47,10 @@
47
47
  "quill": "^2.0.3",
48
48
  "ws": "^8.18.0",
49
49
  "sql.js": "^1.14.1",
50
- "@bobfrankston/tcp-transport": "^0.1.4",
51
- "@bobfrankston/node-tcp-transport": "^0.1.4",
52
- "@bobfrankston/smtp-direct": "^0.1.4",
53
- "@bobfrankston/mailx-sync": "^0.1.9"
50
+ "@bobfrankston/tcp-transport": "^0.1.5",
51
+ "@bobfrankston/node-tcp-transport": "^0.1.6",
52
+ "@bobfrankston/smtp-direct": "^0.1.5",
53
+ "@bobfrankston/mailx-sync": "^0.1.10"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/mailparser": "^3.4.6"
@@ -95,12 +95,12 @@
95
95
  },
96
96
  ".transformedSnapshot": {
97
97
  "dependencies": {
98
- "@bobfrankston/iflow-direct": "^0.1.26",
99
- "@bobfrankston/iflow-node": "^0.1.7",
100
- "@bobfrankston/miscinfo": "^1.0.9",
101
- "@bobfrankston/oauthsupport": "^1.0.24",
102
- "@bobfrankston/msger": "^0.1.349",
103
- "@bobfrankston/mailx-host": "^0.1.4",
98
+ "@bobfrankston/iflow-direct": "^0.1.27",
99
+ "@bobfrankston/iflow-node": "^0.1.8",
100
+ "@bobfrankston/miscinfo": "^1.0.10",
101
+ "@bobfrankston/oauthsupport": "^1.0.25",
102
+ "@bobfrankston/msger": "^0.1.350",
103
+ "@bobfrankston/mailx-host": "^0.1.5",
104
104
  "@capacitor/android": "^8.3.0",
105
105
  "@capacitor/cli": "^8.3.0",
106
106
  "@capacitor/core": "^8.3.0",
@@ -111,10 +111,10 @@
111
111
  "quill": "^2.0.3",
112
112
  "ws": "^8.18.0",
113
113
  "sql.js": "^1.14.1",
114
- "@bobfrankston/tcp-transport": "^0.1.4",
115
- "@bobfrankston/node-tcp-transport": "^0.1.4",
116
- "@bobfrankston/smtp-direct": "^0.1.4",
117
- "@bobfrankston/mailx-sync": "^0.1.9"
114
+ "@bobfrankston/tcp-transport": "^0.1.5",
115
+ "@bobfrankston/node-tcp-transport": "^0.1.6",
116
+ "@bobfrankston/smtp-direct": "^0.1.5",
117
+ "@bobfrankston/mailx-sync": "^0.1.10"
118
118
  }
119
119
  }
120
120
  }