* feat: Integrate Google OAuth and SWR for mail threads
* refactor: simplify mail list and navigation UI
* feat: enhance mail parsing and UI with sender details and unread status
* chore: update pnpm lock with new dependencies
* refactor: organize imports in app-sidebar component
* dynamic rendering data
* chore: update .gitignore with IDE-specific exclusions
* refactor(mail): update routing and component structure for mail views
* refactor(mail): remove draft and junk routes; update folder names to proper terms in UI and API
* refactor(mail): clean up imports, adjust API endpoints, and improve mail component structures for better clarity and performance
* automatic search
* YOP!
* KIND OF lint. lmao.
* feat:gmail connection WIP
* feat(mail): add mail count endpoint and dynamic sidebar stats
* feat(mail): add sanitization and dynamic provider support for email rendering
* grim's changes
* feat(mail): implement indexedDB caching for email threads and improve SWR configuration in layout component
* feat(mail): enhance indexedDB operations for email threads caching and update SWR configuration for better data handling
* idk
* fix(mail): adjust email body processing and reverse cached email messages for consistent order
* Fullscreen (#154)
* FULL SCREEN!!! RAH!!!
* Update mail-display.tsx
* auth
* email dispaly
* gmail connection
* env example resend add
* fix: env issues
* refactor: replace nanoid with randomUUID for ID generation in early access and update database schema to unify connection table
* refactor: update API endpoint for email connections and modify driver initialization for async support across mail routes
* feat: enhance Gmail OAuth flow and connection handling
- Update Google OAuth driver with expanded scopes and improved token management
- Modify callback route to handle user info extraction and connection creation more robustly
- Add unique constraint to email in connection table
- Improve error handling and logging in authentication process
* fix: improve error responses and connection handling in Gmail integration
- Enhance error messages when tokens or emails are missing.
- Update handling of Gmail connections in the API and user-related components
* feat: add default connection support and improve connection switching
- Add `defaultConnectionId` to user schema
- Implement PUT endpoint to set default connection for a user
- Update mail API routes to use dynamic provider and connection ID
- Enhance NavUser component with account switching functionality
- Modify hooks and auth logic to support default connection selection
* typo
* feat: integrate thread hook for email data loading in MailDisplay component
- Replace local email data state with useThread hook for improved loading management
* fix: improve mail route authorization with connection validation
- Add explicit check for connectionId in session
- Update database query to filter by both userId and connectionId
- Make connectionId optional in ParsedMessage type to support flexible connection handling
* privacy and tos
* linting
---------
Co-authored-by: Aj Wazzan <x_1337@outlook.com>
Co-authored-by: grim <75869731+vys69@users.noreply.github.com>
Co-authored-by: BlankParticle <blankparticle@gmail.com>
Switches to redis (upstash) for ratelimiting, to future-proof the applications ratelimits. It also moves the ratelimit handling to the middleware rather than having it in the route.