@react-router/dev 0.0.0-experimental-1ab091485 → 0.0.0-experimental-1b454267f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/index.js +1 -1
- package/dist/config.js +1 -1
- package/dist/routes.js +1 -1
- package/dist/vite/cloudflare.js +3 -14
- package/dist/vite.js +59 -44
- package/package.json +6 -6
package/dist/cli/index.js
CHANGED
package/dist/config.js
CHANGED
package/dist/routes.js
CHANGED
package/dist/vite/cloudflare.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @react-router/dev v0.0.0-experimental-
|
|
2
|
+
* @react-router/dev v0.0.0-experimental-1b454267f
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Remix Software Inc.
|
|
5
5
|
*
|
|
@@ -64,18 +64,7 @@ function invariant(value, message) {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
// vite/node-adapter.ts
|
|
67
|
-
function fromNodeHeaders(
|
|
68
|
-
let nodeHeaders = nodeReq.headers;
|
|
69
|
-
if (nodeReq.httpVersionMajor >= 2) {
|
|
70
|
-
nodeHeaders = { ...nodeHeaders };
|
|
71
|
-
if (nodeHeaders[":authority"]) {
|
|
72
|
-
nodeHeaders.host = nodeHeaders[":authority"];
|
|
73
|
-
}
|
|
74
|
-
delete nodeHeaders[":authority"];
|
|
75
|
-
delete nodeHeaders[":method"];
|
|
76
|
-
delete nodeHeaders[":path"];
|
|
77
|
-
delete nodeHeaders[":scheme"];
|
|
78
|
-
}
|
|
67
|
+
function fromNodeHeaders(nodeHeaders) {
|
|
79
68
|
let headers = new Headers();
|
|
80
69
|
for (let [key, values] of Object.entries(nodeHeaders)) {
|
|
81
70
|
if (values) {
|
|
@@ -100,7 +89,7 @@ function fromNodeRequest(nodeReq, nodeRes) {
|
|
|
100
89
|
let controller = new AbortController();
|
|
101
90
|
let init = {
|
|
102
91
|
method: nodeReq.method,
|
|
103
|
-
headers: fromNodeHeaders(nodeReq),
|
|
92
|
+
headers: fromNodeHeaders(nodeReq.headers),
|
|
104
93
|
signal: controller.signal
|
|
105
94
|
};
|
|
106
95
|
nodeRes.on("finish", () => controller = null);
|
package/dist/vite.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @react-router/dev v0.0.0-experimental-
|
|
2
|
+
* @react-router/dev v0.0.0-experimental-1b454267f
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Remix Software Inc.
|
|
5
5
|
*
|
|
@@ -867,18 +867,7 @@ var import_node_events = require("events");
|
|
|
867
867
|
var import_node_stream = require("stream");
|
|
868
868
|
var import_set_cookie_parser = require("set-cookie-parser");
|
|
869
869
|
var import_node = require("@react-router/node");
|
|
870
|
-
function fromNodeHeaders(
|
|
871
|
-
let nodeHeaders = nodeReq.headers;
|
|
872
|
-
if (nodeReq.httpVersionMajor >= 2) {
|
|
873
|
-
nodeHeaders = { ...nodeHeaders };
|
|
874
|
-
if (nodeHeaders[":authority"]) {
|
|
875
|
-
nodeHeaders.host = nodeHeaders[":authority"];
|
|
876
|
-
}
|
|
877
|
-
delete nodeHeaders[":authority"];
|
|
878
|
-
delete nodeHeaders[":method"];
|
|
879
|
-
delete nodeHeaders[":path"];
|
|
880
|
-
delete nodeHeaders[":scheme"];
|
|
881
|
-
}
|
|
870
|
+
function fromNodeHeaders(nodeHeaders) {
|
|
882
871
|
let headers = new Headers();
|
|
883
872
|
for (let [key, values] of Object.entries(nodeHeaders)) {
|
|
884
873
|
if (values) {
|
|
@@ -903,7 +892,7 @@ function fromNodeRequest(nodeReq, nodeRes) {
|
|
|
903
892
|
let controller = new AbortController();
|
|
904
893
|
let init = {
|
|
905
894
|
method: nodeReq.method,
|
|
906
|
-
headers: fromNodeHeaders(nodeReq),
|
|
895
|
+
headers: fromNodeHeaders(nodeReq.headers),
|
|
907
896
|
signal: controller.signal
|
|
908
897
|
};
|
|
909
898
|
nodeRes.on("finish", () => controller = null);
|
|
@@ -1058,27 +1047,35 @@ var groupRoutesByParentId = (manifest) => {
|
|
|
1058
1047
|
});
|
|
1059
1048
|
return routes;
|
|
1060
1049
|
};
|
|
1061
|
-
var
|
|
1050
|
+
var createRoutesWithChildren = (manifest, parentId = "", routesByParentId = groupRoutesByParentId(manifest)) => {
|
|
1062
1051
|
return (routesByParentId[parentId] || []).map((route) => ({
|
|
1063
1052
|
...route,
|
|
1064
|
-
|
|
1053
|
+
...route.index ? {
|
|
1054
|
+
index: true
|
|
1055
|
+
} : {
|
|
1056
|
+
index: false,
|
|
1057
|
+
children: createRoutesWithChildren(
|
|
1058
|
+
manifest,
|
|
1059
|
+
route.id,
|
|
1060
|
+
routesByParentId
|
|
1061
|
+
)
|
|
1062
|
+
}
|
|
1065
1063
|
}));
|
|
1066
1064
|
};
|
|
1067
|
-
var
|
|
1065
|
+
var getStylesForPathname = async ({
|
|
1068
1066
|
viteDevServer,
|
|
1069
1067
|
rootDirectory,
|
|
1070
1068
|
reactRouterConfig,
|
|
1071
1069
|
entryClientFilePath,
|
|
1072
1070
|
loadCssContents,
|
|
1073
|
-
|
|
1074
|
-
url: url2
|
|
1071
|
+
pathname
|
|
1075
1072
|
}) => {
|
|
1076
|
-
if (
|
|
1073
|
+
if (pathname === void 0 || pathname.includes("?_data=")) {
|
|
1077
1074
|
return void 0;
|
|
1078
1075
|
}
|
|
1079
|
-
let
|
|
1076
|
+
let routesWithChildren = createRoutesWithChildren(reactRouterConfig.routes);
|
|
1080
1077
|
let appPath = path5.relative(process.cwd(), reactRouterConfig.appDirectory);
|
|
1081
|
-
let documentRouteFiles = (0, import_react_router.matchRoutes)(
|
|
1078
|
+
let documentRouteFiles = (0, import_react_router.matchRoutes)(routesWithChildren, pathname, reactRouterConfig.basename)?.map(
|
|
1082
1079
|
(match) => path5.resolve(appPath, reactRouterConfig.routes[match.route.id].file)
|
|
1083
1080
|
) ?? [];
|
|
1084
1081
|
let styles = await getStylesForFiles({
|
|
@@ -2238,10 +2235,10 @@ var reactRouterVitePlugin = () => {
|
|
|
2238
2235
|
routes
|
|
2239
2236
|
);
|
|
2240
2237
|
return `
|
|
2241
|
-
|
|
2238
|
+
import * as entryServer from ${JSON.stringify(
|
|
2242
2239
|
resolveFileUrl(ctx, ctx.entryServerFilePath)
|
|
2243
2240
|
)};
|
|
2244
|
-
|
|
2241
|
+
${Object.keys(routes).map((key, index) => {
|
|
2245
2242
|
let route = routes[key];
|
|
2246
2243
|
return `import * as route${index} from ${JSON.stringify(
|
|
2247
2244
|
resolveFileUrl(
|
|
@@ -2278,7 +2275,15 @@ var reactRouterVitePlugin = () => {
|
|
|
2278
2275
|
module: route${index}
|
|
2279
2276
|
}`;
|
|
2280
2277
|
}).join(",\n ")}
|
|
2281
|
-
}
|
|
2278
|
+
};
|
|
2279
|
+
${ctx.reactRouterConfig.future.unstable_viteEnvironmentApi && viteCommand === "serve" ? `
|
|
2280
|
+
export const getCriticalCss = ({ pathname }) => {
|
|
2281
|
+
return {
|
|
2282
|
+
rel: "stylesheet",
|
|
2283
|
+
href: "${viteUserConfig.base ?? "/"}@react-router/critical.css?pathname=" + pathname,
|
|
2284
|
+
};
|
|
2285
|
+
}
|
|
2286
|
+
` : ""}`;
|
|
2282
2287
|
};
|
|
2283
2288
|
let loadViteManifest = async (directory) => {
|
|
2284
2289
|
let manifestContents = await fse.readFile(
|
|
@@ -2758,15 +2763,14 @@ var reactRouterVitePlugin = () => {
|
|
|
2758
2763
|
(0, import_react_router2.unstable_setDevServerHooks)({
|
|
2759
2764
|
// Give the request handler access to the critical CSS in dev to avoid a
|
|
2760
2765
|
// flash of unstyled content since Vite injects CSS file contents via JS
|
|
2761
|
-
getCriticalCss: async (
|
|
2762
|
-
return
|
|
2766
|
+
getCriticalCss: async (pathname) => {
|
|
2767
|
+
return getStylesForPathname({
|
|
2763
2768
|
rootDirectory: ctx.rootDirectory,
|
|
2764
2769
|
entryClientFilePath: ctx.entryClientFilePath,
|
|
2765
2770
|
reactRouterConfig: ctx.reactRouterConfig,
|
|
2766
2771
|
viteDevServer,
|
|
2767
2772
|
loadCssContents,
|
|
2768
|
-
|
|
2769
|
-
url: url2
|
|
2773
|
+
pathname
|
|
2770
2774
|
});
|
|
2771
2775
|
},
|
|
2772
2776
|
// If an error is caught within the request handler, let Vite fix the
|
|
@@ -2809,25 +2813,36 @@ var reactRouterVitePlugin = () => {
|
|
|
2809
2813
|
}
|
|
2810
2814
|
}
|
|
2811
2815
|
);
|
|
2816
|
+
if (ctx.reactRouterConfig.future.unstable_viteEnvironmentApi) {
|
|
2817
|
+
viteDevServer.middlewares.use(async (req, res, next) => {
|
|
2818
|
+
let [reqPathname, reqSearch] = (req.url ?? "").split("?");
|
|
2819
|
+
if (reqPathname === "/@react-router/critical.css") {
|
|
2820
|
+
let pathname = new URLSearchParams(reqSearch).get("pathname");
|
|
2821
|
+
if (!pathname) {
|
|
2822
|
+
return next("No pathname provided");
|
|
2823
|
+
}
|
|
2824
|
+
let css = await getStylesForPathname({
|
|
2825
|
+
rootDirectory: ctx.rootDirectory,
|
|
2826
|
+
entryClientFilePath: ctx.entryClientFilePath,
|
|
2827
|
+
reactRouterConfig: ctx.reactRouterConfig,
|
|
2828
|
+
viteDevServer,
|
|
2829
|
+
loadCssContents,
|
|
2830
|
+
pathname
|
|
2831
|
+
});
|
|
2832
|
+
res.setHeader("Content-Type", "text/css");
|
|
2833
|
+
res.end(css);
|
|
2834
|
+
} else {
|
|
2835
|
+
next();
|
|
2836
|
+
}
|
|
2837
|
+
});
|
|
2838
|
+
}
|
|
2812
2839
|
return () => {
|
|
2813
2840
|
if (!viteDevServer.config.server.middlewareMode) {
|
|
2814
2841
|
viteDevServer.middlewares.use(async (req, res, next) => {
|
|
2815
2842
|
try {
|
|
2816
|
-
let build
|
|
2817
|
-
|
|
2818
|
-
|
|
2819
|
-
let ssrEnvironment = viteDevServer.environments.ssr;
|
|
2820
|
-
if (!vite2.isRunnableDevEnvironment(ssrEnvironment)) {
|
|
2821
|
-
return;
|
|
2822
|
-
}
|
|
2823
|
-
build = await ssrEnvironment.runner.import(
|
|
2824
|
-
virtual.serverBuild.id
|
|
2825
|
-
);
|
|
2826
|
-
} else {
|
|
2827
|
-
build = await viteDevServer.ssrLoadModule(
|
|
2828
|
-
virtual.serverBuild.id
|
|
2829
|
-
);
|
|
2830
|
-
}
|
|
2843
|
+
let build = await viteDevServer.ssrLoadModule(
|
|
2844
|
+
virtual.serverBuild.id
|
|
2845
|
+
);
|
|
2831
2846
|
let handler = (0, import_react_router2.createRequestHandler)(build, "development");
|
|
2832
2847
|
let nodeHandler = async (nodeReq, nodeRes) => {
|
|
2833
2848
|
let req2 = fromNodeRequest(nodeReq, nodeRes);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-router/dev",
|
|
3
|
-
"version": "0.0.0-experimental-
|
|
3
|
+
"version": "0.0.0-experimental-1b454267f",
|
|
4
4
|
"description": "Dev tools and CLI for React Router",
|
|
5
5
|
"homepage": "https://reactrouter.com",
|
|
6
6
|
"bugs": {
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"set-cookie-parser": "^2.6.0",
|
|
89
89
|
"valibot": "^0.41.0",
|
|
90
90
|
"vite-node": "3.0.0-beta.2",
|
|
91
|
-
"@react-router/node": "0.0.0-experimental-
|
|
91
|
+
"@react-router/node": "0.0.0-experimental-1b454267f"
|
|
92
92
|
},
|
|
93
93
|
"devDependencies": {
|
|
94
94
|
"@types/babel__core": "^7.20.5",
|
|
@@ -117,15 +117,15 @@
|
|
|
117
117
|
"vite": "^6.0.0",
|
|
118
118
|
"wireit": "0.14.9",
|
|
119
119
|
"wrangler": "^3.28.2",
|
|
120
|
-
"@react-router/serve": "0.0.0-experimental-
|
|
121
|
-
"react-router": "^0.0.0-experimental-
|
|
120
|
+
"@react-router/serve": "0.0.0-experimental-1b454267f",
|
|
121
|
+
"react-router": "^0.0.0-experimental-1b454267f"
|
|
122
122
|
},
|
|
123
123
|
"peerDependencies": {
|
|
124
124
|
"typescript": "^5.1.0",
|
|
125
125
|
"vite": "^5.1.0 || ^6.0.0",
|
|
126
126
|
"wrangler": "^3.28.2",
|
|
127
|
-
"@react-router/serve": "^0.0.0-experimental-
|
|
128
|
-
"react-router": "^0.0.0-experimental-
|
|
127
|
+
"@react-router/serve": "^0.0.0-experimental-1b454267f",
|
|
128
|
+
"react-router": "^0.0.0-experimental-1b454267f"
|
|
129
129
|
},
|
|
130
130
|
"peerDependenciesMeta": {
|
|
131
131
|
"@react-router/serve": {
|