@@ -52,16 +52,6 @@ const PROXY_SERVER_URL = `http://${window.location.hostname}:${PROXY_PORT}`;
52
52
53
53
const App = ( ) => {
54
54
// Handle OAuth callback route
55
- if ( window . location . pathname === "/oauth/callback" ) {
56
- const OAuthCallback = React . lazy (
57
- ( ) => import ( "./components/OAuthCallback" ) ,
58
- ) ;
59
- return (
60
- < Suspense fallback = { < div > Loading...</ div > } >
61
- < OAuthCallback />
62
- </ Suspense >
63
- ) ;
64
- }
65
55
const [ resources , setResources ] = useState < Resource [ ] > ( [ ] ) ;
66
56
const [ resourceTemplates , setResourceTemplates ] = useState <
67
57
ResourceTemplate [ ]
@@ -114,22 +104,6 @@ const App = () => {
114
104
const nextRequestId = useRef ( 0 ) ;
115
105
const rootsRef = useRef < Root [ ] > ( [ ] ) ;
116
106
117
- const handleApproveSampling = ( id : number , result : CreateMessageResult ) => {
118
- setPendingSampleRequests ( ( prev ) => {
119
- const request = prev . find ( ( r ) => r . id === id ) ;
120
- request ?. resolve ( result ) ;
121
- return prev . filter ( ( r ) => r . id !== id ) ;
122
- } ) ;
123
- } ;
124
-
125
- const handleRejectSampling = ( id : number ) => {
126
- setPendingSampleRequests ( ( prev ) => {
127
- const request = prev . find ( ( r ) => r . id === id ) ;
128
- request ?. reject ( new Error ( "Sampling request rejected" ) ) ;
129
- return prev . filter ( ( r ) => r . id !== id ) ;
130
- } ) ;
131
- } ;
132
-
133
107
const [ selectedResource , setSelectedResource ] = useState < Resource | null > (
134
108
null ,
135
109
) ;
@@ -224,7 +198,7 @@ const App = () => {
224
198
// Connect to the server
225
199
connectMcpServer ( ) ;
226
200
}
227
- } , [ ] ) ;
201
+ } , [ connectMcpServer ] ) ;
228
202
229
203
useEffect ( ( ) => {
230
204
fetch ( `${ PROXY_SERVER_URL } /config` )
@@ -253,6 +227,22 @@ const App = () => {
253
227
}
254
228
} , [ ] ) ;
255
229
230
+ const handleApproveSampling = ( id : number , result : CreateMessageResult ) => {
231
+ setPendingSampleRequests ( ( prev ) => {
232
+ const request = prev . find ( ( r ) => r . id === id ) ;
233
+ request ?. resolve ( result ) ;
234
+ return prev . filter ( ( r ) => r . id !== id ) ;
235
+ } ) ;
236
+ } ;
237
+
238
+ const handleRejectSampling = ( id : number ) => {
239
+ setPendingSampleRequests ( ( prev ) => {
240
+ const request = prev . find ( ( r ) => r . id === id ) ;
241
+ request ?. reject ( new Error ( "Sampling request rejected" ) ) ;
242
+ return prev . filter ( ( r ) => r . id !== id ) ;
243
+ } ) ;
244
+ } ;
245
+
256
246
const clearError = ( tabKey : keyof typeof errors ) => {
257
247
setErrors ( ( prev ) => ( { ...prev , [ tabKey ] : null } ) ) ;
258
248
} ;
@@ -425,6 +415,17 @@ const App = () => {
425
415
setLogLevel ( level ) ;
426
416
} ;
427
417
418
+ if ( window . location . pathname === "/oauth/callback" ) {
419
+ const OAuthCallback = React . lazy (
420
+ ( ) => import ( "./components/OAuthCallback" ) ,
421
+ ) ;
422
+ return (
423
+ < Suspense fallback = { < div > Loading...</ div > } >
424
+ < OAuthCallback />
425
+ </ Suspense >
426
+ ) ;
427
+ }
428
+
428
429
return (
429
430
< div className = "flex h-screen bg-background" >
430
431
< Sidebar
0 commit comments