11import React from "react" ;
22
3- export default function Timer ( props ) {
4- const [ h , setH ] = React . useState ( props . h ) ;
5- const [ m , setM ] = React . useState ( props . m ) ;
6- const [ s , setS ] = React . useState ( props . s ) ;
3+ export default function Timer ( ) {
4+ const [ h , setH ] = React . useState ( 0 ) ;
5+ const [ m , setM ] = React . useState ( 0 ) ;
6+ const [ s , setS ] = React . useState ( 0 ) ;
77 const [ started , setStarted ] = React . useState ( false ) ;
88 const [ startTime , setStartTime ] = React . useState ( null ) ;
99 const [ isFocus , setIsFocus ] = React . useState ( true ) ;
10- const [ saveH , setSaveH ] = React . useState ( props . h ) ;
11- const [ saveM , setSaveM ] = React . useState ( props . m ) ;
12- const [ saveS , setSaveS ] = React . useState ( props . s ) ;
10+ const [ saveH , setSaveH ] = React . useState ( 0 ) ;
11+ const [ saveM , setSaveM ] = React . useState ( 0 ) ;
12+ const [ saveS , setSaveS ] = React . useState ( 0 ) ;
1313 // to be saved in backend
1414 // ##############################################################
1515 const [ history , setHistory ] = React . useState ( [ ] ) ;
@@ -53,11 +53,12 @@ export default function Timer(props) {
5353 totalTimeBreak + ( new Date ( ) . getTime ( ) - startTime . getTime ( ) ) / 60000
5454 ) ;
5555 setHistory ( [
56- "timer stopped after " +
57- ( ( new Date ( ) - startTime ) / 60000 ) . toFixed ( 0 ) +
58- ( ( ( new Date ( ) - startTime ) / 60000 ) . toFixed ( 0 ) === 1
59- ? " minute."
60- : " minutes." ) ,
56+ "timer stopped. " +
57+ ( ( isFocus ? " focused time: " : " break time: " ) +
58+ ( ( new Date ( ) - startTime ) / 60000 ) . toFixed ( 0 ) +
59+ ( ( ( new Date ( ) - startTime ) / 60000 ) . toFixed ( 0 ) === 1
60+ ? " minute."
61+ : " minutes." ) ) ,
6162 ...history ,
6263 ] ) ;
6364 } ;
@@ -189,32 +190,32 @@ export default function Timer(props) {
189190 < button onClick = { ( ) => setTime ( 1 , 0 , 0 ) } > 1 hr</ button >
190191 < button onClick = { ( ) => setTime ( 2 , 0 , 0 ) } > 2 hrs</ button >
191192 < br />
192- < button onClick = { ( ) => setTime ( h , m + 1 , s ) } > +1 min</ button >
193- < button onClick = { ( ) => setTime ( h , m - 1 , s ) } > -1 min</ button >
194- < button onClick = { ( ) => setTime ( h , m + 15 , s ) } > +15 min</ button >
195- < button onClick = { ( ) => setTime ( h , m - 15 , s ) } > -15 min</ button >
196193 < button onClick = { ( ) => setTime ( h + 1 , m , s ) } > +1 hr</ button >
197194 < button onClick = { ( ) => setTime ( h - 1 , m , s ) } > -1 hr</ button >
195+ < button onClick = { ( ) => setTime ( h , m + 15 , s ) } > +15 min</ button >
196+ < button onClick = { ( ) => setTime ( h , m - 15 , s ) } > -15 min</ button >
197+ < button onClick = { ( ) => setTime ( h , m + 1 , s ) } > +1 min</ button >
198+ < button onClick = { ( ) => setTime ( h , m - 1 , s ) } > -1 min</ button >
198199 < br />
199200 < input
200201 type = "number"
201- value = { h }
202+ placeholder = { h }
202203 onChange = { ( e ) =>
203204 e . target . value > 0
204205 ? e . target . value < 99
205- ? setTime ( e . target . value , m , s )
206+ ? setTime ( parseInt ( e . target . value ) , m , s )
206207 : setTime ( 99 , m , s )
207208 : setTime ( 0 , m , s )
208209 }
209210 />
210211 :
211212 < input
212213 type = "number"
213- value = { m }
214+ placeholder = { m }
214215 onChange = { ( e ) =>
215216 e . target . value > 0
216217 ? e . target . value < 59
217- ? setTime ( h , e . target . value , s )
218+ ? setTime ( h , parseInt ( e . target . value ) , s )
218219 : setTime ( h , 59 , s )
219220 : setTime ( h , 0 , s )
220221 }
@@ -224,11 +225,11 @@ export default function Timer(props) {
224225 :
225226 < input
226227 type = "number"
227- value = { s }
228+ placeholder = { s }
228229 onChange = { ( e ) =>
229230 e . target . value > 0
230231 ? e . target . value < 59
231- ? setTime ( h , m , e . target . value )
232+ ? setTime ( h , m , parseInt ( e . target . value ) )
232233 : setTime ( h , m , 59 )
233234 : setTime ( h , m , 0 )
234235 }
0 commit comments