1
- import { defineConfig } from ' @rspack/cli' ;
2
- import { rspack } from ' @rspack/core' ;
3
- import * as RefreshPlugin from ' @rspack/plugin-react-refresh' ;
4
- import * as path from ' node:path' ;
1
+ import { defineConfig } from " @rspack/cli" ;
2
+ import { rspack } from " @rspack/core" ;
3
+ import * as RefreshPlugin from " @rspack/plugin-react-refresh" ;
4
+ import * as path from " node:path" ;
5
5
6
- const isDev = process . env . NODE_ENV === ' development' ;
6
+ const isDev = process . env . NODE_ENV === " development" ;
7
7
8
8
// Target browsers, see: https://github.com/browserslist/browserslist
9
- const targets = [ ' chrome >= 87' , ' edge >= 88' , ' firefox >= 78' , ' safari >= 14' ] ;
9
+ const targets = [ " chrome >= 87" , " edge >= 88" , " firefox >= 78" , " safari >= 14" ] ;
10
10
11
11
const splitChunkGroupConfig = {
12
- filename : ' js/[name].js' ,
12
+ filename : " js/[name].js" ,
13
13
priority : 100 ,
14
14
enforce : true ,
15
15
} ;
16
16
17
17
export default defineConfig ( {
18
18
context : __dirname ,
19
19
entry : {
20
- main : ' ./src/main.tsx' ,
20
+ main : " ./src/main.tsx" ,
21
21
} ,
22
- devtool : isDev ? ' source-map' : false ,
22
+ devtool : isDev ? " source-map" : false ,
23
23
output : {
24
24
clean : true ,
25
- filename : ' js/[name].[contenthash:8].js' ,
26
- cssFilename : ' css/[name].[contenthash:8].css' ,
27
- assetModuleFilename : ' assets/[hash][ext][query]' ,
25
+ filename : " js/[name].[contenthash:8].js" ,
26
+ cssFilename : " css/[name].[contenthash:8].css" ,
27
+ assetModuleFilename : " assets/[hash][ext][query]" ,
28
28
} ,
29
29
resolve : {
30
- extensions : [ ' ...' , ' .ts' , ' .tsx' , ' .jsx' ] ,
30
+ extensions : [ " ..." , " .ts" , " .tsx" , " .jsx" ] ,
31
31
alias : {
32
- '@' : path . resolve ( __dirname , ' ./src' ) ,
32
+ "@" : path . resolve ( __dirname , " ./src" ) ,
33
33
} ,
34
34
} ,
35
35
module : {
@@ -41,17 +41,17 @@ export default defineConfig({
41
41
rules : [
42
42
{
43
43
test : / \. s v g $ / ,
44
- type : ' asset' ,
44
+ type : " asset" ,
45
45
} ,
46
46
{
47
47
test : / \. c s s $ / ,
48
- use : [ ' postcss-loader' ] ,
49
- type : ' css' ,
48
+ use : [ " postcss-loader" ] ,
49
+ type : " css" ,
50
50
} ,
51
51
// support raw resource: https://rspack.dev/zh/guide/features/asset-module
52
52
{
53
53
resourceQuery : / r a w / ,
54
- type : ' asset/source' ,
54
+ type : " asset/source" ,
55
55
} ,
56
56
{
57
57
test : / \. ( j s x ? | t s x ? ) $ / ,
@@ -60,16 +60,16 @@ export default defineConfig({
60
60
resourceQuery : { not : / r a w / } ,
61
61
use : [
62
62
{
63
- loader : ' builtin:swc-loader' ,
63
+ loader : " builtin:swc-loader" ,
64
64
options : {
65
65
jsc : {
66
66
parser : {
67
- syntax : ' typescript' ,
67
+ syntax : " typescript" ,
68
68
tsx : true ,
69
69
} ,
70
70
transform : {
71
71
react : {
72
- runtime : ' automatic' ,
72
+ runtime : " automatic" ,
73
73
development : isDev ,
74
74
refresh : isDev ,
75
75
} ,
@@ -84,10 +84,10 @@ export default defineConfig({
84
84
} ,
85
85
plugins : [
86
86
new rspack . HtmlRspackPlugin ( {
87
- template : ' ./index.html' ,
87
+ template : " ./index.html" ,
88
88
} ) ,
89
89
new rspack . CopyRspackPlugin ( {
90
- patterns : [ { from : ' ./public' , to : '.' } ] ,
90
+ patterns : [ { from : " ./public" , to : "." } ] ,
91
91
} ) ,
92
92
isDev ? new RefreshPlugin ( ) : null ,
93
93
] . filter ( Boolean ) ,
@@ -99,21 +99,21 @@ export default defineConfig({
99
99
} ) ,
100
100
] ,
101
101
splitChunks : {
102
- chunks : ' all' ,
102
+ chunks : " all" ,
103
103
cacheGroups : {
104
104
react : {
105
105
test : / [ \\ / ] n o d e _ m o d u l e s [ \\ / ] ( r e a c t | r e a c t - d o m ) [ \\ / ] / ,
106
- name : ' lib-react' ,
106
+ name : " lib-react" ,
107
107
...splitChunkGroupConfig ,
108
108
} ,
109
109
babelStandalone : {
110
110
test : / [ \\ / ] n o d e _ m o d u l e s [ \\ / ] @ b a b e l [ \\ / ] s t a n d a l o n e [ \\ / ] / ,
111
- name : ' lib-babel' ,
111
+ name : " lib-babel" ,
112
112
...splitChunkGroupConfig ,
113
113
} ,
114
114
typescript : {
115
115
test : / [ \\ / ] n o d e _ m o d u l e s [ \\ / ] t y p e s c r i p t [ \\ / ] / ,
116
- name : ' lib-ts' ,
116
+ name : " lib-ts" ,
117
117
...splitChunkGroupConfig ,
118
118
} ,
119
119
} ,
0 commit comments