Remove uncompressed files from bundles and compress source maps
This commit is contained in:
parent
50cf6d2af9
commit
f4bfcc6a69
|
@ -1,19 +1,26 @@
|
||||||
// Tasks to compress
|
// Tasks to compress
|
||||||
|
|
||||||
|
import { deleteAsync } from "del";
|
||||||
import gulp from "gulp";
|
import gulp from "gulp";
|
||||||
|
import gulpIf from "gulp-if";
|
||||||
|
import vinylPaths from "vinyl-paths";
|
||||||
import zopfli from "gulp-zopfli-green";
|
import zopfli from "gulp-zopfli-green";
|
||||||
import paths from "../paths.cjs";
|
import paths from "../paths.cjs";
|
||||||
|
|
||||||
const zopfliOptions = { threshold: 150 };
|
const zopfliOptions = { threshold: 150 };
|
||||||
|
|
||||||
|
const compressedExt = /\.gz$/;
|
||||||
|
const deleteUncompressed = (p) => deleteAsync(p.replace(compressedExt, ""));
|
||||||
|
|
||||||
const compressDist = (rootDir) =>
|
const compressDist = (rootDir) =>
|
||||||
gulp
|
gulp
|
||||||
.src([
|
.src([
|
||||||
`${rootDir}/**/*.{js,json,css,svg,xml}`,
|
`${rootDir}/**/*.{js?(.map),json,css,svg,xml}`,
|
||||||
`${rootDir}/{authorize,onboarding}.html`,
|
`${rootDir}/{authorize,onboarding}.html`,
|
||||||
])
|
])
|
||||||
.pipe(zopfli(zopfliOptions))
|
.pipe(zopfli(zopfliOptions))
|
||||||
.pipe(gulp.dest(rootDir));
|
.pipe(gulp.dest(rootDir))
|
||||||
|
.pipe(gulpIf(compressedExt, vinylPaths(deleteUncompressed)));
|
||||||
|
|
||||||
gulp.task("compress-app", () => compressDist(paths.app_output_root));
|
gulp.task("compress-app", () => compressDist(paths.app_output_root));
|
||||||
gulp.task("compress-hassio", () => compressDist(paths.hassio_output_root));
|
gulp.task("compress-hassio", () => compressDist(paths.hassio_output_root));
|
||||||
|
|
|
@ -171,6 +171,7 @@
|
||||||
"@types/chromecast-caf-receiver": "6.0.13",
|
"@types/chromecast-caf-receiver": "6.0.13",
|
||||||
"@types/chromecast-caf-sender": "1.0.8",
|
"@types/chromecast-caf-sender": "1.0.8",
|
||||||
"@types/glob": "8.1.0",
|
"@types/glob": "8.1.0",
|
||||||
|
"@types/gulp-if": "^3",
|
||||||
"@types/html-minifier-terser": "7.0.2",
|
"@types/html-minifier-terser": "7.0.2",
|
||||||
"@types/js-yaml": "4.0.9",
|
"@types/js-yaml": "4.0.9",
|
||||||
"@types/leaflet": "1.9.8",
|
"@types/leaflet": "1.9.8",
|
||||||
|
@ -207,6 +208,7 @@
|
||||||
"glob": "10.3.10",
|
"glob": "10.3.10",
|
||||||
"gulp": "4.0.2",
|
"gulp": "4.0.2",
|
||||||
"gulp-flatmap": "1.0.2",
|
"gulp-flatmap": "1.0.2",
|
||||||
|
"gulp-if": "3.0.0",
|
||||||
"gulp-json-transform": "0.4.8",
|
"gulp-json-transform": "0.4.8",
|
||||||
"gulp-merge-json": "2.1.2",
|
"gulp-merge-json": "2.1.2",
|
||||||
"gulp-rename": "2.0.0",
|
"gulp-rename": "2.0.0",
|
||||||
|
@ -239,6 +241,7 @@
|
||||||
"ts-lit-plugin": "2.0.2",
|
"ts-lit-plugin": "2.0.2",
|
||||||
"typescript": "5.3.3",
|
"typescript": "5.3.3",
|
||||||
"vinyl-buffer": "1.0.1",
|
"vinyl-buffer": "1.0.1",
|
||||||
|
"vinyl-paths": "5.0.0",
|
||||||
"vinyl-source-stream": "2.0.0",
|
"vinyl-source-stream": "2.0.0",
|
||||||
"webpack": "5.90.2",
|
"webpack": "5.90.2",
|
||||||
"webpack-cli": "5.1.4",
|
"webpack-cli": "5.1.4",
|
||||||
|
|
128
yarn.lock
128
yarn.lock
|
@ -4082,6 +4082,13 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@types/expect@npm:^1.20.4":
|
||||||
|
version: 1.20.4
|
||||||
|
resolution: "@types/expect@npm:1.20.4"
|
||||||
|
checksum: 10/fa25b771c81fed431fdfe7c906ccdcb88af7aa4d06375a7798c317d8bcb2b3f78d132e358025d991ccd72083ffb743fd46e26427aa82dc69d7cdbc9b2e88ff3f
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@types/express-serve-static-core@npm:*, @types/express-serve-static-core@npm:^4.17.33":
|
"@types/express-serve-static-core@npm:*, @types/express-serve-static-core@npm:^4.17.33":
|
||||||
version: 4.17.43
|
version: 4.17.43
|
||||||
resolution: "@types/express-serve-static-core@npm:4.17.43"
|
resolution: "@types/express-serve-static-core@npm:4.17.43"
|
||||||
|
@ -4139,6 +4146,27 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@types/gulp-if@npm:^3":
|
||||||
|
version: 3.0.4
|
||||||
|
resolution: "@types/gulp-if@npm:3.0.4"
|
||||||
|
dependencies:
|
||||||
|
"@types/gulp-match": "npm:*"
|
||||||
|
"@types/minimatch": "npm:*"
|
||||||
|
"@types/node": "npm:*"
|
||||||
|
checksum: 10/b00b971ee927df328fb0fb505ac5214c595e8975ba198a0c6dc713ad086879c6e51157ce50dc665cfafe6ad4199f8a7dc7ee78c14040eb7647fc801a85c0152f
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
|
"@types/gulp-match@npm:*":
|
||||||
|
version: 1.1.5
|
||||||
|
resolution: "@types/gulp-match@npm:1.1.5"
|
||||||
|
dependencies:
|
||||||
|
"@types/minimatch": "npm:*"
|
||||||
|
"@types/vinyl": "npm:*"
|
||||||
|
checksum: 10/3668c4063d25dac269f785ff5de934c67fdffeb03728ddcc1036a593ecd579f67c983c761fb2c2dedbced9d1a29c14c2714e4fa776beab38de282e706059149f
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@types/hammerjs@npm:^2.0.36":
|
"@types/hammerjs@npm:^2.0.36":
|
||||||
version: 2.0.45
|
version: 2.0.45
|
||||||
resolution: "@types/hammerjs@npm:2.0.45"
|
resolution: "@types/hammerjs@npm:2.0.45"
|
||||||
|
@ -4291,7 +4319,7 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@types/minimatch@npm:^5.1.2":
|
"@types/minimatch@npm:*, @types/minimatch@npm:^5.1.2":
|
||||||
version: 5.1.2
|
version: 5.1.2
|
||||||
resolution: "@types/minimatch@npm:5.1.2"
|
resolution: "@types/minimatch@npm:5.1.2"
|
||||||
checksum: 10/94db5060d20df2b80d77b74dd384df3115f01889b5b6c40fa2dfa27cfc03a68fb0ff7c1f2a0366070263eb2e9d6bfd8c87111d4bc3ae93c3f291297c1bf56c85
|
checksum: 10/94db5060d20df2b80d77b74dd384df3115f01889b5b6c40fa2dfa27cfc03a68fb0ff7c1f2a0366070263eb2e9d6bfd8c87111d4bc3ae93c3f291297c1bf56c85
|
||||||
|
@ -4499,6 +4527,16 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"@types/vinyl@npm:*":
|
||||||
|
version: 2.0.11
|
||||||
|
resolution: "@types/vinyl@npm:2.0.11"
|
||||||
|
dependencies:
|
||||||
|
"@types/expect": "npm:^1.20.4"
|
||||||
|
"@types/node": "npm:*"
|
||||||
|
checksum: 10/0f69e2d44748d0e55c3fcd4c2b5b59f0dc70b46fd5b9081abb1b81045543fbeb16e33d6ba2a21fb61d2182d91d99ba1c78be65311d1095857834827e2084417c
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"@types/webspeechapi@npm:0.0.29":
|
"@types/webspeechapi@npm:0.0.29":
|
||||||
version: 0.0.29
|
version: 0.0.29
|
||||||
resolution: "@types/webspeechapi@npm:0.0.29"
|
resolution: "@types/webspeechapi@npm:0.0.29"
|
||||||
|
@ -7495,6 +7533,18 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"duplexify@npm:^4.1.1":
|
||||||
|
version: 4.1.2
|
||||||
|
resolution: "duplexify@npm:4.1.2"
|
||||||
|
dependencies:
|
||||||
|
end-of-stream: "npm:^1.4.1"
|
||||||
|
inherits: "npm:^2.0.3"
|
||||||
|
readable-stream: "npm:^3.1.1"
|
||||||
|
stream-shift: "npm:^1.0.0"
|
||||||
|
checksum: 10/eeb4f362defa4da0b2474d853bc4edfa446faeb1bde76819a68035632c118de91f6a58e6fe05c84f6e6de2548f8323ec8473aa9fe37332c99e4d77539747193e
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"each-props@npm:^1.3.2":
|
"each-props@npm:^1.3.2":
|
||||||
version: 1.3.2
|
version: 1.3.2
|
||||||
resolution: "each-props@npm:1.3.2"
|
resolution: "each-props@npm:1.3.2"
|
||||||
|
@ -7512,6 +7562,13 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"easy-transform-stream@npm:^1.0.0":
|
||||||
|
version: 1.0.1
|
||||||
|
resolution: "easy-transform-stream@npm:1.0.1"
|
||||||
|
checksum: 10/3d783ad3ffa21690c9e84ee54a9993a882f07e86416f15fe8dfcfb2c93ea28ce79f10775c2e56d846bba6a9e85e64f9f867c085d5906031c06c97c5a5234be46
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"ee-first@npm:1.1.1":
|
"ee-first@npm:1.1.1":
|
||||||
version: 1.1.1
|
version: 1.1.1
|
||||||
resolution: "ee-first@npm:1.1.1"
|
resolution: "ee-first@npm:1.1.1"
|
||||||
|
@ -7588,7 +7645,7 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"end-of-stream@npm:^1.0.0, end-of-stream@npm:^1.1.0":
|
"end-of-stream@npm:^1.0.0, end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1":
|
||||||
version: 1.4.4
|
version: 1.4.4
|
||||||
resolution: "end-of-stream@npm:1.4.4"
|
resolution: "end-of-stream@npm:1.4.4"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -8767,6 +8824,13 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"fork-stream@npm:^0.0.4":
|
||||||
|
version: 0.0.4
|
||||||
|
resolution: "fork-stream@npm:0.0.4"
|
||||||
|
checksum: 10/8c80c34121e7fa96a8a46b5f20a3c0469c7d557e2303452317ada88f68195b64e4bea5596381bfaae7f800a57468867b34e4cf5acf0133da62bdd7ab0ab1fce8
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"forwarded@npm:0.2.0":
|
"forwarded@npm:0.2.0":
|
||||||
version: 0.2.0
|
version: 0.2.0
|
||||||
resolution: "forwarded@npm:0.2.0"
|
resolution: "forwarded@npm:0.2.0"
|
||||||
|
@ -9305,6 +9369,17 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"gulp-if@npm:3.0.0":
|
||||||
|
version: 3.0.0
|
||||||
|
resolution: "gulp-if@npm:3.0.0"
|
||||||
|
dependencies:
|
||||||
|
gulp-match: "npm:^1.1.0"
|
||||||
|
ternary-stream: "npm:^3.0.0"
|
||||||
|
through2: "npm:^3.0.1"
|
||||||
|
checksum: 10/dd7395ed28382c667a4330816a0ae02d7bb3c34f265115c38e6285e44e5a915dae231c6bc54ece6d104e5fe46f0a025c8779c6c86c243886f3a5947de4b16553
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"gulp-json-transform@npm:0.4.8":
|
"gulp-json-transform@npm:0.4.8":
|
||||||
version: 0.4.8
|
version: 0.4.8
|
||||||
resolution: "gulp-json-transform@npm:0.4.8"
|
resolution: "gulp-json-transform@npm:0.4.8"
|
||||||
|
@ -9319,6 +9394,15 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"gulp-match@npm:^1.1.0":
|
||||||
|
version: 1.1.0
|
||||||
|
resolution: "gulp-match@npm:1.1.0"
|
||||||
|
dependencies:
|
||||||
|
minimatch: "npm:^3.0.3"
|
||||||
|
checksum: 10/c2e83c3795550b78a0a8d5c7c8eb09eff6ae61601f08c1b93c7aef030308c8a3b2943daba72545de6e2d8d2e3a3435a7936731beb9a8985f569d32f37e35b6b7
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"gulp-merge-json@npm:2.1.2":
|
"gulp-merge-json@npm:2.1.2":
|
||||||
version: 2.1.2
|
version: 2.1.2
|
||||||
resolution: "gulp-merge-json@npm:2.1.2"
|
resolution: "gulp-merge-json@npm:2.1.2"
|
||||||
|
@ -9591,6 +9675,7 @@ __metadata:
|
||||||
"@types/chromecast-caf-receiver": "npm:6.0.13"
|
"@types/chromecast-caf-receiver": "npm:6.0.13"
|
||||||
"@types/chromecast-caf-sender": "npm:1.0.8"
|
"@types/chromecast-caf-sender": "npm:1.0.8"
|
||||||
"@types/glob": "npm:8.1.0"
|
"@types/glob": "npm:8.1.0"
|
||||||
|
"@types/gulp-if": "npm:^3"
|
||||||
"@types/html-minifier-terser": "npm:7.0.2"
|
"@types/html-minifier-terser": "npm:7.0.2"
|
||||||
"@types/js-yaml": "npm:4.0.9"
|
"@types/js-yaml": "npm:4.0.9"
|
||||||
"@types/leaflet": "npm:1.9.8"
|
"@types/leaflet": "npm:1.9.8"
|
||||||
|
@ -9647,6 +9732,7 @@ __metadata:
|
||||||
google-timezones-json: "npm:1.2.0"
|
google-timezones-json: "npm:1.2.0"
|
||||||
gulp: "npm:4.0.2"
|
gulp: "npm:4.0.2"
|
||||||
gulp-flatmap: "npm:1.0.2"
|
gulp-flatmap: "npm:1.0.2"
|
||||||
|
gulp-if: "npm:3.0.0"
|
||||||
gulp-json-transform: "npm:0.4.8"
|
gulp-json-transform: "npm:0.4.8"
|
||||||
gulp-merge-json: "npm:2.1.2"
|
gulp-merge-json: "npm:2.1.2"
|
||||||
gulp-rename: "npm:2.0.0"
|
gulp-rename: "npm:2.0.0"
|
||||||
|
@ -9705,6 +9791,7 @@ __metadata:
|
||||||
ua-parser-js: "npm:1.0.37"
|
ua-parser-js: "npm:1.0.37"
|
||||||
unfetch: "npm:5.0.0"
|
unfetch: "npm:5.0.0"
|
||||||
vinyl-buffer: "npm:1.0.1"
|
vinyl-buffer: "npm:1.0.1"
|
||||||
|
vinyl-paths: "npm:5.0.0"
|
||||||
vinyl-source-stream: "npm:2.0.0"
|
vinyl-source-stream: "npm:2.0.0"
|
||||||
vis-data: "npm:7.1.9"
|
vis-data: "npm:7.1.9"
|
||||||
vis-network: "npm:9.1.9"
|
vis-network: "npm:9.1.9"
|
||||||
|
@ -10060,7 +10147,7 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:~2.0.3":
|
"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3":
|
||||||
version: 2.0.4
|
version: 2.0.4
|
||||||
resolution: "inherits@npm:2.0.4"
|
resolution: "inherits@npm:2.0.4"
|
||||||
checksum: 10/cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521
|
checksum: 10/cd45e923bee15186c07fa4c89db0aace24824c482fb887b528304694b2aa6ff8a898da8657046a5dcf3e46cd6db6c61629551f9215f208d7c3f157cf9b290521
|
||||||
|
@ -11829,7 +11916,7 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"minimatch@npm:3.1.2, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
|
"minimatch@npm:3.1.2, minimatch@npm:^3.0.3, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
|
||||||
version: 3.1.2
|
version: 3.1.2
|
||||||
resolution: "minimatch@npm:3.1.2"
|
resolution: "minimatch@npm:3.1.2"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -13358,7 +13445,7 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"readable-stream@npm:3, readable-stream@npm:^3.0.6, readable-stream@npm:^3.6.0":
|
"readable-stream@npm:2 || 3, readable-stream@npm:3, readable-stream@npm:^3.0.6, readable-stream@npm:^3.1.1, readable-stream@npm:^3.6.0":
|
||||||
version: 3.6.2
|
version: 3.6.2
|
||||||
resolution: "readable-stream@npm:3.6.2"
|
resolution: "readable-stream@npm:3.6.2"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -15005,6 +15092,18 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"ternary-stream@npm:^3.0.0":
|
||||||
|
version: 3.0.0
|
||||||
|
resolution: "ternary-stream@npm:3.0.0"
|
||||||
|
dependencies:
|
||||||
|
duplexify: "npm:^4.1.1"
|
||||||
|
fork-stream: "npm:^0.0.4"
|
||||||
|
merge-stream: "npm:^2.0.0"
|
||||||
|
through2: "npm:^3.0.1"
|
||||||
|
checksum: 10/7e9414f011f82d43695a2702110ad099d6587d773a0559439a252943b1a99509a26f4daf0877de9a547fb4d36a8cefe5756079cfa310885855a8923a17b10a46
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"terser-webpack-plugin@npm:5.3.10, terser-webpack-plugin@npm:^5.3.10":
|
"terser-webpack-plugin@npm:5.3.10, terser-webpack-plugin@npm:^5.3.10":
|
||||||
version: 5.3.10
|
version: 5.3.10
|
||||||
resolution: "terser-webpack-plugin@npm:5.3.10"
|
resolution: "terser-webpack-plugin@npm:5.3.10"
|
||||||
|
@ -15091,6 +15190,16 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"through2@npm:^3.0.1":
|
||||||
|
version: 3.0.2
|
||||||
|
resolution: "through2@npm:3.0.2"
|
||||||
|
dependencies:
|
||||||
|
inherits: "npm:^2.0.4"
|
||||||
|
readable-stream: "npm:2 || 3"
|
||||||
|
checksum: 10/98bdffba8e877fd8beb2154adc4eb0d52fad281130f56f6e5d18f85d1e1aa528a7b27317b302eb5443f6636ab045d3c272e6dffc61d984775db284823b90532d
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"through2@npm:^4.0.2":
|
"through2@npm:^4.0.2":
|
||||||
version: 4.0.2
|
version: 4.0.2
|
||||||
resolution: "through2@npm:4.0.2"
|
resolution: "through2@npm:4.0.2"
|
||||||
|
@ -15910,6 +16019,15 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"vinyl-paths@npm:5.0.0":
|
||||||
|
version: 5.0.0
|
||||||
|
resolution: "vinyl-paths@npm:5.0.0"
|
||||||
|
dependencies:
|
||||||
|
easy-transform-stream: "npm:^1.0.0"
|
||||||
|
checksum: 10/7158749480adf8bae349aaef79df123c9efd5fbb605437904c1d4649e378b2902e33ad58cdbc0ace639ece14d3cbaea5aaab2368ccf57026c2550db434efa86d
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"vinyl-source-stream@npm:2.0.0":
|
"vinyl-source-stream@npm:2.0.0":
|
||||||
version: 2.0.0
|
version: 2.0.0
|
||||||
resolution: "vinyl-source-stream@npm:2.0.0"
|
resolution: "vinyl-source-stream@npm:2.0.0"
|
||||||
|
|
Loading…
Reference in New Issue