@quicktvui/web-cli 1.0.0-beta.41 → 1.0.0-beta.43
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/bin/qt-web-cli.js +0 -0
- package/lib/webpack.config.js +59 -3
- package/package.json +2 -2
package/bin/qt-web-cli.js
CHANGED
|
File without changes
|
package/lib/webpack.config.js
CHANGED
|
@@ -96,7 +96,43 @@ function detectCSSLoader() {
|
|
|
96
96
|
return 'style-loader'
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
+
/**
|
|
100
|
+
* 检测全局 Sass 变量文件
|
|
101
|
+
* 注意:返回绝对路径,避免 sass 相对于当前文件解析路径的问题
|
|
102
|
+
*/
|
|
103
|
+
function detectSassAdditionalData() {
|
|
104
|
+
// 常见的全局变量文件路径
|
|
105
|
+
const possiblePaths = [
|
|
106
|
+
'src/styles/variables.scss',
|
|
107
|
+
'src/styles/variables.sass',
|
|
108
|
+
'src/styles/_variables.scss',
|
|
109
|
+
'src/styles/_variables.sass',
|
|
110
|
+
'src/assets/styles/variables.scss',
|
|
111
|
+
'src/assets/styles/variables.sass',
|
|
112
|
+
'src/assets/scss/variables.scss',
|
|
113
|
+
'src/assets/scss/variables.sass',
|
|
114
|
+
'src/assets/scss/_variables.scss',
|
|
115
|
+
'src/assets/scss/_variables.sass',
|
|
116
|
+
'src/scss/variables.scss',
|
|
117
|
+
'src/scss/variables.sass',
|
|
118
|
+
'src/scss/_variables.scss',
|
|
119
|
+
'src/scss/_variables.sass',
|
|
120
|
+
'src/css/variables.scss',
|
|
121
|
+
'src/css/variables.sass',
|
|
122
|
+
]
|
|
123
|
+
|
|
124
|
+
for (const relativePath of possiblePaths) {
|
|
125
|
+
const fullPath = path.join(projectRoot, relativePath)
|
|
126
|
+
if (fs.existsSync(fullPath)) {
|
|
127
|
+
// 使用绝对路径,避免 sass 相对于当前编译文件解析路径的问题
|
|
128
|
+
return `@import "${fullPath}";\n`
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return ''
|
|
132
|
+
}
|
|
133
|
+
|
|
99
134
|
const cssLoader = detectCSSLoader()
|
|
135
|
+
const sassAdditionalData = detectSassAdditionalData()
|
|
100
136
|
|
|
101
137
|
// 获取 web-cli 目录下的 loader 路径
|
|
102
138
|
const cliDir = path.resolve(__dirname, '..')
|
|
@@ -240,9 +276,29 @@ module.exports = {
|
|
|
240
276
|
{ test: /\.css$/, use: [cssLoader] },
|
|
241
277
|
// Less
|
|
242
278
|
{ test: /\.less$/, use: [cssLoader, 'less-loader'] },
|
|
243
|
-
// Sass/SCSS
|
|
244
|
-
{
|
|
245
|
-
|
|
279
|
+
// Sass/SCSS - 自动注入全局变量文件
|
|
280
|
+
{
|
|
281
|
+
test: /\.scss$/,
|
|
282
|
+
use: [
|
|
283
|
+
cssLoader,
|
|
284
|
+
{
|
|
285
|
+
loader: 'sass-loader',
|
|
286
|
+
options: sassAdditionalData ? { additionalData: sassAdditionalData } : {},
|
|
287
|
+
},
|
|
288
|
+
],
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
test: /\.sass$/,
|
|
292
|
+
use: [
|
|
293
|
+
cssLoader,
|
|
294
|
+
{
|
|
295
|
+
loader: 'sass-loader',
|
|
296
|
+
options: sassAdditionalData
|
|
297
|
+
? { additionalData: sassAdditionalData, sassOptions: { indentedSyntax: true } }
|
|
298
|
+
: { sassOptions: { indentedSyntax: true } },
|
|
299
|
+
},
|
|
300
|
+
],
|
|
301
|
+
},
|
|
246
302
|
// 图片
|
|
247
303
|
{
|
|
248
304
|
test: /\.(png|jpe?g|gif|webp|svg)$/i,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quicktvui/web-cli",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.43",
|
|
4
4
|
"description": "CLI tool for QuickTVUI web development - zero configuration",
|
|
5
5
|
"author": "QuickTVUI Team",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -58,4 +58,4 @@
|
|
|
58
58
|
"engines": {
|
|
59
59
|
"node": ">=16.0.0"
|
|
60
60
|
}
|
|
61
|
-
}
|
|
61
|
+
}
|