Skip to content

Commit 90c6a40

Browse files
authored
fix(modernjs)!: ship .mjs files for correct ESM output (#4240)
1 parent 20c51c3 commit 90c6a40

File tree

5 files changed

+289
-30
lines changed

5 files changed

+289
-30
lines changed

.changeset/brave-beans-exist.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@module-federation/modern-js': minor
3+
---
4+
5+
fix(modernjs)!: ship .mjs files for correct ESM output

packages/modernjs/modern.config.ts

Lines changed: 0 additions & 6 deletions
This file was deleted.

packages/modernjs/package.json

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"access": "public"
1111
},
1212
"scripts": {
13-
"build": "modern-module build"
13+
"build": "rslib build"
1414
},
1515
"repository": {
1616
"type": "git",
@@ -20,60 +20,60 @@
2020
"exports": {
2121
".": {
2222
"types": "./dist/types/cli/index.d.ts",
23-
"import": "./dist/esm/cli/index.js",
23+
"import": "./dist/esm/cli/index.mjs",
2424
"require": "./dist/cjs/cli/index.js"
2525
},
2626
"./runtime": {
2727
"types": "./dist/types/runtime/index.d.ts",
28-
"default": "./dist/esm/runtime/index.js"
28+
"default": "./dist/esm/runtime/index.mjs"
2929
},
3030
"./react": {
3131
"types": "./dist/types/react/index.d.ts",
32-
"default": "./dist/esm/react/index.js"
32+
"default": "./dist/esm/react/index.mjs"
3333
},
3434
"./react-v18": {
3535
"types": "./dist/types/react/v18.d.ts",
36-
"default": "./dist/esm/react/v18.js"
36+
"default": "./dist/esm/react/v18.mjs"
3737
},
3838
"./react-v19": {
3939
"types": "./dist/types/react/v19.d.ts",
40-
"default": "./dist/esm/react/v19.js"
40+
"default": "./dist/esm/react/v19.mjs"
4141
},
4242
"./react-plugin": {
4343
"types": "./dist/types/react/plugin.d.ts",
44-
"default": "./dist/esm/react/plugin.js"
44+
"default": "./dist/esm/react/plugin.mjs"
4545
},
4646
"./ssr-dev-plugin": {
4747
"types": "./dist/types/ssr-runtime/devPlugin.d.ts",
48-
"default": "./dist/esm/ssr-runtime/devPlugin.js"
48+
"default": "./dist/esm/ssr-runtime/devPlugin.mjs"
4949
},
5050
"./ssr-inject-data-fetch-function-plugin": {
5151
"types": "./dist/types/ssr-runtime/injectDataFetchFunctionPlugin.d.ts",
52-
"default": "./dist/esm/ssr-runtime/injectDataFetchFunctionPlugin.js"
52+
"default": "./dist/esm/ssr-runtime/injectDataFetchFunctionPlugin.mjs"
5353
},
5454
"./config-plugin": {
5555
"types": "./dist/types/cli/configPlugin.d.ts",
56-
"import": "./dist/esm/cli/configPlugin.js",
56+
"import": "./dist/esm/cli/configPlugin.mjs",
5757
"require": "./dist/cjs/cli/configPlugin.js"
5858
},
5959
"./ssr-plugin": {
6060
"types": "./dist/types/cli/ssrPlugin.d.ts",
61-
"import": "./dist/esm/cli/ssrPlugin.js",
61+
"import": "./dist/esm/cli/ssrPlugin.mjs",
6262
"require": "./dist/cjs/cli/ssrPlugin.js"
6363
},
6464
"./shared-strategy": {
6565
"types": "./dist/types/cli/mfRuntimePlugins/shared-strategy.d.ts",
66-
"import": "./dist/esm/cli/mfRuntimePlugins/shared-strategy.js",
66+
"import": "./dist/esm/cli/mfRuntimePlugins/shared-strategy.mjs",
6767
"require": "./dist/cjs/cli/mfRuntimePlugins/shared-strategy.js"
6868
},
6969
"./resolve-entry-ipv4": {
7070
"types": "./dist/types/cli/mfRuntimePlugins/resolve-entry-ipv4.d.ts",
71-
"import": "./dist/esm/cli/mfRuntimePlugins/resolve-entry-ipv4.js",
71+
"import": "./dist/esm/cli/mfRuntimePlugins/resolve-entry-ipv4.mjs",
7272
"require": "./dist/cjs/cli/mfRuntimePlugins/resolve-entry-ipv4.js"
7373
},
7474
"./inject-node-fetch": {
7575
"types": "./dist/types/cli/mfRuntimePlugins/inject-node-fetch.d.ts",
76-
"import": "./dist/esm/cli/mfRuntimePlugins/inject-node-fetch.js",
76+
"import": "./dist/esm/cli/mfRuntimePlugins/inject-node-fetch.mjs",
7777
"require": "./dist/cjs/cli/mfRuntimePlugins/inject-node-fetch.js"
7878
},
7979
"./data-fetch-server-plugin": {
@@ -153,6 +153,7 @@
153153
},
154154
"devDependencies": {
155155
"@module-federation/manifest": "workspace:*",
156+
"@rslib/core": "^0.18.1",
156157
"@modern-js/core": "2.68.2",
157158
"@rsbuild/core": "1.3.21",
158159
"@modern-js/app-tools": "2.68.2",

packages/modernjs/rslib.config.ts

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
import { defineConfig } from '@rslib/core';
2+
3+
const sharedLibOptions = {
4+
bundle: false,
5+
externalHelpers: true,
6+
outBase: 'src',
7+
} as const;
8+
9+
export default defineConfig({
10+
source: {
11+
entry: {
12+
index: ['./src/**/*.{ts,tsx,js,jsx}', '!./src/**/*.spec.*'],
13+
},
14+
},
15+
lib: [
16+
{
17+
...sharedLibOptions,
18+
format: 'cjs',
19+
syntax: 'es2019',
20+
dts: false,
21+
output: {
22+
distPath: {
23+
root: './dist/cjs',
24+
},
25+
},
26+
},
27+
{
28+
...sharedLibOptions,
29+
format: 'esm',
30+
syntax: 'es5',
31+
dts: false,
32+
output: {
33+
distPath: {
34+
root: './dist/esm',
35+
},
36+
},
37+
},
38+
{
39+
...sharedLibOptions,
40+
format: 'esm',
41+
syntax: 'es2019',
42+
dts: {
43+
distPath: './dist/types',
44+
},
45+
output: {
46+
distPath: {
47+
root: './dist/esm-node',
48+
},
49+
},
50+
},
51+
],
52+
});

0 commit comments

Comments
 (0)