@solidjs/start 2.0.0-beta.5 → 2.0.0-beta.7
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/CHANGELOG.md +13 -0
- package/dist/config/dev-server.d.ts +3 -1
- package/dist/config/dev-server.js +23 -5
- package/dist/config/index.js +4 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @solidjs/start
|
|
2
2
|
|
|
3
|
+
## 2.0.0-beta.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d2f0621: Support JavaScript projects whose app and client/server entries use `.jsx`.
|
|
8
|
+
|
|
9
|
+
## 2.0.0-beta.6
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 25769f2: Fix Vite preview for non-HTML responses and projects whose server build uses an `.mjs`
|
|
14
|
+
entry.
|
|
15
|
+
|
|
3
16
|
## 2.0.0-beta.5
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
import { type PluginOption } from "vite";
|
|
2
|
-
export declare function devServer(): Array<PluginOption>;
|
|
2
|
+
export declare function devServer(serverEntryPath: string): Array<PluginOption>;
|
|
3
|
+
export declare function resolvePreviewServerEntry(root: string): string;
|
|
4
|
+
export declare function isHtmlResponse(response: Response): boolean;
|
|
@@ -6,22 +6,27 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
6
6
|
}
|
|
7
7
|
return path;
|
|
8
8
|
};
|
|
9
|
+
import { existsSync } from "node:fs";
|
|
9
10
|
import { join } from "node:path";
|
|
10
11
|
import { pathToFileURL } from "node:url";
|
|
11
12
|
import { NodeRequest, sendNodeResponse } from "srvx/node";
|
|
12
13
|
import { isRunnableDevEnvironment, } from "vite";
|
|
13
14
|
import { VITE_ENVIRONMENTS } from "./constants.js";
|
|
14
|
-
export function devServer() {
|
|
15
|
+
export function devServer(serverEntryPath) {
|
|
15
16
|
return [
|
|
16
17
|
{
|
|
17
18
|
name: "solid-start-dev-server",
|
|
18
19
|
configurePreviewServer(server) {
|
|
20
|
+
const serverEntryUrl = pathToFileURL(resolvePreviewServerEntry(server.config.root)).href;
|
|
19
21
|
return () => {
|
|
20
22
|
server.middlewares.use(async (req, res) => {
|
|
21
|
-
res.setHeader("content-encoding", "identity");
|
|
22
23
|
const webReq = new NodeRequest({ req, res });
|
|
23
|
-
const def = await import(__rewriteRelativeImportExtension(
|
|
24
|
-
|
|
24
|
+
const def = await import(__rewriteRelativeImportExtension(serverEntryUrl, true));
|
|
25
|
+
const webRes = await def.default.fetch(webReq);
|
|
26
|
+
if (isHtmlResponse(webRes)) {
|
|
27
|
+
res.setHeader("content-encoding", "identity");
|
|
28
|
+
}
|
|
29
|
+
sendNodeResponse(res, webRes);
|
|
25
30
|
});
|
|
26
31
|
};
|
|
27
32
|
},
|
|
@@ -49,7 +54,7 @@ export function devServer() {
|
|
|
49
54
|
}
|
|
50
55
|
const webReq = new NodeRequest({ req, res });
|
|
51
56
|
try {
|
|
52
|
-
const serverEntry = await serverEnv.runner.import(
|
|
57
|
+
const serverEntry = await serverEnv.runner.import(serverEntryPath);
|
|
53
58
|
const webRes = await serverEntry.default.fetch(webReq);
|
|
54
59
|
return sendNodeResponse(res, webRes);
|
|
55
60
|
}
|
|
@@ -94,6 +99,19 @@ export function devServer() {
|
|
|
94
99
|
},
|
|
95
100
|
];
|
|
96
101
|
}
|
|
102
|
+
export function resolvePreviewServerEntry(root) {
|
|
103
|
+
const serverDirectory = join(root, "dist/server");
|
|
104
|
+
const serverEntry = ["js", "mjs"]
|
|
105
|
+
.map(extension => join(serverDirectory, `entry-server.${extension}`))
|
|
106
|
+
.find(existsSync);
|
|
107
|
+
if (!serverEntry) {
|
|
108
|
+
throw new Error(`Could not find the SolidStart server entry in ${serverDirectory}`);
|
|
109
|
+
}
|
|
110
|
+
return serverEntry;
|
|
111
|
+
}
|
|
112
|
+
export function isHtmlResponse(response) {
|
|
113
|
+
return response.headers.get("content-type")?.startsWith("text/html") ?? false;
|
|
114
|
+
}
|
|
97
115
|
/**
|
|
98
116
|
* Removes Vite internal middleware
|
|
99
117
|
*
|
package/dist/config/index.js
CHANGED
|
@@ -44,8 +44,8 @@ export function solidStart(options) {
|
|
|
44
44
|
serverFunctionsPlugin({
|
|
45
45
|
manifest: VIRTUAL_MODULES.serverFnManifest,
|
|
46
46
|
runtime: {
|
|
47
|
-
server:
|
|
48
|
-
client:
|
|
47
|
+
server: "@solidjs/start/fns/server",
|
|
48
|
+
client: "@solidjs/start/fns/client",
|
|
49
49
|
},
|
|
50
50
|
filter: options?.serverFunctions?.filter,
|
|
51
51
|
}),
|
|
@@ -110,7 +110,7 @@ export function solidStart(options) {
|
|
|
110
110
|
manifest: true,
|
|
111
111
|
copyPublicDir: false,
|
|
112
112
|
rollupOptions: {
|
|
113
|
-
input:
|
|
113
|
+
input: handlers.server,
|
|
114
114
|
},
|
|
115
115
|
outDir: "dist/server",
|
|
116
116
|
commonjsOptions: {
|
|
@@ -214,7 +214,7 @@ export function solidStart(options) {
|
|
|
214
214
|
globalThis.START_CLIENT_OUT_DIR = options.dir;
|
|
215
215
|
},
|
|
216
216
|
},
|
|
217
|
-
devServer(),
|
|
217
|
+
devServer(handlers.server),
|
|
218
218
|
solid({
|
|
219
219
|
...start.solid,
|
|
220
220
|
ssr: true,
|