@module-federation/bridge-react 0.0.0-next-20241015060033 → 0.0.0-next-20241015065721

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,6 +1,6 @@
1
1
  # @module-federation/bridge-react
2
2
 
3
- ## 0.0.0-next-20241015060033
3
+ ## 0.0.0-next-20241015065721
4
4
 
5
5
  ### Patch Changes
6
6
 
@@ -8,8 +8,8 @@
8
8
  - Updated dependencies [9e32644]
9
9
  - Updated dependencies [9e32644]
10
10
  - Updated dependencies [3082116]
11
- - @module-federation/runtime@0.0.0-next-20241015060033
12
- - @module-federation/bridge-shared@0.0.0-next-20241015060033
11
+ - @module-federation/runtime@0.0.0-next-20241015065721
12
+ - @module-federation/bridge-shared@0.0.0-next-20241015065721
13
13
 
14
14
  ## 0.6.6
15
15
 
package/dist/index.cjs.js CHANGED
@@ -1114,7 +1114,9 @@ function registerBridgeLifeCycle() {
1114
1114
  const host = runtime.getInstance();
1115
1115
  const pluginSystem = new pluginHelper2.PluginSystem({
1116
1116
  beforeBridgeRender: new pluginHelper2.SyncHook(),
1117
- beforeBridgeDestroy: new pluginHelper2.SyncHook()
1117
+ afterBridgeRender: new pluginHelper2.SyncHook(),
1118
+ beforeBridgeDestroy: new pluginHelper2.SyncHook(),
1119
+ afterBridgeDestroy: new pluginHelper2.SyncHook()
1118
1120
  });
1119
1121
  if (host) {
1120
1122
  registerPlugins2(
@@ -1147,7 +1149,7 @@ const RemoteAppWrapper = React.forwardRef(function(props, ref) {
1147
1149
  var _a, _b;
1148
1150
  const providerReturn = providerInfo();
1149
1151
  providerInfoRef.current = providerReturn;
1150
- const renderProps = {
1152
+ let renderProps = {
1151
1153
  moduleName,
1152
1154
  dom: rootRef.current,
1153
1155
  basename,
@@ -1161,9 +1163,14 @@ const RemoteAppWrapper = React.forwardRef(function(props, ref) {
1161
1163
  renderProps
1162
1164
  );
1163
1165
  if (bridgeHook && ((_a = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _a.beforeBridgeRender)) {
1164
- (_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeRender.emit({
1166
+ const beforeBridgeRenderRes = (_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeRender.emit({
1165
1167
  ...renderProps
1166
1168
  });
1169
+ const extraProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1170
+ renderProps = {
1171
+ ...renderProps,
1172
+ ...extraProps
1173
+ };
1167
1174
  }
1168
1175
  providerReturn.render(renderProps);
1169
1176
  });
@@ -1176,8 +1183,8 @@ const RemoteAppWrapper = React.forwardRef(function(props, ref) {
1176
1183
  `createRemoteComponent LazyComponent destroy >>>`,
1177
1184
  { moduleName, basename, dom: renderDom.current }
1178
1185
  );
1179
- if (bridgeHook && ((_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeDestroy)) {
1180
- (_c = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _c.beforeBridgeDestroy.emit({
1186
+ if (bridgeHook && ((_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.afterBridgeDestroy)) {
1187
+ (_c = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _c.afterBridgeDestroy.emit({
1181
1188
  moduleName,
1182
1189
  dom: renderDom.current,
1183
1190
  basename,
@@ -1380,7 +1387,7 @@ function createBridgeComponent(bridgeInfo) {
1380
1387
  } = info;
1381
1388
  const beforeBridgeRender = (bridgeInfo == null ? void 0 : bridgeInfo.hooks) && (bridgeInfo == null ? void 0 : bridgeInfo.hooks.beforeBridgeRender) || ((_a = params == null ? void 0 : params.hooks) == null ? void 0 : _a.beforeBridgeRender);
1382
1389
  const beforeBridgeRenderRes = beforeBridgeRender && beforeBridgeRender(info);
1383
- const componentProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1390
+ const extraProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1384
1391
  const rootComponentWithErrorBoundary = (
1385
1392
  // set ErrorBoundary for RawComponent rendering error, usually caused by user app rendering error
1386
1393
  /* @__PURE__ */ React__namespace.createElement(ErrorBoundary, { FallbackComponent: fallback }, /* @__PURE__ */ React__namespace.createElement(
@@ -1391,7 +1398,7 @@ function createBridgeComponent(bridgeInfo) {
1391
1398
  basename,
1392
1399
  memoryRoute
1393
1400
  },
1394
- propsInfo: { propsInfo, ...componentProps }
1401
+ propsInfo: { ...propsInfo, ...extraProps }
1395
1402
  }
1396
1403
  ))
1397
1404
  );
package/dist/index.es.js CHANGED
@@ -1095,7 +1095,9 @@ function registerBridgeLifeCycle() {
1095
1095
  const host = getInstance();
1096
1096
  const pluginSystem = new pluginHelper2.PluginSystem({
1097
1097
  beforeBridgeRender: new pluginHelper2.SyncHook(),
1098
- beforeBridgeDestroy: new pluginHelper2.SyncHook()
1098
+ afterBridgeRender: new pluginHelper2.SyncHook(),
1099
+ beforeBridgeDestroy: new pluginHelper2.SyncHook(),
1100
+ afterBridgeDestroy: new pluginHelper2.SyncHook()
1099
1101
  });
1100
1102
  if (host) {
1101
1103
  registerPlugins2(
@@ -1128,7 +1130,7 @@ const RemoteAppWrapper = forwardRef(function(props, ref) {
1128
1130
  var _a, _b;
1129
1131
  const providerReturn = providerInfo();
1130
1132
  providerInfoRef.current = providerReturn;
1131
- const renderProps = {
1133
+ let renderProps = {
1132
1134
  moduleName,
1133
1135
  dom: rootRef.current,
1134
1136
  basename,
@@ -1142,9 +1144,14 @@ const RemoteAppWrapper = forwardRef(function(props, ref) {
1142
1144
  renderProps
1143
1145
  );
1144
1146
  if (bridgeHook && ((_a = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _a.beforeBridgeRender)) {
1145
- (_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeRender.emit({
1147
+ const beforeBridgeRenderRes = (_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeRender.emit({
1146
1148
  ...renderProps
1147
1149
  });
1150
+ const extraProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1151
+ renderProps = {
1152
+ ...renderProps,
1153
+ ...extraProps
1154
+ };
1148
1155
  }
1149
1156
  providerReturn.render(renderProps);
1150
1157
  });
@@ -1157,8 +1164,8 @@ const RemoteAppWrapper = forwardRef(function(props, ref) {
1157
1164
  `createRemoteComponent LazyComponent destroy >>>`,
1158
1165
  { moduleName, basename, dom: renderDom.current }
1159
1166
  );
1160
- if (bridgeHook && ((_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.beforeBridgeDestroy)) {
1161
- (_c = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _c.beforeBridgeDestroy.emit({
1167
+ if (bridgeHook && ((_b = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _b.afterBridgeDestroy)) {
1168
+ (_c = bridgeHook == null ? void 0 : bridgeHook.lifecycle) == null ? void 0 : _c.afterBridgeDestroy.emit({
1162
1169
  moduleName,
1163
1170
  dom: renderDom.current,
1164
1171
  basename,
@@ -1361,7 +1368,7 @@ function createBridgeComponent(bridgeInfo) {
1361
1368
  } = info;
1362
1369
  const beforeBridgeRender = (bridgeInfo == null ? void 0 : bridgeInfo.hooks) && (bridgeInfo == null ? void 0 : bridgeInfo.hooks.beforeBridgeRender) || ((_a = params == null ? void 0 : params.hooks) == null ? void 0 : _a.beforeBridgeRender);
1363
1370
  const beforeBridgeRenderRes = beforeBridgeRender && beforeBridgeRender(info);
1364
- const componentProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1371
+ const extraProps = beforeBridgeRenderRes && typeof beforeBridgeRenderRes === "object" && (beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps) ? beforeBridgeRenderRes == null ? void 0 : beforeBridgeRenderRes.extraProps : {};
1365
1372
  const rootComponentWithErrorBoundary = (
1366
1373
  // set ErrorBoundary for RawComponent rendering error, usually caused by user app rendering error
1367
1374
  /* @__PURE__ */ React.createElement(ErrorBoundary, { FallbackComponent: fallback }, /* @__PURE__ */ React.createElement(
@@ -1372,7 +1379,7 @@ function createBridgeComponent(bridgeInfo) {
1372
1379
  basename,
1373
1380
  memoryRoute
1374
1381
  },
1375
- propsInfo: { propsInfo, ...componentProps }
1382
+ propsInfo: { ...propsInfo, ...extraProps }
1376
1383
  }
1377
1384
  ))
1378
1385
  );
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@module-federation/bridge-react",
3
- "version": "0.0.0-next-20241015060033",
3
+ "version": "0.0.0-next-20241015065721",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -35,13 +35,13 @@
35
35
  "dependencies": {
36
36
  "@loadable/component": "^5.16.4",
37
37
  "react-error-boundary": "^4.0.13",
38
- "@module-federation/bridge-shared": "0.0.0-next-20241015060033"
38
+ "@module-federation/bridge-shared": "0.0.0-next-20241015065721"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "react": ">=16.9.0",
42
42
  "react-dom": ">=16.9.0",
43
43
  "react-router-dom": ">=4",
44
- "@module-federation/runtime": "0.0.0-next-20241015060033"
44
+ "@module-federation/runtime": "0.0.0-next-20241015065721"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@testing-library/react": "15.0.7",
package/src/lifecycle.ts CHANGED
@@ -5,14 +5,13 @@ function registerBridgeLifeCycle() {
5
5
  const { registerPlugins, pluginHelper } = helper.global;
6
6
  const host = getInstance();
7
7
  const pluginSystem = new pluginHelper.PluginSystem({
8
- beforeBridgeRender: new pluginHelper.SyncHook<
9
- [Record<string, any>],
10
- void
11
- >(),
8
+ beforeBridgeRender: new pluginHelper.SyncHook<[Record<string, any>], any>(),
9
+ afterBridgeRender: new pluginHelper.SyncHook<[Record<string, any>], any>(),
12
10
  beforeBridgeDestroy: new pluginHelper.SyncHook<
13
11
  [Record<string, any>],
14
- void
12
+ any
15
13
  >(),
14
+ afterBridgeDestroy: new pluginHelper.SyncHook<[Record<string, any>], any>(),
16
15
  });
17
16
 
18
17
  if (host) {
package/src/provider.tsx CHANGED
@@ -67,7 +67,7 @@ export function createBridgeComponent<T>(bridgeInfo: ProviderFnParams<T>) {
67
67
  // 可通过beforeBridgeRender返回一个props对象,用于传递额外的 props 参数
68
68
  const beforeBridgeRenderRes =
69
69
  beforeBridgeRender && beforeBridgeRender(info);
70
- const componentProps =
70
+ const extraProps =
71
71
  beforeBridgeRenderRes &&
72
72
  typeof beforeBridgeRenderRes === 'object' &&
73
73
  beforeBridgeRenderRes?.extraProps
@@ -83,8 +83,7 @@ export function createBridgeComponent<T>(bridgeInfo: ProviderFnParams<T>) {
83
83
  basename,
84
84
  memoryRoute,
85
85
  }}
86
- // propsInfo={propsInfo}
87
- propsInfo={{ propsInfo, ...componentProps } as T}
86
+ propsInfo={{ ...propsInfo, ...extraProps } as T}
88
87
  />
89
88
  </ErrorBoundary>
90
89
  );
@@ -67,7 +67,7 @@ const RemoteAppWrapper = forwardRef(function (
67
67
  const providerReturn = providerInfo();
68
68
  providerInfoRef.current = providerReturn;
69
69
 
70
- const renderProps = {
70
+ let renderProps = {
71
71
  moduleName,
72
72
  dom: rootRef.current,
73
73
  basename,
@@ -82,11 +82,22 @@ const RemoteAppWrapper = forwardRef(function (
82
82
  );
83
83
 
84
84
  if (bridgeHook && bridgeHook?.lifecycle?.beforeBridgeRender) {
85
- bridgeHook?.lifecycle?.beforeBridgeRender.emit({
85
+ const beforeBridgeRenderRes =
86
+ bridgeHook?.lifecycle?.beforeBridgeRender.emit({
87
+ ...renderProps,
88
+ });
89
+ const extraProps =
90
+ beforeBridgeRenderRes &&
91
+ typeof beforeBridgeRenderRes === 'object' &&
92
+ beforeBridgeRenderRes?.extraProps
93
+ ? beforeBridgeRenderRes?.extraProps
94
+ : {};
95
+
96
+ renderProps = {
86
97
  ...renderProps,
87
- });
98
+ ...extraProps,
99
+ } as any;
88
100
  }
89
-
90
101
  providerReturn.render(renderProps);
91
102
  });
92
103
 
@@ -98,8 +109,8 @@ const RemoteAppWrapper = forwardRef(function (
98
109
  `createRemoteComponent LazyComponent destroy >>>`,
99
110
  { moduleName, basename, dom: renderDom.current },
100
111
  );
101
- if (bridgeHook && bridgeHook?.lifecycle?.beforeBridgeDestroy) {
102
- bridgeHook?.lifecycle?.beforeBridgeDestroy.emit({
112
+ if (bridgeHook && bridgeHook?.lifecycle?.afterBridgeDestroy) {
113
+ bridgeHook?.lifecycle?.afterBridgeDestroy.emit({
103
114
  moduleName,
104
115
  dom: renderDom.current,
105
116
  basename,