summaryrefslogtreecommitdiffhomepage
path: root/gui/tasks/scripts.js
diff options
context:
space:
mode:
authorOskar <oskar@mullvad.net>2024-11-05 07:57:08 +0100
committerOskar <oskar@mullvad.net>2024-11-14 16:43:18 +0100
commit84f14d79c4f0dde73337820ec94ba8ff928a3797 (patch)
treece468658e5ba7b0a74950c7ad1b09b3a4d00520b /gui/tasks/scripts.js
parente3ce0eb5cd0610dbff6ec98cb8cb388415c74bf6 (diff)
downloadmullvadvpn-84f14d79c4f0dde73337820ec94ba8ff928a3797.tar.xz
mullvadvpn-84f14d79c4f0dde73337820ec94ba8ff928a3797.zip
Move gui directory to desktop/packages/mullvad-vpn
Diffstat (limited to 'gui/tasks/scripts.js')
-rw-r--r--gui/tasks/scripts.js124
1 files changed, 0 insertions, 124 deletions
diff --git a/gui/tasks/scripts.js b/gui/tasks/scripts.js
deleted file mode 100644
index 20acc69c35..0000000000
--- a/gui/tasks/scripts.js
+++ /dev/null
@@ -1,124 +0,0 @@
-const { exec } = require('child_process');
-const fs = require('fs');
-const { dest, series, parallel } = require('gulp');
-const ts = require('gulp-typescript');
-const inject = require('gulp-inject-string');
-const sourcemaps = require('gulp-sourcemaps');
-const TscWatchClient = require('tsc-watch/client');
-const browserify = require('browserify');
-const buffer = require('vinyl-buffer');
-const source = require('vinyl-source-stream');
-
-function makeWatchCompiler(onFirstSuccess, onSuccess) {
- let firstBuild = true;
- let lastBundle;
- let lastPreloadBundle;
-
- const compileScripts = function () {
- const watch = new TscWatchClient();
- watch.on('success', () =>
- parallel(
- makeBrowserifyRenderer(true),
- makeBrowserifyPreload(true),
- )(async () => {
- const wasFirstBuild = firstBuild;
- if (firstBuild) {
- firstBuild = false;
- onFirstSuccess();
- }
-
- let bundle = await fs.promises.readFile('./build/src/renderer/bundle.js');
- let preloadBundle = await fs.promises.readFile('./build/src/renderer/preloadBundle.js');
- if (
- !lastBundle ||
- !preloadBundle ||
- !lastBundle.equals(bundle) ||
- !lastPreloadBundle.equals(preloadBundle)
- ) {
- lastBundle = bundle;
- lastPreloadBundle = preloadBundle;
- if (!wasFirstBuild) {
- onSuccess();
- }
- }
- }),
- );
- watch.start(
- '--noClear',
- '--sourceMap',
- '--inlineSources',
- '--incremental',
- '--project',
- './tsconfig.dev.json',
- );
- return watch.tsc;
- };
- compileScripts.displayName = 'compile-scripts-watch';
-
- return compileScripts;
-}
-
-function compileScripts() {
- const tsProject = ts.createProject('tsconfig.json');
-
- return tsProject
- .src()
- .pipe(tsProject())
- .pipe(inject.replace('process.env.NODE_ENV', '"production"'))
- .pipe(dest('build'));
-}
-
-function makeBrowserifyRenderer(debug) {
- const browserifyRenderer = () => {
- let stream = browserify({ entries: './build/src/renderer/index.js', debug })
- .bundle()
- .pipe(source('bundle.js'))
- .pipe(buffer());
-
- if (debug) {
- stream = stream.pipe(sourcemaps.init({ loadMaps: true })).pipe(sourcemaps.write());
- }
-
- return stream.pipe(dest('./build/src/renderer/'));
- };
-
- browserifyRenderer.displayName = 'browserify-renderer';
- return browserifyRenderer;
-}
-
-function makeBrowserifyPreload(debug) {
- const browserifyPreload = () => {
- let stream = browserify({
- entries: './build/src/renderer/preload.js',
- debug,
- detectGlobals: false,
- })
- .exclude('electron')
- .bundle()
- .pipe(source('preloadBundle.js'))
- .pipe(buffer());
-
- if (debug) {
- stream = stream.pipe(sourcemaps.init({ loadMaps: true })).pipe(sourcemaps.write());
- }
-
- return stream.pipe(dest('./build/src/renderer/'));
- };
-
- browserifyPreload.displayName = 'browserify-preload';
- return browserifyPreload;
-}
-
-function buildProto(callback) {
- exec('bash ./scripts/build-proto.sh', (err) => callback(err));
-}
-
-compileScripts.displayName = 'compile-scripts';
-buildProto.displayName = 'build-proto';
-
-exports.build = series(
- compileScripts,
- parallel(makeBrowserifyPreload(false), makeBrowserifyRenderer(false)),
-);
-exports.buildProto = buildProto;
-exports.makeWatchCompiler = makeWatchCompiler;