diff --git a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx
index 4347b88ca..0701bfcd4 100644
--- a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx
+++ b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx
@@ -25,6 +25,7 @@ import { nodeColors } from "../../../../utils";
import ShadTooltip from "../../../../components/ShadTooltipComponent";
import { PopUpContext } from "../../../../contexts/popUpContext";
import ToggleShadComponent from "../../../../components/toggleShadComponent";
+import { Info } from "lucide-react";
export default function ParameterComponent({
left,
@@ -36,9 +37,11 @@ export default function ParameterComponent({
type,
name = "",
required = false,
+ info = "",
}: ParameterComponentType) {
const ref = useRef(null);
const refHtml = useRef(null);
+ const infoHtml = useRef(null);
const updateNodeInternals = useUpdateNodeInternals();
const [position, setPosition] = useState(0);
const { closePopUp } = useContext(PopUpContext);
@@ -79,6 +82,18 @@ export default function ParameterComponent({
});
};
+ useEffect(() => {
+ infoHtml.current = (
+
+ {info.split("\n").map((line, i) => (
+
+ {line}
+
+ ))}
+
+ );
+ }, [info]);
+
useEffect(() => {
const groupedObj = groupByFamily(myData, tooltipTitle);
@@ -126,8 +141,25 @@ export default function ParameterComponent({
className="w-full flex flex-wrap justify-between items-center bg-muted dark:bg-gray-800 dark:text-white mt-1 px-5 py-2"
>
<>
-
+
{title}
+
+ {info !== "" && (
+
+
+
+ )}
+
{required ? " *" : ""}
{left &&
diff --git a/src/frontend/src/CustomNodes/GenericNode/index.tsx b/src/frontend/src/CustomNodes/GenericNode/index.tsx
index 743339a48..40a306ce6 100644
--- a/src/frontend/src/CustomNodes/GenericNode/index.tsx
+++ b/src/frontend/src/CustomNodes/GenericNode/index.tsx
@@ -244,6 +244,7 @@ export default function GenericNode({
? toTitleCase(data.node.template[t].name)
: toTitleCase(t)
}
+ info={data.node.template[t].info}
name={t}
tooltipTitle={data.node.template[t].type}
required={data.node.template[t].required}
diff --git a/src/frontend/src/types/components/index.ts b/src/frontend/src/types/components/index.ts
index 630526193..b1570ddda 100644
--- a/src/frontend/src/types/components/index.ts
+++ b/src/frontend/src/types/components/index.ts
@@ -1,10 +1,4 @@
-import {
- ComponentType,
- ForwardRefExoticComponent,
- ReactElement,
- ReactNode,
- SVGProps,
-} from "react";
+import { ReactElement, ReactNode } from "react";
import { NodeDataType } from "../flow/index";
import { typesContextType } from "../typesContext";
export type InputComponentType = {
@@ -41,6 +35,7 @@ export type ParameterComponentType = {
name?: string;
tooltipTitle: string;
dataContext?: typesContextType;
+ info?: string;
};
export type InputListComponentType = {
value: string[];