@vidact/start 0.2.0-beta.0 → 0.2.0-beta.5
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 +65 -0
- package/dist/client.d.ts +24 -16
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +137 -165
- package/dist/client.js.map +1 -1
- package/dist/index-client.d.ts +5 -4
- package/dist/index-client.js +4 -4
- package/dist/index.d.ts +5 -4
- package/dist/index.js +4 -4
- package/dist/link-client.d.ts +6 -4
- package/dist/link-client.d.ts.map +1 -1
- package/dist/link-client.js +8 -4
- package/dist/link-client.js.map +1 -1
- package/dist/link-contract.d.ts +10 -7
- package/dist/link-contract.d.ts.map +1 -1
- package/dist/link-contract.js +11 -7
- package/dist/link-contract.js.map +1 -1
- package/dist/link.d.ts +6 -4
- package/dist/link.d.ts.map +1 -1
- package/dist/link.js +8 -4
- package/dist/link.js.map +1 -1
- package/dist/router.d.ts +57 -55
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +150 -157
- package/dist/router.js.map +1 -1
- package/dist/server.d.ts +18 -16
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +95 -99
- package/dist/server.js.map +1 -1
- package/dist/snapshot.d.ts +13 -10
- package/dist/snapshot.d.ts.map +1 -1
- package/dist/snapshot.js +19 -20
- package/dist/snapshot.js.map +1 -1
- package/dist/virtual.d.ts +3 -2
- package/dist/virtual.js +1 -2
- package/dist/vite.d.ts +18 -15
- package/dist/vite.d.ts.map +1 -1
- package/dist/vite.js +144 -171
- package/dist/vite.js.map +1 -1
- package/package.json +9 -8
- package/src/client.ts +272 -0
- package/src/index-client.ts +3 -0
- package/src/index.ts +3 -0
- package/src/link-client.ts +10 -0
- package/src/link-contract.ts +17 -0
- package/src/link.ts +10 -0
- package/src/router.ts +282 -0
- package/src/server.ts +211 -0
- package/src/snapshot.ts +40 -0
- package/src/virtual.ts +5 -0
- package/src/vite.ts +256 -0
- package/dist/index-client.d.ts.map +0 -1
- package/dist/index-client.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/virtual.d.ts.map +0 -1
- package/dist/virtual.js.map +0 -1
package/dist/vite.js
CHANGED
|
@@ -1,200 +1,173 @@
|
|
|
1
|
-
import { readdir } from
|
|
2
|
-
import path from
|
|
3
|
-
import { vidact } from
|
|
4
|
-
import { isRunnableDevEnvironment, normalizePath
|
|
5
|
-
|
|
1
|
+
import { readdir } from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { vidact } from "@vidact/vite";
|
|
4
|
+
import { isRunnableDevEnvironment, normalizePath } from "vite";
|
|
5
|
+
//#region src/vite.ts
|
|
6
|
+
const PUBLIC_ROUTES_ID = "virtual:vidact-start/routes";
|
|
6
7
|
const INTERNAL_ROUTES_ID = `\0${PUBLIC_ROUTES_ID}`;
|
|
7
8
|
const ROUTE_FILE = /\.(?:[cm]?[jt]sx?)$/u;
|
|
8
9
|
const IGNORED_ROUTE_FILE = /(?:^|\.)\b(?:test|spec)\.[cm]?[jt]sx?$/u;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
10
|
+
function vidactStart(options = {}) {
|
|
11
|
+
const compiler = options.compiler ?? {};
|
|
12
|
+
const features = [.../* @__PURE__ */ new Set(["framework", ...compiler.features ?? []])];
|
|
13
|
+
const plugins = [
|
|
14
|
+
vidactForEnvironment("client", {
|
|
15
|
+
...compiler,
|
|
16
|
+
target: "hydrate",
|
|
17
|
+
features
|
|
18
|
+
}),
|
|
19
|
+
vidactForEnvironment("ssr", {
|
|
20
|
+
...compiler,
|
|
21
|
+
target: "server",
|
|
22
|
+
features
|
|
23
|
+
}),
|
|
24
|
+
routeManifestPlugin(options.routesDirectory)
|
|
25
|
+
];
|
|
26
|
+
if (options.serverEntry !== false) plugins.push(developmentServerPlugin(options.serverEntry ?? "/src/server.ts", options.serverExport ?? "default"));
|
|
27
|
+
return plugins;
|
|
21
28
|
}
|
|
22
29
|
function routeManifestPlugin(configuredRoutesDirectory) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return [];
|
|
52
|
-
},
|
|
53
|
-
};
|
|
30
|
+
let config;
|
|
31
|
+
let routesDirectory;
|
|
32
|
+
let server;
|
|
33
|
+
return {
|
|
34
|
+
name: "vidact-start-routes",
|
|
35
|
+
configResolved(resolved) {
|
|
36
|
+
config = resolved;
|
|
37
|
+
routesDirectory = path.resolve(config.root, configuredRoutesDirectory ?? "src/routes");
|
|
38
|
+
},
|
|
39
|
+
configureServer(viteServer) {
|
|
40
|
+
server = viteServer;
|
|
41
|
+
viteServer.watcher.add(routesDirectory);
|
|
42
|
+
},
|
|
43
|
+
resolveId(source) {
|
|
44
|
+
return source === PUBLIC_ROUTES_ID ? INTERNAL_ROUTES_ID : null;
|
|
45
|
+
},
|
|
46
|
+
async load(id) {
|
|
47
|
+
if (id !== INTERNAL_ROUTES_ID) return null;
|
|
48
|
+
return generateRouteModule(await discoverRouteRecords(routesDirectory));
|
|
49
|
+
},
|
|
50
|
+
handleHotUpdate(context) {
|
|
51
|
+
if (!isRouteFile(routesDirectory, context.file)) return;
|
|
52
|
+
const module = server?.moduleGraph.getModuleById(INTERNAL_ROUTES_ID);
|
|
53
|
+
if (module !== void 0) server?.moduleGraph.invalidateModule(module);
|
|
54
|
+
server?.ws.send({ type: "full-reload" });
|
|
55
|
+
return [];
|
|
56
|
+
}
|
|
57
|
+
};
|
|
54
58
|
}
|
|
55
59
|
function vidactForEnvironment(environmentName, options) {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
const plugin = vidact(options);
|
|
61
|
+
return {
|
|
62
|
+
...plugin,
|
|
63
|
+
name: `${plugin.name}:start:${environmentName}`,
|
|
64
|
+
applyToEnvironment: (environment) => environment.name === environmentName
|
|
65
|
+
};
|
|
62
66
|
}
|
|
63
67
|
function developmentServerPlugin(serverEntry, serverExport) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
};
|
|
68
|
+
return {
|
|
69
|
+
name: "vidact-start-development-server",
|
|
70
|
+
config: () => ({ appType: "custom" }),
|
|
71
|
+
configureServer(server) {
|
|
72
|
+
return () => {
|
|
73
|
+
server.middlewares.use((nodeRequest, nodeResponse, next) => {
|
|
74
|
+
serveDevelopmentRequest(server, serverEntry, serverExport, nodeRequest, nodeResponse).catch((error) => {
|
|
75
|
+
if (error instanceof Error) server.ssrFixStacktrace(error);
|
|
76
|
+
next(error);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
};
|
|
79
82
|
}
|
|
80
83
|
async function serveDevelopmentRequest(server, serverEntry, serverExport, nodeRequest, nodeResponse) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
if (!(response instanceof Response)) {
|
|
93
|
-
throw new TypeError(`${serverEntry} ${serverExport} must return a Response`);
|
|
94
|
-
}
|
|
95
|
-
if (response.headers.get('content-type')?.startsWith('text/html') === true) {
|
|
96
|
-
const html = await server.transformIndexHtml(nodeRequest.url ?? '/', await response.text());
|
|
97
|
-
response = new Response(html, response);
|
|
98
|
-
}
|
|
99
|
-
await sendNodeResponse(nodeResponse, response);
|
|
84
|
+
const environment = server.environments.ssr;
|
|
85
|
+
if (!isRunnableDevEnvironment(environment)) throw new Error("Vidact Start requires Vite's runnable SSR development environment");
|
|
86
|
+
const handler = (await environment.runner.import(serverEntry))[serverExport];
|
|
87
|
+
if (typeof handler !== "function") throw new TypeError(`${serverEntry} must export a ${serverExport} request handler`);
|
|
88
|
+
let response = await handler(await nodeRequestToRequest(nodeRequest));
|
|
89
|
+
if (!(response instanceof Response)) throw new TypeError(`${serverEntry} ${serverExport} must return a Response`);
|
|
90
|
+
if (response.headers.get("content-type")?.startsWith("text/html") === true) {
|
|
91
|
+
const html = await server.transformIndexHtml(nodeRequest.url ?? "/", await response.text());
|
|
92
|
+
response = new Response(html, response);
|
|
93
|
+
}
|
|
94
|
+
await sendNodeResponse(nodeResponse, response);
|
|
100
95
|
}
|
|
101
96
|
async function nodeRequestToRequest(request) {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
const body = request.method === 'GET' || request.method === 'HEAD'
|
|
114
|
-
? undefined
|
|
115
|
-
: await readRequestBody(request);
|
|
116
|
-
return new Request(url, {
|
|
117
|
-
method: request.method ?? 'GET',
|
|
118
|
-
headers,
|
|
119
|
-
...(body === undefined ? {} : { body }),
|
|
120
|
-
});
|
|
97
|
+
const headers = new Headers();
|
|
98
|
+
for (const [name, value] of Object.entries(request.headers)) if (Array.isArray(value)) for (const item of value) headers.append(name, item);
|
|
99
|
+
else if (value !== void 0) headers.set(name, value);
|
|
100
|
+
const protocol = headers.get("x-forwarded-proto")?.split(",", 1)[0]?.trim() ?? (Reflect.get(request.socket, "encrypted") === true ? "https" : "http");
|
|
101
|
+
const url = new URL(request.url ?? "/", `${protocol}://${headers.get("host") ?? "localhost"}`);
|
|
102
|
+
const body = request.method === "GET" || request.method === "HEAD" ? void 0 : await readRequestBody(request);
|
|
103
|
+
return new Request(url, {
|
|
104
|
+
method: request.method ?? "GET",
|
|
105
|
+
headers,
|
|
106
|
+
...body === void 0 ? {} : { body }
|
|
107
|
+
});
|
|
121
108
|
}
|
|
122
109
|
async function readRequestBody(request) {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
}
|
|
127
|
-
return Uint8Array.from(Buffer.concat(chunks)).buffer;
|
|
110
|
+
const chunks = [];
|
|
111
|
+
for await (const chunk of request) chunks.push(typeof chunk === "string" ? Buffer.from(chunk) : chunk);
|
|
112
|
+
return Uint8Array.from(Buffer.concat(chunks)).buffer;
|
|
128
113
|
}
|
|
129
114
|
async function sendNodeResponse(response, webResponse) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
response.setHeader('set-cookie', cookies);
|
|
137
|
-
response.end(Buffer.from(await webResponse.arrayBuffer()));
|
|
115
|
+
response.statusCode = webResponse.status;
|
|
116
|
+
response.statusMessage = webResponse.statusText;
|
|
117
|
+
for (const [name, value] of webResponse.headers) response.setHeader(name, value);
|
|
118
|
+
const cookies = webResponse.headers.getSetCookie();
|
|
119
|
+
if (cookies.length > 0) response.setHeader("set-cookie", cookies);
|
|
120
|
+
response.end(Buffer.from(await webResponse.arrayBuffer()));
|
|
138
121
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
return Object.freeze(records
|
|
154
|
-
.map((record) => Object.freeze({ ...record, parentId: parentRouteId(record.id, ids) }))
|
|
155
|
-
.toSorted((left, right) => left.id.localeCompare(right.id)));
|
|
122
|
+
async function discoverRouteRecords(routesDirectory) {
|
|
123
|
+
let filenames;
|
|
124
|
+
try {
|
|
125
|
+
filenames = await readdir(routesDirectory, { recursive: true });
|
|
126
|
+
} catch (error) {
|
|
127
|
+
if (isMissingDirectory(error)) return [];
|
|
128
|
+
throw error;
|
|
129
|
+
}
|
|
130
|
+
const records = filenames.filter((filename) => ROUTE_FILE.test(filename) && !IGNORED_ROUTE_FILE.test(filename)).map((filename) => routeFileToRecord(filename, routesDirectory));
|
|
131
|
+
const ids = new Set(records.map((record) => record.id));
|
|
132
|
+
return Object.freeze(records.map((record) => Object.freeze({
|
|
133
|
+
...record,
|
|
134
|
+
parentId: parentRouteId(record.id, ids)
|
|
135
|
+
})).toSorted((left, right) => left.id.localeCompare(right.id)));
|
|
156
136
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
id,
|
|
169
|
-
parentId: null,
|
|
170
|
-
path: routeSegments.length === 0 ? '/' : `/${routeSegments.join('/')}`,
|
|
171
|
-
};
|
|
137
|
+
function routeFileToRecord(filename, routesDirectory) {
|
|
138
|
+
const normalizedFilename = normalizePath(filename);
|
|
139
|
+
const id = normalizedFilename.replace(ROUTE_FILE, "");
|
|
140
|
+
if (id.length === 0) throw new TypeError(`invalid route filename ${filename}`);
|
|
141
|
+
const routeSegments = id.split("/").filter((segment) => segment !== "__root" && segment !== "index" && !segment.startsWith("_")).map((segment) => segment === "$" ? "*" : segment.startsWith("$") ? `:${segment.slice(1)}` : segment);
|
|
142
|
+
return {
|
|
143
|
+
file: normalizePath(path.resolve(routesDirectory, normalizedFilename)),
|
|
144
|
+
id,
|
|
145
|
+
parentId: null,
|
|
146
|
+
path: routeSegments.length === 0 ? "/" : `/${routeSegments.join("/")}`
|
|
147
|
+
};
|
|
172
148
|
}
|
|
173
149
|
function parentRouteId(id, ids) {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
segments.pop();
|
|
184
|
-
}
|
|
185
|
-
return ids.has('__root') ? '__root' : null;
|
|
150
|
+
if (id === "__root") return null;
|
|
151
|
+
const segments = id.split("/");
|
|
152
|
+
if (segments.at(-1) === "index") segments.pop();
|
|
153
|
+
while (segments.length > 0) {
|
|
154
|
+
const candidate = segments.join("/");
|
|
155
|
+
if (candidate !== id && ids.has(candidate)) return candidate;
|
|
156
|
+
segments.pop();
|
|
157
|
+
}
|
|
158
|
+
return ids.has("__root") ? "__root" : null;
|
|
186
159
|
}
|
|
187
160
|
function generateRouteModule(records) {
|
|
188
|
-
|
|
189
|
-
.map((record) => `{ id: ${JSON.stringify(record.id)}, parentId: ${JSON.stringify(record.parentId)}, path: ${JSON.stringify(record.path)}, load: () => import(${JSON.stringify(record.file)}) }`)
|
|
190
|
-
.join(',\n ');
|
|
191
|
-
return `import { createRouteManifest } from '@vidact/start'\n\nexport const routeManifest = createRouteManifest([\n ${entries}\n])\n`;
|
|
161
|
+
return `import { createRouteManifest } from '@vidact/start'\n\nexport const routeManifest = createRouteManifest([\n ${records.map((record) => `{ id: ${JSON.stringify(record.id)}, parentId: ${JSON.stringify(record.parentId)}, path: ${JSON.stringify(record.path)}, load: () => import(${JSON.stringify(record.file)}) }`).join(",\n ")}\n])\n`;
|
|
192
162
|
}
|
|
193
163
|
function isRouteFile(routesDirectory, filename) {
|
|
194
|
-
|
|
195
|
-
|
|
164
|
+
const relative = path.relative(routesDirectory, filename);
|
|
165
|
+
return !relative.startsWith("..") && ROUTE_FILE.test(relative) && !IGNORED_ROUTE_FILE.test(relative);
|
|
196
166
|
}
|
|
197
167
|
function isMissingDirectory(error) {
|
|
198
|
-
|
|
168
|
+
return typeof error === "object" && error !== null && Reflect.get(error, "code") === "ENOENT";
|
|
199
169
|
}
|
|
170
|
+
//#endregion
|
|
171
|
+
export { discoverRouteRecords, routeFileToRecord, vidactStart };
|
|
172
|
+
|
|
200
173
|
//# sourceMappingURL=vite.js.map
|
package/dist/vite.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite.js","
|
|
1
|
+
{"version":3,"file":"vite.js","names":[],"sources":["../src/vite.ts"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vidact/start",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.5",
|
|
4
4
|
"description": "Full-stack application framework primitives for Vidact",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"full-stack",
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"CHANGELOG.md",
|
|
22
22
|
"dist",
|
|
23
23
|
"LICENSE",
|
|
24
|
-
"README.md"
|
|
24
|
+
"README.md",
|
|
25
|
+
"src"
|
|
25
26
|
],
|
|
26
27
|
"type": "module",
|
|
27
28
|
"sideEffects": false,
|
|
@@ -49,15 +50,15 @@
|
|
|
49
50
|
}
|
|
50
51
|
},
|
|
51
52
|
"publishConfig": {
|
|
52
|
-
"access": "public"
|
|
53
|
-
"provenance": true
|
|
53
|
+
"access": "public"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@vidact/runtime": "0.2.0-beta.
|
|
57
|
-
"@vidact/vite": "0.2.0-beta.
|
|
56
|
+
"@vidact/runtime": "0.2.0-beta.5",
|
|
57
|
+
"@vidact/vite": "0.2.0-beta.5"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
|
-
"@types/node": "
|
|
60
|
+
"@types/node": "24.13.3",
|
|
61
|
+
"tsdown": "0.22.14",
|
|
61
62
|
"typescript": "7.0.2",
|
|
62
63
|
"vite": "8.2.2",
|
|
63
64
|
"vitest": "4.1.11"
|
|
@@ -69,7 +70,7 @@
|
|
|
69
70
|
"node": ">=24"
|
|
70
71
|
},
|
|
71
72
|
"scripts": {
|
|
72
|
-
"build": "
|
|
73
|
+
"build": "tsdown",
|
|
73
74
|
"test": "vitest run",
|
|
74
75
|
"typecheck": "tsc -p tsconfig.json"
|
|
75
76
|
}
|