@modern-js/prod-server 2.35.0 → 2.36.0

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 (151) hide show
  1. package/dist/cjs/constants.js +33 -27
  2. package/dist/cjs/index.js +41 -33
  3. package/dist/cjs/libs/context/context.js +86 -36
  4. package/dist/cjs/libs/context/index.js +27 -17
  5. package/dist/cjs/libs/hook-api/base.js +49 -30
  6. package/dist/cjs/libs/hook-api/index.js +36 -28
  7. package/dist/cjs/libs/hook-api/index.worker.js +39 -31
  8. package/dist/cjs/libs/hook-api/route.js +28 -11
  9. package/dist/cjs/libs/hook-api/template.js +27 -17
  10. package/dist/cjs/libs/hook-api/templateForStream.js +31 -14
  11. package/dist/cjs/libs/loadConfig.js +46 -29
  12. package/dist/cjs/libs/metrics.js +24 -7
  13. package/dist/cjs/libs/preload/flushServerHeader.js +30 -13
  14. package/dist/cjs/libs/preload/index.js +22 -5
  15. package/dist/cjs/libs/preload/parseLinks.js +54 -30
  16. package/dist/cjs/libs/preload/shouldFlushServerHeader.js +25 -15
  17. package/dist/cjs/libs/preload/transformLinks2String.js +27 -11
  18. package/dist/cjs/libs/proxy.js +29 -19
  19. package/dist/cjs/libs/render/cache/__tests__/cache.fun.test.js +40 -22
  20. package/dist/cjs/libs/render/cache/__tests__/cache.test.js +33 -41
  21. package/dist/cjs/libs/render/cache/__tests__/cacheable.js +24 -7
  22. package/dist/cjs/libs/render/cache/__tests__/error-configuration.js +24 -7
  23. package/dist/cjs/libs/render/cache/__tests__/matched-cache.js +24 -7
  24. package/dist/cjs/libs/render/cache/index.js +30 -18
  25. package/dist/cjs/libs/render/cache/page-caches/index.js +26 -9
  26. package/dist/cjs/libs/render/cache/page-caches/lru.js +39 -13
  27. package/dist/cjs/libs/render/cache/spr.js +62 -44
  28. package/dist/cjs/libs/render/cache/type.js +15 -3
  29. package/dist/cjs/libs/render/cache/util.js +49 -36
  30. package/dist/cjs/libs/render/index.js +56 -30
  31. package/dist/cjs/libs/render/measure.js +27 -17
  32. package/dist/cjs/libs/render/reader.js +50 -35
  33. package/dist/cjs/libs/render/ssr.js +52 -26
  34. package/dist/cjs/libs/render/static.js +44 -18
  35. package/dist/cjs/libs/render/type.js +24 -7
  36. package/dist/cjs/libs/render/utils.js +29 -19
  37. package/dist/cjs/libs/reporter.js +24 -7
  38. package/dist/cjs/libs/route/index.js +30 -20
  39. package/dist/cjs/libs/route/matcher.js +37 -20
  40. package/dist/cjs/libs/route/route.js +34 -17
  41. package/dist/cjs/libs/serveFile.js +40 -21
  42. package/dist/cjs/libs/serverTiming.js +27 -10
  43. package/dist/cjs/renderHtml.js +17 -20
  44. package/dist/cjs/server/index.js +74 -50
  45. package/dist/cjs/server/modernServer.js +136 -113
  46. package/dist/cjs/server/modernServerSplit.js +29 -12
  47. package/dist/cjs/type.js +15 -3
  48. package/dist/cjs/utils.js +41 -38
  49. package/dist/cjs/workerServer.js +48 -39
  50. package/dist/esm/constants.js +14 -6
  51. package/dist/esm/index.js +11 -5
  52. package/dist/esm/libs/context/context.js +33 -6
  53. package/dist/esm/libs/context/index.js +5 -2
  54. package/dist/esm/libs/hook-api/base.js +6 -2
  55. package/dist/esm/libs/hook-api/index.js +11 -5
  56. package/dist/esm/libs/hook-api/index.worker.js +16 -10
  57. package/dist/esm/libs/hook-api/route.js +4 -1
  58. package/dist/esm/libs/hook-api/template.js +6 -2
  59. package/dist/esm/libs/hook-api/templateForStream.js +4 -1
  60. package/dist/esm/libs/loadConfig.js +8 -3
  61. package/dist/esm/libs/metrics.js +3 -1
  62. package/dist/esm/libs/preload/flushServerHeader.js +9 -6
  63. package/dist/esm/libs/preload/parseLinks.js +13 -11
  64. package/dist/esm/libs/preload/shouldFlushServerHeader.js +6 -2
  65. package/dist/esm/libs/preload/transformLinks2String.js +5 -3
  66. package/dist/esm/libs/proxy.js +9 -5
  67. package/dist/esm/libs/render/cache/__tests__/cache.test.js +12 -12
  68. package/dist/esm/libs/render/cache/__tests__/cacheable.js +4 -1
  69. package/dist/esm/libs/render/cache/__tests__/error-configuration.js +4 -1
  70. package/dist/esm/libs/render/cache/__tests__/matched-cache.js +4 -1
  71. package/dist/esm/libs/render/cache/index.js +6 -3
  72. package/dist/esm/libs/render/cache/page-caches/index.js +5 -2
  73. package/dist/esm/libs/render/cache/page-caches/lru.js +4 -1
  74. package/dist/esm/libs/render/cache/spr.js +13 -9
  75. package/dist/esm/libs/render/cache/type.js +0 -1
  76. package/dist/esm/libs/render/cache/util.js +18 -8
  77. package/dist/esm/libs/render/index.js +17 -11
  78. package/dist/esm/libs/render/measure.js +15 -11
  79. package/dist/esm/libs/render/reader.js +17 -10
  80. package/dist/esm/libs/render/ssr.js +11 -8
  81. package/dist/esm/libs/render/static.js +5 -2
  82. package/dist/esm/libs/render/type.js +4 -1
  83. package/dist/esm/libs/render/utils.js +6 -2
  84. package/dist/esm/libs/reporter.js +4 -1
  85. package/dist/esm/libs/route/index.js +5 -2
  86. package/dist/esm/libs/route/matcher.js +6 -3
  87. package/dist/esm/libs/route/route.js +4 -1
  88. package/dist/esm/libs/serveFile.js +6 -2
  89. package/dist/esm/libs/serverTiming.js +4 -1
  90. package/dist/esm/renderHtml.js +133 -124
  91. package/dist/esm/server/index.js +14 -13
  92. package/dist/esm/server/modernServer.js +39 -47
  93. package/dist/esm/server/modernServerSplit.js +4 -1
  94. package/dist/esm/type.js +0 -1
  95. package/dist/esm/utils.js +23 -12
  96. package/dist/esm/workerServer.js +25 -22
  97. package/dist/esm-node/constants.js +14 -6
  98. package/dist/esm-node/index.js +11 -5
  99. package/dist/esm-node/libs/context/context.js +33 -6
  100. package/dist/esm-node/libs/context/index.js +5 -2
  101. package/dist/esm-node/libs/hook-api/base.js +6 -2
  102. package/dist/esm-node/libs/hook-api/index.js +10 -4
  103. package/dist/esm-node/libs/hook-api/index.worker.js +10 -4
  104. package/dist/esm-node/libs/hook-api/route.js +4 -1
  105. package/dist/esm-node/libs/hook-api/template.js +6 -2
  106. package/dist/esm-node/libs/hook-api/templateForStream.js +4 -1
  107. package/dist/esm-node/libs/loadConfig.js +8 -3
  108. package/dist/esm-node/libs/metrics.js +3 -1
  109. package/dist/esm-node/libs/preload/flushServerHeader.js +6 -3
  110. package/dist/esm-node/libs/preload/parseLinks.js +11 -9
  111. package/dist/esm-node/libs/preload/shouldFlushServerHeader.js +6 -2
  112. package/dist/esm-node/libs/preload/transformLinks2String.js +5 -3
  113. package/dist/esm-node/libs/proxy.js +6 -2
  114. package/dist/esm-node/libs/render/cache/__tests__/cache.test.js +7 -12
  115. package/dist/esm-node/libs/render/cache/__tests__/cacheable.js +4 -1
  116. package/dist/esm-node/libs/render/cache/__tests__/error-configuration.js +4 -1
  117. package/dist/esm-node/libs/render/cache/__tests__/matched-cache.js +4 -1
  118. package/dist/esm-node/libs/render/cache/index.js +5 -3
  119. package/dist/esm-node/libs/render/cache/page-caches/index.js +4 -1
  120. package/dist/esm-node/libs/render/cache/page-caches/lru.js +4 -1
  121. package/dist/esm-node/libs/render/cache/spr.js +7 -4
  122. package/dist/esm-node/libs/render/cache/type.js +0 -1
  123. package/dist/esm-node/libs/render/cache/util.js +18 -8
  124. package/dist/esm-node/libs/render/index.js +7 -3
  125. package/dist/esm-node/libs/render/measure.js +6 -2
  126. package/dist/esm-node/libs/render/reader.js +13 -7
  127. package/dist/esm-node/libs/render/ssr.js +4 -1
  128. package/dist/esm-node/libs/render/static.js +4 -1
  129. package/dist/esm-node/libs/render/type.js +4 -1
  130. package/dist/esm-node/libs/render/utils.js +6 -2
  131. package/dist/esm-node/libs/reporter.js +4 -1
  132. package/dist/esm-node/libs/route/index.js +5 -2
  133. package/dist/esm-node/libs/route/matcher.js +6 -3
  134. package/dist/esm-node/libs/route/route.js +4 -1
  135. package/dist/esm-node/libs/serveFile.js +6 -2
  136. package/dist/esm-node/libs/serverTiming.js +4 -1
  137. package/dist/esm-node/renderHtml.js +72 -63
  138. package/dist/esm-node/server/index.js +11 -10
  139. package/dist/esm-node/server/modernServer.js +29 -28
  140. package/dist/esm-node/server/modernServerSplit.js +4 -1
  141. package/dist/esm-node/type.js +0 -1
  142. package/dist/esm-node/utils.js +20 -9
  143. package/dist/esm-node/workerServer.js +12 -9
  144. package/dist/types/libs/context/context.d.ts +2 -1
  145. package/dist/types/type.d.ts +1 -0
  146. package/dist/types/utils.d.ts +1 -1
  147. package/package.json +9 -8
  148. package/dist/cjs/libs/logger.js +0 -123
  149. package/dist/esm/libs/logger.js +0 -125
  150. package/dist/esm-node/libs/logger.js +0 -106
  151. package/dist/types/libs/logger.d.ts +0 -61
@@ -1,52 +1,74 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "createRenderHandler", {
6
- enumerable: true,
7
- get: function() {
8
- return createRenderHandler;
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
17
  }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var render_exports = {};
30
+ __export(render_exports, {
31
+ createRenderHandler: () => createRenderHandler
10
32
  });
11
- const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
12
- const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
13
- const _path = /* @__PURE__ */ _interop_require_default._(require("path"));
14
- const _utils = require("@modern-js/utils");
15
- const _constants = require("../../constants");
16
- const _shouldFlushServerHeader = require("../preload/shouldFlushServerHeader");
17
- const _static = require("./static");
18
- const _reader = require("./reader");
19
- const _ssr = /* @__PURE__ */ _interop_require_wildcard._(require("./ssr"));
20
- const _utils1 = require("./utils");
33
+ module.exports = __toCommonJS(render_exports);
34
+ var import_path = __toESM(require("path"));
35
+ var import_utils = require("@modern-js/utils");
36
+ var import_constants = require("../../constants");
37
+ var import_shouldFlushServerHeader = require("../preload/shouldFlushServerHeader");
38
+ var import_static = require("./static");
39
+ var import_reader = require("./reader");
40
+ var ssr = __toESM(require("./ssr"));
41
+ var import_utils2 = require("./utils");
42
+ const calcFallback = (metaName) => `x-${(0, import_utils.cutNameByHyphen)(metaName)}-ssr-fallback`;
21
43
  const createRenderHandler = ({ distDir, staticGenerate, conf, forceCSR, nonce, ssrRender, metaName = "modern-js" }) => async function render({ ctx, route, runner }) {
22
44
  if (ctx.resHasHandled()) {
23
45
  return null;
24
46
  }
25
47
  const { entryPath, urlPath } = route;
26
- const entry = _path.default.join(distDir, entryPath);
48
+ const entry = import_path.default.join(distDir, entryPath);
27
49
  if (!route.isSPA) {
28
- const result = await (0, _static.handleDirectory)(ctx, entry, urlPath);
50
+ const result = await (0, import_static.handleDirectory)(ctx, entry, urlPath);
29
51
  return result;
30
52
  }
31
53
  const templatePath = entry;
32
- const content = await (0, _reader.readFile)(templatePath);
54
+ const content = await (0, import_reader.readFile)(templatePath);
33
55
  if (!content) {
34
56
  return null;
35
57
  }
36
- const useCSR = forceCSR && (ctx.query.csr || ctx.headers[`x-${(0, _utils.cutNameByHyphen)(metaName)}-ssr-fallback`]);
58
+ const useCSR = forceCSR && (ctx.query.csr || ctx.headers[calcFallback(metaName)]);
37
59
  if (route.isSSR && !useCSR) {
38
60
  try {
39
61
  const userAgent = ctx.getReqHeader("User-Agent");
40
- const disablePreload = Boolean(ctx.headers[`x-${(0, _utils.cutNameByHyphen)(metaName)}-disable-preload`]);
41
- if ((0, _shouldFlushServerHeader.shouldFlushServerHeader)(conf.server, userAgent, disablePreload)) {
42
- const { flushServerHeader } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../preload")));
62
+ const disablePreload = Boolean(ctx.headers[`x-${(0, import_utils.cutNameByHyphen)(metaName)}-disable-preload`]);
63
+ if ((0, import_shouldFlushServerHeader.shouldFlushServerHeader)(conf.server, userAgent, disablePreload)) {
64
+ const { flushServerHeader } = await Promise.resolve().then(() => __toESM(require("../preload")));
43
65
  flushServerHeader({
44
66
  serverConf: conf.server,
45
67
  ctx,
46
68
  distDir,
47
69
  template: content.toString(),
48
70
  headers: {
49
- "Content-Type": _utils.mime.contentType(_path.default.extname(templatePath))
71
+ "Content-Type": import_utils.mime.contentType(import_path.default.extname(templatePath))
50
72
  }
51
73
  });
52
74
  }
@@ -59,7 +81,7 @@ const createRenderHandler = ({ distDir, staticGenerate, conf, forceCSR, nonce, s
59
81
  staticGenerate,
60
82
  nonce
61
83
  };
62
- const result = await (ssrRender ? ssrRender(ctx, ssrRenderOptions, runner) : _ssr.render(ctx, {
84
+ const result = await (ssrRender ? ssrRender(ctx, ssrRenderOptions, runner) : ssr.render(ctx, {
63
85
  distDir,
64
86
  entryName: route.entryName,
65
87
  urlPath: route.urlPath,
@@ -70,12 +92,16 @@ const createRenderHandler = ({ distDir, staticGenerate, conf, forceCSR, nonce, s
70
92
  }, runner));
71
93
  return result;
72
94
  } catch (err) {
73
- ctx.error(_constants.ERROR_DIGEST.ERENDER, err.stack || err.message);
74
- ctx.res.set("x-modern-ssr-fallback", "1");
95
+ ctx.error(import_constants.ERROR_DIGEST.ERENDER, err.stack || err.message);
96
+ ctx.res.set(calcFallback(metaName), "1");
75
97
  }
76
98
  }
77
99
  return {
78
- content: route.entryName ? (0, _utils1.injectServerData)(content.toString(), ctx) : content,
79
- contentType: _utils.mime.contentType(_path.default.extname(templatePath))
100
+ content: route.entryName ? (0, import_utils2.injectServerData)(content.toString(), ctx) : content,
101
+ contentType: import_utils.mime.contentType(import_path.default.extname(templatePath))
80
102
  };
81
103
  };
104
+ // Annotate the CommonJS export names for ESM import in node:
105
+ 0 && (module.exports = {
106
+ createRenderHandler
107
+ });
@@ -1,23 +1,28 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
6
7
  for (var name in all)
7
- Object.defineProperty(target, name, {
8
- enumerable: true,
9
- get: all[name]
10
- });
11
- }
12
- _export(exports, {
13
- createMetrics: function() {
14
- return createMetrics;
15
- },
16
- createLogger: function() {
17
- return createLogger;
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
15
  }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var measure_exports = {};
20
+ __export(measure_exports, {
21
+ createLogger: () => createLogger,
22
+ createMetrics: () => createMetrics
19
23
  });
20
- const _utils = require("../../utils");
24
+ module.exports = __toCommonJS(measure_exports);
25
+ var import_utils = require("../../utils");
21
26
  const createMetrics = (context, metrics) => {
22
27
  const { entryName: entry, request } = context;
23
28
  const { pathname = "" } = request || {};
@@ -54,7 +59,7 @@ const createLogger = (serverContext, logger) => {
54
59
  e = message;
55
60
  message = "";
56
61
  }
57
- logger.error(`SSR Error - ${message}, error = %s, req.url = %s, req.headers = %o`, e instanceof Error ? e.stack || e.message : e, pathname, (0, _utils.headersWithoutCookie)(headers));
62
+ logger.error(`SSR Error - ${message}, error = %s, req.url = %s, req.headers = %o`, e instanceof Error ? e.stack || e.message : e, pathname, (0, import_utils.headersWithoutCookie)(headers));
58
63
  };
59
64
  return {
60
65
  error,
@@ -62,3 +67,8 @@ const createLogger = (serverContext, logger) => {
62
67
  debug
63
68
  };
64
69
  };
70
+ // Annotate the CommonJS export names for ESM import in node:
71
+ 0 && (module.exports = {
72
+ createLogger,
73
+ createMetrics
74
+ });
@@ -1,35 +1,43 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
6
9
  for (var name in all)
7
- Object.defineProperty(target, name, {
8
- enumerable: true,
9
- get: all[name]
10
- });
11
- }
12
- _export(exports, {
13
- LruReader: function() {
14
- return LruReader;
15
- },
16
- readFile: function() {
17
- return readFile;
18
- },
19
- updateFile: function() {
20
- return updateFile;
21
- },
22
- init: function() {
23
- return init;
24
- },
25
- close: function() {
26
- return close;
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
27
17
  }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var reader_exports = {};
30
+ __export(reader_exports, {
31
+ LruReader: () => LruReader,
32
+ close: () => close,
33
+ init: () => init,
34
+ readFile: () => readFile,
35
+ updateFile: () => updateFile
28
36
  });
29
- const _define_property = require("@swc/helpers/_/_define_property");
30
- const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
31
- const _utils = require("@modern-js/utils");
32
- const _lrucache = /* @__PURE__ */ _interop_require_default._(require("lru-cache"));
37
+ module.exports = __toCommonJS(reader_exports);
38
+ var import_define_property = require("@swc/helpers/_/_define_property");
39
+ var import_utils = require("@modern-js/utils");
40
+ var import_lru_cache = __toESM(require("lru-cache"));
33
41
  const Byte = 1;
34
42
  const KB = 1024 * Byte;
35
43
  const MB = 1024 * KB;
@@ -42,7 +50,7 @@ const createCacheItem = async (content, mtime) => {
42
50
  };
43
51
  class LruReader {
44
52
  init(fs) {
45
- this.fs = fs || _utils.fs;
53
+ this.fs = fs || import_utils.fs;
46
54
  }
47
55
  close() {
48
56
  }
@@ -89,21 +97,20 @@ class LruReader {
89
97
  }
90
98
  }
91
99
  constructor() {
92
- _define_property._(this, "cache", void 0);
93
- _define_property._(this, "fs", void 0);
94
- this.cache = new _lrucache.default({
100
+ (0, import_define_property._)(this, "cache", void 0);
101
+ (0, import_define_property._)(this, "fs", void 0);
102
+ this.cache = new import_lru_cache.default({
95
103
  max: 256 * MB,
96
104
  length: getContentLength,
97
105
  maxAge: 5 * 60 * 5e3
98
106
  });
99
- this.fs = _utils.fs;
107
+ this.fs = import_utils.fs;
100
108
  }
101
109
  }
102
110
  const reader = new LruReader();
103
111
  const readFile = async (filepath) => {
104
- var _file;
105
112
  const file = await reader.read(filepath);
106
- return (_file = file) === null || _file === void 0 ? void 0 : _file.content;
113
+ return file === null || file === void 0 ? void 0 : file.content;
107
114
  };
108
115
  const updateFile = () => {
109
116
  reader.update();
@@ -114,3 +121,11 @@ const init = (fs) => {
114
121
  const close = () => {
115
122
  reader.close();
116
123
  };
124
+ // Annotate the CommonJS export names for ESM import in node:
125
+ 0 && (module.exports = {
126
+ LruReader,
127
+ close,
128
+ init,
129
+ readFile,
130
+ updateFile
131
+ });
@@ -1,27 +1,49 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "render", {
6
- enumerable: true,
7
- get: function() {
8
- return render;
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
17
  }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ssr_exports = {};
30
+ __export(ssr_exports, {
31
+ render: () => render
10
32
  });
11
- const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
12
- const _path = /* @__PURE__ */ _interop_require_default._(require("path"));
13
- const _utils = require("@modern-js/utils");
14
- const _cache = /* @__PURE__ */ _interop_require_default._(require("./cache"));
15
- const _measure = require("./measure");
16
- const _utils1 = require("./utils");
33
+ module.exports = __toCommonJS(ssr_exports);
34
+ var import_path = __toESM(require("path"));
35
+ var import_utils = require("@modern-js/utils");
36
+ var import_cache = __toESM(require("./cache"));
37
+ var import_measure = require("./measure");
38
+ var import_utils2 = require("./utils");
17
39
  const render = async (ctx, renderOptions, runner) => {
18
40
  var _ctx_res;
19
41
  const { urlPath, bundle, distDir, template, entryName, staticGenerate, enableUnsafeCtx = false, nonce } = renderOptions;
20
- const bundleJS = _path.default.join(distDir, bundle);
21
- const loadableUri = _path.default.join(distDir, _utils.LOADABLE_STATS_FILE);
22
- const loadableStats = _utils.fs.existsSync(loadableUri) ? require(loadableUri) : "";
23
- const routesManifestUri = _path.default.join(distDir, _utils.ROUTE_MANIFEST_FILE);
24
- const routeManifest = _utils.fs.existsSync(routesManifestUri) ? require(routesManifestUri) : void 0;
42
+ const bundleJS = import_path.default.join(distDir, bundle);
43
+ const loadableUri = import_path.default.join(distDir, import_utils.LOADABLE_STATS_FILE);
44
+ const loadableStats = import_utils.fs.existsSync(loadableUri) ? require(loadableUri) : "";
45
+ const routesManifestUri = import_path.default.join(distDir, import_utils.ROUTE_MANIFEST_FILE);
46
+ const routeManifest = import_utils.fs.existsSync(routesManifestUri) ? require(routesManifestUri) : void 0;
25
47
  const context = {
26
48
  request: {
27
49
  baseUrl: urlPath,
@@ -56,12 +78,12 @@ const render = async (ctx, renderOptions, runner) => {
56
78
  enableUnsafeCtx,
57
79
  nonce
58
80
  };
59
- context.logger = (0, _measure.createLogger)(context, ctx.logger);
60
- context.metrics = (0, _measure.createMetrics)(context, ctx.metrics);
81
+ context.logger = (0, import_measure.createLogger)(context, ctx.logger);
82
+ context.metrics = (0, import_measure.createMetrics)(context, ctx.metrics);
61
83
  runner.extendSSRContext(context);
62
84
  const bundleJSContent = await Promise.resolve(require(bundleJS));
63
- const serverRender = bundleJSContent[_utils.SERVER_RENDER_FUNCTION_NAME];
64
- const content = await (0, _cache.default)(serverRender, ctx)(context);
85
+ const serverRender = bundleJSContent[import_utils.SERVER_RENDER_FUNCTION_NAME];
86
+ const content = await (0, import_cache.default)(serverRender, ctx)(context);
65
87
  const { url, status = 302 } = context.redirection;
66
88
  if (url) {
67
89
  return {
@@ -73,14 +95,18 @@ const render = async (ctx, renderOptions, runner) => {
73
95
  }
74
96
  if (typeof content === "string") {
75
97
  return {
76
- content: (0, _utils1.injectServerData)(content, ctx),
77
- contentType: _utils.mime.contentType("html")
98
+ content: (0, import_utils2.injectServerData)(content, ctx),
99
+ contentType: import_utils.mime.contentType("html")
78
100
  };
79
101
  } else {
80
102
  return {
81
103
  content: "",
82
- contentStream: (0, _utils1.injectServerDataStream)(content, ctx),
83
- contentType: _utils.mime.contentType("html")
104
+ contentStream: (0, import_utils2.injectServerDataStream)(content, ctx),
105
+ contentType: import_utils.mime.contentType("html")
84
106
  };
85
107
  }
86
108
  };
109
+ // Annotate the CommonJS export names for ESM import in node:
110
+ 0 && (module.exports = {
111
+ render
112
+ });
@@ -1,33 +1,55 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "handleDirectory", {
6
- enumerable: true,
7
- get: function() {
8
- return handleDirectory;
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
17
  }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var static_exports = {};
30
+ __export(static_exports, {
31
+ handleDirectory: () => handleDirectory
10
32
  });
11
- const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
12
- const _path = /* @__PURE__ */ _interop_require_default._(require("path"));
13
- const _utils = require("@modern-js/utils");
14
- const _reader = require("./reader");
33
+ module.exports = __toCommonJS(static_exports);
34
+ var import_path = __toESM(require("path"));
35
+ var import_utils = require("@modern-js/utils");
36
+ var import_reader = require("./reader");
15
37
  async function handleDirectory(ctx, entryPath, urlPath) {
16
38
  const { path: pathname } = ctx;
17
- const filepath = _path.default.join(entryPath, trimLeft(pathname, urlPath));
18
- let content = await (0, _reader.readFile)(filepath);
19
- let contentType = _utils.mime.contentType(_path.default.extname(filepath) || "");
39
+ const filepath = import_path.default.join(entryPath, trimLeft(pathname, urlPath));
40
+ let content = await (0, import_reader.readFile)(filepath);
41
+ let contentType = import_utils.mime.contentType(import_path.default.extname(filepath) || "");
20
42
  if (!content) {
21
43
  if (pathname.endsWith("/")) {
22
- content = await (0, _reader.readFile)(`${filepath}index.html`);
44
+ content = await (0, import_reader.readFile)(`${filepath}index.html`);
23
45
  } else if (!pathname.includes(".")) {
24
- content = await (0, _reader.readFile)(`${filepath}.html`);
46
+ content = await (0, import_reader.readFile)(`${filepath}.html`);
25
47
  if (!content) {
26
- content = await (0, _reader.readFile)(`${filepath}/index.html`);
48
+ content = await (0, import_reader.readFile)(`${filepath}/index.html`);
27
49
  }
28
50
  }
29
51
  if (content) {
30
- contentType = _utils.mime.contentType("html");
52
+ contentType = import_utils.mime.contentType("html");
31
53
  }
32
54
  }
33
55
  if (!content) {
@@ -44,3 +66,7 @@ const trimLeft = (str, prefix) => {
44
66
  }
45
67
  return str;
46
68
  };
69
+ // Annotate the CommonJS export names for ESM import in node:
70
+ 0 && (module.exports = {
71
+ handleDirectory
72
+ });
@@ -1,16 +1,33 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "RenderLevel", {
6
- enumerable: true,
7
- get: function() {
8
- return RenderLevel;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
15
  }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var type_exports = {};
20
+ __export(type_exports, {
21
+ RenderLevel: () => RenderLevel
10
22
  });
23
+ module.exports = __toCommonJS(type_exports);
11
24
  var RenderLevel;
12
25
  (function(RenderLevel2) {
13
26
  RenderLevel2[RenderLevel2["CLIENT_RENDER"] = 0] = "CLIENT_RENDER";
14
27
  RenderLevel2[RenderLevel2["SERVER_PREFETCH"] = 1] = "SERVER_PREFETCH";
15
28
  RenderLevel2[RenderLevel2["SERVER_RENDER"] = 2] = "SERVER_RENDER";
16
29
  })(RenderLevel || (RenderLevel = {}));
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
32
+ RenderLevel
33
+ });
@@ -1,31 +1,41 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
6
7
  for (var name in all)
7
- Object.defineProperty(target, name, {
8
- enumerable: true,
9
- get: all[name]
10
- });
11
- }
12
- _export(exports, {
13
- injectServerData: function() {
14
- return injectServerData;
15
- },
16
- injectServerDataStream: function() {
17
- return injectServerDataStream;
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
15
  }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var utils_exports = {};
20
+ __export(utils_exports, {
21
+ injectServerData: () => injectServerData,
22
+ injectServerDataStream: () => injectServerDataStream
19
23
  });
20
- const _template = require("../hook-api/template");
21
- const _templateForStream = require("../hook-api/templateForStream");
24
+ module.exports = __toCommonJS(utils_exports);
25
+ var import_template = require("../hook-api/template");
26
+ var import_templateForStream = require("../hook-api/templateForStream");
22
27
  const injectServerData = (content, context) => {
23
- const template = new _template.TemplateAPI(content);
28
+ const template = new import_template.TemplateAPI(content);
24
29
  template.prependHead(`<script type="application/json" id="__MODERN_SERVER_DATA__">${JSON.stringify(context.serverData)}</script>`);
25
30
  return template.get();
26
31
  };
27
32
  const injectServerDataStream = (content, context) => {
28
- return content.pipe((0, _templateForStream.templateInjectableStream)({
33
+ return content.pipe((0, import_templateForStream.templateInjectableStream)({
29
34
  prependHead: `<script type="application/json" id="__MODERN_SERVER_DATA__">${JSON.stringify(context.serverData)}</script>`
30
35
  }));
31
36
  };
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ injectServerData,
40
+ injectServerDataStream
41
+ });
@@ -1,13 +1,26 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "defaultReporter", {
6
- enumerable: true,
7
- get: function() {
8
- return defaultReporter;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
15
  }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var reporter_exports = {};
20
+ __export(reporter_exports, {
21
+ defaultReporter: () => defaultReporter
10
22
  });
23
+ module.exports = __toCommonJS(reporter_exports);
11
24
  const defaultReporter = {
12
25
  init() {
13
26
  },
@@ -20,3 +33,7 @@ const defaultReporter = {
20
33
  reportWarn() {
21
34
  }
22
35
  };
36
+ // Annotate the CommonJS export names for ESM import in node:
37
+ 0 && (module.exports = {
38
+ defaultReporter
39
+ });