@bobfrankston/rmfmail 1.1.79 → 1.1.80

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.
Files changed (35) hide show
  1. package/.commitmsg +10 -12
  2. package/client/android-bootstrap.bundle.js +5 -0
  3. package/client/android-bootstrap.bundle.js.map +2 -2
  4. package/client/app.bundle.js +31 -17
  5. package/client/app.bundle.js.map +3 -3
  6. package/client/components/message-viewer.js +29 -19
  7. package/client/components/message-viewer.js.map +1 -1
  8. package/client/components/message-viewer.ts +28 -19
  9. package/client/compose/compose.bundle.js +5 -0
  10. package/client/compose/compose.bundle.js.map +2 -2
  11. package/client/lib/api-client.js +7 -0
  12. package/client/lib/api-client.js.map +1 -1
  13. package/client/lib/api-client.ts +8 -0
  14. package/client/lib/mailxapi.js +3 -0
  15. package/npmchanges.md +17 -0
  16. package/package.json +3 -3
  17. package/packages/mailx-service/index.d.ts +9 -0
  18. package/packages/mailx-service/index.d.ts.map +1 -1
  19. package/packages/mailx-service/index.js +26 -0
  20. package/packages/mailx-service/index.js.map +1 -1
  21. package/packages/mailx-service/index.ts +25 -0
  22. package/packages/mailx-service/jsonrpc.js +2 -0
  23. package/packages/mailx-service/jsonrpc.js.map +1 -1
  24. package/packages/mailx-service/jsonrpc.ts +2 -0
  25. package/packages/mailx-store-web/package.json +1 -1
  26. package/packages/mailx-store-web/web-service.d.ts +4 -0
  27. package/packages/mailx-store-web/web-service.d.ts.map +1 -1
  28. package/packages/mailx-store-web/web-service.js +3 -0
  29. package/packages/mailx-store-web/web-service.js.map +1 -1
  30. package/packages/mailx-store-web/web-service.ts +3 -0
  31. package/packages/mailx-types/mailx-api.d.ts +4 -0
  32. package/packages/mailx-types/mailx-api.d.ts.map +1 -1
  33. package/packages/mailx-types/mailx-api.ts +1 -0
  34. package/packages/mailx-types/package.json +1 -1
  35. /package/packages/mailx-imap/{node_modules.npmglobalize-stash-81260 → node_modules.npmglobalize-stash-78668}/.package-lock.json +0 -0
package/.commitmsg CHANGED
@@ -1,14 +1,12 @@
1
- Fix user-dictionary persistence; correct contacts.md
1
+ Fix: opening an attachment did nothing on desktop
2
2
 
3
- User dictionary never reached the server: mailxapi.js (the desktop IPC
4
- bridge) had no getUserDict/addUserDictWord methods, so api-client's
5
- optional-chained calls silently no-op'd added words lived only in
6
- localStorage. Added the four bridge methods, a bulk addUserDictWords
7
- RPC, and a load-time reconcile in spellcheck.ts that pushes any
8
- localStorage-only words up to userdict.csv so accumulated words are
9
- recovered.
3
+ Clicking an attachment chip fired a programmatic <a download> click,
4
+ which msger's WebView2 silently drops so nothing happened and the
5
+ failure was swallowed by a console-only catch.
10
6
 
11
- contacts.md: removed the stale `discovered` documentation since Q150
12
- the discovered set is a per-device local cache and is not written to or
13
- synced via contacts.jsonc. Documented the cloud file as preferred +
14
- denylist + groups (+ preserved hand-added keys).
7
+ New service method openAttachment saves the attachment to
8
+ ~/.rmfmail/attachments/ and opens it with the OS default app (start /
9
+ open / xdg-open), the same in-process pattern as openInWord. The viewer
10
+ now calls it on desktop, keeps the native-bridge path for Android, and
11
+ falls back to the blob download only for a real browser / --server
12
+ mode. Failures now surface via an alert instead of vanishing.
@@ -6253,6 +6253,11 @@ ${bodyEncoded}`;
6253
6253
  async getAttachment(_accountId, _uid, _attachmentId, _folderId) {
6254
6254
  return this.notImpl("getAttachment");
6255
6255
  }
6256
+ // Android opens attachments via the native bridge (_nativeBridge.openAttachment),
6257
+ // not this service path — getAttachment + base64 hand-off covers it.
6258
+ async openAttachment(_accountId, _uid, _attachmentId, _folderId) {
6259
+ return this.notImpl("openAttachment");
6260
+ }
6256
6261
  // Spam / abuse
6257
6262
  async markAsSpamMessages(_accountId, _uids) {
6258
6263
  return this.notImpl("markAsSpamMessages");