@@ -10,7 +10,7 @@ const clearBtn = document.querySelector(".clear-btn");
1010// edit option
1111let editElement ;
1212let editFlag = false ;
13-
13+ let editValue = "" ;
1414// ****** event listeners **********
1515
1616// submit form
@@ -60,9 +60,10 @@ function addItem(e){
6060} else if ( value !== "" && editFlag ) {
6161editElement . innerHTML = value ;
6262displayAlert ( "value changed" , "success" ) ;
63+
64+ // edit local storage
65+ editLocalStorage ( editValue , value ) ;
6366setBackToDefault ( ) ;
64- // add to local storage
65- addToLocalStorage ( value ) ;
6667} else {
6768displayAlert ( "please enter value" , "danger" ) ;
6869}
@@ -113,15 +114,15 @@ function editItem(e){
113114// set form value
114115grocery . value = editElement . innerHTML ;
115116editFlag = true ;
117+ editValue = editElement . innerHTML ;
116118//
117119submitBtn . textContent = "edit" ;
118- // remove from local storage
119- removeFromLocalStorage ( editElement . innerHTML ) ;
120120}
121121// set backt to defaults
122122function setBackToDefault ( ) {
123123grocery . value = "" ;
124124editFlag = false ;
125+ editValue = "" ;
125126submitBtn . textContent = "submit" ;
126127}
127128
@@ -147,6 +148,17 @@ function removeFromLocalStorage(grocery){
147148} ) ;
148149localStorage . setItem ( "list" , JSON . stringify ( items ) ) ;
149150}
151+ function editLocalStorage ( oldValue , newValue ) {
152+ let items = getLocalStorage ( ) ;
153+
154+ items = items . map ( function ( item ) {
155+ if ( item === oldValue ) {
156+ item = newValue ;
157+ }
158+ return item ;
159+ } ) ;
160+ localStorage . setItem ( "list" , JSON . stringify ( items ) ) ;
161+ }
150162
151163// SETUP LOCALSTORAGE.REMOVEITEM('LIST');
152164
0 commit comments