import FormLayout, { ButtonBlack, Flex, FormField, FormLabel, FormMessage, Input, Textarea } from "@components/StyledElements/Form/Form" import { BarLoader } from "react-spinners" import * as Form from '@radix-ui/react-form' import React, { useState } from "react"; import * as Sentry from '@sentry/browser'; import { CheckCircleIcon } from "lucide-react"; import { AuthContext } from "@components/Security/AuthProviderDepreceated"; import { randomUUID } from "crypto"; export const FeedbackModal = (user: any) => { const auth: any = React.useContext(AuthContext); const [isSubmitting, setIsSubmitting] = useState(false); const [view, setView] = useState<"feedbackForm" | "success">("feedbackForm") const [feedbackMessage, setFeedbackMessage] = useState(""); const handleSubmit = async (e: any) => { e.preventDefault(); setIsSubmitting(true); const user = auth.userInfo.user_object ? auth.userInfo.user_object : null; const eventId = Sentry.captureMessage(`Feedback from ${user ? user.email : 'Anonymous'} - ${feedbackMessage}`); const userFeedback = { event_id: eventId, name: user ? user.full_name : 'Anonymous', email: user ? user.email : 'Anonymous', comments: feedbackMessage, } Sentry.captureUserFeedback(userFeedback); setIsSubmitting(false); setView("success"); }; const handleFeedbackMessage = (event: React.ChangeEvent) => { setFeedbackMessage(event.target.value) }; if (view == "feedbackForm") { return ( Feedback message Please provide learning elements, separated by comma (,)