Browse Source

Replace Babel with SWC

JC Brand 1 tháng trước cách đây
mục cha
commit
f5a21e46aa
5 tập tin đã thay đổi với 51 bổ sung1597 xóa
  1. 0 10
      babel.config.json
  2. 29 1574
      package-lock.json
  3. 2 4
      package.json
  4. 11 1
      webpack/webpack.common.js
  5. 9 8
      webpack/webpack.nodeps.js

+ 0 - 10
babel.config.json

@@ -1,10 +0,0 @@
-{
-    "presets": [
-        ["@babel/preset-env", {
-            "targets": {
-                "browsers": [">1%", "not ie 11", "not op_mini all", "not dead"]
-            }
-        }]
-    ],
-    "plugins": []
-}

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 29 - 1574
package-lock.json


+ 2 - 4
package.json

@@ -88,12 +88,10 @@
     "browser": "*"
   },
   "devDependencies": {
-    "@babel/cli": "^7.17.10",
-    "@babel/core": "^7.18.5",
-    "@babel/preset-env": "^7.18.2",
     "@converse/headless": "file:src/headless",
     "@eslint/eslintrc": "^3.3.1",
     "@eslint/js": "^9.24.0",
+    "@swc/core": "^1.11.29",
     "@types/bootstrap": "^5.2.10",
     "@types/lodash-es": "^4.17.12",
     "@types/sizzle": "^2.3.8",
@@ -101,7 +99,6 @@
     "@typescript-eslint/eslint-plugin": "^8.29.0",
     "@typescript-eslint/parser": "^8.29.0",
     "autoprefixer": "^10.4.5",
-    "babel-loader": "^9.1.0",
     "circular-dependency-plugin": "^5.2.2",
     "clean-css-cli": "^5.6.2",
     "copy-webpack-plugin": "^12.0.2",
@@ -128,6 +125,7 @@
     "sass": "^1.86.2",
     "sass-loader": "^16.0.5",
     "style-loader": "^4.0.0",
+    "swc-loader": "^0.2.6",
     "typescript": "5.6.2",
     "uglify-js": "^3.17.4",
     "webpack": "^5.90.3",

+ 11 - 1
webpack/webpack.common.js

@@ -102,7 +102,17 @@ module.exports = {
                 /node_modules\/@converse/,
             ],
             use: {
-                loader: 'babel-loader'
+                loader: 'swc-loader',
+                options: {
+                    jsc: {
+                        parser: {
+                            syntax: 'ecmascript',
+                            jsx: false,
+                            dynamicImport: true,
+                        },
+                        target: 'es2015',
+                    }
+                }
             }
         }],
     },

+ 9 - 8
webpack/webpack.nodeps.js

@@ -18,15 +18,16 @@ module.exports = merge(common, {
             test: /\.js$/,
             include: /src/,
             use: {
-                loader: 'babel-loader',
+                loader: 'swc-loader',
                 options: {
-                    presets: [
-                        ["@babel/preset-env", {
-                            "targets": {
-                                "browsers": ["ie 11"]
-                            }
-                        }]
-                    ]
+                    jsc: {
+                        target: 'es5',
+                        parser: {
+                            syntax: 'ecmascript',
+                            jsx: false,
+                            dynamicImport: false,
+                        },
+                    }
                 }
             }
         },

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác