Ran oxc (https://oxc.rs/docs/guide/usage/linter.html#vscode-extension) and fixed all the issues that came up, set it up to run as a PR check and added steps to the README.md asking users to use it.
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
* **New Features**
* Introduced JavaScript linting using oxlint in development guidelines and CI workflow for improved code quality.
* Added oxlint configuration and dependencies to the project.
* **Bug Fixes**
* Improved error logging in various components and utilities for better debugging.
* Enhanced React list rendering by updating keys to use unique values instead of array indices, reducing rendering issues.
* Replaced browser alerts with toast notifications for a smoother user experience.
* **Refactor**
* Simplified component logic and state management by removing unused code, imports, props, and components across multiple files.
* Updated function and component signatures for clarity and maintainability.
* Improved efficiency of certain operations by switching from arrays to sets for membership checks.
* **Chores**
* Cleaned up and reorganized import statements throughout the codebase.
* Removed deprecated files, components, and middleware to streamline the codebase.
* **Documentation**
* Updated contribution guidelines to include linting requirements for code submissions.
* **Style**
* Minor formatting and readability improvements in JSX and code structure.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
* draft fixes:
- added cc and bcc when saving drafts
- save drafts less aggresively
* some fixes for saving attachments to draft
* fix for empty draft loading
* fix draft list recipient name/address
* also show 'No Recipient' if empty
* remove comments
* switch to mimetext for draft saving to keep formatting consistent
* add message title to draft list
* feat: single api for oauth connections
* fix: add extra error handling
* chore: simplify and fix the dev env
* Ai generate security (#706)
* Create prompts with XML formatting
* Include XML formatted prompts in generate func
* remove unused regex and add helper functions/warnings
* error handling
* Update apps/mail/lib/prompts.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* lint issues
* Update prompts.ts
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650081
Coderabbit fix 1
* erabbitai bot 3 days ago ⚠️ Potential issue errorOccurred state is stale inside finally React state setters (setErrorOccurred) are asynchronous; the errorOccurred value captured at render time will not yet reflect changes made earlier in the same event loop. Consequently, the logic deciding whether to collapse/expand may run with an outdated flag. - } finally { - setIsLoading(false); - if (!errorOccurred || isAskingQuestion) { - setIsExpanded(true); - } else { - setIsExpanded(false); // Collapse on errors - } - } + } finally { + setIsLoading(false); + // Use a local flag to track errors deterministically + const hadError = isAskingQuestion ? false : !!errorFlagRef.current; + setIsExpanded(!hadError); + } You can create const errorFlagRef = useRef(false); and update errorFlagRef.current = true every time an error is detected, ensuring reliable behaviour irrespective of React batching. Committable suggestion skipped: line range outside the PR's diff.
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650112
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650106
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650097
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Add a new Vietnamese translation file to support Vietnamese language users (#726)
* feat(i18n): add Vietnamese language support
Add Vietnamese ('vi') to the list of supported languages in the
i18n configuration and JSON file to expand language options.
* Add a new Vietnamese translation file to support Vietnamese language users.
* Clear Vietnamese translation strings
* Update es.json (#710)
Co-authored-by: needle <122770437+needleXO@users.noreply.github.com>
* Update app manifest and add new icons for PWA (#739)
* feat: allow sending from email aliases added through gmail (#743)
* Refactor IP handling in early-access routes
* Add unauthorized error handling in sign out function
---------
Co-authored-by: Ahmet Kilinc <akx9@icloud.com>
Co-authored-by: BlankParticle <blankparticle@gmail.com>
Co-authored-by: grim <75869731+ripgrim@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Chánh Đại <dai@chanhdai.com>
Co-authored-by: Dani B. <danibaldomirm@gmail.com>
Co-authored-by: needle <122770437+needleXO@users.noreply.github.com>
Co-authored-by: Humber Nieto <56887259+humbernieto@users.noreply.github.com>
Co-authored-by: Atharva Deosthale <atharva.deosthale17@gmail.com>
- Updated docker-compose container names and database names
- Replaced Mail0 references with 0.email in README, ROADMAP, and various source files
- Updated GitHub repository links and references
- Adjusted environment variables and configuration files
- Corrected branding across UI components and documentation