Merge pull request #98 from Oloodi/97-backend-define-and-deploy-teammemberinvite-schema

new teamMemberInvite entity
This commit is contained in:
José Salazar
2025-11-26 12:38:48 -05:00
committed by GitHub
3 changed files with 94 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
mutation CreateTeamMemberInvite(
$teamId: UUID!,
$email: String!,
$inviteStatus: TeamMemberInviteStatus!
) @auth(level: USER) {
teamMemberInvite_insert(
data: {
teamId: $teamId
email: $email
inviteStatus: $inviteStatus
# inviteCode se genera por default con uuidV4()
}
)
}
mutation UpdateTeamMemberInvite(
$id: UUID!,
$teamId: UUID,
$email: String,
$inviteStatus: TeamMemberInviteStatus
) @auth(level: USER) {
teamMemberInvite_update(
id: $id,
data: {
teamId: $teamId
email: $email
inviteStatus: $inviteStatus
}
)
}
mutation DeleteTeamMemberInvite(
$id: UUID!
) @auth(level: USER) {
teamMemberInvite_delete(id: $id)
}

View File

@@ -0,0 +1,41 @@
query listTeamMemberInvite @auth(level: USER) {
teamMemberInvites {
id
teamId
inviteCode
email
inviteStatus
}
}
query getTeamMemberInviteById(
$id: UUID!
) @auth(level: USER) {
teamMemberInvite(id: $id) {
id
teamId
inviteCode
email
inviteStatus
}
}
query filterTeamMemberInvite(
$teamId: UUID,
$email: String,
$inviteStatus: TeamMemberInviteStatus
) @auth(level: USER) {
teamMemberInvites(
where: {
teamId: { eq: $teamId }
email: { eq: $email }
inviteStatus: { eq: $inviteStatus }
}
) {
id
teamId
inviteCode
email
inviteStatus
}
}

View File

@@ -0,0 +1,17 @@
enum TeamMemberInviteStatus {
PENDING
ACCEPTED
EXPIRED
CANCELLED
}
type TeamMemberInvite @table(name: "team_member_invites") {
id: UUID! @default(expr: "uuidV4()")
teamId: UUID!
inviteCode: String! @default(expr: "uuidV4()")
email: String!
inviteStatus: TeamMemberInviteStatus!
createdDate: Timestamp @default(expr: "request.time")
updatedDate: Timestamp @default(expr: "request.time")
createdBy: String @default(expr: "auth.uid")
}