@@ -19,6 +19,7 @@ function EncapsulatedPacket(props: Props) {
19
19
} , [ props . stage ] )
20
20
21
21
const currentPosition = useMemo ( ( ) => {
22
+ const fromClient = props . packet . from === 'client'
22
23
const CLIENT_X = 20
23
24
const SERVER_X = 80
24
25
const TRANSMISSION_X = 50
@@ -27,19 +28,19 @@ function EncapsulatedPacket(props: Props) {
27
28
const STEP_Y = SPACING * 20
28
29
29
30
const positions = [
30
- { x : CLIENT_X , y : START_Y } , // Application
31
- { x : CLIENT_X , y : START_Y + STEP_Y } , // Transport
32
- { x : CLIENT_X , y : START_Y + STEP_Y * 2 } , // Internet
33
- { x : CLIENT_X , y : START_Y + STEP_Y * 3 } , // Network Interface
31
+ { x : fromClient ? CLIENT_X : SERVER_X , y : START_Y } , // Application
32
+ { x : fromClient ? CLIENT_X : SERVER_X , y : START_Y + STEP_Y } , // Transport
33
+ { x : fromClient ? CLIENT_X : SERVER_X , y : START_Y + STEP_Y * 2 } , // Internet
34
+ { x : fromClient ? CLIENT_X : SERVER_X , y : START_Y + STEP_Y * 3 } , // Network Interface
34
35
{ x : TRANSMISSION_X , y : START_Y + STEP_Y * 4 } , // Transmission
35
- { x : SERVER_X , y : START_Y + STEP_Y * 3 } , // Network Interface (receiver)
36
- { x : SERVER_X , y : START_Y + STEP_Y * 2 } , // Internet (receiver)
37
- { x : SERVER_X , y : START_Y + STEP_Y * 1 } , // Transport (receiver)
38
- { x : SERVER_X , y : START_Y } , // Application (receiver)
36
+ { x : fromClient ? SERVER_X : CLIENT_X , y : START_Y + STEP_Y * 3 } , // Network Interface (receiver)
37
+ { x : fromClient ? SERVER_X : CLIENT_X , y : START_Y + STEP_Y * 2 } , // Internet (receiver)
38
+ { x : fromClient ? SERVER_X : CLIENT_X , y : START_Y + STEP_Y * 1 } , // Transport (receiver)
39
+ { x : fromClient ? SERVER_X : CLIENT_X , y : START_Y } , // Application (receiver)
39
40
]
40
41
41
42
return positions [ props . stage ]
42
- } , [ props . stage ] )
43
+ } , [ props . stage , props . packet . from ] )
43
44
44
45
const Icon = props . packet . type . icon
45
46
0 commit comments