@bobfrankston/rmfmail 1.2.106 → 1.2.110
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.
- package/bin/mailx.js +8 -3
- package/bin/mailx.js.map +1 -1
- package/bin/mailx.ts +8 -3
- package/client/android-bootstrap.bundle.js +93 -4
- package/client/android-bootstrap.bundle.js.map +3 -3
- package/client/compose/compose.bundle.js +30 -3
- package/client/compose/compose.bundle.js.map +2 -2
- package/client/lib/rmf-tiny.js +41 -3
- package/debug.md +33 -0
- package/package.json +3 -3
- package/packages/mailx-imap/index.d.ts.map +1 -1
- package/packages/mailx-imap/index.js +17 -3
- package/packages/mailx-imap/index.js.map +1 -1
- package/packages/mailx-imap/index.ts +16 -3
- package/packages/mailx-imap/package-lock.json +2 -2
- package/packages/mailx-imap/package.json +1 -1
- package/packages/mailx-service/index.d.ts +9 -0
- package/packages/mailx-service/index.d.ts.map +1 -1
- package/packages/mailx-service/index.js +133 -77
- package/packages/mailx-service/index.js.map +1 -1
- package/packages/mailx-service/index.ts +107 -55
- package/packages/mailx-settings/package.json +1 -1
- package/packages/mailx-store-web/android-bootstrap.d.ts.map +1 -1
- package/packages/mailx-store-web/android-bootstrap.js +25 -0
- package/packages/mailx-store-web/android-bootstrap.js.map +1 -1
- package/packages/mailx-store-web/android-bootstrap.ts +25 -0
- package/packages/mailx-store-web/db.d.ts +7 -0
- package/packages/mailx-store-web/db.d.ts.map +1 -1
- package/packages/mailx-store-web/db.js +24 -1
- package/packages/mailx-store-web/db.js.map +1 -1
- package/packages/mailx-store-web/db.ts +20 -1
- package/packages/mailx-store-web/package.json +1 -1
- package/packages/mailx-store-web/web-service.d.ts +15 -2
- package/packages/mailx-store-web/web-service.d.ts.map +1 -1
- package/packages/mailx-store-web/web-service.js +35 -2
- package/packages/mailx-store-web/web-service.js.map +1 -1
- package/packages/mailx-store-web/web-service.ts +33 -2
- package/packages/mailx-store-web/web-settings.d.ts +6 -0
- package/packages/mailx-store-web/web-settings.d.ts.map +1 -1
- package/packages/mailx-store-web/web-settings.js +20 -0
- package/packages/mailx-store-web/web-settings.js.map +1 -1
- package/packages/mailx-store-web/web-settings.ts +20 -0
|
@@ -640,9 +640,32 @@ export class WebMailxService implements MailxApi {
|
|
|
640
640
|
searchContacts(query: string): any[] {
|
|
641
641
|
query = (query || "").trim();
|
|
642
642
|
if (query.length < 1) return [];
|
|
643
|
+
// Fire-and-forget freshness kick — NEVER awaited (local-first: this
|
|
644
|
+
// is the keystroke → suggestions path). A denylist edit made on
|
|
645
|
+
// desktop applies to the next keystrokes once the reload lands.
|
|
646
|
+
void this.maybeRefreshContactsConfig().catch(() => { /* probe is best-effort */ });
|
|
643
647
|
return this.db.searchContacts(query);
|
|
644
648
|
}
|
|
645
649
|
|
|
650
|
+
/** Re-pull contacts.jsonc only when the Drive copy actually changed.
|
|
651
|
+
* One metadata request (cloudStat) throttled to a few minutes; the
|
|
652
|
+
* full download + reload runs only on a new modifiedTime. Kicked from
|
|
653
|
+
* autocomplete, the periodic sync tick, and app-resume. */
|
|
654
|
+
private _contactsStatAt = 0;
|
|
655
|
+
private _contactsModifiedTime: string | null = null;
|
|
656
|
+
private static readonly CONTACTS_STAT_MS = 3 * 60 * 1000;
|
|
657
|
+
async maybeRefreshContactsConfig(): Promise<void> {
|
|
658
|
+
const now = Date.now();
|
|
659
|
+
if (now - this._contactsStatAt < WebMailxService.CONTACTS_STAT_MS) return;
|
|
660
|
+
this._contactsStatAt = now;
|
|
661
|
+
const { cloudStat } = await import("./web-settings.js");
|
|
662
|
+
const stat = await cloudStat("contacts.jsonc");
|
|
663
|
+
if (!stat || stat.modifiedTime === this._contactsModifiedTime) return;
|
|
664
|
+
this._contactsModifiedTime = stat.modifiedTime;
|
|
665
|
+
console.log(`[contacts] contacts.jsonc changed on Drive (${stat.modifiedTime}) — reloading`);
|
|
666
|
+
await this.loadContactsConfig();
|
|
667
|
+
}
|
|
668
|
+
|
|
646
669
|
/** Address-book listing — paginated, filterable. Mirrors mailx-service's
|
|
647
670
|
* signature so the same client-side address-book modal works on Android
|
|
648
671
|
* without an "ipc(...).listContacts is not a function" crash. */
|
|
@@ -897,8 +920,13 @@ export class WebMailxService implements MailxApi {
|
|
|
897
920
|
* local contacts table. Desktop flushes the full union there (everything
|
|
898
921
|
* it discovered from its mailbox corpus + Google contacts + preferred);
|
|
899
922
|
* this is how an Android device gets contacts it never saw in its own
|
|
900
|
-
* (partial) on-device corpus. Called
|
|
901
|
-
*
|
|
923
|
+
* (partial) on-device corpus. Called at startup AND on a periodic tick /
|
|
924
|
+
* app-resume / after a ⊘ so a denylist edit made on another device
|
|
925
|
+
* reaches a running phone (Bob 2026-07-07: GDrive edit was still being
|
|
926
|
+
* offered). The denylist refresh runs every call; the contact IMPORT
|
|
927
|
+
* runs once per session — recordSentAddress bumps `use_count`, so
|
|
928
|
+
* re-importing on every reload would inflate autocomplete rank. */
|
|
929
|
+
private _contactsImported = false;
|
|
902
930
|
async loadContactsConfig(): Promise<any> {
|
|
903
931
|
try {
|
|
904
932
|
const { cloudRead } = await import("./web-settings.js");
|
|
@@ -910,6 +938,9 @@ export class WebMailxService implements MailxApi {
|
|
|
910
938
|
// autocomplete — without this the ⊘ button writes the cloud file
|
|
911
939
|
// but the phone keeps suggesting the address.
|
|
912
940
|
this.db.setContactsDenylist(Array.isArray(cfg.denylist) ? cfg.denylist : []);
|
|
941
|
+
this.db.setContactsDenyPatterns(Array.isArray(cfg.denylistPatterns) ? cfg.denylistPatterns : []);
|
|
942
|
+
if (this._contactsImported) return { imported: 0 };
|
|
943
|
+
this._contactsImported = true;
|
|
913
944
|
let imported = 0;
|
|
914
945
|
for (const list of [cfg.preferred, cfg.discovered]) {
|
|
915
946
|
if (!Array.isArray(list)) continue;
|
|
@@ -13,6 +13,12 @@ export declare function setGDriveTokenProvider(provider: () => Promise<string>):
|
|
|
13
13
|
export declare function setGDriveFolderId(folderId: string, folderName?: string, ownerEmail?: string, folderPath?: string): void;
|
|
14
14
|
export declare function cloudRead(filename: string): Promise<string | null>;
|
|
15
15
|
export declare function cloudWrite(filename: string, content: string): Promise<boolean>;
|
|
16
|
+
/** Cheap freshness probe: one Drive metadata request (no content download).
|
|
17
|
+
* Returns the file's modifiedTime, or null if unreachable / missing. */
|
|
18
|
+
export declare function cloudStat(filename: string): Promise<{
|
|
19
|
+
id: string;
|
|
20
|
+
modifiedTime: string;
|
|
21
|
+
} | null>;
|
|
16
22
|
declare const DEFAULT_PREFERENCES: {
|
|
17
23
|
ui: {
|
|
18
24
|
theme: "system";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-settings.d.ts","sourceRoot":"","sources":["web-settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web-settings.d.ts","sourceRoot":"","sources":["web-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,26 @@ export async function cloudRead(filename) {
|
|
|
81
81
|
export async function cloudWrite(filename, content) {
|
|
82
82
|
return gDriveWrite(filename, content);
|
|
83
83
|
}
|
|
84
|
+
/** Cheap freshness probe: one Drive metadata request (no content download).
|
|
85
|
+
* Returns the file's modifiedTime, or null if unreachable / missing. */
|
|
86
|
+
export async function cloudStat(filename) {
|
|
87
|
+
if (!tokenProvider || !gDriveFolderId)
|
|
88
|
+
return null;
|
|
89
|
+
try {
|
|
90
|
+
const token = await tokenProvider();
|
|
91
|
+
const q = encodeURIComponent(`name='${filename}' and '${gDriveFolderId}' in parents and trashed=false`);
|
|
92
|
+
const res = await globalThis.fetch(`https://www.googleapis.com/drive/v3/files?q=${q}&fields=files(id,modifiedTime)`, { headers: { "Authorization": `Bearer ${token}` } });
|
|
93
|
+
if (!res.ok)
|
|
94
|
+
return null;
|
|
95
|
+
const data = await res.json();
|
|
96
|
+
const f = data.files?.[0];
|
|
97
|
+
return f?.id ? { id: f.id, modifiedTime: f.modifiedTime || "" } : null;
|
|
98
|
+
}
|
|
99
|
+
catch (e) {
|
|
100
|
+
console.error(`[settings] GDrive stat ${filename}: ${e.message}`);
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
84
104
|
async function gDriveRead(filename) {
|
|
85
105
|
if (!tokenProvider || !gDriveFolderId)
|
|
86
106
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-settings.js","sourceRoot":"","sources":["web-settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web-settings.js","sourceRoot":"","sources":["web-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -91,6 +91,26 @@ export async function cloudRead(filename: string): Promise<string | null> {
|
|
|
91
91
|
export async function cloudWrite(filename: string, content: string): Promise<boolean> {
|
|
92
92
|
return gDriveWrite(filename, content);
|
|
93
93
|
}
|
|
94
|
+
/** Cheap freshness probe: one Drive metadata request (no content download).
|
|
95
|
+
* Returns the file's modifiedTime, or null if unreachable / missing. */
|
|
96
|
+
export async function cloudStat(filename: string): Promise<{ id: string; modifiedTime: string } | null> {
|
|
97
|
+
if (!tokenProvider || !gDriveFolderId) return null;
|
|
98
|
+
try {
|
|
99
|
+
const token = await tokenProvider();
|
|
100
|
+
const q = encodeURIComponent(`name='${filename}' and '${gDriveFolderId}' in parents and trashed=false`);
|
|
101
|
+
const res = await globalThis.fetch(
|
|
102
|
+
`https://www.googleapis.com/drive/v3/files?q=${q}&fields=files(id,modifiedTime)`,
|
|
103
|
+
{ headers: { "Authorization": `Bearer ${token}` } }
|
|
104
|
+
);
|
|
105
|
+
if (!res.ok) return null;
|
|
106
|
+
const data = await res.json() as any;
|
|
107
|
+
const f = data.files?.[0];
|
|
108
|
+
return f?.id ? { id: f.id, modifiedTime: f.modifiedTime || "" } : null;
|
|
109
|
+
} catch (e: any) {
|
|
110
|
+
console.error(`[settings] GDrive stat ${filename}: ${e.message}`);
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
94
114
|
|
|
95
115
|
async function gDriveRead(filename: string): Promise<string | null> {
|
|
96
116
|
if (!tokenProvider || !gDriveFolderId) return null;
|