import * as ZoomUtils from '../../utils/zoom' import { MeetingParticipant } from 'nexus-plugin-prisma/client' import { prismaClient as prisma } from '../../prismaClient' export async function createAndApproveMeetingParticipant({ accessToken, meetingParticipant, zoomWebinarId, }: { accessToken: string meetingParticipant: MeetingParticipant zoomWebinarId: string }) { if (meetingParticipant.email) { const registrant = await ZoomUtils.createWebinarRegistrant({ accessToken, webinarId: zoomWebinarId, firstName: meetingParticipant.firstName, lastName: meetingParticipant.lastName, email: meetingParticipant.email, }) await prisma.meetingParticipant.update({ where: { id: meetingParticipant.id }, data: { zoomRegistrantId: registrant.registrant_id, joinUrl: registrant.join_url }, }) await ZoomUtils.approveRegistrant({ accessToken, webinarId: zoomWebinarId, registrantId: registrant.registrant_id, registrantEmail: meetingParticipant.email, }) } }