浏览代码

Rollup: replace bublè with babel

Marco Fugaro 4 年之前
父节点
当前提交
2b184a49f9
共有 3 个文件被更改,包括 1092 次插入21 次删除
  1. 1053 8
      package-lock.json
  2. 5 2
      package.json
  3. 34 11
      utils/build/rollup.config.js

文件差异内容过多而无法显示
+ 1053 - 8
package-lock.json


+ 5 - 2
package.json

@@ -88,6 +88,10 @@
   },
   "homepage": "https://threejs.org/",
   "devDependencies": {
+    "@babel/core": "^7.11.6",
+    "@babel/plugin-proposal-class-properties": "^7.10.4",
+    "@babel/preset-env": "^7.11.5",
+    "@rollup/plugin-babel": "^5.2.1",
     "@typescript-eslint/eslint-plugin": "^4.0.0",
     "@typescript-eslint/parser": "^4.0.0",
     "concurrently": "^5.3.0",
@@ -95,8 +99,7 @@
     "eslint-config-mdcs": "^5.0.0",
     "eslint-plugin-html": "^6.0.3",
     "http-server": "^0.12.3",
-    "rollup": "^2.23.1",
-    "rollup-plugin-buble": "^0.19.8",
+    "rollup": "^2.28.1",
     "rollup-plugin-terser": "^7.0.2",
     "typescript": "^4.0.2"
   },

+ 34 - 11
utils/build/rollup.config.js

@@ -1,4 +1,4 @@
-import buble from 'rollup-plugin-buble';
+import babel from "@rollup/plugin-babel";
 import { terser } from "rollup-plugin-terser";
 
 function glconstants() {
@@ -255,17 +255,41 @@ function header() {
 
 }
 
+const babelrc = {
+	presets: [
+		[
+			'@babel/preset-env',
+			{
+				modules: false,
+				// the supported browsers of the three.js browser bundle
+				// https://browsersl.ist/?q=%3E0.3%25%2C+not+dead
+				targets: '>0.3%, not dead',
+				loose: true,
+				bugfixes: true,
+			},
+		],
+	],
+	plugins: [
+		[
+			'@babel/plugin-proposal-class-properties',
+			{
+				loose: true
+			}
+		]
+	]
+};
+
 export default [
 	{
 		input: 'src/Three.js',
 		plugins: [
 			glconstants(),
 			glsl(),
-			buble( {
-				transforms: {
-					arrow: false,
-					classes: true
-				}
+			babel( {
+				babelHelpers: 'bundled',
+				compact: false,
+				babelrc: false,
+				...babelrc
 			} ),
 			bubleCleanup(),
 			header()
@@ -284,11 +308,10 @@ export default [
 		plugins: [
 			glconstants(),
 			glsl(),
-			buble( {
-				transforms: {
-					arrow: false,
-					classes: true
-				}
+			babel( {
+				babelHelpers: 'bundled',
+				babelrc: false,
+				...babelrc
 			} ),
 			bubleCleanup(),
 			terser(),

部分文件因为文件数量过多而无法显示