@@ -17,7 +17,7 @@ import { MediaModal } from './media/mediaModal';
1717import { CustomWidgets } from './custom-widgets/customWidgets' ;
1818import { OnboardingModal } from './onboardingModal' ;
1919import { lightTheme } from './utils/themes' ;
20- import { isRedesignEnabledSetting , mobileBreakpoint } from '../constants' ;
20+ import { isRedesignEnabledSetting , mobileBreakpoint , newTheme , themeSetting } from '../constants' ;
2121initializeIcons ( ) ;
2222
2323const enum NavItem {
@@ -39,7 +39,8 @@ interface LeftPanelState {
3939 selectedNavItem : NavItem ,
4040 isMobile : boolean ,
4141 showOnboardingModal : boolean ,
42- isRedesignEnabled : boolean
42+ isRedesignEnabled : boolean ,
43+ isNewThemeEnabled : boolean
4344}
4445
4546const pageIcon : IIconProps = { iconName : 'Page' } ;
@@ -79,7 +80,8 @@ export class LeftPanel extends React.Component<{}, LeftPanelState> {
7980 selectedNavItem : NavItem . Main ,
8081 isMobile : window . innerWidth < mobileBreakpoint ,
8182 showOnboardingModal : false ,
82- isRedesignEnabled : false
83+ isRedesignEnabled : false ,
84+ isNewThemeEnabled : false
8385 } ;
8486 }
8587
@@ -101,7 +103,17 @@ export class LeftPanel extends React.Component<{}, LeftPanelState> {
101103 } catch ( error ) {
102104 this . logger ?. trackError ( error , { message : `Failed to get setting: ${ isRedesignEnabledSetting } - admin panel` } ) ;
103105 }
106+
107+ let themeSettingValue = '' ;
108+ try {
109+ themeSettingValue = await this . siteService . getSetting ( themeSetting ) ;
110+ console . log ( themeSettingValue ) ;
111+ } catch ( error ) {
112+ this . logger ?. trackError ( error , { message : `Failed to get setting: ${ themeSetting } - admin panel` } ) ;
113+ }
114+
104115 this . setState ( { isRedesignEnabled : ! ! redesignSetting } ) ;
116+ this . setState ( { isNewThemeEnabled : themeSettingValue === newTheme } ) ;
105117 }
106118
107119 checkScreenSize = ( ) : void => {
@@ -244,19 +256,21 @@ export class LeftPanel extends React.Component<{}, LeftPanelState> {
244256 { this . state . selectedNavItem === NavItem . Media && < MediaModal onDismiss = { this . handleBackButtonClick . bind ( this ) } /> }
245257 { this . state . selectedNavItem === NavItem . Settings && < SettingsModal onDismiss = { this . handleBackButtonClick . bind ( this ) } /> }
246258 { this . state . selectedNavItem === NavItem . Help && < HelpModal onDismiss = { this . handleBackButtonClick . bind ( this ) } /> }
247- < Toggle
248- label = { "Preview new UI design" }
249- onText = { "On" }
250- offText = { "Off" }
251- checked = { this . state . isRedesignEnabled }
252- onChange = { async ( _ , checked ) => {
253- this . setState ( { isRedesignEnabled : checked } ) ;
254- await this . siteService . setSetting ( isRedesignEnabledSetting , checked ) ;
255- this . logger . trackEvent ( `${ checked ? 'Checked' : 'Unchecked' } : Preview new UI design` ) ;
256- this . eventManager . dispatchEvent ( 'onSaveChanges' ) ;
257- this . eventManager . dispatchEvent ( 'onDataPush' ) ; // Needed to reload the runtime part
258- } }
259- />
259+ { ! this . state . isNewThemeEnabled &&
260+ < Toggle
261+ label = { "Preview new UI design" }
262+ onText = { "On" }
263+ offText = { "Off" }
264+ checked = { this . state . isRedesignEnabled }
265+ onChange = { async ( _ , checked ) => {
266+ this . setState ( { isRedesignEnabled : checked } ) ;
267+ await this . siteService . setSetting ( isRedesignEnabledSetting , checked ) ;
268+ this . logger . trackEvent ( `${ checked ? 'Checked' : 'Unchecked' } : Preview new UI design` ) ;
269+ this . eventManager . dispatchEvent ( 'onSaveChanges' ) ;
270+ this . eventManager . dispatchEvent ( 'onDataPush' ) ; // Needed to reload the runtime part
271+ } }
272+ />
273+ }
260274 </ div >
261275 </ >
262276 )
0 commit comments