@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.
Files changed (57) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/dist/client.d.ts +24 -16
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +137 -165
  5. package/dist/client.js.map +1 -1
  6. package/dist/index-client.d.ts +5 -4
  7. package/dist/index-client.js +4 -4
  8. package/dist/index.d.ts +5 -4
  9. package/dist/index.js +4 -4
  10. package/dist/link-client.d.ts +6 -4
  11. package/dist/link-client.d.ts.map +1 -1
  12. package/dist/link-client.js +8 -4
  13. package/dist/link-client.js.map +1 -1
  14. package/dist/link-contract.d.ts +10 -7
  15. package/dist/link-contract.d.ts.map +1 -1
  16. package/dist/link-contract.js +11 -7
  17. package/dist/link-contract.js.map +1 -1
  18. package/dist/link.d.ts +6 -4
  19. package/dist/link.d.ts.map +1 -1
  20. package/dist/link.js +8 -4
  21. package/dist/link.js.map +1 -1
  22. package/dist/router.d.ts +57 -55
  23. package/dist/router.d.ts.map +1 -1
  24. package/dist/router.js +150 -157
  25. package/dist/router.js.map +1 -1
  26. package/dist/server.d.ts +18 -16
  27. package/dist/server.d.ts.map +1 -1
  28. package/dist/server.js +95 -99
  29. package/dist/server.js.map +1 -1
  30. package/dist/snapshot.d.ts +13 -10
  31. package/dist/snapshot.d.ts.map +1 -1
  32. package/dist/snapshot.js +19 -20
  33. package/dist/snapshot.js.map +1 -1
  34. package/dist/virtual.d.ts +3 -2
  35. package/dist/virtual.js +1 -2
  36. package/dist/vite.d.ts +18 -15
  37. package/dist/vite.d.ts.map +1 -1
  38. package/dist/vite.js +144 -171
  39. package/dist/vite.js.map +1 -1
  40. package/package.json +9 -8
  41. package/src/client.ts +272 -0
  42. package/src/index-client.ts +3 -0
  43. package/src/index.ts +3 -0
  44. package/src/link-client.ts +10 -0
  45. package/src/link-contract.ts +17 -0
  46. package/src/link.ts +10 -0
  47. package/src/router.ts +282 -0
  48. package/src/server.ts +211 -0
  49. package/src/snapshot.ts +40 -0
  50. package/src/virtual.ts +5 -0
  51. package/src/vite.ts +256 -0
  52. package/dist/index-client.d.ts.map +0 -1
  53. package/dist/index-client.js.map +0 -1
  54. package/dist/index.d.ts.map +0 -1
  55. package/dist/index.js.map +0 -1
  56. package/dist/virtual.d.ts.map +0 -1
  57. package/dist/virtual.js.map +0 -1
package/dist/server.d.ts CHANGED
@@ -1,19 +1,21 @@
1
- import { type RouteManifest, type StartComponent } from './router.js';
2
- export interface StartDocumentContext {
3
- readonly applicationHtml: string;
4
- readonly clientEntry: string | undefined;
5
- readonly rootId: string;
6
- readonly snapshot: string;
7
- readonly snapshotId: string;
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
- export interface StartHandlerOptions {
10
- readonly clientEntry?: string;
11
- readonly manifest: RouteManifest;
12
- readonly notFound?: (request: Request) => Response | Promise<Response>;
13
- readonly renderDocument?: (context: StartDocumentContext) => string | Promise<string>;
14
- readonly rootId?: string;
15
- readonly snapshotId?: string;
10
+ interface StartHandlerOptions {
11
+ readonly clientEntry?: string;
12
+ readonly manifest: RouteManifest;
13
+ readonly notFound?: (request: Request) => Response | Promise<Response>;
14
+ readonly renderDocument?: (context: StartDocumentContext) => string | Promise<string>;
15
+ readonly rootId?: string;
16
+ readonly snapshotId?: string;
16
17
  }
17
- export declare function createStartHandler(options: StartHandlerOptions): (request: Request) => Promise<Response>;
18
- export type { StartComponent };
18
+ declare function createStartHandler(options: StartHandlerOptions): (request: Request) => Promise<Response>;
19
+ //#endregion
20
+ export { type StartComponent, StartDocumentContext, StartHandlerOptions, createStartHandler };
19
21
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,OAAO,EAOL,KAAK,aAAa,EAElB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAA;AAWpB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAA;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACtE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACrF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,mBAAmB,GAC3B,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CA8EzC;AAmDD,YAAY,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"server.d.ts","names":[],"sources":["../src/server.ts"],"mappings":";;UAkCiB;WACN;WACA;WACA;WACA;WACA;;UAGM;WACN;WACA,UAAU;WACV,YAAY,SAAS,YAAY,WAAW,QAAQ;WACpD,kBAAkB,SAAS,kCAAkC;WAC7D;WACA;;iBAGK,mBACd,SAAS,uBACP,SAAS,YAAY,QAAQ"}
package/dist/server.js CHANGED
@@ -1,113 +1,109 @@
1
- import { renderToReadableStream } from '@vidact/runtime/framework/server';
2
- import { createElement } from '@vidact/runtime/server';
3
- import { composeRouteMatches, matchRoutes, resolveRouteMatches, routeLoaderData, runRouteLoaders, } from './router.js';
4
- import { encodeStartSnapshot, VIDACT_START_NAVIGATION_HEADER, VIDACT_START_PROTOCOL, VIDACT_START_SNAPSHOT_MEDIA_TYPE, } from './snapshot.js';
5
- const DEFAULT_ROOT_ID = 'vidact-start-root';
6
- const DEFAULT_SNAPSHOT_ID = 'vidact-start-snapshot';
7
- export function createStartHandler(options) {
8
- const rootId = options.rootId ?? DEFAULT_ROOT_ID;
9
- const snapshotId = options.snapshotId ?? DEFAULT_SNAPSHOT_ID;
10
- return async (request) => {
11
- const url = new URL(request.url);
12
- const matches = matchRoutes(options.manifest, url.pathname);
13
- if (matches.length === 0) {
14
- return options.notFound === undefined
15
- ? new Response('Not found', { status: 404 })
16
- : await options.notFound(request);
17
- }
18
- const resolved = await resolveRouteMatches(matches);
19
- const endpoint = endpointHandler(resolved, request.method);
20
- if (endpoint !== undefined) {
21
- const response = await endpoint({
22
- params: resolved.at(-1).params,
23
- request,
24
- });
25
- return request.method === 'HEAD'
26
- ? new Response(null, {
27
- status: response.status,
28
- statusText: response.statusText,
29
- headers: response.headers,
30
- })
31
- : response;
32
- }
33
- const canRender = resolved.some((match) => match.definition.options.component !== undefined);
34
- if ((request.method !== 'GET' && request.method !== 'HEAD') || !canRender) {
35
- const allow = allowedMethods(resolved, canRender);
36
- if (allow.length === 0) {
37
- return options.notFound === undefined
38
- ? new Response('Not found', { status: 404 })
39
- : await options.notFound(request);
40
- }
41
- return new Response('Method not allowed', {
42
- status: 405,
43
- headers: { allow: allow.join(', ') },
44
- });
45
- }
46
- const loaded = await runRouteLoaders(resolved, request);
47
- const snapshot = escapeScriptText(encodeStartSnapshot({
48
- protocol: VIDACT_START_PROTOCOL,
49
- pathname: `${url.pathname}${url.search}`,
50
- loaderData: routeLoaderData(loaded),
51
- }));
52
- if (request.headers.get(VIDACT_START_NAVIGATION_HEADER) === '1') {
53
- return new Response(request.method === 'HEAD' ? null : snapshot, {
54
- headers: { 'content-type': `${VIDACT_START_SNAPSHOT_MEDIA_TYPE}; charset=utf-8` },
55
- });
56
- }
57
- const application = composeRouteMatches(loaded, (component, props) => createElement(component, props), request.url);
58
- const stream = await renderToReadableStream(() => application, {
59
- identifierPrefix: 'start-',
60
- });
61
- const applicationHtml = await new Response(stream).text();
62
- const documentContext = {
63
- applicationHtml,
64
- clientEntry: options.clientEntry,
65
- rootId,
66
- snapshot,
67
- snapshotId,
68
- };
69
- const html = options.renderDocument === undefined
70
- ? defaultDocument(documentContext)
71
- : await options.renderDocument(documentContext);
72
- return new Response(request.method === 'HEAD' ? null : html, {
73
- headers: { 'content-type': 'text/html; charset=utf-8' },
74
- });
75
- };
1
+ import { composeRouteMatches, matchRoutes, resolveRouteMatches, routeLoaderData, runRouteLoaders } from "./router.js";
2
+ import { VIDACT_START_PROTOCOL, VIDACT_START_SNAPSHOT_MEDIA_TYPE, encodeStartSnapshot } from "./snapshot.js";
3
+ import { createElement } from "@vidact/runtime/server";
4
+ import { renderToReadableStream } from "@vidact/runtime/framework/server";
5
+ //#region src/server.ts
6
+ /**
7
+ * The client mounts the route tree under a compiled root of its own, and every compiled
8
+ * root claims a component marker range while hydrating. Rendering the tree inside a
9
+ * matching root component on the server keeps the two sides' component ranges aligned;
10
+ * without it each client component would claim the range of the *next* server one.
11
+ */
12
+ function StartApplication({ children }) {
13
+ return children;
14
+ }
15
+ const DEFAULT_ROOT_ID = "vidact-start-root";
16
+ const DEFAULT_SNAPSHOT_ID = "vidact-start-snapshot";
17
+ function createStartHandler(options) {
18
+ const rootId = options.rootId ?? DEFAULT_ROOT_ID;
19
+ const snapshotId = options.snapshotId ?? DEFAULT_SNAPSHOT_ID;
20
+ return async (request) => {
21
+ const url = new URL(request.url);
22
+ const matches = matchRoutes(options.manifest, url.pathname);
23
+ if (matches.length === 0) return options.notFound === void 0 ? new Response("Not found", { status: 404 }) : await options.notFound(request);
24
+ const resolved = await resolveRouteMatches(matches);
25
+ const endpoint = endpointHandler(resolved, request.method);
26
+ if (endpoint !== void 0) return responseForRequest(request, await endpoint({
27
+ params: resolved.at(-1).params,
28
+ request
29
+ }));
30
+ const canRender = resolved.some((match) => match.definition.options.component !== void 0);
31
+ if (request.method !== "GET" && request.method !== "HEAD" || !canRender) {
32
+ const allow = allowedMethods(resolved, canRender);
33
+ if (allow.length === 0) return options.notFound === void 0 ? new Response("Not found", { status: 404 }) : await options.notFound(request);
34
+ return new Response("Method not allowed", {
35
+ status: 405,
36
+ headers: { allow: allow.join(", ") }
37
+ });
38
+ }
39
+ let loaded;
40
+ try {
41
+ loaded = await runRouteLoaders(resolved, request);
42
+ } catch (error) {
43
+ if (isResponse(error)) return responseForRequest(request, error);
44
+ throw error;
45
+ }
46
+ const snapshot = escapeScriptText(encodeStartSnapshot({
47
+ protocol: VIDACT_START_PROTOCOL,
48
+ pathname: `${url.pathname}${url.search}`,
49
+ loaderData: routeLoaderData(loaded)
50
+ }));
51
+ if (request.headers.get("x-vidact-start-navigation") === "1") return new Response(request.method === "HEAD" ? null : snapshot, { headers: { "content-type": `${VIDACT_START_SNAPSHOT_MEDIA_TYPE}; charset=utf-8` } });
52
+ const application = composeRouteMatches(loaded, (component, props) => createElement(component, props), request.url);
53
+ const stream = await renderToReadableStream(() => createElement(StartApplication, { children: application }), { identifierPrefix: "start-" });
54
+ const documentContext = {
55
+ applicationHtml: await new Response(stream).text(),
56
+ clientEntry: options.clientEntry,
57
+ rootId,
58
+ snapshot,
59
+ snapshotId
60
+ };
61
+ const html = options.renderDocument === void 0 ? defaultDocument(documentContext) : await options.renderDocument(documentContext);
62
+ return new Response(request.method === "HEAD" ? null : html, { headers: { "content-type": "text/html; charset=utf-8" } });
63
+ };
64
+ }
65
+ function responseForRequest(request, response) {
66
+ return request.method === "HEAD" ? new Response(null, response) : response;
67
+ }
68
+ function isResponse(value) {
69
+ if (value instanceof Response) return true;
70
+ if (typeof value !== "object" || value === null || Object.prototype.hasOwnProperty.call(value, Symbol.toStringTag) || Object.prototype.toString.call(value) !== "[object Response]") return false;
71
+ try {
72
+ const candidate = value;
73
+ return typeof candidate.arrayBuffer === "function" && typeof candidate.clone === "function" && typeof candidate.headers?.get === "function" && Number.isInteger(candidate.status);
74
+ } catch {
75
+ return false;
76
+ }
76
77
  }
77
78
  function endpointHandler(matches, method) {
78
- const handlers = matches.at(-1)?.definition.options.server?.handlers;
79
- return handlers?.[method.toUpperCase()] ?? (method === 'HEAD' ? handlers?.GET : undefined);
79
+ const handlers = matches.at(-1)?.definition.options.server?.handlers;
80
+ return handlers?.[method.toUpperCase()] ?? (method === "HEAD" ? handlers?.GET : void 0);
80
81
  }
81
82
  function allowedMethods(matches, canRender) {
82
- const methods = new Set();
83
- if (canRender) {
84
- methods.add('GET');
85
- methods.add('HEAD');
86
- }
87
- const handlers = matches.at(-1)?.definition.options.server?.handlers;
88
- for (const method of Object.keys(handlers ?? {}))
89
- methods.add(method.toUpperCase());
90
- if (methods.has('GET'))
91
- methods.add('HEAD');
92
- return [...methods].toSorted((left, right) => methodRank(left) - methodRank(right) || left.localeCompare(right));
83
+ const methods = /* @__PURE__ */ new Set();
84
+ if (canRender) {
85
+ methods.add("GET");
86
+ methods.add("HEAD");
87
+ }
88
+ const handlers = matches.at(-1)?.definition.options.server?.handlers;
89
+ for (const method of Object.keys(handlers ?? {})) methods.add(method.toUpperCase());
90
+ if (methods.has("GET")) methods.add("HEAD");
91
+ return [...methods].toSorted((left, right) => methodRank(left) - methodRank(right) || left.localeCompare(right));
93
92
  }
94
93
  function methodRank(method) {
95
- return method === 'GET' ? 0 : method === 'HEAD' ? 1 : 2;
94
+ return method === "GET" ? 0 : method === "HEAD" ? 1 : 2;
96
95
  }
97
96
  function defaultDocument(context) {
98
- const clientScript = context.clientEntry === undefined
99
- ? ''
100
- : `<script type="module" src="${escapeAttribute(context.clientEntry)}"></script>`;
101
- return `<!doctype html><html><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"></head><body><div id="${escapeAttribute(context.rootId)}">${context.applicationHtml}</div><script id="${escapeAttribute(context.snapshotId)}" type="application/json">${context.snapshot}</script>${clientScript}</body></html>`;
97
+ const clientScript = context.clientEntry === void 0 ? "" : `<script type="module" src="${escapeAttribute(context.clientEntry)}"><\/script>`;
98
+ return `<!doctype html><html><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"></head><body><div id="${escapeAttribute(context.rootId)}">${context.applicationHtml}</div><script id="${escapeAttribute(context.snapshotId)}" type="application/json">${context.snapshot}<\/script>${clientScript}</body></html>`;
102
99
  }
103
100
  function escapeAttribute(value) {
104
- return value
105
- .replaceAll('&', '&amp;')
106
- .replaceAll('"', '&quot;')
107
- .replaceAll('<', '&lt;')
108
- .replaceAll('>', '&gt;');
101
+ return value.replaceAll("&", "&amp;").replaceAll("\"", "&quot;").replaceAll("<", "&lt;").replaceAll(">", "&gt;");
109
102
  }
110
103
  function escapeScriptText(value) {
111
- return value.replaceAll('&', '\\u0026').replaceAll('<', '\\u003c').replaceAll('>', '\\u003e');
104
+ return value.replaceAll("&", "\\u0026").replaceAll("<", "\\u003c").replaceAll(">", "\\u003e");
112
105
  }
106
+ //#endregion
107
+ export { createStartHandler };
108
+
113
109
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","names":[],"sources":["../src/server.ts"],"mappings":"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"}
@@ -1,12 +1,15 @@
1
- import { type FrameworkValue } from '@vidact/runtime/framework/protocol';
2
- export declare const VIDACT_START_PROTOCOL = "vidact-start-v1";
3
- export declare const VIDACT_START_NAVIGATION_HEADER = "x-vidact-start-navigation";
4
- export declare const VIDACT_START_SNAPSHOT_MEDIA_TYPE = "application/x-vidact-start+json";
5
- export interface StartSnapshot {
6
- readonly protocol: typeof VIDACT_START_PROTOCOL;
7
- readonly loaderData: Readonly<Record<string, FrameworkValue>>;
8
- readonly pathname: string;
1
+ import { FrameworkValue } from "@vidact/runtime/framework/protocol";
2
+ //#region src/snapshot.d.ts
3
+ declare const VIDACT_START_PROTOCOL = "vidact-start-v1";
4
+ declare const VIDACT_START_NAVIGATION_HEADER = "x-vidact-start-navigation";
5
+ declare const VIDACT_START_SNAPSHOT_MEDIA_TYPE = "application/x-vidact-start+json";
6
+ interface StartSnapshot {
7
+ readonly protocol: typeof VIDACT_START_PROTOCOL;
8
+ readonly loaderData: Readonly<Record<string, FrameworkValue>>;
9
+ readonly pathname: string;
9
10
  }
10
- export declare function encodeStartSnapshot(snapshot: StartSnapshot): string;
11
- export declare function decodeStartSnapshot(payload: string): StartSnapshot;
11
+ declare function encodeStartSnapshot(snapshot: StartSnapshot): string;
12
+ declare function decodeStartSnapshot(payload: string): StartSnapshot;
13
+ //#endregion
14
+ export { StartSnapshot, VIDACT_START_NAVIGATION_HEADER, VIDACT_START_PROTOCOL, VIDACT_START_SNAPSHOT_MEDIA_TYPE, decodeStartSnapshot, encodeStartSnapshot };
12
15
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,oCAAoC,CAAA;AAE3C,eAAO,MAAM,qBAAqB,oBAAoB,CAAA;AACtD,eAAO,MAAM,8BAA8B,8BAA8B,CAAA;AACzE,eAAO,MAAM,gCAAgC,oCAAoC,CAAA;AAEjF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,qBAAqB,CAAA;IAC/C,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAA;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAEnE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAelE"}
1
+ {"version":3,"file":"snapshot.d.ts","names":[],"sources":["../src/snapshot.ts"],"mappings":";;cAMa;cACA;cACA;UAEI;WACN,iBAAiB;WACjB,YAAY,SAAS,eAAe;WACpC;;iBAGK,oBAAoB,UAAU;iBAI9B,oBAAoB,kBAAkB"}
package/dist/snapshot.js CHANGED
@@ -1,25 +1,24 @@
1
- import { decodeFrameworkValue, encodeFrameworkValue, } from '@vidact/runtime/framework/protocol';
2
- export const VIDACT_START_PROTOCOL = 'vidact-start-v1';
3
- export const VIDACT_START_NAVIGATION_HEADER = 'x-vidact-start-navigation';
4
- export const VIDACT_START_SNAPSHOT_MEDIA_TYPE = 'application/x-vidact-start+json';
5
- export function encodeStartSnapshot(snapshot) {
6
- return encodeFrameworkValue(snapshot);
1
+ import { decodeFrameworkValue, encodeFrameworkValue } from "@vidact/runtime/framework/protocol";
2
+ //#region src/snapshot.ts
3
+ const VIDACT_START_PROTOCOL = "vidact-start-v1";
4
+ const VIDACT_START_NAVIGATION_HEADER = "x-vidact-start-navigation";
5
+ const VIDACT_START_SNAPSHOT_MEDIA_TYPE = "application/x-vidact-start+json";
6
+ function encodeStartSnapshot(snapshot) {
7
+ return encodeFrameworkValue(snapshot);
7
8
  }
8
- export function decodeStartSnapshot(payload) {
9
- const value = decodeFrameworkValue(payload);
10
- if (!isRecord(value) ||
11
- value.protocol !== VIDACT_START_PROTOCOL ||
12
- typeof value.pathname !== 'string' ||
13
- !isRecord(value.loaderData)) {
14
- throw new TypeError('invalid Vidact Start snapshot');
15
- }
16
- return {
17
- protocol: VIDACT_START_PROTOCOL,
18
- pathname: value.pathname,
19
- loaderData: value.loaderData,
20
- };
9
+ function decodeStartSnapshot(payload) {
10
+ const value = decodeFrameworkValue(payload);
11
+ if (!isRecord(value) || value.protocol !== "vidact-start-v1" || typeof value.pathname !== "string" || !isRecord(value.loaderData)) throw new TypeError("invalid Vidact Start snapshot");
12
+ return {
13
+ protocol: VIDACT_START_PROTOCOL,
14
+ pathname: value.pathname,
15
+ loaderData: value.loaderData
16
+ };
21
17
  }
22
18
  function isRecord(value) {
23
- return typeof value === 'object' && value !== null && !Array.isArray(value);
19
+ return typeof value === "object" && value !== null && !Array.isArray(value);
24
20
  }
21
+ //#endregion
22
+ export { VIDACT_START_NAVIGATION_HEADER, VIDACT_START_PROTOCOL, VIDACT_START_SNAPSHOT_MEDIA_TYPE, decodeStartSnapshot, encodeStartSnapshot };
23
+
25
24
  //# sourceMappingURL=snapshot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,oCAAoC,CAAA;AAE3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAA;AACtD,MAAM,CAAC,MAAM,8BAA8B,GAAG,2BAA2B,CAAA;AACzE,MAAM,CAAC,MAAM,gCAAgC,GAAG,iCAAiC,CAAA;AAQjF,MAAM,UAAU,mBAAmB,CAAC,QAAuB;IACzD,OAAO,oBAAoB,CAAC,QAAqC,CAAC,CAAA;AACpE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC3C,IACE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChB,KAAK,CAAC,QAAQ,KAAK,qBAAqB;QACxC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAClC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAC3B,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAA;IACtD,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,qBAAqB;QAC/B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAsD;KACzE,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC"}
1
+ {"version":3,"file":"snapshot.js","names":[],"sources":["../src/snapshot.ts"],"mappings":";;AAMA,MAAa,wBAAwB;AACrC,MAAa,iCAAiC;AAC9C,MAAa,mCAAmC;AAQhD,SAAgB,oBAAoB,UAAiC;CACnE,OAAO,qBAAqB,QAAqC;AACnE;AAEA,SAAgB,oBAAoB,SAAgC;CAClE,MAAM,QAAQ,qBAAqB,OAAO;CAC1C,IACE,CAAC,SAAS,KAAK,KACf,MAAM,aAAA,qBACN,OAAO,MAAM,aAAa,YAC1B,CAAC,SAAS,MAAM,UAAU,GAE1B,MAAM,IAAI,UAAU,+BAA+B;CAErD,OAAO;EACL,UAAU;EACV,UAAU,MAAM;EAChB,YAAY,MAAM;CACpB;AACF;AAEA,SAAS,SAAS,OAAkD;CAClE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK;AAC5E"}
package/dist/virtual.d.ts CHANGED
@@ -1,4 +1,5 @@
1
+ // Shipped verbatim as dist/virtual.d.ts: an ambient declaration cannot be bundled
2
+ // without becoming a module augmentation, so it names the built router file.
1
3
  declare module 'virtual:vidact-start/routes' {
2
- const routeManifest: import('./router.js').RouteManifest;
4
+ export const routeManifest: import('./router.js').RouteManifest
3
5
  }
4
- //# sourceMappingURL=virtual.d.ts.map
package/dist/virtual.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";
2
- //# sourceMappingURL=virtual.js.map
1
+ export {};
package/dist/vite.d.ts CHANGED
@@ -1,18 +1,21 @@
1
- import { type VidactPluginOptions } from '@vidact/vite';
2
- import { type Plugin } from 'vite';
3
- export interface VidactStartOptions {
4
- readonly compiler?: Omit<VidactPluginOptions, 'target'>;
5
- readonly routesDirectory?: string;
6
- readonly serverEntry?: string | false;
7
- readonly serverExport?: string;
1
+ import { VidactPluginOptions } from "@vidact/vite";
2
+ import { Plugin } from "vite";
3
+ //#region src/vite.d.ts
4
+ interface VidactStartOptions {
5
+ readonly compiler?: Omit<VidactPluginOptions, 'target'>;
6
+ readonly routesDirectory?: string;
7
+ readonly serverEntry?: string | false;
8
+ readonly serverExport?: string;
8
9
  }
9
- export interface GeneratedRouteRecord {
10
- readonly file: string;
11
- readonly id: string;
12
- readonly parentId: string | null;
13
- readonly path: string;
10
+ interface GeneratedRouteRecord {
11
+ readonly file: string;
12
+ readonly id: string;
13
+ readonly parentId: string | null;
14
+ readonly path: string;
14
15
  }
15
- export declare function vidactStart(options?: VidactStartOptions): Plugin[];
16
- export declare function discoverRouteRecords(routesDirectory: string): Promise<readonly GeneratedRouteRecord[]>;
17
- export declare function routeFileToRecord(filename: string, routesDirectory: string): GeneratedRouteRecord;
16
+ declare function vidactStart(options?: VidactStartOptions): Plugin[];
17
+ declare function discoverRouteRecords(routesDirectory: string): Promise<readonly GeneratedRouteRecord[]>;
18
+ declare function routeFileToRecord(filename: string, routesDirectory: string): GeneratedRouteRecord;
19
+ //#endregion
20
+ export { GeneratedRouteRecord, VidactStartOptions, discoverRouteRecords, routeFileToRecord, vidactStart };
18
21
  //# sourceMappingURL=vite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAC/D,OAAO,EAGL,KAAK,MAAM,EAGZ,MAAM,MAAM,CAAA;AAOb,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IACvD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,EAAE,CAmBtE;AAsID,wBAAsB,oBAAoB,CACxC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAiB1C;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,oBAAoB,CAgBjG"}
1
+ {"version":3,"file":"vite.d.ts","names":[],"sources":["../src/vite.ts"],"mappings":";;;UAkBiB;WACN,WAAW,KAAK;WAChB;WACA;WACA;;UAGM;WACN;WACA;WACA;WACA;;iBAGK,YAAY,UAAS,qBAA0B;iBAyJzC,qBACpB,0BACC,iBAAiB;iBAmBJ,kBAAkB,kBAAkB,0BAA0B"}