@bobfrankston/rmfmail 1.0.479 → 1.0.481
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/client/app.js +22 -2
- package/client/app.js.map +1 -1
- package/client/app.ts +15 -2
- package/client/lib/local-store.js +1 -1
- package/client/lib/local-store.js.map +1 -1
- package/package.json +5 -5
- package/packages/mailx-service/index.d.ts +5 -0
- package/packages/mailx-service/index.d.ts.map +1 -1
- package/packages/mailx-service/index.ts +1 -1
- package/packages/mailx-settings/index.d.ts +3 -0
- package/packages/mailx-settings/index.d.ts.map +1 -1
- package/packages/mailx-settings/index.js +6 -5
- package/packages/mailx-settings/index.js.map +1 -1
- package/packages/mailx-settings/index.ts +7 -6
- package/packages/mailx-store-web/android-bootstrap.d.ts.map +1 -1
- package/packages/mailx-store-web/android-bootstrap.js +46 -11
- package/packages/mailx-store-web/android-bootstrap.js.map +1 -1
- package/packages/mailx-store-web/android-bootstrap.ts +50 -13
- package/packages/mailx-store-web/web-service.d.ts +4 -0
- package/packages/mailx-store-web/web-service.d.ts.map +1 -1
- package/packages/mailx-store-web/web-service.ts +1 -1
- package/packages/mailx-store-web/web-settings.d.ts +5 -1
- package/packages/mailx-store-web/web-settings.d.ts.map +1 -1
- package/packages/mailx-store-web/web-settings.js +22 -3
- package/packages/mailx-store-web/web-settings.js.map +1 -1
- package/packages/mailx-store-web/web-settings.ts +20 -4
- package/packages/mailx-store-web/worker-entry.js +39 -8
- package/packages/mailx-store-web/worker-entry.js.map +1 -1
- package/packages/mailx-store-web/worker-entry.ts +40 -10
package/client/app.js
CHANGED
|
@@ -1942,6 +1942,16 @@ onWsEvent((event) => {
|
|
|
1942
1942
|
statusSync.textContent = `Error: ${event.message}`;
|
|
1943
1943
|
showAlert(event.message, "ws-error");
|
|
1944
1944
|
break;
|
|
1945
|
+
case "fatal":
|
|
1946
|
+
// Unrecoverable startup failure — sticky red banner, no auto-dismiss.
|
|
1947
|
+
// Used for GDrive-folder-missing and similar conditions where the
|
|
1948
|
+
// app cannot function. console.warn would be invisible in the GUI.
|
|
1949
|
+
if (alertBanner)
|
|
1950
|
+
alertBanner.style.background = "oklch(0.45 0.18 25)";
|
|
1951
|
+
showAlert(event.message || "Fatal error", event.key || "fatal", { sticky: true });
|
|
1952
|
+
if (statusSync)
|
|
1953
|
+
statusSync.textContent = `FATAL: ${event.message}`;
|
|
1954
|
+
break;
|
|
1945
1955
|
case "outboxStatus":
|
|
1946
1956
|
renderOutboxStatus(event);
|
|
1947
1957
|
break;
|
|
@@ -2826,7 +2836,7 @@ async function openAboutDialog() {
|
|
|
2826
2836
|
panel.className = "mailx-modal";
|
|
2827
2837
|
panel.innerHTML = `
|
|
2828
2838
|
<div class="mailx-modal-title">
|
|
2829
|
-
<span class="mailx-modal-title-text">About
|
|
2839
|
+
<span class="mailx-modal-title-text">About ${APP_NAME}</span>
|
|
2830
2840
|
<button type="button" class="mailx-modal-close" id="about-x" title="Close (Esc)" aria-label="Close">×</button>
|
|
2831
2841
|
</div>
|
|
2832
2842
|
<div class="mailx-about" id="about-body">Loading...</div>
|
|
@@ -2876,6 +2886,16 @@ async function openAboutDialog() {
|
|
|
2876
2886
|
rows.push(["Cloud path", `My Drive/${storage.cloudPath}/`]);
|
|
2877
2887
|
if (storage.mode)
|
|
2878
2888
|
rows.push(["Storage mode", storage.mode]);
|
|
2889
|
+
if (storage.folderPath)
|
|
2890
|
+
rows.push(["Drive path", storage.folderPath]);
|
|
2891
|
+
else if (storage.folderName)
|
|
2892
|
+
rows.push(["Drive folder", storage.folderName]);
|
|
2893
|
+
if (storage.folderId)
|
|
2894
|
+
rows.push(["Drive folderId", storage.folderId]);
|
|
2895
|
+
if (storage.folderOwner)
|
|
2896
|
+
rows.push(["Drive owner", storage.folderOwner]);
|
|
2897
|
+
if (storage.configDir)
|
|
2898
|
+
rows.push(["Config dir", storage.configDir]);
|
|
2879
2899
|
rows.push(["Accounts", String((accounts || []).length)]);
|
|
2880
2900
|
rows.push(["User agent", navigator.userAgent]);
|
|
2881
2901
|
rows.push(["Screen", `${screen.width}×${screen.height}`]);
|
|
@@ -2893,7 +2913,7 @@ async function openAboutDialog() {
|
|
|
2893
2913
|
${accounts.map(a => `<li>${escapeHtml(a.email || a.id)}${a.name ? ` — ${escapeHtml(a.name)}` : ""}</li>`).join("")}
|
|
2894
2914
|
</ul>
|
|
2895
2915
|
</div>` : ""}
|
|
2896
|
-
<div class="mailx-about-foot"
|
|
2916
|
+
<div class="mailx-about-foot">${APP_NAME} — local-first mail client</div>`;
|
|
2897
2917
|
}
|
|
2898
2918
|
catch (e) {
|
|
2899
2919
|
body.textContent = `Failed to load: ${e.message}`;
|