diff --git a/calc-frontend/src/components/ui/AskAIButtonDerivative.tsx b/calc-frontend/src/components/ui/AskAIButtonDerivative.tsx index 83fb3d5..7674740 100644 --- a/calc-frontend/src/components/ui/AskAIButtonDerivative.tsx +++ b/calc-frontend/src/components/ui/AskAIButtonDerivative.tsx @@ -2,21 +2,24 @@ import axios from "axios"; import { useEffect, useState } from "react"; import ReactMarkdown from "react-markdown"; import rehypeRaw from "rehype-raw"; +import { InlineMath } from "react-katex"; +import "katex/dist/katex.min.css"; function AskAIButtonDerivative({ func, lowerBound, upperBound, canAskAI, + displayFunc, onAIResponseComplete, }: { func: string; lowerBound: number; upperBound: number; canAskAI: boolean; + displayFunc: any; onAIResponseComplete: () => void; -}) -{ +}) { const [open, setOpen] = useState(false); const [loading, setLoading] = useState(false); const [markdownText, setMarkdownText] = useState( @@ -42,7 +45,6 @@ function AskAIButtonDerivative({ setMarkdownText(response.data.message); onAIResponseComplete(); - } catch (error) { setMarkdownText(`### ❌ An error occured, please try again`); console.error(error); @@ -53,10 +55,10 @@ function AskAIButtonDerivative({ // the user has created a new graph useEffect(() => { - if(func !== ''){ + if (func !== "") { setMarkdownText(`### 🤖 Ask AI\n### Click above for an explanation!`); } - },[]) + }, []); return ( <> @@ -78,12 +80,17 @@ function AskAIButtonDerivative({
{/* Modal Content */} -
+
{canAskAI ? ( ) : ( ) : (
diff --git a/calc-frontend/src/pages/CustomIntegral.tsx b/calc-frontend/src/pages/CustomIntegral.tsx index c18531c..2be580f 100644 --- a/calc-frontend/src/pages/CustomIntegral.tsx +++ b/calc-frontend/src/pages/CustomIntegral.tsx @@ -44,6 +44,7 @@ function CustomInt() { const [saving, setSaving] = useState(false); const [enableSave, setEnableSave] = useState(false); const [funcKey, setFuncKey] = useState(''); + const [latexFunc, setLatexFunc] = useState(); const handleAIResponseComplete = () => { setCanAskAI(false); @@ -138,6 +139,7 @@ function CustomInt() { setFunc(newFunc) setJSFunc(newJSFunc) setBounds([newLowerBound, newUpperBound]) + setLatexFunc(editMF.current.latex()) newFuncKey = newFunc + newLowerBound + newUpperBound // check that new graph is different from old one @@ -226,7 +228,7 @@ function CustomInt() {
+ canAskAI={canAskAI} displayFunc={latexFunc} onAIResponseComplete={handleAIResponseComplete}/>