@umijs/renderer-react 4.0.55 → 4.0.57

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.
@@ -9,23 +9,18 @@ export function useAppData() {
9
9
  }
10
10
  export function useSelectedRoutes() {
11
11
  var location = useLocation();
12
-
13
12
  var _useAppData = useAppData(),
14
- clientRoutes = _useAppData.clientRoutes; // use `useLocation` get location without `basename`, not need `basename` param
15
-
16
-
13
+ clientRoutes = _useAppData.clientRoutes;
14
+ // use `useLocation` get location without `basename`, not need `basename` param
17
15
  var routes = matchRoutes(clientRoutes, location.pathname);
18
16
  return routes || [];
19
17
  }
20
18
  export function useRouteProps() {
21
19
  var _currentRoute$;
22
-
23
20
  var currentRoute = useSelectedRoutes().slice(-1);
24
-
25
21
  var _ref = ((_currentRoute$ = currentRoute[0]) === null || _currentRoute$ === void 0 ? void 0 : _currentRoute$.route) || {},
26
- _ = _ref.element,
27
- props = _objectWithoutProperties(_ref, _excluded);
28
-
22
+ _ = _ref.element,
23
+ props = _objectWithoutProperties(_ref, _excluded);
29
24
  return props;
30
25
  }
31
26
  export function useServerLoaderData() {
package/dist/link.js CHANGED
@@ -6,19 +6,16 @@ import { Link } from 'react-router-dom';
6
6
  import { useAppData } from "./appContext";
7
7
  export function LinkWithPrefetch(props) {
8
8
  var _props$to;
9
-
10
9
  var prefetch = props.prefetch,
11
- linkProps = _objectWithoutProperties(props, _excluded);
12
-
10
+ linkProps = _objectWithoutProperties(props, _excluded);
13
11
  var appData = useAppData();
14
- var to = typeof props.to === 'string' ? props.to : (_props$to = props.to) === null || _props$to === void 0 ? void 0 : _props$to.pathname; // compatible with old code
12
+ var to = typeof props.to === 'string' ? props.to : (_props$to = props.to) === null || _props$to === void 0 ? void 0 : _props$to.pathname;
13
+ // compatible with old code
15
14
  // which to might be undefined
16
-
17
15
  if (!to) return null;
18
16
  return /*#__PURE__*/React.createElement(Link, _extends({
19
17
  onMouseEnter: function onMouseEnter() {
20
18
  var _appData$preloadRoute;
21
-
22
19
  return prefetch && to && ((_appData$preloadRoute = appData.preloadRoute) === null || _appData$preloadRoute === void 0 ? void 0 : _appData$preloadRoute.call(appData, to));
23
20
  }
24
21
  }, linkProps), props.children);
package/dist/routes.js CHANGED
@@ -9,8 +9,8 @@ import { RouteContext, useRouteData } from "./routeContext";
9
9
  import { useAppData } from "./appContext";
10
10
  export function createClientRoutes(opts) {
11
11
  var routesById = opts.routesById,
12
- parentId = opts.parentId,
13
- routeComponents = opts.routeComponents;
12
+ parentId = opts.parentId,
13
+ routeComponents = opts.routeComponents;
14
14
  return Object.keys(routesById).filter(function (id) {
15
15
  return routesById[id].parentId === parentId;
16
16
  }).map(function (id) {
@@ -32,36 +32,28 @@ export function createClientRoutes(opts) {
32
32
  loadingComponent: opts.loadingComponent,
33
33
  reactRouter5Compat: opts.reactRouter5Compat
34
34
  });
35
-
36
35
  if (children.length > 0) {
37
- route.children = children; // TODO: remove me
36
+ route.children = children;
37
+ // TODO: remove me
38
38
  // compatible with @ant-design/pro-layout
39
-
40
39
  route.routes = children;
41
40
  }
42
-
43
41
  return route;
44
42
  });
45
43
  }
46
-
47
44
  function NavigateWithParams(props) {
48
45
  var params = useParams();
49
-
50
46
  var propsWithParams = _objectSpread(_objectSpread({}, props), {}, {
51
47
  to: generatePath(props.to, params)
52
48
  });
53
-
54
49
  return /*#__PURE__*/React.createElement(Navigate, _extends({
55
50
  replace: true
56
51
  }, propsWithParams));
57
52
  }
58
-
59
53
  function createClientRoute(opts) {
60
54
  var route = opts.route;
61
-
62
55
  var redirect = route.redirect,
63
- props = _objectWithoutProperties(route, _excluded);
64
-
56
+ props = _objectWithoutProperties(route, _excluded);
65
57
  var Remote = opts.reactRouter5Compat ? RemoteComponentReactRouter5 : RemoteComponent;
66
58
  return _objectSpread({
67
59
  element: redirect ? /*#__PURE__*/React.createElement(NavigateWithParams, {
@@ -77,27 +69,24 @@ function createClientRoute(opts) {
77
69
  }))
78
70
  }, props);
79
71
  }
80
-
81
72
  function DefaultLoading() {
82
73
  return /*#__PURE__*/React.createElement("div", null);
83
74
  }
84
-
85
75
  function RemoteComponentReactRouter5(props) {
86
76
  var _useRouteData = useRouteData(),
87
- route = _useRouteData.route;
88
-
77
+ route = _useRouteData.route;
89
78
  var _useAppData = useAppData(),
90
- history = _useAppData.history,
91
- clientRoutes = _useAppData.clientRoutes;
92
-
79
+ history = _useAppData.history,
80
+ clientRoutes = _useAppData.clientRoutes;
93
81
  var params = useParams();
94
82
  var match = {
95
83
  params: params,
96
84
  isExact: true,
97
85
  path: route.path,
98
86
  url: history.location.pathname
99
- }; // staticContext 没有兼容 好像没看到对应的兼容写法
87
+ };
100
88
 
89
+ // staticContext 没有兼容 好像没看到对应的兼容写法
101
90
  var Component = props.loader;
102
91
  return /*#__PURE__*/React.createElement(React.Suspense, {
103
92
  fallback: /*#__PURE__*/React.createElement(props.loadingComponent, null)
@@ -110,7 +99,6 @@ function RemoteComponentReactRouter5(props) {
110
99
  routes: clientRoutes
111
100
  }, props.hasChildren && /*#__PURE__*/React.createElement(Outlet, null)));
112
101
  }
113
-
114
102
  function RemoteComponent(props) {
115
103
  var Component = props.loader;
116
104
  return /*#__PURE__*/React.createElement(React.Suspense, {
package/dist/server.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import { IRouteComponents, IRoutesById } from './types';
3
- export declare function getHelmetContext(): {};
4
3
  export declare function getClientRootComponent(opts: {
5
4
  routes: IRoutesById;
6
5
  routeComponents: IRouteComponents;
package/dist/server.js CHANGED
@@ -2,83 +2,67 @@ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
3
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
4
4
  import React from 'react';
5
- import { HelmetProvider } from 'react-helmet-async';
6
5
  import { StaticRouter } from 'react-router-dom/server';
7
6
  import { AppContext } from "./appContext";
8
7
  import { Routes } from "./browser";
9
8
  import { createClientRoutes } from "./routes";
10
- // store helmet data
11
- var helmetContext = {}; // get helmet context
12
-
13
- export function getHelmetContext() {
14
- return helmetContext;
15
- } // Get the root React component for ReactDOMServer.renderToString
16
-
9
+ // Get the root React component for ReactDOMServer.renderToString
17
10
  export function getClientRootComponent(_x) {
18
11
  return _getClientRootComponent.apply(this, arguments);
19
12
  }
20
-
21
13
  function _getClientRootComponent() {
22
14
  _getClientRootComponent = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(opts) {
23
15
  var basename, components, clientRoutes, rootContainer, _i, _arr, key;
24
-
25
16
  return _regeneratorRuntime().wrap(function _callee$(_context) {
26
- while (1) {
27
- switch (_context.prev = _context.next) {
28
- case 0:
29
- basename = '/';
30
- components = _objectSpread({}, opts.routeComponents);
31
- clientRoutes = createClientRoutes({
32
- routesById: opts.routes,
33
- routeComponents: components
17
+ while (1) switch (_context.prev = _context.next) {
18
+ case 0:
19
+ basename = '/';
20
+ components = _objectSpread({}, opts.routeComponents);
21
+ clientRoutes = createClientRoutes({
22
+ routesById: opts.routes,
23
+ routeComponents: components
24
+ });
25
+ rootContainer = /*#__PURE__*/React.createElement(StaticRouter, {
26
+ basename: basename,
27
+ location: opts.location
28
+ }, /*#__PURE__*/React.createElement(Routes, null));
29
+ for (_i = 0, _arr = [
30
+ // Lowest to the highest priority
31
+ 'innerProvider', 'i18nProvider', 'accessProvider', 'dataflowProvider', 'outerProvider', 'rootContainer']; _i < _arr.length; _i++) {
32
+ key = _arr[_i];
33
+ rootContainer = opts.pluginManager.applyPlugins({
34
+ type: 'modify',
35
+ key: key,
36
+ initialValue: rootContainer,
37
+ args: {}
34
38
  });
35
- rootContainer = /*#__PURE__*/React.createElement(StaticRouter, {
39
+ }
40
+ return _context.abrupt("return", /*#__PURE__*/React.createElement(Html, {
41
+ loaderData: opts.loaderData,
42
+ manifest: opts.manifest
43
+ }, /*#__PURE__*/React.createElement(AppContext.Provider, {
44
+ value: {
45
+ routes: opts.routes,
46
+ routeComponents: opts.routeComponents,
47
+ clientRoutes: clientRoutes,
48
+ pluginManager: opts.pluginManager,
36
49
  basename: basename,
37
- location: opts.location
38
- }, /*#__PURE__*/React.createElement(Routes, null));
39
-
40
- for (_i = 0, _arr = [// Lowest to the highest priority
41
- 'innerProvider', 'i18nProvider', 'accessProvider', 'dataflowProvider', 'outerProvider', 'rootContainer']; _i < _arr.length; _i++) {
42
- key = _arr[_i];
43
- rootContainer = opts.pluginManager.applyPlugins({
44
- type: 'modify',
45
- key: key,
46
- initialValue: rootContainer,
47
- args: {}
48
- });
50
+ clientLoaderData: {},
51
+ serverLoaderData: opts.loaderData
49
52
  }
50
-
51
- return _context.abrupt("return", /*#__PURE__*/React.createElement(Html, {
52
- loaderData: opts.loaderData,
53
- manifest: opts.manifest
54
- }, /*#__PURE__*/React.createElement(HelmetProvider, {
55
- context: helmetContext
56
- }, /*#__PURE__*/React.createElement(AppContext.Provider, {
57
- value: {
58
- routes: opts.routes,
59
- routeComponents: opts.routeComponents,
60
- clientRoutes: clientRoutes,
61
- pluginManager: opts.pluginManager,
62
- basename: basename,
63
- clientLoaderData: {},
64
- serverLoaderData: opts.loaderData
65
- }
66
- }, rootContainer))));
67
-
68
- case 6:
69
- case "end":
70
- return _context.stop();
71
- }
53
+ }, rootContainer)));
54
+ case 6:
55
+ case "end":
56
+ return _context.stop();
72
57
  }
73
58
  }, _callee);
74
59
  }));
75
60
  return _getClientRootComponent.apply(this, arguments);
76
61
  }
77
-
78
62
  function Html(_ref) {
79
63
  var children = _ref.children,
80
- loaderData = _ref.loaderData,
81
- manifest = _ref.manifest;
64
+ loaderData = _ref.loaderData,
65
+ manifest = _ref.manifest;
82
66
  // TODO: 处理 head 标签,比如 favicon.ico 的一致性
83
67
  // TODO: root 支持配置
84
68
  return /*#__PURE__*/React.createElement("html", {
@@ -2,8 +2,7 @@ import { useLocation } from 'react-router-dom';
2
2
  import { useAppData } from "./appContext";
3
3
  export function __useFetcher() {
4
4
  var _useAppData = useAppData(),
5
- preloadRoute = _useAppData.preloadRoute;
6
-
5
+ preloadRoute = _useAppData.preloadRoute;
7
6
  var location = useLocation();
8
7
  return {
9
8
  load: function load(path) {
@@ -37,6 +37,5 @@ export function withRouter(Component) {
37
37
  navigate: navigate
38
38
  }));
39
39
  }
40
-
41
40
  return ComponentWithRouterProp;
42
41
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@umijs/renderer-react",
3
- "version": "4.0.55",
3
+ "version": "4.0.57",
4
4
  "description": "@umijs/renderer-react",
5
5
  "homepage": "https://github.com/umijs/umi/tree/master/packages/renderer-react#readme",
6
6
  "bugs": "https://github.com/umijs/umi/issues",