@sentre/craco-plugins
Version:
Craco plugins for CRA
35 lines (34 loc) • 858 B
JavaScript
;
var mapValues = function mapValues(object, callback) {
var O = {};
for (var key in object) {
O[key] = callback(object[key]);
}
return O;
};
var deepClone = function deepClone(value) {
switch (value.constructor) {
case Array:
return value.map(deepClone);
case Object:
return mapValues(value, deepClone);
default:
return value;
}
};
var styleRuleByName = function styleRuleByName(name, module) {
return function (rule) {
if (rule.test) {
var test = rule.test.toString();
var includeName = test.includes(name);
var includeModule = test.includes("module");
return module ? includeName && includeModule : includeName && !includeModule;
}
return false;
};
};
module.exports = {
mapValues: mapValues,
deepClone: deepClone,
styleRuleByName: styleRuleByName
};