@vnb/mfe-events 0.0.1-rc.5 → 0.0.1-rc.7
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/README.md +25 -19
- package/dist/constants.d.ts +1 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +109 -27
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +107 -28
- package/dist/index.mjs.map +1 -1
- package/dist/index.umd.js +109 -27
- package/dist/index.umd.js.map +1 -1
- package/dist/plugin.d.ts +37 -2
- package/dist/plugin.d.ts.map +1 -1
- package/dist/types.d.ts +27 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -146,7 +146,7 @@ mfeEventPlugin.register({
|
|
|
146
146
|
|
|
147
147
|
// Shell → App:Token 刷新
|
|
148
148
|
[EvtMfe.AuthTokenUpdate]: (data) => {
|
|
149
|
-
// data: { token: string; user?: User; permissions?: string[] }
|
|
149
|
+
// data: { token: string; user?: User; permissions?: string[]; appId?: string }
|
|
150
150
|
updateToken(data.token);
|
|
151
151
|
},
|
|
152
152
|
|
|
@@ -225,7 +225,7 @@ mfeBus.on(EvtMfe.ShlTokenExpired, (data) => {
|
|
|
225
225
|
// 子应用 token 过期 → 重发当前 token
|
|
226
226
|
});
|
|
227
227
|
|
|
228
|
-
// 3.
|
|
228
|
+
// 3. 定向发送(三级降级:registry → DOM 扫描 iframe[data-mfe-app] → 广播 fallback)
|
|
229
229
|
mfeEventPlugin.emitTo('mma', EvtMfe.RouteNavigate, { path: '/chairman' });
|
|
230
230
|
|
|
231
231
|
// 4. 广播(所有子应用均可收到)
|
|
@@ -239,6 +239,7 @@ mfeEventPlugin.shellReady();
|
|
|
239
239
|
mfeEventPlugin.authLogin({ userId: '1', name: 'Admin' });
|
|
240
240
|
mfeEventPlugin.authLogout('user');
|
|
241
241
|
mfeEventPlugin.tokenUpdate({ token: 'xxx', permissions: ['read', 'write'] });
|
|
242
|
+
mfeEventPlugin.tokenGrant('mma', { token: 'xxx', user: { userId: '1' } });
|
|
242
243
|
mfeEventPlugin.authExpired();
|
|
243
244
|
|
|
244
245
|
// 7. 通知
|
|
@@ -271,7 +272,8 @@ shlBus.on(EvtShl.TabOverflow, (data) => {
|
|
|
271
272
|
│ └─────────────────────────────────────────────────────────────┘ │
|
|
272
273
|
│ │
|
|
273
274
|
│ ┌─ 定向(Shell → 指定 App)───────────────────────────────────┐ │
|
|
274
|
-
│ │ AuthSelf "
|
|
275
|
+
│ │ AuthSelf "我不帮你做任何登录,你自行登录" │ │
|
|
276
|
+
│ │ AuthTokenGrant "给你下发了专属 token" │ │
|
|
275
277
|
│ │ RouteNavigate "跳到这个路径去" │ │
|
|
276
278
|
│ │ RouteRefresh "刷新你当前的路由" │ │
|
|
277
279
|
│ └─────────────────────────────────────────────────────────────┘ │
|
|
@@ -330,19 +332,20 @@ shlBus.on(EvtShl.TabOverflow, (data) => {
|
|
|
330
332
|
|------|-----|------|------|---------|---------|
|
|
331
333
|
| **ThemeUpdate** | `mfe:theme-update` | Shell → App | 主题切换 | `{ theme: 'light' \| 'dark' }` | "主题切换了,你们跟着换" |
|
|
332
334
|
| **LocaleUpdate** | `mfe:locale-update` | Shell → App | 语言切换 | `{ locale: string }` | "语言切换了,你们跟着换" |
|
|
333
|
-
| **BreakpointUpdate** | `mfe:breakpoint-update` | Shell → App | 响应式断点/横竖屏变化(Shell 基于 `window.matchMedia` 监听并广播,子应用收到后同步更新布局,如侧边栏收起、表格横向滚动等) | `{ current: string; orientation:
|
|
335
|
+
| **BreakpointUpdate** | `mfe:breakpoint-update` | Shell → App | 响应式断点/横竖屏变化(Shell 基于 `window.matchMedia` 监听并广播,子应用收到后同步更新布局,如侧边栏收起、表格横向滚动等) | `{ current: string; orientation: string }` | "屏幕尺寸变了,你们调整一下布局" |
|
|
334
336
|
| **StateUpdate** | `mfe:state-update` | Shell → App | 全局状态同步 | `{ state: AppState; prev: AppState \| null }` | "全局状态更新了,你们同步" |
|
|
335
337
|
| **ShellReady** | `mfe:shell-ready` | Shell → App | Shell 初始化完成 | `{}` | "我准备好了,你们可以开始工作" |
|
|
336
338
|
| **Error** | `mfe:error` | App → Shell | 子应用错误上报 | `{ source: string; message: string; stack?: string }` | "我报错了,你看一下" |
|
|
337
339
|
| **Raw** | `mfe:raw` | App ↔ App | 自定义透传事件(子应用间通信) | `{ type: string; payload: any; source: string; ts: number }` | "兄弟,给你发个消息" |
|
|
338
340
|
| **Custom** | `mfe:raw` | App ↔ App | `Raw` 的别名,完全等价 | `{ type: string; payload: any; source: string; ts: number }` | "兄弟,给你发个消息" |
|
|
339
|
-
| **AuthLogin** | `mfe:auth-login` | Shell → App | 用户登录 | `{ user
|
|
341
|
+
| **AuthLogin** | `mfe:auth-login` | Shell → App | 用户登录 | `{ user?: User; token: string; appId?: string }` | "用户登录了,你们更新状态" |
|
|
340
342
|
| **AuthLogout** | `mfe:auth-logout` | Shell → App | 用户登出 | `{ reason?: 'user' \| 'timeout' \| 'error' }` | "用户登出了,你们清理自己" |
|
|
341
|
-
| **AuthTokenUpdate** | `mfe:auth-token-update` | Shell → App | Token 刷新 | `{ token: string; user?: User; permissions?: string[] }` | "token 刷新了,你们换上新的" |
|
|
343
|
+
| **AuthTokenUpdate** | `mfe:auth-token-update` | Shell → App | Token 刷新 | `{ token: string; user?: User; permissions?: string[]; appId?: string }` | "token 刷新了,你们换上新的" |
|
|
344
|
+
| **AuthTokenGrant** | `mfe:auth-token-grant` | Shell → App (定向) | Token 下发 | `{ token: string; appId: string; user?: User; permissions?: string[] }` | "给你下发了专属 token" |
|
|
342
345
|
| **AuthTokenClear** | `mfe:auth-token-clear` | Shell → App | Token 清除 | `{}` | "token 清掉了,你们也清掉" |
|
|
343
346
|
| **AuthPermissionUpdate** | `mfe:auth-permission-update` | Shell → App | 权限变更 | `{ permissions: string[] }` | "权限变了,你们更新一下" |
|
|
344
347
|
| **AuthExpired** | `mfe:auth-expired` | Shell → App | 认证过期 | `{}` | "token 过期了,你们跳登录页" |
|
|
345
|
-
| **AuthSelf** | `mfe:auth-self` | Shell → App | 子应用自行处理登录(仅基座无 OIDC 配置时) | `{ appId: string }` | "
|
|
348
|
+
| **AuthSelf** | `mfe:auth-self` | Shell → App | 子应用自行处理登录(仅基座无 OIDC 配置时) | `{ appId: string }` | "我不帮你做任何登录,你自行登录" |
|
|
346
349
|
| **AuthSelfOk** | `mfe:auth-self-ok` | App → Shell | 自行登录成功 | `{ appId: string; user?: any; token?: string }` | "我自行登录成功了" |
|
|
347
350
|
| **AuthSelfErr** | `mfe:auth-self-err` | App → Shell | 自行登录失败 | `{ appId: string; reason?: string }` | "我自行登录失败了" |
|
|
348
351
|
| **AuthSelfDeny** | `mfe:auth-self-deny` | App → Shell | 子应用拒绝加载,请求基座卸载 | `{ appId: string; reason?: string }` | "我不想被加载,卸载掉我" |
|
|
@@ -570,8 +573,8 @@ mfeEventPlugin.register({
|
|
|
570
573
|
appId: 'my-app',
|
|
571
574
|
handlers: {
|
|
572
575
|
[EvtMfe.BreakpointUpdate]: (data) => {
|
|
573
|
-
// data.current: 'xs'
|
|
574
|
-
// data.orientation: 'portrait'
|
|
576
|
+
// data.current: string (如 'xs', 'sm', 'lg', 'md', 'xl' 等)
|
|
577
|
+
// data.orientation: string (如 'portrait', 'landscape')
|
|
575
578
|
document.documentElement.dataset.breakpoint = data.current;
|
|
576
579
|
document.documentElement.dataset.orientation = data.orientation;
|
|
577
580
|
},
|
|
@@ -635,6 +638,13 @@ mfeEventPlugin.tokenUpdate({
|
|
|
635
638
|
permissions: ['read', 'write'],
|
|
636
639
|
});
|
|
637
640
|
|
|
641
|
+
// 定向下发 Token(仅目标 App 收到)
|
|
642
|
+
mfeEventPlugin.tokenGrant('mma', {
|
|
643
|
+
token: 'new-jwt-token',
|
|
644
|
+
user: { userId: '1', username: 'admin', roles: ['admin'] },
|
|
645
|
+
permissions: ['read', 'write'],
|
|
646
|
+
});
|
|
647
|
+
|
|
638
648
|
// 广播 Token 清除
|
|
639
649
|
mfeEventPlugin.tokenClear();
|
|
640
650
|
|
|
@@ -813,18 +823,14 @@ ReactDOM.createRoot(document.getElementById('root')!).render(<App />);
|
|
|
813
823
|
2. 确认 Federation 配置中有 `@vnb/mfe-events` 且 `singleton: true`
|
|
814
824
|
3. 确认使用的是事件常量 `EvtMfe.XXX` 而非硬编码字符串
|
|
815
825
|
4. 控制台检查 `window.__MFE_EVENT_PLUGIN__` 是否存在
|
|
816
|
-
5. 如果是 iframe,确认调用了 `mfeEventPlugin.registerIframe()`
|
|
817
|
-
6.
|
|
826
|
+
5. 如果是 iframe,确认调用了 `mfeEventPlugin.registerIframe()`,或 iframe 设置了 `data-mfe-app="appId"` 属性
|
|
827
|
+
6. `emitTo` 支持三级降级:registry 命中 → DOM 扫描 `iframe[data-mfe-app]` → 广播 fallback(带 appId 让子应用自判断)
|
|
818
828
|
|
|
819
829
|
### emitTo 报 app not registered
|
|
820
830
|
|
|
821
|
-
动态加载时,如果 Shell 在子应用注册之前就调用了 `emitTo
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
[mfe-events] emitTo: app not registered: "mma" (event: mfe:route-navigate)
|
|
825
|
-
```
|
|
826
|
-
|
|
827
|
-
解决方案:确保子应用先调用 `register()`,再让 Shell 发 `emitTo`。或者在子应用 `LifecycleAppReady` 之后,再由子应用主动请求数据(而不是等 Shell push)。
|
|
831
|
+
动态加载时,如果 Shell 在子应用注册之前就调用了 `emitTo`,插件会自动降级处理:
|
|
832
|
+
1. 扫描 DOM 中 `iframe[data-mfe-app="appId"]`,找到则动态创建 transport 定向发送
|
|
833
|
+
2. 都没找到则广播 `emit`(带 appId 参数),子应用收到后自行判断是否处理
|
|
828
834
|
|
|
829
835
|
### 通知不显示
|
|
830
836
|
|
|
@@ -834,7 +840,7 @@ ReactDOM.createRoot(document.getElementById('root')!).render(<App />);
|
|
|
834
840
|
|
|
835
841
|
### iframe 子应用收不到事件
|
|
836
842
|
|
|
837
|
-
1. 确认 Shell
|
|
843
|
+
1. 确认 iframe 设置了 `data-mfe-app="appId"` 属性,或 Shell 调用了 `mfeEventPlugin.registerIframe(appId, iframeEl, targetOrigin)`
|
|
838
844
|
2. 确认 `targetOrigin` 与 iframe 的 `src` origin 匹配(生产环境建议明确指定)
|
|
839
845
|
3. 检查浏览器控制台是否有 postMessage 相关的 CSP 警告
|
|
840
846
|
|
package/dist/constants.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export declare const EvtMfe: {
|
|
|
31
31
|
readonly AuthLogin: "mfe:auth-login";
|
|
32
32
|
readonly AuthLogout: "mfe:auth-logout";
|
|
33
33
|
readonly AuthTokenUpdate: "mfe:auth-token-update";
|
|
34
|
+
readonly AuthTokenGrant: "mfe:auth-token-grant";
|
|
34
35
|
readonly AuthTokenClear: "mfe:auth-token-clear";
|
|
35
36
|
readonly AuthPermissionUpdate: "mfe:auth-permission-update";
|
|
36
37
|
readonly AuthExpired: "mfe:auth-expired";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,eAAO,MAAM,MAAM;;;;;;;;CAQT,CAAC;AAKX,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,eAAO,MAAM,MAAM;;;;;;;;CAQT,CAAC;AAKX,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CT,CAAC;AAKX,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,MAAM,IAAI,MAAM,EAAE,CAM7E"}
|
package/dist/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export type { Transport } from './transport';
|
|
|
21
21
|
export { Bus } from './bus';
|
|
22
22
|
export { EvtShl, EvtMfe, EvtApp } from './constants';
|
|
23
23
|
export type { PayloadShl, PayloadMfe, PayloadApp, NotificationType, NotificationConfig, AppType, AppMeta, PluginOptions, } from './types';
|
|
24
|
+
export { Breakpoint, DeviceType, breakpointToDevice, } from './types';
|
|
24
25
|
export { mfeEventPlugin } from './plugin';
|
|
25
26
|
export type { default as MfeEventPlugin } from './plugin';
|
|
26
27
|
export { mfeEventPlugin as default } from './plugin';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC3G,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrD,YAAY,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,EACP,OAAO,EACP,aAAa,GACd,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAOrD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,MAAM,iBAA6C,CAAC;AAwBjE,eAAO,MAAM,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC3G,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAG5B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrD,YAAY,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,OAAO,EACP,OAAO,EACP,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,UAAU,EACV,UAAU,EACV,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAOrD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,MAAM,iBAA6C,CAAC;AAwBjE,eAAO,MAAM,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vnb/mfe-events v0.0.1-rc.
|
|
2
|
+
* @vnb/mfe-events v0.0.1-rc.7
|
|
3
3
|
* Micro frontend event plugin for cross-app communication with type safety
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -183,6 +183,7 @@ const EvtMfe = {
|
|
|
183
183
|
AuthLogin: 'mfe:auth-login',
|
|
184
184
|
AuthLogout: 'mfe:auth-logout',
|
|
185
185
|
AuthTokenUpdate: 'mfe:auth-token-update',
|
|
186
|
+
AuthTokenGrant: 'mfe:auth-token-grant',
|
|
186
187
|
AuthTokenClear: 'mfe:auth-token-clear',
|
|
187
188
|
AuthPermissionUpdate: 'mfe:auth-permission-update',
|
|
188
189
|
AuthExpired: 'mfe:auth-expired',
|
|
@@ -217,6 +218,33 @@ function EvtApp(appId, name) {
|
|
|
217
218
|
return `app:${appId}-${name}`;
|
|
218
219
|
}
|
|
219
220
|
|
|
221
|
+
/**
|
|
222
|
+
* @xxxx/mfe-events — Type Definitions
|
|
223
|
+
*
|
|
224
|
+
* Payload types for each event scope.
|
|
225
|
+
* Keys must reference constants from constants.ts.
|
|
226
|
+
*/
|
|
227
|
+
/** Shell breakpoint constants */
|
|
228
|
+
const Breakpoint = {
|
|
229
|
+
XS: 'xs',
|
|
230
|
+
SM: 'sm',
|
|
231
|
+
LG: 'lg',
|
|
232
|
+
};
|
|
233
|
+
/** Device type constants */
|
|
234
|
+
const DeviceType = {
|
|
235
|
+
MOBILE: 'mobile',
|
|
236
|
+
TABLET: 'tablet',
|
|
237
|
+
WEB: 'web',
|
|
238
|
+
};
|
|
239
|
+
/** Breakpoint → Device type (mobile<768 / tablet 768-1023 / web≥1024) */
|
|
240
|
+
function breakpointToDevice(bp) {
|
|
241
|
+
if (bp === 'xs')
|
|
242
|
+
return 'mobile';
|
|
243
|
+
if (bp === 'sm')
|
|
244
|
+
return 'tablet';
|
|
245
|
+
return 'web';
|
|
246
|
+
}
|
|
247
|
+
|
|
220
248
|
/**
|
|
221
249
|
* @xxxx/mfe-events — Plugin Core
|
|
222
250
|
*
|
|
@@ -476,29 +504,40 @@ class MfeEventPlugin {
|
|
|
476
504
|
// ─────────────────────────────────────────
|
|
477
505
|
/**
|
|
478
506
|
* Register a Remote App with event handlers
|
|
507
|
+
*
|
|
508
|
+
* `options.type` 可选 —— 不传时自动识别环境:
|
|
509
|
+
* - iframe 内(window.self !== window.top)→ 'iframe':监听 postMessage,
|
|
510
|
+
* 并自动建立下行 message → CustomEvent 桥,同窗自定义事件也能收到(无需手写桥)。
|
|
511
|
+
* - 顶层 window → 'nf'(Native Federation,监听 CustomEvent);
|
|
512
|
+
* Webpack MF 同窗也是 CustomEvent,可显式传 type:'mf'。
|
|
479
513
|
*/
|
|
480
514
|
register(options) {
|
|
481
515
|
if (this.registry.has(options.appId)) {
|
|
482
516
|
this.unregister(options.appId);
|
|
483
517
|
}
|
|
518
|
+
const type = options.type || this.detectType();
|
|
484
519
|
const meta = {
|
|
485
520
|
appId: options.appId,
|
|
486
|
-
type
|
|
521
|
+
type,
|
|
487
522
|
};
|
|
488
523
|
const cleanups = [];
|
|
489
524
|
// Auto-subscribe handlers
|
|
490
525
|
Object.entries(options.handlers).forEach(([event, handler]) => {
|
|
491
526
|
if (!handler)
|
|
492
527
|
return;
|
|
493
|
-
if (
|
|
494
|
-
// iframe:
|
|
495
|
-
const
|
|
528
|
+
if (type === 'iframe') {
|
|
529
|
+
// iframe: Shell 经 postMessage 下行 → 监听 message 事件
|
|
530
|
+
const msgWrapper = (e) => {
|
|
496
531
|
if (e.data?.scope === 'mfe' && e.data?.event === event) {
|
|
497
532
|
handler(e.data.data);
|
|
498
533
|
}
|
|
499
534
|
};
|
|
500
|
-
window.addEventListener('message',
|
|
501
|
-
cleanups.push(() => window.removeEventListener('message',
|
|
535
|
+
window.addEventListener('message', msgWrapper);
|
|
536
|
+
cleanups.push(() => window.removeEventListener('message', msgWrapper));
|
|
537
|
+
// 自动桥:Shell postMessage → 同窗 CustomEvent,让监听 CustomEvent 的逻辑也能收到
|
|
538
|
+
const ceWrapper = (e) => handler(e.detail);
|
|
539
|
+
window.addEventListener(event, ceWrapper);
|
|
540
|
+
cleanups.push(() => window.removeEventListener(event, ceWrapper));
|
|
502
541
|
}
|
|
503
542
|
else {
|
|
504
543
|
// MF/NF: listen via window.CustomEvent
|
|
@@ -509,6 +548,20 @@ class MfeEventPlugin {
|
|
|
509
548
|
});
|
|
510
549
|
this.registry.set(options.appId, { meta, options, cleanups });
|
|
511
550
|
}
|
|
551
|
+
/**
|
|
552
|
+
* 自动识别当前运行环境,选择事件监听通道。
|
|
553
|
+
* - iframe 内(被 Shell 托管,window.self !== window.top)→ 'iframe'(postMessage)
|
|
554
|
+
* - 顶层 window(MF/NF 子应用)→ 'mf'(CustomEvent)
|
|
555
|
+
*/
|
|
556
|
+
/**
|
|
557
|
+
* 自动识别当前运行环境,选择事件监听通道。
|
|
558
|
+
* - iframe 内(被 Shell 托管,window.self !== window.top)→ 'iframe'(postMessage)
|
|
559
|
+
* - 顶层 window → 'nf'(Native Federation,CustomEvent 广播)
|
|
560
|
+
* - Webpack MF 子应用(同为顶层同窗)与 NF 一样走 CustomEvent,可显式传 type:'mf'
|
|
561
|
+
*/
|
|
562
|
+
detectType() {
|
|
563
|
+
return typeof window !== 'undefined' && window.self !== window.top ? 'iframe' : 'nf';
|
|
564
|
+
}
|
|
512
565
|
/**
|
|
513
566
|
* Register an iframe Remote App (Shell side)
|
|
514
567
|
*/
|
|
@@ -548,39 +601,59 @@ class MfeEventPlugin {
|
|
|
548
601
|
// ─────────────────────────────────────────
|
|
549
602
|
/**
|
|
550
603
|
* Send event to a specific Remote App
|
|
604
|
+
*
|
|
605
|
+
* 1. Registry hit → send directly
|
|
606
|
+
* 2. DOM scan → find iframe[data-mfe-app="appId"], create transport on-the-fly
|
|
607
|
+
* 3. Fallback → broadcast with appId for self-filtering
|
|
551
608
|
*/
|
|
552
609
|
emitTo(appId, event, data) {
|
|
610
|
+
// 1. Registry hit
|
|
553
611
|
const app = this.registry.get(appId);
|
|
554
|
-
if (
|
|
555
|
-
|
|
612
|
+
if (app) {
|
|
613
|
+
if (app.meta.type === 'iframe' && app.meta.transport) {
|
|
614
|
+
app.meta.transport.emit(event, data);
|
|
615
|
+
}
|
|
616
|
+
else {
|
|
617
|
+
const handler = app.options.handlers[event];
|
|
618
|
+
if (handler) {
|
|
619
|
+
handler(data);
|
|
620
|
+
}
|
|
621
|
+
}
|
|
556
622
|
return;
|
|
557
623
|
}
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
624
|
+
// 2. DOM scan: iframe[data-mfe-app="appId"]
|
|
625
|
+
const iframe = document.querySelector(`iframe[data-mfe-app="${appId}"]`);
|
|
626
|
+
if (iframe) {
|
|
627
|
+
Promise.resolve().then(function () { return transport; }).then(({ IframeProxyTransport }) => {
|
|
628
|
+
const transport = new IframeProxyTransport(iframe);
|
|
629
|
+
this.registry.set(appId, {
|
|
630
|
+
meta: { appId, type: 'iframe', transport },
|
|
631
|
+
options: { appId, type: 'iframe', handlers: {} },
|
|
632
|
+
cleanups: [],
|
|
633
|
+
});
|
|
634
|
+
transport.emit(event, data);
|
|
635
|
+
});
|
|
636
|
+
return;
|
|
568
637
|
}
|
|
638
|
+
// 3. Fallback: broadcast with appId
|
|
639
|
+
this.emit(event, { ...data, appId });
|
|
569
640
|
}
|
|
570
641
|
// ─────────────────────────────────────────
|
|
571
642
|
// Shell Broadcast Communication
|
|
572
643
|
// ─────────────────────────────────────────
|
|
573
644
|
/**
|
|
574
645
|
* Broadcast event to all Remote Apps (MF + iframe)
|
|
646
|
+
*
|
|
647
|
+
* - MF/NF: window CustomEvent
|
|
648
|
+
* - iframe: postMessage to every iframe marked with data-mfe-app
|
|
649
|
+
* (含已注册的 iframe;子应用按 event/appId 自行过滤)
|
|
575
650
|
*/
|
|
576
651
|
emit(event, data) {
|
|
577
|
-
// Broadcast to all MF Remote Apps
|
|
652
|
+
// Broadcast to all MF/NF Remote Apps via CustomEvent
|
|
578
653
|
window.dispatchEvent(new CustomEvent(event, { detail: data }));
|
|
579
|
-
// Broadcast to all
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
meta.transport.emit(event, data);
|
|
583
|
-
}
|
|
654
|
+
// Broadcast to all iframes carrying a data-mfe-app attribute (including registered ones)
|
|
655
|
+
document.querySelectorAll('iframe[data-mfe-app]').forEach((iframe) => {
|
|
656
|
+
iframe.contentWindow?.postMessage({ scope: 'mfe', event, data, ts: Date.now() }, '*');
|
|
584
657
|
});
|
|
585
658
|
}
|
|
586
659
|
// ─────────────────────────────────────────
|
|
@@ -777,8 +850,8 @@ class MfeEventPlugin {
|
|
|
777
850
|
/**
|
|
778
851
|
* Broadcast auth login event
|
|
779
852
|
*/
|
|
780
|
-
authLogin(user) {
|
|
781
|
-
this.emit(EvtMfe.AuthLogin, { user, token: '' });
|
|
853
|
+
authLogin(user, appId) {
|
|
854
|
+
this.emit(EvtMfe.AuthLogin, { user, token: '', appId });
|
|
782
855
|
}
|
|
783
856
|
/**
|
|
784
857
|
* Broadcast auth logout event
|
|
@@ -792,6 +865,12 @@ class MfeEventPlugin {
|
|
|
792
865
|
tokenUpdate(data) {
|
|
793
866
|
this.emit(EvtMfe.AuthTokenUpdate, data);
|
|
794
867
|
}
|
|
868
|
+
/**
|
|
869
|
+
* Grant token to a specific app (unicast)
|
|
870
|
+
*/
|
|
871
|
+
tokenGrant(appId, data) {
|
|
872
|
+
this.emitTo(appId, EvtMfe.AuthTokenGrant, { ...data, appId });
|
|
873
|
+
}
|
|
795
874
|
/**
|
|
796
875
|
* Broadcast auth expired event
|
|
797
876
|
*/
|
|
@@ -874,7 +953,9 @@ if (typeof window !== 'undefined') {
|
|
|
874
953
|
}
|
|
875
954
|
}
|
|
876
955
|
|
|
956
|
+
exports.Breakpoint = Breakpoint;
|
|
877
957
|
exports.Bus = Bus;
|
|
958
|
+
exports.DeviceType = DeviceType;
|
|
878
959
|
exports.EvtApp = EvtApp;
|
|
879
960
|
exports.EvtMfe = EvtMfe;
|
|
880
961
|
exports.EvtShl = EvtShl;
|
|
@@ -882,6 +963,7 @@ exports.IframeProxyTransport = IframeProxyTransport;
|
|
|
882
963
|
exports.MemoryTransport = MemoryTransport;
|
|
883
964
|
exports.PostMessageTransport = PostMessageTransport;
|
|
884
965
|
exports.WindowTransport = WindowTransport;
|
|
966
|
+
exports.breakpointToDevice = breakpointToDevice;
|
|
885
967
|
exports.default = mfeEventPlugin;
|
|
886
968
|
exports.mfeBus = mfeBus;
|
|
887
969
|
exports.mfeEventPlugin = mfeEventPlugin;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/transport.ts","../src/bus.ts","../src/constants.ts","../src/plugin.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/transport.ts","../src/bus.ts","../src/constants.ts","../src/types.ts","../src/plugin.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"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"}
|