|
|
- #!/usr/bin/env bash
-
- set -e
-
- if [ ! -d node_modules ]; then
- echo "[B] Run 'npm install' first"
- exit 1
- fi
-
- clean() {
- rm -f .babelrc
- rm -rf lib/*
- }
-
- makeLib() {
- echo '[B] Compiling Bottleneck to Node 6+...'
- ln -s .babelrc.lib .babelrc
- node_modules/coffeescript/bin/coffee --compile --bare --no-header --transpile src/*.coffee
- node scripts/assemble_lua.js > lib/lua.json
- mv src/*.js lib/
- }
-
- makeBundle() {
- echo '[B] Compiling Bottleneck to ES5...'
- ln -s .babelrc.bundle .babelrc
- node_modules/coffeescript/bin/coffee --compile --bare --no-header src/*.coffee
- node scripts/assemble_lua.js > lib/lua.json
- mv src/*.js lib/
-
- echo '[B] Assembling ES5 bundle...'
- node_modules/rollup/bin/rollup -c rollup.config.js
- }
-
- makeTypings() {
- echo '[B] Compiling and testing TS typings...'
- node_modules/ejs-cli/bin/ejs-cli bottleneck.d.ts.ejs > bottleneck.d.ts
- node_modules/typescript/bin/tsc --noEmit --strict test.ts
- }
-
- if [[ $1 = 'dev' ]]; then
- clean
- makeLib
- elif [[ $1 = 'bundle' ]]; then
- clean
- makeBundle
- else
- clean
- makeBundle
- clean
- makeLib
- makeTypings
- fi
-
- rm -f .babelrc
-
- echo '[B] Done!'
|