Skip to content

Commit 813680f

Browse files
fix(runtime): remove function duplication (#2895)
Co-authored-by: ScriptedAlchemy <[email protected]>
1 parent a5d41fd commit 813680f

File tree

12 files changed

+38
-38
lines changed

12 files changed

+38
-38
lines changed

.changeset/yellow-bugs-poke.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@module-federation/runtime': patch
3+
'@module-federation/sdk': patch
4+
---
5+
6+
Remove duplicated util functions and referecne central ones

packages/runtime/src/core.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import type { CreateScriptHookReturn } from '@module-federation/sdk';
2+
import { isBrowserEnv } from '@module-federation/sdk';
23
import {
34
Options,
45
PreloadRemoteArgs,
@@ -25,7 +26,6 @@ import {
2526
} from './utils/hooks';
2627
import { generatePreloadAssetsPlugin } from './plugins/generate-preload-assets';
2728
import { snapshotPlugin } from './plugins/snapshot';
28-
import { isBrowserEnv } from './utils/env';
2929
import { getRemoteInfo } from './utils/load';
3030
import { DEFAULT_SCOPE } from './constant';
3131
import { SnapshotHandler } from './plugins/snapshot/SnapshotHandler';

packages/runtime/src/global.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,12 @@ import {
66
Optional,
77
} from './type';
88
import { getFMId } from './utils/tool';
9-
import { GlobalModuleInfo, ModuleInfo } from '@module-federation/sdk';
10-
import { getBuilderId, isDebugMode } from './utils/env';
9+
import {
10+
GlobalModuleInfo,
11+
ModuleInfo,
12+
isDebugMode,
13+
} from '@module-federation/sdk';
14+
import { getBuilderId } from './utils/env';
1115
import { warn } from './utils/logger';
1216
import { FederationRuntimePlugin } from './type/plugin';
1317

packages/runtime/src/module/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { getFMId, safeToString, assert } from '../utils';
1+
import { getFMId, assert } from '../utils';
2+
import { safeToString } from '@module-federation/sdk';
23
import { getRemoteEntry } from '../utils/load';
34
import { FederationHost } from '../core';
45
import { RemoteEntryExports, RemoteInfo, InitScope } from '../type';

packages/runtime/src/plugins/snapshot/SnapshotHandler.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import {
44
ModuleInfo,
55
generateSnapshotFromManifest,
66
isManifestProvider,
7+
isBrowserEnv,
78
} from '@module-federation/sdk';
89
import { Optional, Options, Remote } from '../../type';
910
import {
1011
isRemoteInfoWithEntry,
1112
error,
1213
getRemoteEntryInfoFromSnapshot,
13-
isBrowserEnv,
1414
} from '../../utils';
1515
import {
1616
getGlobalSnapshot,

packages/runtime/src/plugins/snapshot/index.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
1-
import { ModuleInfo, getResourceUrl } from '@module-federation/sdk';
2-
import { FederationRuntimePlugin } from '../../type/plugin';
31
import {
2+
ModuleInfo,
3+
getResourceUrl,
44
isBrowserEnv,
5+
} from '@module-federation/sdk';
6+
import { FederationRuntimePlugin } from '../../type/plugin';
7+
import {
58
error,
69
isPureRemoteEntry,
710
isRemoteInfoWithEntry,

packages/runtime/src/remote/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@ import {
22
isBrowserEnv,
33
warn,
44
composeKeyWithSeparator,
5+
ModuleInfo,
6+
GlobalModuleInfo,
57
} from '@module-federation/sdk';
68
import { Global, getInfoWithoutType, globalLoading } from '../global';
7-
import type { ModuleInfo, GlobalModuleInfo } from '@module-federation/sdk';
89
import {
910
Options,
1011
UserOptions,
@@ -561,6 +562,7 @@ export class RemoteHandler {
561562
if (remoteKey) {
562563
delete hostGlobalSnapshot.remotesInfo[remoteKey];
563564
if (
565+
//eslint-disable-next-line no-extra-boolean-cast
564566
Boolean(Global.__FEDERATION__.__MANIFEST_LOADING__[remoteKey])
565567
) {
566568
delete Global.__FEDERATION__.__MANIFEST_LOADING__[remoteKey];

packages/runtime/src/utils/env.ts

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,3 @@ export function getBuilderId(): string {
99
FEDERATION_BUILD_IDENTIFIER
1010
: '';
1111
}
12-
13-
export function isDebugMode(): boolean {
14-
return typeof FEDERATION_DEBUG !== 'undefined' && Boolean(FEDERATION_DEBUG);
15-
}
16-
17-
export function isBrowserEnv(): boolean {
18-
return typeof window !== 'undefined';
19-
}

packages/runtime/src/utils/preload.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { createLink, createScript } from '@module-federation/sdk';
1+
import { createLink, createScript, safeToString } from '@module-federation/sdk';
22
import {
33
PreloadAssets,
44
PreloadConfig,
@@ -10,7 +10,6 @@ import {
1010
} from '../type';
1111
import { matchRemote } from './manifest';
1212
import { assert } from './logger';
13-
import { safeToString } from './tool';
1413
import { FederationHost } from '../core';
1514
import { getRemoteEntry } from './load';
1615

packages/runtime/src/utils/tool.ts

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import type {
1+
import {
22
RemoteWithEntry,
33
ModuleInfo,
44
RemoteEntryType,
5+
isBrowserEnv,
56
} from '@module-federation/sdk';
6-
import { Remote, RemoteInfoOptionalVersion, UserOptions } from '../type';
7+
import { Remote, RemoteInfoOptionalVersion } from '../type';
78
import { warn } from './logger';
8-
import { isBrowserEnv } from './env';
99

1010
export function addUniqueItem(arr: Array<string>, item: string): Array<string> {
1111
if (arr.findIndex((name) => name === item) === -1) {
@@ -50,15 +50,6 @@ export async function safeWrapper<T extends (...args: Array<any>) => any>(
5050
}
5151
}
5252

53-
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
54-
export function safeToString(info: any): string {
55-
try {
56-
return JSON.stringify(info, null, 2);
57-
} catch (e) {
58-
return '';
59-
}
60-
}
61-
6253
export function isObject(val: any): boolean {
6354
return val && typeof val === 'object';
6455
}

0 commit comments

Comments
 (0)