@module-federation/sdk
Documentation
- This SDK provides utilities and tools to support the implementation of Module Federation in your projects.
- It contains utility functions for parsing, encoding, and decoding module names, as well as generating filenames for exposed modules and shared packages.
- It also includes a logger for debugging and environment detection utilities.
- Additionally, it provides a function to generate a snapshot from a manifest and environment detection utilities.
Usage
import { parseEntry, encodeName, decodeName, generateExposeFilename, generateShareFilename, Logger, isBrowserEnv, isDebugMode, getProcessEnv, generateSnapshotFromManifest } from '@module-federation/sdk';
parseEntry('entryString');
encodeName('moduleName', 'prefix');
decodeName('encodedModuleName', 'prefix');
generateExposeFilename('exposeName', true);
generateShareFilename('packageName', true);
const logger = new Logger('identifier');
isBrowserEnv();
isDebugMode();
getProcessEnv();
generateSnapshotFromManifest(manifest, options);
parseEntry
- Type:
parseEntry(str: string, devVerOrUrl?: string)
- Parses a string into a RemoteEntryInfo object.
encodeName
- Type:
encodeName(name: string, prefix = '', withExt = false)
- Encodes a name with a prefix and optional extension.
decodeName
- Type:
decodeName(name: string, prefix?: string, withExt?: boolean)
- Decodes a name with a prefix and optional extension.
generateExposeFilename
- Type:
generateExposeFilename(exposeName: string, withExt: boolean)
- Generates a filename for an expose.
generateShareFilename
- Type:
generateShareFilename(pkgName: string, withExt: boolean)
- Generates a filename for a shared package.
Logger
- Type:
new Logger(identifier?: string)
- Creates a new logger for debugging.
isBrowserEnv
- Type:
isBrowserEnv()
- Checks if the current environment is a browser.
isDebugMode
- Type:
isDebugMode()
- Checks if the current environment is in debug mode.
getProcessEnv
- Type:
getProcessEnv()
- Gets the process environment.
generateSnapshotFromManifest
- Type:
generateSnapshotFromManifest(manifest: Manifest, options: IOptions = {})
- Generates a snapshot from a manifest.
Testing
The SDK uses Jest for testing. The configuration can be found in jest.config.js
. The tests are located in the tests directory.