@bleedingdev/modern-js-server-core 3.4.0-ultramodern.0 → 3.4.0-ultramodern.10
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/plugins/render/dataHandler.js +17 -12
- package/dist/cjs/plugins/render/index.js +1 -0
- package/dist/cjs/plugins/render/render.js +2 -1
- package/dist/esm/plugins/render/dataHandler.mjs +17 -12
- package/dist/esm/plugins/render/index.mjs +1 -0
- package/dist/esm/plugins/render/render.mjs +2 -1
- package/dist/esm-node/plugins/render/dataHandler.mjs +17 -12
- package/dist/esm-node/plugins/render/index.mjs +1 -0
- package/dist/esm-node/plugins/render/render.mjs +2 -1
- package/dist/types/plugins/render/dataHandler.d.ts +1 -1
- package/dist/types/plugins/render/ssrRender.d.ts +2 -1
- package/dist/types/types/render.d.ts +2 -1
- package/package.json +6 -6
|
@@ -31,22 +31,27 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
31
31
|
dataHandler: ()=>dataHandler
|
|
32
32
|
});
|
|
33
33
|
const constants_namespaceObject = require("@modern-js/utils/universal/constants");
|
|
34
|
-
const
|
|
34
|
+
const external_context_js_namespaceObject = require("../../context.js");
|
|
35
|
+
const dataHandler = async (request, { routeInfo, serverRoutes, monitors, onError, onTiming, serverManifest, loaderContext, serverContext, reporter })=>{
|
|
35
36
|
const serverLoaderModule = serverManifest?.loaderBundles?.[routeInfo.entryName || constants_namespaceObject.MAIN_ENTRY_NAME];
|
|
36
37
|
if (!serverLoaderModule) return;
|
|
37
38
|
const { routes, handleRequest } = serverLoaderModule;
|
|
38
|
-
const response = await
|
|
39
|
-
request,
|
|
40
|
-
serverRoutes,
|
|
41
|
-
context: {
|
|
42
|
-
monitors,
|
|
43
|
-
loaderContext
|
|
44
|
-
},
|
|
45
|
-
onTiming,
|
|
46
|
-
onError,
|
|
47
|
-
routes
|
|
48
|
-
});
|
|
39
|
+
const response = await (serverContext ? (0, external_context_js_namespaceObject.run)(serverContext, execute) : execute());
|
|
49
40
|
return response;
|
|
41
|
+
function execute() {
|
|
42
|
+
return handleRequest({
|
|
43
|
+
request,
|
|
44
|
+
serverRoutes,
|
|
45
|
+
context: {
|
|
46
|
+
monitors,
|
|
47
|
+
loaderContext,
|
|
48
|
+
reporter
|
|
49
|
+
},
|
|
50
|
+
onTiming,
|
|
51
|
+
onError,
|
|
52
|
+
routes
|
|
53
|
+
});
|
|
54
|
+
}
|
|
50
55
|
};
|
|
51
56
|
exports.dataHandler = __webpack_exports__.dataHandler;
|
|
52
57
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
@@ -109,7 +109,7 @@ var __webpack_exports__ = {};
|
|
|
109
109
|
}
|
|
110
110
|
async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, forceCSRMap, config, onFallback }) {
|
|
111
111
|
const router = getRouter(routes);
|
|
112
|
-
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, contextForceCSR, reporter })=>{
|
|
112
|
+
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, serverContext, contextForceCSR, reporter })=>{
|
|
113
113
|
const forMatchpathname = matchPathname ?? (0, index_js_namespaceObject.getPathname)(req);
|
|
114
114
|
const [routeInfo, params] = matchRoute(router, forMatchpathname, matchEntryName);
|
|
115
115
|
const framework = (0, universal_namespaceObject.cutNameByHyphen)(metaName || 'modern-js');
|
|
@@ -162,6 +162,7 @@ var __webpack_exports__ = {};
|
|
|
162
162
|
rscServerManifest,
|
|
163
163
|
serverManifest,
|
|
164
164
|
loaderContext: loaderContext || new Map(),
|
|
165
|
+
serverContext,
|
|
165
166
|
onError,
|
|
166
167
|
onTiming,
|
|
167
168
|
reporter
|
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
|
|
2
|
-
|
|
2
|
+
import { run } from "../../context.mjs";
|
|
3
|
+
const dataHandler = async (request, { routeInfo, serverRoutes, monitors, onError, onTiming, serverManifest, loaderContext, serverContext, reporter })=>{
|
|
3
4
|
const serverLoaderModule = serverManifest?.loaderBundles?.[routeInfo.entryName || MAIN_ENTRY_NAME];
|
|
4
5
|
if (!serverLoaderModule) return;
|
|
5
6
|
const { routes, handleRequest } = serverLoaderModule;
|
|
6
|
-
const response = await
|
|
7
|
-
request,
|
|
8
|
-
serverRoutes,
|
|
9
|
-
context: {
|
|
10
|
-
monitors,
|
|
11
|
-
loaderContext
|
|
12
|
-
},
|
|
13
|
-
onTiming,
|
|
14
|
-
onError,
|
|
15
|
-
routes
|
|
16
|
-
});
|
|
7
|
+
const response = await (serverContext ? run(serverContext, execute) : execute());
|
|
17
8
|
return response;
|
|
9
|
+
function execute() {
|
|
10
|
+
return handleRequest({
|
|
11
|
+
request,
|
|
12
|
+
serverRoutes,
|
|
13
|
+
context: {
|
|
14
|
+
monitors,
|
|
15
|
+
loaderContext,
|
|
16
|
+
reporter
|
|
17
|
+
},
|
|
18
|
+
onTiming,
|
|
19
|
+
onError,
|
|
20
|
+
routes
|
|
21
|
+
});
|
|
22
|
+
}
|
|
18
23
|
};
|
|
19
24
|
export { dataHandler };
|
|
@@ -69,7 +69,7 @@ function getHeadersWithoutCookie(headers) {
|
|
|
69
69
|
}
|
|
70
70
|
async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, forceCSRMap, config, onFallback }) {
|
|
71
71
|
const router = getRouter(routes);
|
|
72
|
-
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, contextForceCSR, reporter })=>{
|
|
72
|
+
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, serverContext, contextForceCSR, reporter })=>{
|
|
73
73
|
const forMatchpathname = matchPathname ?? getPathname(req);
|
|
74
74
|
const [routeInfo, params] = matchRoute(router, forMatchpathname, matchEntryName);
|
|
75
75
|
const framework = cutNameByHyphen(metaName || 'modern-js');
|
|
@@ -122,6 +122,7 @@ async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig
|
|
|
122
122
|
rscServerManifest,
|
|
123
123
|
serverManifest,
|
|
124
124
|
loaderContext: loaderContext || new Map(),
|
|
125
|
+
serverContext,
|
|
125
126
|
onError,
|
|
126
127
|
onTiming,
|
|
127
128
|
reporter
|
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
import "node:module";
|
|
2
2
|
import { MAIN_ENTRY_NAME } from "@modern-js/utils/universal/constants";
|
|
3
|
-
|
|
3
|
+
import { run } from "../../context.mjs";
|
|
4
|
+
const dataHandler = async (request, { routeInfo, serverRoutes, monitors, onError, onTiming, serverManifest, loaderContext, serverContext, reporter })=>{
|
|
4
5
|
const serverLoaderModule = serverManifest?.loaderBundles?.[routeInfo.entryName || MAIN_ENTRY_NAME];
|
|
5
6
|
if (!serverLoaderModule) return;
|
|
6
7
|
const { routes, handleRequest } = serverLoaderModule;
|
|
7
|
-
const response = await
|
|
8
|
-
request,
|
|
9
|
-
serverRoutes,
|
|
10
|
-
context: {
|
|
11
|
-
monitors,
|
|
12
|
-
loaderContext
|
|
13
|
-
},
|
|
14
|
-
onTiming,
|
|
15
|
-
onError,
|
|
16
|
-
routes
|
|
17
|
-
});
|
|
8
|
+
const response = await (serverContext ? run(serverContext, execute) : execute());
|
|
18
9
|
return response;
|
|
10
|
+
function execute() {
|
|
11
|
+
return handleRequest({
|
|
12
|
+
request,
|
|
13
|
+
serverRoutes,
|
|
14
|
+
context: {
|
|
15
|
+
monitors,
|
|
16
|
+
loaderContext,
|
|
17
|
+
reporter
|
|
18
|
+
},
|
|
19
|
+
onTiming,
|
|
20
|
+
onError,
|
|
21
|
+
routes
|
|
22
|
+
});
|
|
23
|
+
}
|
|
19
24
|
};
|
|
20
25
|
export { dataHandler };
|
|
@@ -70,7 +70,7 @@ function getHeadersWithoutCookie(headers) {
|
|
|
70
70
|
}
|
|
71
71
|
async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig, forceCSR, forceCSRMap, config, onFallback }) {
|
|
72
72
|
const router = getRouter(routes);
|
|
73
|
-
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, contextForceCSR, reporter })=>{
|
|
73
|
+
return async (req, { monitors, nodeReq, templates, serverManifest, rscClientManifest, rscSSRManifest, rscServerManifest, locals, matchEntryName, matchPathname, loaderContext, serverContext, contextForceCSR, reporter })=>{
|
|
74
74
|
const forMatchpathname = matchPathname ?? getPathname(req);
|
|
75
75
|
const [routeInfo, params] = matchRoute(router, forMatchpathname, matchEntryName);
|
|
76
76
|
const framework = cutNameByHyphen(metaName || 'modern-js');
|
|
@@ -123,6 +123,7 @@ async function createRender({ routes, pwd, metaName, staticGenerate, cacheConfig
|
|
|
123
123
|
rscServerManifest,
|
|
124
124
|
serverManifest,
|
|
125
125
|
loaderContext: loaderContext || new Map(),
|
|
126
|
+
serverContext,
|
|
126
127
|
onError,
|
|
127
128
|
onTiming,
|
|
128
129
|
reporter
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ServerRoute } from '@modern-js/types';
|
|
2
2
|
import type { SSRRenderOptions } from './ssrRender';
|
|
3
|
-
export declare const dataHandler: (request: Request, { routeInfo, serverRoutes, monitors, onError, onTiming, serverManifest, loaderContext, }: SSRRenderOptions & {
|
|
3
|
+
export declare const dataHandler: (request: Request, { routeInfo, serverRoutes, monitors, onError, onTiming, serverManifest, loaderContext, serverContext, reporter, }: SSRRenderOptions & {
|
|
4
4
|
serverRoutes: ServerRoute[];
|
|
5
5
|
}) => Promise<Response | void>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Reporter, ServerRoute } from '@modern-js/types';
|
|
2
2
|
import type { Monitors, NodeRequest, ClientManifest as RscClientManifest, ServerManifest as RscServerManifest, SSRManifest as RscSSRManifest } from '@modern-js/types/server';
|
|
3
|
-
import type { CacheConfig, ServerManifest, UserConfig } from '../../types';
|
|
3
|
+
import type { CacheConfig, Context, ServerManifest, UserConfig } from '../../types';
|
|
4
4
|
import type { OnError, OnTiming, Params } from '../../types/requestHandler';
|
|
5
5
|
export interface SSRRenderOptions {
|
|
6
6
|
pwd: string;
|
|
@@ -13,6 +13,7 @@ export interface SSRRenderOptions {
|
|
|
13
13
|
rscClientManifest?: RscClientManifest;
|
|
14
14
|
rscSSRManifest?: RscSSRManifest;
|
|
15
15
|
loaderContext: Map<string, unknown>;
|
|
16
|
+
serverContext?: Context;
|
|
16
17
|
params: Params;
|
|
17
18
|
/** Produce by custom server hook */
|
|
18
19
|
locals?: Record<string, any>;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { Monitors, Reporter, ClientManifest as RscClientManifest, ServerManifest as RscServerManifest, SSRManifest as RscSSRManifest } from '@modern-js/types';
|
|
2
2
|
import type { NodeRequest } from '@modern-js/types/server';
|
|
3
|
-
import type { ServerManifest } from './server';
|
|
3
|
+
import type { Context, ServerManifest } from './server';
|
|
4
4
|
export interface RenderOptions {
|
|
5
5
|
monitors: Monitors;
|
|
6
6
|
loaderContext?: Map<string, unknown>;
|
|
7
|
+
serverContext?: Context;
|
|
7
8
|
/** ssr render html templates */
|
|
8
9
|
templates: Record<string, string>;
|
|
9
10
|
/** Communicating with custom server hook & modern ssr runtime. */
|
package/package.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"modern",
|
|
18
18
|
"modern.js"
|
|
19
19
|
],
|
|
20
|
-
"version": "3.4.0-ultramodern.
|
|
20
|
+
"version": "3.4.0-ultramodern.10",
|
|
21
21
|
"types": "./dist/types/index.d.ts",
|
|
22
22
|
"main": "./dist/cjs/index.js",
|
|
23
23
|
"exports": {
|
|
@@ -76,18 +76,18 @@
|
|
|
76
76
|
"flatted": "^3.4.2",
|
|
77
77
|
"hono": "^4.12.27",
|
|
78
78
|
"ts-deepmerge": "8.0.0",
|
|
79
|
-
"@modern-js/runtime-utils": "npm:@bleedingdev/modern-js-runtime-utils@3.4.0-ultramodern.
|
|
80
|
-
"@modern-js/
|
|
81
|
-
"@modern-js/
|
|
79
|
+
"@modern-js/runtime-utils": "npm:@bleedingdev/modern-js-runtime-utils@3.4.0-ultramodern.10",
|
|
80
|
+
"@modern-js/plugin": "npm:@bleedingdev/modern-js-plugin@3.4.0-ultramodern.10",
|
|
81
|
+
"@modern-js/utils": "npm:@bleedingdev/modern-js-utils@3.4.0-ultramodern.10"
|
|
82
82
|
},
|
|
83
83
|
"devDependencies": {
|
|
84
84
|
"@rslib/core": "0.23.0",
|
|
85
85
|
"@types/cloneable-readable": "^2.0.3",
|
|
86
86
|
"@types/merge-deep": "^3.0.3",
|
|
87
|
-
"@types/node": "^26.0.
|
|
87
|
+
"@types/node": "^26.0.1",
|
|
88
88
|
"@typescript/native-preview": "7.0.0-dev.20260624.1",
|
|
89
89
|
"http-proxy-middleware": "^4.1.1",
|
|
90
|
-
"@modern-js/types": "npm:@bleedingdev/modern-js-types@3.4.0-ultramodern.
|
|
90
|
+
"@modern-js/types": "npm:@bleedingdev/modern-js-types@3.4.0-ultramodern.10",
|
|
91
91
|
"@scripts/rstest-config": "2.66.0"
|
|
92
92
|
},
|
|
93
93
|
"sideEffects": false,
|