@modern-js/server-core 2.48.6 → 2.49.1-alpha.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 (209) hide show
  1. package/dist/cjs/base/adapters/node/bff.js +70 -0
  2. package/dist/cjs/base/adapters/node/hono.js +63 -0
  3. package/dist/cjs/base/adapters/node/index.js +56 -0
  4. package/dist/cjs/base/adapters/node/loadServer.js +56 -0
  5. package/dist/cjs/base/adapters/node/middlewares/index.js +28 -0
  6. package/dist/cjs/base/adapters/node/middlewares/mock.js +113 -0
  7. package/dist/cjs/base/adapters/node/middlewares/serverManifest.js +90 -0
  8. package/dist/cjs/base/adapters/node/middlewares/serverPublic.js +67 -0
  9. package/dist/cjs/base/adapters/node/middlewares/serverStatic.js +109 -0
  10. package/dist/cjs/base/adapters/node/middlewares/templates.js +67 -0
  11. package/dist/cjs/base/adapters/node/node.js +127 -0
  12. package/dist/cjs/base/adapters/node/polyfills/index.js +24 -0
  13. package/dist/cjs/base/adapters/node/polyfills/install.js +72 -0
  14. package/dist/cjs/base/adapters/node/polyfills/stream.js +153 -0
  15. package/dist/cjs/base/constants.js +58 -0
  16. package/dist/cjs/base/index.js +49 -0
  17. package/dist/cjs/base/middlewares/customServer/base.js +171 -0
  18. package/dist/cjs/base/middlewares/customServer/context.js +73 -0
  19. package/dist/cjs/base/middlewares/customServer/index.js +136 -0
  20. package/dist/cjs/base/middlewares/customServer/routerApi.js +44 -0
  21. package/dist/cjs/base/middlewares/customServer/template.js +58 -0
  22. package/dist/cjs/base/middlewares/faviconFallback.js +34 -0
  23. package/dist/cjs/base/middlewares/frameworkHeader.js +31 -0
  24. package/dist/cjs/base/middlewares/index.js +30 -0
  25. package/dist/cjs/base/middlewares/logger.js +77 -0
  26. package/dist/cjs/base/middlewares/monitor.js +90 -0
  27. package/dist/cjs/base/middlewares/renderHandler/dataHandler.js +46 -0
  28. package/dist/cjs/base/middlewares/renderHandler/index.js +108 -0
  29. package/dist/cjs/base/middlewares/renderHandler/render.js +132 -0
  30. package/dist/cjs/base/middlewares/renderHandler/serverTiming.js +40 -0
  31. package/dist/cjs/base/middlewares/renderHandler/ssrCache.js +197 -0
  32. package/dist/cjs/base/middlewares/renderHandler/ssrRender.js +212 -0
  33. package/dist/cjs/base/serverBase.js +203 -0
  34. package/dist/cjs/base/utils/debug.js +29 -0
  35. package/dist/cjs/base/utils/entry.js +30 -0
  36. package/dist/cjs/base/utils/env.js +45 -0
  37. package/dist/cjs/base/utils/error.js +65 -0
  38. package/dist/cjs/base/utils/index.js +34 -0
  39. package/dist/cjs/base/utils/middlewareCollector.js +54 -0
  40. package/dist/cjs/base/utils/request.js +65 -0
  41. package/dist/cjs/base/utils/serverConfig.js +70 -0
  42. package/dist/cjs/base/utils/transformStream.js +61 -0
  43. package/dist/cjs/base/utils/warmup.js +43 -0
  44. package/dist/cjs/core/index.js +22 -0
  45. package/dist/cjs/{loadPlugins.js → core/loadPlugins.js} +4 -7
  46. package/dist/cjs/{plugin.js → core/plugin.js} +1 -42
  47. package/dist/cjs/core/render.js +16 -0
  48. package/dist/cjs/core/server.js +16 -0
  49. package/dist/cjs/index.js +6 -4
  50. package/dist/esm/base/adapters/node/bff.js +128 -0
  51. package/dist/esm/base/adapters/node/hono.js +83 -0
  52. package/dist/esm/base/adapters/node/index.js +20 -0
  53. package/dist/esm/base/adapters/node/loadServer.js +73 -0
  54. package/dist/esm/base/adapters/node/middlewares/index.js +4 -0
  55. package/dist/esm/base/adapters/node/middlewares/mock.js +198 -0
  56. package/dist/esm/base/adapters/node/middlewares/serverManifest.js +139 -0
  57. package/dist/esm/base/adapters/node/middlewares/serverPublic.js +85 -0
  58. package/dist/esm/base/adapters/node/middlewares/serverStatic.js +119 -0
  59. package/dist/esm/base/adapters/node/middlewares/templates.js +114 -0
  60. package/dist/esm/base/adapters/node/node.js +197 -0
  61. package/dist/esm/base/adapters/node/polyfills/index.js +2 -0
  62. package/dist/esm/base/adapters/node/polyfills/install.js +48 -0
  63. package/dist/esm/base/adapters/node/polyfills/stream.js +316 -0
  64. package/dist/esm/base/constants.js +31 -0
  65. package/dist/esm/base/index.js +16 -0
  66. package/dist/esm/base/middlewares/customServer/base.js +199 -0
  67. package/dist/esm/base/middlewares/customServer/context.js +68 -0
  68. package/dist/esm/base/middlewares/customServer/index.js +220 -0
  69. package/dist/esm/base/middlewares/customServer/routerApi.js +26 -0
  70. package/dist/esm/base/middlewares/customServer/template.js +47 -0
  71. package/dist/esm/base/middlewares/faviconFallback.js +28 -0
  72. package/dist/esm/base/middlewares/frameworkHeader.js +27 -0
  73. package/dist/esm/base/middlewares/index.js +5 -0
  74. package/dist/esm/base/middlewares/logger.js +75 -0
  75. package/dist/esm/base/middlewares/monitor.js +157 -0
  76. package/dist/esm/base/middlewares/renderHandler/dataHandler.js +45 -0
  77. package/dist/esm/base/middlewares/renderHandler/index.js +167 -0
  78. package/dist/esm/base/middlewares/renderHandler/render.js +225 -0
  79. package/dist/esm/base/middlewares/renderHandler/serverTiming.js +21 -0
  80. package/dist/esm/base/middlewares/renderHandler/ssrCache.js +306 -0
  81. package/dist/esm/base/middlewares/renderHandler/ssrRender.js +269 -0
  82. package/dist/esm/base/serverBase.js +383 -0
  83. package/dist/esm/base/utils/debug.js +5 -0
  84. package/dist/esm/base/utils/entry.js +6 -0
  85. package/dist/esm/base/utils/env.js +20 -0
  86. package/dist/esm/base/utils/error.js +12 -0
  87. package/dist/esm/base/utils/index.js +7 -0
  88. package/dist/esm/base/utils/middlewareCollector.js +31 -0
  89. package/dist/esm/base/utils/request.js +39 -0
  90. package/dist/esm/base/utils/serverConfig.js +58 -0
  91. package/dist/esm/base/utils/transformStream.js +90 -0
  92. package/dist/esm/base/utils/warmup.js +9 -0
  93. package/dist/esm/core/index.js +1 -0
  94. package/dist/esm/core/loadPlugins.js +26 -0
  95. package/dist/esm/core/plugin.js +59 -0
  96. package/dist/esm/core/render.js +0 -0
  97. package/dist/esm/core/server.js +0 -0
  98. package/dist/esm/index.js +3 -2
  99. package/dist/esm-node/base/adapters/node/bff.js +46 -0
  100. package/dist/esm-node/base/adapters/node/hono.js +38 -0
  101. package/dist/esm-node/base/adapters/node/index.js +20 -0
  102. package/dist/esm-node/base/adapters/node/loadServer.js +22 -0
  103. package/dist/esm-node/base/adapters/node/middlewares/index.js +4 -0
  104. package/dist/esm-node/base/adapters/node/middlewares/mock.js +79 -0
  105. package/dist/esm-node/base/adapters/node/middlewares/serverManifest.js +55 -0
  106. package/dist/esm-node/base/adapters/node/middlewares/serverPublic.js +33 -0
  107. package/dist/esm-node/base/adapters/node/middlewares/serverStatic.js +75 -0
  108. package/dist/esm-node/base/adapters/node/middlewares/templates.js +32 -0
  109. package/dist/esm-node/base/adapters/node/node.js +101 -0
  110. package/dist/esm-node/base/adapters/node/polyfills/index.js +2 -0
  111. package/dist/esm-node/base/adapters/node/polyfills/install.js +48 -0
  112. package/dist/esm-node/base/adapters/node/polyfills/stream.js +126 -0
  113. package/dist/esm-node/base/constants.js +31 -0
  114. package/dist/esm-node/base/index.js +16 -0
  115. package/dist/esm-node/base/middlewares/customServer/base.js +147 -0
  116. package/dist/esm-node/base/middlewares/customServer/context.js +46 -0
  117. package/dist/esm-node/base/middlewares/customServer/index.js +112 -0
  118. package/dist/esm-node/base/middlewares/customServer/routerApi.js +20 -0
  119. package/dist/esm-node/base/middlewares/customServer/template.js +34 -0
  120. package/dist/esm-node/base/middlewares/faviconFallback.js +10 -0
  121. package/dist/esm-node/base/middlewares/frameworkHeader.js +7 -0
  122. package/dist/esm-node/base/middlewares/index.js +5 -0
  123. package/dist/esm-node/base/middlewares/logger.js +53 -0
  124. package/dist/esm-node/base/middlewares/monitor.js +63 -0
  125. package/dist/esm-node/base/middlewares/renderHandler/dataHandler.js +22 -0
  126. package/dist/esm-node/base/middlewares/renderHandler/index.js +73 -0
  127. package/dist/esm-node/base/middlewares/renderHandler/render.js +108 -0
  128. package/dist/esm-node/base/middlewares/renderHandler/serverTiming.js +16 -0
  129. package/dist/esm-node/base/middlewares/renderHandler/ssrCache.js +162 -0
  130. package/dist/esm-node/base/middlewares/renderHandler/ssrRender.js +177 -0
  131. package/dist/esm-node/base/serverBase.js +168 -0
  132. package/dist/esm-node/base/utils/debug.js +5 -0
  133. package/dist/esm-node/base/utils/entry.js +6 -0
  134. package/dist/esm-node/base/utils/env.js +20 -0
  135. package/dist/esm-node/base/utils/error.js +41 -0
  136. package/dist/esm-node/base/utils/index.js +7 -0
  137. package/dist/esm-node/base/utils/middlewareCollector.js +29 -0
  138. package/dist/esm-node/base/utils/request.js +38 -0
  139. package/dist/esm-node/base/utils/serverConfig.js +34 -0
  140. package/dist/esm-node/base/utils/transformStream.js +36 -0
  141. package/dist/esm-node/base/utils/warmup.js +9 -0
  142. package/dist/esm-node/core/index.js +1 -0
  143. package/dist/{esm → esm-node/core}/loadPlugins.js +4 -7
  144. package/dist/{esm → esm-node/core}/plugin.js +1 -42
  145. package/dist/esm-node/core/render.js +0 -0
  146. package/dist/esm-node/core/server.js +0 -0
  147. package/dist/esm-node/index.js +5 -0
  148. package/dist/esm-node/types/config/bff.js +0 -0
  149. package/dist/esm-node/types/config/dev.js +0 -0
  150. package/dist/esm-node/types/config/html.js +0 -0
  151. package/dist/esm-node/types/config/index.js +6 -0
  152. package/dist/esm-node/types/config/output.js +0 -0
  153. package/dist/esm-node/types/config/security.js +0 -0
  154. package/dist/esm-node/types/config/server.js +0 -0
  155. package/dist/esm-node/types/config/share.js +0 -0
  156. package/dist/esm-node/types/config/source.js +0 -0
  157. package/dist/esm-node/types/config/tools.js +0 -0
  158. package/dist/types/base/adapters/node/bff.d.ts +3 -0
  159. package/dist/types/base/adapters/node/hono.d.ts +22 -0
  160. package/dist/types/base/adapters/node/index.d.ts +6 -0
  161. package/dist/types/base/adapters/node/loadServer.d.ts +3 -0
  162. package/dist/types/base/adapters/node/middlewares/index.d.ts +4 -0
  163. package/dist/types/base/adapters/node/middlewares/mock.d.ts +5 -0
  164. package/dist/types/base/adapters/node/middlewares/serverManifest.d.ts +4 -0
  165. package/dist/types/base/adapters/node/middlewares/serverPublic.d.ts +7 -0
  166. package/dist/types/base/adapters/node/middlewares/serverStatic.d.ts +11 -0
  167. package/dist/types/base/adapters/node/middlewares/templates.d.ts +4 -0
  168. package/dist/types/base/adapters/node/node.d.ts +13 -0
  169. package/dist/types/base/adapters/node/polyfills/index.d.ts +2 -0
  170. package/dist/types/base/adapters/node/polyfills/install.d.ts +1 -0
  171. package/dist/types/base/adapters/node/polyfills/stream.d.ts +18 -0
  172. package/dist/types/base/constants.d.ts +24 -0
  173. package/dist/types/base/index.d.ts +7 -0
  174. package/dist/types/base/middlewares/customServer/base.d.ts +3 -0
  175. package/dist/types/base/middlewares/customServer/context.d.ts +7 -0
  176. package/dist/types/base/middlewares/customServer/index.d.ts +13 -0
  177. package/dist/types/base/middlewares/customServer/routerApi.d.ts +9 -0
  178. package/dist/types/base/middlewares/customServer/template.d.ts +11 -0
  179. package/dist/types/base/middlewares/faviconFallback.d.ts +2 -0
  180. package/dist/types/base/middlewares/frameworkHeader.d.ts +2 -0
  181. package/dist/types/base/middlewares/index.d.ts +5 -0
  182. package/dist/types/base/middlewares/logger.d.ts +2 -0
  183. package/dist/types/base/middlewares/monitor.d.ts +6 -0
  184. package/dist/types/base/middlewares/renderHandler/dataHandler.d.ts +5 -0
  185. package/dist/types/base/middlewares/renderHandler/index.d.ts +9 -0
  186. package/dist/types/base/middlewares/renderHandler/render.d.ts +12 -0
  187. package/dist/types/base/middlewares/renderHandler/serverTiming.d.ts +7 -0
  188. package/dist/types/base/middlewares/renderHandler/ssrCache.d.ts +28 -0
  189. package/dist/types/base/middlewares/renderHandler/ssrRender.d.ts +21 -0
  190. package/dist/types/base/serverBase.d.ts +70 -0
  191. package/dist/types/base/utils/debug.d.ts +1 -0
  192. package/dist/types/base/utils/entry.d.ts +2 -0
  193. package/dist/types/base/utils/env.d.ts +2 -0
  194. package/dist/types/base/utils/error.d.ts +1 -0
  195. package/dist/types/base/utils/index.d.ts +7 -0
  196. package/dist/types/base/utils/middlewareCollector.d.ts +12 -0
  197. package/dist/types/base/utils/request.d.ts +12 -0
  198. package/dist/types/base/utils/serverConfig.d.ts +14 -0
  199. package/dist/types/base/utils/transformStream.d.ts +5 -0
  200. package/dist/types/base/utils/warmup.d.ts +1 -0
  201. package/dist/types/core/index.d.ts +1 -0
  202. package/dist/types/core/loadPlugins.d.ts +3 -0
  203. package/dist/types/core/plugin.d.ts +202 -0
  204. package/dist/types/core/render.d.ts +17 -0
  205. package/dist/types/core/server.d.ts +44 -0
  206. package/dist/types/index.d.ts +3 -2
  207. package/package.json +44 -6
  208. package/dist/types/loadPlugins.d.ts +0 -5
  209. package/dist/types/plugin.d.ts +0 -493
@@ -0,0 +1,383 @@
1
+ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
+ import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
3
+ import { _ as _create_class } from "@swc/helpers/_/_create_class";
4
+ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
5
+ import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
6
+ import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
7
+ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
8
+ import { INTERNAL_SERVER_PLUGINS } from "@modern-js/utils/universal/constants";
9
+ import { Hono } from "hono";
10
+ import { AppContext, ConfigContext, serverManager, createPlugin } from "../core";
11
+ import { getRuntimeEnv } from "./utils";
12
+ var ServerBase = /* @__PURE__ */ function() {
13
+ "use strict";
14
+ function ServerBase2(options) {
15
+ _class_call_check(this, ServerBase2);
16
+ this.serverConfig = {};
17
+ this.options = options;
18
+ this.app = new Hono();
19
+ }
20
+ var _proto = ServerBase2.prototype;
21
+ _proto.init = function init() {
22
+ var _this = this;
23
+ return _async_to_generator(function() {
24
+ var options, runtimeEnv, _tmp, _tmp1;
25
+ return _ts_generator(this, function(_state) {
26
+ switch (_state.label) {
27
+ case 0:
28
+ options = _this.options;
29
+ runtimeEnv = getRuntimeEnv();
30
+ _tmp = runtimeEnv === "node";
31
+ if (!_tmp)
32
+ return [
33
+ 3,
34
+ 2
35
+ ];
36
+ return [
37
+ 4,
38
+ _this.initServerConfig(options)
39
+ ];
40
+ case 1:
41
+ _tmp = _state.sent();
42
+ _state.label = 2;
43
+ case 2:
44
+ _tmp;
45
+ return [
46
+ 4,
47
+ _this.injectContext(options)
48
+ ];
49
+ case 3:
50
+ _state.sent();
51
+ return [
52
+ 4,
53
+ _this.createHookRunner()
54
+ ];
55
+ case 4:
56
+ _this.runner = _state.sent();
57
+ _tmp1 = runtimeEnv === "node";
58
+ if (!_tmp1)
59
+ return [
60
+ 3,
61
+ 6
62
+ ];
63
+ return [
64
+ 4,
65
+ _this.initConfig(_this.runner, options)
66
+ ];
67
+ case 5:
68
+ _tmp1 = _state.sent();
69
+ _state.label = 6;
70
+ case 6:
71
+ _tmp1;
72
+ return [
73
+ 4,
74
+ _this.injectContext(options)
75
+ ];
76
+ case 7:
77
+ _state.sent();
78
+ return [
79
+ 4,
80
+ _this.runner.prepare()
81
+ ];
82
+ case 8:
83
+ _state.sent();
84
+ return [
85
+ 2,
86
+ _this
87
+ ];
88
+ }
89
+ });
90
+ })();
91
+ };
92
+ _proto.createHookRunner = function createHookRunner() {
93
+ var _this = this;
94
+ return _async_to_generator(function() {
95
+ var runtimeEnv, internalPlugins, _tmp, externalPlugins, loadedPlugins, hooksRunner;
96
+ return _ts_generator(this, function(_state) {
97
+ switch (_state.label) {
98
+ case 0:
99
+ serverManager.clear();
100
+ runtimeEnv = getRuntimeEnv();
101
+ if (!(runtimeEnv === "node"))
102
+ return [
103
+ 3,
104
+ 2
105
+ ];
106
+ return [
107
+ 4,
108
+ _this.loadInternalPlugins()
109
+ ];
110
+ case 1:
111
+ _tmp = _state.sent();
112
+ return [
113
+ 3,
114
+ 3
115
+ ];
116
+ case 2:
117
+ _tmp = [];
118
+ _state.label = 3;
119
+ case 3:
120
+ internalPlugins = _tmp;
121
+ externalPlugins = _this.loadExternalPlugins();
122
+ loadedPlugins = _to_consumable_array(internalPlugins).concat(_to_consumable_array(externalPlugins));
123
+ loadedPlugins.forEach(function(p) {
124
+ serverManager.usePlugin(p);
125
+ });
126
+ return [
127
+ 4,
128
+ serverManager.init()
129
+ ];
130
+ case 4:
131
+ hooksRunner = _state.sent();
132
+ return [
133
+ 2,
134
+ hooksRunner
135
+ ];
136
+ }
137
+ });
138
+ })();
139
+ };
140
+ _proto.loadInternalPlugins = function loadInternalPlugins() {
141
+ var _this = this;
142
+ return _async_to_generator(function() {
143
+ var _this_options, tmp, plugins, appContext, pwd, loadPluginsModule, loadPlugins, internalPlugins;
144
+ return _ts_generator(this, function(_state) {
145
+ switch (_state.label) {
146
+ case 0:
147
+ _this_options = _this.options, tmp = _this_options.internalPlugins, plugins = tmp === void 0 ? INTERNAL_SERVER_PLUGINS : tmp, appContext = _this_options.appContext, pwd = _this_options.pwd;
148
+ loadPluginsModule = "../core/loadPlugins";
149
+ return [
150
+ 4,
151
+ import(loadPluginsModule)
152
+ ];
153
+ case 1:
154
+ loadPlugins = _state.sent().loadPlugins;
155
+ internalPlugins = loadPlugins(appContext.appDirectory || pwd, plugins);
156
+ return [
157
+ 2,
158
+ internalPlugins
159
+ ];
160
+ }
161
+ });
162
+ })();
163
+ };
164
+ _proto.loadExternalPlugins = function loadExternalPlugins() {
165
+ var _this_options = this.options, _this_options_plugins = _this_options.plugins, plugins = _this_options_plugins === void 0 ? [] : _this_options_plugins;
166
+ var configPlugins = this.serverConfig.plugins || [];
167
+ var externalPlugins = _to_consumable_array(plugins).concat(_to_consumable_array(configPlugins));
168
+ return externalPlugins.map(function(plugin) {
169
+ return createPlugin(plugin.setup, plugin);
170
+ });
171
+ };
172
+ _proto.initServerConfig = function initServerConfig(options) {
173
+ var _this = this;
174
+ return _async_to_generator(function() {
175
+ var pwd, serverConfigFile, utilsModuleName, _ref, getServerConfigPath, requireConfig, serverConfigPath, serverConfig;
176
+ return _ts_generator(this, function(_state) {
177
+ switch (_state.label) {
178
+ case 0:
179
+ pwd = options.pwd, serverConfigFile = options.serverConfigFile;
180
+ utilsModuleName = "./utils/serverConfig";
181
+ return [
182
+ 4,
183
+ import(utilsModuleName)
184
+ ];
185
+ case 1:
186
+ _ref = _state.sent(), getServerConfigPath = _ref.getServerConfigPath, requireConfig = _ref.requireConfig;
187
+ return [
188
+ 4,
189
+ getServerConfigPath(pwd, serverConfigFile)
190
+ ];
191
+ case 2:
192
+ serverConfigPath = _state.sent();
193
+ serverConfig = requireConfig(serverConfigPath);
194
+ _this.serverConfig = serverConfig;
195
+ return [
196
+ 2
197
+ ];
198
+ }
199
+ });
200
+ })();
201
+ };
202
+ _proto.injectContext = function injectContext(options) {
203
+ var _this = this;
204
+ return _async_to_generator(function() {
205
+ var appContext, config, pwd;
206
+ return _ts_generator(this, function(_state) {
207
+ switch (_state.label) {
208
+ case 0:
209
+ return [
210
+ 4,
211
+ _this.initAppContext()
212
+ ];
213
+ case 1:
214
+ appContext = _state.sent();
215
+ config = options.config, pwd = options.pwd;
216
+ ConfigContext.set(config);
217
+ AppContext.set(_object_spread_props(_object_spread({}, appContext), {
218
+ serverBase: _this,
219
+ distDirectory: pwd
220
+ }));
221
+ return [
222
+ 2
223
+ ];
224
+ }
225
+ });
226
+ })();
227
+ };
228
+ _proto.initAppContext = function initAppContext() {
229
+ var _this = this;
230
+ return _async_to_generator(function() {
231
+ var options, pwd, _options_plugins, plugins, appContext, serverPlugins;
232
+ return _ts_generator(this, function(_state) {
233
+ options = _this.options;
234
+ pwd = options.pwd, _options_plugins = options.plugins, plugins = _options_plugins === void 0 ? [] : _options_plugins, appContext = options.appContext;
235
+ serverPlugins = plugins.map(function(p) {
236
+ return {
237
+ server: p
238
+ };
239
+ });
240
+ return [
241
+ 2,
242
+ {
243
+ appDirectory: (appContext === null || appContext === void 0 ? void 0 : appContext.appDirectory) || "",
244
+ apiDirectory: appContext === null || appContext === void 0 ? void 0 : appContext.apiDirectory,
245
+ lambdaDirectory: appContext === null || appContext === void 0 ? void 0 : appContext.lambdaDirectory,
246
+ sharedDirectory: appContext.sharedDirectory || "",
247
+ distDirectory: pwd,
248
+ plugins: serverPlugins
249
+ }
250
+ ];
251
+ });
252
+ })();
253
+ };
254
+ _proto.runConfigHook = function runConfigHook(runner, serverConfig) {
255
+ var newServerConfig = runner.config(serverConfig || {});
256
+ return newServerConfig;
257
+ };
258
+ _proto.initConfig = function initConfig(runner, options) {
259
+ var _this = this;
260
+ return _async_to_generator(function() {
261
+ var path, utilsModuleName, _ref, ensureAbsolutePath, OUTPUT_CONFIG_FILE, configModuleName, loadConfig, pwd, config, serverConfig, finalServerConfig, resolvedConfigPath;
262
+ return _ts_generator(this, function(_state) {
263
+ switch (_state.label) {
264
+ case 0:
265
+ return [
266
+ 4,
267
+ import("path").catch(function(_) {
268
+ return {};
269
+ })
270
+ ];
271
+ case 1:
272
+ path = _state.sent();
273
+ utilsModuleName = "@modern-js/utils";
274
+ return [
275
+ 4,
276
+ import(utilsModuleName)
277
+ ];
278
+ case 2:
279
+ _ref = _state.sent(), ensureAbsolutePath = _ref.ensureAbsolutePath, OUTPUT_CONFIG_FILE = _ref.OUTPUT_CONFIG_FILE;
280
+ configModuleName = "./utils/serverConfig";
281
+ return [
282
+ 4,
283
+ import(configModuleName)
284
+ ];
285
+ case 3:
286
+ loadConfig = _state.sent().loadConfig;
287
+ pwd = options.pwd, config = options.config;
288
+ serverConfig = _this.serverConfig;
289
+ finalServerConfig = _this.runConfigHook(runner, serverConfig);
290
+ resolvedConfigPath = ensureAbsolutePath(pwd, path.join(config.output.path || "dist", OUTPUT_CONFIG_FILE));
291
+ options.config = loadConfig({
292
+ cliConfig: config,
293
+ serverConfig: finalServerConfig,
294
+ resolvedConfigPath
295
+ });
296
+ return [
297
+ 2
298
+ ];
299
+ }
300
+ });
301
+ })();
302
+ };
303
+ _create_class(ServerBase2, [
304
+ {
305
+ key: "all",
306
+ get: function get() {
307
+ return this.app.all.bind(this.app);
308
+ }
309
+ },
310
+ {
311
+ key: "use",
312
+ get: function get() {
313
+ return this.app.use.bind(this.app);
314
+ }
315
+ },
316
+ {
317
+ key: "get",
318
+ get: function get() {
319
+ return this.app.get.bind(this.app);
320
+ }
321
+ },
322
+ {
323
+ key: "post",
324
+ get: function get() {
325
+ return this.app.post.bind(this.app);
326
+ }
327
+ },
328
+ {
329
+ key: "put",
330
+ get: function get() {
331
+ return this.app.put.bind(this.app);
332
+ }
333
+ },
334
+ {
335
+ key: "delete",
336
+ get: function get() {
337
+ return this.app.delete.bind(this.app);
338
+ }
339
+ },
340
+ {
341
+ key: "patch",
342
+ get: function get() {
343
+ return this.app.patch.bind(this.app);
344
+ }
345
+ },
346
+ {
347
+ key: "handle",
348
+ get: function get() {
349
+ return this.app.fetch.bind(this.app);
350
+ }
351
+ },
352
+ {
353
+ key: "request",
354
+ get: function get() {
355
+ return this.app.request.bind(this.app);
356
+ }
357
+ },
358
+ {
359
+ key: "notFound",
360
+ get: function get() {
361
+ return this.app.notFound.bind(this.app);
362
+ }
363
+ },
364
+ {
365
+ key: "onError",
366
+ get: function get() {
367
+ return this.app.onError.bind(this.app);
368
+ }
369
+ }
370
+ ]);
371
+ return ServerBase2;
372
+ }();
373
+ function createServerBase(options) {
374
+ if (options == null) {
375
+ throw new Error("can not start server without options");
376
+ }
377
+ var server = new ServerBase(options);
378
+ return server;
379
+ }
380
+ export {
381
+ ServerBase,
382
+ createServerBase
383
+ };
@@ -0,0 +1,5 @@
1
+ import { createDebugger } from "@modern-js/utils";
2
+ var debug = createDebugger("prod-server");
3
+ export {
4
+ debug
5
+ };
@@ -0,0 +1,6 @@
1
+ var sortRoutes = function(route1, route2) {
2
+ return route2.urlPath.length - route1.urlPath.length;
3
+ };
4
+ export {
5
+ sortRoutes
6
+ };
@@ -0,0 +1,20 @@
1
+ var getRuntimeEnv = function() {
2
+ var _globalThis_process_release, _globalThis_process, _globalThis;
3
+ if (((_globalThis = globalThis) === null || _globalThis === void 0 ? void 0 : (_globalThis_process = _globalThis.process) === null || _globalThis_process === void 0 ? void 0 : (_globalThis_process_release = _globalThis_process.release) === null || _globalThis_process_release === void 0 ? void 0 : _globalThis_process_release.name) === "node") {
4
+ return "node";
5
+ }
6
+ return "other";
7
+ };
8
+ var checkIsProd = function() {
9
+ var env = getRuntimeEnv();
10
+ switch (env) {
11
+ case "node":
12
+ return process.env.NODE_ENV === "production";
13
+ default:
14
+ return false;
15
+ }
16
+ };
17
+ export {
18
+ checkIsProd,
19
+ getRuntimeEnv
20
+ };
@@ -0,0 +1,12 @@
1
+ var ERROR_PAGE_TEXT = {
2
+ 404: "This page could not be found.",
3
+ 500: "Internal Server Error."
4
+ };
5
+ var createErrorHtml = function(status) {
6
+ var text = ERROR_PAGE_TEXT[status] || "";
7
+ var title = "".concat(status, ": ").concat(text);
8
+ return '<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="utf-8">\n <meta name="viewport" content="width=device-width">\n <title>'.concat(title, '</title>\n <style>\n html,body {\n margin: 0;\n }\n\n .page-container {\n color: #000;\n background: #fff;\n height: 100vh;\n text-align: center;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n </style>\n </head>\n <body>\n <div class="page-container">\n <h1>').concat(status, "</h1>\n <div>").concat(text, "</div>\n </body>\n </html>\n ");
9
+ };
10
+ export {
11
+ createErrorHtml
12
+ };
@@ -0,0 +1,7 @@
1
+ export * from "./env";
2
+ export * from "./request";
3
+ export * from "./transformStream";
4
+ export * from "./middlewareCollector";
5
+ export * from "./error";
6
+ export * from "./warmup";
7
+ export * from "./entry";
@@ -0,0 +1,31 @@
1
+ var mergeExtension = function(users) {
2
+ var output = [];
3
+ return {
4
+ middleware: output.concat(users)
5
+ };
6
+ };
7
+ var createMiddlewareCollecter = function() {
8
+ var webMiddlewares = [];
9
+ var apiMiddlewares = [];
10
+ var addWebMiddleware = function(input) {
11
+ webMiddlewares.push(input);
12
+ };
13
+ var addAPIMiddleware = function(input) {
14
+ apiMiddlewares.push(input);
15
+ };
16
+ var getMiddlewares = function() {
17
+ return {
18
+ web: webMiddlewares,
19
+ api: apiMiddlewares
20
+ };
21
+ };
22
+ return {
23
+ getMiddlewares,
24
+ addWebMiddleware,
25
+ addAPIMiddleware
26
+ };
27
+ };
28
+ export {
29
+ createMiddlewareCollecter,
30
+ mergeExtension
31
+ };
@@ -0,0 +1,39 @@
1
+ import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
2
+ function parseQuery(request) {
3
+ var url = request.url;
4
+ var q = url.split("?")[1];
5
+ var query = {};
6
+ if (q) {
7
+ q.split("&").forEach(function(item) {
8
+ var _item_split = _sliced_to_array(item.split("="), 2), key = _item_split[0], value = _item_split[1];
9
+ query[key] = value;
10
+ });
11
+ }
12
+ return query;
13
+ }
14
+ function parseHeaders(request) {
15
+ var headersData = {};
16
+ request.headers.forEach(function(value, key) {
17
+ headersData[key] = value;
18
+ });
19
+ return headersData;
20
+ }
21
+ function getPathname(request) {
22
+ var match = request.url.match(/^https?:\/\/[^/]+(\/[^?]*)/);
23
+ return match ? match[1] : "/";
24
+ }
25
+ function getHost(request) {
26
+ var headers = request.headers;
27
+ var host = headers.get("X-Forwarded-Host");
28
+ if (!host) {
29
+ host = headers.get("Host");
30
+ }
31
+ host = (host === null || host === void 0 ? void 0 : host.split(/\s*,\s*/, 1)[0]) || "undefined";
32
+ return host;
33
+ }
34
+ export {
35
+ getHost,
36
+ getPathname,
37
+ parseHeaders,
38
+ parseQuery
39
+ };
@@ -0,0 +1,58 @@
1
+ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
+ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
3
+ import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
4
+ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
5
+ import { compatRequire, fs, DEFAULT_SERVER_CONFIG } from "@modern-js/utils";
6
+ import mergeDeep from "merge-deep";
7
+ var getServerConfigPath = function() {
8
+ var _ref = _async_to_generator(function(distDirectory) {
9
+ var serverConfigFile, path, serverConfigPath;
10
+ var _arguments = arguments;
11
+ return _ts_generator(this, function(_state) {
12
+ switch (_state.label) {
13
+ case 0:
14
+ serverConfigFile = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : DEFAULT_SERVER_CONFIG;
15
+ return [
16
+ 4,
17
+ import("path")
18
+ ];
19
+ case 1:
20
+ path = _state.sent();
21
+ serverConfigPath = path.join(distDirectory, serverConfigFile);
22
+ return [
23
+ 2,
24
+ "".concat(serverConfigPath, ".js")
25
+ ];
26
+ }
27
+ });
28
+ });
29
+ return function getServerConfigPath2(distDirectory) {
30
+ return _ref.apply(this, arguments);
31
+ };
32
+ }();
33
+ var requireConfig = function(serverConfigPath) {
34
+ if (fs.pathExistsSync(serverConfigPath)) {
35
+ return compatRequire(serverConfigPath);
36
+ }
37
+ return {};
38
+ };
39
+ var loadConfig = function(param) {
40
+ var cliConfig = param.cliConfig, serverConfig = param.serverConfig, resolvedConfigPath = param.resolvedConfigPath;
41
+ var config = null;
42
+ if (process.env.NODE_ENV === "production") {
43
+ var resolvedConfig = requireConfig(resolvedConfigPath);
44
+ config = mergeDeep(_object_spread_props(_object_spread({}, resolvedConfig), {
45
+ plugins: []
46
+ }), serverConfig, cliConfig);
47
+ } else {
48
+ config = mergeDeep(_object_spread_props(_object_spread({}, cliConfig), {
49
+ plugins: []
50
+ }), serverConfig);
51
+ }
52
+ return config;
53
+ };
54
+ export {
55
+ getServerConfigPath,
56
+ loadConfig,
57
+ requireConfig
58
+ };
@@ -0,0 +1,90 @@
1
+ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
+ import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
+ function createTransformStream(fn) {
4
+ var decoder = new TextDecoder();
5
+ var encoder = new TextEncoder();
6
+ return new TransformStream({
7
+ transform: function transform(chunk, controller) {
8
+ return _async_to_generator(function() {
9
+ var content, newContent;
10
+ return _ts_generator(this, function(_state) {
11
+ switch (_state.label) {
12
+ case 0:
13
+ content = decoder.decode(chunk);
14
+ return [
15
+ 4,
16
+ fn(content)
17
+ ];
18
+ case 1:
19
+ newContent = _state.sent();
20
+ controller.enqueue(encoder.encode(newContent));
21
+ return [
22
+ 2
23
+ ];
24
+ }
25
+ });
26
+ })();
27
+ }
28
+ });
29
+ }
30
+ function transformResponse(response, transformCb) {
31
+ var readable = null;
32
+ if (response.body) {
33
+ var stream = createTransformStream(function() {
34
+ var _ref = _async_to_generator(function(before) {
35
+ return _ts_generator(this, function(_state) {
36
+ if (Array.isArray(transformCb)) {
37
+ return [
38
+ 2,
39
+ transformCb.reduce(function() {
40
+ var _ref2 = _async_to_generator(function(before2, cb) {
41
+ return _ts_generator(this, function(_state2) {
42
+ switch (_state2.label) {
43
+ case 0:
44
+ return [
45
+ 4,
46
+ before2
47
+ ];
48
+ case 1:
49
+ return [
50
+ 2,
51
+ cb.apply(void 0, [
52
+ _state2.sent()
53
+ ])
54
+ ];
55
+ }
56
+ });
57
+ });
58
+ return function(before2, cb) {
59
+ return _ref2.apply(this, arguments);
60
+ };
61
+ }(), Promise.resolve(before))
62
+ ];
63
+ } else {
64
+ return [
65
+ 2,
66
+ transformCb(before)
67
+ ];
68
+ }
69
+ return [
70
+ 2
71
+ ];
72
+ });
73
+ });
74
+ return function(before) {
75
+ return _ref.apply(this, arguments);
76
+ };
77
+ }());
78
+ response.body.pipeThrough(stream);
79
+ readable = stream.readable;
80
+ }
81
+ return new Response(readable, {
82
+ status: response.status,
83
+ headers: response.headers,
84
+ statusText: response.statusText
85
+ });
86
+ }
87
+ export {
88
+ createTransformStream,
89
+ transformResponse
90
+ };
@@ -0,0 +1,9 @@
1
+ function warmup(bundles) {
2
+ bundles.forEach(function(bundle) {
3
+ bundle && import(bundle).catch(function(_) {
4
+ });
5
+ });
6
+ }
7
+ export {
8
+ warmup
9
+ };
@@ -0,0 +1 @@
1
+ export * from "./plugin";
@@ -0,0 +1,26 @@
1
+ import { compatRequire, getInternalPlugins, tryResolve } from "@modern-js/utils";
2
+ import { createPlugin } from "../core/plugin";
3
+ var resolvePlugin = function(p, appDirectory) {
4
+ var isPluginInstance = typeof p !== "string";
5
+ if (isPluginInstance) {
6
+ return {
7
+ module: createPlugin(p.setup, p)
8
+ };
9
+ }
10
+ var pluginPath = tryResolve(p, appDirectory);
11
+ var module = compatRequire(pluginPath);
12
+ var pluginInstance = module();
13
+ return {
14
+ module: createPlugin(pluginInstance.setup, pluginInstance)
15
+ };
16
+ };
17
+ var loadPlugins = function(appDirectory, internalPlugins) {
18
+ var loadedPlugins = getInternalPlugins(appDirectory, internalPlugins);
19
+ return loadedPlugins.map(function(plugin) {
20
+ var module = resolvePlugin(plugin, appDirectory).module;
21
+ return module;
22
+ });
23
+ };
24
+ export {
25
+ loadPlugins
26
+ };