@modern-js/server-core 2.49.0 → 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.
- package/dist/cjs/base/adapters/node/index.js +2 -0
- package/dist/cjs/base/adapters/node/middlewares/serverManifest.js +28 -20
- package/dist/esm/base/adapters/node/index.js +2 -1
- package/dist/esm/base/adapters/node/middlewares/serverManifest.js +45 -38
- package/dist/esm-node/base/adapters/node/index.js +2 -1
- package/dist/esm-node/base/adapters/node/middlewares/serverManifest.js +27 -20
- package/dist/types/base/adapters/node/index.d.ts +1 -1
- package/dist/types/base/adapters/node/middlewares/serverManifest.d.ts +2 -1
- package/package.json +3 -3
|
@@ -24,6 +24,7 @@ __export(node_exports, {
|
|
|
24
24
|
createStaticMiddleware: () => import_middlewares.createStaticMiddleware,
|
|
25
25
|
createWebRequest: () => import_node.createWebRequest,
|
|
26
26
|
getHtmlTemplates: () => import_middlewares.getHtmlTemplates,
|
|
27
|
+
getServerManifest: () => import_middlewares.getServerManifest,
|
|
27
28
|
httpCallBack2HonoMid: () => import_hono.httpCallBack2HonoMid,
|
|
28
29
|
injectServerManifest: () => import_middlewares.injectServerManifest,
|
|
29
30
|
injectTemplates: () => import_middlewares.injectTemplates,
|
|
@@ -45,6 +46,7 @@ var import_middlewares = require("./middlewares");
|
|
|
45
46
|
createStaticMiddleware,
|
|
46
47
|
createWebRequest,
|
|
47
48
|
getHtmlTemplates,
|
|
49
|
+
getServerManifest,
|
|
48
50
|
httpCallBack2HonoMid,
|
|
49
51
|
injectServerManifest,
|
|
50
52
|
injectTemplates,
|
|
@@ -28,6 +28,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var serverManifest_exports = {};
|
|
30
30
|
__export(serverManifest_exports, {
|
|
31
|
+
getServerManifest: () => getServerManifest,
|
|
31
32
|
injectServerManifest: () => injectServerManifest
|
|
32
33
|
});
|
|
33
34
|
module.exports = __toCommonJS(serverManifest_exports);
|
|
@@ -36,26 +37,32 @@ var import_utils = require("@modern-js/utils");
|
|
|
36
37
|
async function getServerManifest(pwd, routes) {
|
|
37
38
|
const loaderBundles = {};
|
|
38
39
|
const renderBundles = {};
|
|
39
|
-
await Promise.all(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
Promise.resolve()
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
40
|
+
await Promise.all(routes.map(async (route) => {
|
|
41
|
+
const entryName = route.entryName || import_utils.MAIN_ENTRY_NAME;
|
|
42
|
+
const loaderBundlePath = import_path.default.join(pwd, import_utils.SERVER_BUNDLE_DIRECTORY, `${entryName}-server-loaders.js`);
|
|
43
|
+
const renderBundlePath = import_path.default.join(pwd, route.bundle || "");
|
|
44
|
+
const dynamicImport = (filePath) => {
|
|
45
|
+
try {
|
|
46
|
+
const module2 = require(filePath);
|
|
47
|
+
return Promise.resolve(module2);
|
|
48
|
+
} catch (e) {
|
|
49
|
+
return Promise.reject(e);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
await Promise.allSettled([
|
|
53
|
+
dynamicImport(loaderBundlePath),
|
|
54
|
+
dynamicImport(renderBundlePath)
|
|
55
|
+
]).then((results) => {
|
|
56
|
+
const { status: loaderStatus } = results[0];
|
|
57
|
+
if (loaderStatus === "fulfilled") {
|
|
58
|
+
loaderBundles[entryName] = results[0].value;
|
|
59
|
+
}
|
|
60
|
+
const { status: renderStatus } = results[1];
|
|
61
|
+
if (renderStatus === "fulfilled") {
|
|
62
|
+
renderBundles[entryName] = results[1].value;
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}));
|
|
59
66
|
const loadableUri = import_path.default.join(pwd, import_utils.LOADABLE_STATS_FILE);
|
|
60
67
|
const loadableStats = await Promise.resolve().then(() => __toESM(require(loadableUri))).catch((_) => ({}));
|
|
61
68
|
const routesManifestUri = import_path.default.join(pwd, import_utils.ROUTE_MANIFEST_FILE);
|
|
@@ -78,5 +85,6 @@ function injectServerManifest(pwd, routes) {
|
|
|
78
85
|
}
|
|
79
86
|
// Annotate the CommonJS export names for ESM import in node:
|
|
80
87
|
0 && (module.exports = {
|
|
88
|
+
getServerManifest,
|
|
81
89
|
injectServerManifest
|
|
82
90
|
});
|
|
@@ -2,7 +2,7 @@ import { loadServerEnv } from "./loadServer";
|
|
|
2
2
|
import { httpCallBack2HonoMid, connectMid2HonoMid } from "./hono";
|
|
3
3
|
import { createNodeServer, sendResponse, createWebRequest } from "./node";
|
|
4
4
|
import { bindBFFHandler } from "./bff";
|
|
5
|
-
import { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates } from "./middlewares";
|
|
5
|
+
import { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates, getServerManifest } from "./middlewares";
|
|
6
6
|
export {
|
|
7
7
|
bindBFFHandler,
|
|
8
8
|
connectMid2HonoMid,
|
|
@@ -10,6 +10,7 @@ export {
|
|
|
10
10
|
createStaticMiddleware,
|
|
11
11
|
createWebRequest,
|
|
12
12
|
getHtmlTemplates,
|
|
13
|
+
getServerManifest,
|
|
13
14
|
httpCallBack2HonoMid,
|
|
14
15
|
injectServerManifest,
|
|
15
16
|
injectTemplates,
|
|
@@ -15,45 +15,51 @@ function _getServerManifest() {
|
|
|
15
15
|
renderBundles = {};
|
|
16
16
|
return [
|
|
17
17
|
4,
|
|
18
|
-
Promise.all(
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
Promise.
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
18
|
+
Promise.all(routes.map(function() {
|
|
19
|
+
var _ref = _async_to_generator(function(route) {
|
|
20
|
+
var entryName, loaderBundlePath, renderBundlePath, dynamicImport;
|
|
21
|
+
return _ts_generator(this, function(_state2) {
|
|
22
|
+
switch (_state2.label) {
|
|
23
|
+
case 0:
|
|
24
|
+
entryName = route.entryName || MAIN_ENTRY_NAME;
|
|
25
|
+
loaderBundlePath = path.join(pwd, SERVER_BUNDLE_DIRECTORY, "".concat(entryName, "-server-loaders.js"));
|
|
26
|
+
renderBundlePath = path.join(pwd, route.bundle || "");
|
|
27
|
+
dynamicImport = function(filePath) {
|
|
28
|
+
try {
|
|
29
|
+
var module = require(filePath);
|
|
30
|
+
return Promise.resolve(module);
|
|
31
|
+
} catch (e) {
|
|
32
|
+
return Promise.reject(e);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
return [
|
|
36
|
+
4,
|
|
37
|
+
Promise.allSettled([
|
|
38
|
+
dynamicImport(loaderBundlePath),
|
|
39
|
+
dynamicImport(renderBundlePath)
|
|
40
|
+
]).then(function(results) {
|
|
41
|
+
var _results_ = results[0], loaderStatus = _results_.status;
|
|
42
|
+
if (loaderStatus === "fulfilled") {
|
|
43
|
+
loaderBundles[entryName] = results[0].value;
|
|
44
|
+
}
|
|
45
|
+
var _results_1 = results[1], renderStatus = _results_1.status;
|
|
46
|
+
if (renderStatus === "fulfilled") {
|
|
47
|
+
renderBundles[entryName] = results[1].value;
|
|
48
|
+
}
|
|
49
|
+
})
|
|
50
|
+
];
|
|
51
|
+
case 1:
|
|
52
|
+
_state2.sent();
|
|
53
|
+
return [
|
|
54
|
+
2
|
|
55
|
+
];
|
|
56
|
+
}
|
|
51
57
|
});
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
58
|
+
});
|
|
59
|
+
return function(route) {
|
|
60
|
+
return _ref.apply(this, arguments);
|
|
61
|
+
};
|
|
62
|
+
}()))
|
|
57
63
|
];
|
|
58
64
|
case 1:
|
|
59
65
|
_state.sent();
|
|
@@ -128,5 +134,6 @@ function injectServerManifest(pwd, routes) {
|
|
|
128
134
|
}();
|
|
129
135
|
}
|
|
130
136
|
export {
|
|
137
|
+
getServerManifest,
|
|
131
138
|
injectServerManifest
|
|
132
139
|
};
|
|
@@ -2,7 +2,7 @@ import { loadServerEnv } from "./loadServer";
|
|
|
2
2
|
import { httpCallBack2HonoMid, connectMid2HonoMid } from "./hono";
|
|
3
3
|
import { createNodeServer, sendResponse, createWebRequest } from "./node";
|
|
4
4
|
import { bindBFFHandler } from "./bff";
|
|
5
|
-
import { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates } from "./middlewares";
|
|
5
|
+
import { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates, getServerManifest } from "./middlewares";
|
|
6
6
|
export {
|
|
7
7
|
bindBFFHandler,
|
|
8
8
|
connectMid2HonoMid,
|
|
@@ -10,6 +10,7 @@ export {
|
|
|
10
10
|
createStaticMiddleware,
|
|
11
11
|
createWebRequest,
|
|
12
12
|
getHtmlTemplates,
|
|
13
|
+
getServerManifest,
|
|
13
14
|
httpCallBack2HonoMid,
|
|
14
15
|
injectServerManifest,
|
|
15
16
|
injectTemplates,
|
|
@@ -3,26 +3,32 @@ import { LOADABLE_STATS_FILE, MAIN_ENTRY_NAME, ROUTE_MANIFEST_FILE, SERVER_BUNDL
|
|
|
3
3
|
async function getServerManifest(pwd, routes) {
|
|
4
4
|
const loaderBundles = {};
|
|
5
5
|
const renderBundles = {};
|
|
6
|
-
await Promise.all(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
6
|
+
await Promise.all(routes.map(async (route) => {
|
|
7
|
+
const entryName = route.entryName || MAIN_ENTRY_NAME;
|
|
8
|
+
const loaderBundlePath = path.join(pwd, SERVER_BUNDLE_DIRECTORY, `${entryName}-server-loaders.js`);
|
|
9
|
+
const renderBundlePath = path.join(pwd, route.bundle || "");
|
|
10
|
+
const dynamicImport = (filePath) => {
|
|
11
|
+
try {
|
|
12
|
+
const module = require(filePath);
|
|
13
|
+
return Promise.resolve(module);
|
|
14
|
+
} catch (e) {
|
|
15
|
+
return Promise.reject(e);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
await Promise.allSettled([
|
|
19
|
+
dynamicImport(loaderBundlePath),
|
|
20
|
+
dynamicImport(renderBundlePath)
|
|
21
|
+
]).then((results) => {
|
|
22
|
+
const { status: loaderStatus } = results[0];
|
|
23
|
+
if (loaderStatus === "fulfilled") {
|
|
24
|
+
loaderBundles[entryName] = results[0].value;
|
|
25
|
+
}
|
|
26
|
+
const { status: renderStatus } = results[1];
|
|
27
|
+
if (renderStatus === "fulfilled") {
|
|
28
|
+
renderBundles[entryName] = results[1].value;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}));
|
|
26
32
|
const loadableUri = path.join(pwd, LOADABLE_STATS_FILE);
|
|
27
33
|
const loadableStats = await import(loadableUri).catch((_) => ({}));
|
|
28
34
|
const routesManifestUri = path.join(pwd, ROUTE_MANIFEST_FILE);
|
|
@@ -44,5 +50,6 @@ function injectServerManifest(pwd, routes) {
|
|
|
44
50
|
};
|
|
45
51
|
}
|
|
46
52
|
export {
|
|
53
|
+
getServerManifest,
|
|
47
54
|
injectServerManifest
|
|
48
55
|
};
|
|
@@ -3,4 +3,4 @@ export { httpCallBack2HonoMid, connectMid2HonoMid } from './hono';
|
|
|
3
3
|
export type { ServerNodeContext, ServerNodeMiddleware } from './hono';
|
|
4
4
|
export { createNodeServer, sendResponse, createWebRequest } from './node';
|
|
5
5
|
export { bindBFFHandler } from './bff';
|
|
6
|
-
export { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates, } from './middlewares';
|
|
6
|
+
export { createStaticMiddleware, registerMockHandlers, injectServerManifest, injectTemplates, getHtmlTemplates, getServerManifest, } from './middlewares';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { ServerRoute } from '@modern-js/types';
|
|
2
|
-
import { Middleware, ServerEnv } from '../../../../core/server';
|
|
2
|
+
import { Middleware, ServerEnv, ServerManifest } from '../../../../core/server';
|
|
3
|
+
export declare function getServerManifest(pwd: string, routes: ServerRoute[]): Promise<ServerManifest>;
|
|
3
4
|
export declare function injectServerManifest(pwd: string, routes?: ServerRoute[]): Middleware<ServerEnv>;
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.49.0",
|
|
18
|
+
"version": "2.49.1-alpha.0",
|
|
19
19
|
"jsnext:source": "./src/index.ts",
|
|
20
20
|
"types": "./dist/types/index.d.ts",
|
|
21
21
|
"main": "./dist/cjs/index.js",
|
|
@@ -81,9 +81,9 @@
|
|
|
81
81
|
"jest": "^29",
|
|
82
82
|
"ts-jest": "^29.1.0",
|
|
83
83
|
"typescript": "^5",
|
|
84
|
-
"@scripts/jest-config": "2.49.0",
|
|
85
84
|
"@scripts/build": "2.49.0",
|
|
86
|
-
"@modern-js/types": "2.49.0"
|
|
85
|
+
"@modern-js/types": "2.49.0",
|
|
86
|
+
"@scripts/jest-config": "2.49.0"
|
|
87
87
|
},
|
|
88
88
|
"sideEffects": false,
|
|
89
89
|
"publishConfig": {
|