1- import React , { useState , useEffect } from 'react' ;
1+ import React , { useState , useEffect , ChangeEvent } from 'react' ;
22import {
33 TextField ,
44 IconButton ,
@@ -31,33 +31,33 @@ const useStyles = makeStyles((theme) => ({
3131 } ,
3232} ) ) ;
3333
34- export default function SettingsView ( ) {
34+ const SettingsView : React . FC = ( ) => {
3535 const classes = useStyles ( ) ;
3636
37- const [ jwtToken , setJwtToken ] = useState ( '' ) ;
38- const [ showToken , setShowToken ] = useState ( false ) ;
39- const [ snackbarMessage , setSnackbarMessage ] = useState ( '' ) ;
40- const [ snackbarOpen , setSnackbarOpen ] = useState ( false ) ;
37+ const [ jwtToken , setJwtToken ] = useState < string > ( '' ) ;
38+ const [ showToken , setShowToken ] = useState < boolean > ( false ) ;
39+ const [ snackbarMessage , setSnackbarMessage ] = useState < string > ( '' ) ;
40+ const [ snackbarOpen , setSnackbarOpen ] = useState < boolean > ( false ) ;
4141
4242 useEffect ( ( ) => {
4343 const savedToken = localStorage . getItem ( 'ui_jwt_token' ) ;
4444 if ( savedToken ) setJwtToken ( savedToken ) ;
4545 } , [ ] ) ;
4646
47- const handleSave = ( ) => {
47+ const handleSave = ( ) : void => {
4848 localStorage . setItem ( 'ui_jwt_token' , jwtToken ) ;
4949 setSnackbarMessage ( 'JWT token saved' ) ;
5050 setSnackbarOpen ( true ) ;
5151 } ;
5252
53- const handleClear = ( ) => {
53+ const handleClear = ( ) : void => {
5454 setJwtToken ( '' ) ;
5555 localStorage . removeItem ( 'ui_jwt_token' ) ;
5656 setSnackbarMessage ( 'JWT token cleared' ) ;
5757 setSnackbarOpen ( true ) ;
5858 } ;
5959
60- const toggleShowToken = ( ) => {
60+ const toggleShowToken = ( ) : void => {
6161 setShowToken ( ! showToken ) ;
6262 } ;
6363
@@ -81,7 +81,7 @@ export default function SettingsView() {
8181 variant = 'outlined'
8282 placeholder = 'Enter your JWT token...'
8383 value = { jwtToken }
84- onChange = { ( e ) => setJwtToken ( e . target . value ) }
84+ onChange = { ( e : ChangeEvent < HTMLInputElement > ) => setJwtToken ( e . target . value ) }
8585 InputProps = { {
8686 endAdornment : (
8787 < InputAdornment position = 'end' >
@@ -98,7 +98,7 @@ export default function SettingsView() {
9898 } }
9999 />
100100 < div className = { classes . buttonRow } >
101- < Button color = 'default' onClick = { handleClear } >
101+ < Button onClick = { handleClear } >
102102 < Clear style = { { marginRight : '5px' } } />
103103 Clear
104104 </ Button >
@@ -119,4 +119,6 @@ export default function SettingsView() {
119119 />
120120 </ form >
121121 ) ;
122- }
122+ } ;
123+
124+ export default SettingsView ;
0 commit comments