#!/bin/sh
# Builds the frontend for production

# Stop on errors
set -e

cd "$(dirname "$0")/.."

OUTPUT_DIR=hass_frontend
OUTPUT_DIR_ES5=hass_frontend_es5

rm -rf $OUTPUT_DIR $OUTPUT_DIR_ES5 build-translations
cp -r public $OUTPUT_DIR
mkdir $OUTPUT_DIR_ES5
cp -r public/__init__.py $OUTPUT_DIR_ES5/

# Build frontend
BUILD_DEV=0 ./node_modules/.bin/gulp build-translations
NODE_ENV=production ./node_modules/.bin/webpack

# Icons
script/update_mdi.py

./node_modules/.bin/gulp compress

# Generate the __init__ file
echo "VERSION = '`git rev-parse HEAD`'" >> $OUTPUT_DIR/__init__.py
echo "CREATED_AT = `date +%s`" >> $OUTPUT_DIR/__init__.py
echo "VERSION = '`git rev-parse HEAD`'" >> $OUTPUT_DIR_ES5/__init__.py
echo "CREATED_AT = `date +%s`" >> $OUTPUT_DIR_ES5/__init__.py

# Generate index.htmls with the MD5 hash of the builds
./node_modules/.bin/gulp \
    gen-index-html gen-index-html-es5 \
    gen-authorize-html gen-authorize-html-es5

