updated build for new version of the api

This commit is contained in:
anovazzi1 2023-02-15 16:34:39 -03:00
commit f9ecfb5287
4 changed files with 56 additions and 3 deletions

View file

@ -10,6 +10,7 @@ import { nodeColors, nodeIcons, snakeToNormalCase } from "../../utils";
import Tooltip from "../../components/TooltipComponent"; import Tooltip from "../../components/TooltipComponent";
export default function GenericNode({ data }) { export default function GenericNode({ data }) {
console.log(data)
const Icon = nodeIcons[data.type]; const Icon = nodeIcons[data.type];
return ( return (
<div className="prompt-node relative bg-white w-96 rounded-lg solid border flex flex-col justify-center"> <div className="prompt-node relative bg-white w-96 rounded-lg solid border flex flex-col justify-center">
@ -46,7 +47,7 @@ export default function GenericNode({ data }) {
onSelect={() => {}} onSelect={() => {}}
/> />
) : data.node.template[t].type === "str" ? ( ) : data.node.template[t].type === "str" ? (
<Input title={snakeToNormalCase(t)} placeholder="pleicerolder" onChange={() => {}} /> <Input title={snakeToNormalCase(t)} value={data.node.template[t].value} placeholder={data.node.template[t].placeholder??"aasas"} onChange={() => {}} />
) : ( ) : (
<></> <></>
)} )}

View file

@ -1,4 +1,4 @@
export default function Input({title, placeholder, onChange}){ export default function Input({title, placeholder, onChange, value}){
return ( return (
<> <>
<div> <div>
@ -7,6 +7,7 @@ export default function Input({title, placeholder, onChange}){
</label> </label>
<div className="mt-1"> <div className="mt-1">
<input <input
value={(value as string).length>0?value:""}
type="text" type="text"
className="block w-full form-input rounded-md border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 sm:text-sm" className="block w-full form-input rounded-md border-gray-300 shadow-sm focus:border-indigo-500 focus:ring-indigo-500 sm:text-sm"
placeholder={placeholder} placeholder={placeholder}

View file

@ -0,0 +1,50 @@
import { CSSProperties, FC } from 'react';
import { Node } from 'reactflow';
interface ConnectionLineComponentProps {
fromX: number;
fromY: number;
fromPosition: string;
toX: number;
toY: number;
fromNode:Node;
toPosition: string;
connectionLineType: string;
connectionLineStyle: CSSProperties;
}
const ConnectionLineComponent = ({
fromX,
fromY,
fromPosition,
toX,
toY,
toPosition,
connectionLineType,
fromNode={},
connectionLineStyle = {} // provide a default value for connectionLineStyle
}) => {
console.log(fromNode)
return (
<g>
<path
fill="none"
stroke="#222"
strokeWidth={1.5}
className="animated"
d={`M${fromX},${fromY} C ${fromX} ${toY} ${fromX} ${toY} ${toX},${toY}`}
style={connectionLineStyle}
/>
<circle
cx={toX}
cy={toY}
fill="#fff"
r={3}
stroke="#222"
strokeWidth={1.5}
/>
</g>
);
};
export default ConnectionLineComponent;

View file

@ -10,7 +10,7 @@ import { locationContext } from "../../contexts/locationContext";
import ExtraSidebar from "./components/extraSidebarComponent"; import ExtraSidebar from "./components/extraSidebarComponent";
import Chat from "../../components/chatComponent"; import Chat from "../../components/chatComponent";
import GenericNode from "../../CustomNodes/GenericNode"; import GenericNode from "../../CustomNodes/GenericNode";
import connection from "./components/connection";
const nodeTypes = { const nodeTypes = {
genericNode:GenericNode, genericNode:GenericNode,
}; };
@ -83,6 +83,7 @@ export default function FlowPage() {
onConnect={onConnect} onConnect={onConnect}
onInit={setReactFlowInstance} onInit={setReactFlowInstance}
nodeTypes={nodeTypes} nodeTypes={nodeTypes}
connectionLineComponent={connection}
onDragOver={onDragOver} onDragOver={onDragOver}
onDrop={onDrop} onDrop={onDrop}
fitView fitView