1
- import type { EntryContext } from '@remix-run/node'
1
+ /**
2
+ * By default, Remix will handle generating the HTTP Response for you.
3
+ * You are free to delete this file if you'd like to, but if you ever want it revealed again, you can run `npx remix reveal` ✨
4
+ * For more information, see https://remix.run/docs/en/main/file-conventions/entry.server
5
+ */
2
6
3
- import { PassThrough } from 'stream'
4
- import { Response } from '@remix-run/node'
7
+ import { PassThrough } from 'node:stream'
8
+ import type { EntryContext } from '@remix-run/node'
9
+ import { createReadableStreamFromReadable } from "@remix-run/node" ;
5
10
import { RemixServer } from '@remix-run/react'
6
11
import { renderToPipeableStream } from 'react-dom/server'
7
12
import { getSharedEnvs } from './utils/envs'
@@ -35,7 +40,7 @@ function handleBotRequest(
35
40
return new Promise ( ( resolve , reject ) => {
36
41
let didError = false
37
42
38
- const { pipe , abort } = renderToPipeableStream (
43
+ const { abort , pipe } = renderToPipeableStream (
39
44
< RemixServer context = { remixContext } url = { request . url } /> ,
40
45
{
41
46
onAllReady ( ) {
@@ -44,7 +49,7 @@ function handleBotRequest(
44
49
responseHeaders . set ( 'Content-Type' , 'text/html' )
45
50
46
51
resolve (
47
- new Response ( body , {
52
+ new Response ( createReadableStreamFromReadable ( body ) , {
48
53
headers : responseHeaders ,
49
54
status : didError ? 500 : responseStatusCode ,
50
55
} ) ,
@@ -76,7 +81,7 @@ function handleBrowserRequest(
76
81
return new Promise ( ( resolve , reject ) => {
77
82
let didError = false
78
83
79
- const { pipe , abort } = renderToPipeableStream (
84
+ const { abort , pipe } = renderToPipeableStream (
80
85
< RemixServer context = { remixContext } url = { request . url } /> ,
81
86
{
82
87
onShellReady ( ) {
@@ -85,7 +90,7 @@ function handleBrowserRequest(
85
90
responseHeaders . set ( 'Content-Type' , 'text/html' )
86
91
87
92
resolve (
88
- new Response ( body , {
93
+ new Response ( createReadableStreamFromReadable ( body ) , {
89
94
headers : responseHeaders ,
90
95
status : didError ? 500 : responseStatusCode ,
91
96
} ) ,
0 commit comments