@@ -50,28 +50,45 @@ const ExpenseForm = (props) => {
50
50
setEnteredDate ( '' )
51
51
52
52
}
53
+ const [ showAddExpensePanel , setShowAddExpensePanel ] = useState ( true )
54
+
55
+ const showingAddExpensePanel = ( ) => {
56
+ setShowAddExpensePanel ( current => ! current )
57
+ }
53
58
54
59
return (
55
- < form onSubmit = { submitHandler } >
56
- < div className = 'new-expense__controls' >
57
- < div className = 'new-expense__control' >
58
- < label > Title </ label >
59
- < input type = 'text' value = { enteredTitle } onChange = { titleChangeHandler } / >
60
+ < >
61
+ {
62
+ showAddExpensePanel &&
63
+ < div className = 'new-expense__actions' >
64
+ < button type = 'button' onClick = { showingAddExpensePanel } > Add Expense </ button >
60
65
</ div >
61
- < div className = 'new-expense__control' >
62
- < label > Amount</ label >
63
- < input type = 'number' min = "0.01" step = "0.01" value = { enteredAmount } onChange = { amountChangeHandler } />
66
+ }
67
+ {
68
+ ! showAddExpensePanel &&
69
+ < form onSubmit = { submitHandler } >
70
+ < div className = 'new-expense__controls' >
71
+ < div className = 'new-expense__control' >
72
+ < label > Title</ label >
73
+ < input type = 'text' value = { enteredTitle } onChange = { titleChangeHandler } />
74
+ </ div >
75
+ < div className = 'new-expense__control' >
76
+ < label > Amount</ label >
77
+ < input type = 'number' min = "0.01" step = "0.01" value = { enteredAmount } onChange = { amountChangeHandler } />
78
+ </ div >
79
+ < div className = 'new-expense__control' >
80
+ < label > Date</ label >
81
+ < input type = 'date' min = "2022-01-01" max = "2024-12-31" value = { enteredDate } onChange = { dateChangeHandler } />
82
+ </ div >
64
83
</ div >
65
- < div className = 'new-expense__control ' >
66
- < label > Date </ label >
67
- < input type = 'date' min = "2022-01-01" max = "2024-12-31" value = { enteredDate } onChange = { dateChangeHandler } / >
84
+ < div className = 'new-expense__actions ' >
85
+ < button type = 'submit' > Add Expense </ button >
86
+ < button type = 'button' onClick = { showingAddExpensePanel } > Cancel </ button >
68
87
</ div >
69
- </ div >
70
- < div className = 'new-expense__actions' >
71
- < button type = 'submit' > Add Expense</ button >
72
- </ div >
73
- </ form >
74
- )
75
- }
88
+ </ form >
89
+ }
90
+ </ >
91
+ )
92
+ }
76
93
77
94
export default ExpenseForm
0 commit comments