Skip to content

Commit af07864

Browse files
authored
fix: rpx2vw is invalid in less and scss (#504)
* fix: rpx2vw is invalid in less and scss file * chore: changeset
1 parent 429bdc3 commit af07864

File tree

2 files changed

+84
-82
lines changed

2 files changed

+84
-82
lines changed

.changeset/moody-bugs-give.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@ice/pkg-plugin-docusaurus': patch
3+
---
4+
5+
fix: rpx2vw is invalid in less and scss

packages/plugin-docusaurus/src/plugin.js

Lines changed: 79 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -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[ca]ss$/,
51+
oneOf: [
52+
{
53+
test: /\.module\.s[ca]ss$/,
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: /\.less$/,
82+
oneOf: [
83+
{
84+
test: /\.module\.less$/,
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[ca]ss$/,
97-
oneOf: [
98-
{
99-
test: /\.module\.s[ca]ss$/,
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: /\.less$/,
128-
oneOf: [
129-
{
130-
test: /\.module\.less$/,
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

Comments
 (0)