ssr-plugin-react 6.2.12 → 6.2.13

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 CHANGED
@@ -1,3 +1,15 @@
1
+ ## [6.2.13](https://github.com/zhangyuang/ssr/compare/plugin-react@6.2.12...plugin-react@6.2.13) (2022-04-18)
2
+
3
+
4
+ ### Features
5
+
6
+ * update extraJsOrder extraCssOrder ([cd5ca99](https://github.com/zhangyuang/ssr/commit/cd5ca99a686ea565020500a6c4f77e310b422ce3))
7
+ * update midway deploy ([a473c59](https://github.com/zhangyuang/ssr/commit/a473c599657df42b4bf7a59f248b3c7c33907657))
8
+ * update plugin-vue3 support call pinia in fetch.ts ([958fdc7](https://github.com/zhangyuang/ssr/commit/958fdc787ab615593f3114a6bf2c6cea4823afc2))
9
+ * upgrade midway example to v3 ([572f7c5](https://github.com/zhangyuang/ssr/commit/572f7c5d171346cc17f5f6cdebe33aee76e0c146))
10
+
11
+
12
+
1
13
  ## 6.2.12 (2022-04-15)
2
14
 
3
15
 
@@ -15,7 +15,7 @@ const { FeRoutes, layoutFetch, PrefixRouterBase, state } = create_router_1.Route
15
15
  const serialize = serializeWrap.default || serializeWrap;
16
16
  const serverRender = async (ctx, config) => {
17
17
  var _a;
18
- const { cssOrder, jsOrder, dynamic, mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config;
18
+ const { mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config;
19
19
  let path = ctx.request.path; // 这里取 pathname 不能够包含 queryString
20
20
  const base = prefix !== null && prefix !== void 0 ? prefix : PrefixRouterBase; // 以开发者实际传入的为最高优先级
21
21
  if (base) {
@@ -28,14 +28,9 @@ const serverRender = async (ctx, config) => {
28
28
  If you create new folder or component file, please restart server by npm start
29
29
  `);
30
30
  }
31
- let dynamicCssOrder = cssOrder;
32
- if (dynamic) {
33
- dynamicCssOrder = cssOrder.concat([`${routeItem.webpackChunkName}.css`]);
34
- if (!isVite || (isVite && !isDev)) {
35
- // call it when webpack mode or vite prod mode
36
- dynamicCssOrder = await (0, ssr_server_utils_1.addAsyncChunk)(dynamicCssOrder, routeItem.webpackChunkName);
37
- }
38
- }
31
+ const { fetch, webpackChunkName, component } = routeItem;
32
+ const dynamicCssOrder = await (0, ssr_server_utils_1.getAsyncCssChunk)(ctx, webpackChunkName);
33
+ const dynamicJsOrder = await (0, ssr_server_utils_1.getAsyncJsChunk)(ctx);
39
34
  const manifest = await (0, ssr_server_utils_1.getManifest)(config);
40
35
  const injectCss = [];
41
36
  if (isVite && isDev) {
@@ -66,14 +61,13 @@ const serverRender = async (ctx, config) => {
66
61
  __html: 'window.__USE_VITE__=true'
67
62
  } }),
68
63
  (isVite && isDev) && React.createElement("script", { type: "module", src: '/node_modules/ssr-plugin-react/esm/entry/client-entry.js', key: "vite-react-entry" }),
69
- ...jsOrder.map(js => manifest[js]).map(item => item && React.createElement("script", { key: item, src: item, type: isVite ? 'module' : '' }))
64
+ ...dynamicJsOrder.map(js => manifest[js]).map(item => item && React.createElement("script", { key: item, src: item, type: isVite ? 'module' : '' }))
70
65
  ];
71
66
  const staticList = {
72
67
  injectCss,
73
68
  injectScript
74
69
  };
75
70
  const isCsr = !!(mode === 'csr' || ((_a = ctx.request.query) === null || _a === void 0 ? void 0 : _a.csr));
76
- const { component, fetch } = routeItem;
77
71
  const Component = isCsr ? React.Fragment : (await component()).default;
78
72
  if (isCsr) {
79
73
  (0, ssr_server_utils_1.logGreen)(`Current path ${path} use csr render mode`);
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { StaticRouter } from 'react-router-dom';
3
- import { findRoute, getManifest, logGreen, normalizePath, addAsyncChunk } from 'ssr-server-utils';
3
+ import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk } from 'ssr-server-utils';
4
4
  // @ts-expect-error
5
5
  import * as serializeWrap from 'serialize-javascript';
6
6
  // @ts-expect-error
@@ -12,7 +12,7 @@ const { FeRoutes, layoutFetch, PrefixRouterBase, state } = Routes;
12
12
  const serialize = serializeWrap.default || serializeWrap;
13
13
  const serverRender = async (ctx, config) => {
14
14
  var _a;
15
- const { cssOrder, jsOrder, dynamic, mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config;
15
+ const { mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config;
16
16
  let path = ctx.request.path; // 这里取 pathname 不能够包含 queryString
17
17
  const base = prefix !== null && prefix !== void 0 ? prefix : PrefixRouterBase; // 以开发者实际传入的为最高优先级
18
18
  if (base) {
@@ -25,14 +25,9 @@ const serverRender = async (ctx, config) => {
25
25
  If you create new folder or component file, please restart server by npm start
26
26
  `);
27
27
  }
28
- let dynamicCssOrder = cssOrder;
29
- if (dynamic) {
30
- dynamicCssOrder = cssOrder.concat([`${routeItem.webpackChunkName}.css`]);
31
- if (!isVite || (isVite && !isDev)) {
32
- // call it when webpack mode or vite prod mode
33
- dynamicCssOrder = await addAsyncChunk(dynamicCssOrder, routeItem.webpackChunkName);
34
- }
35
- }
28
+ const { fetch, webpackChunkName, component } = routeItem;
29
+ const dynamicCssOrder = await getAsyncCssChunk(ctx, webpackChunkName);
30
+ const dynamicJsOrder = await getAsyncJsChunk(ctx);
36
31
  const manifest = await getManifest(config);
37
32
  const injectCss = [];
38
33
  if (isVite && isDev) {
@@ -63,14 +58,13 @@ const serverRender = async (ctx, config) => {
63
58
  __html: 'window.__USE_VITE__=true'
64
59
  } }),
65
60
  (isVite && isDev) && React.createElement("script", { type: "module", src: '/node_modules/ssr-plugin-react/esm/entry/client-entry.js', key: "vite-react-entry" }),
66
- ...jsOrder.map(js => manifest[js]).map(item => item && React.createElement("script", { key: item, src: item, type: isVite ? 'module' : '' }))
61
+ ...dynamicJsOrder.map(js => manifest[js]).map(item => item && React.createElement("script", { key: item, src: item, type: isVite ? 'module' : '' }))
67
62
  ];
68
63
  const staticList = {
69
64
  injectCss,
70
65
  injectScript
71
66
  };
72
67
  const isCsr = !!(mode === 'csr' || ((_a = ctx.request.query) === null || _a === void 0 ? void 0 : _a.csr));
73
- const { component, fetch } = routeItem;
74
68
  const Component = isCsr ? React.Fragment : (await component()).default;
75
69
  if (isCsr) {
76
70
  logGreen(`Current path ${path} use csr render mode`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ssr-plugin-react",
3
- "version": "6.2.12",
3
+ "version": "6.2.13",
4
4
  "description": "plugin-react for ssr",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react'
2
2
  import { StaticRouter } from 'react-router-dom'
3
- import { findRoute, getManifest, logGreen, normalizePath, addAsyncChunk } from 'ssr-server-utils'
3
+ import { findRoute, getManifest, logGreen, normalizePath, getAsyncCssChunk, getAsyncJsChunk } from 'ssr-server-utils'
4
4
  import { ISSRContext, IConfig, ReactRoutesType, ReactESMFeRouteItem } from 'ssr-types-react'
5
5
  // @ts-expect-error
6
6
  import * as serializeWrap from 'serialize-javascript'
@@ -14,7 +14,7 @@ const { FeRoutes, layoutFetch, PrefixRouterBase, state } = Routes as ReactRoutes
14
14
  const serialize = serializeWrap.default || serializeWrap
15
15
 
16
16
  const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.ReactElement> => {
17
- const { cssOrder, jsOrder, dynamic, mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config
17
+ const { mode, parallelFetch, disableClientRender, prefix, isVite, isDev, clientPrefix } = config
18
18
  let path = ctx.request.path // 这里取 pathname 不能够包含 queryString
19
19
  const base = prefix ?? PrefixRouterBase // 以开发者实际传入的为最高优先级
20
20
  if (base) {
@@ -29,15 +29,9 @@ const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.Re
29
29
  `)
30
30
  }
31
31
 
32
- let dynamicCssOrder = cssOrder
33
-
34
- if (dynamic) {
35
- dynamicCssOrder = cssOrder.concat([`${routeItem.webpackChunkName}.css`])
36
- if (!isVite || (isVite && !isDev)) {
37
- // call it when webpack mode or vite prod mode
38
- dynamicCssOrder = await addAsyncChunk(dynamicCssOrder, routeItem.webpackChunkName)
39
- }
40
- }
32
+ const { fetch, webpackChunkName, component } = routeItem
33
+ const dynamicCssOrder = await getAsyncCssChunk(ctx, webpackChunkName)
34
+ const dynamicJsOrder = await getAsyncJsChunk(ctx)
41
35
  const manifest = await getManifest(config)
42
36
 
43
37
  const injectCss: JSX.Element[] = []
@@ -71,7 +65,7 @@ const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.Re
71
65
  __html: 'window.__USE_VITE__=true'
72
66
  }} />,
73
67
  (isVite && isDev) && <script type="module" src='/node_modules/ssr-plugin-react/esm/entry/client-entry.js' key="vite-react-entry" />,
74
- ...jsOrder.map(js => manifest[js]).map(item => item && <script key={item} src={item} type={isVite ? 'module' : ''}/>)
68
+ ...dynamicJsOrder.map(js => manifest[js]).map(item => item && <script key={item} src={item} type={isVite ? 'module' : ''}/>)
75
69
  ]
76
70
  const staticList = {
77
71
  injectCss,
@@ -79,7 +73,6 @@ const serverRender = async (ctx: ISSRContext, config: IConfig): Promise<React.Re
79
73
  }
80
74
 
81
75
  const isCsr = !!(mode === 'csr' || ctx.request.query?.csr)
82
- const { component, fetch } = routeItem
83
76
  const Component = isCsr ? React.Fragment : (await component()).default
84
77
 
85
78
  if (isCsr) {