11import * as path from "path" ;
22import { defineConfig } from "@rspack/cli" ;
33import { rspack } from "@rspack/core" ;
4- import { version } from "./package.json " ;
5-
6- const NodePolyfillPlugin = require ( "node-polyfill-webpack-plugin" ) ;
4+ import { readFileSync } from "fs " ;
5+ import NodePolyfillPlugin from "node-polyfill-webpack-plugin" ;
6+ const pkg = JSON . parse ( readFileSync ( "./package.json" ) as unknown as string ) ;
77
8+ const version = pkg . version ;
9+ const dirname = path . resolve ( ) ;
810const isDev = process . env . NODE_ENV === "development" ;
911const isBeta = version . includes ( "-" ) ;
1012
1113// Target browsers, see: https://github.com/browserslist/browserslist
1214const targets = [ "chrome >= 87" , "edge >= 88" , "firefox >= 78" , "safari >= 14" ] ;
1315
14- const src = `${ __dirname } /src` ;
15- const dist = `${ __dirname } /dist` ;
16+ const src = `${ dirname } /src` ;
17+ const dist = `${ dirname } /dist` ;
1618const assets = `${ src } /assets` ;
1719
1820export default defineConfig ( {
@@ -26,7 +28,7 @@ export default defineConfig({
2628 mode : "production" ,
2729 devtool : false ,
2830 } ) ,
29- context : __dirname ,
31+ context : dirname ,
3032 entry : {
3133 service_worker : `${ src } /service_worker.ts` ,
3234 offscreen : `${ src } /offscreen.ts` ,
@@ -50,11 +52,11 @@ export default defineConfig({
5052 resolve : {
5153 extensions : [ "..." , ".ts" , ".tsx" , ".jsx" ] ,
5254 alias : {
53- "@App" : path . resolve ( __dirname , "src/" ) ,
54- "@Packages" : path . resolve ( __dirname , "packages/" ) ,
55+ "@App" : path . resolve ( dirname , "src/" ) ,
56+ "@Packages" : path . resolve ( dirname , "packages/" ) ,
5557 // 改写eslint-plugin-userscripts以适配脚本猫,打包时重定义模块路径
56- "../data/compat-grant" : path . resolve ( __dirname , "packages/eslint/compat-grant" ) ,
57- "../data/compat-headers" : path . resolve ( __dirname , "packages/eslint/compat-headers" ) ,
58+ "../data/compat-grant" : path . resolve ( dirname , "packages/eslint/compat-grant" ) ,
59+ "../data/compat-headers" : path . resolve ( dirname , "packages/eslint/compat-headers" ) ,
5860 } ,
5961 fallback : {
6062 child_process : false ,
0 commit comments