Create a React callServer
implementation for React Router.
import {
createFromReadableStream,
createTemporaryReferenceSet,
encodeReply,
setServerCallback,
} from "@vitejs/plugin-rsc/browser";
import { unstable_createCallServer as createCallServer } from "react-router";
setServerCallback(
createCallServer({
createFromReadableStream,
createTemporaryReferenceSet,
encodeReply,
})
);
function createCallServer({
createFromReadableStream,
createTemporaryReferenceSet,
encodeReply,
fetch: fetchImplementation = fetch,
}: {
createFromReadableStream: BrowserCreateFromReadableStreamFunction;
createTemporaryReferenceSet: () => unknown;
encodeReply: EncodeReplyFunction;
fetch?: (request: Request) => Promise<Response>;
})
Your react-server-dom-xyz/client
's createFromReadableStream
. Used to decode payloads from the server.
A function that creates a temporary reference set for the RSC payload.
Your react-server-dom-xyz/client
's encodeReply
. Used when sending payloads to the server.
Optional fetch implementation. Defaults to global fetch
.
A function that can be used to call server actions.