@@ -149,7 +149,9 @@ document.querySelector('.randomize-button')
149149
150150document . querySelector ( '.reset-button' )
151151 . addEventListener ( 'click' , ( e ) => {
152+ const darkMode = localStorage . getItem ( 'darkMode' ) ;
152153 localStorage . clear ( ) ;
154+ localStorage . setItem ( 'darkMode' , darkMode ) ;
153155 setPreset ( initialTheme ) ;
154156 } ) ;
155157
@@ -191,4 +193,30 @@ document.addEventListener("DOMContentLoaded", (event) => {
191193 }
192194} ) ;
193195
196+ /* ************** Dark Mode ************** */
197+
198+ function setLightMode ( ) {
199+ localStorage . setItem ( 'darkMode' , 0 ) ;
200+ document . documentElement . setAttribute ( "data-theme" , "light" ) ;
201+ document . querySelector ( '#light-mode-btn' ) . classList . add ( 'selected' ) ;
202+ document . querySelector ( '#dark-mode-btn' ) . classList . remove ( 'selected' ) ;
203+ }
204+ function setDarkMode ( ) {
205+ localStorage . setItem ( 'darkMode' , 1 ) ;
206+ document . documentElement . setAttribute ( "data-theme" , "dark" ) ;
207+ document . querySelector ( '#light-mode-btn' ) . classList . remove ( 'selected' ) ;
208+ document . querySelector ( '#dark-mode-btn' ) . classList . add ( 'selected' ) ;
209+ }
210+
211+ document . addEventListener ( "DOMContentLoaded" , ( event ) => {
212+ const localDarkMode = localStorage . getItem ( 'darkMode' ) ;
213+ if ( localDarkMode && localDarkMode == 1 ) {
214+ document . querySelector ( '#dark-mode-btn' ) . classList . add ( 'selected' ) ;
215+ } else {
216+ document . querySelector ( '#light-mode-btn' ) . classList . add ( 'selected' ) ;
217+ }
218+ document . querySelector ( '#light-mode-btn' ) . onclick = setLightMode ;
219+ document . querySelector ( '#dark-mode-btn' ) . onclick = setDarkMode ;
220+ } ) ;
221+
194222/* ************** ************** ************** */
0 commit comments