forked from titaniumnetwork-dev/Ultraviolet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.js
35 lines (30 loc) · 961 Bytes
/
build.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import { rimraf } from 'rimraf';
import { copyFile, mkdir, readFile } from 'node:fs/promises';
import { build } from 'esbuild';
// read version from package.json
const pkg = JSON.parse(await readFile('package.json'));
process.env.ULTRAVIOLET_VERSION = pkg.version;
const isDevelopment = process.argv.includes('--dev');
await rimraf('dist');
await mkdir('dist');
// don't compile these files
await copyFile('src/sw.js', 'dist/sw.js');
await copyFile('src/uv.config.js', 'dist/uv.config.js');
await build({
platform: 'browser',
sourcemap: true,
minify: !isDevelopment,
entryPoints: {
'uv.bundle': './src/rewrite/index.js',
'uv.client': './src/client/index.js',
'uv.handler': './src/uv.handler.js',
'uv.sw': './src/uv.sw.js',
},
define: {
'process.env.ULTRAVIOLET_VERSION': JSON.stringify(
process.env.ULTRAVIOLET_VERSION
),
},
bundle: true,
outdir: 'dist/',
});