wuhp commited on
Commit
90ef770
·
verified ·
1 Parent(s): d422478

Update components/CustomNode.tsx

Browse files
Files changed (1) hide show
  1. components/CustomNode.tsx +51 -2
components/CustomNode.tsx CHANGED
@@ -1,4 +1,5 @@
1
 
 
2
  import React, { memo } from 'react';
3
  import { Handle, Position, NodeProps } from 'reactflow';
4
  import {
@@ -7,7 +8,9 @@ import {
7
  ArrowUpCircle, Sliders, RefreshCcw, Brain, Crosshair, Network, Clock, Eye, Workflow,
8
  Terminal, MinusCircle, Scaling, BoxSelect, Wifi,
9
  Mic, Speaker, Radio, Cuboid, Target, Scan,
10
- AudioLines, FileAudio, Hexagon, Component
 
 
11
  } from 'lucide-react';
12
  import { NodeData, LayerType } from '../types';
13
 
@@ -78,6 +81,29 @@ const getIcon = (type: LayerType) => {
78
  case LayerType.POINTNET_BLOCK:
79
  case LayerType.POINT_TRANSFORMER: return <Scan className="w-4 h-4" />;
80
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
  case LayerType.LSTM:
82
  case LayerType.GRU: return <GitBranch className="w-4 h-4" />;
83
  case LayerType.EMBEDDING: return <Database className="w-4 h-4" />;
@@ -171,6 +197,29 @@ const getColor = (type: LayerType) => {
171
  case LayerType.TRIPLANE_ENC:
172
  case LayerType.GAUSSIAN_SPLAT: return 'border-teal-500 shadow-teal-500/20';
173
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  case LayerType.CONCAT:
175
  case LayerType.ADD: return 'border-pink-500 shadow-pink-500/20';
176
 
@@ -258,4 +307,4 @@ const CustomNode = ({ data, selected }: NodeProps<NodeData>) => {
258
  );
259
  };
260
 
261
- export default memo(CustomNode);
 
1
 
2
+
3
  import React, { memo } from 'react';
4
  import { Handle, Position, NodeProps } from 'reactflow';
5
  import {
 
8
  ArrowUpCircle, Sliders, RefreshCcw, Brain, Crosshair, Network, Clock, Eye, Workflow,
9
  Terminal, MinusCircle, Scaling, BoxSelect, Wifi,
10
  Mic, Speaker, Radio, Cuboid, Target, Scan,
11
+ AudioLines, FileAudio, Hexagon, Component,
12
+ ScanText, Mountain, Move, Radar, Map, Orbit, Wind,
13
+ Film, Video, FastForward, Timer, Clapperboard, Merge
14
  } from 'lucide-react';
15
  import { NodeData, LayerType } from '../types';
16
 
 
81
  case LayerType.POINTNET_BLOCK:
82
  case LayerType.POINT_TRANSFORMER: return <Scan className="w-4 h-4" />;
83
 
84
+ // OCR
85
+ case LayerType.TPS_TRANSFORM:
86
+ case LayerType.CRNN_BLOCK:
87
+ case LayerType.CTC_DECODER: return <ScanText className="w-4 h-4" />;
88
+
89
+ // Robotics / Motion
90
+ case LayerType.DEPTH_DECODER:
91
+ case LayerType.DISPARITY_HEAD: return <Mountain className="w-4 h-4" />;
92
+ case LayerType.OPTICAL_FLOW:
93
+ case LayerType.VELOCITY_HEAD: return <Wind className="w-4 h-4" />;
94
+ case LayerType.KALMAN_FILTER: return <Orbit className="w-4 h-4" />;
95
+ case LayerType.BEV_TRANSFORM: return <Map className="w-4 h-4" />;
96
+ case LayerType.RADAR_ENCODER: return <Radar className="w-4 h-4" />;
97
+
98
+ // Video / Generation
99
+ case LayerType.VIDEO_DIFFUSION_BLOCK: return <Film className="w-4 h-4" />;
100
+ case LayerType.SPATIO_TEMPORAL_ATTN: return <Timer className="w-4 h-4" />;
101
+ case LayerType.VIDEO_TOKENIZER: return <Video className="w-4 h-4" />;
102
+ case LayerType.FRAME_INTERPOLATOR: return <FastForward className="w-4 h-4" />;
103
+ case LayerType.TEMPORAL_SHIFT: return <Move className="w-4 h-4" />;
104
+ case LayerType.NON_LOCAL_BLOCK: return <Clapperboard className="w-4 h-4" />;
105
+ case LayerType.MULTIMODAL_FUSION: return <Merge className="w-4 h-4" />;
106
+
107
  case LayerType.LSTM:
108
  case LayerType.GRU: return <GitBranch className="w-4 h-4" />;
109
  case LayerType.EMBEDDING: return <Database className="w-4 h-4" />;
 
197
  case LayerType.TRIPLANE_ENC:
198
  case LayerType.GAUSSIAN_SPLAT: return 'border-teal-500 shadow-teal-500/20';
199
 
200
+ // OCR - Yellow/Lime
201
+ case LayerType.TPS_TRANSFORM:
202
+ case LayerType.CRNN_BLOCK:
203
+ case LayerType.CTC_DECODER: return 'border-yellow-500 shadow-yellow-500/20';
204
+
205
+ // Robotics/Motion - Cyan/Sky
206
+ case LayerType.DEPTH_DECODER:
207
+ case LayerType.DISPARITY_HEAD:
208
+ case LayerType.OPTICAL_FLOW:
209
+ case LayerType.VELOCITY_HEAD:
210
+ case LayerType.KALMAN_FILTER:
211
+ case LayerType.BEV_TRANSFORM:
212
+ case LayerType.RADAR_ENCODER: return 'border-sky-500 shadow-sky-500/20';
213
+
214
+ // Video - Fuchsia
215
+ case LayerType.VIDEO_DIFFUSION_BLOCK:
216
+ case LayerType.SPATIO_TEMPORAL_ATTN:
217
+ case LayerType.VIDEO_TOKENIZER:
218
+ case LayerType.FRAME_INTERPOLATOR:
219
+ case LayerType.TEMPORAL_SHIFT:
220
+ case LayerType.NON_LOCAL_BLOCK:
221
+ case LayerType.MULTIMODAL_FUSION: return 'border-fuchsia-500 shadow-fuchsia-500/20';
222
+
223
  case LayerType.CONCAT:
224
  case LayerType.ADD: return 'border-pink-500 shadow-pink-500/20';
225
 
 
307
  );
308
  };
309
 
310
+ export default memo(CustomNode);