@modern-js/server-core 2.48.5-alpha.2 → 2.48.6

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 (209) hide show
  1. package/dist/cjs/index.js +4 -6
  2. package/dist/cjs/{core/loadPlugins.js → loadPlugins.js} +7 -4
  3. package/dist/cjs/{core/plugin.js → plugin.js} +42 -1
  4. package/dist/esm/index.js +2 -3
  5. package/dist/{esm-node/core → esm}/loadPlugins.js +7 -4
  6. package/dist/{esm-node/core → esm}/plugin.js +42 -1
  7. package/dist/types/index.d.ts +2 -3
  8. package/dist/types/loadPlugins.d.ts +5 -0
  9. package/dist/types/plugin.d.ts +493 -0
  10. package/package.json +6 -44
  11. package/dist/cjs/base/adapters/node/bff.js +0 -70
  12. package/dist/cjs/base/adapters/node/hono.js +0 -63
  13. package/dist/cjs/base/adapters/node/index.js +0 -54
  14. package/dist/cjs/base/adapters/node/loadServer.js +0 -56
  15. package/dist/cjs/base/adapters/node/middlewares/index.js +0 -28
  16. package/dist/cjs/base/adapters/node/middlewares/mock.js +0 -113
  17. package/dist/cjs/base/adapters/node/middlewares/serverManifest.js +0 -82
  18. package/dist/cjs/base/adapters/node/middlewares/serverPublic.js +0 -67
  19. package/dist/cjs/base/adapters/node/middlewares/serverStatic.js +0 -109
  20. package/dist/cjs/base/adapters/node/middlewares/templates.js +0 -67
  21. package/dist/cjs/base/adapters/node/node.js +0 -127
  22. package/dist/cjs/base/adapters/node/polyfills/index.js +0 -24
  23. package/dist/cjs/base/adapters/node/polyfills/install.js +0 -72
  24. package/dist/cjs/base/adapters/node/polyfills/stream.js +0 -153
  25. package/dist/cjs/base/constants.js +0 -58
  26. package/dist/cjs/base/index.js +0 -49
  27. package/dist/cjs/base/middlewares/customServer/base.js +0 -154
  28. package/dist/cjs/base/middlewares/customServer/context.js +0 -73
  29. package/dist/cjs/base/middlewares/customServer/index.js +0 -130
  30. package/dist/cjs/base/middlewares/customServer/routerApi.js +0 -44
  31. package/dist/cjs/base/middlewares/customServer/template.js +0 -58
  32. package/dist/cjs/base/middlewares/faviconFallback.js +0 -34
  33. package/dist/cjs/base/middlewares/frameworkHeader.js +0 -31
  34. package/dist/cjs/base/middlewares/index.js +0 -30
  35. package/dist/cjs/base/middlewares/logger.js +0 -77
  36. package/dist/cjs/base/middlewares/monitor.js +0 -90
  37. package/dist/cjs/base/middlewares/renderHandler/dataHandler.js +0 -46
  38. package/dist/cjs/base/middlewares/renderHandler/index.js +0 -106
  39. package/dist/cjs/base/middlewares/renderHandler/render.js +0 -126
  40. package/dist/cjs/base/middlewares/renderHandler/serverTiming.js +0 -40
  41. package/dist/cjs/base/middlewares/renderHandler/ssrCache.js +0 -197
  42. package/dist/cjs/base/middlewares/renderHandler/ssrRender.js +0 -208
  43. package/dist/cjs/base/serverBase.js +0 -203
  44. package/dist/cjs/base/utils/debug.js +0 -29
  45. package/dist/cjs/base/utils/entry.js +0 -30
  46. package/dist/cjs/base/utils/env.js +0 -45
  47. package/dist/cjs/base/utils/error.js +0 -65
  48. package/dist/cjs/base/utils/index.js +0 -34
  49. package/dist/cjs/base/utils/middlewareCollector.js +0 -54
  50. package/dist/cjs/base/utils/request.js +0 -65
  51. package/dist/cjs/base/utils/serverConfig.js +0 -70
  52. package/dist/cjs/base/utils/transformStream.js +0 -61
  53. package/dist/cjs/base/utils/warmup.js +0 -43
  54. package/dist/cjs/core/index.js +0 -22
  55. package/dist/cjs/core/render.js +0 -16
  56. package/dist/cjs/core/server.js +0 -16
  57. package/dist/esm/base/adapters/node/bff.js +0 -128
  58. package/dist/esm/base/adapters/node/hono.js +0 -83
  59. package/dist/esm/base/adapters/node/index.js +0 -19
  60. package/dist/esm/base/adapters/node/loadServer.js +0 -73
  61. package/dist/esm/base/adapters/node/middlewares/index.js +0 -4
  62. package/dist/esm/base/adapters/node/middlewares/mock.js +0 -198
  63. package/dist/esm/base/adapters/node/middlewares/serverManifest.js +0 -132
  64. package/dist/esm/base/adapters/node/middlewares/serverPublic.js +0 -85
  65. package/dist/esm/base/adapters/node/middlewares/serverStatic.js +0 -119
  66. package/dist/esm/base/adapters/node/middlewares/templates.js +0 -114
  67. package/dist/esm/base/adapters/node/node.js +0 -197
  68. package/dist/esm/base/adapters/node/polyfills/index.js +0 -2
  69. package/dist/esm/base/adapters/node/polyfills/install.js +0 -48
  70. package/dist/esm/base/adapters/node/polyfills/stream.js +0 -316
  71. package/dist/esm/base/constants.js +0 -31
  72. package/dist/esm/base/index.js +0 -16
  73. package/dist/esm/base/middlewares/customServer/base.js +0 -182
  74. package/dist/esm/base/middlewares/customServer/context.js +0 -68
  75. package/dist/esm/base/middlewares/customServer/index.js +0 -214
  76. package/dist/esm/base/middlewares/customServer/routerApi.js +0 -26
  77. package/dist/esm/base/middlewares/customServer/template.js +0 -47
  78. package/dist/esm/base/middlewares/faviconFallback.js +0 -28
  79. package/dist/esm/base/middlewares/frameworkHeader.js +0 -27
  80. package/dist/esm/base/middlewares/index.js +0 -5
  81. package/dist/esm/base/middlewares/logger.js +0 -75
  82. package/dist/esm/base/middlewares/monitor.js +0 -157
  83. package/dist/esm/base/middlewares/renderHandler/dataHandler.js +0 -45
  84. package/dist/esm/base/middlewares/renderHandler/index.js +0 -165
  85. package/dist/esm/base/middlewares/renderHandler/render.js +0 -216
  86. package/dist/esm/base/middlewares/renderHandler/serverTiming.js +0 -21
  87. package/dist/esm/base/middlewares/renderHandler/ssrCache.js +0 -306
  88. package/dist/esm/base/middlewares/renderHandler/ssrRender.js +0 -265
  89. package/dist/esm/base/serverBase.js +0 -383
  90. package/dist/esm/base/utils/debug.js +0 -5
  91. package/dist/esm/base/utils/entry.js +0 -6
  92. package/dist/esm/base/utils/env.js +0 -20
  93. package/dist/esm/base/utils/error.js +0 -12
  94. package/dist/esm/base/utils/index.js +0 -7
  95. package/dist/esm/base/utils/middlewareCollector.js +0 -31
  96. package/dist/esm/base/utils/request.js +0 -39
  97. package/dist/esm/base/utils/serverConfig.js +0 -58
  98. package/dist/esm/base/utils/transformStream.js +0 -90
  99. package/dist/esm/base/utils/warmup.js +0 -9
  100. package/dist/esm/core/index.js +0 -1
  101. package/dist/esm/core/loadPlugins.js +0 -26
  102. package/dist/esm/core/plugin.js +0 -59
  103. package/dist/esm/core/render.js +0 -0
  104. package/dist/esm/core/server.js +0 -0
  105. package/dist/esm-node/base/adapters/node/bff.js +0 -46
  106. package/dist/esm-node/base/adapters/node/hono.js +0 -38
  107. package/dist/esm-node/base/adapters/node/index.js +0 -19
  108. package/dist/esm-node/base/adapters/node/loadServer.js +0 -22
  109. package/dist/esm-node/base/adapters/node/middlewares/index.js +0 -4
  110. package/dist/esm-node/base/adapters/node/middlewares/mock.js +0 -79
  111. package/dist/esm-node/base/adapters/node/middlewares/serverManifest.js +0 -48
  112. package/dist/esm-node/base/adapters/node/middlewares/serverPublic.js +0 -33
  113. package/dist/esm-node/base/adapters/node/middlewares/serverStatic.js +0 -75
  114. package/dist/esm-node/base/adapters/node/middlewares/templates.js +0 -32
  115. package/dist/esm-node/base/adapters/node/node.js +0 -101
  116. package/dist/esm-node/base/adapters/node/polyfills/index.js +0 -2
  117. package/dist/esm-node/base/adapters/node/polyfills/install.js +0 -48
  118. package/dist/esm-node/base/adapters/node/polyfills/stream.js +0 -126
  119. package/dist/esm-node/base/constants.js +0 -31
  120. package/dist/esm-node/base/index.js +0 -16
  121. package/dist/esm-node/base/middlewares/customServer/base.js +0 -130
  122. package/dist/esm-node/base/middlewares/customServer/context.js +0 -46
  123. package/dist/esm-node/base/middlewares/customServer/index.js +0 -106
  124. package/dist/esm-node/base/middlewares/customServer/routerApi.js +0 -20
  125. package/dist/esm-node/base/middlewares/customServer/template.js +0 -34
  126. package/dist/esm-node/base/middlewares/faviconFallback.js +0 -10
  127. package/dist/esm-node/base/middlewares/frameworkHeader.js +0 -7
  128. package/dist/esm-node/base/middlewares/index.js +0 -5
  129. package/dist/esm-node/base/middlewares/logger.js +0 -53
  130. package/dist/esm-node/base/middlewares/monitor.js +0 -63
  131. package/dist/esm-node/base/middlewares/renderHandler/dataHandler.js +0 -22
  132. package/dist/esm-node/base/middlewares/renderHandler/index.js +0 -71
  133. package/dist/esm-node/base/middlewares/renderHandler/render.js +0 -102
  134. package/dist/esm-node/base/middlewares/renderHandler/serverTiming.js +0 -16
  135. package/dist/esm-node/base/middlewares/renderHandler/ssrCache.js +0 -162
  136. package/dist/esm-node/base/middlewares/renderHandler/ssrRender.js +0 -173
  137. package/dist/esm-node/base/serverBase.js +0 -168
  138. package/dist/esm-node/base/utils/debug.js +0 -5
  139. package/dist/esm-node/base/utils/entry.js +0 -6
  140. package/dist/esm-node/base/utils/env.js +0 -20
  141. package/dist/esm-node/base/utils/error.js +0 -41
  142. package/dist/esm-node/base/utils/index.js +0 -7
  143. package/dist/esm-node/base/utils/middlewareCollector.js +0 -29
  144. package/dist/esm-node/base/utils/request.js +0 -38
  145. package/dist/esm-node/base/utils/serverConfig.js +0 -34
  146. package/dist/esm-node/base/utils/transformStream.js +0 -36
  147. package/dist/esm-node/base/utils/warmup.js +0 -9
  148. package/dist/esm-node/core/index.js +0 -1
  149. package/dist/esm-node/core/render.js +0 -0
  150. package/dist/esm-node/core/server.js +0 -0
  151. package/dist/esm-node/index.js +0 -5
  152. package/dist/esm-node/types/config/bff.js +0 -0
  153. package/dist/esm-node/types/config/dev.js +0 -0
  154. package/dist/esm-node/types/config/html.js +0 -0
  155. package/dist/esm-node/types/config/index.js +0 -6
  156. package/dist/esm-node/types/config/output.js +0 -0
  157. package/dist/esm-node/types/config/security.js +0 -0
  158. package/dist/esm-node/types/config/server.js +0 -0
  159. package/dist/esm-node/types/config/share.js +0 -0
  160. package/dist/esm-node/types/config/source.js +0 -0
  161. package/dist/esm-node/types/config/tools.js +0 -0
  162. package/dist/types/base/adapters/node/bff.d.ts +0 -3
  163. package/dist/types/base/adapters/node/hono.d.ts +0 -22
  164. package/dist/types/base/adapters/node/index.d.ts +0 -6
  165. package/dist/types/base/adapters/node/loadServer.d.ts +0 -3
  166. package/dist/types/base/adapters/node/middlewares/index.d.ts +0 -4
  167. package/dist/types/base/adapters/node/middlewares/mock.d.ts +0 -5
  168. package/dist/types/base/adapters/node/middlewares/serverManifest.d.ts +0 -3
  169. package/dist/types/base/adapters/node/middlewares/serverPublic.d.ts +0 -7
  170. package/dist/types/base/adapters/node/middlewares/serverStatic.d.ts +0 -11
  171. package/dist/types/base/adapters/node/middlewares/templates.d.ts +0 -4
  172. package/dist/types/base/adapters/node/node.d.ts +0 -13
  173. package/dist/types/base/adapters/node/polyfills/index.d.ts +0 -2
  174. package/dist/types/base/adapters/node/polyfills/install.d.ts +0 -1
  175. package/dist/types/base/adapters/node/polyfills/stream.d.ts +0 -18
  176. package/dist/types/base/constants.d.ts +0 -24
  177. package/dist/types/base/index.d.ts +0 -7
  178. package/dist/types/base/middlewares/customServer/base.d.ts +0 -3
  179. package/dist/types/base/middlewares/customServer/context.d.ts +0 -7
  180. package/dist/types/base/middlewares/customServer/index.d.ts +0 -13
  181. package/dist/types/base/middlewares/customServer/routerApi.d.ts +0 -9
  182. package/dist/types/base/middlewares/customServer/template.d.ts +0 -11
  183. package/dist/types/base/middlewares/faviconFallback.d.ts +0 -2
  184. package/dist/types/base/middlewares/frameworkHeader.d.ts +0 -2
  185. package/dist/types/base/middlewares/index.d.ts +0 -5
  186. package/dist/types/base/middlewares/logger.d.ts +0 -2
  187. package/dist/types/base/middlewares/monitor.d.ts +0 -6
  188. package/dist/types/base/middlewares/renderHandler/dataHandler.d.ts +0 -5
  189. package/dist/types/base/middlewares/renderHandler/index.d.ts +0 -9
  190. package/dist/types/base/middlewares/renderHandler/render.d.ts +0 -12
  191. package/dist/types/base/middlewares/renderHandler/serverTiming.d.ts +0 -7
  192. package/dist/types/base/middlewares/renderHandler/ssrCache.d.ts +0 -28
  193. package/dist/types/base/middlewares/renderHandler/ssrRender.d.ts +0 -20
  194. package/dist/types/base/serverBase.d.ts +0 -70
  195. package/dist/types/base/utils/debug.d.ts +0 -1
  196. package/dist/types/base/utils/entry.d.ts +0 -2
  197. package/dist/types/base/utils/env.d.ts +0 -2
  198. package/dist/types/base/utils/error.d.ts +0 -1
  199. package/dist/types/base/utils/index.d.ts +0 -7
  200. package/dist/types/base/utils/middlewareCollector.d.ts +0 -12
  201. package/dist/types/base/utils/request.d.ts +0 -12
  202. package/dist/types/base/utils/serverConfig.d.ts +0 -14
  203. package/dist/types/base/utils/transformStream.d.ts +0 -5
  204. package/dist/types/base/utils/warmup.d.ts +0 -1
  205. package/dist/types/core/index.d.ts +0 -1
  206. package/dist/types/core/loadPlugins.d.ts +0 -3
  207. package/dist/types/core/plugin.d.ts +0 -202
  208. package/dist/types/core/render.d.ts +0 -15
  209. package/dist/types/core/server.d.ts +0 -44
@@ -1,132 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import path from "path";
4
- import { LOADABLE_STATS_FILE, MAIN_ENTRY_NAME, ROUTE_MANIFEST_FILE, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils";
5
- function getServerManifest(pwd, routes) {
6
- return _getServerManifest.apply(this, arguments);
7
- }
8
- function _getServerManifest() {
9
- _getServerManifest = _async_to_generator(function(pwd, routes) {
10
- var loaderBundles, renderBundles, loadableUri, loadableStats, routesManifestUri, routeManifest;
11
- return _ts_generator(this, function(_state) {
12
- switch (_state.label) {
13
- case 0:
14
- loaderBundles = {};
15
- renderBundles = {};
16
- return [
17
- 4,
18
- Promise.all([
19
- routes.map(function() {
20
- var _ref = _async_to_generator(function(route) {
21
- var entryName, loaderBundlePath, renderBundlePath;
22
- return _ts_generator(this, function(_state2) {
23
- switch (_state2.label) {
24
- case 0:
25
- entryName = route.entryName || MAIN_ENTRY_NAME;
26
- loaderBundlePath = path.join(pwd, SERVER_BUNDLE_DIRECTORY, "".concat(entryName, "-server-loaders.js"));
27
- renderBundlePath = path.join(pwd, route.bundle || "");
28
- return [
29
- 4,
30
- Promise.allSettled([
31
- import(loaderBundlePath),
32
- import(renderBundlePath)
33
- ]).then(function(results) {
34
- var _results_ = results[0], loaderStatus = _results_.status;
35
- if (loaderStatus === "fulfilled") {
36
- loaderBundles[entryName] = results[0].value;
37
- }
38
- var _results_1 = results[1], renderStatus = _results_1.status;
39
- if (renderStatus === "fulfilled") {
40
- renderBundles[entryName] = results[1].value;
41
- }
42
- })
43
- ];
44
- case 1:
45
- _state2.sent();
46
- return [
47
- 2
48
- ];
49
- }
50
- });
51
- });
52
- return function(route) {
53
- return _ref.apply(this, arguments);
54
- };
55
- }())
56
- ])
57
- ];
58
- case 1:
59
- _state.sent();
60
- loadableUri = path.join(pwd, LOADABLE_STATS_FILE);
61
- return [
62
- 4,
63
- import(loadableUri).catch(function(_) {
64
- return {};
65
- })
66
- ];
67
- case 2:
68
- loadableStats = _state.sent();
69
- routesManifestUri = path.join(pwd, ROUTE_MANIFEST_FILE);
70
- return [
71
- 4,
72
- import(routesManifestUri).catch(function(_) {
73
- return {};
74
- })
75
- ];
76
- case 3:
77
- routeManifest = _state.sent();
78
- return [
79
- 2,
80
- {
81
- loaderBundles,
82
- renderBundles,
83
- loadableStats,
84
- routeManifest
85
- }
86
- ];
87
- }
88
- });
89
- });
90
- return _getServerManifest.apply(this, arguments);
91
- }
92
- function injectServerManifest(pwd, routes) {
93
- return function() {
94
- var _ref = _async_to_generator(function(c, next) {
95
- var serverManifest;
96
- return _ts_generator(this, function(_state) {
97
- switch (_state.label) {
98
- case 0:
99
- if (!(routes && !c.get("serverManifest")))
100
- return [
101
- 3,
102
- 2
103
- ];
104
- return [
105
- 4,
106
- getServerManifest(pwd, routes)
107
- ];
108
- case 1:
109
- serverManifest = _state.sent();
110
- c.set("serverManifest", serverManifest);
111
- _state.label = 2;
112
- case 2:
113
- return [
114
- 4,
115
- next()
116
- ];
117
- case 3:
118
- _state.sent();
119
- return [
120
- 2
121
- ];
122
- }
123
- });
124
- });
125
- return function(c, next) {
126
- return _ref.apply(this, arguments);
127
- };
128
- }();
129
- }
130
- export {
131
- injectServerManifest
132
- };
@@ -1,85 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import path from "path";
4
- import { fileReader } from "@modern-js/runtime-utils/fileReader";
5
- import { getMimeType } from "hono/utils/mime";
6
- import { sortRoutes } from "../../../utils";
7
- function createPublicMiddleware(param) {
8
- var pwd = param.pwd, routes = param.routes;
9
- return function() {
10
- var _ref = _async_to_generator(function(c, next) {
11
- var route, entryPath, filename, data, mimeType;
12
- return _ts_generator(this, function(_state) {
13
- switch (_state.label) {
14
- case 0:
15
- route = matchRoute(c.req, routes);
16
- if (!route)
17
- return [
18
- 3,
19
- 2
20
- ];
21
- entryPath = route.entryPath;
22
- filename = path.join(pwd, entryPath);
23
- return [
24
- 4,
25
- fileReader.readFile(filename, "buffer")
26
- ];
27
- case 1:
28
- data = _state.sent();
29
- mimeType = getMimeType(filename);
30
- if (data !== null) {
31
- if (mimeType) {
32
- c.header("Content-Type", mimeType);
33
- }
34
- return [
35
- 2,
36
- c.body(data, 200)
37
- ];
38
- }
39
- _state.label = 2;
40
- case 2:
41
- return [
42
- 4,
43
- next()
44
- ];
45
- case 3:
46
- return [
47
- 2,
48
- _state.sent()
49
- ];
50
- }
51
- });
52
- });
53
- return function(c, next) {
54
- return _ref.apply(this, arguments);
55
- };
56
- }();
57
- }
58
- function matchRoute(req, routes) {
59
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
60
- try {
61
- for (var _iterator = routes.sort(sortRoutes)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
62
- var route = _step.value;
63
- if (!route.isSSR && !route.isApi && route.entryPath.startsWith("public") && req.path.startsWith(route.urlPath)) {
64
- return route;
65
- }
66
- }
67
- } catch (err) {
68
- _didIteratorError = true;
69
- _iteratorError = err;
70
- } finally {
71
- try {
72
- if (!_iteratorNormalCompletion && _iterator.return != null) {
73
- _iterator.return();
74
- }
75
- } finally {
76
- if (_didIteratorError) {
77
- throw _iteratorError;
78
- }
79
- }
80
- }
81
- return void 0;
82
- }
83
- export {
84
- createPublicMiddleware
85
- };
@@ -1,119 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
3
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
4
- import path from "path";
5
- import { fs } from "@modern-js/utils";
6
- import { getMimeType } from "hono/utils/mime";
7
- import { fileReader } from "@modern-js/runtime-utils/fileReader";
8
- import { createErrorHtml } from "../../../utils";
9
- import { createPublicMiddleware } from "./serverPublic";
10
- function createStaticMiddleware(options) {
11
- var pwd = options.pwd, routes = options.routes;
12
- var prefix = options.output.assetPrefix || "/";
13
- var _options_output = options.output, tmp = _options_output.distPath, _ref = tmp === void 0 ? {} : tmp, cssPath = _ref.css, jsPath = _ref.js, mediaPath = _ref.media;
14
- var _options_html = options.html, favicon = _options_html.favicon, faviconByEntries = _options_html.faviconByEntries;
15
- var favicons = prepareFavicons(favicon, faviconByEntries);
16
- var staticFiles = [
17
- cssPath,
18
- jsPath,
19
- mediaPath
20
- ].filter(function(v) {
21
- return Boolean(v);
22
- });
23
- var staticReg = [
24
- "static/",
25
- "upload/"
26
- ].concat(_to_consumable_array(staticFiles));
27
- var iconReg = [
28
- "favicon.ico",
29
- "icon.png"
30
- ].concat(_to_consumable_array(favicons));
31
- var regPrefix = prefix.endsWith("/") ? prefix : "".concat(prefix, "/");
32
- var staticPathRegExp = new RegExp("^".concat(regPrefix, "(").concat(_to_consumable_array(staticReg).concat(_to_consumable_array(iconReg)).join("|"), ")"));
33
- return function() {
34
- var _ref2 = _async_to_generator(function(c, next) {
35
- var pathname, hit, filepath, mimeType, stat, size, chunk;
36
- return _ts_generator(this, function(_state) {
37
- switch (_state.label) {
38
- case 0:
39
- pathname = c.req.path;
40
- hit = staticPathRegExp.test(pathname);
41
- if (!hit)
42
- return [
43
- 3,
44
- 4
45
- ];
46
- filepath = path.join(pwd, pathname.replace(prefix, function() {
47
- return "";
48
- }));
49
- return [
50
- 4,
51
- fs.pathExists(filepath)
52
- ];
53
- case 1:
54
- if (!_state.sent()) {
55
- return [
56
- 2,
57
- c.html(createErrorHtml(404), 404)
58
- ];
59
- }
60
- mimeType = getMimeType(filepath);
61
- if (mimeType) {
62
- c.header("Content-Type", mimeType);
63
- }
64
- return [
65
- 4,
66
- fs.lstat(filepath)
67
- ];
68
- case 2:
69
- stat = _state.sent();
70
- size = stat.size;
71
- return [
72
- 4,
73
- fileReader.readFile(filepath, "buffer")
74
- ];
75
- case 3:
76
- chunk = _state.sent();
77
- c.header("Content-Length", String(size));
78
- return [
79
- 2,
80
- c.body(chunk, 200)
81
- ];
82
- case 4:
83
- return [
84
- 2,
85
- createPublicMiddleware({
86
- pwd,
87
- routes: routes || []
88
- })(c, next)
89
- ];
90
- case 5:
91
- return [
92
- 2
93
- ];
94
- }
95
- });
96
- });
97
- return function(c, next) {
98
- return _ref2.apply(this, arguments);
99
- };
100
- }();
101
- }
102
- var prepareFavicons = function(favicon, faviconByEntries) {
103
- var faviconNames = [];
104
- if (favicon && typeof favicon === "string") {
105
- faviconNames.push(favicon.substring(favicon.lastIndexOf("/") + 1));
106
- }
107
- if (faviconByEntries) {
108
- Object.keys(faviconByEntries).forEach(function(f) {
109
- var curFavicon = faviconByEntries[f];
110
- if (curFavicon) {
111
- faviconNames.push(curFavicon.substring(curFavicon.lastIndexOf("/") + 1));
112
- }
113
- });
114
- }
115
- return faviconNames;
116
- };
117
- export {
118
- createStaticMiddleware
119
- };
@@ -1,114 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import path from "path";
4
- import { fileReader } from "@modern-js/runtime-utils/fileReader";
5
- function getHtmlTemplates(pwd, routes) {
6
- return _getHtmlTemplates.apply(this, arguments);
7
- }
8
- function _getHtmlTemplates() {
9
- _getHtmlTemplates = _async_to_generator(function(pwd, routes) {
10
- var htmls, templates;
11
- return _ts_generator(this, function(_state) {
12
- switch (_state.label) {
13
- case 0:
14
- return [
15
- 4,
16
- Promise.all(routes.map(function() {
17
- var _ref = _async_to_generator(function(route) {
18
- var html, _this, htmlPath, e;
19
- return _ts_generator(this, function(_state2) {
20
- switch (_state2.label) {
21
- case 0:
22
- _state2.trys.push([
23
- 0,
24
- 2,
25
- ,
26
- 3
27
- ]);
28
- htmlPath = path.join(pwd, route.entryPath);
29
- return [
30
- 4,
31
- fileReader.readFile(htmlPath, "utf-8")
32
- ];
33
- case 1:
34
- html = (_this = _state2.sent()) === null || _this === void 0 ? void 0 : _this.toString();
35
- return [
36
- 3,
37
- 3
38
- ];
39
- case 2:
40
- e = _state2.sent();
41
- return [
42
- 3,
43
- 3
44
- ];
45
- case 3:
46
- return [
47
- 2,
48
- [
49
- route.entryName,
50
- html
51
- ]
52
- ];
53
- }
54
- });
55
- });
56
- return function(route) {
57
- return _ref.apply(this, arguments);
58
- };
59
- }()) || [])
60
- ];
61
- case 1:
62
- htmls = _state.sent();
63
- templates = Object.fromEntries(htmls);
64
- return [
65
- 2,
66
- templates
67
- ];
68
- }
69
- });
70
- });
71
- return _getHtmlTemplates.apply(this, arguments);
72
- }
73
- function injectTemplates(pwd, routes) {
74
- return function() {
75
- var _ref = _async_to_generator(function(c, next) {
76
- var templates;
77
- return _ts_generator(this, function(_state) {
78
- switch (_state.label) {
79
- case 0:
80
- if (!(routes && !c.get("templates")))
81
- return [
82
- 3,
83
- 2
84
- ];
85
- return [
86
- 4,
87
- getHtmlTemplates(pwd, routes)
88
- ];
89
- case 1:
90
- templates = _state.sent();
91
- c.set("templates", templates);
92
- _state.label = 2;
93
- case 2:
94
- return [
95
- 4,
96
- next()
97
- ];
98
- case 3:
99
- _state.sent();
100
- return [
101
- 2
102
- ];
103
- }
104
- });
105
- });
106
- return function(c, next) {
107
- return _ref.apply(this, arguments);
108
- };
109
- }();
110
- }
111
- export {
112
- getHtmlTemplates,
113
- injectTemplates
114
- };
@@ -1,197 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _instanceof } from "@swc/helpers/_/_instanceof";
3
- import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
4
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
5
- import { createServer, ServerResponse } from "node:http";
6
- import { createReadableStreamFromReadable, writeReadableStreamToWritable } from "./polyfills/stream";
7
- import { installGlobals } from "./polyfills/install";
8
- installGlobals();
9
- var createWebRequest = function(req, res) {
10
- var _req_url;
11
- var headerRecord = [];
12
- var len = req.rawHeaders.length;
13
- for (var i = 0; i < len; i += 2) {
14
- headerRecord.push([
15
- req.rawHeaders[i],
16
- req.rawHeaders[i + 1]
17
- ]);
18
- }
19
- var method = req.method;
20
- var controller = new AbortController();
21
- var init = {
22
- method,
23
- headers: headerRecord,
24
- signal: controller.signal
25
- };
26
- res.on("close", function() {
27
- return controller.abort();
28
- });
29
- if (!(method === "GET" || method === "HEAD") && ((_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.includes("__loader"))) {
30
- init.body = createReadableStreamFromReadable(req);
31
- init.duplex = "half";
32
- }
33
- var url = "http://".concat(req.headers.host).concat(req.url);
34
- var request = new Request(url, init);
35
- return request;
36
- };
37
- var sendResponse = function() {
38
- var _ref = _async_to_generator(function(response, res) {
39
- var _response_headers_get, cookies, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _step_value, key, value;
40
- return _ts_generator(this, function(_state) {
41
- switch (_state.label) {
42
- case 0:
43
- res.statusMessage = response.statusText;
44
- res.statusCode = response.status;
45
- cookies = [];
46
- _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
47
- try {
48
- for (_iterator = response.headers.entries()[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
49
- _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], value = _step_value[1];
50
- if (key === "set-cookie") {
51
- cookies.push(value);
52
- } else {
53
- res.setHeader(key, value);
54
- }
55
- }
56
- } catch (err) {
57
- _didIteratorError = true;
58
- _iteratorError = err;
59
- } finally {
60
- try {
61
- if (!_iteratorNormalCompletion && _iterator.return != null) {
62
- _iterator.return();
63
- }
64
- } finally {
65
- if (_didIteratorError) {
66
- throw _iteratorError;
67
- }
68
- }
69
- }
70
- if (cookies.length > 0) {
71
- res.setHeader("set-cookie", cookies);
72
- }
73
- if (((_response_headers_get = response.headers.get("Content-Type")) === null || _response_headers_get === void 0 ? void 0 : _response_headers_get.match(/text\/event-stream/i)) && _instanceof(res, ServerResponse)) {
74
- res.flushHeaders();
75
- }
76
- if (!response.body)
77
- return [
78
- 3,
79
- 2
80
- ];
81
- return [
82
- 4,
83
- writeReadableStreamToWritable(response.body, res)
84
- ];
85
- case 1:
86
- _state.sent();
87
- return [
88
- 3,
89
- 3
90
- ];
91
- case 2:
92
- res.end();
93
- _state.label = 3;
94
- case 3:
95
- return [
96
- 2
97
- ];
98
- }
99
- });
100
- });
101
- return function sendResponse2(response, res) {
102
- return _ref.apply(this, arguments);
103
- };
104
- }();
105
- var handleResponseError = function(e, res) {
106
- var err = _instanceof(e, Error) ? e : new Error("unknown error", {
107
- cause: e
108
- });
109
- if (err.code === "ERR_STREAM_PREMATURE_CLOSE") {
110
- console.info("The user aborted a request.");
111
- } else {
112
- console.error(e);
113
- if (!res.headersSent) {
114
- res.writeHead(500, {
115
- "Content-Type": "text/plain"
116
- });
117
- }
118
- res.end("Error: ".concat(err.message));
119
- res.destroy(err);
120
- }
121
- };
122
- var getRequestListener = function(handler) {
123
- return function() {
124
- var _ref = _async_to_generator(function(req, res) {
125
- var request, response, error;
126
- return _ts_generator(this, function(_state) {
127
- switch (_state.label) {
128
- case 0:
129
- _state.trys.push([
130
- 0,
131
- 4,
132
- ,
133
- 5
134
- ]);
135
- request = createWebRequest(req, res);
136
- return [
137
- 4,
138
- handler(request, {
139
- node: {
140
- req,
141
- res
142
- }
143
- })
144
- ];
145
- case 1:
146
- response = _state.sent();
147
- if (!(!res.headersSent && !response.res))
148
- return [
149
- 3,
150
- 3
151
- ];
152
- return [
153
- 4,
154
- sendResponse(response, res)
155
- ];
156
- case 2:
157
- _state.sent();
158
- _state.label = 3;
159
- case 3:
160
- return [
161
- 3,
162
- 5
163
- ];
164
- case 4:
165
- error = _state.sent();
166
- return [
167
- 2,
168
- handleResponseError(error, res)
169
- ];
170
- case 5:
171
- return [
172
- 2
173
- ];
174
- }
175
- });
176
- });
177
- return function(req, res) {
178
- return _ref.apply(this, arguments);
179
- };
180
- }();
181
- };
182
- var createNodeServer = function(requestHandler) {
183
- var requestListener = getRequestListener(requestHandler);
184
- var nodeServer = createServer(requestListener);
185
- nodeServer.getRequestListener = function() {
186
- return requestListener;
187
- };
188
- nodeServer.getRequestHandler = function() {
189
- return requestHandler;
190
- };
191
- return nodeServer;
192
- };
193
- export {
194
- createNodeServer,
195
- createWebRequest,
196
- sendResponse
197
- };
@@ -1,2 +0,0 @@
1
- export * from "./install";
2
- export * from "./stream";
@@ -1,48 +0,0 @@
1
- import { Request as NodeRequest, Response as NodeResponse, Headers as NodeHeaders, FormData as NodeFormData } from "@web-std/fetch";
2
- import { TransformStream as NodeTransformStream, ReadableStream as NodeReadableStream, WritableStream as NodeWritableStream } from "@web-std/stream";
3
- import { File as NodeFile, Blob as NodeBlob } from "@web-std/file";
4
- if (!Object.getOwnPropertyDescriptor(NodeHeaders.prototype, "getSetCookie")) {
5
- Object.defineProperty(NodeHeaders.prototype, "getSetCookie", {
6
- value: function getSetCookie() {
7
- var cookies = [];
8
- this.forEach(function(value, name) {
9
- if (name.toLowerCase() === "set-cookie") {
10
- cookies.push(value);
11
- }
12
- });
13
- return cookies;
14
- }
15
- });
16
- }
17
- var installGlobals = function() {
18
- if (!global.Headers) {
19
- global.Headers = NodeHeaders;
20
- }
21
- if (!global.Request) {
22
- global.Request = NodeRequest;
23
- }
24
- if (!global.Response) {
25
- global.Response = NodeResponse;
26
- }
27
- if (!global.FormData) {
28
- global.FormData = NodeFormData;
29
- }
30
- if (!global.TransformStream) {
31
- global.TransformStream = NodeTransformStream;
32
- }
33
- if (!global.ReadableStream) {
34
- global.ReadableStream = NodeReadableStream;
35
- }
36
- if (!global.WritableStream) {
37
- global.WritableStream = NodeWritableStream;
38
- }
39
- if (!global.File) {
40
- global.File = NodeFile;
41
- }
42
- if (!global.Blob) {
43
- global.Blob = NodeBlob;
44
- }
45
- };
46
- export {
47
- installGlobals
48
- };