From 7957fa686eb6e8cf57bcb62ff4e6d2785693030b Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Sat, 10 Oct 2026 16:29:20 +0200 Subject: feat(android): back up WhatsApp's own chat backups, and its media if asked A WhatsApp section takes WhatsApp's folder through the picker, sends its encrypted Databases and Backups (not the dated copies of earlier weeks) into /-whatsapp, and names the restore set in the manifest. Co-Authored-By: Claude Opus 5.5 --- packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js') diff --git a/packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js b/packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js index af59605..631be50 100644 --- a/packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js +++ b/packages/meshbay-hub/src/meshbay_hub/static/android-sync-page.js @@ -12,7 +12,8 @@ import * as platform from './platform.js'; import { PhotoSyncSection } from './photo-sync-settings.js'; import { DocSyncSection } from './phone-sync-settings.js'; import { DriveSyncSection } from './drive-sync-settings.js'; -import { runDriveSync } from './drive-sync.js'; +import { WhatsAppSyncSection } from './whatsapp-sync-settings.js'; +import { runDriveSync, runWhatsAppSync } from './drive-sync.js'; import { runPhotoSync } from './photo-sync.js'; import { runDocSync, KINDS } from './phone-sync.js'; import { @@ -25,6 +26,7 @@ function kindDirs(folder, account) { ...(platform.photoSync.available ? ['photos'] : []), ...Object.values(KINDS).filter((k) => k.sync.available).map((k) => k.suffix), ...(platform.driveSync.available ? ['drive'] : []), + ...(platform.whatsappSync.available ? ['whatsapp'] : []), ]; return suffixes.map((s) => `${folder}/${account}-${s}`); } @@ -46,6 +48,7 @@ export function AndroidSyncPage({ user, groups }) { if (platform.photoSync.available) runPhotoSync(); for (const kind of Object.keys(KINDS)) if (KINDS[kind].sync.available) runDocSync(kind); if (platform.driveSync.available) runDriveSync(); + if (platform.whatsappSync.available) runWhatsAppSync(); }; return html` @@ -58,6 +61,8 @@ export function AndroidSyncPage({ user, groups }) { <${DocSyncSection} key=${kind + place} kind=${kind} destination=${mine} />`)} ${platform.driveSync.available && html` <${DriveSyncSection} key=${'drive' + place} destination=${mine} />`} + ${platform.whatsappSync.available && html` + <${WhatsAppSyncSection} key=${'whatsapp' + place} destination=${mine} />`} `; } -- cgit v1.2.3