@@ -116,6 +116,7 @@ async function callServer({
116
116
serverUrl . search = requestUrl . search ;
117
117
118
118
request . headers . delete ( "Host" ) ;
119
+ request . headers . set ( gooeyGuiRouteHeader , "1" ) ;
119
120
120
121
let response = await fetch ( serverUrl , {
121
122
method : request . method ,
@@ -137,7 +138,7 @@ async function callServer({
137
138
return response ;
138
139
} else {
139
140
return json ( {
140
- body : Buffer . from ( await response . arrayBuffer ( ) ) . toString ( "base64" ) ,
141
+ base64Body : Buffer . from ( await response . arrayBuffer ( ) ) . toString ( "base64" ) ,
141
142
headers : Object . fromEntries ( response . headers ) ,
142
143
status : response . status ,
143
144
statusText : response . statusText ,
@@ -184,11 +185,16 @@ function App() {
184
185
const loaderData = useLoaderData < typeof loader > ( ) ;
185
186
const actionData = useActionData < typeof action > ( ) ;
186
187
const submit = useSubmit ( ) ;
187
- const { children, state, channels } = actionData ?? loaderData ;
188
+ const { base64Body , children, state, channels } = actionData ?? loaderData ;
188
189
const formRef = useRef < HTMLFormElement > ( null ) ;
189
190
const realtimeEvent = useRealtimeChannels ( { channels } ) ;
190
191
const fetcher = useFetcher ( ) ;
191
192
193
+ useEffect ( ( ) => {
194
+ if ( ! base64Body ) return ;
195
+ document . documentElement . innerHTML = atob ( base64Body ) ;
196
+ } , [ base64Body ] ) ;
197
+
192
198
useEffect ( ( ) => {
193
199
if ( realtimeEvent && fetcher . state === "idle" && formRef . current ) {
194
200
submit ( formRef . current ) ;
0 commit comments