@s-ui/bundler 9.28.0 → 9.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/shared/module-rules-sass.js +30 -0
- package/webpack.config.lib.js +9 -1
- package/webpack.config.prod.js +2 -26
package/package.json
CHANGED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
|
|
2
|
+
|
|
3
|
+
const {cleanList, config, when} = require('./index')
|
|
4
|
+
|
|
5
|
+
module.exports = {
|
|
6
|
+
test: /(\.css|\.scss)$/,
|
|
7
|
+
use: cleanList([
|
|
8
|
+
MiniCssExtractPlugin.loader,
|
|
9
|
+
require.resolve('css-loader'),
|
|
10
|
+
when(config['externals-manifest'], () => ({
|
|
11
|
+
loader: 'externals-manifest-loader',
|
|
12
|
+
options: {
|
|
13
|
+
manifestURL: config['externals-manifest']
|
|
14
|
+
}
|
|
15
|
+
})),
|
|
16
|
+
{
|
|
17
|
+
loader: require.resolve('postcss-loader'),
|
|
18
|
+
options: {
|
|
19
|
+
postcssOptions: {
|
|
20
|
+
plugins: [
|
|
21
|
+
require('autoprefixer')({
|
|
22
|
+
overrideBrowserslist: config.targets
|
|
23
|
+
})
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
require.resolve('@s-ui/sass-loader')
|
|
29
|
+
])
|
|
30
|
+
}
|
package/webpack.config.lib.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
const webpack = require('webpack')
|
|
2
|
+
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
|
|
2
3
|
const {
|
|
3
4
|
cleanList,
|
|
4
5
|
envVars,
|
|
@@ -9,9 +10,12 @@ const path = require('path')
|
|
|
9
10
|
const minifyJs = require('./shared/minify-js.js')
|
|
10
11
|
const definePlugin = require('./shared/define.js')
|
|
11
12
|
const babelRules = require('./shared/module-rules-babel.js')
|
|
13
|
+
const sassRules = require('./shared/module-rules-sass.js')
|
|
12
14
|
const {extractComments, sourceMap} = require('./shared/config.js')
|
|
13
15
|
const {aliasFromConfig} = require('./shared/resolve-alias.js')
|
|
14
16
|
|
|
17
|
+
const cssFileName = 'styles.css'
|
|
18
|
+
|
|
15
19
|
module.exports = {
|
|
16
20
|
mode: 'production',
|
|
17
21
|
resolve: {
|
|
@@ -48,6 +52,10 @@ module.exports = {
|
|
|
48
52
|
new webpack.ProvidePlugin({
|
|
49
53
|
process: 'process/browser'
|
|
50
54
|
}),
|
|
55
|
+
new MiniCssExtractPlugin({
|
|
56
|
+
filename: cssFileName,
|
|
57
|
+
chunkFilename: cssFileName
|
|
58
|
+
}),
|
|
51
59
|
new webpack.optimize.LimitChunkCountPlugin({
|
|
52
60
|
maxChunks: 1
|
|
53
61
|
}),
|
|
@@ -55,6 +63,6 @@ module.exports = {
|
|
|
55
63
|
definePlugin()
|
|
56
64
|
]),
|
|
57
65
|
module: {
|
|
58
|
-
rules: [babelRules]
|
|
66
|
+
rules: [babelRules, sassRules]
|
|
59
67
|
}
|
|
60
68
|
}
|
package/webpack.config.prod.js
CHANGED
|
@@ -24,6 +24,7 @@ const {
|
|
|
24
24
|
} = require('./shared/config.js')
|
|
25
25
|
const {resolveLoader} = require('./shared/resolve-loader.js')
|
|
26
26
|
const babelRules = require('./shared/module-rules-babel.js')
|
|
27
|
+
const sassRules = require('./shared/module-rules-sass.js')
|
|
27
28
|
const definePlugin = require('./shared/define.js')
|
|
28
29
|
const manifestLoaderRules = require('./shared/module-rules-manifest-loader.js')
|
|
29
30
|
const minifyCss = require('./shared/minify-css.js')
|
|
@@ -109,32 +110,7 @@ const webpackConfig = {
|
|
|
109
110
|
module: {
|
|
110
111
|
rules: cleanList([
|
|
111
112
|
babelRules,
|
|
112
|
-
|
|
113
|
-
test: /(\.css|\.scss)$/,
|
|
114
|
-
use: cleanList([
|
|
115
|
-
MiniCssExtractPlugin.loader,
|
|
116
|
-
require.resolve('css-loader'),
|
|
117
|
-
when(config['externals-manifest'], () => ({
|
|
118
|
-
loader: 'externals-manifest-loader',
|
|
119
|
-
options: {
|
|
120
|
-
manifestURL: config['externals-manifest']
|
|
121
|
-
}
|
|
122
|
-
})),
|
|
123
|
-
{
|
|
124
|
-
loader: require.resolve('postcss-loader'),
|
|
125
|
-
options: {
|
|
126
|
-
postcssOptions: {
|
|
127
|
-
plugins: [
|
|
128
|
-
require('autoprefixer')({
|
|
129
|
-
overrideBrowserslist: config.targets
|
|
130
|
-
})
|
|
131
|
-
]
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
},
|
|
135
|
-
require.resolve('@s-ui/sass-loader')
|
|
136
|
-
])
|
|
137
|
-
},
|
|
113
|
+
sassRules,
|
|
138
114
|
when(config['externals-manifest'], () =>
|
|
139
115
|
manifestLoaderRules(config['externals-manifest'])
|
|
140
116
|
)
|