zudoku 0.3.0-dev.40 → 0.3.0-dev.41

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.
@@ -1,12 +1,12 @@
1
1
  import type express from "express";
2
2
  import "virtual:vite-zudoku-custom-css.css";
3
3
  import type { ZudokuConfig } from "../config/config.js";
4
+ import type { FileWritingResponse } from "../vite/prerender.js";
4
5
  import "./main.css";
5
- export declare const render: ({ template, expressRequest, fetchRequest, response, config, }: {
6
+ export declare const render: ({ template, request: baseRequest, response, config, }: {
6
7
  template: string;
7
- expressRequest?: express.Request;
8
- fetchRequest?: Request;
9
- response: express.Response;
8
+ request: express.Request | Request;
9
+ response: express.Response | FileWritingResponse;
10
10
  config: ZudokuConfig;
11
11
  }) => Promise<void>;
12
- export declare function createFetchRequest(req: express.Request, res: express.Response): Request;
12
+ export declare function createFetchRequest(req: express.Request, res: express.Response | FileWritingResponse): Request;
@@ -8,12 +8,12 @@ import "virtual:vite-zudoku-custom-css.css";
8
8
  import { BootstrapStatic, ServerError } from "zudoku/components";
9
9
  import "./main.css";
10
10
  import { getRoutesByConfig } from "./main.js";
11
- export const render = async ({ template, expressRequest, fetchRequest, response, config, }) => {
11
+ export const render = async ({ template, request: baseRequest, response, config, }) => {
12
12
  const routes = getRoutesByConfig(config);
13
13
  const { query, dataRoutes } = createStaticHandler(routes);
14
- const request = expressRequest
15
- ? createFetchRequest(expressRequest, response)
16
- : fetchRequest;
14
+ const request = baseRequest instanceof Request
15
+ ? baseRequest
16
+ : createFetchRequest(baseRequest, response);
17
17
  if (!request) {
18
18
  throw new Error("Either fetchRequest or expressRequest must be provided");
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"entry.server.js","sourceRoot":"","sources":["../../src/app/entry.server.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry.server.js","sourceRoot":"","sources":["../../src/app/entry.server.tsx"],"names":[],"mappings":"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"}
@@ -48,29 +48,36 @@ export class DevServer {
48
48
  app.use(graphql.graphqlEndpoint, graphql);
49
49
  app.use(vite.middlewares);
50
50
  printDiagnosticsToConsole(`Server-side rendering ${this.options.ssr ? "enabled" : "disabled"}`);
51
- app.use("*", async (req, res) => {
52
- const url = req.originalUrl;
51
+ app.use("*", async (request, response) => {
52
+ const url = request.originalUrl;
53
53
  try {
54
54
  const entryJs = getAppClientEntryPath();
55
55
  const rawHtml = getDevHtml(entryJs);
56
56
  const template = await vite.transformIndexHtml(url, rawHtml);
57
57
  if (this.options.ssr) {
58
- const { render } = await vite.ssrLoadModule(getAppServerEntryPath());
59
- render({
58
+ if (!this.currentConfig) {
59
+ throw new Error("No config loaded");
60
+ }
61
+ const module = await vite.ssrLoadModule(getAppServerEntryPath());
62
+ const render = module.render;
63
+ void render({
60
64
  template,
61
- expressRequest: req,
62
- response: res,
65
+ request,
66
+ response,
63
67
  config: this.currentConfig,
64
68
  });
65
69
  }
66
70
  else {
67
- res.status(200).set({ "Content-Type": "text/html" }).end(template);
71
+ response
72
+ .status(200)
73
+ .set({ "Content-Type": "text/html" })
74
+ .end(template);
68
75
  }
69
76
  }
70
77
  catch (e) {
71
78
  vite.ssrFixStacktrace(e);
72
79
  logger.error(e);
73
- res.status(500).end(e.message);
80
+ response.status(500).end(e.message);
74
81
  }
75
82
  });
76
83
  return new Promise((resolve) => {
@@ -1 +1 @@
1
- {"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../../src/vite/dev-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../../src/vite/dev-server.ts"],"names":[],"mappings":"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"}
@@ -1 +1,17 @@
1
+ export declare class FileWritingResponse {
2
+ private readonly fileName;
3
+ private buffer;
4
+ private dontSave;
5
+ private resolve;
6
+ private resolved;
7
+ set(): void;
8
+ status(status: number): void;
9
+ on(): void;
10
+ constructor(fileName: string);
11
+ redirect(): void;
12
+ send: (chunk: string) => Promise<void>;
13
+ write(chunk: string, _encoding?: string): void;
14
+ end(chunk?: string): Promise<void>;
15
+ isSent(): Promise<void>;
16
+ }
1
17
  export declare const prerender: (html: string, dir: string) => Promise<any>;
@@ -1,28 +1,31 @@
1
- // Pre-render the app into static HTML.
2
- // run `npm run generate` and then `dist/static` can be served as a static site.
3
1
  import fs from "node:fs/promises";
4
2
  import path from "node:path";
5
- class MyFileWritingResponse {
3
+ export class FileWritingResponse {
6
4
  fileName;
7
5
  buffer = "";
8
6
  dontSave = false;
9
- resolver = () => { };
10
- set = () => { };
7
+ resolve = () => { };
8
+ resolved = new Promise((res) => (this.resolve = res));
9
+ set() { }
10
+ status(status) {
11
+ if (status >= 300) {
12
+ this.dontSave = true;
13
+ }
14
+ }
15
+ on() { }
11
16
  constructor(fileName) {
12
17
  this.fileName = fileName;
13
- this.fileName = fileName;
14
18
  }
15
- status() { }
16
19
  redirect() {
17
20
  this.buffer = "redirected";
18
21
  this.dontSave = true;
19
- this.resolver();
22
+ this.resolve();
20
23
  }
21
24
  send = async (chunk) => {
22
25
  this.write(chunk);
23
26
  await this.end();
24
27
  };
25
- write(chunk) {
28
+ write(chunk, _encoding) {
26
29
  this.buffer += chunk;
27
30
  }
28
31
  async end(chunk = "") {
@@ -30,29 +33,22 @@ class MyFileWritingResponse {
30
33
  await fs.mkdir(path.dirname(this.fileName), { recursive: true });
31
34
  await fs.writeFile(this.fileName, this.buffer + chunk);
32
35
  }
33
- this.resolver();
36
+ this.resolve();
37
+ }
38
+ isSent() {
39
+ return this.resolved;
34
40
  }
35
41
  }
36
42
  export const prerender = async (html, dir) => {
37
43
  const config = await import(path.join(dir, "dist/server/zudoku.config.js")).then((m) => m.default);
38
- const { render } = await import(path.join(dir, "dist/server/entry.server.js"));
44
+ const module = await import(path.join(dir, "dist/server/entry.server.js"));
45
+ const render = module.render;
39
46
  const { paths } = await import(path.join(dir, "dist/server/zudoku-manifest.js"));
40
47
  for (const urlPath of paths) {
41
48
  const req = new Request(`http://localhost${urlPath}`);
42
- const response = new MyFileWritingResponse(path.join(dir, "dist/", `${urlPath}.html`));
43
- const responsePromise = new Promise((res) => {
44
- response.resolver = res;
45
- });
46
- const exit = await render({
47
- template: html,
48
- fetchRequest: req,
49
- response,
50
- config,
51
- });
52
- if (exit === false) {
53
- continue;
54
- }
55
- await responsePromise;
49
+ const response = new FileWritingResponse(path.join(dir, "dist/", `${urlPath}.html`));
50
+ await render({ template: html, request: req, response, config });
51
+ await response.isSent();
56
52
  }
57
53
  return paths;
58
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"prerender.js","sourceRoot":"","sources":["../../src/vite/prerender.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,gFAAgF;AAEhF,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,qBAAqB;IAOI;IANrB,MAAM,GAAG,EAAE,CAAC;IACZ,QAAQ,GAAG,KAAK,CAAC;IAEzB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IACpB,GAAG,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAEf,YAA6B,QAAgB;QAAhB,aAAQ,GAAR,QAAQ,CAAQ;QAC3C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,MAAM,KAAI,CAAC;IAEX,QAAQ;QACN,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;QAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAClB,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,QAAgB,EAAE;QAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;CACF;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAE,GAAW,EAAE,EAAE;IAC3D,MAAM,MAAM,GAAG,MAAM,MAAM,CACzB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAC/C,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAC9C,CAAC;IAEF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,CAAC,CACjD,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CACxC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,OAAO,CAAC,CAC3C,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,EAAE;YAChD,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC;YACxB,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,GAAG;YACjB,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QACH,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,SAAS;QACX,CAAC;QACD,MAAM,eAAe,CAAC;IACxB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"prerender.js","sourceRoot":"","sources":["../../src/vite/prerender.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zudoku",
3
- "version": "0.3.0-dev.40",
3
+ "version": "0.3.0-dev.41",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -11,28 +11,28 @@ import {
11
11
  import "virtual:vite-zudoku-custom-css.css";
12
12
  import { BootstrapStatic, ServerError } from "zudoku/components";
13
13
  import type { ZudokuConfig } from "../config/config.js";
14
+ import type { FileWritingResponse } from "../vite/prerender.js";
14
15
  import "./main.css";
15
16
  import { getRoutesByConfig } from "./main.js";
16
17
 
17
18
  export const render = async ({
18
19
  template,
19
- expressRequest,
20
- fetchRequest,
20
+ request: baseRequest,
21
21
  response,
22
22
  config,
23
23
  }: {
24
24
  template: string;
25
- expressRequest?: express.Request;
26
- fetchRequest?: Request;
27
- response: express.Response;
25
+ request: express.Request | Request;
26
+ response: express.Response | FileWritingResponse;
28
27
  config: ZudokuConfig;
29
28
  }) => {
30
29
  const routes = getRoutesByConfig(config);
31
30
  const { query, dataRoutes } = createStaticHandler(routes);
32
31
 
33
- const request = expressRequest
34
- ? createFetchRequest(expressRequest, response)
35
- : fetchRequest;
32
+ const request =
33
+ baseRequest instanceof Request
34
+ ? baseRequest
35
+ : createFetchRequest(baseRequest, response);
36
36
 
37
37
  if (!request) {
38
38
  throw new Error("Either fetchRequest or expressRequest must be provided");
@@ -121,7 +121,7 @@ export const render = async ({
121
121
 
122
122
  export function createFetchRequest(
123
123
  req: express.Request,
124
- res: express.Response,
124
+ res: express.Response | FileWritingResponse,
125
125
  ): Request {
126
126
  const origin = `${req.protocol}://${req.get("host")}`;
127
127
  // Note: This had to take originalUrl into account for presumably vite's proxying