forked from szimek/signature_pad
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathesbuild.config.js
More file actions
63 lines (55 loc) · 1.35 KB
/
Copy pathesbuild.config.js
File metadata and controls
63 lines (55 loc) · 1.35 KB
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import * as esbuild from 'esbuild';
import { umdWrapper } from 'esbuild-plugin-umd-wrapper';
import fs from 'fs';
const pkg = JSON.parse(fs.readFileSync('./package.json'));
const version = process.env.SEMANTIC_RELEASE_NEXT_VERSION || pkg.version;
console.log('building version:', version);
const banner =
'/*!\n' +
` * Signature Pad v${version} | ${pkg.homepage}\n` +
` * (c) ${new Date().getFullYear()} ${
pkg.author.name
} | Released under the MIT license\n` +
' */\n';
function config(options) {
return {
banner: {
js: banner,
},
sourcemap: true,
bundle: true,
minify: true,
...(options.format === 'umd'
? {
stdin: {
contents: 'module.exports = require("./src/signature_pad.ts").default',
resolveDir: '.',
},
plugins: [umdWrapper({
libraryName: 'SignaturePad',
})],
}
: {
entryPoints: ['src/signature_pad.ts'],
}),
...options,
};
}
await esbuild.build(config({
format: 'esm',
outfile: 'dist/signature_pad.min.js',
}));
await esbuild.build(config({
format: 'esm',
outfile: 'dist/signature_pad.js',
minify: false,
}));
await esbuild.build(config({
format: 'umd',
outfile: 'dist/signature_pad.umd.min.js',
}));
await esbuild.build(config({
format: 'umd',
outfile: 'dist/signature_pad.umd.js',
minify: false,
}));