canvas-website/src/components
Jeff Emmett e69ed0e867 feat: implement Google Data Sovereignty module for local-first data control
Core modules:
- encryption.ts: WebCrypto AES-256-GCM, HKDF key derivation, PKCE utilities
- database.ts: IndexedDB schema for gmail, drive, photos, calendar
- oauth.ts: OAuth 2.0 PKCE flow with encrypted token storage
- share.ts: Create tldraw shapes from encrypted data
- backup.ts: R2 backup service with encrypted manifest

Importers:
- gmail.ts: Gmail import with pagination and batch storage
- drive.ts: Drive import with folder navigation, Google Docs export
- photos.ts: Photos thumbnail import (403 issue pending investigation)
- calendar.ts: Calendar import with date range filtering

Test interface at /google route for debugging OAuth flow.

Known issue: Photos API returning 403 on some thumbnail URLs - needs
further investigation with proper OAuth consent screen setup.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 15:22:40 -08:00
..
auth everything working in dev 2025-11-10 11:06:13 -08:00
location final updates to Automerge conversion 2025-11-10 13:34:55 -08:00
ErrorBoundary.tsx automerge, obsidian/quartz, transcribe attempt, fix AI APIs 2025-09-21 11:43:06 +02:00
FathomMeetingsPanel.tsx everything working in dev 2025-11-10 11:06:13 -08:00
GoogleDataTest.tsx feat: implement Google Data Sovereignty module for local-first data control 2025-12-04 15:22:40 -08:00
HolonBrowser.tsx everything working in dev 2025-11-10 11:06:13 -08:00
NotificationsDisplay.tsx auth in progress 2025-04-17 15:51:49 -07:00
ObsidianToolbarButton.tsx automerge, obsidian/quartz, transcribe attempt, fix AI APIs 2025-09-21 11:43:06 +02:00
ObsidianVaultBrowser.tsx everything working in dev 2025-11-10 11:06:13 -08:00
OfflineIndicator.tsx Implement offline storage with IndexedDB for canvas documents 2025-11-26 03:03:37 -08:00
StandardizedToolWrapper.tsx update typescript errors for vercel 2025-11-10 11:19:24 -08:00
StarBoardButton.tsx user auth via webcryptoapi, starred boards, dashboard view 2025-08-25 06:48:47 +02:00