@modern-js/prod-server 2.6.0 → 2.6.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.
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/libs/{serve-file.js → serveFile.js} +3 -3
- package/dist/cjs/server/index.js +6 -4
- package/dist/cjs/server/{modern-server.js → modernServer.js} +8 -9
- package/dist/cjs/server/{modern-server-split.js → modernServerSplit.js} +8 -8
- package/dist/cjs/{worker-server.js → workerServer.js} +3 -3
- package/dist/esm/index.js +1 -1
- package/dist/esm/server/index.js +5 -3
- package/dist/esm/server/{modern-server.js → modernServer.js} +4 -5
- package/dist/esm/server/modernServerSplit.js +360 -0
- package/dist/esm-node/index.js +1 -1
- package/dist/esm-node/server/index.js +5 -3
- package/dist/esm-node/server/{modern-server.js → modernServer.js} +3 -4
- package/dist/esm-node/server/{modern-server-split.js → modernServerSplit.js} +1 -1
- package/dist/js/modern/constants.js +35 -0
- package/dist/js/modern/index.js +18 -0
- package/dist/js/modern/libs/context/context.js +160 -0
- package/dist/js/modern/libs/context/index.js +6 -0
- package/dist/js/modern/libs/hook-api/index.js +134 -0
- package/dist/js/modern/libs/hook-api/route.js +20 -0
- package/dist/js/modern/libs/hook-api/template.js +73 -0
- package/dist/js/modern/libs/loadConfig.js +62 -0
- package/dist/js/modern/libs/logger.js +111 -0
- package/dist/js/modern/libs/metrics.js +11 -0
- package/dist/js/modern/libs/proxy.js +92 -0
- package/dist/js/modern/libs/render/cache/__tests__/cache.fun.test.js +114 -0
- package/dist/js/modern/libs/render/cache/__tests__/cache.test.js +254 -0
- package/dist/js/modern/libs/render/cache/__tests__/cacheable.js +47 -0
- package/dist/js/modern/libs/render/cache/__tests__/error-configuration.js +37 -0
- package/dist/js/modern/libs/render/cache/__tests__/matched-cache.js +91 -0
- package/dist/js/modern/libs/render/cache/index.js +115 -0
- package/dist/js/modern/libs/render/cache/page-caches/index.js +32 -0
- package/dist/js/modern/libs/render/cache/page-caches/lru.js +29 -0
- package/dist/js/modern/libs/render/cache/spr.js +248 -0
- package/dist/js/modern/libs/render/cache/type.js +0 -0
- package/dist/js/modern/libs/render/cache/util.js +102 -0
- package/dist/js/modern/libs/render/index.js +86 -0
- package/dist/js/modern/libs/render/measure.js +68 -0
- package/dist/js/modern/libs/render/reader.js +107 -0
- package/dist/js/modern/libs/render/ssr.js +100 -0
- package/dist/js/modern/libs/render/static.js +60 -0
- package/dist/js/modern/libs/render/type.js +9 -0
- package/dist/js/modern/libs/route/index.js +54 -0
- package/dist/js/modern/libs/route/matcher.js +87 -0
- package/dist/js/modern/libs/route/route.js +16 -0
- package/dist/js/modern/libs/serve-file.js +67 -0
- package/dist/js/modern/server/index.js +208 -0
- package/dist/js/modern/server/modern-server-split.js +74 -0
- package/dist/js/modern/server/modern-server.js +554 -0
- package/dist/js/modern/type.js +0 -0
- package/dist/js/modern/utils.js +136 -0
- package/dist/js/modern/worker-server.js +89 -0
- package/dist/js/node/constants.js +62 -0
- package/dist/js/node/index.js +44 -0
- package/dist/js/node/libs/context/context.js +189 -0
- package/dist/js/node/libs/context/index.js +30 -0
- package/dist/js/node/libs/hook-api/index.js +164 -0
- package/dist/js/node/libs/hook-api/route.js +43 -0
- package/dist/js/node/libs/hook-api/template.js +97 -0
- package/dist/js/node/libs/loadConfig.js +91 -0
- package/dist/js/node/libs/logger.js +133 -0
- package/dist/js/node/libs/metrics.js +34 -0
- package/dist/js/node/libs/proxy.js +114 -0
- package/dist/js/node/libs/render/cache/__tests__/cache.fun.test.js +115 -0
- package/dist/js/node/libs/render/cache/__tests__/cache.test.js +245 -0
- package/dist/js/node/libs/render/cache/__tests__/cacheable.js +70 -0
- package/dist/js/node/libs/render/cache/__tests__/error-configuration.js +60 -0
- package/dist/js/node/libs/render/cache/__tests__/matched-cache.js +114 -0
- package/dist/js/node/libs/render/cache/index.js +134 -0
- package/dist/js/node/libs/render/cache/page-caches/index.js +55 -0
- package/dist/js/node/libs/render/cache/page-caches/lru.js +58 -0
- package/dist/js/node/libs/render/cache/spr.js +270 -0
- package/dist/js/node/libs/render/cache/type.js +15 -0
- package/dist/js/node/libs/render/cache/util.js +138 -0
- package/dist/js/node/libs/render/index.js +115 -0
- package/dist/js/node/libs/render/measure.js +90 -0
- package/dist/js/node/libs/render/reader.js +140 -0
- package/dist/js/node/libs/render/ssr.js +123 -0
- package/dist/js/node/libs/render/static.js +89 -0
- package/dist/js/node/libs/render/type.js +32 -0
- package/dist/js/node/libs/route/index.js +78 -0
- package/dist/js/node/libs/route/matcher.js +106 -0
- package/dist/js/node/libs/route/route.js +39 -0
- package/dist/js/node/libs/serve-file.js +97 -0
- package/dist/js/node/server/index.js +219 -0
- package/dist/js/node/server/modern-server-split.js +97 -0
- package/dist/js/node/server/modern-server.js +559 -0
- package/dist/js/node/type.js +15 -0
- package/dist/js/node/utils.js +166 -0
- package/dist/js/node/worker-server.js +113 -0
- package/dist/js/treeshaking/constants.js +29 -0
- package/dist/js/treeshaking/index.js +13 -0
- package/dist/js/treeshaking/libs/context/context.js +274 -0
- package/dist/js/treeshaking/libs/context/index.js +5 -0
- package/dist/js/treeshaking/libs/hook-api/index.js +281 -0
- package/dist/js/treeshaking/libs/hook-api/route.js +68 -0
- package/dist/js/treeshaking/libs/hook-api/template.js +127 -0
- package/dist/js/treeshaking/libs/loadConfig.js +82 -0
- package/dist/js/treeshaking/libs/logger.js +205 -0
- package/dist/js/treeshaking/libs/metrics.js +6 -0
- package/dist/js/treeshaking/libs/proxy.js +244 -0
- package/dist/js/treeshaking/libs/render/cache/__tests__/cache.fun.test.js +291 -0
- package/dist/js/treeshaking/libs/render/cache/__tests__/cache.test.js +781 -0
- package/dist/js/treeshaking/libs/render/cache/__tests__/cacheable.js +67 -0
- package/dist/js/treeshaking/libs/render/cache/__tests__/error-configuration.js +45 -0
- package/dist/js/treeshaking/libs/render/cache/__tests__/matched-cache.js +147 -0
- package/dist/js/treeshaking/libs/render/cache/index.js +346 -0
- package/dist/js/treeshaking/libs/render/cache/page-caches/index.js +154 -0
- package/dist/js/treeshaking/libs/render/cache/page-caches/lru.js +84 -0
- package/dist/js/treeshaking/libs/render/cache/spr.js +492 -0
- package/dist/js/treeshaking/libs/render/cache/type.js +1 -0
- package/dist/js/treeshaking/libs/render/cache/util.js +280 -0
- package/dist/js/treeshaking/libs/render/index.js +234 -0
- package/dist/js/treeshaking/libs/render/measure.js +146 -0
- package/dist/js/treeshaking/libs/render/reader.js +339 -0
- package/dist/js/treeshaking/libs/render/ssr.js +223 -0
- package/dist/js/treeshaking/libs/render/static.js +216 -0
- package/dist/js/treeshaking/libs/render/type.js +7 -0
- package/dist/js/treeshaking/libs/route/index.js +130 -0
- package/dist/js/treeshaking/libs/route/matcher.js +143 -0
- package/dist/js/treeshaking/libs/route/route.js +40 -0
- package/dist/js/treeshaking/libs/serve-file.js +184 -0
- package/dist/js/treeshaking/server/index.js +505 -0
- package/dist/js/treeshaking/server/modern-server.js +1089 -0
- package/dist/js/treeshaking/type.js +1 -0
- package/dist/js/treeshaking/utils.js +147 -0
- package/dist/js/treeshaking/worker-server.js +233 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/libs/context/context.d.ts +1 -1
- package/dist/types/type.d.ts +8 -1
- package/dist/types/utils.d.ts +1 -1
- package/package.json +14 -14
- /package/dist/esm/libs/{serve-file.js → serveFile.js} +0 -0
- /package/dist/esm/{worker-server.js → workerServer.js} +0 -0
- /package/dist/esm-node/libs/{serve-file.js → serveFile.js} +0 -0
- /package/dist/esm-node/{worker-server.js → workerServer.js} +0 -0
- /package/dist/{esm → js/treeshaking}/server/modern-server-split.js +0 -0
- /package/dist/types/libs/{serve-file.d.ts → serveFile.d.ts} +0 -0
- /package/dist/types/server/{modern-server.d.ts → modernServer.d.ts} +0 -0
- /package/dist/types/server/{modern-server-split.d.ts → modernServerSplit.d.ts} +0 -0
- /package/dist/types/{worker-server.d.ts → workerServer.d.ts} +0 -0
package/dist/cjs/index.js
CHANGED
|
@@ -18,14 +18,14 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var src_exports = {};
|
|
20
20
|
__export(src_exports, {
|
|
21
|
-
ModernServer: () =>
|
|
21
|
+
ModernServer: () => import_modernServer.ModernServer,
|
|
22
22
|
Server: () => import_server.Server,
|
|
23
23
|
createProxyHandler: () => import_proxy.createProxyHandler,
|
|
24
24
|
default: () => src_default
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(src_exports);
|
|
27
27
|
var import_server = require("./server");
|
|
28
|
-
var
|
|
28
|
+
var import_modernServer = require("./server/modernServer");
|
|
29
29
|
var import_proxy = require("./libs/proxy");
|
|
30
30
|
__reExport(src_exports, require("./type"), module.exports);
|
|
31
31
|
__reExport(src_exports, require("./constants"), module.exports);
|
|
@@ -25,12 +25,12 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
25
25
|
mod
|
|
26
26
|
));
|
|
27
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
var
|
|
29
|
-
__export(
|
|
28
|
+
var serveFile_exports = {};
|
|
29
|
+
__export(serveFile_exports, {
|
|
30
30
|
createStaticFileHandler: () => createStaticFileHandler,
|
|
31
31
|
faviconFallbackHandler: () => faviconFallbackHandler
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
33
|
+
module.exports = __toCommonJS(serveFile_exports);
|
|
34
34
|
var import_serve_static = __toESM(require("serve-static"));
|
|
35
35
|
var import_utils = require("@modern-js/utils");
|
|
36
36
|
var import_utils2 = require("../utils");
|
package/dist/cjs/server/index.js
CHANGED
|
@@ -37,10 +37,10 @@ var import_server_core = require("@modern-js/server-core");
|
|
|
37
37
|
var import_metrics = require("../libs/metrics");
|
|
38
38
|
var import_loadConfig = require("../libs/loadConfig");
|
|
39
39
|
var import_utils2 = require("../utils");
|
|
40
|
-
var
|
|
40
|
+
var import_modernServerSplit = require("./modernServerSplit");
|
|
41
41
|
class Server {
|
|
42
42
|
constructor(options) {
|
|
43
|
-
this.serverImpl =
|
|
43
|
+
this.serverImpl = import_modernServerSplit.createProdServer;
|
|
44
44
|
options.logger = options.logger || new import_utils.Logger({
|
|
45
45
|
level: "warn"
|
|
46
46
|
});
|
|
@@ -172,14 +172,16 @@ class Server {
|
|
|
172
172
|
}
|
|
173
173
|
initAppContext() {
|
|
174
174
|
const { options } = this;
|
|
175
|
-
const { pwd: appDirectory, plugins = [], config } = options;
|
|
175
|
+
const { pwd: appDirectory, plugins = [], config, appContext } = options;
|
|
176
176
|
const serverPlugins = plugins.map((p) => ({
|
|
177
177
|
server: p
|
|
178
178
|
}));
|
|
179
179
|
return {
|
|
180
180
|
appDirectory,
|
|
181
|
+
apiDirectory: appContext == null ? void 0 : appContext.apiDirectory,
|
|
182
|
+
lambdaDirectory: appContext == null ? void 0 : appContext.lambdaDirectory,
|
|
183
|
+
sharedDirectory: (appContext == null ? void 0 : appContext.sharedDirectory) || import_path.default.resolve(appDirectory, import_utils.SHARED_DIR),
|
|
181
184
|
distDirectory: import_path.default.join(appDirectory, config.output.path || "dist"),
|
|
182
|
-
sharedDirectory: import_path.default.resolve(appDirectory, import_utils.SHARED_DIR),
|
|
183
185
|
plugins: serverPlugins
|
|
184
186
|
};
|
|
185
187
|
}
|
|
@@ -25,17 +25,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
25
25
|
mod
|
|
26
26
|
));
|
|
27
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
var
|
|
29
|
-
__export(
|
|
28
|
+
var modernServer_exports = {};
|
|
29
|
+
__export(modernServer_exports, {
|
|
30
30
|
ModernServer: () => ModernServer
|
|
31
31
|
});
|
|
32
|
-
module.exports = __toCommonJS(
|
|
32
|
+
module.exports = __toCommonJS(modernServer_exports);
|
|
33
33
|
var import_http = require("http");
|
|
34
34
|
var import_path = __toESM(require("path"));
|
|
35
35
|
var import_utils = require("@modern-js/utils");
|
|
36
36
|
var import_route = require("../libs/route");
|
|
37
37
|
var import_render = require("../libs/render");
|
|
38
|
-
var
|
|
38
|
+
var import_serveFile = require("../libs/serveFile");
|
|
39
39
|
var import_utils2 = require("../utils");
|
|
40
40
|
var reader = __toESM(require("../libs/render/reader"));
|
|
41
41
|
var import_proxy = require("../libs/proxy");
|
|
@@ -43,7 +43,6 @@ var import_context = require("../libs/context");
|
|
|
43
43
|
var import_template = require("../libs/hook-api/template");
|
|
44
44
|
var import_constants = require("../constants");
|
|
45
45
|
var import_hook_api = require("../libs/hook-api");
|
|
46
|
-
const API_DIR = "./api";
|
|
47
46
|
const SERVER_DIR = "./server";
|
|
48
47
|
class ModernServer {
|
|
49
48
|
constructor({
|
|
@@ -101,7 +100,7 @@ class ModernServer {
|
|
|
101
100
|
this.conf.output || {},
|
|
102
101
|
this.conf.html
|
|
103
102
|
);
|
|
104
|
-
this.staticFileHandler = (0,
|
|
103
|
+
this.staticFileHandler = (0, import_serveFile.createStaticFileHandler)(
|
|
105
104
|
[
|
|
106
105
|
{
|
|
107
106
|
path: staticPathRegExp,
|
|
@@ -119,7 +118,7 @@ class ModernServer {
|
|
|
119
118
|
});
|
|
120
119
|
await this.setupBeforeProdMiddleware();
|
|
121
120
|
this.addHandler(this.staticFileHandler);
|
|
122
|
-
this.addHandler(
|
|
121
|
+
this.addHandler(import_serveFile.faviconFallbackHandler);
|
|
123
122
|
this.addBeforeRouteHandler();
|
|
124
123
|
this.addHandler(this.routeHandler.bind(this));
|
|
125
124
|
this.compose();
|
|
@@ -212,13 +211,12 @@ class ModernServer {
|
|
|
212
211
|
const { getMiddlewares, ...collector } = (0, import_utils2.createMiddlewareCollecter)();
|
|
213
212
|
await runner.gather(collector);
|
|
214
213
|
const { api: pluginAPIExt, web: pluginWebExt } = getMiddlewares();
|
|
215
|
-
const apiDir = import_path.default.join(workDir, API_DIR);
|
|
216
214
|
const serverDir = import_path.default.join(workDir, SERVER_DIR);
|
|
217
215
|
if (await import_utils.fs.pathExists(import_path.default.join(serverDir)) && !onlyApi) {
|
|
218
216
|
const webExtension = (0, import_utils2.mergeExtension)(pluginWebExt);
|
|
219
217
|
this.frameWebHandler = await this.prepareWebHandler(webExtension);
|
|
220
218
|
}
|
|
221
|
-
if (
|
|
219
|
+
if (!onlyWeb) {
|
|
222
220
|
const apiExtension = (0, import_utils2.mergeExtension)(pluginAPIExt);
|
|
223
221
|
this.frameAPIHandler = await this.prepareAPIHandler(apiExtension);
|
|
224
222
|
}
|
|
@@ -243,6 +241,7 @@ class ModernServer {
|
|
|
243
241
|
pwd: workDir,
|
|
244
242
|
config: extension,
|
|
245
243
|
prefix: Array.isArray(prefix) ? prefix[0] : prefix,
|
|
244
|
+
httpMethodDecider: bff == null ? void 0 : bff.httpMethodDecider,
|
|
246
245
|
render: this.render.bind(this)
|
|
247
246
|
},
|
|
248
247
|
{ onLast: () => null }
|
|
@@ -15,13 +15,13 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
15
|
return to;
|
|
16
16
|
};
|
|
17
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var
|
|
19
|
-
__export(
|
|
18
|
+
var modernServerSplit_exports = {};
|
|
19
|
+
__export(modernServerSplit_exports, {
|
|
20
20
|
createProdServer: () => createProdServer
|
|
21
21
|
});
|
|
22
|
-
module.exports = __toCommonJS(
|
|
23
|
-
var
|
|
24
|
-
class ModernSSRServer extends
|
|
22
|
+
module.exports = __toCommonJS(modernServerSplit_exports);
|
|
23
|
+
var import_modernServer = require("./modernServer");
|
|
24
|
+
class ModernSSRServer extends import_modernServer.ModernServer {
|
|
25
25
|
prepareAPIHandler(_) {
|
|
26
26
|
return null;
|
|
27
27
|
}
|
|
@@ -29,7 +29,7 @@ class ModernSSRServer extends import_modern_server.ModernServer {
|
|
|
29
29
|
return this.render404(context);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
class ModernAPIServer extends
|
|
32
|
+
class ModernAPIServer extends import_modernServer.ModernServer {
|
|
33
33
|
prepareWebHandler(_) {
|
|
34
34
|
return null;
|
|
35
35
|
}
|
|
@@ -37,7 +37,7 @@ class ModernAPIServer extends import_modern_server.ModernServer {
|
|
|
37
37
|
return routes.filter((route) => route.isApi);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
class ModernWebServer extends
|
|
40
|
+
class ModernWebServer extends import_modernServer.ModernServer {
|
|
41
41
|
async warmupSSRBundle() {
|
|
42
42
|
return null;
|
|
43
43
|
}
|
|
@@ -57,7 +57,7 @@ const createProdServer = (options) => {
|
|
|
57
57
|
} else if (options.webOnly) {
|
|
58
58
|
return new ModernWebServer(options);
|
|
59
59
|
} else {
|
|
60
|
-
return new
|
|
60
|
+
return new import_modernServer.ModernServer(options);
|
|
61
61
|
}
|
|
62
62
|
};
|
|
63
63
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -15,12 +15,12 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
15
|
return to;
|
|
16
16
|
};
|
|
17
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var
|
|
19
|
-
__export(
|
|
18
|
+
var workerServer_exports = {};
|
|
19
|
+
__export(workerServer_exports, {
|
|
20
20
|
createHandler: () => createHandler,
|
|
21
21
|
handleUrl: () => handleUrl
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
23
|
+
module.exports = __toCommonJS(workerServer_exports);
|
|
24
24
|
var import_logger = require("./libs/logger");
|
|
25
25
|
var import_route = require("./libs/route");
|
|
26
26
|
var import_metrics = require("./libs/metrics");
|
package/dist/esm/index.js
CHANGED
package/dist/esm/server/index.js
CHANGED
|
@@ -225,7 +225,7 @@ import { serverManager, AppContext, ConfigContext, loadPlugins } from "@modern-j
|
|
|
225
225
|
import { metrics as defaultMetrics } from "../libs/metrics";
|
|
226
226
|
import { loadConfig, getServerConfigPath, requireConfig } from "../libs/loadConfig";
|
|
227
227
|
import { debug } from "../utils";
|
|
228
|
-
import { createProdServer } from "./
|
|
228
|
+
import { createProdServer } from "./modernServerSplit";
|
|
229
229
|
var Server = /*#__PURE__*/ function() {
|
|
230
230
|
"use strict";
|
|
231
231
|
function Server(options) {
|
|
@@ -496,7 +496,7 @@ var Server = /*#__PURE__*/ function() {
|
|
|
496
496
|
key: "initAppContext",
|
|
497
497
|
value: function initAppContext() {
|
|
498
498
|
var options = this.options;
|
|
499
|
-
var appDirectory = options.pwd, _options_plugins = options.plugins, plugins = _options_plugins === void 0 ? [] : _options_plugins, config = options.config;
|
|
499
|
+
var appDirectory = options.pwd, _options_plugins = options.plugins, plugins = _options_plugins === void 0 ? [] : _options_plugins, config = options.config, appContext = options.appContext;
|
|
500
500
|
var serverPlugins = plugins.map(function(p) {
|
|
501
501
|
return {
|
|
502
502
|
server: p
|
|
@@ -504,8 +504,10 @@ var Server = /*#__PURE__*/ function() {
|
|
|
504
504
|
});
|
|
505
505
|
return {
|
|
506
506
|
appDirectory: appDirectory,
|
|
507
|
+
apiDirectory: appContext === null || appContext === void 0 ? void 0 : appContext.apiDirectory,
|
|
508
|
+
lambdaDirectory: appContext === null || appContext === void 0 ? void 0 : appContext.lambdaDirectory,
|
|
509
|
+
sharedDirectory: (appContext === null || appContext === void 0 ? void 0 : appContext.sharedDirectory) || path.resolve(appDirectory, SHARED_DIR),
|
|
507
510
|
distDirectory: path.join(appDirectory, config.output.path || "dist"),
|
|
508
|
-
sharedDirectory: path.resolve(appDirectory, SHARED_DIR),
|
|
509
511
|
plugins: serverPlugins
|
|
510
512
|
};
|
|
511
513
|
}
|
|
@@ -201,7 +201,7 @@ import path from "path";
|
|
|
201
201
|
import { fs, isPromise, mime, ROUTE_SPEC_FILE } from "@modern-js/utils";
|
|
202
202
|
import { RouteMatchManager } from "../libs/route";
|
|
203
203
|
import { createRenderHandler } from "../libs/render";
|
|
204
|
-
import { createStaticFileHandler, faviconFallbackHandler } from "../libs/
|
|
204
|
+
import { createStaticFileHandler, faviconFallbackHandler } from "../libs/serveFile";
|
|
205
205
|
import { createErrorDocument, createMiddlewareCollecter, getStaticReg, mergeExtension, noop, debug, isRedirect } from "../utils";
|
|
206
206
|
import * as reader from "../libs/render/reader";
|
|
207
207
|
import { createProxyHandler } from "../libs/proxy";
|
|
@@ -209,7 +209,6 @@ import { createContext } from "../libs/context";
|
|
|
209
209
|
import { templateInjectableStream } from "../libs/hook-api/template";
|
|
210
210
|
import { AGGRED_DIR, ERROR_DIGEST, ERROR_PAGE_TEXT, RUN_MODE } from "../constants";
|
|
211
211
|
import { createAfterMatchContext, createAfterRenderContext, createMiddlewareContext } from "../libs/hook-api";
|
|
212
|
-
var API_DIR = "./api";
|
|
213
212
|
var SERVER_DIR = "./server";
|
|
214
213
|
var ModernServer = /*#__PURE__*/ function() {
|
|
215
214
|
"use strict";
|
|
@@ -516,7 +515,7 @@ var ModernServer = /*#__PURE__*/ function() {
|
|
|
516
515
|
function prepareFrameHandler(options) {
|
|
517
516
|
var _this = this;
|
|
518
517
|
return _asyncToGenerator(function() {
|
|
519
|
-
var workDir, runner, _ref, onlyApi, onlyWeb, _createMiddlewareCollecter, getMiddlewares, collector, _getMiddlewares, pluginAPIExt, pluginWebExt,
|
|
518
|
+
var workDir, runner, _ref, onlyApi, onlyWeb, _createMiddlewareCollecter, getMiddlewares, collector, _getMiddlewares, pluginAPIExt, pluginWebExt, serverDir, webExtension, apiExtension;
|
|
520
519
|
return __generator(this, function(_state) {
|
|
521
520
|
switch(_state.label){
|
|
522
521
|
case 0:
|
|
@@ -532,7 +531,6 @@ var ModernServer = /*#__PURE__*/ function() {
|
|
|
532
531
|
case 1:
|
|
533
532
|
_state.sent();
|
|
534
533
|
_getMiddlewares = getMiddlewares(), pluginAPIExt = _getMiddlewares.api, pluginWebExt = _getMiddlewares.web;
|
|
535
|
-
apiDir = path.join(workDir, API_DIR);
|
|
536
534
|
serverDir = path.join(workDir, SERVER_DIR);
|
|
537
535
|
return [
|
|
538
536
|
4,
|
|
@@ -552,7 +550,7 @@ var ModernServer = /*#__PURE__*/ function() {
|
|
|
552
550
|
_this.frameWebHandler = _state.sent();
|
|
553
551
|
_state.label = 4;
|
|
554
552
|
case 4:
|
|
555
|
-
if (
|
|
553
|
+
if (!!onlyWeb) return [
|
|
556
554
|
3,
|
|
557
555
|
6
|
|
558
556
|
];
|
|
@@ -621,6 +619,7 @@ var ModernServer = /*#__PURE__*/ function() {
|
|
|
621
619
|
pwd: workDir,
|
|
622
620
|
config: extension,
|
|
623
621
|
prefix: Array.isArray(prefix) ? prefix[0] : prefix,
|
|
622
|
+
httpMethodDecider: bff === null || bff === void 0 ? void 0 : bff.httpMethodDecider,
|
|
624
623
|
render: _this.render.bind(_this)
|
|
625
624
|
}, {
|
|
626
625
|
onLast: function() {
|
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
function _assertThisInitialized(self) {
|
|
2
|
+
if (self === void 0) {
|
|
3
|
+
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
4
|
+
}
|
|
5
|
+
return self;
|
|
6
|
+
}
|
|
7
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
8
|
+
try {
|
|
9
|
+
var info = gen[key](arg);
|
|
10
|
+
var value = info.value;
|
|
11
|
+
} catch (error) {
|
|
12
|
+
reject(error);
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
if (info.done) {
|
|
16
|
+
resolve(value);
|
|
17
|
+
} else {
|
|
18
|
+
Promise.resolve(value).then(_next, _throw);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
function _asyncToGenerator(fn) {
|
|
22
|
+
return function() {
|
|
23
|
+
var self = this, args = arguments;
|
|
24
|
+
return new Promise(function(resolve, reject) {
|
|
25
|
+
var gen = fn.apply(self, args);
|
|
26
|
+
function _next(value) {
|
|
27
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
28
|
+
}
|
|
29
|
+
function _throw(err) {
|
|
30
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
31
|
+
}
|
|
32
|
+
_next(undefined);
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function _classCallCheck(instance, Constructor) {
|
|
37
|
+
if (!(instance instanceof Constructor)) {
|
|
38
|
+
throw new TypeError("Cannot call a class as a function");
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function _defineProperties(target, props) {
|
|
42
|
+
for(var i = 0; i < props.length; i++){
|
|
43
|
+
var descriptor = props[i];
|
|
44
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
45
|
+
descriptor.configurable = true;
|
|
46
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
47
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
|
51
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
52
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
53
|
+
return Constructor;
|
|
54
|
+
}
|
|
55
|
+
function _get(target, property, receiver) {
|
|
56
|
+
if (typeof Reflect !== "undefined" && Reflect.get) {
|
|
57
|
+
_get = Reflect.get;
|
|
58
|
+
} else {
|
|
59
|
+
_get = function _get(target, property, receiver) {
|
|
60
|
+
var base = _superPropBase(target, property);
|
|
61
|
+
if (!base) return;
|
|
62
|
+
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
63
|
+
if (desc.get) {
|
|
64
|
+
return desc.get.call(receiver);
|
|
65
|
+
}
|
|
66
|
+
return desc.value;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
return _get(target, property, receiver || target);
|
|
70
|
+
}
|
|
71
|
+
function _getPrototypeOf(o) {
|
|
72
|
+
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
|
|
73
|
+
return o.__proto__ || Object.getPrototypeOf(o);
|
|
74
|
+
};
|
|
75
|
+
return _getPrototypeOf(o);
|
|
76
|
+
}
|
|
77
|
+
function _inherits(subClass, superClass) {
|
|
78
|
+
if (typeof superClass !== "function" && superClass !== null) {
|
|
79
|
+
throw new TypeError("Super expression must either be null or a function");
|
|
80
|
+
}
|
|
81
|
+
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
82
|
+
constructor: {
|
|
83
|
+
value: subClass,
|
|
84
|
+
writable: true,
|
|
85
|
+
configurable: true
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
if (superClass) _setPrototypeOf(subClass, superClass);
|
|
89
|
+
}
|
|
90
|
+
function _possibleConstructorReturn(self, call) {
|
|
91
|
+
if (call && (_typeof(call) === "object" || typeof call === "function")) {
|
|
92
|
+
return call;
|
|
93
|
+
}
|
|
94
|
+
return _assertThisInitialized(self);
|
|
95
|
+
}
|
|
96
|
+
function _setPrototypeOf(o, p) {
|
|
97
|
+
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
|
|
98
|
+
o.__proto__ = p;
|
|
99
|
+
return o;
|
|
100
|
+
};
|
|
101
|
+
return _setPrototypeOf(o, p);
|
|
102
|
+
}
|
|
103
|
+
function _superPropBase(object, property) {
|
|
104
|
+
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
105
|
+
object = _getPrototypeOf(object);
|
|
106
|
+
if (object === null) break;
|
|
107
|
+
}
|
|
108
|
+
return object;
|
|
109
|
+
}
|
|
110
|
+
var _typeof = function(obj) {
|
|
111
|
+
"@swc/helpers - typeof";
|
|
112
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
113
|
+
};
|
|
114
|
+
function _isNativeReflectConstruct() {
|
|
115
|
+
if (typeof Reflect === "undefined" || !Reflect.construct) return false;
|
|
116
|
+
if (Reflect.construct.sham) return false;
|
|
117
|
+
if (typeof Proxy === "function") return true;
|
|
118
|
+
try {
|
|
119
|
+
Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
|
|
120
|
+
return true;
|
|
121
|
+
} catch (e) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
function _createSuper(Derived) {
|
|
126
|
+
var hasNativeReflectConstruct = _isNativeReflectConstruct();
|
|
127
|
+
return function _createSuperInternal() {
|
|
128
|
+
var Super = _getPrototypeOf(Derived), result;
|
|
129
|
+
if (hasNativeReflectConstruct) {
|
|
130
|
+
var NewTarget = _getPrototypeOf(this).constructor;
|
|
131
|
+
result = Reflect.construct(Super, arguments, NewTarget);
|
|
132
|
+
} else {
|
|
133
|
+
result = Super.apply(this, arguments);
|
|
134
|
+
}
|
|
135
|
+
return _possibleConstructorReturn(this, result);
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
var __generator = this && this.__generator || function(thisArg, body) {
|
|
139
|
+
var f, y, t, g, _ = {
|
|
140
|
+
label: 0,
|
|
141
|
+
sent: function() {
|
|
142
|
+
if (t[0] & 1) throw t[1];
|
|
143
|
+
return t[1];
|
|
144
|
+
},
|
|
145
|
+
trys: [],
|
|
146
|
+
ops: []
|
|
147
|
+
};
|
|
148
|
+
return g = {
|
|
149
|
+
next: verb(0),
|
|
150
|
+
"throw": verb(1),
|
|
151
|
+
"return": verb(2)
|
|
152
|
+
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
153
|
+
return this;
|
|
154
|
+
}), g;
|
|
155
|
+
function verb(n) {
|
|
156
|
+
return function(v) {
|
|
157
|
+
return step([
|
|
158
|
+
n,
|
|
159
|
+
v
|
|
160
|
+
]);
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
function step(op) {
|
|
164
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
165
|
+
while(_)try {
|
|
166
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
167
|
+
if (y = 0, t) op = [
|
|
168
|
+
op[0] & 2,
|
|
169
|
+
t.value
|
|
170
|
+
];
|
|
171
|
+
switch(op[0]){
|
|
172
|
+
case 0:
|
|
173
|
+
case 1:
|
|
174
|
+
t = op;
|
|
175
|
+
break;
|
|
176
|
+
case 4:
|
|
177
|
+
_.label++;
|
|
178
|
+
return {
|
|
179
|
+
value: op[1],
|
|
180
|
+
done: false
|
|
181
|
+
};
|
|
182
|
+
case 5:
|
|
183
|
+
_.label++;
|
|
184
|
+
y = op[1];
|
|
185
|
+
op = [
|
|
186
|
+
0
|
|
187
|
+
];
|
|
188
|
+
continue;
|
|
189
|
+
case 7:
|
|
190
|
+
op = _.ops.pop();
|
|
191
|
+
_.trys.pop();
|
|
192
|
+
continue;
|
|
193
|
+
default:
|
|
194
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
195
|
+
_ = 0;
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
199
|
+
_.label = op[1];
|
|
200
|
+
break;
|
|
201
|
+
}
|
|
202
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
203
|
+
_.label = t[1];
|
|
204
|
+
t = op;
|
|
205
|
+
break;
|
|
206
|
+
}
|
|
207
|
+
if (t && _.label < t[2]) {
|
|
208
|
+
_.label = t[2];
|
|
209
|
+
_.ops.push(op);
|
|
210
|
+
break;
|
|
211
|
+
}
|
|
212
|
+
if (t[2]) _.ops.pop();
|
|
213
|
+
_.trys.pop();
|
|
214
|
+
continue;
|
|
215
|
+
}
|
|
216
|
+
op = body.call(thisArg, _);
|
|
217
|
+
} catch (e) {
|
|
218
|
+
op = [
|
|
219
|
+
6,
|
|
220
|
+
e
|
|
221
|
+
];
|
|
222
|
+
y = 0;
|
|
223
|
+
} finally{
|
|
224
|
+
f = t = 0;
|
|
225
|
+
}
|
|
226
|
+
if (op[0] & 5) throw op[1];
|
|
227
|
+
return {
|
|
228
|
+
value: op[0] ? op[1] : void 0,
|
|
229
|
+
done: true
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
};
|
|
233
|
+
import { ModernServer } from "./modernServer";
|
|
234
|
+
var ModernSSRServer = /*#__PURE__*/ function(ModernServer) {
|
|
235
|
+
"use strict";
|
|
236
|
+
_inherits(ModernSSRServer, ModernServer);
|
|
237
|
+
var _super = _createSuper(ModernSSRServer);
|
|
238
|
+
function ModernSSRServer() {
|
|
239
|
+
_classCallCheck(this, ModernSSRServer);
|
|
240
|
+
return _super.apply(this, arguments);
|
|
241
|
+
}
|
|
242
|
+
_createClass(ModernSSRServer, [
|
|
243
|
+
{
|
|
244
|
+
key: "prepareAPIHandler",
|
|
245
|
+
value: function prepareAPIHandler(_) {
|
|
246
|
+
return null;
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
key: "handleAPI",
|
|
251
|
+
value: function handleAPI(context) {
|
|
252
|
+
var _this = this;
|
|
253
|
+
return _asyncToGenerator(function() {
|
|
254
|
+
return __generator(this, function(_state) {
|
|
255
|
+
return [
|
|
256
|
+
2,
|
|
257
|
+
_this.render404(context)
|
|
258
|
+
];
|
|
259
|
+
});
|
|
260
|
+
})();
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
]);
|
|
264
|
+
return ModernSSRServer;
|
|
265
|
+
}(ModernServer);
|
|
266
|
+
var ModernAPIServer = /*#__PURE__*/ function(ModernServer) {
|
|
267
|
+
"use strict";
|
|
268
|
+
_inherits(ModernAPIServer, ModernServer);
|
|
269
|
+
var _super = _createSuper(ModernAPIServer);
|
|
270
|
+
function ModernAPIServer() {
|
|
271
|
+
_classCallCheck(this, ModernAPIServer);
|
|
272
|
+
return _super.apply(this, arguments);
|
|
273
|
+
}
|
|
274
|
+
_createClass(ModernAPIServer, [
|
|
275
|
+
{
|
|
276
|
+
key: "prepareWebHandler",
|
|
277
|
+
value: function prepareWebHandler(_) {
|
|
278
|
+
return null;
|
|
279
|
+
}
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
key: "filterRoutes",
|
|
283
|
+
value: function filterRoutes(routes) {
|
|
284
|
+
return routes.filter(function(route) {
|
|
285
|
+
return route.isApi;
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
]);
|
|
290
|
+
return ModernAPIServer;
|
|
291
|
+
}(ModernServer);
|
|
292
|
+
var ModernWebServer = /*#__PURE__*/ function(ModernServer) {
|
|
293
|
+
"use strict";
|
|
294
|
+
_inherits(ModernWebServer, ModernServer);
|
|
295
|
+
var _super = _createSuper(ModernWebServer);
|
|
296
|
+
function ModernWebServer() {
|
|
297
|
+
_classCallCheck(this, ModernWebServer);
|
|
298
|
+
return _super.apply(this, arguments);
|
|
299
|
+
}
|
|
300
|
+
_createClass(ModernWebServer, [
|
|
301
|
+
{
|
|
302
|
+
key: "warmupSSRBundle",
|
|
303
|
+
value: function warmupSSRBundle() {
|
|
304
|
+
return _asyncToGenerator(function() {
|
|
305
|
+
return __generator(this, function(_state) {
|
|
306
|
+
return [
|
|
307
|
+
2,
|
|
308
|
+
null
|
|
309
|
+
];
|
|
310
|
+
});
|
|
311
|
+
})();
|
|
312
|
+
}
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
key: "handleAPI",
|
|
316
|
+
value: function handleAPI(context) {
|
|
317
|
+
var _this = this;
|
|
318
|
+
return _asyncToGenerator(function() {
|
|
319
|
+
return __generator(this, function(_state) {
|
|
320
|
+
return [
|
|
321
|
+
2,
|
|
322
|
+
_this.render404(context)
|
|
323
|
+
];
|
|
324
|
+
});
|
|
325
|
+
})();
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
key: "handleWeb",
|
|
330
|
+
value: function handleWeb(context, route) {
|
|
331
|
+
var _this = this;
|
|
332
|
+
var _this1 = this, _superprop_get_handleWeb = function() {
|
|
333
|
+
return _get(_getPrototypeOf(ModernWebServer.prototype), "handleWeb", _this);
|
|
334
|
+
};
|
|
335
|
+
return _asyncToGenerator(function() {
|
|
336
|
+
return __generator(this, function(_state) {
|
|
337
|
+
route.isSSR = false;
|
|
338
|
+
return [
|
|
339
|
+
2,
|
|
340
|
+
_superprop_get_handleWeb().call(_this1, context, route)
|
|
341
|
+
];
|
|
342
|
+
});
|
|
343
|
+
})();
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
]);
|
|
347
|
+
return ModernWebServer;
|
|
348
|
+
}(ModernServer);
|
|
349
|
+
var createProdServer = function(options) {
|
|
350
|
+
if (options.apiOnly) {
|
|
351
|
+
return new ModernAPIServer(options);
|
|
352
|
+
} else if (options.ssrOnly) {
|
|
353
|
+
return new ModernSSRServer(options);
|
|
354
|
+
} else if (options.webOnly) {
|
|
355
|
+
return new ModernWebServer(options);
|
|
356
|
+
} else {
|
|
357
|
+
return new ModernServer(options);
|
|
358
|
+
}
|
|
359
|
+
};
|
|
360
|
+
export { createProdServer };
|
package/dist/esm-node/index.js
CHANGED