mirror of
https://github.com/home-assistant/frontend.git
synced 2025-04-22 04:17:20 +00:00

* Core POC support for polymer i18n * Move translation from core.js to html * Replace fetch with XHR * Convert translation pipeline to gulp * Convert from polyglot to Polymer localize * Pass through missing keys for custom panels * Store promise to be reused * Use cacheFirst sw handler for translations * Write full filenames to translationFingerprints * Precache en translation * Convert home-assistant-main to ES6 class * Create a localization mixin * Cleanup * Add polymer tags to annotate for linter * Rename fingerprints to translationMetadata * Build translation native names into metadata * Add language selection UI to sidebar * Provide separate message namespace argument * Store language/resources on hass object * Store translationMetadata on hass * Move language selector to config panel * Temporarily hide language selector * Small cleanups * Use dynamic-align for more flexible layout * Migrate to fetch API * Only send change events for user selection events * Update for new linting rules * Migrate build_frontend changes
65 lines
1.4 KiB
Bash
Executable File
65 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
# Builds the frontend for production
|
|
|
|
# Stop on errors
|
|
set -e
|
|
|
|
cd "$(dirname "$0")/.."
|
|
|
|
OUTPUT_DIR=hass_frontend
|
|
|
|
rm -rf $OUTPUT_DIR
|
|
cp -r public $OUTPUT_DIR
|
|
|
|
# Build frontend
|
|
BUILD_DEV=0 ./node_modules/.bin/gulp
|
|
|
|
# Entry points
|
|
cp build/*.js build/*.html $OUTPUT_DIR
|
|
|
|
# Panels
|
|
mkdir $OUTPUT_DIR/panels
|
|
cp build/panels/*.html $OUTPUT_DIR/panels
|
|
|
|
# Panels
|
|
mkdir $OUTPUT_DIR/translations
|
|
cp build/translations/*.json $OUTPUT_DIR/translations
|
|
|
|
# Local Roboto
|
|
cp -r bower_components/font-roboto-local/fonts $OUTPUT_DIR
|
|
|
|
# Polyfill web components
|
|
cp bower_components/webcomponentsjs/webcomponents-lite.js $OUTPUT_DIR
|
|
cp bower_components/webcomponentsjs/custom-elements-es5-adapter.js $OUTPUT_DIR
|
|
|
|
# Icons
|
|
script/update_mdi.py
|
|
|
|
# Leaflet
|
|
mkdir $OUTPUT_DIR/images/leaflet
|
|
cp bower_components/leaflet/dist/leaflet.css $OUTPUT_DIR/images/leaflet
|
|
cp -r bower_components/leaflet/dist/images $OUTPUT_DIR/images/leaflet/
|
|
|
|
# Generate service worker
|
|
BUILD_DEV=0 ./node_modules/.bin/gulp gen-service-worker
|
|
cp build/service_worker.js $OUTPUT_DIR
|
|
|
|
|
|
# GZIP frontend
|
|
cd $OUTPUT_DIR
|
|
gzip -f -n -k -9 \
|
|
*.html \
|
|
*.js \
|
|
./panels/*.html \
|
|
./translations/*.json \
|
|
./fonts/roboto/*.ttf \
|
|
./fonts/robotomono/*.ttf
|
|
cd ..
|
|
|
|
# Generate the __init__ file
|
|
echo "VERSION = '`git rev-parse HEAD`'" >> $OUTPUT_DIR/__init__.py
|
|
echo "CREATED_AT = `date +%s`" >> $OUTPUT_DIR/__init__.py
|
|
|
|
# Generate the MD5 hash of the new frontend
|
|
script/fingerprint_frontend.py
|