ssr-plugin-react 6.2.50 → 6.2.51

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.
@@ -1,7 +1,7 @@
1
- ssr-plugin-react:build: cache hit, replaying output 8c63e28a47bebd07
1
+ ssr-plugin-react:build: cache hit, replaying output c77da20edee4271b
2
2
  ssr-plugin-react:build:
3
- ssr-plugin-react:build: > ssr-plugin-react@6.2.50 build /home/runner/work/ssr/ssr/packages/plugin-react
3
+ ssr-plugin-react:build: > ssr-plugin-react@6.2.51 build /home/runner/work/ssr/ssr/packages/plugin-react
4
4
  ssr-plugin-react:build: > concurrently "tsc -p ./tsconfig.cjs.json " " tsc -p ./tsconfig.esm.json"
5
5
  ssr-plugin-react:build:
6
- ssr-plugin-react:build: [0] tsc -p ./tsconfig.cjs.json exited with code 0
7
6
  ssr-plugin-react:build: [1] tsc -p ./tsconfig.esm.json exited with code 0
7
+ ssr-plugin-react:build: [0] tsc -p ./tsconfig.cjs.json exited with code 0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [6.2.51](https://github.com/zhangyuang/ssr/compare/plugin-react@6.2.50...plugin-react@6.2.51) (2022-09-25)
2
+
3
+
4
+ ### Features
5
+
6
+ * move render app logic in server-render not in core ([8638ab2](https://github.com/zhangyuang/ssr/commit/8638ab2970bbd9e47598d93e7038f8f599ea82f5))
7
+ * support ssg ([27e2c7c](https://github.com/zhangyuang/ssr/commit/27e2c7cfb88ce6fa07f393a231d22a1d60b36fd2))
8
+ * update vue2/react logic in plugin ([e2d576b](https://github.com/zhangyuang/ssr/commit/e2d576b92bf8a0e9615480c2d7cccb42ad59635d))
9
+ * 完善 ssg 文档 ([384b85a](https://github.com/zhangyuang/ssr/commit/384b85a820043dc9154677ace66e16568d322aca))
10
+
11
+
12
+
1
13
  ## [6.2.50](https://github.com/zhangyuang/ssr/compare/plugin-react@6.2.49...plugin-react@6.2.50) (2022-09-06)
2
14
 
3
15
 
package/README.md CHANGED
@@ -102,6 +102,9 @@
102
102
  <td align="center"><a href="https://www.myweimai.com/#sectionOne" target="_blank"><img src="https://img.alicdn.com/tfs/TB16i3VrQT2gK0jSZPcXXcKkpXa-400-400.jpg" width="120" alt="微脉"/><br />
103
103
  <a href="https://www.myweimai.com/#sectionOne" target="_bvlank"><sub><b>微脉
104
104
  </b></a></td>
105
+ <td align="center"><a href="hhttps://www.xdjy100.com/" target="_blank"><img src="https://res.wx.qq.com/shop/public/4a9526b5-0678-471a-bb98-d8545270f87f.png" width="120" alt="行动教育"/><br />
106
+ <a href="https://www.xdjy100.com/" target="_bvlank"><sub><b>行动教育
107
+ </b></a></td>
105
108
  </tr>
106
109
  <tr>
107
110
  <td align="center" style="height: 100px"><a href="https://www.habisummercamp.com/" target="_blank"><img src="https://res.wx.qq.com/op_res/XXUpF56bDue53vZadoCSPSnqKF3bZqPOQnqsPa_ngEARa0OUIW22pX7eKsftPb6pc5ny62cR_wXM4g5xJ7G3DQ
@@ -131,6 +134,11 @@
131
134
  <td align="center"><a href="https://n8n8.cn/" target="_blank"><img src="https://static.jingzhuan.cn/static/portal/logo.png" width="120" alt="经传多赢股票网"/><br /><a href="https://n8n8.cn/" target="_blank"><sub><b>经传多赢股票网
132
135
  </b></a></td>
133
136
  </tr>
137
+ <tr>
138
+ <td align="center"><a href="https://www.sinovip.cn/home" target="_blank"><img src="https://res.wx.qq.com/shop/public/9e3d374e-5b54-4457-af2f-b457e544adc4.png" width="120" alt="中商全球图书采选平台
139
+ "/><br /><a href="https://www.sinovip.cn/home" target="_blank"><sub><b>中商全球图书采选平台
140
+ </b></a></td>
141
+ </tr>
134
142
  </table>
135
143
 
136
144
  ## Features
@@ -1,6 +1,5 @@
1
- import * as React from 'react';
2
- import { StaticRouter } from 'react-router-dom';
3
1
  import { ISSRContext, IConfig } from 'ssr-types';
4
- declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.CElement<import("react-router-dom").StaticRouterProps, StaticRouter>>;
5
- export { serverRender };
2
+ import { Routes } from './create-router';
3
+ declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<string | NodeJS.ReadableStream>;
4
+ export { serverRender, Routes };
6
5
  //# sourceMappingURL=server-entry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAmD,MAAM,WAAW,CAAA;AAOjG,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,wFA0E5D,CAAA;AAED,OAAO,EACL,YAAY,EACb,CAAA"}
1
+ {"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAmD,MAAM,WAAW,CAAA;AAGjG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAIxC,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,4CA2E5D,CAAA;AAED,OAAO,EACL,YAAY,EACZ,MAAM,EACP,CAAA"}
@@ -1,17 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.serverRender = void 0;
3
+ exports.Routes = exports.serverRender = void 0;
4
4
  const React = require("react");
5
5
  const react_1 = require("react");
6
6
  const react_router_dom_1 = require("react-router-dom");
7
+ const server_1 = require("react-dom/server");
7
8
  const ssr_common_utils_1 = require("ssr-common-utils");
8
9
  const ssr_serialize_javascript_1 = require("ssr-serialize-javascript");
9
10
  const create_context_1 = require("_build/create-context");
10
11
  const create_router_1 = require("./create-router");
12
+ Object.defineProperty(exports, "Routes", { enumerable: true, get: function () { return create_router_1.Routes; } });
11
13
  const { FeRoutes, layoutFetch, state, Layout } = create_router_1.Routes;
12
14
  const serverRender = async (ctx, config) => {
13
15
  var _a;
14
- const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix } = config;
16
+ const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix, stream } = config;
15
17
  const path = (0, ssr_common_utils_1.normalizePath)(ctx.request.path, prefix);
16
18
  const routeItem = (0, ssr_common_utils_1.findRoute)(FeRoutes, path);
17
19
  (0, ssr_common_utils_1.setStoreContext)(create_context_1.STORE_CONTEXT);
@@ -60,7 +62,7 @@ const serverRender = async (ctx, config) => {
60
62
  __html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${(0, ssr_serialize_javascript_1.serialize)(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
61
63
  } });
62
64
  // with jsx type error, use createElement here
63
- return (0, react_1.createElement)(react_router_dom_1.StaticRouter, {
65
+ const ele = (0, react_1.createElement)(react_router_dom_1.StaticRouter, {
64
66
  location: ctx.request.url,
65
67
  basename: prefix === '/' ? undefined : prefix
66
68
  }, (0, react_1.createElement)(create_context_1.STORE_CONTEXT.Provider, {
@@ -73,6 +75,7 @@ const serverRender = async (ctx, config) => {
73
75
  staticList: staticList,
74
76
  injectState: injectState
75
77
  }, (0, react_1.createElement)(Component, null))));
78
+ return stream ? (0, server_1.renderToNodeStream)(ele) : (0, server_1.renderToString)(ele);
76
79
  };
77
80
  exports.serverRender = serverRender;
78
81
  //# sourceMappingURL=server-entry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import * as React from 'react';
2
- import { StaticRouter } from 'react-router-dom';
3
1
  import { ISSRContext, IConfig } from 'ssr-types';
4
- declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<React.CElement<import("react-router-dom").StaticRouterProps, StaticRouter>>;
5
- export { serverRender };
2
+ import { Routes } from './create-router';
3
+ declare const serverRender: (ctx: ISSRContext, config: IConfig) => Promise<string | NodeJS.ReadableStream>;
4
+ export { serverRender, Routes };
6
5
  //# sourceMappingURL=server-entry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,OAAO,EAAmD,MAAM,WAAW,CAAA;AAOjG,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,wFA0E5D,CAAA;AAED,OAAO,EACL,YAAY,EACb,CAAA"}
1
+ {"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAmD,MAAM,WAAW,CAAA;AAGjG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAIxC,QAAA,MAAM,YAAY,QAAe,WAAW,UAAU,OAAO,4CA2E5D,CAAA;AAED,OAAO,EACL,YAAY,EACZ,MAAM,EACP,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { createElement } from 'react';
3
3
  import { StaticRouter } from 'react-router-dom';
4
+ import { renderToString, renderToNodeStream } from 'react-dom/server';
4
5
  import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk, reactRefreshFragment, setStoreContext } from 'ssr-common-utils';
5
6
  import { serialize } from 'ssr-serialize-javascript';
6
7
  import { STORE_CONTEXT as Context } from '_build/create-context';
@@ -8,7 +9,7 @@ import { Routes } from './create-router';
8
9
  const { FeRoutes, layoutFetch, state, Layout } = Routes;
9
10
  const serverRender = async (ctx, config) => {
10
11
  var _a;
11
- const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix } = config;
12
+ const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix, stream } = config;
12
13
  const path = normalizePath(ctx.request.path, prefix);
13
14
  const routeItem = findRoute(FeRoutes, path);
14
15
  setStoreContext(Context);
@@ -57,7 +58,7 @@ const serverRender = async (ctx, config) => {
57
58
  __html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${serialize(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
58
59
  } });
59
60
  // with jsx type error, use createElement here
60
- return createElement(StaticRouter, {
61
+ const ele = createElement(StaticRouter, {
61
62
  location: ctx.request.url,
62
63
  basename: prefix === '/' ? undefined : prefix
63
64
  }, createElement(Context.Provider, {
@@ -70,6 +71,7 @@ const serverRender = async (ctx, config) => {
70
71
  staticList: staticList,
71
72
  injectState: injectState
72
73
  }, createElement(Component, null))));
74
+ return stream ? renderToNodeStream(ele) : renderToString(ele);
73
75
  };
74
- export { serverRender };
76
+ export { serverRender, Routes };
75
77
  //# sourceMappingURL=server-entry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/entry/server-entry.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ssr-plugin-react",
3
- "version": "6.2.50",
3
+ "version": "6.2.51",
4
4
  "description": "plugin-react for ssr",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react'
2
2
  import { createElement } from 'react'
3
3
  import { StaticRouter } from 'react-router-dom'
4
+ import { renderToString, renderToNodeStream } from 'react-dom/server'
4
5
  import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk, reactRefreshFragment, setStoreContext } from 'ssr-common-utils'
5
6
  import { ISSRContext, IConfig, ReactESMPreloadFeRouteItem, DynamicFC, StaticFC } from 'ssr-types'
6
7
  import { serialize } from 'ssr-serialize-javascript'
@@ -10,7 +11,7 @@ import { Routes } from './create-router'
10
11
  const { FeRoutes, layoutFetch, state, Layout } = Routes
11
12
 
12
13
  const serverRender = async (ctx: ISSRContext, config: IConfig) => {
13
- const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix } = config
14
+ const { mode, parallelFetch, prefix, isVite, isDev, clientPrefix, stream } = config
14
15
  const path = normalizePath(ctx.request.path, prefix)
15
16
  const routeItem = findRoute<ReactESMPreloadFeRouteItem>(FeRoutes, path)
16
17
  setStoreContext(Context)
@@ -70,7 +71,7 @@ const serverRender = async (ctx: ISSRContext, config: IConfig) => {
70
71
  __html: `window.__USE_SSR__=true; window.__INITIAL_DATA__ =${serialize(combineData)}; window.prefix="${prefix}";${clientPrefix ? `window.clientPrefix="${clientPrefix}";` : ''}`
71
72
  }} />
72
73
  // with jsx type error, use createElement here
73
- return createElement(StaticRouter, {
74
+ const ele = createElement(StaticRouter, {
74
75
  location: ctx.request.url,
75
76
  basename: prefix === '/' ? undefined : prefix
76
77
  }, createElement(Context.Provider, {
@@ -83,8 +84,10 @@ const serverRender = async (ctx: ISSRContext, config: IConfig) => {
83
84
  staticList: staticList,
84
85
  injectState: injectState
85
86
  }, createElement(Component, null))))
87
+ return stream ? renderToNodeStream(ele) : renderToString(ele)
86
88
  }
87
89
 
88
90
  export {
89
- serverRender
91
+ serverRender,
92
+ Routes
90
93
  }