1- import archiver from 'archiver'
2- import autoprefixer from 'autoprefixer'
3- import * as dotenv from 'dotenv'
4- import esbuild from 'esbuild'
5- import postcssPlugin from 'esbuild-style-plugin'
6- import fs from 'fs-extra'
7- import process from 'node:process'
8- import tailwindcss from 'tailwindcss'
9- import getManifest from " ./src/manifest.json.cjs"
1+ import archiver from 'archiver' ;
2+ import autoprefixer from 'autoprefixer' ;
3+ import * as dotenv from 'dotenv' ;
4+ import esbuild from 'esbuild' ;
5+ import postcssPlugin from 'esbuild-style-plugin' ;
6+ import fs from 'fs-extra' ;
7+ import process from 'node:process' ;
8+ import tailwindcss from 'tailwindcss' ;
9+ import getManifest from ' ./src/manifest.json.cjs' ;
1010
11- dotenv . config ( )
11+ dotenv . config ( ) ;
1212
13- const outdir = 'build'
13+ const outdir = 'build' ;
1414
1515const env = JSON . stringify ( process . env . NODE_ENV || 'production' ) ;
1616
1717async function deleteOldDir ( ) {
18- await fs . remove ( outdir )
18+ await fs . remove ( outdir ) ;
1919}
2020
2121async function runEsbuild ( ) {
@@ -28,11 +28,13 @@ async function runEsbuild() {
2828 bundle : true ,
2929 outdir : outdir ,
3030 treeShaking : true ,
31- minify : env === 'production' ? true : false ,
31+ minify : env === 'production' ? true : false ,
3232 legalComments : 'none' ,
3333 define : {
3434 'process.env.NODE_ENV' : env ,
35- 'process.env.AXIOM_TOKEN' : JSON . stringify ( process . env . AXIOM_TOKEN || 'UNDEFINED' ) ,
35+ 'process.env.AXIOM_TOKEN' : JSON . stringify (
36+ process . env . AXIOM_TOKEN || 'UNDEFINED' ,
37+ ) ,
3638 } ,
3739 jsxFragment : 'Fragment' ,
3840 jsx : 'automatic' ,
@@ -46,31 +48,31 @@ async function runEsbuild() {
4648 } ,
4749 } ) ,
4850 ] ,
49- } )
51+ } ) ;
5052}
5153
5254async function zipFolder ( dir ) {
53- const output = fs . createWriteStream ( `${ dir } .zip` )
55+ const output = fs . createWriteStream ( `${ dir } .zip` ) ;
5456 const archive = archiver ( 'zip' , {
5557 zlib : { level : 9 } ,
56- } )
57- archive . pipe ( output )
58- archive . directory ( dir , false )
59- await archive . finalize ( )
58+ } ) ;
59+ archive . pipe ( output ) ;
60+ archive . directory ( dir , false ) ;
61+ await archive . finalize ( ) ;
6062}
6163
6264async function copyFiles ( entryPoints , targetDir ) {
63- await fs . ensureDir ( targetDir )
65+ await fs . ensureDir ( targetDir ) ;
6466 await Promise . all (
6567 entryPoints . map ( async ( entryPoint ) => {
66- await fs . copy ( entryPoint . src , `${ targetDir } /${ entryPoint . dst } ` )
68+ await fs . copy ( entryPoint . src , `${ targetDir } /${ entryPoint . dst } ` ) ;
6769 } ) ,
68- )
70+ ) ;
6971}
7072
7173async function build ( ) {
72- await deleteOldDir ( )
73- await runEsbuild ( )
74+ await deleteOldDir ( ) ;
75+ await runEsbuild ( ) ;
7476
7577 const commonFiles = [
7678 { src : 'build/content/index.js' , dst : 'content-script.js' } ,
@@ -80,25 +82,25 @@ async function build() {
8082 { src : 'build/options/index.css' , dst : 'options.css' } ,
8183 { src : 'src/pages/options/index.html' , dst : 'options.html' } ,
8284 { src : 'src/assets' , dst : 'assets' } ,
83- ]
85+ ] ;
8486
8587 // chromium
86- await copyFiles (
87- [ ... commonFiles ] ,
88- `./${ outdir } /chrome` ,
89- )
90- await fs . writeFile ( `./ ${ outdir } /chrome/manifest.json` , JSON . stringify ( getManifest ( 'chrome' ) ) )
91- await zipFolder ( `./${ outdir } /chrome` )
88+ await copyFiles ( [ ... commonFiles ] , `./ ${ outdir } /chrome` ) ;
89+ await fs . writeFile (
90+ `./${ outdir } /chrome/manifest.json ` ,
91+ JSON . stringify ( getManifest ( 'chrome' ) ) ,
92+ ) ;
93+ await zipFolder ( `./${ outdir } /chrome` ) ;
9294
9395 // edge
94- await copyFiles (
95- [ ... commonFiles ] ,
96- `./${ outdir } /edge` ,
97- )
98- await fs . writeFile ( `./ ${ outdir } /edge/manifest.json` , JSON . stringify ( getManifest ( 'edge' ) ) )
99- await zipFolder ( `./${ outdir } /edge` )
96+ await copyFiles ( [ ... commonFiles ] , `./ ${ outdir } /edge` ) ;
97+ await fs . writeFile (
98+ `./${ outdir } /edge/manifest.json ` ,
99+ JSON . stringify ( getManifest ( 'edge' ) ) ,
100+ ) ;
101+ await zipFolder ( `./${ outdir } /edge` ) ;
100102
101- console . log ( 'Build success.' )
103+ console . log ( 'Build success.' ) ;
102104}
103105
104- build ( )
106+ build ( ) ;
0 commit comments