@reckona/mreact-router 0.0.1

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 (139) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +101 -0
  3. package/dist/actions.d.ts +43 -0
  4. package/dist/actions.d.ts.map +1 -0
  5. package/dist/actions.js +577 -0
  6. package/dist/actions.js.map +1 -0
  7. package/dist/adapters/aws-lambda.d.ts +45 -0
  8. package/dist/adapters/aws-lambda.d.ts.map +1 -0
  9. package/dist/adapters/aws-lambda.js +168 -0
  10. package/dist/adapters/aws-lambda.js.map +1 -0
  11. package/dist/adapters/cloudflare.d.ts +94 -0
  12. package/dist/adapters/cloudflare.d.ts.map +1 -0
  13. package/dist/adapters/cloudflare.js +390 -0
  14. package/dist/adapters/cloudflare.js.map +1 -0
  15. package/dist/adapters/devtools.d.ts +4 -0
  16. package/dist/adapters/devtools.d.ts.map +1 -0
  17. package/dist/adapters/devtools.js +5 -0
  18. package/dist/adapters/devtools.js.map +1 -0
  19. package/dist/adapters/edge.d.ts +9 -0
  20. package/dist/adapters/edge.d.ts.map +1 -0
  21. package/dist/adapters/edge.js +53 -0
  22. package/dist/adapters/edge.js.map +1 -0
  23. package/dist/adapters/node.d.ts +26 -0
  24. package/dist/adapters/node.d.ts.map +1 -0
  25. package/dist/adapters/node.js +64 -0
  26. package/dist/adapters/node.js.map +1 -0
  27. package/dist/adapters/static.d.ts +10 -0
  28. package/dist/adapters/static.d.ts.map +1 -0
  29. package/dist/adapters/static.js +34 -0
  30. package/dist/adapters/static.js.map +1 -0
  31. package/dist/assets.d.ts +18 -0
  32. package/dist/assets.d.ts.map +1 -0
  33. package/dist/assets.js +67 -0
  34. package/dist/assets.js.map +1 -0
  35. package/dist/build.d.ts +36 -0
  36. package/dist/build.d.ts.map +1 -0
  37. package/dist/build.js +322 -0
  38. package/dist/build.js.map +1 -0
  39. package/dist/cache.d.ts +54 -0
  40. package/dist/cache.d.ts.map +1 -0
  41. package/dist/cache.js +221 -0
  42. package/dist/cache.js.map +1 -0
  43. package/dist/cli.d.ts +3 -0
  44. package/dist/cli.d.ts.map +1 -0
  45. package/dist/cli.js +37 -0
  46. package/dist/cli.js.map +1 -0
  47. package/dist/client.d.ts +105 -0
  48. package/dist/client.d.ts.map +1 -0
  49. package/dist/client.js +1268 -0
  50. package/dist/client.js.map +1 -0
  51. package/dist/config.d.ts +27 -0
  52. package/dist/config.d.ts.map +1 -0
  53. package/dist/config.js +44 -0
  54. package/dist/config.js.map +1 -0
  55. package/dist/cookies.d.ts +14 -0
  56. package/dist/cookies.d.ts.map +1 -0
  57. package/dist/cookies.js +69 -0
  58. package/dist/cookies.js.map +1 -0
  59. package/dist/csp.d.ts +6 -0
  60. package/dist/csp.d.ts.map +1 -0
  61. package/dist/csp.js +70 -0
  62. package/dist/csp.js.map +1 -0
  63. package/dist/dev-server.d.ts +16 -0
  64. package/dist/dev-server.d.ts.map +1 -0
  65. package/dist/dev-server.js +103 -0
  66. package/dist/dev-server.js.map +1 -0
  67. package/dist/http.d.ts +23 -0
  68. package/dist/http.d.ts.map +1 -0
  69. package/dist/http.js +106 -0
  70. package/dist/http.js.map +1 -0
  71. package/dist/i18n.d.ts +15 -0
  72. package/dist/i18n.d.ts.map +1 -0
  73. package/dist/i18n.js +61 -0
  74. package/dist/i18n.js.map +1 -0
  75. package/dist/import-policy.d.ts +30 -0
  76. package/dist/import-policy.d.ts.map +1 -0
  77. package/dist/import-policy.js +105 -0
  78. package/dist/import-policy.js.map +1 -0
  79. package/dist/index.d.ts +60 -0
  80. package/dist/index.d.ts.map +1 -0
  81. package/dist/index.js +34 -0
  82. package/dist/index.js.map +1 -0
  83. package/dist/logger.d.ts +47 -0
  84. package/dist/logger.d.ts.map +1 -0
  85. package/dist/logger.js +60 -0
  86. package/dist/logger.js.map +1 -0
  87. package/dist/module-runner.d.ts +9 -0
  88. package/dist/module-runner.d.ts.map +1 -0
  89. package/dist/module-runner.js +112 -0
  90. package/dist/module-runner.js.map +1 -0
  91. package/dist/native-escape.d.ts +2 -0
  92. package/dist/native-escape.d.ts.map +1 -0
  93. package/dist/native-escape.js +43 -0
  94. package/dist/native-escape.js.map +1 -0
  95. package/dist/native-route-matcher.d.ts +5 -0
  96. package/dist/native-route-matcher.d.ts.map +1 -0
  97. package/dist/native-route-matcher.js +91 -0
  98. package/dist/native-route-matcher.js.map +1 -0
  99. package/dist/navigation.d.ts +25 -0
  100. package/dist/navigation.d.ts.map +1 -0
  101. package/dist/navigation.js +125 -0
  102. package/dist/navigation.js.map +1 -0
  103. package/dist/prerender-store.d.ts +37 -0
  104. package/dist/prerender-store.d.ts.map +1 -0
  105. package/dist/prerender-store.js +158 -0
  106. package/dist/prerender-store.js.map +1 -0
  107. package/dist/render.d.ts +26 -0
  108. package/dist/render.d.ts.map +1 -0
  109. package/dist/render.js +1688 -0
  110. package/dist/render.js.map +1 -0
  111. package/dist/route-path.d.ts +2 -0
  112. package/dist/route-path.d.ts.map +1 -0
  113. package/dist/route-path.js +5 -0
  114. package/dist/route-path.js.map +1 -0
  115. package/dist/route-source.d.ts +9 -0
  116. package/dist/route-source.d.ts.map +1 -0
  117. package/dist/route-source.js +44 -0
  118. package/dist/route-source.js.map +1 -0
  119. package/dist/routes.d.ts +38 -0
  120. package/dist/routes.d.ts.map +1 -0
  121. package/dist/routes.js +168 -0
  122. package/dist/routes.js.map +1 -0
  123. package/dist/serve.d.ts +63 -0
  124. package/dist/serve.d.ts.map +1 -0
  125. package/dist/serve.js +445 -0
  126. package/dist/serve.js.map +1 -0
  127. package/dist/session.d.ts +25 -0
  128. package/dist/session.d.ts.map +1 -0
  129. package/dist/session.js +104 -0
  130. package/dist/session.js.map +1 -0
  131. package/dist/vite-config.d.ts +8 -0
  132. package/dist/vite-config.d.ts.map +1 -0
  133. package/dist/vite-config.js +17 -0
  134. package/dist/vite-config.js.map +1 -0
  135. package/dist/vite.d.ts +25 -0
  136. package/dist/vite.d.ts.map +1 -0
  137. package/dist/vite.js +150 -0
  138. package/dist/vite.js.map +1 -0
  139. package/package.json +91 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudflare.js","sourceRoot":"","sources":["../../src/adapters/cloudflare.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function emitRouterDevtoolsEvent(event: {
2
+ type: string;
3
+ } & Record<string, unknown>): void;
4
+ //# sourceMappingURL=devtools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../src/adapters/devtools.ts"],"names":[],"mappings":"AAEA,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAE/F"}
@@ -0,0 +1,5 @@
1
+ import { emitMreactDevtoolsEvent } from "@reckona/mreact-devtools";
2
+ export function emitRouterDevtoolsEvent(event) {
3
+ emitMreactDevtoolsEvent("@reckona/mreact-router", event);
4
+ }
5
+ //# sourceMappingURL=devtools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../../src/adapters/devtools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,UAAU,uBAAuB,CAAC,KAAiD;IACvF,uBAAuB,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type AppRouterLogger } from "../logger.js";
2
+ export type EdgeRequestHandler = (request: Request) => Response | Promise<Response>;
3
+ export interface EdgeRequestHandlerOptions {
4
+ logger?: AppRouterLogger | undefined;
5
+ onError?: ((error: unknown, request: Request) => Response | Promise<Response>) | undefined;
6
+ render: EdgeRequestHandler;
7
+ }
8
+ export declare function createEdgeRequestHandler(options: EdgeRequestHandlerOptions): EdgeRequestHandler;
9
+ //# sourceMappingURL=edge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../src/adapters/edge.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEpF,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;IAC3F,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,yBAAyB,GAAG,kBAAkB,CAmD/F"}
@@ -0,0 +1,53 @@
1
+ import { emitRouterDevtoolsEvent } from "./devtools.js";
2
+ import { emitRouterLog, logDurationMs, logError, logNow, requestLogFields, } from "../logger.js";
3
+ export function createEdgeRequestHandler(options) {
4
+ return async (request) => {
5
+ const startedAt = logNow();
6
+ const logFields = requestLogFields(request, "edge");
7
+ emitRouterLog(options.logger, "info", {
8
+ ...logFields,
9
+ type: "router:request:start",
10
+ });
11
+ emitRouterDevtoolsEvent({
12
+ method: request.method,
13
+ type: "router:request:start",
14
+ url: request.url,
15
+ });
16
+ try {
17
+ const response = await options.render(request);
18
+ emitRouterDevtoolsEvent({
19
+ method: request.method,
20
+ status: response.status,
21
+ type: "router:request:end",
22
+ url: request.url,
23
+ });
24
+ emitRouterLog(options.logger, "info", {
25
+ ...logFields,
26
+ durationMs: logDurationMs(startedAt),
27
+ status: response.status,
28
+ type: "router:request:end",
29
+ });
30
+ return response;
31
+ }
32
+ catch (error) {
33
+ emitRouterDevtoolsEvent({
34
+ method: request.method,
35
+ type: "router:request:error",
36
+ url: request.url,
37
+ });
38
+ emitRouterLog(options.logger, "error", {
39
+ ...logFields,
40
+ durationMs: logDurationMs(startedAt),
41
+ error: logError(error),
42
+ type: "router:request:error",
43
+ });
44
+ return options.onError === undefined
45
+ ? new Response("Internal Server Error", {
46
+ headers: { "content-type": "text/plain; charset=utf-8" },
47
+ status: 500,
48
+ })
49
+ : await options.onError(error, request);
50
+ }
51
+ };
52
+ }
53
+ //# sourceMappingURL=edge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edge.js","sourceRoot":"","sources":["../../src/adapters/edge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,aAAa,EACb,aAAa,EACb,QAAQ,EACR,MAAM,EACN,gBAAgB,GAEjB,MAAM,cAAc,CAAC;AAUtB,MAAM,UAAU,wBAAwB,CAAC,OAAkC;IACzE,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE;YACpC,GAAG,SAAS;YACZ,IAAI,EAAE,sBAAsB;SAC7B,CAAC,CAAC;QACH,uBAAuB,CAAC;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,sBAAsB;YAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/C,uBAAuB,CAAC;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,oBAAoB;gBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;aACjB,CAAC,CAAC;YACH,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE;gBACpC,GAAG,SAAS;gBACZ,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC;gBACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,oBAAoB;aAC3B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uBAAuB,CAAC;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,sBAAsB;gBAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;aACjB,CAAC,CAAC;YACH,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;gBACrC,GAAG,SAAS;gBACZ,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC;gBACpC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACtB,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,OAAO,KAAK,SAAS;gBAClC,CAAC,CAAC,IAAI,QAAQ,CAAC,uBAAuB,EAAE;oBACpC,OAAO,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE;oBACxD,MAAM,EAAE,GAAG;iBACZ,CAAC;gBACJ,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { IncomingMessage, ServerResponse } from "node:http";
2
+ import type { AppRouterCache } from "../cache.js";
3
+ import type { AppRouterServerActionOptions } from "../actions.js";
4
+ import type { AppRouterImportPolicy } from "../import-policy.js";
5
+ import { type AppRouterLogger } from "../logger.js";
6
+ import { type AppRouterPrerenderStore, type ResponseSinkStrategy } from "../serve.js";
7
+ export interface NodeRequestHandlerOptions {
8
+ allowedHosts?: readonly string[] | undefined;
9
+ errorHandler?: ((error: unknown) => {
10
+ body: string;
11
+ headers?: Record<string, string>;
12
+ status: number;
13
+ }) | undefined;
14
+ hostname?: string | undefined;
15
+ importPolicy?: AppRouterImportPolicy | undefined;
16
+ logger?: AppRouterLogger | undefined;
17
+ outDir: string;
18
+ port?: number | undefined;
19
+ prerenderStore?: AppRouterPrerenderStore | undefined;
20
+ routeCache?: AppRouterCache | undefined;
21
+ serverActions?: AppRouterServerActionOptions | undefined;
22
+ sinkStrategy?: ResponseSinkStrategy | undefined;
23
+ }
24
+ export type NodeRequestHandler = (incoming: IncomingMessage, outgoing: ServerResponse) => Promise<void>;
25
+ export declare function createNodeRequestHandler(options: NodeRequestHandlerOptions): NodeRequestHandler;
26
+ //# sourceMappingURL=node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/adapters/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAOL,KAAK,eAAe,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAC1B,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,yBAAyB;IACxC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC7C,YAAY,CAAC,EACT,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,GACF,SAAS,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,MAAM,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,cAAc,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;IACrD,UAAU,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACxC,aAAa,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;IACzD,YAAY,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;CACjD;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,cAAc,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,yBAAyB,GAAG,kBAAkB,CAiE/F"}
@@ -0,0 +1,64 @@
1
+ import { nodeRequestToWebRequest, sendResponse } from "../http.js";
2
+ import { emitRouterLog, logDurationMs, logError, logNow, nodeRequestPath, requestLogFields, } from "../logger.js";
3
+ import { renderBuiltAppRequest, resolveRequestHost, } from "../serve.js";
4
+ export function createNodeRequestHandler(options) {
5
+ return async (incoming, outgoing) => {
6
+ const startedAt = logNow();
7
+ const fallbackRequestFields = {
8
+ method: incoming.method ?? "GET",
9
+ path: nodeRequestPath(incoming.url),
10
+ runtime: "node",
11
+ };
12
+ try {
13
+ const fallbackHost = `${options.hostname ?? "127.0.0.1"}:${options.port ?? 80}`;
14
+ const host = resolveRequestHost({
15
+ allowedHosts: options.allowedHosts,
16
+ fallbackHost,
17
+ rawHost: incoming.headers.host,
18
+ });
19
+ const request = nodeRequestToWebRequest(incoming, `http://${host}`);
20
+ const logFields = requestLogFields(request, "node");
21
+ emitRouterLog(options.logger, "info", {
22
+ ...logFields,
23
+ type: "router:request:start",
24
+ });
25
+ const response = await renderBuiltAppRequest({
26
+ outDir: options.outDir,
27
+ importPolicy: options.importPolicy,
28
+ logger: options.logger,
29
+ prerenderStore: options.prerenderStore,
30
+ request,
31
+ routeCache: options.routeCache,
32
+ serverActions: options.serverActions,
33
+ ...(options.sinkStrategy === undefined ? {} : { sinkStrategy: options.sinkStrategy }),
34
+ });
35
+ emitRouterLog(options.logger, "info", {
36
+ ...logFields,
37
+ durationMs: logDurationMs(startedAt),
38
+ status: response.status,
39
+ type: "router:request:end",
40
+ });
41
+ await sendResponse(outgoing, response);
42
+ }
43
+ catch (error) {
44
+ emitRouterLog(options.logger, "error", {
45
+ ...fallbackRequestFields,
46
+ durationMs: logDurationMs(startedAt),
47
+ error: logError(error),
48
+ type: "router:request:error",
49
+ });
50
+ const payload = options.errorHandler
51
+ ? options.errorHandler(error)
52
+ : { body: "Internal Server Error", status: 500 };
53
+ outgoing.statusCode = payload.status;
54
+ outgoing.setHeader("content-type", payload.headers?.["content-type"] ?? "text/plain; charset=utf-8");
55
+ for (const [name, value] of Object.entries(payload.headers ?? {})) {
56
+ if (name.toLowerCase() !== "content-type") {
57
+ outgoing.setHeader(name, value);
58
+ }
59
+ }
60
+ outgoing.end(payload.body);
61
+ }
62
+ };
63
+ }
64
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/adapters/node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface StaticExportOptions {
2
+ exportDir: string;
3
+ outDir: string;
4
+ paths?: readonly string[] | undefined;
5
+ }
6
+ export interface StaticExportResult {
7
+ routes: string[];
8
+ }
9
+ export declare function exportStaticApp(options: StaticExportOptions): Promise<StaticExportResult>;
10
+ //# sourceMappingURL=static.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../src/adapters/static.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAyB/F"}
@@ -0,0 +1,34 @@
1
+ import { cp, mkdir, readFile, rm, writeFile } from "node:fs/promises";
2
+ import { dirname, join } from "node:path";
3
+ export async function exportStaticApp(options) {
4
+ const manifest = JSON.parse(await readFile(join(options.outDir, "server", "manifest.json"), "utf8"));
5
+ const prerenderedRoutes = manifest.prerenderedRoutes ?? {};
6
+ const routes = [...(options.paths ?? Object.keys(prerenderedRoutes))].sort();
7
+ await rm(options.exportDir, { force: true, recursive: true });
8
+ await mkdir(options.exportDir, { recursive: true });
9
+ for (const route of routes) {
10
+ const entry = prerenderedRoutes[route];
11
+ if (entry === undefined) {
12
+ throw new Error(`Cannot export non-prerendered route: ${route}`);
13
+ }
14
+ await writePrerenderedRoute(options.exportDir, route, entry);
15
+ }
16
+ await cp(join(options.outDir, "client"), join(options.exportDir, "_mreact", "client"), {
17
+ recursive: true,
18
+ });
19
+ return { routes };
20
+ }
21
+ async function writePrerenderedRoute(exportDir, route, entry) {
22
+ if (entry.status < 200 || entry.status >= 300) {
23
+ throw new Error(`Cannot export route ${route} with status ${entry.status}.`);
24
+ }
25
+ const file = join(exportDir, routeToHtmlFile(route));
26
+ await mkdir(dirname(file), { recursive: true });
27
+ await writeFile(file, entry.html);
28
+ }
29
+ function routeToHtmlFile(route) {
30
+ const pathname = route.split("?")[0] ?? "/";
31
+ const normalized = pathname.startsWith("/") ? pathname.slice(1) : pathname;
32
+ return normalized === "" ? "index.html" : join(normalized, "index.html");
33
+ }
34
+ //# sourceMappingURL=static.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static.js","sourceRoot":"","sources":["../../src/adapters/static.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAa1C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAA4B;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CACjD,CAAC;IACzB,MAAM,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,IAAI,EAAE,CAAC;IAC3D,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE7E,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,wCAAwC,KAAK,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,qBAAqB,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE;QACrF,SAAS,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,SAAiB,EACjB,KAAa,EACb,KAA4B;IAE5B,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,gBAAgB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACrD,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3E,OAAO,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AAC3E,CAAC"}
@@ -0,0 +1,18 @@
1
+ export interface AssetManifestEntry {
2
+ assets?: readonly string[];
3
+ css?: readonly string[];
4
+ file: string;
5
+ imports?: readonly string[];
6
+ }
7
+ export type AssetManifest = Readonly<Record<string, AssetManifestEntry>>;
8
+ export interface AssetHelperOptions {
9
+ base?: string;
10
+ }
11
+ export interface AssetLinkDescriptor {
12
+ attrs: Record<string, string>;
13
+ tag: "link";
14
+ }
15
+ export declare function assetHref(manifest: AssetManifest, key: string, options?: AssetHelperOptions): string;
16
+ export declare function assetPreloadLinks(manifest: AssetManifest, keys: readonly string[] | string, options?: AssetHelperOptions): AssetLinkDescriptor[];
17
+ export declare function assetPath(file: string, base?: string): string;
18
+ //# sourceMappingURL=assets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,SAAS,CACvB,QAAQ,EAAE,aAAa,EACvB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,kBAAuB,GAC/B,MAAM,CAER;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAChC,OAAO,GAAE,kBAAuB,GAC/B,mBAAmB,EAAE,CAsCvB;AAYD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAM,GAAG,MAAM,CAK1D"}
package/dist/assets.js ADDED
@@ -0,0 +1,67 @@
1
+ export function assetHref(manifest, key, options = {}) {
2
+ return assetPath(manifestEntry(manifest, key).file, options.base);
3
+ }
4
+ export function assetPreloadLinks(manifest, keys, options = {}) {
5
+ const seen = new Set();
6
+ const links = [];
7
+ for (const key of Array.isArray(keys) ? keys : [keys]) {
8
+ const entry = manifestEntry(manifest, key);
9
+ pushUniqueLink(seen, links, {
10
+ attrs: {
11
+ href: assetPath(entry.file, options.base),
12
+ rel: entry.file.endsWith(".js") ? "modulepreload" : "preload",
13
+ },
14
+ tag: "link",
15
+ });
16
+ for (const css of entry.css ?? []) {
17
+ pushUniqueLink(seen, links, {
18
+ attrs: {
19
+ href: assetPath(css, options.base),
20
+ rel: "stylesheet",
21
+ },
22
+ tag: "link",
23
+ });
24
+ }
25
+ for (const asset of entry.assets ?? []) {
26
+ pushUniqueLink(seen, links, {
27
+ attrs: {
28
+ as: preloadAs(asset),
29
+ href: assetPath(asset, options.base),
30
+ rel: "preload",
31
+ },
32
+ tag: "link",
33
+ });
34
+ }
35
+ }
36
+ return links;
37
+ }
38
+ function manifestEntry(manifest, key) {
39
+ const entry = manifest[key];
40
+ if (entry === undefined) {
41
+ throw new Error(`Asset manifest entry not found: ${key}`);
42
+ }
43
+ return entry;
44
+ }
45
+ export function assetPath(file, base = "/") {
46
+ const normalizedBase = base.endsWith("/") ? base : `${base}/`;
47
+ const normalizedFile = file.startsWith("/") ? file.slice(1) : file;
48
+ return `${normalizedBase}${normalizedFile}`;
49
+ }
50
+ function pushUniqueLink(seen, links, link) {
51
+ const key = JSON.stringify(link);
52
+ if (seen.has(key)) {
53
+ return;
54
+ }
55
+ seen.add(key);
56
+ links.push(link);
57
+ }
58
+ function preloadAs(file) {
59
+ if (/\.(?:avif|gif|jpe?g|png|svg|webp)$/i.test(file)) {
60
+ return "image";
61
+ }
62
+ if (/\.(?:woff2?|ttf|otf)$/i.test(file)) {
63
+ return "font";
64
+ }
65
+ return "fetch";
66
+ }
67
+ //# sourceMappingURL=assets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { AppRoute } from "./routes.js";
2
+ import { type AppRouterProjectOptions } from "./config.js";
3
+ import type { ModuleMetadata } from "@reckona/mreact-compiler";
4
+ export interface BuildAppOptions extends AppRouterProjectOptions {
5
+ outDir: string;
6
+ }
7
+ export interface BuildAppResult {
8
+ routes: AppRoute[];
9
+ }
10
+ export interface BuiltServerManifest {
11
+ allowedSourceDirs?: readonly string[];
12
+ assetBaseUrl?: string;
13
+ version: 1;
14
+ files: Record<string, string>;
15
+ prerenderedRoutes?: Record<string, BuiltPrerenderedRoute>;
16
+ publicAssetBaseUrl?: string;
17
+ routesDir?: string;
18
+ routes: AppRoute[];
19
+ serverModules?: Record<string, BuiltServerModuleArtifact>;
20
+ }
21
+ export interface BuiltServerModuleArtifact {
22
+ stream?: BuiltServerModuleOutput;
23
+ string?: BuiltServerModuleOutput;
24
+ }
25
+ export interface BuiltServerModuleOutput {
26
+ code: string;
27
+ metadata?: ModuleMetadata;
28
+ sourceHash: string;
29
+ }
30
+ export interface BuiltPrerenderedRoute {
31
+ headers: Record<string, string>;
32
+ html: string;
33
+ status: number;
34
+ }
35
+ export declare function buildApp(options: BuildAppOptions): Promise<BuildAppResult>;
36
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAe/D,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;IAC9D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,CAAC,CAAC;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,MAAM,CAAC,EAAE,uBAAuB,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAID,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAqEhF"}