12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- const { build } = require('esbuild'),
- { sassPlugin } = require('esbuild-sass-plugin'),
- { copy } = require('esbuild-plugin-copy'),
- buildOptions = {
- entryPoints: ['src/webdav.ts'],
- bundle: true,
- minify: true,
- sourcemap: true,
- watch: false,
- outdir: 'dist',
- plugins: [
- sassPlugin(),
- copy({
- resolveFrom: 'cwd',
- assets: [
- {
- from: ['./dist/webdav.js'],
- to: ['./src/webdav-min.js'],
- },
- {
- from: ['./dist/webdav.js.map'],
- to: ['./src/webdav.js.map'],
- },
- {
- from: ['./dist/webdav.css'],
- to: ['./assets/css/style.css', './assets/css/style-min.css'],
- },
- {
- from: ['./dist/webdav.css.map'],
- to: ['./assets/css/webdav.css.map'],
- },
- ],
- }),
- ],
- entryNames: '[dir]/[name]',
- };
- process.argv.forEach((arg) => {
- if (arg === 'watch') {
- buildOptions.watch = {
- onRebuild(error, result) {
- if (error) {
- console.log('\x1b[31mError rebuilding:\x1b[0m');
- console.error(error);
- return;
- }
- console.log('\x1b[32mRebuilt.\x1b[0m');
- },
- };
- }
- });
- process.stdout.write(`Building... `);
- build(buildOptions)
- .then(() => {
- console.log('\x1b[32mdone.\x1b[0m');
- })
- .catch((e) => {
- console.log(`\x1b[31mfailed.\x1b[0m`);
- console.log('');
- console.error(e);
- process.exit(1);
- });
|