diff --git a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx index 6612f722a..dda444d05 100644 --- a/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx +++ b/src/frontend/src/CustomNodes/GenericNode/components/parameterComponent/index.tsx @@ -83,13 +83,13 @@ export default function ParameterComponent({ }; useEffect(() => { - const groupedObj = groupByFamily(myData, tooltipTitle); + const groupedObj = groupByFamily(myData, tooltipTitle, left, data.type); refHtml.current = groupedObj.map((item, i) => ( 0 ? "items-center flex mt-3" : "items-center flex" + i > 0 ? "mt-3 flex items-center" : "flex items-center" )} >
<> -
+
{title} {required ? " *" : ""}
{left && - ((type === "str" || + (type === "str" || type === "bool" || type === "float" || type === "code" || type === "prompt" || type === "file" || - type === "int") && !optionalHandle - ) ? ( + type === "int") && + !optionalHandle ? ( <> ) : ( n === sourceHandle.split("|")[0]) || + targetHandle + .split("|")[0] + .split(";") + .some((n) => n === sourceHandle.split("|")[0]) || sourceHandle .split("|") .slice(2) - .some((t) => targetHandle.split("|")[0].split(";").some((n) => n === t)) || + .some((t) => + targetHandle + .split("|")[0] + .split(";") + .some((n) => n === t) + ) || targetHandle.split("|")[0] === "str" ) { let targetNode = reactFlowInstance.getNode(target).data.node; @@ -830,10 +838,10 @@ export function updateIds(newFlow, getNodeId) { }); } -export function groupByFamily(data, baseClasses) { +export function groupByFamily(data, baseClasses, left, type) { + let parentOutput: string; let arrOfParent: string[] = []; let arrOfType: { family: string; type: string }[] = []; - Object.keys(data).map((d) => { Object.keys(data[d]).map((n) => { try { @@ -844,16 +852,15 @@ export function groupByFamily(data, baseClasses) { ) { arrOfParent.push(d); } + if (n === type) { + parentOutput = d; + } } catch (e) { console.log(e); } }); }); - let uniq = arrOfParent.filter( - (item, index) => arrOfParent.indexOf(item) === index - ); - Object.keys(data).map((d) => { Object.keys(data[d]).map((n) => { try { @@ -889,6 +896,11 @@ export function groupByFamily(data, baseClasses) { result.push({ family: item.family, type: item.type }); } + if (left == false) { + let resFil = result.filter((group) => group.family === parentOutput); + result = resFil; + } + return result; }, []); }