@@ -8,6 +8,7 @@ import Box from "@mui/material/Box";
8
8
import MuiGrid from "@mui/material/Grid" ;
9
9
import CompareArrowsIcon from "@mui/icons-material/CompareArrows" ;
10
10
import TextField from "@mui/material/TextField" ;
11
+ import Button from "@mui/material/Button" ;
11
12
import "./home.scss" ;
12
13
import axios from "axios" ;
13
14
@@ -23,11 +24,14 @@ const TRANSLATION_API_BASE_URL_POST = "http://localhost:5000/translate/post";
23
24
const TRANSLATION_API_BASE_URL_GET = "http://localhost:5000/translate/get" ;
24
25
25
26
export default function Home ( ) {
26
- const languages = [
27
+ const flanguage = [
27
28
{
28
29
value : "en" ,
29
30
label : "English" ,
30
31
} ,
32
+ ] ;
33
+
34
+ const tlanguage = [
31
35
{
32
36
value : "de" ,
33
37
label : "German" ,
@@ -62,14 +66,13 @@ export default function Home() {
62
66
setTranslateToLang ( event . value ) ;
63
67
} ;
64
68
65
- // Handle input text
69
+ // Handle text translation
66
70
const handleChangeTranslate = async ( event ) => {
67
- setTranslateText ( event . target . value ) ;
68
71
//POST input text
69
72
try {
70
73
await axios
71
74
. post ( TRANSLATION_API_BASE_URL_POST , {
72
- inputText : event . target . value ,
75
+ inputText : translateText ,
73
76
srctext : translateFromLang ,
74
77
dsttext : translateToLang ,
75
78
} )
@@ -81,7 +84,6 @@ export default function Home() {
81
84
}
82
85
83
86
//GET translated text
84
-
85
87
try {
86
88
await axios . get ( TRANSLATION_API_BASE_URL_GET ) . then ( ( response ) => {
87
89
setTranslatedText ( {
@@ -98,34 +100,36 @@ export default function Home() {
98
100
} ;
99
101
100
102
return (
101
- < div style = { { marginTop : "1em " } } >
103
+ < div style = { { marginTop : "5em " } } >
102
104
< div className = "translate-div" >
105
+ { /* Translate language from */ }
103
106
< div style = { { width : 500 } } >
104
107
< Box sx = { { minWidth : 120 } } >
105
108
< Select
106
109
placeholder = "Translate From"
107
- value = { languages . find ( ( obj ) => obj . value === translateFromLang ) }
108
- options = { languages }
110
+ value = { flanguage . find ( ( obj ) => obj . value === translateFromLang ) }
111
+ options = { flanguage }
109
112
onChange = { handleChangeTranslationFrom }
110
113
> </ Select >
111
114
</ Box >
112
115
</ div >
113
116
114
117
< CompareArrowsIcon />
115
118
119
+ { /* Translate language to */ }
116
120
< div style = { { width : 500 } } >
117
121
< Box sx = { { minWidth : 120 } } >
118
122
< Select
119
123
placeholder = "Translate To"
120
- value = { languages . find ( ( obj ) => obj . value === translateToLang ) }
121
- options = { languages }
124
+ value = { tlanguage . find ( ( obj ) => obj . value === translateToLang ) }
125
+ options = { tlanguage }
122
126
onChange = { handleChangeTranslationTo }
123
127
> </ Select >
124
128
</ Box >
125
129
</ div >
126
130
</ div >
127
131
128
- < div className = "card -div" >
132
+ < div className = "cards -div" >
129
133
< Card
130
134
sx = { {
131
135
width : 520 ,
@@ -142,13 +146,12 @@ export default function Home() {
142
146
< TextField
143
147
variant = "standard"
144
148
id = "outlined-textarea"
145
- placeholder = "Enter some text"
149
+ placeholder = "Enter some text here... "
146
150
multiline
147
151
autoFocus = { true }
148
152
fullWidth
149
153
rows = { 13 }
150
- value = { translateText }
151
- onChange = { handleChangeTranslate }
154
+ onChange = { ( e ) => setTranslateText ( e . target . value ) }
152
155
InputProps = { {
153
156
disableUnderline : true ,
154
157
} }
@@ -182,6 +185,18 @@ export default function Home() {
182
185
</ CardContent >
183
186
</ Card >
184
187
</ div >
188
+ < Button
189
+ sx = { {
190
+ display : "block" ,
191
+ width : "74em" ,
192
+ height : "3em" ,
193
+ margin : "10px auto 0px auto" ,
194
+ } }
195
+ variant = "contained"
196
+ onClick = { handleChangeTranslate }
197
+ >
198
+ Translate
199
+ </ Button >
185
200
</ div >
186
201
) ;
187
- }
202
+ }
0 commit comments