@bobfrankston/rmfmail 1.2.296 → 1.2.298

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 (36) hide show
  1. package/.commitmsg +28 -24
  2. package/client/android-bootstrap.bundle.js.map +2 -2
  3. package/client/app.bundle.js +20 -0
  4. package/client/app.bundle.js.map +2 -2
  5. package/client/app.js +27 -1
  6. package/client/app.js.map +1 -1
  7. package/client/app.ts +25 -1
  8. package/client/compose/compose.bundle.js.map +2 -2
  9. package/client/compose/compose.js +7 -4
  10. package/client/compose/compose.js.map +1 -1
  11. package/client/compose/compose.ts +7 -4
  12. package/client/index.html +5 -0
  13. package/client/styles/components.css +22 -5
  14. package/npmchanges.md +67 -0
  15. package/package.json +7 -7
  16. package/packages/mailx-imap/index.d.ts +1 -0
  17. package/packages/mailx-imap/index.d.ts.map +1 -1
  18. package/packages/mailx-imap/index.js +34 -4
  19. package/packages/mailx-imap/index.js.map +1 -1
  20. package/packages/mailx-imap/index.ts +32 -5
  21. package/packages/mailx-imap/package-lock.json +2 -2
  22. package/packages/mailx-imap/package.json +1 -1
  23. package/packages/mailx-service/index.d.ts.map +1 -1
  24. package/packages/mailx-service/index.js +10 -0
  25. package/packages/mailx-service/index.js.map +1 -1
  26. package/packages/mailx-service/index.ts +10 -0
  27. package/packages/mailx-service/package.json +1 -1
  28. package/packages/mailx-settings/package.json +1 -1
  29. package/packages/mailx-store/package.json +1 -1
  30. package/packages/mailx-store-web/package.json +1 -1
  31. package/packages/mailx-types/index.d.ts +10 -4
  32. package/packages/mailx-types/index.d.ts.map +1 -1
  33. package/packages/mailx-types/index.js.map +1 -1
  34. package/packages/mailx-types/index.ts +10 -4
  35. package/packages/mailx-types/package.json +1 -1
  36. /package/packages/mailx-imap/{node_modules.npmglobalize-stash-40440 → node_modules.npmglobalize-stash-39180}/.package-lock.json +0 -0
package/.commitmsg CHANGED
@@ -1,29 +1,33 @@
1
- A star set on the phone now reaches the desktop in seconds, not minutes
1
+ The signature in accounts.jsonc never reached compose
2
2
 
3
- Bob 2026-08-29: "how long should it take for a * on the phone to get to my
4
- desktop?" Measured, on his own log: a median of 5 minutes and up to 20.
3
+ `sig` has been a documented field on AccountConfig for months and three of the
4
+ four accounts carried one, yet no signature has ever appeared in a compose
5
+ window. The reason is a projection: `MailxService.getAccounts()` builds the
6
+ client's account list field by field — id/name/email from the DB row, then
7
+ label, defaultSend, primary*, identityDomains from the config — and `sig` and
8
+ `signature` were simply not on the list. `normalizeAccount()` resolved them
9
+ correctly, `openCompose` forwarded `a.sig` faithfully, and compose.ts appended
10
+ `acct.sig` exactly as designed; the value was undefined by the time any of that
11
+ ran.
5
12
 
6
- Why: gal.iecc.com does not advertise NOTIFY, so the desktop watches INBOX with
7
- plain IDLE. The server DOES push a flag change there as an unsolicited
8
- `* 1234 FETCH (FLAGS (\Seen \Flagged))` iflow-direct dropped it (fixed in
9
- 0.1.67), and mailx had nothing to receive it with. The 5-minute quick check
10
- could not help either: it is a STATUS poll, and MESSAGES / UNSEEN / UIDNEXT do
11
- not move when a message is starred. So the only path was the periodic full
12
- sync's QRESYNC pass — which is why the numbers above are the sync cadence
13
- rather than any property of flags.
13
+ Both fields are now carried, with a comment saying why the enumeration stays an
14
+ enumeration rather than becoming `...cfg`: cfg holds the IMAP and SMTP
15
+ passwords, which have no business crossing into the WebView. Anything new that
16
+ the client needs has to be added in that spot deliberately.
14
17
 
15
- The IDLE watcher now takes `onFlagChange` and, debounced 1.5 s, runs the
16
- folder's normal QRESYNC pass the same one that already reconciles flags and
17
- took 53 ms in that log. Marking ten messages read on the phone arrives as ten
18
- pushes and costs one pass. Our own STOREs bounce back as flag pushes too, so
19
- the handler skips while this account has sync actions draining; the local store
20
- already has those.
18
+ The signature itself moved to the top level of accounts.jsonc three
19
+ byte-identical per-account copies replaced by the one the file format already
20
+ supports, which every account without its own `sig` inherits. It is now
21
+ `Bob Frankston<br>https://Frankston.com` with `html: true`; the previous text
22
+ relied on bare newlines for its line break (HTML collapses those to a space)
23
+ and pointed at a relative `href='Frankston.com'`, which resolves against
24
+ whatever page the mail client happens to be rendering.
21
25
 
22
- INBOX only, because IDLE watches one mailbox per connection. Flags changed in
23
- other folders still wait for that folder's turn in the sync cycle.
26
+ Two stale comments corrected while here. `AccountSignature.html` was documented
27
+ in both mailx-types and compose.ts as "reserved for future use / currently
28
+ ignored". It has never been ignored — compose has always branched on it — and
29
+ now that a signature actually renders, the difference between escaped text and
30
+ raw HTML is the thing an author needs to know.
24
31
 
25
- Also in this build: the log noise behind it. `[search]` / `[fetch]` per-command
26
- lines moved behind iflow's existing `verbose` flag, and the repeated
27
- per-folder reconcile lines now go through `logIfChanged` — first occurrence,
28
- every change, and an hourly restatement — instead of once per folder per cycle
29
- forever. On Android each of those lines was an HTTP request to the log server.
32
+ Compose only. Nothing in the send path or the daemon appends a signature; the
33
+ body that leaves the editor is the body that goes out.