@@ -7,6 +7,7 @@ import imgApp from './app.png'
7
7
import { useReducer } from 'react'
8
8
import { DevOverlay } from './dev-overlay'
9
9
import {
10
+ ACTION_DEVTOOLS_PANEL_TOGGLE ,
10
11
ACTION_ERROR_OVERLAY_CLOSE ,
11
12
ACTION_ERROR_OVERLAY_OPEN ,
12
13
ACTION_ERROR_OVERLAY_TOGGLE ,
@@ -93,7 +94,8 @@ const initialState: OverlayState = {
93
94
installed : '15.2.0' ,
94
95
staleness : 'fresh' ,
95
96
} ,
96
- isErrorOverlayOpen : true ,
97
+ isErrorOverlayOpen : false ,
98
+ isDevToolsPanelOpen : false ,
97
99
}
98
100
99
101
function useOverlayReducer ( ) {
@@ -109,6 +111,9 @@ function useOverlayReducer() {
109
111
case ACTION_ERROR_OVERLAY_TOGGLE : {
110
112
return { ...state , isErrorOverlayOpen : ! state . isErrorOverlayOpen }
111
113
}
114
+ case ACTION_DEVTOOLS_PANEL_TOGGLE : {
115
+ return { ...state , isDevToolsPanelOpen : ! state . isDevToolsPanelOpen }
116
+ }
112
117
default : {
113
118
return state
114
119
}
@@ -148,3 +153,37 @@ export const Default: Story = {
148
153
)
149
154
} ,
150
155
}
156
+
157
+ export const WithPanel : Story = {
158
+ beforeEach : ( ) => {
159
+ process . env . __NEXT_DEVTOOL_NEW_PANEL_UI = 'true'
160
+
161
+ // clean up callback function
162
+ return ( ) => {
163
+ delete process . env . __NEXT_DEVTOOL_NEW_PANEL_UI
164
+ }
165
+ } ,
166
+ render : function DevOverlayStory ( ) {
167
+ const [ state , dispatch ] = useOverlayReducer ( )
168
+ return (
169
+ < >
170
+ < img
171
+ src = { imgApp }
172
+ style = { {
173
+ width : '100%' ,
174
+ height : '100vh' ,
175
+ objectFit : 'contain' ,
176
+ } }
177
+ />
178
+ < DevOverlay
179
+ state = { state }
180
+ dispatch = { dispatch }
181
+ getSquashedHydrationErrorDetails = {
182
+ // Testing like App Router where we no longer quash hydration errors
183
+ getNoSquashedHydrationErrorDetails
184
+ }
185
+ />
186
+ </ >
187
+ )
188
+ } ,
189
+ }
0 commit comments