@modern-js/server-core 2.67.2 → 2.67.4
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/adapters/node/helper/loadConfig.js +5 -1
- package/dist/cjs/adapters/node/node.js +49 -13
- package/dist/cjs/context.js +31 -0
- package/dist/cjs/index.js +7 -1
- package/dist/cjs/plugins/customServer/index.js +4 -10
- package/dist/cjs/plugins/index.js +3 -0
- package/dist/cjs/plugins/middlewares.js +43 -0
- package/dist/cjs/plugins/render/index.js +10 -5
- package/dist/cjs/plugins/render/inject.js +2 -2
- package/dist/cjs/serverBase.js +2 -1
- package/dist/cjs/utils/storage.js +74 -0
- package/dist/esm/adapters/node/helper/loadConfig.js +7 -3
- package/dist/esm/adapters/node/node.js +83 -13
- package/dist/esm/context.js +6 -0
- package/dist/esm/index.js +5 -1
- package/dist/esm/plugins/customServer/index.js +4 -12
- package/dist/esm/plugins/index.js +2 -0
- package/dist/esm/plugins/middlewares.js +22 -0
- package/dist/esm/plugins/render/index.js +53 -29
- package/dist/esm/plugins/render/inject.js +3 -2
- package/dist/esm/serverBase.js +2 -1
- package/dist/esm/utils/storage.js +38 -0
- package/dist/esm-node/adapters/node/helper/loadConfig.js +6 -2
- package/dist/esm-node/adapters/node/node.js +49 -13
- package/dist/esm-node/context.js +6 -0
- package/dist/esm-node/index.js +5 -1
- package/dist/esm-node/plugins/customServer/index.js +4 -10
- package/dist/esm-node/plugins/index.js +2 -0
- package/dist/esm-node/plugins/middlewares.js +19 -0
- package/dist/esm-node/plugins/render/index.js +11 -6
- package/dist/esm-node/plugins/render/inject.js +2 -2
- package/dist/esm-node/serverBase.js +2 -1
- package/dist/esm-node/utils/storage.js +40 -0
- package/dist/types/adapters/node/helper/loadConfig.d.ts +1 -1
- package/dist/types/context.d.ts +3 -0
- package/dist/types/index.d.ts +3 -1
- package/dist/types/plugins/customServer/index.d.ts +2 -4
- package/dist/types/plugins/index.d.ts +1 -0
- package/dist/types/plugins/middlewares.d.ts +2 -0
- package/dist/types/types/plugins/base.d.ts +8 -10
- package/dist/types/types/plugins/index.d.ts +1 -1
- package/dist/types/types/plugins/new.d.ts +2 -2
- package/dist/types/types/server.d.ts +1 -1
- package/dist/types/utils/storage.d.ts +5 -0
- package/package.json +9 -7
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Server as NodeServer } from 'http';
|
|
2
2
|
import type { Http2SecureServer } from 'node:http2';
|
|
3
|
-
import type { CacheOption, Container, HttpMethodDecider, Logger, Metrics, MiddlewareContext, Reporter, ServerRoute
|
|
3
|
+
import type { CacheOption, Container, HttpMethodDecider, Logger, Metrics, MiddlewareContext, Reporter, ServerRoute } from '@modern-js/types';
|
|
4
4
|
import type { MiddlewareHandler } from 'hono';
|
|
5
5
|
import type { UserConfig } from '../config';
|
|
6
6
|
import type { Render } from '../render';
|
|
@@ -36,14 +36,15 @@ export type WebServerStartInput = {
|
|
|
36
36
|
export type WebAdapter = (ctx: MiddlewareContext) => void | Promise<void>;
|
|
37
37
|
/** Plugin Api */
|
|
38
38
|
type MiddlewareOrder = 'pre' | 'post' | 'default';
|
|
39
|
-
export type
|
|
39
|
+
export type MiddlewareObj = {
|
|
40
40
|
name: string;
|
|
41
41
|
path?: string;
|
|
42
42
|
method?: 'options' | 'get' | 'post' | 'put' | 'delete' | 'patch' | 'all';
|
|
43
43
|
handler: MiddlewareHandler | MiddlewareHandler[];
|
|
44
|
-
before?: Array<
|
|
44
|
+
before?: Array<MiddlewareObj['name']>;
|
|
45
45
|
order?: MiddlewareOrder;
|
|
46
46
|
};
|
|
47
|
+
export type ServerMiddleware = MiddlewareObj;
|
|
47
48
|
export interface GetRenderHandlerOptions {
|
|
48
49
|
pwd: string;
|
|
49
50
|
routes: ServerRoute[];
|
|
@@ -55,7 +56,8 @@ export interface GetRenderHandlerOptions {
|
|
|
55
56
|
}
|
|
56
57
|
declare module '@modern-js/types' {
|
|
57
58
|
interface ISAppContext {
|
|
58
|
-
|
|
59
|
+
renderMiddlewares: MiddlewareObj[];
|
|
60
|
+
middlewares: MiddlewareObj[];
|
|
59
61
|
metaName: string;
|
|
60
62
|
getRenderOptions?: GetRenderHandlerOptions;
|
|
61
63
|
render?: Render;
|
|
@@ -67,12 +69,8 @@ export type CacheConfig = {
|
|
|
67
69
|
strategy: CacheOption;
|
|
68
70
|
container?: Container;
|
|
69
71
|
};
|
|
70
|
-
type RenderMiddleware = UnstableMiddleware;
|
|
71
|
-
export interface RenderConfig {
|
|
72
|
-
cache?: CacheConfig;
|
|
73
|
-
middleware?: RenderMiddleware[];
|
|
74
|
-
}
|
|
75
72
|
export type ServerConfig = {
|
|
76
|
-
|
|
73
|
+
renderMiddlewares?: MiddlewareObj[];
|
|
74
|
+
middlewares?: MiddlewareObj[];
|
|
77
75
|
plugins?: (ServerPlugin | ServerPluginLegacy)[];
|
|
78
76
|
} & UserConfig;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './new';
|
|
2
2
|
export * from './old';
|
|
3
|
-
export type { ServerConfig, CacheConfig, OnFallback, FallbackReason, GetRenderHandlerOptions, FileChangeEvent, FallbackInput, WebServerStartInput, APIServerStartInput, } from './base';
|
|
3
|
+
export type { ServerConfig, CacheConfig, OnFallback, FallbackReason, GetRenderHandlerOptions, FileChangeEvent, FallbackInput, WebServerStartInput, APIServerStartInput, ServerMiddleware, MiddlewareObj, } from './base';
|
|
@@ -2,7 +2,7 @@ import type { AsyncHook, AsyncPipelineHook, ServerContext as BaseServerContext,
|
|
|
2
2
|
import type { Hooks } from '@modern-js/plugin-v2/server';
|
|
3
3
|
import type { AfterMatchContext, AfterRenderContext, AfterStreamingRenderContext, ISAppContext, UnstableMiddleware } from '@modern-js/types';
|
|
4
4
|
import type { MiddlewareHandler } from 'hono';
|
|
5
|
-
import type {
|
|
5
|
+
import type { MiddlewareObj } from './base';
|
|
6
6
|
import type { APIServerStartInput, FallbackInput, ServerConfig, WebAdapter, WebServerStartInput } from './base';
|
|
7
7
|
export type FallbackFn = (input: FallbackInput) => Promise<FallbackInput>;
|
|
8
8
|
export type PrepareWebServerFn = (input: WebServerStartInput) => Promise<WebAdapter | Array<UnstableMiddleware> | null>;
|
|
@@ -13,7 +13,7 @@ export type AfterStreamingRenderContextFn = (ctx: AfterStreamingRenderContext) =
|
|
|
13
13
|
export interface ServerPluginExtends extends BaseServerPluginExtends {
|
|
14
14
|
config: ServerConfig;
|
|
15
15
|
extendContext: {
|
|
16
|
-
middlewares:
|
|
16
|
+
middlewares: MiddlewareObj[];
|
|
17
17
|
};
|
|
18
18
|
extendApi: {
|
|
19
19
|
setAppContext: (c: ISAppContext) => void;
|
|
@@ -63,4 +63,4 @@ type ServerVariables = {
|
|
|
63
63
|
export type ServerEnv = {
|
|
64
64
|
Variables: ServerVariables;
|
|
65
65
|
};
|
|
66
|
-
export type { Context, Env, HonoRequest, Next, MiddlewareHandler as Middleware, } from 'hono';
|
|
66
|
+
export type { Context, Env, HonoRequest, Next, MiddlewareHandler, MiddlewareHandler as Middleware, } from 'hono';
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.67.
|
|
18
|
+
"version": "2.67.4",
|
|
19
19
|
"jsnext:source": "./src/index.ts",
|
|
20
20
|
"types": "./dist/types/index.d.ts",
|
|
21
21
|
"main": "./dist/cjs/index.js",
|
|
@@ -50,23 +50,25 @@
|
|
|
50
50
|
"@web-std/fetch": "^4.2.1",
|
|
51
51
|
"@web-std/file": "^3.0.3",
|
|
52
52
|
"@web-std/stream": "^1.0.3",
|
|
53
|
+
"cloneable-readable": "^3.0.0",
|
|
53
54
|
"flatted": "^3.2.9",
|
|
54
55
|
"hono": "^3.12.2",
|
|
55
56
|
"ts-deepmerge": "7.0.2",
|
|
56
|
-
"@modern-js/plugin": "2.67.
|
|
57
|
-
"@modern-js/
|
|
58
|
-
"@modern-js/
|
|
59
|
-
"@modern-js/utils": "2.67.
|
|
57
|
+
"@modern-js/plugin": "2.67.4",
|
|
58
|
+
"@modern-js/plugin-v2": "2.67.4",
|
|
59
|
+
"@modern-js/runtime-utils": "2.67.4",
|
|
60
|
+
"@modern-js/utils": "2.67.4"
|
|
60
61
|
},
|
|
61
62
|
"devDependencies": {
|
|
63
|
+
"@types/cloneable-readable": "^2.0.3",
|
|
62
64
|
"@types/jest": "^29",
|
|
63
65
|
"@types/merge-deep": "^3.0.0",
|
|
64
66
|
"@types/node": "^14",
|
|
65
|
-
"http-proxy-middleware": "^2.0.
|
|
67
|
+
"http-proxy-middleware": "^2.0.9",
|
|
66
68
|
"jest": "^29",
|
|
67
69
|
"ts-jest": "^29.1.0",
|
|
68
70
|
"typescript": "^5",
|
|
69
|
-
"@modern-js/types": "2.67.
|
|
71
|
+
"@modern-js/types": "2.67.4",
|
|
70
72
|
"@scripts/build": "2.66.0",
|
|
71
73
|
"@scripts/jest-config": "2.66.0"
|
|
72
74
|
},
|