Skip to content

Commit a548a5c

Browse files
committed
feat: update client bundle to target ES2024 and remove support for older browsers
1 parent fc23c2c commit a548a5c

6 files changed

Lines changed: 9 additions & 95 deletions

File tree

.changeset/client-bundle-es2024.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"webpack-dev-server": major
3+
---
4+
5+
The injected client bundle now targets ES2024. Browsers without native ES module support (IE 11, Edge legacy, Safari < 10.1, Chrome < 61, Firefox < 60) are no longer supported.

babel.config.js

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,18 @@ export default (api) => {
22
api.cache(true);
33

44
return {
5+
ignore: ["client/**", "node_modules/**"],
56
presets: [
67
[
78
"@babel/preset-env",
89
{
910
modules: false,
1011
targets: {
1112
esmodules: true,
12-
node: "0.12",
13+
node: "22.15.0",
1314
},
1415
},
1516
],
1617
],
17-
plugins: ["@babel/plugin-transform-object-assign"],
18-
env: {
19-
test: {
20-
presets: [
21-
[
22-
"@babel/preset-env",
23-
{
24-
targets: {
25-
node: "22.15.0",
26-
},
27-
},
28-
],
29-
],
30-
plugins: ["@babel/plugin-transform-runtime"],
31-
},
32-
},
3318
};
3419
};

client-src/webpack.config.js

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ const baseForModules = {
2121
path: path.resolve(__dirname, "../client/modules"),
2222
...library,
2323
},
24-
target: ["web", "es5"],
24+
target: ["web", "es2024"],
2525
module: {
2626
rules: [
2727
{
@@ -42,26 +42,7 @@ export default [
4242
output: {
4343
filename: "logger/index.js",
4444
},
45-
module: {
46-
rules: [
47-
{
48-
test: /\.js$/,
49-
use: [
50-
{
51-
loader: "babel-loader",
52-
options: {
53-
plugins: ["@babel/plugin-transform-object-assign"],
54-
},
55-
},
56-
],
57-
},
58-
],
59-
},
6045
plugins: [
61-
new webpack.DefinePlugin({
62-
Symbol:
63-
'(typeof Symbol !== "undefined" ? Symbol : function (i) { return i; })',
64-
}),
6546
new webpack.NormalModuleReplacementPlugin(
6647
/^tapable$/,
6748
path.join(__dirname, "modules/logger/tapable.js"),

package-lock.json

Lines changed: 0 additions & 54 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,7 @@
7575
"@babel/cli": "^7.28.6",
7676
"@babel/core": "^7.29.0",
7777
"@babel/eslint-parser": "^7.28.6",
78-
"@babel/plugin-transform-object-assign": "^7.27.1",
79-
"@babel/plugin-transform-runtime": "^7.29.0",
8078
"@babel/preset-env": "^7.29.2",
81-
"@babel/runtime": "^7.29.2",
8279
"@changesets/cli": "^2.29.8",
8380
"@changesets/get-github-info": "^0.8.0",
8481
"@commitlint/cli": "^19.5.0",

tsconfig.client.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"compilerOptions": {
33
"target": "esnext",
4-
"lib": ["es5", "dom", "webworker", "es2022.error"],
4+
"lib": ["es2024", "dom", "webworker"],
55
"module": "nodenext",
66
"moduleResolution": "nodenext",
77
"allowJs": true,

0 commit comments

Comments
 (0)