Commit Graph

77 Commits

Author SHA1 Message Date
amrit
cdb3d25993 feat: add playwright tests to check search bar functions (#1921)
goes through the cmd+k search shortcut and runs:

1. last seven days of emails
2. starred emails
3. with attachments

run w `pnpm test:e2e:headed search-bar.spec.ts`
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Added Playwright end-to-end tests to verify that the search bar correctly applies and clears filters for "Last 7 Days," "Starred Emails," and "With Attachments" using the command palette.

<!-- End of auto-generated description by cubic. -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

* **Tests**
  * Added a new end-to-end test to verify that search bar filters ("With Attachments", "Last 7 Days", "Starred Emails") can be applied and cleared using the command palette. The test also checks for the correct display and removal of the "Clear" button in the search bar.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-06 21:02:16 -07:00
amrit
066edbc77b feat: add playwright tests to check for zero summary of past emails in sidebar (#1920)
# READ CAREFULLY THEN REMOVE

Remove bullet points that are not relevant.

PLEASE REFRAIN FROM USING AI TO WRITE YOUR CODE AND PR DESCRIPTION. IF YOU DO USE AI TO WRITE YOUR CODE PLEASE PROVIDE A DESCRIPTION AND REVIEW IT CAREFULLY. MAKE SURE YOU UNDERSTAND THE CODE YOU ARE SUBMITTING USING AI.

- Pull requests that do not follow these guidelines will be closed without review or comment.
- If you use AI to write your PR description your pr will be close without review or comment.
- If you are unsure about anything, feel free to ask for clarification.

## Description

Please provide a clear description of your changes.

---

## Type of Change

Please delete options that are not relevant.

- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
- [ ]  New feature (non-breaking change which adds functionality)
- [ ] 💥 Breaking change (fix or feature with breaking changes)
- [ ] 📝 Documentation update
- [ ] 🎨 UI/UX improvement
- [ ] 🔒 Security enhancement
- [ ]  Performance improvement

## Areas Affected

Please check all that apply:

- [ ] Email Integration (Gmail, IMAP, etc.)
- [ ] User Interface/Experience
- [ ] Authentication/Authorization
- [ ] Data Storage/Management
- [ ] API Endpoints
- [ ] Documentation
- [ ] Testing Infrastructure
- [ ] Development Workflow
- [ ] Deployment/Infrastructure

## Testing Done

Describe the tests you've done:

- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing performed
- [ ] Cross-browser testing (if UI changes)
- [ ] Mobile responsiveness verified (if UI changes)

## Security Considerations

For changes involving data or authentication:

- [ ] No sensitive data is exposed
- [ ] Authentication checks are in place
- [ ] Input validation is implemented
- [ ] Rate limiting is considered (if applicable)

## Checklist

- [ ] I have read the [CONTRIBUTING](https://github.com/Mail-0/Zero/blob/staging/.github/CONTRIBUTING.md) document
- [ ] My code follows the project's style guidelines
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in complex areas
- [ ] I have updated the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix/feature works
- [ ] All tests pass locally
- [ ] Any dependent changes are merged and published

## Additional Notes

Add any other context about the pull request here.

## Screenshots/Recordings

Add screenshots or recordings here if applicable.

---

_By submitting this pull request, I confirm that my contribution is made under the terms of the project's license._

    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Added Playwright end-to-end tests to verify that the sidebar correctly summarizes the past five emails.

- **Testing**
  - Checks that the AI chat sidebar opens and displays a summary when prompted.
  - Confirms the summary is visible and contains content.

<!-- End of auto-generated description by cubic. -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

* **New Features**
  * Added an end-to-end test to verify that the AI chat can summarize recent emails and display the result in the inbox sidebar.

* **Style**
  * Added a data attribute to each AI chat message for improved message role identification.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-06 21:02:07 -07:00
amrit
68a1714ca1 feat: add tests for optimistic actions (#1922)
added playwright tests for marking an email as read, unread and starring it upon right clicking
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Added Playwright tests to cover marking an email as read, unread, and favoriting it using right-click actions in the inbox.

<!-- End of auto-generated description by cubic. -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

* **Tests**
  * Added a new end-to-end test verifying that users can mark emails as favorite, read, and unread in the inbox. The test ensures proper UI interactions and state changes for these mail actions.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-06 21:01:46 -07:00
amrit
17bdc34406 feat: add playwright tests for bulk actions and search (#1923)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Added Playwright end-to-end tests for bulk actions and search in the AI chat sidebar to ensure key workflows work as expected.

- **New Features**
  - Added tests that simulate sending bulk action and search commands in the chat sidebar.
  - Updated chat message markup to support easier test targeting.

<!-- End of auto-generated description by cubic. -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

* **Bug Fixes**
  * Improved identification of message roles in the AI chat component for enhanced accessibility and testing.

* **Tests**
  * Added a new end-to-end test suite to verify AI Chat Sidebar functionality, including user interactions and AI responses.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-06 21:01:16 -07:00
Brandon McConnell
1ea4bfe69c Upgrade to Tailwind CSS v4 (#1881)
Co-authored-by: Adam <13007539+MrgSub@users.noreply.github.com>
Co-authored-by: Aj Wazzan <x_1337@outlook.com>
2025-08-01 09:58:19 -07:00
amrit
e1cdeb82c2 feat: add tests using playwright (#1877)
1. Get both the better auth session tokens from appliations/cookies in .env

<img width="852" height="316" alt="image" src="https://github.com/user-attachments/assets/0177c496-103c-4111-8a80-089d1f4a6f94" />

2. Enter the email you wish to send to in .env

3. `cd packages/testing`

3. run `npm test:e2e:headed`

thats it tbh

https://github.com/user-attachments/assets/b703e78c-2373-40a2-b431-f9ba53d5d871



    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Added Playwright end-to-end tests for the mail inbox flow, including authentication setup and email send/reply actions.

- **New Features**
  - Added Playwright config, test scripts, and environment variables for E2E testing.
  - Implemented tests to sign in, send an email, and reply within the same session.

<!-- End of auto-generated description by cubic. -->



<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit

## Summary by CodeRabbit

* **New Features**
  * Introduced a comprehensive testing package with support for unit, UI, and end-to-end tests.
  * Added Playwright-based authentication setup and mail inbox end-to-end test scripts.
  * Provided a dedicated test configuration and TypeScript setup for robust test execution.

* **Chores**
  * Updated environment variable examples to support Playwright testing.
  * Enhanced main project scripts to facilitate various testing modes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-01 08:29:43 -07:00
Mustafa Zahid
59780ef53e fix: undefined name on specific platforms fixed (#1796)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-22 15:01:26 -07:00
Fahad
b39f4a2a4b Nizzy sync utils.ts updated for windows (#1316) 2025-06-23 11:50:48 -07:00
Adam
9fbc867a85 Revert "updated utils.ts to make nizzy sync work for windows" (#1450) 2025-06-23 11:49:06 -07:00
Kartik
c4d777df7e updated utils.ts to make nizzy sync work for windows (#1449) 2025-06-23 11:47:59 -07:00
Adam
521d2de4cf minor (#1261)
# READ CAREFULLY THEN REMOVE

Remove bullet points that are not relevant.

PLEASE REFRAIN FROM USING AI TO WRITE YOUR CODE AND PR DESCRIPTION. IF YOU DO USE AI TO WRITE YOUR CODE PLEASE PROVIDE A DESCRIPTION AND REVIEW IT CAREFULLY. MAKE SURE YOU UNDERSTAND THE CODE YOU ARE SUBMITTING USING AI.

- Pull requests that do not follow these guidelines will be closed without review or comment.
- If you use AI to write your PR description your pr will be close without review or comment.
- If you are unsure about anything, feel free to ask for clarification.

## Description

Please provide a clear description of your changes.

---

## Type of Change

Please delete options that are not relevant.

- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
- [ ]  New feature (non-breaking change which adds functionality)
- [ ] 💥 Breaking change (fix or feature with breaking changes)
- [ ] 📝 Documentation update
- [ ] 🎨 UI/UX improvement
- [ ] 🔒 Security enhancement
- [ ]  Performance improvement

## Areas Affected

Please check all that apply:

- [ ] Email Integration (Gmail, IMAP, etc.)
- [ ] User Interface/Experience
- [ ] Authentication/Authorization
- [ ] Data Storage/Management
- [ ] API Endpoints
- [ ] Documentation
- [ ] Testing Infrastructure
- [ ] Development Workflow
- [ ] Deployment/Infrastructure

## Testing Done

Describe the tests you've done:

- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing performed
- [ ] Cross-browser testing (if UI changes)
- [ ] Mobile responsiveness verified (if UI changes)

## Security Considerations

For changes involving data or authentication:

- [ ] No sensitive data is exposed
- [ ] Authentication checks are in place
- [ ] Input validation is implemented
- [ ] Rate limiting is considered (if applicable)

## Checklist

- [ ] I have read the [CONTRIBUTING](../CONTRIBUTING.md) document
- [ ] My code follows the project's style guidelines
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in complex areas
- [ ] I have updated the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix/feature works
- [ ] All tests pass locally
- [ ] Any dependent changes are merged and published

## Additional Notes

Add any other context about the pull request here.

## Screenshots/Recordings

Add screenshots or recordings here if applicable.

---

_By submitting this pull request, I confirm that my contribution is made under the terms of the project's license._
2025-06-09 19:10:49 -07:00
Adam
047a3809bb React Compiler ??? (#1257)
# READ CAREFULLY THEN REMOVE

Remove bullet points that are not relevant.

PLEASE REFRAIN FROM USING AI TO WRITE YOUR CODE AND PR DESCRIPTION. IF YOU DO USE AI TO WRITE YOUR CODE PLEASE PROVIDE A DESCRIPTION AND REVIEW IT CAREFULLY. MAKE SURE YOU UNDERSTAND THE CODE YOU ARE SUBMITTING USING AI.

- Pull requests that do not follow these guidelines will be closed without review or comment.
- If you use AI to write your PR description your pr will be close without review or comment.
- If you are unsure about anything, feel free to ask for clarification.

## Description

Please provide a clear description of your changes.

---

## Type of Change

Please delete options that are not relevant.

- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
- [ ]  New feature (non-breaking change which adds functionality)
- [ ] 💥 Breaking change (fix or feature with breaking changes)
- [ ] 📝 Documentation update
- [ ] 🎨 UI/UX improvement
- [ ] 🔒 Security enhancement
- [ ]  Performance improvement

## Areas Affected

Please check all that apply:

- [ ] Email Integration (Gmail, IMAP, etc.)
- [ ] User Interface/Experience
- [ ] Authentication/Authorization
- [ ] Data Storage/Management
- [ ] API Endpoints
- [ ] Documentation
- [ ] Testing Infrastructure
- [ ] Development Workflow
- [ ] Deployment/Infrastructure

## Testing Done

Describe the tests you've done:

- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing performed
- [ ] Cross-browser testing (if UI changes)
- [ ] Mobile responsiveness verified (if UI changes)

## Security Considerations

For changes involving data or authentication:

- [ ] No sensitive data is exposed
- [ ] Authentication checks are in place
- [ ] Input validation is implemented
- [ ] Rate limiting is considered (if applicable)

## Checklist

- [ ] I have read the [CONTRIBUTING](../CONTRIBUTING.md) document
- [ ] My code follows the project's style guidelines
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in complex areas
- [ ] I have updated the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix/feature works
- [ ] All tests pass locally
- [ ] Any dependent changes are merged and published

## Additional Notes

Add any other context about the pull request here.

## Screenshots/Recordings

Add screenshots or recordings here if applicable.

---

_By submitting this pull request, I confirm that my contribution is made under the terms of the project's license._
2025-06-08 21:47:31 -07:00
BlankParticle
9027db1f38 feat: move db from packages into server 2025-05-26 17:08:15 +05:30
Adam
b0cae54f66 Merge branch 'staging' into phoneNumber 2025-05-25 12:31:38 -07:00
Aj Wazzan
8e4d3112fc feat: update dependencies and implement ZeroAgent and ZeroMCP for enhanced chat functionality 2025-05-25 12:29:54 -07:00
Rahul Mishra
18980f59da chore: update eslint and plugins (#1064) 2025-05-25 18:53:05 +05:30
Adam
dcac742f29 Merge branch 'staging' into feat/eslint 2025-05-24 11:50:12 -07:00
Dak Washbrook
e0df484103 chore: update package dependencies to use catalog references and add new environment variable for Perplexity API key 2025-05-24 00:08:52 -07:00
Aj Wazzan
6d16f3e322 feat: implement phone number verification flow with OTP in CallInboxDialog 2025-05-23 21:45:08 -07:00
BlankParticle
3cc07c06f7 feat: fix eslint 2025-05-23 19:20:17 +05:30
BlankParticle
d58c40669b feat: add helper cli 2025-05-21 20:26:33 +05:30
BlankParticle
fa45abaf44 feat: remixify and whatever else needed to be done 2025-05-20 13:56:47 +05:30
Dak Washbrook
f01a54e9cd Make "access_token" column nullable in mail0_connection table
This migration allows the "access_token" column in the "mail0_connection" table to accept null values. Updated meta files reflect this schema change, including the snapshot and migration journal.
2025-05-11 22:37:13 -07:00
Dak Washbrook
3a00821cfc Update Drizzle Kit and handle invalid tokens gracefully
Upgraded `drizzle-kit` to version 0.31.1 for improved functionality. Updated the schema to refine token fields and added logic to handle invalid tokens by nullifying them and redirecting users to reconnect. Enhanced connections API to identify and return disconnected connections for better user experience.
2025-05-11 22:35:30 -07:00
Adam
c828dd291e Merge branch 'staging' into homepage-addition 2025-05-09 00:05:05 -07:00
BlankParticle
94e7d68db9 feat: first working version of separated backend 2025-05-08 00:44:52 +05:30
Aj Wazzan
113a3bc329 fix: update SRH_TOKEN in docker-compose.yaml and refactor dialog components for improved consistency 2025-05-06 14:59:05 -07:00
Nizzy
f9b6f49e3a homepage 2025-05-04 00:31:33 -07:00
Ahmet Kilinc
f073bb47e0 turn images on by default 2025-05-02 19:28:21 +01:00
needle
06e52e737b fix(database): settings 2025-05-02 00:50:14 +03:00
needle
cba853ef93 chore(thread): re-enable external images blocker 2025-05-01 18:05:25 +03:00
Aj Wazzan
e1deecc95c Enhance email composer functionality and UI improvements. Updated draft handling to clean email addresses and format message content. Implemented auto-save feature for drafts and improved state management in sidebar components. Cleaned up unused imports and adjusted styling for better consistency. 2025-04-30 15:35:19 -07:00
Aj Wazzan
fb52365ed8 Add default value to colorTheme in userSettingsSchema 2025-04-30 14:13:46 -07:00
Ahmet Kilinc
28ba8b2d76 color theme now persists in user settings 2025-04-30 16:26:46 +01:00
Adam
d9922a9908 Merge branch 'staging' into dakdevs/global-ai-compose 2025-04-28 16:13:32 -07:00
kingstondoesit
3200a4e5e1 throw error !DATABASE_URL 2025-04-27 18:08:21 +01:00
Dak Washbrook
c0ca4ae621 Add email assistant prompt enhancements and dependency updates
Enhanced email assistant prompts with new system prompt templates and dynamic style generation logic. Updated dependencies including @langchain/core, @ai-sdk/groq, and others for improved functionality and compatibility.
2025-04-26 21:07:34 -07:00
Aj Wazzan
e0fc71536f Remove dynamicContent field required constraint 2025-04-25 21:58:20 -07:00
Aj Wazzan
0adaaf6190 Refactor form schema to use userSettingsSchema 2025-04-25 21:35:57 -07:00
BlankParticle
b3415c3d5b chore: simplify and fix the dev env 2025-04-21 18:43:31 +05:30
Adam
14dfeedd16 Merge branch 'main' into new-keybinds 2025-04-16 21:46:16 -07:00
Adam
fa1768d9c8 Staging (#692)
* added contacts dropdown for create email

* Add useContacts hook for managing contacts in mail app

* Refactor useContacts to handle missing connectionId

* review time plz

* relocate settings routing

* dropdown reccomendation email

* use next/Link

* chore: bring back login button

* Refactor auth.ts for early access validation

* posthog

* Refactor mail actions and types to improve thread handling and response structure. Update getMail to return IGetThreadResponse, modify related components to utilize new structure, and enhance error handling in driver functions.

* remove search from drafts

* Refactor email handling with active driver integration

* Refactor API routes, utils, and actions for consistency

* Update provider value assignment in layout.tsx

* Update user settings schema and default value; add custom prompt in user table

* Fix unreachable code and add missing mutation to thread display<commit message>

* no select

* Refactor conditional rendering logic in mail-list component

* width

* width

---------

Co-authored-by: Ahmet Kilinc <akx9@icloud.com>
Co-authored-by: Nizzy <nizabizaher@gmail.com>
Co-authored-by: kingstondoesit <kingstondoesitall@gmail.com>
Co-authored-by: needle <122770437+needleXO@users.noreply.github.com>
2025-04-16 23:09:31 -04:00
Ahmet Kilinc
8a0a833665 hotkeys db and api route
- added route for hotkeys
- added table for hotkeys
- indexdb for hotkeys (synced with db)
2025-04-13 12:56:35 +01:00
Aj Wazzan
4377e042da Add function to handle golden ticket feature 2025-04-09 23:29:14 -07:00
Aj Wazzan
6cbd6f7b90 Enhance email sending functionality by adding support for CC and BCC fields, integrating the 'mimetext' library for MIME message creation, and refactoring the reply composer. Update user settings to remove signature options and improve email parsing logic. 2025-04-09 00:09:32 -07:00
Aj Wazzan
01ee637fc9 Add testing for note table creation 2025-04-08 20:22:13 -07:00
Dante Issaias
4997303509 Trusted senders (#618)
* A11y

* Trusted senders

* Add key

* Fix use callback deps

* Hide trusted settings if external images enabled

* Scroll area
2025-04-08 20:08:02 -04:00
Aj Wazzan
3a61462382 Add email signature settings and preview 2025-04-08 12:35:50 -07:00
Aj Wazzan
b34aca44a7 Add unique constraint to mail0_connection table 2025-04-08 12:35:14 -07:00
plyght
8ebad01745 add signatures 2025-04-05 11:24:38 -04:00