Update app and tooling
This commit is contained in:
parent
3046531bdd
commit
e620ec7349
4950 changed files with 2975120 additions and 10 deletions
12
node_modules/@vercel/remix-builder/defaults/entry.client.react.jsx
generated
vendored
Normal file
12
node_modules/@vercel/remix-builder/defaults/entry.client.react.jsx
generated
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
import { RemixBrowser } from '@remix-run/react';
|
||||
import { startTransition, StrictMode } from 'react';
|
||||
import { hydrateRoot } from 'react-dom/client';
|
||||
|
||||
startTransition(() => {
|
||||
hydrateRoot(
|
||||
document,
|
||||
<StrictMode>
|
||||
<RemixBrowser />
|
||||
</StrictMode>
|
||||
);
|
||||
});
|
||||
17
node_modules/@vercel/remix-builder/defaults/entry.server.jsx
generated
vendored
Normal file
17
node_modules/@vercel/remix-builder/defaults/entry.server.jsx
generated
vendored
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
import { RemixServer } from '@remix-run/react';
|
||||
import { handleRequest } from '@vercel/remix';
|
||||
|
||||
export default function (
|
||||
request,
|
||||
responseStatusCode,
|
||||
responseHeaders,
|
||||
remixContext
|
||||
) {
|
||||
const remixServer = <RemixServer context={remixContext} url={request.url} />;
|
||||
return handleRequest(
|
||||
request,
|
||||
responseStatusCode,
|
||||
responseHeaders,
|
||||
remixServer
|
||||
);
|
||||
}
|
||||
3
node_modules/@vercel/remix-builder/defaults/server-edge.mjs
generated
vendored
Normal file
3
node_modules/@vercel/remix-builder/defaults/server-edge.mjs
generated
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
import { createRequestHandler } from '@remix-run/server-runtime';
|
||||
import * as build from '@remix-run/dev/server-build';
|
||||
export default createRequestHandler(build.default || build);
|
||||
89
node_modules/@vercel/remix-builder/defaults/server-node.mjs
generated
vendored
Normal file
89
node_modules/@vercel/remix-builder/defaults/server-node.mjs
generated
vendored
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
import {
|
||||
createRequestHandler as createRemixRequestHandler,
|
||||
createReadableStreamFromReadable,
|
||||
writeReadableStreamToWritable,
|
||||
installGlobals,
|
||||
} from '@remix-run/node';
|
||||
import * as build from '@remix-run/dev/server-build';
|
||||
|
||||
installGlobals({
|
||||
nativeFetch:
|
||||
// Explicit opt-in to native fetch via runtime env var
|
||||
(parseInt(process.versions.node, 10) >= 20 &&
|
||||
process.env.VERCEL_REMIX_NATIVE_FETCH === '1') ||
|
||||
// `unstable_singleFetch` future flag added in Remix v2.9.0
|
||||
build.future.unstable_singleFetch ||
|
||||
// `v3_singleFetch` future flag stabilized in Remix v2.13.0
|
||||
build.future.v3_singleFetch,
|
||||
});
|
||||
|
||||
const handleRequest = createRemixRequestHandler(
|
||||
build.default || build,
|
||||
process.env.NODE_ENV
|
||||
);
|
||||
|
||||
function toWebHeaders(nodeHeaders) {
|
||||
const headers = new Headers();
|
||||
|
||||
for (const key in nodeHeaders) {
|
||||
const header = nodeHeaders[key];
|
||||
// set-cookie is an array (maybe others)
|
||||
if (Array.isArray(header)) {
|
||||
for (const value of header) {
|
||||
headers.append(key, value);
|
||||
}
|
||||
} else {
|
||||
headers.append(key, header);
|
||||
}
|
||||
}
|
||||
|
||||
return headers;
|
||||
}
|
||||
|
||||
function toNodeHeaders(webHeaders) {
|
||||
return webHeaders.raw?.() || [...webHeaders].flat();
|
||||
}
|
||||
|
||||
function createRemixRequest(req, res) {
|
||||
const host = req.headers['x-forwarded-host'] || req.headers.host;
|
||||
const protocol = req.headers['x-forwarded-proto'] || 'https';
|
||||
const url = new URL(req.url, `${protocol}://${host}`);
|
||||
|
||||
// Abort action/loaders once we can no longer write a response
|
||||
const controller = new AbortController();
|
||||
res.on('close', () => controller.abort());
|
||||
|
||||
const init = {
|
||||
method: req.method,
|
||||
headers: toWebHeaders(req.headers),
|
||||
signal: controller.signal,
|
||||
};
|
||||
|
||||
if (req.method !== 'GET' && req.method !== 'HEAD') {
|
||||
init.body = createReadableStreamFromReadable(req);
|
||||
init.duplex = 'half';
|
||||
}
|
||||
|
||||
return new Request(url.href, init);
|
||||
}
|
||||
|
||||
async function sendRemixResponse(res, nodeResponse) {
|
||||
res.statusMessage = nodeResponse.statusText;
|
||||
res.writeHead(
|
||||
nodeResponse.status,
|
||||
nodeResponse.statusText,
|
||||
toNodeHeaders(nodeResponse.headers)
|
||||
);
|
||||
|
||||
if (nodeResponse.body) {
|
||||
await writeReadableStreamToWritable(nodeResponse.body, res);
|
||||
} else {
|
||||
res.end();
|
||||
}
|
||||
}
|
||||
|
||||
export default async (req, res) => {
|
||||
const request = createRemixRequest(req, res);
|
||||
const response = await handleRequest(request);
|
||||
await sendRemixResponse(res, response);
|
||||
};
|
||||
10
node_modules/@vercel/remix-builder/defaults/server-react-router.mjs
generated
vendored
Normal file
10
node_modules/@vercel/remix-builder/defaults/server-react-router.mjs
generated
vendored
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
import { createRequestHandler } from 'react-router';
|
||||
import * as build_ from 'virtual:react-router/server-build';
|
||||
const build = build_.default || build_;
|
||||
export default typeof build === 'function'
|
||||
? // A custom server entrypoint is expected to export
|
||||
// a Web API-compatible handler function
|
||||
build
|
||||
: // Otherwise, assume the default export is
|
||||
// the React Router app manifest
|
||||
createRequestHandler(build);
|
||||
21
node_modules/@vercel/remix-builder/defaults/vercel-edge-entrypoint.js
generated
vendored
Normal file
21
node_modules/@vercel/remix-builder/defaults/vercel-edge-entrypoint.js
generated
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
/**
|
||||
* Edge runtime entrypoint for `@remix-run/vercel`.
|
||||
*/
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
|
||||
var serverRuntime = require('@remix-run/server-runtime');
|
||||
|
||||
/**
|
||||
* Returns a request handler for the Vercel Edge runtime that serves
|
||||
* the Remix SSR response.
|
||||
*/
|
||||
function createRequestHandler({ build, mode }) {
|
||||
let handleRequest = serverRuntime.createRequestHandler(build, mode);
|
||||
return request => {
|
||||
return handleRequest(request);
|
||||
};
|
||||
}
|
||||
|
||||
exports.createRequestHandler = createRequestHandler;
|
||||
Loading…
Add table
Add a link
Reference in a new issue