Skip to content

Commit ecd247c

Browse files
authored
feat: enable esm cli runtime (#8227)
1 parent 61e1169 commit ecd247c

File tree

64 files changed

+856
-777
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+856
-777
lines changed

.changeset/polite-humans-sin.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
'@modern-js/runtime': minor
3+
'@modern-js/runtime-utils': minor
4+
'@modern-js/plugin-i18n': minor
5+
'@modern-js/app-tools': minor
6+
'@modern-js/i18n-utils': minor
7+
'@modern-js/bff-core': minor
8+
'@modern-js/plugin-bff': minor
9+
'@modern-js/render': minor
10+
---
11+
12+
feat: esm runtime

.github/workflows/ut-Windows.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ jobs:
4848

4949
- name: Install Dependencies
5050
if: ${{steps.skip-ci.outputs.RESULT != 'true'}}
51-
run: pnpm install --ignore-scripts
51+
run: pnpm install --ignore-scripts --frozen-lockfile
5252

5353
- name: Build Required Pkg
5454
if: ${{steps.skip-ci.outputs.RESULT != 'true'}}

.github/workflows/ut-macOS.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747

4848
- name: Install Dependencies
4949
if: ${{steps.skip-ci.outputs.RESULT != 'true'}}
50-
run: pnpm install --ignore-scripts
50+
run: pnpm install --ignore-scripts --frozen-lockfile
5151

5252
- name: Build Required Pkg
5353
if: ${{steps.skip-ci.outputs.RESULT != 'true'}}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
"prepare-build": "cross-env NX_DAEMON=false NX_REJECT_UNKNOWN_LOCAL_CACHE=0 nx run-many -t build -p @modern-js/* --exclude=@modern-js/main-doc,@modern-js/module-tools-docs --maxParallel=4",
2424
"prepare": "npm run prepare-build && husky install",
2525
"prepare-build-continue": "cross-env NX_DAEMON=false NX_REJECT_UNKNOWN_LOCAL_CACHE=0 nx run-many -t build -p @modern-js/* --exclude=@modern-js/main-doc,@modern-js/module-tools-docs --nxBail=false --maxParallel=4 || echo 'Build completed with some failures, continuing...'",
26-
"build:required": "cross-env NX_DAEMON=false nx run-many -t build -p @modern-js/builder @modern-js/bff-core",
26+
"build:required": "cross-env NX_DAEMON=false nx run-many -t build -p @modern-js/builder @modern-js/bff-core @modern-js/utils",
2727
"lint": "biome check",
2828
"change": "changeset add",
2929
"bump": "changeset version",

packages/cli/builder/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@
5151
"core-js": "^3.48.0",
5252
"cssnano": "6.1.2",
5353
"html-minifier-terser": "^7.2.0",
54-
"jiti": "1.21.7",
5554
"lodash": "^4.17.23",
5655
"postcss": "^8.5.6",
5756
"postcss-custom-properties": "13.3.12",

packages/cli/plugin-bff/src/cli.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,9 @@ export const bffPlugin = (): CliPlugin<AppTools> => ({
210210
);
211211

212212
const name = isServer ? 'server' : 'client';
213-
const loaderPath = require.resolve('./loader');
213+
const sourceExt =
214+
process.env.MODERN_LIB_FORMAT === 'esm' ? 'mjs' : 'js';
215+
const loaderPath = path.join(__dirname, `loader.${sourceExt}`);
214216
chain.module.rule(CHAIN_ID.RULE.JS).exclude.add(apiRegexp);
215217
chain.module
216218
.rule('js-bff-api')

packages/cli/plugin-bff/src/server.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ export default (): ServerPlugin => ({
9090
api.onReset(async ({ event }) => {
9191
storage.reset();
9292
const appContext = api.getServerContext();
93-
9493
const { middlewares } = storage;
9594
api.updateServerContext({
9695
...appContext,

packages/runtime/plugin-i18n/package.json

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
"name": "@modern-js/plugin-i18n",
33
"description": "A Progressive React Framework for modern web development.",
44
"homepage": "https://modernjs.dev",
5-
"type": "module",
65
"bugs": "https://github.com/web-infra-dev/modern.js/issues",
76
"repository": {
87
"type": "git",
@@ -20,36 +19,50 @@
2019
"engines": {
2120
"node": ">=20"
2221
},
23-
"types": "./src/cli/index.ts",
24-
"main": "./dist/cjs/cli/index.cjs",
25-
"module": "./dist/esm/cli/index.js",
22+
"types": "./dist/types/cli/index.d.ts",
23+
"main": "./dist/cjs/cli/index.js",
24+
"module": "./dist/esm/cli/index.mjs",
2625
"exports": {
2726
".": {
2827
"types": "./dist/types/cli/index.d.ts",
29-
"default": "./dist/cjs/cli/index.cjs"
28+
"import": "./dist/esm/cli/index.mjs",
29+
"default": "./dist/cjs/cli/index.js"
3030
},
3131
"./package.json": "./package.json",
3232
"./cli": {
3333
"types": "./dist/types/cli/index.d.ts",
34-
"default": "./dist/cjs/cli/index.cjs"
34+
"node": {
35+
"require": "./dist/cjs/cli/index.js",
36+
"import": "./dist/esm-node/cli/index.mjs"
37+
},
38+
"default": "./dist/cjs/cli/index.js"
3539
},
3640
"./runtime": {
3741
"types": "./dist/types/runtime/index.d.ts",
38-
"import": "./dist/esm/runtime/index.js",
39-
"node": "./dist/esm-node/runtime/index.js",
40-
"default": "./dist/esm/runtime/index.js"
42+
"node": {
43+
"require": "./dist/cjs/runtime/index.js",
44+
"import": "./dist/esm-node/runtime/index.mjs"
45+
},
46+
"import": "./dist/esm/runtime/index.mjs",
47+
"default": "./dist/cjs/runtime/index.js"
4148
},
4249
"./server": {
4350
"types": "./dist/types/server/index.d.ts",
44-
"import": "./dist/esm/server/index.js",
45-
"node": "./dist/esm-node/server/index.js",
46-
"default": "./dist/esm/server/index.js"
51+
"node": {
52+
"require": "./dist/cjs/server/index.js",
53+
"import": "./dist/esm-node/server/index.mjs"
54+
},
55+
"import": "./dist/esm/server/index.mjs",
56+
"default": "./dist/cjs/server/index.js"
4757
},
4858
"./i18n": {
4959
"types": "./dist/types/runtime/i18n/index.d.ts",
50-
"import": "./dist/esm/runtime/i18n/index.js",
51-
"node": "./dist/esm-node/runtime/i18n/index.js",
52-
"default": "./dist/esm/runtime/i18n/index.js"
60+
"node": {
61+
"require": "./dist/cjs/runtime/i18n/index.js",
62+
"import": "./dist/esm-node/runtime/i18n/index.mjs"
63+
},
64+
"import": "./dist/esm/runtime/i18n/index.mjs",
65+
"default": "./dist/cjs/runtime/i18n/index.js"
5366
}
5467
},
5568
"typesVersions": {

packages/runtime/plugin-i18n/src/runtime/i18n/detection/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { deepMerge } from '../../../shared/deepMerge.js';
1+
import { deepMerge } from '../../../shared/deepMerge';
22
import type { LanguageDetectorOptions } from '../instance';
33

44
export const DEFAULT_I18NEXT_DETECTION_OPTIONS = {

packages/runtime/plugin-runtime/package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@
7878
},
7979
"./cli": {
8080
"types": "./dist/types/cli/index.d.ts",
81+
"node": {
82+
"require": "./dist/cjs/cli/index.js",
83+
"import": "./dist/esm-node/cli/index.mjs"
84+
},
8185
"default": "./dist/cjs/cli/index.js"
8286
},
8387
"./router": {

0 commit comments

Comments
 (0)