diff --git a/build-scripts/env.js b/build-scripts/env.js index 101858a367..9f10fc5838 100644 --- a/build-scripts/env.js +++ b/build-scripts/env.js @@ -1,6 +1,14 @@ module.exports = { - isProdBuild: process.env.NODE_ENV === "production", - isStatsBuild: process.env.STATS === "1", - isTravis: process.env.TRAVIS === "true", - isNetlify: process.env.NETLIFY === "true", + isProdBuild() { + return process.env.NODE_ENV === "production"; + }, + isStatsBuild() { + return process.env.STATS === "1"; + }, + isTravis() { + return process.env.TRAVIS === "true"; + }, + isNetlify() { + return process.env.NETLIFY === "true"; + }, }; diff --git a/build-scripts/gulp/app.js b/build-scripts/gulp/app.js index 9fdf96cc04..60540172f8 100644 --- a/build-scripts/gulp/app.js +++ b/build-scripts/gulp/app.js @@ -42,7 +42,7 @@ gulp.task( "copy-static", "webpack-prod-app", ...// Don't compress running tests - (envVars.isTravis ? [] : ["compress-app"]), + (envVars.isTravis() ? [] : ["compress-app"]), gulp.parallel( "gen-pages-prod", "gen-index-app-prod", diff --git a/build-scripts/gulp/hassio.js b/build-scripts/gulp/hassio.js index 164a5b9deb..01f165bc29 100644 --- a/build-scripts/gulp/hassio.js +++ b/build-scripts/gulp/hassio.js @@ -29,6 +29,6 @@ gulp.task( gulp.parallel("gen-icons-hassio", "gen-icons-mdi"), "webpack-prod-hassio", ...// Don't compress running tests - (envVars.isTravis ? [] : ["compress-hassio"]) + (envVars.isTravis() ? [] : ["compress-hassio"]) ) ); diff --git a/build-scripts/gulp/translations.js b/build-scripts/gulp/translations.js index 4b0d203448..ded39269b3 100755 --- a/build-scripts/gulp/translations.js +++ b/build-scripts/gulp/translations.js @@ -292,10 +292,11 @@ gulp.task( function fingerprintTranslationFiles() { // Fingerprint full file of each language const files = fs.readdirSync(fullDir); + for (let i = 0; i < files.length; i++) { fingerprints[files[i].split(".")[0]] = { // In dev we create fake hashes - hash: env.isProdBuild + hash: env.isProdBuild() ? crypto .createHash("md5") .update(fs.readFileSync(path.join(fullDir, files[i]), "utf-8")) @@ -332,7 +333,7 @@ gulp.task( gulp.series( "clean-translations", "ensure-translations-build-dir", - env.isProdBuild ? (done) => done() : "create-test-translation", + env.isProdBuild() ? (done) => done() : "create-test-translation", "build-master-translation", "build-merged-translations", gulp.parallel(...splitTasks), diff --git a/build-scripts/webpack.js b/build-scripts/webpack.js index 88ad6ac1dc..7e86af6e39 100644 --- a/build-scripts/webpack.js +++ b/build-scripts/webpack.js @@ -155,7 +155,7 @@ const createAppConfig = ({ isProdBuild, latestBuild, isStatsBuild }) => { `/static/translations/${englishFilename}` ] = `build-translations/output/${englishFilename}`; - Object.keys(translationMetadata.fragments).forEach((fragment) => { + translationMetadata.fragments.forEach((fragment) => { workBoxTranslationsTemplatedURLs[ `/static/translations/${fragment}/${englishFilename}` ] = `build-translations/output/${fragment}/${englishFilename}`; diff --git a/cast/webpack.config.js b/cast/webpack.config.js index bb9746cd11..fe65fcd4ac 100644 --- a/cast/webpack.config.js +++ b/cast/webpack.config.js @@ -6,6 +6,6 @@ const { isProdBuild } = require("../build-scripts/env.js"); const latestBuild = true; module.exports = createCastConfig({ - isProdBuild, + isProdBuild: isProdBuild(), latestBuild, }); diff --git a/demo/webpack.config.js b/demo/webpack.config.js index 9ccb790f8b..a297932311 100644 --- a/demo/webpack.config.js +++ b/demo/webpack.config.js @@ -6,7 +6,7 @@ const { isProdBuild, isStatsBuild } = require("../build-scripts/env.js"); const latestBuild = true; module.exports = createDemoConfig({ - isProdBuild, - isStatsBuild, + isProdBuild: isProdBuild(), + isStatsBuild: isStatsBuild(), latestBuild, }); diff --git a/hassio/webpack.config.js b/hassio/webpack.config.js index 02e44c0d74..222b20ef84 100644 --- a/hassio/webpack.config.js +++ b/hassio/webpack.config.js @@ -6,6 +6,6 @@ const { isProdBuild } = require("../build-scripts/env.js"); const latestBuild = false; module.exports = createHassioConfig({ - isProdBuild, + isProdBuild: isProdBuild(), latestBuild, }); diff --git a/webpack.config.js b/webpack.config.js index ff1b7462be..fdd9227cb9 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,8 +5,8 @@ const { isProdBuild, isStatsBuild } = require("./build-scripts/env.js"); const configs = [ createAppConfig({ - isProdBuild, - isStatsBuild, + isProdBuild: isProdBuild(), + isStatsBuild: isStatsBuild(), latestBuild: true, }), ]; @@ -14,8 +14,8 @@ const configs = [ if (isProdBuild && !isStatsBuild) { configs.push( createAppConfig({ - isProdBuild, - isStatsBuild, + isProdBuild: isProdBuild(), + isStatsBuild: isStatsBuild(), latestBuild: false, }) );