@@ -17,6 +17,9 @@ export const VisualSettingsProvider = ({children}) => {
1717 const [ isBlueprint , setIsBlueprint ] = usePersistentState ( 'is-blueprint' , false ) ;
1818 const [ isSepia , setIsSepia ] = usePersistentState ( 'is-sepia' , false ) ;
1919 const [ isVaporwave , setIsVaporwave ] = usePersistentState ( 'is-vaporwave' , false ) ;
20+ const [ isCyberpunk , setIsCyberpunk ] = usePersistentState ( 'is-cyberpunk' , false ) ;
21+ const [ isGameboy , setIsGameboy ] = usePersistentState ( 'is-gameboy' , false ) ;
22+ const [ isComic , setIsComic ] = usePersistentState ( 'is-comic' , false ) ;
2023
2124 useEffect ( ( ) => {
2225 if ( isInverted ) {
@@ -90,6 +93,30 @@ export const VisualSettingsProvider = ({children}) => {
9093 }
9194 } , [ isVaporwave ] ) ;
9295
96+ useEffect ( ( ) => {
97+ if ( isCyberpunk ) {
98+ document . body . classList . add ( 'cyberpunk-mode' ) ;
99+ } else {
100+ document . body . classList . remove ( 'cyberpunk-mode' ) ;
101+ }
102+ } , [ isCyberpunk ] ) ;
103+
104+ useEffect ( ( ) => {
105+ if ( isGameboy ) {
106+ document . body . classList . add ( 'gameboy-mode' ) ;
107+ } else {
108+ document . body . classList . remove ( 'gameboy-mode' ) ;
109+ }
110+ } , [ isGameboy ] ) ;
111+
112+ useEffect ( ( ) => {
113+ if ( isComic ) {
114+ document . body . classList . add ( 'comic-mode' ) ;
115+ } else {
116+ document . body . classList . remove ( 'comic-mode' ) ;
117+ }
118+ } , [ isComic ] ) ;
119+
93120 const toggleInvert = ( ) => setIsInverted ( prev => ! prev ) ;
94121 const toggleRetro = ( ) => setIsRetro ( prev => ! prev ) ;
95122 const toggleParty = ( ) => setIsParty ( prev => ! prev ) ;
@@ -99,6 +126,9 @@ export const VisualSettingsProvider = ({children}) => {
99126 const toggleBlueprint = ( ) => setIsBlueprint ( prev => ! prev ) ;
100127 const toggleSepia = ( ) => setIsSepia ( prev => ! prev ) ;
101128 const toggleVaporwave = ( ) => setIsVaporwave ( prev => ! prev ) ;
129+ const toggleCyberpunk = ( ) => setIsCyberpunk ( prev => ! prev ) ;
130+ const toggleGameboy = ( ) => setIsGameboy ( prev => ! prev ) ;
131+ const toggleComic = ( ) => setIsComic ( prev => ! prev ) ;
102132
103133 return (
104134 < VisualSettingsContext . Provider value = { {
@@ -110,7 +140,10 @@ export const VisualSettingsProvider = ({children}) => {
110140 isTerminal, toggleTerminal,
111141 isBlueprint, toggleBlueprint,
112142 isSepia, toggleSepia,
113- isVaporwave, toggleVaporwave
143+ isVaporwave, toggleVaporwave,
144+ isCyberpunk, toggleCyberpunk,
145+ isGameboy, toggleGameboy,
146+ isComic, toggleComic
114147 } } >
115148 { children }
116149 </ VisualSettingsContext . Provider > ) ;
0 commit comments