diff --git a/README.md b/README.md index 11dc72b..a9a2e56 100644 --- a/README.md +++ b/README.md @@ -550,6 +550,17 @@ config.resolve.extensions .clear() ``` +#### Config resolve extensionAlias + +```js +config.resolve.extensionAlias : ChainedSet + +config.resolve.extensionAlias + .add(value) + .prepend(value) + .clear() +``` + #### Config resolve mainFields ```js diff --git a/src/Resolve.js b/src/Resolve.js index 5e0382f..641daae 100644 --- a/src/Resolve.js +++ b/src/Resolve.js @@ -8,6 +8,7 @@ const childSets = [ 'conditionNames', 'descriptionFiles', 'extensions', + 'extensionAlias', 'mainFields', 'mainFiles', 'exportsFields', diff --git a/test/Resolve.js b/test/Resolve.js index 254d5e6..3aab8da 100644 --- a/test/Resolve.js +++ b/test/Resolve.js @@ -199,7 +199,7 @@ test('tsConfig object', () => { resolve.tsConfig({ configFile: './tsconfig.json', references: 'auto', - }) + }); expect(resolve.toConfig()).toStrictEqual({ tsConfig: { configFile: './tsconfig.json', @@ -207,3 +207,13 @@ test('tsConfig object', () => { }, }); }); + +test('extensionAlias', () => { + const resolve = new Resolve(); + const instance = resolve.extensionAlias.add('.ts').add('.js').end(); + + expect(instance).toBe(resolve); + expect(resolve.toConfig()).toStrictEqual({ + extensionAlias: ['.ts', '.js'], + }); +}); diff --git a/types/index.d.ts b/types/index.d.ts index 3886229..c31f6a4 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -356,6 +356,7 @@ declare namespace Config { RspackResolve['descriptionFiles'][number] >; extensions: TypedChainedSet; + extensionAlias: TypedChainedSet; mainFields: TypedChainedSet; mainFiles: TypedChainedSet; exportsFields: TypedChainedSet<