Quellcode durchsuchen

Switch to tinyify

Renée Kooi vor 7 Jahren
Ursprung
Commit
2ff172da80
3 geänderte Dateien mit 163 neuen und 51 gelöschten Zeilen
  1. 10 19
      bin/build-js.js
  2. 152 30
      package-lock.json
  3. 1 2
      package.json

+ 10 - 19
bin/build-js.js

@@ -3,10 +3,8 @@ var fs = require('fs')
 var chalk = require('chalk')
 var mkdirp = require('mkdirp')
 var babelify = require('babelify')
-var commonShakeify = require('common-shakeify')
-var packFlat = require('browser-pack-flat/plugin')
+var tinyify = require('tinyify')
 var browserify = require('browserify')
-var uglify = require('minify-stream')
 var exorcist = require('exorcist')
 
 var distPath = './dist'
@@ -21,32 +19,25 @@ function buildUppyBundle (minify) {
   var bundleFile = minify ? 'uppy.min.js' : 'uppy.js'
 
   var b = browserify(src, { debug: true, standalone: 'Uppy' })
-  b.plugin(commonShakeify)
-  b.plugin(packFlat)
+  if (minify) {
+    b.plugin(tinyify)
+  }
   b.transform(babelify)
   b.on('error', handleErr)
 
   return new Promise(function (resolve, reject) {
-    if (minify) {
-      b.bundle()
-      .pipe(uglify())
+    b.bundle()
       .pipe(exorcist(path.join(distPath, bundleFile + '.map')))
       .pipe(fs.createWriteStream(path.join(distPath, bundleFile), 'utf8'))
       .on('error', handleErr)
       .on('finish', function () {
-        console.info(chalk.green('✓ Built Minified Bundle:'), chalk.magenta(bundleFile))
+        if (minify) {
+          console.info(chalk.green('✓ Built Minified Bundle:'), chalk.magenta(bundleFile))
+        } else {
+          console.info(chalk.green('✓ Built Bundle:'), chalk.magenta(bundleFile))
+        }
         resolve()
       })
-    } else {
-      b.bundle()
-      .pipe(exorcist(path.join(distPath, bundleFile + '.map')))
-      .pipe(fs.createWriteStream(path.join(distPath, bundleFile), 'utf8'))
-      .on('error', handleErr)
-      .on('finish', function () {
-        console.info(chalk.green('✓ Built Bundle:'), chalk.magenta(bundleFile))
-        resolve()
-      })
-    }
   })
 }
 

+ 152 - 30
package-lock.json

@@ -1547,9 +1547,9 @@
       }
     },
     "browser-pack-flat": {
-      "version": "2.7.0",
-      "resolved": "https://registry.npmjs.org/browser-pack-flat/-/browser-pack-flat-2.7.0.tgz",
-      "integrity": "sha512-c85Y+SRDRY3L4cQM7ugx4Ub3P9p6eQZlH/ErfxTWn7zi2gqx/f792NERXVbdRVT5LhbODe0sKvH1NnViyMc6/w==",
+      "version": "2.7.2",
+      "resolved": "https://registry.npmjs.org/browser-pack-flat/-/browser-pack-flat-2.7.2.tgz",
+      "integrity": "sha512-5F7Yw1l7Iiagi9o0efaMchMXt+y1ExfDFPfQc2hv1H8qHwDJruTTQS77SEU2bYSEWl60jCzWR4TNXZ5WA9lbng==",
       "dev": true,
       "requires": {
         "JSONStream": "1.3.1",
@@ -1592,30 +1592,6 @@
           "requires": {
             "vlq": "0.2.2"
           }
-        },
-        "transform-ast": {
-          "version": "2.2.1",
-          "resolved": "https://registry.npmjs.org/transform-ast/-/transform-ast-2.2.1.tgz",
-          "integrity": "sha512-/ZxIOPIte7f6HCs6CASsMc3bFZEicMm8bPYzn9Rgc8P9+1gJ9xLpY5bOuKGTm3Ma+IlJW/4DGa8ApKOmEMSKiw==",
-          "dev": true,
-          "requires": {
-            "acorn": "5.0.3",
-            "convert-source-map": "1.5.0",
-            "is-buffer": "1.1.5",
-            "magic-string": "0.21.3",
-            "merge-source-map": "1.0.4"
-          },
-          "dependencies": {
-            "magic-string": {
-              "version": "0.21.3",
-              "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.21.3.tgz",
-              "integrity": "sha1-h+IBAJ6/3m9G3FdXMFpwr3HjFiQ=",
-              "dev": true,
-              "requires": {
-                "vlq": "0.2.2"
-              }
-            }
-          }
         }
       }
     },
@@ -2154,6 +2130,18 @@
       "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=",
       "dev": true
     },
+    "call-matcher": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/call-matcher/-/call-matcher-1.0.1.tgz",
+      "integrity": "sha1-UTTQd5hPcSpU2tPL9i3ijc5BbKg=",
+      "dev": true,
+      "requires": {
+        "core-js": "2.4.1",
+        "deep-equal": "1.0.1",
+        "espurify": "1.7.0",
+        "estraverse": "4.2.0"
+      }
+    },
     "caller-path": {
       "version": "0.1.0",
       "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
@@ -2679,12 +2667,13 @@
       }
     },
     "common-shakeify": {
-      "version": "0.3.2",
-      "resolved": "https://registry.npmjs.org/common-shakeify/-/common-shakeify-0.3.2.tgz",
-      "integrity": "sha512-7u7VUao4YLEO4tQWCHSKycSZevwgqsJ5OztJwEdoACvUGiL1k9hCcBI7HLVZhNRsxSAbbOSNRttuBUOxdDrHGw==",
+      "version": "0.4.2",
+      "resolved": "https://registry.npmjs.org/common-shakeify/-/common-shakeify-0.4.2.tgz",
+      "integrity": "sha512-Z70kxMjhJQxXNaop2dwE6g4BOo65bKOeQ26nCecuidPGBo2pGP2kJ2mPX+6/BIv9pg9vYU9GA4+D98bJxPrLWQ==",
       "dev": true,
       "requires": {
         "common-shake": "2.0.2",
+        "convert-source-map": "1.5.0",
         "through2": "2.0.3",
         "transform-ast": "2.2.1",
         "wrap-comment": "1.0.0"
@@ -3742,6 +3731,24 @@
         "has-binary2": "1.0.2"
       }
     },
+    "envify": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/envify/-/envify-4.1.0.tgz",
+      "integrity": "sha512-IKRVVoAYr4pIx4yIWNsz9mOsboxlNXiu7TNBnem/K/uTHdkyzXWDzHCK7UTolqBbgaBz0tQHsD3YNls0uIIjiw==",
+      "dev": true,
+      "requires": {
+        "esprima": "4.0.0",
+        "through": "2.3.8"
+      },
+      "dependencies": {
+        "esprima": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
+          "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
+          "dev": true
+        }
+      }
+    },
     "errno": {
       "version": "0.1.4",
       "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz",
@@ -4200,6 +4207,15 @@
       "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
       "dev": true
     },
+    "espurify": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.7.0.tgz",
+      "integrity": "sha1-HFz2y8zDLm9jk4C9T5kfq5up0iY=",
+      "dev": true,
+      "requires": {
+        "core-js": "2.4.1"
+      }
+    },
     "esquery": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz",
@@ -8270,6 +8286,26 @@
         }
       }
     },
+    "multi-stage-sourcemap": {
+      "version": "0.2.1",
+      "resolved": "https://registry.npmjs.org/multi-stage-sourcemap/-/multi-stage-sourcemap-0.2.1.tgz",
+      "integrity": "sha1-sJ/IWG6qF/gdV1xK0C4Pej9rEQU=",
+      "dev": true,
+      "requires": {
+        "source-map": "0.1.43"
+      },
+      "dependencies": {
+        "source-map": {
+          "version": "0.1.43",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
+          "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
+          "dev": true,
+          "requires": {
+            "amdefine": "1.0.1"
+          }
+        }
+      }
+    },
     "mute-stream": {
       "version": "0.0.5",
       "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz",
@@ -12007,6 +12043,20 @@
         }
       }
     },
+    "tinyify": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/tinyify/-/tinyify-1.0.0.tgz",
+      "integrity": "sha512-eKSgQ6hJsdm5LX2uZTZbDDi0lHblMof+gGQhn058ZWw6FDYy7Fof6M/pcaHczZKU4uTGueCI+PwSzn4uojNV7g==",
+      "dev": true,
+      "requires": {
+        "browser-pack-flat": "2.7.2",
+        "common-shakeify": "0.4.2",
+        "envify": "4.1.0",
+        "minify-stream": "1.1.0",
+        "uglifyify": "4.0.4",
+        "unassertify": "2.0.4"
+      }
+    },
     "tmpl": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
@@ -12359,6 +12409,33 @@
       "dev": true,
       "optional": true
     },
+    "uglifyify": {
+      "version": "4.0.4",
+      "resolved": "https://registry.npmjs.org/uglifyify/-/uglifyify-4.0.4.tgz",
+      "integrity": "sha512-zsybjeGOkBYM7aL0zNT13yse2rlbW2QzrcL1LYsl/aCh0frzzfIh6XE0ZtKGeWkCzD/81y5xiFKqJIJ2ChvXlA==",
+      "dev": true,
+      "requires": {
+        "convert-source-map": "1.1.3",
+        "extend": "1.3.0",
+        "minimatch": "3.0.4",
+        "through": "2.3.8",
+        "uglify-es": "3.1.2"
+      },
+      "dependencies": {
+        "convert-source-map": {
+          "version": "1.1.3",
+          "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
+          "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
+          "dev": true
+        },
+        "extend": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/extend/-/extend-1.3.0.tgz",
+          "integrity": "sha1-0VFvsP9WJNLr+RI+odrFoZlABPg=",
+          "dev": true
+        }
+      }
+    },
     "ultron": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.0.tgz",
@@ -12370,6 +12447,51 @@
       "integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=",
       "dev": true
     },
+    "unassert": {
+      "version": "1.5.1",
+      "resolved": "https://registry.npmjs.org/unassert/-/unassert-1.5.1.tgz",
+      "integrity": "sha1-y8iOw4dBfFpeTALTzQe+mL11/3Y=",
+      "dev": true,
+      "requires": {
+        "acorn": "4.0.13",
+        "call-matcher": "1.0.1",
+        "deep-equal": "1.0.1",
+        "espurify": "1.7.0",
+        "estraverse": "4.2.0",
+        "esutils": "2.0.2",
+        "object-assign": "4.1.1"
+      },
+      "dependencies": {
+        "acorn": {
+          "version": "4.0.13",
+          "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
+          "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
+          "dev": true
+        }
+      }
+    },
+    "unassertify": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/unassertify/-/unassertify-2.0.4.tgz",
+      "integrity": "sha1-s8orpfKbSDbjWm3Xflsg9tu/jlI=",
+      "dev": true,
+      "requires": {
+        "acorn": "4.0.13",
+        "convert-source-map": "1.5.0",
+        "escodegen": "1.9.0",
+        "multi-stage-sourcemap": "0.2.1",
+        "through": "2.3.8",
+        "unassert": "1.5.1"
+      },
+      "dependencies": {
+        "acorn": {
+          "version": "4.0.13",
+          "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
+          "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
+          "dev": true
+        }
+      }
+    },
     "undefsafe": {
       "version": "0.0.3",
       "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-0.0.3.tgz",

+ 1 - 2
package.json

@@ -42,11 +42,9 @@
     "babel-preset-es2015": "6.24.0",
     "babel-register": "6.9.0",
     "babelify": "7.3.0",
-    "browser-pack-flat": "^2.7.0",
     "browser-sync": "2.18.8",
     "browserify": "14.1.0",
     "chalk": "1.1.3",
-    "common-shakeify": "^0.3.2",
     "cssnano": "3.7.3",
     "disc": "1.3.2",
     "eslint": "^3.19.0",
@@ -77,6 +75,7 @@
     "sass": "0.5.0",
     "selenium-webdriver": "2.53.3",
     "tape": "^4.8.0",
+    "tinyify": "^1.0.0",
     "uppy-server": "0.0.7",
     "watchify": "3.7.0"
   },