🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@hao360/cube-css-loader

Package Overview
Dependencies
Maintainers
7
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@hao360/cube-css-loader - npm Package Compare versions

Comparing version
1.1.1
to
1.2.0
+35
-19
index.js
const css = require('css');
const loaderUtils = require('loader-utils');
global.cubeWcssData = global.cubeWcssData || {};
/** 添加样式命名空间前缀 */

@@ -87,23 +85,41 @@ function addPrefix(cssAst, preSelector, widthRules){

module.exports = function(content, map, meta) {
let options = loaderUtils.getOptions(this);
let cssObj = css.parse(content);
let widthRules = [];
cssObj.stylesheet = addPrefix(cssObj.stylesheet, options.pre || '.cube-container', widthRules);
const result = css.stringify(cssObj, {
compress : options.compress || process.env.NODE_ENV !== 'development',
sourcemap: true
});
/** 添加响应式宽度数据 */
if(widthRules.length){
if(!global.cubeWcssData){
global.cubeWcssData = {};
}
if(/\.wcss$/.test(this.resourcePath)){
/** 处理动态css */
const callback = this.async();
setTimeout(() => {
/** 需要等到动态css编译生成 */
const cubeWcssData = global.cubeWcssData;
let wcss = [];
for (let f in cubeWcssData) {
this.dependency(f);
wcss = wcss.concat(cubeWcssData[f]);
}
callback(null, `module.exports = ${JSON.stringify(wcss)};`)
}, 100)
return;
} else {
/** 处理css */
let options = loaderUtils.getOptions(this);
let cssObj = css.parse(content);
let widthRules = [];
cssObj.stylesheet = addPrefix(cssObj.stylesheet, options.pre || '.cube-container', widthRules);
const result = css.stringify(cssObj, {
compress : options.compress || process.env.NODE_ENV !== 'development',
sourcemap: true
});
/** 添加响应式宽度数据 */
const wcssData = responsiveWidth(widthRules, options.compress);
global.cubeWcssData[this.resourcePath] = wcssData;
}
if(global.cubeCssData){
global.cubeCssData[this.resourcePath] = result.code;
return 'module.exports = "/*__cube_css_here__*/";';
} else {
this.callback(null, 'module.exports = `' + result.code + '`;', result.map, cssObj);
return;
if(global.cubeCssData){
global.cubeCssData[this.resourcePath] = result.code;
return 'module.exports = "/*__cube_css_here__*/";';
} else {
this.callback(null, 'module.exports = `' + result.code + '`;', result.map, cssObj);
return;
}
}
};
{
"name": "@hao360/cube-css-loader",
"version": "1.1.1",
"version": "1.2.0",
"description": "cube css loader",

@@ -5,0 +5,0 @@ "main": "index.js",