feat: add complex user invitation and management features

- Implemented complex member and invitation schemas using Zod for validation.
- Created new API endpoints for inviting, accepting, revoking, and canceling complex user invitations.
- Developed handlers for managing complex users, including listing, inviting, revoking, and canceling invitations.
- Added frontend components for displaying and managing complex users and invitations.
- Introduced session storage management for pending invitations.
- Integrated Gravatar for user avatars based on email.
- Created database migration for complex invitations table.
This commit is contained in:
Jose Selesan
2026-04-22 15:30:04 -03:00
parent 5f2a7fd494
commit 6ad4fc9ee9
37 changed files with 1935 additions and 78 deletions

View File

@@ -57,6 +57,7 @@ export const ModelName = {
Verification: 'Verification',
Complex: 'Complex',
ComplexUser: 'ComplexUser',
ComplexInvitation: 'ComplexInvitation',
Sport: 'Sport',
Court: 'Court',
CourtAvailability: 'CourtAvailability',
@@ -169,6 +170,21 @@ export const ComplexUserScalarFieldEnum = {
export type ComplexUserScalarFieldEnum = (typeof ComplexUserScalarFieldEnum)[keyof typeof ComplexUserScalarFieldEnum]
export const ComplexInvitationScalarFieldEnum = {
id: 'id',
complexId: 'complexId',
email: 'email',
tokenHash: 'tokenHash',
expiresAt: 'expiresAt',
acceptedAt: 'acceptedAt',
revokedAt: 'revokedAt',
createdAt: 'createdAt',
updatedAt: 'updatedAt'
} as const
export type ComplexInvitationScalarFieldEnum = (typeof ComplexInvitationScalarFieldEnum)[keyof typeof ComplexInvitationScalarFieldEnum]
export const SportScalarFieldEnum = {
id: 'id',
name: 'name',