From 3887a786022aa5266f6f10bec9801b84f22ece00 Mon Sep 17 00:00:00 2001 From: Nicole Rappe Date: Tue, 1 Apr 2025 17:16:36 -0600 Subject: [PATCH] Incorporated Unified Node Styling, ExporttoCSV testing Node, and new node description logic. --- Data/WebUI/src/App.jsx | 13 +- Data/WebUI/src/Borealis.css | 34 ++++ .../nodes/Experimental/Experimental_Node.jsx | 58 +----- .../src/nodes/Flyff Universe/Flyff_Node.jsx | 58 +----- .../src/nodes/General Purpose/Data_Node.jsx | 59 +----- .../src/nodes/Organization/Node_Group_Box.jsx | 66 ------- .../src/nodes/Reporting/Export_to_CSV.jsx | 179 +++++++++++++----- Workflows/workflow.json | 86 +++++++++ 8 files changed, 278 insertions(+), 275 deletions(-) delete mode 100644 Data/WebUI/src/nodes/Organization/Node_Group_Box.jsx create mode 100644 Workflows/workflow.json diff --git a/Data/WebUI/src/App.jsx b/Data/WebUI/src/App.jsx index 4fa1dbd..c8f6aa4 100644 --- a/Data/WebUI/src/App.jsx +++ b/Data/WebUI/src/App.jsx @@ -322,8 +322,17 @@ export default function App() { {category} - {items.map(({ type, label }) => ( - + {items.map(({ type, label, description }) => ( + + {description || "Drag & Drop into Editor"} + + } + placement="right" + arrow + > + + + + + + + ); }; export default { - type: "ExportToCSVNode", // Must match the type used in nodeTypes + type: "ExportToCSVNode", label: "Export to CSV", - defaultContent: "Placeholder Node", + description: ` +Reporting Node +This node lets the user choose a folder to export CSV data to disk. + +When the "Export" button is clicked, CSV content (from upstream logic) is intended to be saved +to the selected directory. This is a placeholder for future file system interaction. + +Inputs: +- Structured Table Data (via upstream node) + +Outputs: +- None (writes directly to disk in future) +`.trim(), + defaultContent: "Export Input Data to CSV File", component: ExportToCSVNode }; diff --git a/Workflows/workflow.json b/Workflows/workflow.json new file mode 100644 index 0000000..50c65c1 --- /dev/null +++ b/Workflows/workflow.json @@ -0,0 +1,86 @@ +{ + "nodes": [ + { + "id": "node-1743545354663", + "type": "dataNode", + "position": { + "x": 177.26666259765625, + "y": 122.66666666666667 + }, + "data": { + "label": "Data Node", + "content": "Placeholder Node" + }, + "width": 160, + "height": 63 + }, + { + "id": "node-1743545357071", + "type": "dataNode", + "position": { + "x": 506.59999593098956, + "y": 232 + }, + "data": { + "label": "Data Node", + "content": "Placeholder Node" + }, + "width": 160, + "height": 63, + "selected": true, + "positionAbsolute": { + "x": 506.59999593098956, + "y": 232 + }, + "dragging": false + }, + { + "id": "node-1743545361694", + "type": "ExportToCSVNode", + "position": { + "x": 187.2666625976562, + "y": 316.66666666666663 + }, + "data": { + "label": "Export to CSV", + "content": "Placeholder Node" + }, + "width": 160, + "height": 63, + "selected": false, + "positionAbsolute": { + "x": 187.2666625976562, + "y": 316.66666666666663 + }, + "dragging": false + } + ], + "edges": [ + { + "source": "node-1743545354663", + "sourceHandle": null, + "target": "node-1743545357071", + "targetHandle": null, + "type": "smoothstep", + "animated": true, + "style": { + "strokeDasharray": "6 3", + "stroke": "#58a6ff" + }, + "id": "reactflow__edge-node-1743545354663-node-1743545357071" + }, + { + "source": "node-1743545354663", + "sourceHandle": null, + "target": "node-1743545361694", + "targetHandle": null, + "type": "smoothstep", + "animated": true, + "style": { + "strokeDasharray": "6 3", + "stroke": "#58a6ff" + }, + "id": "reactflow__edge-node-1743545354663-node-1743545361694" + } + ] +} \ No newline at end of file