diff --git a/app/api/endpoints/payment.py b/app/api/endpoints/payment.py index caeaf6e..2597661 100644 --- a/app/api/endpoints/payment.py +++ b/app/api/endpoints/payment.py @@ -1 +1,132 @@ -my route \ No newline at end of file +'use client' + +import { useForm } from 'react-hook-form' +import { ArrowUp, CheckCircle, Package2 } from 'lucide-react' +import { useState } from 'react' +import { Tabs, TabsContent, TabsList, TabsTrigger } from '~/components/ui/tabs' +import { Textarea } from '~/components/ui/textarea' +import CodeGenService from '~/app/api/services/code-gen-service' +import { useParams } from 'next/navigation' + +type FormData = { + message: string +} + +interface CodeProps { + setCode: (newCode: string) => void +} + +const Rightpanel: React.FC = ({ setCode }) => { + const { register, handleSubmit, reset, watch } = useForm() + + const [textInput, setTextInput] = useState([]) + const [successMessage, setSuccessMessage] = useState(null) + const { projectId } = useParams() as { projectId: string } + + const messageValue = watch('message', '') // watch the input value + + const handleTextSubmit = async (data: FormData) => { + setTextInput((prevMessages) => [...prevMessages, data.message]) + try { + const codeGenService = new CodeGenService() + const response = await codeGenService.generateCode({ + project_id: projectId, + endpoint_description: data.message, + }) + setSuccessMessage('Code generated successfully!') + setTimeout(() => setSuccessMessage(null), 3000) // Hide after 3 seconds + reset() + const { content_base64 } = response + setCode(atob(content_base64)) + console.log(response) + } catch (error) { + console.error('Error generating code:', error) + } + } + + return ( +
+ + + + Code chat + + + + +
+ {!textInput.length ? ( +
+ +
+ No tasks running yet +
+ + As you generate endpoints the progress will be displayed here + +
+ ) : ( +
+ {textInput.map((msg, index) => ( +
+
+

+ {msg} something is the messag e +

+
+ +
+

Code Generated succesfully

+
+
+ ))} +
+ )} +
+ {/* Success Message */} + {successMessage && ( +
+ + {successMessage} +
+ )} + +
+