@modern-js/runtime 2.0.0-beta.0 → 2.0.0-beta.1
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/CHANGELOG.md +77 -0
- package/dist/js/modern/cli/index.js +3 -5
- package/dist/js/modern/core/app-config.js +2 -1
- package/dist/js/modern/core/compatible.js +63 -46
- package/dist/js/modern/core/index.js +3 -2
- package/dist/js/modern/core/loader/loaderManager.js +12 -34
- package/dist/js/modern/core/loader/useLoader.js +8 -26
- package/dist/js/modern/core/plugin.js +6 -28
- package/dist/js/modern/document/Body.js +17 -0
- package/dist/js/modern/document/DocumentContext.js +6 -0
- package/dist/js/modern/document/DocumentStructrueContext.js +7 -0
- package/dist/js/modern/document/Head.js +24 -0
- package/dist/js/modern/document/Html.js +92 -0
- package/dist/js/modern/document/Root.js +31 -0
- package/dist/js/modern/document/Scripts.js +10 -0
- package/dist/js/modern/document/cli/index.js +130 -0
- package/dist/js/modern/document/constants.js +19 -0
- package/dist/js/modern/document/index.js +8 -0
- package/dist/js/modern/index.js +1 -1
- package/dist/js/modern/router/cli/index.js +0 -16
- package/dist/js/modern/router/runtime/plugin.js +0 -9
- package/dist/js/modern/router/runtime/plugin.node.js +18 -24
- package/dist/js/modern/router/runtime/root/index.js +19 -0
- package/dist/js/modern/router/runtime/root/load.js +61 -0
- package/dist/js/modern/router/runtime/utils.js +16 -35
- package/dist/js/modern/router/runtime/withRouter.js +1 -3
- package/dist/js/modern/ssr/cli/index.js +2 -23
- package/dist/js/modern/ssr/index.js +23 -34
- package/dist/js/modern/ssr/index.node.js +0 -13
- package/dist/js/modern/ssr/prefetch.js +0 -7
- package/dist/js/modern/ssr/react/prerender/index.js +2 -23
- package/dist/js/modern/ssr/react/prerender/util.js +2 -17
- package/dist/js/modern/ssr/react/withCallback/index.js +0 -1
- package/dist/js/modern/ssr/serverRender/helmet.js +12 -20
- package/dist/js/modern/ssr/serverRender/index.js +1 -2
- package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -5
- package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +45 -11
- package/dist/js/modern/ssr/serverRender/renderToStream/index.js +6 -39
- package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +0 -2
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +26 -15
- package/dist/js/modern/ssr/serverRender/renderToStream/template.js +14 -18
- package/dist/js/modern/ssr/serverRender/renderToString/entry.js +2 -34
- package/dist/js/modern/ssr/serverRender/renderToString/index.js +0 -2
- package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +0 -10
- package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +0 -2
- package/dist/js/modern/ssr/serverRender/renderToString/template.js +0 -15
- package/dist/js/modern/ssr/serverRender/renderToString/type.js +0 -1
- package/dist/js/modern/ssr/serverRender/utils.js +2 -6
- package/dist/js/modern/ssr/utils.js +0 -11
- package/dist/js/modern/state/cli/index.js +0 -10
- package/dist/js/modern/state/runtime/plugin.js +1 -14
- package/dist/js/node/cli/index.js +3 -13
- package/dist/js/node/common.js +0 -2
- package/dist/js/node/core/app-config.js +2 -5
- package/dist/js/node/core/compatible.js +63 -64
- package/dist/js/node/core/index.js +0 -16
- package/dist/js/node/core/loader/index.js +0 -2
- package/dist/js/node/core/loader/loaderManager.js +12 -37
- package/dist/js/node/core/loader/useLoader.js +8 -31
- package/dist/js/node/core/plugin.js +5 -34
- package/dist/js/node/document/Body.js +26 -0
- package/dist/js/node/document/DocumentContext.js +14 -0
- package/dist/js/node/document/DocumentStructrueContext.js +15 -0
- package/dist/js/node/document/Head.js +33 -0
- package/dist/js/node/document/Html.js +98 -0
- package/dist/js/node/document/Root.js +41 -0
- package/dist/js/node/document/Scripts.js +17 -0
- package/dist/js/node/document/cli/index.js +140 -0
- package/dist/js/node/document/constants.js +36 -0
- package/dist/js/node/document/index.js +93 -0
- package/dist/js/node/exports/head.js +0 -5
- package/dist/js/node/exports/loadable.js +0 -5
- package/dist/js/node/exports/server.js +0 -2
- package/dist/js/node/exports/styled.js +0 -5
- package/dist/js/node/index.js +0 -8
- package/dist/js/node/router/cli/index.js +0 -20
- package/dist/js/node/router/index.js +0 -4
- package/dist/js/node/router/runtime/DefaultNotFound.js +1 -5
- package/dist/js/node/router/runtime/index.js +0 -5
- package/dist/js/node/router/runtime/plugin.js +0 -17
- package/dist/js/node/router/runtime/plugin.node.js +16 -38
- package/dist/js/node/router/runtime/root/index.js +26 -0
- package/dist/js/node/router/runtime/root/load.js +69 -0
- package/dist/js/node/router/runtime/utils.js +16 -44
- package/dist/js/node/router/runtime/withRouter.js +0 -9
- package/dist/js/node/runtime-context.js +0 -2
- package/dist/js/node/ssr/cli/index.js +2 -26
- package/dist/js/node/ssr/index.js +23 -45
- package/dist/js/node/ssr/index.node.js +0 -23
- package/dist/js/node/ssr/prefetch.js +0 -11
- package/dist/js/node/ssr/react/index.js +0 -2
- package/dist/js/node/ssr/react/nossr/index.js +0 -6
- package/dist/js/node/ssr/react/prerender/index.js +2 -30
- package/dist/js/node/ssr/react/prerender/util.js +2 -25
- package/dist/js/node/ssr/react/withCallback/index.js +1 -4
- package/dist/js/node/ssr/serverRender/helmet.js +13 -20
- package/dist/js/node/ssr/serverRender/index.js +1 -4
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -9
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +0 -1
- package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +43 -15
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +6 -48
- package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +0 -4
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +26 -17
- package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +0 -2
- package/dist/js/node/ssr/serverRender/renderToStream/template.js +16 -23
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +2 -51
- package/dist/js/node/ssr/serverRender/renderToString/index.js +0 -10
- package/dist/js/node/ssr/serverRender/renderToString/loadable.js +0 -14
- package/dist/js/node/ssr/serverRender/renderToString/reduce.js +0 -3
- package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +0 -3
- package/dist/js/node/ssr/serverRender/renderToString/template.js +0 -18
- package/dist/js/node/ssr/serverRender/renderToString/type.js +0 -1
- package/dist/js/node/ssr/serverRender/types.js +0 -1
- package/dist/js/node/ssr/serverRender/utils.js +2 -8
- package/dist/js/node/ssr/utils.js +0 -20
- package/dist/js/node/state/cli/index.js +0 -15
- package/dist/js/node/state/index.js +0 -4
- package/dist/js/node/state/plugins.js +0 -11
- package/dist/js/node/state/runtime/index.js +0 -7
- package/dist/js/node/state/runtime/plugin.js +1 -25
- package/dist/js/treeshaking/cli/index.js +3 -3
- package/dist/js/treeshaking/core/app-config.js +2 -1
- package/dist/js/treeshaking/core/compatible.js +66 -63
- package/dist/js/treeshaking/core/index.js +3 -2
- package/dist/js/treeshaking/core/loader/loaderManager.js +19 -51
- package/dist/js/treeshaking/core/loader/useLoader.js +11 -28
- package/dist/js/treeshaking/core/plugin.js +6 -51
- package/dist/js/treeshaking/document/Body.js +14 -0
- package/dist/js/treeshaking/document/DocumentContext.js +6 -0
- package/dist/js/treeshaking/document/DocumentStructrueContext.js +7 -0
- package/dist/js/treeshaking/document/Head.js +21 -0
- package/dist/js/treeshaking/document/Html.js +104 -0
- package/dist/js/treeshaking/document/Root.js +24 -0
- package/dist/js/treeshaking/document/Scripts.js +10 -0
- package/dist/js/treeshaking/document/cli/index.js +170 -0
- package/dist/js/treeshaking/document/constants.js +16 -0
- package/dist/js/treeshaking/document/index.js +8 -0
- package/dist/js/treeshaking/index.js +1 -1
- package/dist/js/treeshaking/router/cli/index.js +6 -18
- package/dist/js/treeshaking/router/runtime/plugin.js +5 -13
- package/dist/js/treeshaking/router/runtime/plugin.node.js +23 -36
- package/dist/js/treeshaking/router/runtime/root/index.js +17 -0
- package/dist/js/treeshaking/router/runtime/root/load.js +102 -0
- package/dist/js/treeshaking/router/runtime/utils.js +21 -39
- package/dist/js/treeshaking/router/runtime/withRouter.js +1 -0
- package/dist/js/treeshaking/ssr/cli/index.js +9 -31
- package/dist/js/treeshaking/ssr/index.js +26 -40
- package/dist/js/treeshaking/ssr/index.node.js +12 -29
- package/dist/js/treeshaking/ssr/prefetch.js +0 -13
- package/dist/js/treeshaking/ssr/react/nossr/index.js +3 -4
- package/dist/js/treeshaking/ssr/react/prerender/index.js +2 -21
- package/dist/js/treeshaking/ssr/react/prerender/util.js +3 -20
- package/dist/js/treeshaking/ssr/react/withCallback/index.js +1 -2
- package/dist/js/treeshaking/ssr/serverRender/helmet.js +12 -11
- package/dist/js/treeshaking/ssr/serverRender/index.js +1 -9
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -6
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +46 -15
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +9 -79
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +3 -5
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +46 -35
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +17 -24
- package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +20 -73
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +2 -6
- package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +5 -16
- package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +0 -2
- package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +2 -18
- package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +0 -1
- package/dist/js/treeshaking/ssr/serverRender/utils.js +5 -10
- package/dist/js/treeshaking/ssr/utils.js +8 -17
- package/dist/js/treeshaking/state/cli/index.js +3 -10
- package/dist/js/treeshaking/state/runtime/plugin.js +2 -10
- package/dist/types/cli/index.d.ts +0 -2
- package/dist/types/core/compatible.d.ts +5 -5
- package/dist/types/core/index.d.ts +1 -1
- package/dist/types/core/loader/loaderManager.d.ts +0 -1
- package/dist/types/core/loader/useLoader.d.ts +0 -5
- package/dist/types/core/plugin.d.ts +1 -13
- package/dist/types/document/Body.d.ts +4 -0
- package/dist/types/document/DocumentContext.d.ts +13 -0
- package/dist/types/document/DocumentStructrueContext.d.ts +10 -0
- package/dist/types/document/Head.d.ts +5 -0
- package/dist/types/document/Html.d.ts +4 -0
- package/dist/types/document/Root.d.ts +8 -0
- package/dist/types/document/Scripts.d.ts +2 -0
- package/dist/types/document/cli/index.d.ts +3 -0
- package/dist/types/document/constants.d.ts +14 -0
- package/dist/types/document/index.d.ts +8 -0
- package/dist/types/exports/server.d.ts +3 -3
- package/dist/types/index.d.ts +1 -1
- package/dist/types/router/cli/index.d.ts +0 -2
- package/dist/types/router/runtime/root/index.d.ts +8 -0
- package/dist/types/router/runtime/root/load.d.ts +22 -0
- package/dist/types/router/runtime/types.d.ts +0 -2
- package/dist/types/runtime-context.d.ts +1 -0
- package/dist/types/ssr/cli/index.d.ts +0 -2
- package/dist/types/ssr/prefetch.d.ts +2 -2
- package/dist/types/ssr/serverRender/renderToStream/buildTemplate.after.d.ts +3 -2
- package/dist/types/ssr/serverRender/renderToStream/bulidTemplate.before.d.ts +2 -1
- package/dist/types/ssr/serverRender/renderToStream/renderToPipe.d.ts +3 -3
- package/dist/types/ssr/serverRender/renderToStream/template.d.ts +2 -2
- package/dist/types/ssr/serverRender/types.d.ts +1 -4
- package/dist/types/state/cli/index.d.ts +0 -2
- package/dist/types/state/types.d.ts +0 -1
- package/package.json +19 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { TRuntimeContext } from '../runtime-context';
|
|
2
|
+
import { RuntimeContext, TRuntimeContext } from '../runtime-context';
|
|
3
3
|
import { Plugin } from './plugin';
|
|
4
4
|
export declare type CreateAppOptions = {
|
|
5
5
|
plugins: Plugin[];
|
|
@@ -11,11 +11,11 @@ interface HydrateFunc {
|
|
|
11
11
|
(container: Element | Document, initialChildren: React.ReactNode): void;
|
|
12
12
|
(initialChildren: React.ReactNode, container: Element | Document, callback?: () => void): void;
|
|
13
13
|
}
|
|
14
|
-
declare type BootStrap<T = unknown> = (App: React.ComponentType, id: string |
|
|
15
|
-
render
|
|
16
|
-
hydrate
|
|
14
|
+
declare type BootStrap<T = unknown> = (App: React.ComponentType, id: string | HTMLElement | RuntimeContext, root?: any, ReactDOM?: {
|
|
15
|
+
render?: (children: React.ReactNode, rootElement?: HTMLElement) => void;
|
|
16
|
+
hydrate?: HydrateFunc;
|
|
17
17
|
createRoot?: (rootElement: HTMLElement) => any;
|
|
18
|
-
hydrateRoot
|
|
18
|
+
hydrateRoot?: HydrateFunc;
|
|
19
19
|
}) => Promise<T>;
|
|
20
20
|
export declare const bootstrap: BootStrap;
|
|
21
21
|
export declare const useRuntimeContext: () => TRuntimeContext;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { createPlugin, createRuntime, runtime, registerInit
|
|
1
|
+
export { createPlugin, createRuntime, runtime, registerInit } from './plugin';
|
|
2
2
|
export type { Plugin } from './plugin';
|
|
3
3
|
export { defineConfig, getConfig } from './app-config';
|
|
4
4
|
export * from './compatible';
|
|
@@ -35,7 +35,6 @@ declare type ManagerOption = {
|
|
|
35
35
|
* Create loaders manager. It's returned instance will add to context
|
|
36
36
|
* @param initialDataMap used to initialing loader data
|
|
37
37
|
*/
|
|
38
|
-
|
|
39
38
|
export declare const createLoaderManager: (initialDataMap: Record<string, LoaderResult>, managerOptions?: ManagerOption) => {
|
|
40
39
|
hasPendingLoaders: () => boolean;
|
|
41
40
|
awaitPendingLoaders: () => Promise<Record<string, LoaderResult>>;
|
|
@@ -20,28 +20,23 @@ export interface LoaderOptions<Params = any, TData = any, TError extends Error =
|
|
|
20
20
|
/**
|
|
21
21
|
* Revoke when loader ended with error
|
|
22
22
|
*/
|
|
23
|
-
|
|
24
23
|
onError?: (error: TError) => void;
|
|
25
24
|
/**
|
|
26
25
|
* initialData to display once loader is ready.
|
|
27
26
|
*/
|
|
28
|
-
|
|
29
27
|
initialData?: TData;
|
|
30
28
|
/**
|
|
31
29
|
* whether skip loader
|
|
32
30
|
* if true, the loader will not exec.
|
|
33
31
|
*/
|
|
34
|
-
|
|
35
32
|
skip?: boolean;
|
|
36
33
|
/**
|
|
37
34
|
* User params, it will pass to loader's second parameter.
|
|
38
35
|
*/
|
|
39
|
-
|
|
40
36
|
params?: Params;
|
|
41
37
|
/**
|
|
42
38
|
* whether loader can exec on build phase.
|
|
43
39
|
*/
|
|
44
|
-
|
|
45
40
|
static?: boolean;
|
|
46
41
|
}
|
|
47
42
|
declare type LoaderFn<P = any, T = any> = (context: any, params: P) => Promise<T>;
|
|
@@ -30,16 +30,12 @@ declare const runtimeHooks: {
|
|
|
30
30
|
}, TRuntimeContext>;
|
|
31
31
|
};
|
|
32
32
|
/** All hooks of runtime plugin. */
|
|
33
|
-
|
|
34
33
|
export declare type RuntimeHooks = typeof runtimeHooks;
|
|
35
34
|
/** All hook callbacks of runtime plugin. */
|
|
36
|
-
|
|
37
35
|
export declare type RuntimeHookCallbacks = ToThreads<RuntimeHooks>;
|
|
38
36
|
/** All apis for runtime plugin. */
|
|
39
|
-
|
|
40
37
|
export declare type PluginAPI = CommonAPI<RuntimeHooks>;
|
|
41
38
|
/** Plugin options of a runtime plugin. */
|
|
42
|
-
|
|
43
39
|
export declare type Plugin = PluginOptions<RuntimeHooks, Setup<RuntimeHooks>>;
|
|
44
40
|
export declare const createRuntime: () => import("@modern-js/plugin").Manager<{
|
|
45
41
|
hoc: import("@modern-js/plugin").Pipeline<{
|
|
@@ -71,15 +67,7 @@ export declare const createRuntime: () => import("@modern-js/plugin").Manager<{
|
|
|
71
67
|
/**
|
|
72
68
|
* register init hook. It would be revoked both ssr and csr.
|
|
73
69
|
*/
|
|
74
|
-
|
|
75
70
|
declare const registerInit: (App: React.ComponentType, _init: (context: RuntimeContext) => any | Promise<any>) => void;
|
|
76
|
-
/**
|
|
77
|
-
* register prefetch hook. It would be revoked both ssr and csr.
|
|
78
|
-
* But if ssr success, It wont exec in csr again.
|
|
79
|
-
* If ssr prefetch failed, It will fallback to exec in csr.
|
|
80
|
-
*/
|
|
81
|
-
|
|
82
|
-
declare const registerPrefetch: (App: React.ComponentType, prefetch: (context: RuntimeContext) => Promise<any>) => void;
|
|
83
71
|
export declare const runtime: import("@modern-js/plugin").Manager<{
|
|
84
72
|
hoc: import("@modern-js/plugin").Pipeline<{
|
|
85
73
|
App: React.ComponentType<any>;
|
|
@@ -212,4 +200,4 @@ export declare const createPlugin: (setup?: Setup<{
|
|
|
212
200
|
pickedContext: TRuntimeContext;
|
|
213
201
|
}, TRuntimeContext>;
|
|
214
202
|
}, Record<string, never>>;
|
|
215
|
-
export { registerInit
|
|
203
|
+
export { registerInit };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
declare type DocumentProps = {
|
|
3
|
+
[x: string]: any;
|
|
4
|
+
config?: any;
|
|
5
|
+
templateParams: {
|
|
6
|
+
[y: string]: any;
|
|
7
|
+
mountId?: string;
|
|
8
|
+
};
|
|
9
|
+
processEnv?: Record<string, string | undefined>;
|
|
10
|
+
children?: JSX.Element;
|
|
11
|
+
};
|
|
12
|
+
export declare const DocumentContext: React.Context<DocumentProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
declare type DocumentStructrueContextProps = {
|
|
3
|
+
hasSetHead?: boolean;
|
|
4
|
+
hasSetScripts?: boolean;
|
|
5
|
+
hasSetBody?: boolean;
|
|
6
|
+
hasSetRoot?: boolean;
|
|
7
|
+
docChild?: ReactNode;
|
|
8
|
+
};
|
|
9
|
+
export declare const DocumentStructrueContext: React.Context<DocumentStructrueContextProps>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const DOC_EXT: string[];
|
|
2
|
+
export declare const DOCUMENT_META_PLACEHOLDER: string;
|
|
3
|
+
export declare const HTML_SEPARATOR = "<!--<?- html ?>-->";
|
|
4
|
+
export declare const HTML_CHUNKSMAP_SEPARATOR = "<!--<?- chunksMap.js ?>-->";
|
|
5
|
+
export declare const HTML_SSRDATASCRIPT_SEPARATOR = "<!--<?- SSRDataScript ?>-->";
|
|
6
|
+
export declare const DOCUMENT_SSR_PLACEHOLDER: string;
|
|
7
|
+
export declare const DOCUMENT_CHUNKSMAP_PLACEHOLDER: string;
|
|
8
|
+
export declare const DOCUMENT_SSRDATASCRIPT_PLACEHOLDER: string;
|
|
9
|
+
export declare const DOCUMENT_FILE_NAME = "document";
|
|
10
|
+
export declare const DOCUMENT_SCRIPTS_PLACEHOLDER: string;
|
|
11
|
+
export declare const DOCUMENT_NO_SCRIPTE_PLACEHOLDER: string;
|
|
12
|
+
export declare const PLACEHOLDER_REPLACER_MAP: {
|
|
13
|
+
[x: string]: string;
|
|
14
|
+
};
|
|
@@ -4,7 +4,7 @@ export declare const hook: (attacher: ({
|
|
|
4
4
|
afterMatch,
|
|
5
5
|
afterRender
|
|
6
6
|
}: {
|
|
7
|
-
addMiddleware: (mid:
|
|
7
|
+
addMiddleware: (mid: Middleware) => void;
|
|
8
8
|
afterRender: (hook: AfterRenderHook) => void;
|
|
9
9
|
afterMatch: (hook: AfterMatchHook) => void;
|
|
10
10
|
}) => void) => ({
|
|
@@ -12,10 +12,10 @@ export declare const hook: (attacher: ({
|
|
|
12
12
|
afterMatch,
|
|
13
13
|
afterRender
|
|
14
14
|
}: {
|
|
15
|
-
addMiddleware: (mid:
|
|
15
|
+
addMiddleware: (mid: Middleware) => void;
|
|
16
16
|
afterRender: (hook: AfterRenderHook) => void;
|
|
17
17
|
afterMatch: (hook: AfterMatchHook) => void;
|
|
18
18
|
}) => void;
|
|
19
19
|
export declare type AfterRenderHook = (context: AfterRenderContext, next: NextFunction) => void;
|
|
20
20
|
export declare type AfterMatchHook = (context: AfterMatchContext, next: NextFunction) => void;
|
|
21
|
-
export declare type
|
|
21
|
+
export declare type Middleware = (context: MiddlewareContext, next: NextFunction) => Promise<void> | void;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -4,5 +4,5 @@ export type { Plugin } from './core';
|
|
|
4
4
|
export type { AppConfig } from './common';
|
|
5
5
|
export { isBrowser } from './common';
|
|
6
6
|
export type { BaseRuntimeContext, RuntimeContext, BaseTRuntimeContext, TRuntimeContext } from './runtime-context';
|
|
7
|
-
export { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext,
|
|
7
|
+
export { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext, defineConfig, registerInit, useRuntimeContext } from './core';
|
|
8
8
|
export { StateConfig, RouterConfig };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Location, Params } from 'react-router-dom';
|
|
2
|
+
import type { NestedRoute } from '@modern-js/types';
|
|
3
|
+
interface RouteAssets {
|
|
4
|
+
[routeId: string]: {
|
|
5
|
+
chunkIds?: (string | number)[];
|
|
6
|
+
assets?: string[];
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
interface RouteManifest {
|
|
10
|
+
routeAssets: RouteAssets;
|
|
11
|
+
enableFetchParallel?: boolean;
|
|
12
|
+
enableLogging?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface RouteMatch<Route> {
|
|
15
|
+
params: Params;
|
|
16
|
+
pathname: string;
|
|
17
|
+
route: Route;
|
|
18
|
+
}
|
|
19
|
+
export declare function handleLoad(routes: NestedRoute[], location: Location, routeManifest: RouteManifest): void;
|
|
20
|
+
export declare function matchClientRoutes(routes: NestedRoute[], location: Location): RouteMatch<NestedRoute>[];
|
|
21
|
+
export declare function loadRouteModule(route: NestedRoute, routeAssets: RouteAssets): Promise<string[] | void>;
|
|
22
|
+
export {};
|
|
@@ -18,12 +18,10 @@ export declare type SingleRouteConfig = RouteProps & {
|
|
|
18
18
|
/**
|
|
19
19
|
* layout component
|
|
20
20
|
*/
|
|
21
|
-
|
|
22
21
|
layout?: React.ComponentType;
|
|
23
22
|
/**
|
|
24
23
|
* component would be rendered when route macthed.
|
|
25
24
|
*/
|
|
26
|
-
|
|
27
25
|
component?: React.ComponentType;
|
|
28
26
|
};
|
|
29
27
|
export declare type RouterConfig = {
|
|
@@ -4,6 +4,7 @@ import { createLoaderManager } from './core/loader/loaderManager';
|
|
|
4
4
|
import { runtime } from './core/plugin';
|
|
5
5
|
import { SSRServerContext } from './ssr/serverRender/types';
|
|
6
6
|
export interface BaseRuntimeContext {
|
|
7
|
+
initialData?: Record<string, unknown>;
|
|
7
8
|
loaderManager: ReturnType<typeof createLoaderManager>;
|
|
8
9
|
runner: ReturnType<typeof runtime.init>;
|
|
9
10
|
ssrContext?: SSRServerContext;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { RuntimeContext } from '../core';
|
|
2
2
|
declare const prefetch: (App: React.ComponentType<any>, context: RuntimeContext) => Promise<{
|
|
3
|
-
initialData:
|
|
3
|
+
initialData: Record<string, unknown> | undefined;
|
|
4
4
|
i18nData: any;
|
|
5
5
|
loadersData?: undefined;
|
|
6
6
|
storeState?: undefined;
|
|
7
7
|
} | {
|
|
8
8
|
loadersData: Record<string, import("../core/loader/loaderManager").LoaderResult>;
|
|
9
|
-
initialData:
|
|
9
|
+
initialData: Record<string, unknown> | undefined;
|
|
10
10
|
i18nData: any;
|
|
11
11
|
storeState: any;
|
|
12
12
|
}>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RenderLevel, SSRServerContext } from '../types';
|
|
2
2
|
declare type BuildShellAfterTemplateOptions = {
|
|
3
|
-
|
|
3
|
+
ssrContext: SSRServerContext;
|
|
4
|
+
renderLevel: RenderLevel;
|
|
4
5
|
};
|
|
5
6
|
export declare function buildShellAfterTemplate(afterAppTemplate: string, options: BuildShellAfterTemplateOptions): string;
|
|
6
7
|
export {};
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { RuntimeContext } from '../types';
|
|
2
|
+
export declare function buildShellBeforeTemplate(beforeAppTemplate: string, context: RuntimeContext): string;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// <reference types="react" />
|
|
3
3
|
import { Writable } from 'stream';
|
|
4
4
|
import { RenderToPipeableStreamOptions } from 'react-dom/server';
|
|
5
|
-
import {
|
|
6
|
-
export declare type Pipe<T extends Writable> = (output: T) => Promise<T>;
|
|
7
|
-
declare function renderToPipe(rootElement: React.ReactElement,
|
|
5
|
+
import { RuntimeContext } from '../types';
|
|
6
|
+
export declare type Pipe<T extends Writable> = (output: T) => Promise<T | string>;
|
|
7
|
+
declare function renderToPipe(rootElement: React.ReactElement, context: RuntimeContext, options?: RenderToPipeableStreamOptions): Pipe<Writable>;
|
|
8
8
|
export default renderToPipe;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { RuntimeContext } from '../types';
|
|
1
|
+
import { RenderLevel, RuntimeContext } from '../types';
|
|
2
2
|
import { InjectTemplate } from './type';
|
|
3
|
-
export declare
|
|
3
|
+
export declare const getTemplates: (context: RuntimeContext, renderLevel: RenderLevel) => InjectTemplate;
|
|
@@ -3,10 +3,7 @@ import type { ServerConfig } from '@modern-js/core';
|
|
|
3
3
|
import type { RuntimeContext } from '../../core';
|
|
4
4
|
import { RenderLevel } from './renderToString/type';
|
|
5
5
|
export type { SSRServerContext } from './renderToString/type';
|
|
6
|
-
export declare type ModernSSRReactComponent = React.ComponentType<any
|
|
7
|
-
init: (context: RuntimeContext) => Promise<void>;
|
|
8
|
-
prefetch: (context: RuntimeContext) => Promise<Record<string, any>>;
|
|
9
|
-
};
|
|
6
|
+
export declare type ModernSSRReactComponent = React.ComponentType<any>;
|
|
10
7
|
export { RuntimeContext, RenderLevel };
|
|
11
8
|
export declare type SSRPluginConfig = {
|
|
12
9
|
crossorigin?: boolean | 'anonymous' | 'use-credentials';
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"modern",
|
|
12
12
|
"modern.js"
|
|
13
13
|
],
|
|
14
|
-
"version": "2.0.0-beta.
|
|
14
|
+
"version": "2.0.0-beta.1",
|
|
15
15
|
"engines": {
|
|
16
16
|
"node": ">=14.17.6"
|
|
17
17
|
},
|
|
@@ -48,6 +48,11 @@
|
|
|
48
48
|
"node": "./dist/js/node/exports/server.js",
|
|
49
49
|
"default": "./dist/js/treeshaking/exports/server.js"
|
|
50
50
|
},
|
|
51
|
+
"./document": {
|
|
52
|
+
"jsnext:source": "./src/document/index.ts",
|
|
53
|
+
"node": "./dist/js/node/document/index.js",
|
|
54
|
+
"default": "./dist/js/treeshaking/document/index.js"
|
|
55
|
+
},
|
|
51
56
|
"./ssr": {
|
|
52
57
|
"jsnext:source": "./src/ssr/index.ts",
|
|
53
58
|
"node": "./dist/js/node/ssr/index",
|
|
@@ -93,6 +98,9 @@
|
|
|
93
98
|
"server": [
|
|
94
99
|
"./dist/types/exports/server.d.ts"
|
|
95
100
|
],
|
|
101
|
+
"document": [
|
|
102
|
+
"./dist/types/document/index.d.ts"
|
|
103
|
+
],
|
|
96
104
|
"ssr": [
|
|
97
105
|
"./dist/types/ssr/index.d.ts"
|
|
98
106
|
],
|
|
@@ -120,9 +128,6 @@
|
|
|
120
128
|
"@modern-js-reduck/plugin-immutable": "^1.0.1",
|
|
121
129
|
"@modern-js-reduck/react": "^1.0.1",
|
|
122
130
|
"@modern-js-reduck/store": "^1.0.3",
|
|
123
|
-
"@modern-js/plugin": "2.0.0-beta.0",
|
|
124
|
-
"@modern-js/types": "2.0.0-beta.0",
|
|
125
|
-
"@modern-js/utils": "2.0.0-beta.0",
|
|
126
131
|
"@types/loadable__component": "^5.13.4",
|
|
127
132
|
"@types/react-helmet": "^6.1.2",
|
|
128
133
|
"@types/redux-logger": "^3.0.9",
|
|
@@ -137,18 +142,16 @@
|
|
|
137
142
|
"react-side-effect": "^2.1.1",
|
|
138
143
|
"redux-logger": "^3.0.6",
|
|
139
144
|
"serialize-javascript": "^6.0.0",
|
|
140
|
-
"styled-components": "^5.3.1"
|
|
145
|
+
"styled-components": "^5.3.1",
|
|
146
|
+
"@modern-js/plugin": "2.0.0-beta.1",
|
|
147
|
+
"@modern-js/types": "2.0.0-beta.1",
|
|
148
|
+
"@modern-js/utils": "2.0.0-beta.1"
|
|
141
149
|
},
|
|
142
150
|
"peerDependencies": {
|
|
143
151
|
"react": ">=17",
|
|
144
152
|
"react-dom": ">=17"
|
|
145
153
|
},
|
|
146
154
|
"devDependencies": {
|
|
147
|
-
"@modern-js/core": "2.0.0-beta.0",
|
|
148
|
-
"@modern-js/server-core": "2.0.0-beta.0",
|
|
149
|
-
"@modern-js/utils": "2.0.0-beta.0",
|
|
150
|
-
"@scripts/build": "2.0.0-beta.0",
|
|
151
|
-
"@scripts/jest-config": "2.0.0-beta.0",
|
|
152
155
|
"@testing-library/react": "^13.4.0",
|
|
153
156
|
"@testing-library/react-hooks": "^8.0.1",
|
|
154
157
|
"@remix-run/web-fetch": "^4.1.3",
|
|
@@ -162,7 +165,12 @@
|
|
|
162
165
|
"react": "^18",
|
|
163
166
|
"react-dom": "^18",
|
|
164
167
|
"ts-jest": "^27.0.4",
|
|
165
|
-
"typescript": "^4"
|
|
168
|
+
"typescript": "^4",
|
|
169
|
+
"@modern-js/core": "2.0.0-beta.1",
|
|
170
|
+
"@modern-js/server-core": "2.0.0-beta.1",
|
|
171
|
+
"@modern-js/utils": "2.0.0-beta.1",
|
|
172
|
+
"@scripts/build": "2.0.0-beta.1",
|
|
173
|
+
"@scripts/jest-config": "2.0.0-beta.1"
|
|
166
174
|
},
|
|
167
175
|
"sideEffects": false,
|
|
168
176
|
"modernConfig": {},
|