@@ -43,7 +43,85 @@ module.exports = function (context) {
4343 configureWebpack ( config , isServer , utils ) {
4444 const { getStyleLoaders } = utils ;
4545 const isProd = process . env . NODE_ENV === 'production' ;
46-
46+ config . module . rules . push (
47+ // Fork from https://github.com/rlamana/docusaurus-plugin-sass/blob/master/docusaurus-plugin-sass.js
48+ // Use `require.resolve()` to resolve the sass-loader because it can not be resolved in ICE PKG project.
49+ {
50+ test : / \. s [ c a ] s s $ / ,
51+ oneOf : [
52+ {
53+ test : / \. m o d u l e \. s [ c a ] s s $ / ,
54+ use : [
55+ ...getStyleLoaders ( isServer , {
56+ modules : {
57+ localIdentName : isProd
58+ ? '[local]_[hash:base64:4]'
59+ : '[local]_[path][name]' ,
60+ exportOnlyLocals : isServer ,
61+ } ,
62+ importLoaders : 2 ,
63+ sourceMap : ! isProd ,
64+ } ) , {
65+ loader : require . resolve ( 'sass-loader' ) ,
66+ } ,
67+ ] ,
68+ } ,
69+ {
70+ use : [
71+ ...getStyleLoaders ( isServer ) , {
72+ loader : require . resolve ( 'sass-loader' ) ,
73+ } ,
74+ ] ,
75+ } ,
76+ ] ,
77+ } ,
78+ // Fork from https://github.com/nonoroazoro/docusaurus-plugin-less/blob/master/index.js
79+ // Use `require.resolve()` to resolve the less-loader because it can not be resolved in ICE PKG project.
80+ {
81+ test : / \. l e s s $ / ,
82+ oneOf : [
83+ {
84+ test : / \. m o d u l e \. l e s s $ / ,
85+ use : [
86+ ...getStyleLoaders (
87+ isServer ,
88+ {
89+ modules : {
90+ localIdentName : isProd
91+ ? '[sha1:hash:hex:5]'
92+ : '[name]_[local]' ,
93+ exportOnlyLocals : isServer ,
94+ } ,
95+ importLoaders : 1 ,
96+ sourceMap : ! isProd ,
97+ } ,
98+ ) ,
99+ {
100+ loader : require . resolve ( 'less-loader' ) ,
101+ options : {
102+ lessOptions : {
103+ javascriptEnabled : true ,
104+ } ,
105+ } ,
106+ } ,
107+ ] ,
108+ } ,
109+ {
110+ use : [
111+ ...getStyleLoaders ( isServer ) ,
112+ {
113+ loader : require . resolve ( 'less-loader' ) ,
114+ options : {
115+ lessOptions : {
116+ javascriptEnabled : true ,
117+ } ,
118+ } ,
119+ } ,
120+ ] ,
121+ } ,
122+ ] ,
123+ } ,
124+ ) ;
47125 const cssRules = config . module . rules . filter ( ( rule ) => {
48126 const testRegExpStr = rule . test . toString ( ) ;
49127 // eslint-disable-no-useless-escape
@@ -88,87 +166,6 @@ module.exports = function (context) {
88166 Fragment : [ 'react' , 'Fragment' ] ,
89167 } ) ,
90168 ] ,
91- module : {
92- rules : [
93- // Fork from https://github.com/rlamana/docusaurus-plugin-sass/blob/master/docusaurus-plugin-sass.js
94- // Use `require.resolve()` to resolve the sass-loader because it can not be resolved in ICE PKG project.
95- {
96- test : / \. s [ c a ] s s $ / ,
97- oneOf : [
98- {
99- test : / \. m o d u l e \. s [ c a ] s s $ / ,
100- use : [
101- ...getStyleLoaders ( isServer , {
102- modules : {
103- localIdentName : isProd
104- ? '[local]_[hash:base64:4]'
105- : '[local]_[path][name]' ,
106- exportOnlyLocals : isServer ,
107- } ,
108- importLoaders : 2 ,
109- sourceMap : ! isProd ,
110- } ) , {
111- loader : require . resolve ( 'sass-loader' ) ,
112- } ,
113- ] ,
114- } ,
115- {
116- use : [
117- ...getStyleLoaders ( isServer ) , {
118- loader : require . resolve ( 'sass-loader' ) ,
119- } ,
120- ] ,
121- } ,
122- ] ,
123- } ,
124- // Fork from https://github.com/nonoroazoro/docusaurus-plugin-less/blob/master/index.js
125- // Use `require.resolve()` to resolve the less-loader because it can not be resolved in ICE PKG project.
126- {
127- test : / \. l e s s $ / ,
128- oneOf : [
129- {
130- test : / \. m o d u l e \. l e s s $ / ,
131- use : [
132- ...getStyleLoaders (
133- isServer ,
134- {
135- modules : {
136- localIdentName : isProd
137- ? '[sha1:hash:hex:5]'
138- : '[name]_[local]' ,
139- exportOnlyLocals : isServer ,
140- } ,
141- importLoaders : 1 ,
142- sourceMap : ! isProd ,
143- } ,
144- ) ,
145- {
146- loader : require . resolve ( 'less-loader' ) ,
147- options : {
148- lessOptions : {
149- javascriptEnabled : true ,
150- } ,
151- } ,
152- } ,
153- ] ,
154- } ,
155- {
156- use : [
157- ...getStyleLoaders ( isServer ) ,
158- {
159- loader : require . resolve ( 'less-loader' ) ,
160- options : {
161- lessOptions : {
162- javascriptEnabled : true ,
163- } ,
164- } ,
165- } ,
166- ] ,
167- } ,
168- ] ,
169- } ,
170- ] ,
171- } ,
172169 } ;
173170 } ,
174171 } ;
0 commit comments