@vidact/start 0.2.0-beta.0 → 0.2.0-beta.10
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 +109 -0
- package/README.md +26 -5
- package/dist/client.d.ts +29 -16
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +352 -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 +10 -4
- package/dist/link-client.js.map +1 -1
- package/dist/link-contract.d.ts +12 -7
- package/dist/link-contract.d.ts.map +1 -1
- package/dist/link-contract.js +12 -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 +29 -16
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +159 -100
- 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 +577 -0
- package/src/index-client.ts +3 -0
- package/src/index.ts +3 -0
- package/src/link-client.ts +11 -0
- package/src/link-contract.ts +20 -0
- package/src/link.ts +10 -0
- package/src/router.ts +282 -0
- package/src/server.ts +295 -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/router.js
CHANGED
|
@@ -1,172 +1,165 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
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
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
|
|
1
|
+
//#region src/router.ts
|
|
2
|
+
const FILE_ROUTE = Symbol("Vidact.Start.FileRoute");
|
|
3
|
+
function defineFileRoute(options) {
|
|
4
|
+
return Object.freeze({
|
|
5
|
+
[FILE_ROUTE]: true,
|
|
6
|
+
options: Object.freeze({ ...options })
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
function isFileRouteDefinition(value) {
|
|
10
|
+
return typeof value === "object" && value !== null && FILE_ROUTE in value;
|
|
11
|
+
}
|
|
12
|
+
function createRouteManifest(entries) {
|
|
13
|
+
const byId = /* @__PURE__ */ new Map();
|
|
14
|
+
for (const entry of entries) {
|
|
15
|
+
if (entry.id.length === 0) throw new TypeError("route id must be non-empty");
|
|
16
|
+
if (!entry.path.startsWith("/")) throw new TypeError(`route ${entry.id} path must start with /`);
|
|
17
|
+
if (byId.has(entry.id)) throw new TypeError(`duplicate route id ${entry.id}`);
|
|
18
|
+
byId.set(entry.id, Object.freeze({ ...entry }));
|
|
19
|
+
}
|
|
20
|
+
for (const entry of byId.values()) {
|
|
21
|
+
if (entry.parentId !== null && !byId.has(entry.parentId)) throw new TypeError(`route ${entry.id} has unknown parent ${entry.parentId}`);
|
|
22
|
+
assertAcyclicParentChain(entry, byId);
|
|
23
|
+
}
|
|
24
|
+
const frozenEntries = Object.freeze([...byId.values()]);
|
|
25
|
+
return Object.freeze({
|
|
26
|
+
entries: frozenEntries,
|
|
27
|
+
byId
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
function matchRoutes(manifest, pathname) {
|
|
31
|
+
const normalized = normalizePathname(pathname);
|
|
32
|
+
let selected;
|
|
33
|
+
for (const entry of manifest.entries) {
|
|
34
|
+
const match = matchPath(entry.path, normalized);
|
|
35
|
+
if (match === void 0) continue;
|
|
36
|
+
const score = routeScore(entry, manifest);
|
|
37
|
+
if (selected === void 0 || score > selected.score) selected = {
|
|
38
|
+
entry,
|
|
39
|
+
params: match,
|
|
40
|
+
score
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
if (selected === void 0) return [];
|
|
44
|
+
const chain = [];
|
|
45
|
+
let entry = selected.entry;
|
|
46
|
+
while (entry !== void 0) {
|
|
47
|
+
chain.push(entry);
|
|
48
|
+
entry = entry.parentId === null ? void 0 : manifest.byId.get(entry.parentId);
|
|
49
|
+
}
|
|
50
|
+
return Object.freeze(chain.toReversed().map((matchedEntry) => Object.freeze({
|
|
51
|
+
entry: matchedEntry,
|
|
52
|
+
params: Object.freeze({ ...selected.params })
|
|
53
|
+
})));
|
|
54
|
+
}
|
|
55
|
+
async function loadRouteMatches(matches, request, suppliedData = {}) {
|
|
56
|
+
return runRouteLoaders(await resolveRouteMatches(matches), request, suppliedData);
|
|
57
|
+
}
|
|
58
|
+
async function resolveRouteMatches(matches) {
|
|
59
|
+
return Object.freeze(await Promise.all(matches.map(async (match) => {
|
|
60
|
+
const module = await match.entry.load();
|
|
61
|
+
return Object.freeze({
|
|
62
|
+
...match,
|
|
63
|
+
definition: readRouteDefinition(match.entry.id, module)
|
|
64
|
+
});
|
|
65
|
+
})));
|
|
66
|
+
}
|
|
67
|
+
async function runRouteLoaders(matches, request, suppliedData = {}) {
|
|
68
|
+
const loaded = [];
|
|
69
|
+
const parentData = { ...suppliedData };
|
|
70
|
+
for (const match of matches) {
|
|
71
|
+
const loaderData = Object.hasOwn(suppliedData, match.entry.id) ? suppliedData[match.entry.id] : match.definition.options.loader === void 0 ? void 0 : await match.definition.options.loader({
|
|
72
|
+
parentData: Object.freeze({ ...parentData }),
|
|
73
|
+
params: match.params,
|
|
74
|
+
request
|
|
75
|
+
});
|
|
76
|
+
parentData[match.entry.id] = loaderData;
|
|
77
|
+
loaded.push(Object.freeze({
|
|
78
|
+
...match,
|
|
79
|
+
loaderData
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
return Object.freeze(loaded);
|
|
83
|
+
}
|
|
84
|
+
function composeRouteMatches(matches, createElement, requestUrl) {
|
|
85
|
+
let children;
|
|
86
|
+
for (let index = matches.length - 1; index >= 0; index -= 1) {
|
|
87
|
+
const match = matches[index];
|
|
88
|
+
const component = match.definition.options.component;
|
|
89
|
+
if (component === void 0) continue;
|
|
90
|
+
children = createElement(component, {
|
|
91
|
+
children,
|
|
92
|
+
loaderData: match.loaderData,
|
|
93
|
+
params: match.params,
|
|
94
|
+
requestUrl
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
return children;
|
|
98
|
+
}
|
|
99
|
+
function routeLoaderData(matches) {
|
|
100
|
+
return Object.freeze(Object.fromEntries(matches.map((match) => [match.entry.id, match.loaderData])));
|
|
101
101
|
}
|
|
102
102
|
function readRouteDefinition(id, module) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
return definition;
|
|
103
|
+
const definition = module.Route ?? module.default;
|
|
104
|
+
if (!isFileRouteDefinition(definition)) throw new TypeError(`route module ${id} must export a Route created by defineFileRoute`);
|
|
105
|
+
return definition;
|
|
108
106
|
}
|
|
109
107
|
function matchPath(pattern, pathname) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
else if (segment !== value)
|
|
130
|
-
return undefined;
|
|
131
|
-
pathIndex += 1;
|
|
132
|
-
}
|
|
133
|
-
return pathIndex === pathSegments.length ? Object.freeze(parameters) : undefined;
|
|
108
|
+
if (pattern === "/") return pathname === "/" ? Object.freeze({}) : void 0;
|
|
109
|
+
const patternSegments = segments(pattern);
|
|
110
|
+
const pathSegments = segments(pathname);
|
|
111
|
+
const parameters = {};
|
|
112
|
+
let pathIndex = 0;
|
|
113
|
+
for (const segment of patternSegments) {
|
|
114
|
+
if (segment === "*") {
|
|
115
|
+
if (pathIndex >= pathSegments.length) return void 0;
|
|
116
|
+
parameters["*"] = decodeSegment(pathSegments.slice(pathIndex).join("/"));
|
|
117
|
+
pathIndex = pathSegments.length;
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
const value = pathSegments[pathIndex];
|
|
121
|
+
if (value === void 0) return void 0;
|
|
122
|
+
if (segment.startsWith(":")) parameters[segment.slice(1)] = decodeSegment(value);
|
|
123
|
+
else if (segment !== value) return void 0;
|
|
124
|
+
pathIndex += 1;
|
|
125
|
+
}
|
|
126
|
+
return pathIndex === pathSegments.length ? Object.freeze(parameters) : void 0;
|
|
134
127
|
}
|
|
135
128
|
function normalizePathname(pathname) {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
return path.length > 1 ? path.replace(/\/+$/u, '') : '/';
|
|
129
|
+
const path = pathname.split(/[?#]/u, 1)[0] ?? "/";
|
|
130
|
+
if (!path.startsWith("/")) throw new TypeError("route pathname must start with /");
|
|
131
|
+
return path.length > 1 ? path.replace(/\/+$/u, "") : "/";
|
|
140
132
|
}
|
|
141
133
|
function segments(pathname) {
|
|
142
|
-
|
|
134
|
+
return pathname.split("/").filter(Boolean);
|
|
143
135
|
}
|
|
144
136
|
function decodeSegment(value) {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
}
|
|
137
|
+
try {
|
|
138
|
+
return decodeURIComponent(value);
|
|
139
|
+
} catch {
|
|
140
|
+
throw new TypeError(`invalid encoded route segment ${value}`);
|
|
141
|
+
}
|
|
151
142
|
}
|
|
152
143
|
function routeScore(entry, manifest) {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
144
|
+
const specificity = segments(entry.path).reduce((score, segment) => score + (segment === "*" ? 1 : segment.startsWith(":") ? 10 : 100), 0);
|
|
145
|
+
let depth = 0;
|
|
146
|
+
let current = entry;
|
|
147
|
+
while (current !== void 0) {
|
|
148
|
+
depth += 1;
|
|
149
|
+
current = current.parentId === null ? void 0 : manifest.byId.get(current.parentId);
|
|
150
|
+
}
|
|
151
|
+
return specificity * 1e3 + depth;
|
|
161
152
|
}
|
|
162
153
|
function assertAcyclicParentChain(entry, byId) {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
154
|
+
const visited = /* @__PURE__ */ new Set([entry.id]);
|
|
155
|
+
let parentId = entry.parentId;
|
|
156
|
+
while (parentId !== null) {
|
|
157
|
+
if (visited.has(parentId)) throw new TypeError(`route ${entry.id} has a cyclic parent chain`);
|
|
158
|
+
visited.add(parentId);
|
|
159
|
+
parentId = byId.get(parentId)?.parentId ?? null;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
//#endregion
|
|
163
|
+
export { composeRouteMatches, createRouteManifest, defineFileRoute, isFileRouteDefinition, loadRouteMatches, matchRoutes, resolveRouteMatches, routeLoaderData, runRouteLoaders };
|
|
164
|
+
|
|
172
165
|
//# sourceMappingURL=router.js.map
|
package/dist/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","
|
|
1
|
+
{"version":3,"file":"router.js","names":[],"sources":["../src/router.ts"],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,19 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { RouteManifest, StartComponent } from "./router.js";
|
|
2
|
+
//#region src/server.d.ts
|
|
3
|
+
interface StartDocumentContext {
|
|
4
|
+
readonly applicationHtml: string;
|
|
5
|
+
readonly clientEntry: string | undefined;
|
|
6
|
+
readonly rootId: string;
|
|
7
|
+
readonly snapshot: string;
|
|
8
|
+
readonly snapshotId: string;
|
|
8
9
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
readonly rootId?: string;
|
|
15
|
-
readonly snapshotId?: string;
|
|
10
|
+
interface StartDocumentShellContext {
|
|
11
|
+
readonly clientEntry: string | undefined;
|
|
12
|
+
readonly rootId: string;
|
|
13
|
+
readonly snapshot: string;
|
|
14
|
+
readonly snapshotId: string;
|
|
16
15
|
}
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
interface StartDocumentShell {
|
|
17
|
+
readonly afterApplication: string;
|
|
18
|
+
readonly beforeApplication: string;
|
|
19
|
+
}
|
|
20
|
+
interface StartHandlerOptions {
|
|
21
|
+
readonly clientEntry?: string;
|
|
22
|
+
readonly manifest: RouteManifest;
|
|
23
|
+
readonly notFound?: (request: Request) => Response | Promise<Response>;
|
|
24
|
+
readonly renderDocument?: (context: StartDocumentContext) => string | Promise<string>;
|
|
25
|
+
readonly renderDocumentShell?: (context: StartDocumentShellContext) => StartDocumentShell | Promise<StartDocumentShell>;
|
|
26
|
+
readonly rootId?: string;
|
|
27
|
+
readonly snapshotId?: string;
|
|
28
|
+
}
|
|
29
|
+
declare function createStartHandler(options: StartHandlerOptions): (request: Request) => Promise<Response>;
|
|
30
|
+
//#endregion
|
|
31
|
+
export { type StartComponent, StartDocumentContext, StartDocumentShell, StartDocumentShellContext, StartHandlerOptions, createStartHandler };
|
|
19
32
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","
|
|
1
|
+
{"version":3,"file":"server.d.ts","names":[],"sources":["../src/server.ts"],"mappings":";;UAkCiB;WACN;WACA;WACA;WACA;WACA;;UAGM;WACN;WACA;WACA;WACA;;UAGM;WACN;WACA;;UAGM;WACN;WACA,UAAU;WACV,YAAY,SAAS,YAAY,WAAW,QAAQ;WACpD,kBAAkB,SAAS,kCAAkC;WAC7D,uBACP,SAAS,8BACN,qBAAqB,QAAQ;WACzB;WACA;;iBAGK,mBACd,SAAS,uBACP,SAAS,YAAY,QAAQ"}
|