Parcourir la source

Merge pull request #332 from goto-bus-stop/feature/min-disc

website: Minify bundle for `disc`
Renée Kooi il y a 7 ans
Parent
commit
e59c5ea420
4 fichiers modifiés avec 32 ajouts et 43 suppressions
  1. 0 20
      bin/build-bundle
  2. 0 21
      bin/build-bundle-locales
  3. 31 0
      bin/disc.js
  4. 1 2
      package.json

+ 0 - 20
bin/build-bundle

@@ -1,20 +0,0 @@
-#!/usr/bin/env bash
-set -o pipefail
-set -o errexit
-set -o nounset
-# set -o xtrace
-
-# Set magic variables for current file & dir
-__dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-__file="${__dir}/$(basename "${BASH_SOURCE[0]}")"
-__base="$(basename ${__file} .sh)"
-
-SRC="src/index.js"
-OUT="${OUT:-uppy.js}"
-OUTDIR="dist"
-
-FLAGS="-t [ babelify ] --standalone Uppy"
-
-mkdir -p "${OUTDIR}"
-
-browserify ${@:-} $SRC $FLAGS > $OUTDIR/$OUT

+ 0 - 21
bin/build-bundle-locales

@@ -1,21 +0,0 @@
-#!/usr/bin/env bash
-set -o pipefail
-set -o errexit
-set -o nounset
-# set -o xtrace
-
-# Set magic variables for current file & dir
-__dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
-__file="${__dir}/$(basename "${BASH_SOURCE[0]}")"
-__base="$(basename ${__file} .sh)"
-
-OUTDIR="dist/locales"
-
-FLAGS="-t [ babelify ]"
-
-mkdir -p "${OUTDIR}"
-
-for file in ./src/locales/*.js; do
-  # echo "$file";
-  node_modules/.bin/browserify $file $FLAGS > $OUTDIR/${file##*/};
-done

+ 31 - 0
bin/disc.js

@@ -0,0 +1,31 @@
+const fs = require('fs')
+const path = require('path')
+const { PassThrough } = require('stream')
+const browserify = require('browserify')
+const babelify = require('babelify')
+const minifyify = require('minifyify')
+const disc = require('disc')
+
+const outputPath = path.join(__dirname, '../website/src/disc.html')
+
+const bundler = browserify(path.join(__dirname, '../src/index.js'), {
+  fullPaths: true,
+  standalone: 'Uppy'
+})
+
+bundler.plugin(minifyify, { map: false })
+bundler.transform(babelify)
+
+bundler.bundle()
+  .pipe(disc())
+  .pipe(prepend('---\nlayout: false\n---\n'))
+  .pipe(fs.createWriteStream(outputPath))
+  .on('error', (err) => {
+    throw err
+  })
+
+function prepend (text) {
+  const stream = new PassThrough()
+  stream.write(text)
+  return stream
+}

+ 1 - 2
package.json

@@ -99,7 +99,6 @@
     "build:css": "node ./bin/build-css.js",
     "build:css": "node ./bin/build-css.js",
     "build:gzip": "node ./bin/gzip.js",
     "build:gzip": "node ./bin/gzip.js",
     "size": "echo 'JS Bundle mingz:' && cat ./dist/uppy.min.js | gzip | wc -c && echo 'CSS Bundle mingz:' && cat ./dist/uppy.min.css | gzip | wc -c",
     "size": "echo 'JS Bundle mingz:' && cat ./dist/uppy.min.js | gzip | wc -c && echo 'CSS Bundle mingz:' && cat ./dist/uppy.min.css | gzip | wc -c",
-    "build:bundle:fullpath": "env OUT=uppy-fp.js ./bin/build-bundle --full-paths",
     "build:js": "npm-run-all build:bundle build:lib",
     "build:js": "npm-run-all build:bundle build:lib",
     "build:lib": "babel --version && babel src --source-maps -d lib",
     "build:lib": "babel --version && babel src --source-maps -d lib",
     "build": "npm-run-all --parallel build:js build:css --serial build:gzip size",
     "build": "npm-run-all --parallel build:js build:css --serial build:gzip size",
@@ -133,7 +132,7 @@
     "web:clean": "cd website && ./node_modules/.bin/hexo clean",
     "web:clean": "cd website && ./node_modules/.bin/hexo clean",
     "web:deploy": "npm-run-all web:install web:disc web:build && ./bin/web-deploy",
     "web:deploy": "npm-run-all web:install web:disc web:build && ./bin/web-deploy",
     "web:generated-docs": "cd website && node node_modules/documentation/bin/documentation.js readme ../src/index.js --readme-file=src/docs/api.md --section 'Uppy Core & Plugins' -q --github -c doc-order.json",
     "web:generated-docs": "cd website && node node_modules/documentation/bin/documentation.js readme ../src/index.js --readme-file=src/docs/api.md --section 'Uppy Core & Plugins' -q --github -c doc-order.json",
-    "web:disc": "npm run build:bundle:fullpath && discify dist/uppy-fp.js --output website/src/_disc.html && echo '---\nlayout: false\n---\n' |cat - website/src/_disc.html > website/src/disc.html && rm website/src/_disc.html",
+    "web:disc": "node ./bin/disc.js",
     "web:install": "cd website && npm install",
     "web:install": "cd website && npm install",
     "web:bundle:update:watch": "onchange 'dist/**/*.css' 'dist/**/*.js' --initial --verbose -- node website/update.js",
     "web:bundle:update:watch": "onchange 'dist/**/*.css' 'dist/**/*.js' --initial --verbose -- node website/update.js",
     "web:examples:watch": "cd website && node build-examples.js watch",
     "web:examples:watch": "cd website && node build-examples.js watch",