example-spa-elm-app/frontend/build.sh

23 lines
670 B
Bash
Raw Normal View History

2025-01-03 22:34:36 +00:00
#!/usr/bin/env bash
2025-01-03 13:07:44 +00:00
set -ex
js="elm.js"
min="elm.min.js"
if [ "$1" = "--debug" ]; then
elm make --debug --output=$js "${@:2}"
elif [ "$1" = "--optimize" ]; then
elm make --optimize --output=$js "${@:2}"
else
echo "Error: You must specify either --debug or --optimize."
exit 1
fi
2025-01-03 13:29:56 +00:00
uglifyjs elm.js --compress 'pure_funcs="F2,F3,F4,F5,F6,F7,F8,F9,A2,A3,A4,A5,A6,A7,A8,A9",pure_getters=true,keep_fargs=false,unsafe_comps=true,unsafe=true,passes=2' --output elm.js
uglifyjs elm.js --mangle --output $min
echo "Compiled size: $(wc -c < $js) bytes ($js)"
echo "Minified size: $(wc -c < $min) bytes ($min)"
echo "Gzipped size: $(gzip -c $min | wc -c) bytes"