Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes significant updates to both the backend and frontend parts of the project, focusing on email service refactoring, status code corrections, and enhancements to the user interface components.
Backend Changes:
Email Service Refactoring:
NodemailerEmailService
withEmailProviderFactory
inemail.module.ts
to support different email services based on environment. (email.module.ts
)EmailProviderFactory
to dynamically provide email service implementations based on environment configuration. (email.provider.ts
)MockEmailService
to handleSendMailDTO
and ensure compatibility with Jest for testing. (mock-email.service.ts
)Status Code Correction:
201 Created
to200 OK
for user update operations to correctly reflect the operation result. (users.controller.ts
)200 OK
instead of201 Created
. (users-me.spec.ts
)Frontend Changes:
UI Components and Pages:
AlertDialog
andDialog
components using Radix UI for consistent and accessible dialog interfaces. (alert-dialog.tsx
,dialog.tsx
) [1] [2]ConfirmEmailPage
andProfilePage
with necessary hooks and query client prefetching for better user experience and performance. (confirm-email/[token]/page.tsx
,profile/page.tsx
) (client/src/app/auth/confirm-email/[token]/page.tsxR1-R5, client/src/app/profile/page.tsxR4-R23)Toaster
component for displaying toast notifications globally. (layout.tsx
,toaster.tsx
) [1] [2]Dependencies:
package.json
to include new dependencies for Radix UI components. (package.json
)These changes collectively improve the codebase by enhancing modularity, correcting status codes, and providing a more robust and user-friendly frontend.