diff --git a/src/app/(calculators)/calculate/[section]/[id]/page.tsx b/src/app/(calculators)/calculate/[section]/[id]/page.tsx
index e3e5283..827cfcb 100644
--- a/src/app/(calculators)/calculate/[section]/[id]/page.tsx
+++ b/src/app/(calculators)/calculate/[section]/[id]/page.tsx
@@ -1,29 +1,9 @@
-import InputComponent from "@/app/utils/Input";
-import Input from "@/app/utils/Input";
-import { CalculatorRegistry } from "@/app/utils/calculators/registry";
+import RenderCalculator from "./renderCalc";
+
+
export default async function Calculator({params} : {params:Promise<{section:string, id:string}>}){
const calcData : {section:string, id:string} = await params;
- const calculator = CalculatorRegistry[calcData.section].calculators.find(e => e.id === calcData.id);
- console.log(calculator);
- return calculator ? (
- <>
-
-
- {calculator?.name}
-
-
-
- {calculator?.desc}
-
-
- Unit of the value:- {calculator?.unit}
-
-
- {calculator.inputs.map(e => {
- return(
-
- );
- })}
- >
- ) : null;
+ return(
+
+ );
}
\ No newline at end of file
diff --git a/src/app/(calculators)/calculate/[section]/[id]/renderCalc.tsx b/src/app/(calculators)/calculate/[section]/[id]/renderCalc.tsx
new file mode 100644
index 0000000..9cfd27e
--- /dev/null
+++ b/src/app/(calculators)/calculate/[section]/[id]/renderCalc.tsx
@@ -0,0 +1,74 @@
+"use client"
+
+import InputComponent from "@/app/utils/Input";
+import Input from "@/app/utils/Input";
+import Result from "@/app/utils/Result";
+import { CalculatorRegistry } from "@/app/utils/calculators/registry";
+import { Interpretation } from "@/app/utils/calculators/types";
+import { useState } from "react";
+
+export default function RenderCalculator({section, id} : {section:string, id:string}){
+ const calculator = CalculatorRegistry[section].calculators.find(e => e.id === id);
+ const [form, setForm] = useState>({});
+ const [value, setValue] = useState("");
+ function handleDataChange(key:string, value:string){
+ setForm(prev => {
+ return {
+ ...prev,
+ [key]:value
+ }
+ });
+ }
+ const [showResult, setResultStatus] = useState(false);
+ const [result, setResult] = useState({
+ level:"none",
+ message:"none"
+ });
+ console.log(form);
+ return calculator ? (
+ <>
+
+
+ {calculator?.name}
+
+
+
+ {calculator?.desc}
+
+
+ Unit of the value:- {calculator?.unit}
+
+
+
+ >
+ ) : null;
+}
\ No newline at end of file
diff --git a/src/app/(calculators)/layoutClient.tsx b/src/app/(calculators)/layoutClient.tsx
index b27b625..3488f79 100644
--- a/src/app/(calculators)/layoutClient.tsx
+++ b/src/app/(calculators)/layoutClient.tsx
@@ -7,11 +7,13 @@ const font = Roboto({});
export default function LayoutClient({children} : {children:React.ReactNode}){
const [navbar, setNavbar] = useState(false);
return(
-
+
-
diff --git a/src/app/utils/Input.tsx b/src/app/utils/Input.tsx
index 31e3467..e63cf21 100644
--- a/src/app/utils/Input.tsx
+++ b/src/app/utils/Input.tsx
@@ -2,41 +2,41 @@
import { useState } from "react";
import { Input } from "./calculators/types";
-export default function InputComponent({id, type, inputOptions, min, max, required, defaultUnit, unitOptions, name, placeholder} : Input){
+export default function InputComponent({id, type, inputOptions, min, max, required, defaultUnit, unitOptions, name, placeholder, handleDataChange} : Input){
const [showError, setErrorStatus] = useState(false);
const [error, setError] = useState();
const [option, setOption] = useState("");
- console.log(id);
if(type === "number"){
- console.log(min);
return(
<>
>
@@ -46,11 +46,14 @@ export default function InputComponent({id, type, inputOptions, min, max, requir